clean up & update structure