text: /**
   *  mixin orgs
   *
   *  Copyright 2012 Cloud9 IDE, Inc.
   *
   *  This product includes software developed by
   *  Cloud9 IDE, Inc (http://c9.io).
   *
   *  Author: Mike de Boer <info@mikedeboer.nl>
   **/
  
  "use strict";
  
  var error = require("./../../error");
  var Util = require("./../../util");
  
  var orgs = module.exports = {
      orgs: {}
  };
  
  (function() {
      /** section: github
       *  orgs#getFromUser(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - user (String): Required. 
       *  - page (Number): Optional. Page number of the results to fetch. Validation rule: ` ^[0-9]+$ `.
       *  - per_page (Number): Optional. A custom page size up to 100. Default is 30. Validation rule: ` ^[0-9]+$ `.
       **/
      this.getFromUser = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#get(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - org (String): Required. 
       *  - page (Number): Optional. Page number of the results to fetch. Validation rule: ` ^[0-9]+$ `.
       *  - per_page (Number): Optional. A custom page size up to 100. Default is 30. Validation rule: ` ^[0-9]+$ `.
       **/
      this.get = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#update(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - org (String): Required. 
       *  - billing_email (String): Optional. Optional string - Billing email address. This address is not publicized. 
       *  - company (String): Optional. 
       *  - email (String): Optional. Optional string - Publicly visible email address. 
       *  - location (String): Optional. 
       *  - name (String): Optional. 
       **/
      this.update = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#getMembers(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - org (String): Required. 
       *  - page (Number): Optional. Page number of the results to fetch. Validation rule: ` ^[0-9]+$ `.
       *  - per_page (Number): Optional. A custom page size up to 100. Default is 30. Validation rule: ` ^[0-9]+$ `.
       **/
      this.getMembers = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#getMember(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - org (String): Required. 
       *  - user (String): Required. 
       **/
      this.getMember = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#removeMember(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - org (String): Required. 
       *  - user (String): Required. 
       **/
      this.removeMember = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#getPublicMembers(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - org (String): Required. 
       **/
      this.getPublicMembers = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#getPublicMember(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - org (String): Required. 
       *  - user (String): Required. 
       **/
      this.getPublicMember = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#publicizeMembership(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - org (String): Required. 
       *  - user (String): Required. 
       **/
      this.publicizeMembership = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#concealMembership(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - org (String): Required. 
       *  - user (String): Required. 
       **/
      this.concealMembership = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#getTeams(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - org (String): Required. 
       **/
      this.getTeams = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#getTeam(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - id (String): Required. 
       **/
      this.getTeam = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#createTeam(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - org (String): Required. 
       *  - name (String): Required. 
       *  - repo_names (Array): Optional. Optional array of strings 
       *  - permission (String): Optional. `pull` - team members can pull, but not push or administer this repositories (Default), `push` - team members can pull and push, but not administer this repositores, `admin` - team members can pull, push and administer these repositories. Validation rule: ` ^(pull|push|admin)$ `.
       **/
      this.createTeam = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#updateTeam(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - id (String): Required. 
       *  - name (String): Required. 
       *  - permission (String): Optional. `pull` - team members can pull, but not push or administer this repositories (Default), `push` - team members can pull and push, but not administer this repositores, `admin` - team members can pull, push and administer these repositories. Validation rule: ` ^(pull|push|admin)$ `.
       **/
      this.updateTeam = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#deleteTeam(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - id (String): Required. 
       **/
      this.deleteTeam = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#getTeamMembers(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - id (String): Required. 
       *  - page (Number): Optional. Page number of the results to fetch. Validation rule: ` ^[0-9]+$ `.
       *  - per_page (Number): Optional. A custom page size up to 100. Default is 30. Validation rule: ` ^[0-9]+$ `.
       **/
      this.getTeamMembers = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#getTeamMember(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - id (String): Required. 
       *  - user (String): Required. 
       **/
      this.getTeamMember = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#addTeamMember(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - id (String): Required. 
       *  - user (String): Required. 
       **/
      this.addTeamMember = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#deleteTeamMember(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - id (String): Required. 
       *  - user (String): Required. 
       **/
      this.deleteTeamMember = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#getTeamRepos(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - id (String): Required. 
       *  - page (Number): Optional. Page number of the results to fetch. Validation rule: ` ^[0-9]+$ `.
       *  - per_page (Number): Optional. A custom page size up to 100. Default is 30. Validation rule: ` ^[0-9]+$ `.
       **/
      this.getTeamRepos = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#getTeamRepo(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - id (String): Required. 
       *  - user (String): Required. 
       *  - repo (String): Required. 
       **/
      this.getTeamRepo = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#addTeamRepo(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - id (String): Required. 
       *  - user (String): Required. 
       *  - repo (String): Required. 
       **/
      this.addTeamRepo = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
      /** section: github
       *  orgs#deleteTeamRepo(msg, callback) -> null
       *      - msg (Object): Object that contains the parameters and their values to be sent to the server.
       *      - callback (Function): function to call when the request is finished with an error as first argument and result data as second argument.
       *
       *  ##### Params on the `msg` object:
       *
       *  - headers (Object): Optional. Key/ value pair of request headers to pass along with the HTTP request. Valid headers are: 'If-Modified-Since', 'If-None-Match', 'Cookie', 'User-Agent', 'Accept', 'X-GitHub-OTP'.
       *  - id (String): Required. 
       *  - user (String): Required. 
       *  - repo (String): Required. 
       **/
      this.deleteTeamRepo = function(msg, block, callback) {
          var self = this;
          this.client.httpSend(msg, block, function(err, res) {
              if (err)
                  return self.sendError(err, null, msg, callback);
  
              var ret;
              try {
                  ret = res.data && JSON.parse(res.data);
              }
              catch (ex) {
                  if (callback)
                      callback(new error.InternalServerError(ex.message), res);
                  return;
              }
  
              if (!ret)
                  ret = {};
              if (!ret.meta)
                  ret.meta = {};
              ["x-ratelimit-limit", "x-ratelimit-remaining", "x-oauth-scopes", "link", "location", "last-modified", "etag", "status"].forEach(function(header) {
                  if (res.headers[header])
                      ret.meta[header] = res.headers[header];
              });
  
              if (callback)
                  callback(null, ret);
          });
      };
  
  }).call(orgs.orgs);
  