Finished and commented everything