Updated with new info for implementation and some reformatting