// Path: app/src/main/java/org/pquery/util/Assert.java
// public class Assert {
// 
//     public static void assertNotNull(Object a) {
//         if (a == null) {
//             throw new IllegalArgumentException("null reference");
//         }
//     }
// 
//     public static void assertEquals(int a, int b) {
//         if (a != b) {
//             throw new IllegalArgumentException("not equal");
//         }
//     }
// 
//     public static void fail() {
//         throw new IllegalArgumentException("fail");
//     }
// 
//     public static void assertTrue(boolean a) {
//         if (!a) {
//             throw new IllegalArgumentException("not true");
//         }
//     }
// 
//     public static void assertFalse(boolean a) {
//         if (a) {
//             throw new IllegalArgumentException("true");
//         }
//     }
// 
//     public static void assertNull(Object a) {
//         if (a != null) {
//             throw new IllegalArgumentException("not null");
//         }
//     }
// }


import android.content.res.Resources;
import org.pquery.R;
import org.pquery.util.Assert;

package org.pquery.webdriver;



public abstract class RetriableTask<T> {

    protected Resources res;
    private int numberOfTriesLeft; // number left
    private int lastPercent;
    private ProgressListener progressListener;
    protected CancelledListener cancelledListener;
    private int fromPercent;
    private int toPercent;

    public RetriableTask(int numberOfRetries, int fromPercent, int toPercent, ProgressListener progressListener, CancelledListener cancelledListener, Resources res) {

// Path: app/src/main/java/org/pquery/util/Assert.java
// public class Assert {
// 
//     public static void assertNotNull(Object a) {
//         if (a == null) {
//             throw new IllegalArgumentException("null reference");
//         }
//     }
// 
//     public static void assertEquals(int a, int b) {
//         if (a != b) {
//             throw new IllegalArgumentException("not equal");
//         }
//     }
// 
//     public static void fail() {
//         throw new IllegalArgumentException("fail");
//     }
// 
//     public static void assertTrue(boolean a) {
//         if (!a) {
//             throw new IllegalArgumentException("not true");
//         }
//     }
// 
//     public static void assertFalse(boolean a) {
//         if (a) {
//             throw new IllegalArgumentException("true");
//         }
//     }
// 
//     public static void assertNull(Object a) {
//         if (a != null) {
//             throw new IllegalArgumentException("not null");
//         }
//     }
// }


// Path: app/src/main/java/org/pquery/webdriver/RetriableTask.java
import android.content.res.Resources;
import org.pquery.R;
import org.pquery.util.Assert;

package org.pquery.webdriver;



public abstract class RetriableTask<T> {

    protected Resources res;
    private int numberOfTriesLeft; // number left
    private int lastPercent;
    private ProgressListener progressListener;
    protected CancelledListener cancelledListener;
    private int fromPercent;
    private int toPercent;

    public RetriableTask(int numberOfRetries, int fromPercent, int toPercent, ProgressListener progressListener, CancelledListener cancelledListener, Resources res) {

        Assert.assertNotNull(progressListener);
