Code refactor
Merge Code