code: protected AbstractBeanDeployer<E> deploySpecialized() {
          // ensure that all decorators are initialized before initializing
          // the rest of the beans
          for (DecoratorImpl<?> bean : getEnvironment().getDecorators()) {
              bean.initialize(getEnvironment());
              containerLifecycleEvents.fireProcessBean(getManager(), bean);
              manager.addDecorator(bean);
              BootstrapLogger.LOG.foundDecorator(bean);
          }
          for (InterceptorImpl<?> bean : getEnvironment().getInterceptors()) {
              bean.initialize(getEnvironment());
              containerLifecycleEvents.fireProcessBean(getManager(), bean);
              manager.addInterceptor(bean);
              BootstrapLogger.LOG.foundInterceptor(bean);
          }
          return this;
      }
docs: interceptors, decorators and observers go first