Internal structure changed and small changes in the output was also done