def _generate_client_m(self, api):
self.emit_raw(base_file_comment)<EOL>import_classes = [self.args.module_name]<EOL>import_classes += [<EOL>fmt_routes_class(ns.name, self.args.auth_type)<EOL>for ns in api.namespaces.values()<EOL>if ns.routes and self.namespace_to_has_routes[ns]<EOL>]<EOL>import_classes.append(<EOL>'<STR_LIT>'.format(self.args.transport_client_name))<EOL>self._generate_imports_m(import_classes)<EOL>with self.block_m(self.args.class_name):<EOL><INDENT>client_args = fmt_func_args_declaration(<EOL>[('<STR_LIT>',<EOL>'<STR_LIT>'.format(self.args.transport_client_name))])<EOL>with self.block_func(<EOL>func='<STR_LIT>',<EOL>args=client_args,<EOL>return_type='<STR_LIT>'):<EOL><INDENT>self.emit('<STR_LIT>')<EOL>with self.block_init():<EOL><INDENT>self.emit('<STR_LIT>')<EOL>for namespace in api.namespaces.values():<EOL><INDENT>if namespace.routes and self.namespace_to_has_routes[namespace]:<EOL><INDENT>base_string = '<STR_LIT>'<EOL>self.emit(<EOL>base_string.format(<EOL>fmt_var(namespace.name),<EOL>fmt_routes_class(namespace.name,<EOL>self.args.auth_type)))<EOL><DEDENT><DEDENT><DEDENT><DEDENT><DEDENT>
Generates client base implementation file. For each namespace, the client will
        have an object field that encapsulates each route in the particular namespace.