refactored into active record pattern, added jiro namespace