code: @SuppressWarnings("unchecked")
      private <B extends Behavior<?, ?>> void addBehavior(final B behavior) {
  
          if (this.behaviors == null) {
              this.behaviors = new MultiMap<>();
          }
  
          LOGGER.log(ADD_BEHAVIOR, behavior.getClass().getCanonicalName(), this.getClass().getCanonicalName());
  
          this.behaviors.add((Class<Behavior<?, ?>>) behavior.getClass(), behavior);
      }
docs: {@inheritDoc}