move implementation to module