I assume this isn't autogenerated, so you can remove all the boilerplate