code: @Override
      public void onBeforeExecutionEvent(BeforeExecutionEvent event) {
          LepManager manager = event.getSource();
          ScopedContext threadContext = manager.getContext(ContextScopes.THREAD);
          if (threadContext == null) {
              throw new IllegalStateException("LEP manager thread context doesn't initialized");
          }
  
          TenantContext tenantContext = getRequiredValue(threadContext, THREAD_CONTEXT_KEY_TENANT_CONTEXT,
                                                         TenantContext.class);
          XmAuthenticationContext authContext = getRequiredValue(threadContext, THREAD_CONTEXT_KEY_AUTH_CONTEXT,
                                                                 XmAuthenticationContext.class);
  
          ScopedContext executionContext = manager.getContext(ContextScopes.EXECUTION);
          // add contexts
          executionContext.setValue(BINDING_KEY_TENANT_CONTEXT, tenantContext);
          executionContext.setValue(BINDING_KEY_AUTH_CONTEXT, authContext);
  
          bindExecutionContext(executionContext);
      }
docs: Init execution context for script variables bindings.
  
  @param event the BeforeExecutionEvent