find all instead of list, and use Hash combine for belongsto selects