Nested classes cause arguments to be overwritten - some need to be
captured and set staticly