set up 2 recursive functions that set up the key names for the objects, however the values must still be passed to those keys