second ast comp
ast 3 composition
added ast 5 comp
merged
merged