CLEANING MASTER (KIND OF MERGE)
code from Noah push