refactor to add methods on single proto obj