public ClientSchemaObjectBase DeleteOrganization(ClientSCOrganization clientOrganization, ClientSCOrganization clientParent)
		{
			return (ClientSchemaObjectBase)this.Invoke("DeleteOrganization", new object[] { clientOrganization, clientParent })[0];
		}
		public ClientSchemaObjectBase DeleteGroup(ClientSCGroup clientGroup, ClientSCOrganization clientParent)
		{
			return Facade.DeleteGroup((PC.SCGroup)clientGroup.ToSchemaObject(), clientParent != null ? (PC.SCOrganization)clientParent.ToSchemaObject() : null, false).ToClientSchemaObject();
		}
 public ClientSchemaObjectBase ChangeOwner(ClientSCBase clientObject, ClientSCOrganization clientParent)
 {
     return((ClientSchemaObjectBase)this.Invoke("ChangeOwner", new object[] { clientObject, clientParent })[0]);
 }
 public ClientSCOrganization DeleteObjectsRecursively(ClientSchemaObjectCollection clientObjects, ClientSCOrganization clientParent)
 {
     return((ClientSCOrganization)this.Invoke("DeleteObjectsRecursively", new object[] { clientObjects, clientParent })[0]);
 }
 public ClientSchemaObjectBase UpdateOrganization(ClientSCOrganization clientOrganization)
 {
     return((ClientSchemaObjectBase)this.Invoke("UpdateOrganization", new object[] { clientOrganization })[0]);
 }
 public ClientSchemaObjectBase DeleteUser(ClientSCUser clientUser, ClientSCOrganization clientParent)
 {
     return((ClientSchemaObjectBase)this.Invoke("DeleteUser", new object[] { clientUser, clientParent })[0]);
 }
		public ClientSchemaRelation MoveObjectToOrganization(ClientSCOrganization clientSource, ClientSCBase clientScObject, ClientSCOrganization clientTarget)
		{
			return (ClientSchemaRelation)this.Invoke("MoveObjectToOrganization", new object[] { clientSource, clientScObject, clientTarget })[0];
		}
		public ClientSchemaRelation MoveObjectToOrganization(ClientSCOrganization clientSource, ClientSCBase clientScObject, ClientSCOrganization clientTarget)
		{
			return (ClientSchemaRelation)Facade.MoveObjectToOrganization((PC.SCOrganization)clientSource.ToSchemaObject(), (PC.SCBase)clientScObject.ToSchemaObject(), (PC.SCOrganization)clientTarget.ToSchemaObject()).ToClientSchemaObject();
		}
		public ClientSchemaRelation SetUserDefaultOrganization(ClientSCUser clientUser, ClientSCOrganization clientParent)
		{
			return (ClientSchemaRelation)this.Invoke("SetUserDefaultOrganization", new object[] { clientUser, clientParent })[0];
		}
		public ClientSCOrganization DeleteObjectsRecursively(ClientSchemaObjectCollection clientObjects, ClientSCOrganization clientParent)
		{
			return (ClientSCOrganization)this.Invoke("DeleteObjectsRecursively", new object[] { clientObjects, clientParent })[0];
		}
		public ClientSchemaObjectBase ChangeOwner(ClientSCBase clientObject, ClientSCOrganization clientParent)
		{
			return (ClientSchemaObjectBase)this.Invoke("ChangeOwner", new object[] { clientObject, clientParent })[0];
		}
		public ClientSchemaObjectBase DeleteGroup(ClientSCGroup clientGroup, ClientSCOrganization clientParent)
		{
			return (ClientSchemaObjectBase)this.Invoke("DeleteGroup", new object[] { clientGroup, clientParent })[0];
		}
		public ClientSchemaObjectBase DeleteUser(ClientSCUser clientUser, ClientSCOrganization clientParent)
		{
			return (ClientSchemaObjectBase)this.Invoke("DeleteUser", new object[] { clientUser, clientParent })[0];
		}
		public ClientSchemaObjectBase ChangeOwner(ClientSCBase clientObject, ClientSCOrganization clientParent)
		{
			return Facade.ChangeOwner((PC.SCBase)clientObject.ToSchemaObject(), (PC.SCOrganization)clientParent.ToSchemaObject()).ToClientSchemaObject();
		}
		public ClientSchemaObjectBase AddOrganization(ClientSCOrganization clientOrganization, ClientSCOrganization clientParent)
		{
			EnsureID(clientOrganization);
			return Facade.AddOrganization((PC.SCOrganization)clientOrganization.ToSchemaObject(false), clientParent != null ? (PC.SCOrganization)clientParent.ToSchemaObject() : null).ToClientSchemaObject();
		}
		public ClientSCOrganization DeleteObjectsRecursively(ClientSchemaObjectCollection clientObjects, ClientSCOrganization clientParent)
		{
			return (ClientSCOrganization)Facade.DeleteObjectsRecursively(clientObjects.ToSchemaObjectCollection(), (PC.SCOrganization)clientParent.ToSchemaObject()).ToClientSCBaseObject();
		}
		public ClientSchemaObjectBase UpdateOrganization(ClientSCOrganization clientOrganization)
		{
			return Facade.UpdateOrganization((PC.SCOrganization)clientOrganization.ToSchemaObject()).ToClientSchemaObject();
		}
		public ClientSchemaRelation SetUserDefaultOrganization(ClientSCUser clientUser, ClientSCOrganization clientParent)
		{
			return (ClientSchemaRelation)Facade.SetUserDefaultOrganization((PC.SCUser)clientUser.ToSchemaObject(), (PC.SCOrganization)clientParent.ToSchemaObject()).ToClientSchemaObject();
		}
		public ClientSchemaObjectBase DeleteOrganization(ClientSCOrganization clientOrganization, ClientSCOrganization clientParent)
		{
			return Facade.DeleteOrganization((PC.SCOrganization)clientOrganization.ToSchemaObject(), clientParent != null ? (PC.SCOrganization)clientParent.ToSchemaObject() : null, false).ToClientSchemaObject();
		}
 public ClientSchemaObjectBase DeleteOrganization(ClientSCOrganization clientOrganization, ClientSCOrganization clientParent)
 {
     return((ClientSchemaObjectBase)this.Invoke("DeleteOrganization", new object[] { clientOrganization, clientParent })[0]);
 }
		public ClientSchemaObjectBase AddUser(ClientSCUser clientUser, ClientSCOrganization clientParent)
		{
			EnsureID(clientUser);
			return Facade.AddUser((PC.SCUser)clientUser.ToSchemaObject(false), clientParent != null ? (PC.SCOrganization)clientParent.ToSchemaObject() : null).ToClientSchemaObject();
		}
 public ClientSchemaObjectBase DeleteGroup(ClientSCGroup clientGroup, ClientSCOrganization clientParent)
 {
     return((ClientSchemaObjectBase)this.Invoke("DeleteGroup", new object[] { clientGroup, clientParent })[0]);
 }
		public ClientSchemaObjectBase DeleteUser(ClientSCUser clientUser, ClientSCOrganization clientParent)
		{
			return Facade.DeleteUser((PC.SCUser)clientUser.ToSchemaObject(), clientParent != null ? (PC.SCOrganization)clientParent.ToSchemaObject() : null, false).ToClientSchemaObject();
		}
 public ClientSchemaRelation SetUserDefaultOrganization(ClientSCUser clientUser, ClientSCOrganization clientParent)
 {
     return((ClientSchemaRelation)this.Invoke("SetUserDefaultOrganization", new object[] { clientUser, clientParent })[0]);
 }
		public ClientSchemaObjectBase AddGroup(ClientSCGroup clientGroup, ClientSCOrganization clientParent)
		{
			EnsureID(clientGroup);
			return Facade.AddGroup((PC.SCGroup)clientGroup.ToSchemaObject(false), clientParent != null ? (PC.SCOrganization)clientParent.ToSchemaObject() : null).ToClientSchemaObject();
		}
 public ClientSchemaRelation MoveObjectToOrganization(ClientSCOrganization clientSource, ClientSCBase clientScObject, ClientSCOrganization clientTarget)
 {
     return((ClientSchemaRelation)this.Invoke("MoveObjectToOrganization", new object[] { clientSource, clientScObject, clientTarget })[0]);
 }
		public ClientSchemaObjectBase UpdateOrganization(ClientSCOrganization clientOrganization)
		{
			return (ClientSchemaObjectBase)this.Invoke("UpdateOrganization", new object[] { clientOrganization })[0];
		}