Modify structure to recursive population
remove setvalue and manage only data