Moved across get collision to use unordered set, should be slightly faster if data sets are huge (actually I don't think it will make much of a difference)