def create_repo(self, name, description=github.GithubObject.NotSet, homepage=github.GithubObject.NotSet,<EOL>private=github.GithubObject.NotSet, has_issues=github.GithubObject.NotSet,<EOL>has_wiki=github.GithubObject.NotSet, has_downloads=github.GithubObject.NotSet,<EOL>has_projects=github.GithubObject.NotSet, auto_init=github.GithubObject.NotSet, license_template=github.GithubObject.NotSet,<EOL>gitignore_template=github.GithubObject.NotSet, allow_squash_merge=github.GithubObject.NotSet,<EOL>allow_merge_commit=github.GithubObject.NotSet, allow_rebase_merge=github.GithubObject.NotSet):
assert isinstance(name, (str, unicode)), name<EOL>assert description is github.GithubObject.NotSet or isinstance(description, (str, unicode)), description<EOL>assert homepage is github.GithubObject.NotSet or isinstance(homepage, (str, unicode)), homepage<EOL>assert private is github.GithubObject.NotSet or isinstance(private, bool), private<EOL>assert has_issues is github.GithubObject.NotSet or isinstance(has_issues, bool), has_issues<EOL>assert has_wiki is github.GithubObject.NotSet or isinstance(has_wiki, bool), has_wiki<EOL>assert has_downloads is github.GithubObject.NotSet or isinstance(has_downloads, bool), has_downloads<EOL>assert has_projects is github.GithubObject.NotSet or isinstance(has_projects, bool), has_projects<EOL>assert auto_init is github.GithubObject.NotSet or isinstance(auto_init, bool), auto_init<EOL>assert license_template is github.GithubObject.NotSet or isinstance(license_template, (str, unicode)), license_template<EOL>assert gitignore_template is github.GithubObject.NotSet or isinstance(gitignore_template, (str, unicode)), gitignore_template<EOL>assert allow_squash_merge is github.GithubObject.NotSet or isinstance(allow_squash_merge, bool), allow_squash_merge<EOL>assert allow_merge_commit is github.GithubObject.NotSet or isinstance(allow_merge_commit, bool), allow_merge_commit<EOL>assert allow_rebase_merge is github.GithubObject.NotSet or isinstance(allow_rebase_merge, bool), allow_rebase_merge<EOL>post_parameters = {<EOL>"<STR_LIT:name>": name,<EOL>}<EOL>if description is not github.GithubObject.NotSet:<EOL><INDENT>post_parameters["<STR_LIT:description>"] = description<EOL><DEDENT>if homepage is not github.GithubObject.NotSet:<EOL><INDENT>post_parameters["<STR_LIT>"] = homepage<EOL><DEDENT>if private is not github.GithubObject.NotSet:<EOL><INDENT>post_parameters["<STR_LIT>"] = private<EOL><DEDENT>if has_issues is not github.GithubObject.NotSet:<EOL><INDENT>post_parameters["<STR_LIT>"] = has_issues<EOL><DEDENT>if has_wiki is not github.GithubObject.NotSet:<EOL><INDENT>post_parameters["<STR_LIT>"] = has_wiki<EOL><DEDENT>if has_downloads is not github.GithubObject.NotSet:<EOL><INDENT>post_parameters["<STR_LIT>"] = has_downloads<EOL><DEDENT>if has_projects is not github.GithubObject.NotSet:<EOL><INDENT>post_parameters["<STR_LIT>"] = has_projects<EOL><DEDENT>if auto_init is not github.GithubObject.NotSet:<EOL><INDENT>post_parameters["<STR_LIT>"] = auto_init<EOL><DEDENT>if license_template is not github.GithubObject.NotSet:<EOL><INDENT>post_parameters["<STR_LIT>"] = license_template<EOL><DEDENT>if gitignore_template is not github.GithubObject.NotSet:<EOL><INDENT>post_parameters["<STR_LIT>"] = gitignore_template<EOL><DEDENT>if allow_squash_merge is not github.GithubObject.NotSet:<EOL><INDENT>post_parameters["<STR_LIT>"] = allow_squash_merge<EOL><DEDENT>if allow_merge_commit is not github.GithubObject.NotSet:<EOL><INDENT>post_parameters["<STR_LIT>"] = allow_merge_commit<EOL><DEDENT>if allow_rebase_merge is not github.GithubObject.NotSet:<EOL><INDENT>post_parameters["<STR_LIT>"] = allow_rebase_merge<EOL><DEDENT>headers, data = self._requester.requestJsonAndCheck(<EOL>"<STR_LIT:POST>",<EOL>"<STR_LIT>",<EOL>input=post_parameters<EOL>)<EOL>return github.Repository.Repository(self._requester, headers, data, completed=True)<EOL>
:calls: `POST /user/repos <http://developer.github.com/v3/repos>`_
:param name: string
:param description: string
:param homepage: string
:param private: bool
:param has_issues: bool
:param has_wiki: bool
:param has_downloads: bool
:param has_projects: bool
:param auto_init: bool
:param license_template: string
:param gitignore_template: string
:param allow_squash_merge: bool
:param allow_merge_commit: bool
:param allow_rebase_merge: bool
:rtype: :class:`github.Repository.Repository`