Updating main branch

Creating a pull request for commenting ability
It's good to document @throws as well.