// Path: Rabbits/rabbits/src/main/java/com/kyleduo/rabbits/rules/Rule.java
// public interface Rule {
//     enum Operator {
//         IS, STARTS_WITH, ENDS_WITH, IN, CONTAINS, EXISTS
//     }
// 
//     boolean verify(Action action);
// }


import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
import android.os.Parcelable;
import android.support.annotation.NonNull;
import android.text.ParcelableSpan;
import android.util.Size;
import android.util.SizeF;
import android.util.SparseArray;
import com.kyleduo.rabbits.rules.Rule;
import java.io.Serializable;
import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
                putExtra(e.getKey(), e.getValue());
            }
        }
        return this;
    }

    @Override
    public Navigation ignoreInterceptors() {
        mAction.setIgnoreInterceptors(true);
        return this;
    }

    @Override
    public Navigation ignoreFallback() {
        mAction.setIgnoreFallback(true);
        return this;
    }

    @Override
    public Navigation addInterceptor(Interceptor interceptor) {
        List<Interceptor> l = action().getInterceptors();
        if (l == null) {
            l = new ArrayList<>();
            action().setInterceptors(l);
        }
        l.add(interceptor);
        return this;
    }

    @Override
// Path: Rabbits/rabbits/src/main/java/com/kyleduo/rabbits/rules/Rule.java
// public interface Rule {
//     enum Operator {
//         IS, STARTS_WITH, ENDS_WITH, IN, CONTAINS, EXISTS
//     }
// 
//     boolean verify(Action action);
// }


// Path: Rabbits/rabbits/src/main/java/com/kyleduo/rabbits/AbstractNavigation.java
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
import android.os.Parcelable;
import android.support.annotation.NonNull;
import android.text.ParcelableSpan;
import android.util.Size;
import android.util.SizeF;
import android.util.SparseArray;
import com.kyleduo.rabbits.rules.Rule;
import java.io.Serializable;
import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

                putExtra(e.getKey(), e.getValue());
            }
        }
        return this;
    }

    @Override
    public Navigation ignoreInterceptors() {
        mAction.setIgnoreInterceptors(true);
        return this;
    }

    @Override
    public Navigation ignoreFallback() {
        mAction.setIgnoreFallback(true);
        return this;
    }

    @Override
    public Navigation addInterceptor(Interceptor interceptor) {
        List<Interceptor> l = action().getInterceptors();
        if (l == null) {
            l = new ArrayList<>();
            action().setInterceptors(l);
        }
        l.add(interceptor);
        return this;
    }

    @Override
    public Navigation addInterceptor(Interceptor interceptor, Rule rule) {