copying the code again