oh man that's tedious, self.client doesn't do that already?