Hide implementation details