Probably should be private as nobody will ever call this except rethrow