refactor towards class-based model