clean up & add new codes