todo : need to think about the lazy and eager stuff i want to fetch