forgot to commit new collection.go and collection_test.go in the last commit