public function addVerb($verb) {
      if (is_array($verb)) {
        $verb = BaMLVerbResource::Make($verb);
      }
          
      if (!($verb instanceof BaMLVerb)) {
        throw new \CatapultApiException("You can only add type BaMLVerb..");
      }
      /** check for constraints **/
      if (isset($this->constraints['verbs']) && sizeof($this->verbs) >= $this->constraints['verbs']) {
        throw new \CatapultApiException($this->getName() . " verb can only take " . $this->constraints['verbs'] . " verbs");
      }
      /** avoid memory issues by cloning. if needed **/
      if (BaseUtilities::is_ref($verb, $this)) {
        $this->verbs[] = clone $verb;
      } else {
        $this->verbs[] = $verb;
      }
    }