collision lib
organise code