code: function KeysAnd(values) {
  	var vals = this.values = {};
  	canReflect.eachKey(values, function(value, key) {
  		if (canReflect.isPlainObject(value) && !set.isSpecial(value)) {
  			vals[key] = new KeysAnd(value);
  		} else {
  			vals[key] = value;
  		}
  	});
  }
docs: Define the sub-types that BasicQuery will use