class ReentrantBoundedExecutor implements Executor {

    ReentrantBoundedExecutor(Executor coreExecutor, int maxThreads)
    {
        this.boundedExecutor = new BoundedExecutor(requireNonNull(coreExecutor, "coreExecutor is null"), maxThreads);
        this.coreExecutor = coreExecutor;
    }

      ReentrantBoundedExecutor(Executor coreExecutor, int maxThreads);

}