Refactor common methods into hnitem. Make useritem