5 kinds of concurrent classes