progress on elaborating methods, only missing the recursive thingies