fiddly naming conventions and formatting