yeah, if we can get this whole thing to be moved into a context manager, that'd be super DRY and we can fix things everywhere.