5. type
6. expression
7. if-else