Finished need to comment and clean