added collision framework