// Path: src/main/java/org/marlin/pisces/MarlinUtils.java
//     public static void logException(final String msg, final Throwable th) {
//         if (MarlinConst.USE_LOGGER) {
// //            log.warning(msg, th);
//             log.log(java.util.logging.Level.WARNING, msg, th);
//         } else {
//             System.out.print("WARNING: ");
//             System.out.println(msg);
//             th.printStackTrace(System.err);
//         }
//     }
// 
// Path: src/main/java/org/marlin/pisces/MarlinUtils.java
// public static void logInfo(final String msg) {
//     if (MarlinConst.USE_LOGGER) {
//         log.info(msg);
//     } else {
//         System.out.print("INFO: ");
//         System.out.println(msg);
//     }
// }


import java.util.ArrayDeque;
import java.util.Arrays;
import static org.marlin.pisces.MarlinUtils.logException;
import static org.marlin.pisces.MarlinUtils.logInfo;

        // NO clean-up of array data = DIRTY ARRAY

        if (DO_CLEAN_DIRTY) {
            // Force zero-fill dirty arrays:
            Arrays.fill(array, 0, array.length, 0);
        }

        // fill cache:
        intArrays.addLast(array);
    }

    void putArray(final int[] array, final int length,
                  final int fromIndex, final int toIndex)
    {
        if (length != arraySize) {
            System.out.println("bad length = " + length);
            return;
        }
        if (DO_STATS) {
            returnOp++;
        }

        // clean-up array of dirty part[fromIndex; toIndex[
        fill(array, fromIndex, toIndex, 0);

        // fill cache:
        intArrays.addLast(array);
    }

// Path: src/main/java/org/marlin/pisces/MarlinUtils.java
//     public static void logException(final String msg, final Throwable th) {
//         if (MarlinConst.USE_LOGGER) {
// //            log.warning(msg, th);
//             log.log(java.util.logging.Level.WARNING, msg, th);
//         } else {
//             System.out.print("WARNING: ");
//             System.out.println(msg);
//             th.printStackTrace(System.err);
//         }
//     }
// 
// Path: src/main/java/org/marlin/pisces/MarlinUtils.java
// public static void logInfo(final String msg) {
//     if (MarlinConst.USE_LOGGER) {
//         log.info(msg);
//     } else {
//         System.out.print("INFO: ");
//         System.out.println(msg);
//     }
// }


// Path: src/main/java/org/marlin/pisces/IntArrayCache.java
import java.util.ArrayDeque;
import java.util.Arrays;
import static org.marlin.pisces.MarlinUtils.logException;
import static org.marlin.pisces.MarlinUtils.logInfo;


        // NO clean-up of array data = DIRTY ARRAY

        if (DO_CLEAN_DIRTY) {
            // Force zero-fill dirty arrays:
            Arrays.fill(array, 0, array.length, 0);
        }

        // fill cache:
        intArrays.addLast(array);
    }

    void putArray(final int[] array, final int length,
                  final int fromIndex, final int toIndex)
    {
        if (length != arraySize) {
            System.out.println("bad length = " + length);
            return;
        }
        if (DO_STATS) {
            returnOp++;
        }

        // clean-up array of dirty part[fromIndex; toIndex[
        fill(array, fromIndex, toIndex, 0);

        // fill cache:
        intArrays.addLast(array);
    }

    static void fill(final int[] array, final int fromIndex,