// Path: op1/src/main/java/com/op1/util/Check.java
// public class Check {
// 
//     public static <T> T notNull(T t, String message) {
//         if (t == null) {
//             throw new IllegalArgumentException(message);
//         }
//         return t;
//     }
// 
//     public static void that(boolean b, String message) {
//         if (!b) {
//             throw new IllegalArgumentException(message);
//         }
//     }
// 
//     public static void state(boolean b, String message) {
//         if (!b) {
//             throw new IllegalStateException(message);
//         }
//     }
// }


import com.op1.util.Check;
package com.op1.util.cmd;


/**
 * Represents the arguments passed in on the command line.
 */
public class Args {

    private final String[] args;
    private int index = 0;

    public Args(String[] args) {
// Path: op1/src/main/java/com/op1/util/Check.java
// public class Check {
// 
//     public static <T> T notNull(T t, String message) {
//         if (t == null) {
//             throw new IllegalArgumentException(message);
//         }
//         return t;
//     }
// 
//     public static void that(boolean b, String message) {
//         if (!b) {
//             throw new IllegalArgumentException(message);
//         }
//     }
// 
//     public static void state(boolean b, String message) {
//         if (!b) {
//             throw new IllegalStateException(message);
//         }
//     }
// }


// Path: op1/src/main/java/com/op1/util/cmd/Args.java
import com.op1.util.Check;

package com.op1.util.cmd;


/**
 * Represents the arguments passed in on the command line.
 */
public class Args {

    private final String[] args;
    private int index = 0;

    public Args(String[] args) {
        this.args = Check.notNull(args, "args cannot be null");