rework most of the codes