code: @Override
      @SuppressWarnings("unchecked")
      public <BD extends BehaviorData> C addBehavior(final BD data) {
  
          for (final Class<? extends Behavior<?, ?>> behaviorClass : data.getBehaviors()) {
  
              final Object[] optionalData = new Object[] { data, this };
  
              final UniqueKey<? extends Behavior<?, ?>> key = Key.create(behaviorClass, optionalData, key());
  
              addBehavior(localFacade().globalFacade().behaviorFacade().retrieve(key));
          }
          return (C) this;
      }
docs: {@inheritDoc}