@NonNull
    public static List<TtlRunnable> gets(@Nullable Collection<? extends Runnable> tasks, boolean releaseTtlValueReferenceAfterRun, boolean idempotent) {
        if (tasks == null) return Collections.emptyList();

        List<TtlRunnable> copy = new ArrayList<>();