refactored Collection.getInstance