using objects for fields