public override IPermission Copy()
        {
            VirtuosoPermission copy = new VirtuosoPermission();

            copy.isUnrestricted = this.isUnrestricted;
            return(copy);
        }
		public override IPermission Intersect (IPermission target)
		{
			if (null == target)
				return null;

			if (!(target is VirtuosoPermission))
				throw new ArgumentException ("The object is not VirtuosoPermission", "target");
			VirtuosoPermission that = (VirtuosoPermission) target;

			VirtuosoPermission result = new VirtuosoPermission ();
			result.isUnrestricted = this.isUnrestricted && that.isUnrestricted;
			return result;
		}
        public override IPermission Intersect(IPermission target)
        {
            if (null == target)
            {
                return(null);
            }

            if (!(target is VirtuosoPermission))
            {
                throw new ArgumentException("The object is not VirtuosoPermission", "target");
            }
            VirtuosoPermission that = (VirtuosoPermission)target;

            VirtuosoPermission result = new VirtuosoPermission();

            result.isUnrestricted = this.isUnrestricted && that.isUnrestricted;
            return(result);
        }
		public override IPermission Copy ()
		{
			VirtuosoPermission copy = new VirtuosoPermission ();
			copy.isUnrestricted = this.isUnrestricted;
			return copy;
		}