class ParallelSupplier implements Supplier<WhenFutureObj> {

	private static final LFLog LOG = LFLoggerManager.getLogger(ParallelSupplier.class);

	private final Executable executableItem;

	private final String currChainId;

	private final Integer slotIndex;

	public ParallelSupplier(Executable executableItem, String currChainId, Integer slotIndex) {
		this.executableItem = executableItem;
		this.currChainId = currChainId;
		this.slotIndex = slotIndex;
	}

	@Override
	public WhenFutureObj get() {<FILL_FUNCTION_BODY>}

}

		try {
			executableItem.setCurrChainId(currChainId);
			executableItem.execute(slotIndex);
			return WhenFutureObj.success(executableItem.getId());
		}
		catch (Exception e) {
			return WhenFutureObj.fail(executableItem.getId(), e);
		}
	
<no_super_class>