small has many.add refactor