Refactored to collections lib