// Path: sample-android/src/main/java/com/example/sample_android/action/Remove.java
// @AutoValue
// public abstract class Remove implements Action {
//     
//     public static Remove create(int id) {
//         return new AutoValue_Remove(id);
//     }
//     
//     public abstract int id();
// }
// 
// Path: sample-android/src/main/java/com/example/sample_android/state/TodoItem.java
// @AutoValue
// public abstract class TodoItem {
//     
//     public static TodoItem create(int id, String text, boolean done) {
//         return new AutoValue_TodoItem(id, text, done);
//     }
//     
//     public abstract int id();
// 
//     public abstract String text();
//    
//     public abstract boolean done();
// }
// 
// Path: sample-android/src/main/java/com/example/sample_android/state/TodoList.java
// @AutoValue
// public abstract class TodoList {
// 
//     public static TodoList initial() {
//         return new AutoValue_TodoList(true, Collections.<TodoItem>emptyList());
//     }
// 
//     public static TodoList create(boolean loading, List<TodoItem> items) {
//         return new AutoValue_TodoList(loading, Collections.unmodifiableList(items));
//     }
//     
//     public abstract boolean loading();
// 
//     public abstract List<TodoItem> items();
// }
// 
// Path: redux-core/src/main/java/me/tatarka/redux/Reducer.java
// public interface Reducer<A, S> {
//     S reduce(A action, S state);
// }


import com.example.sample_android.action.Remove;
import com.example.sample_android.state.TodoItem;
import com.example.sample_android.state.TodoList;
import java.util.ArrayList;
import java.util.List;
import me.tatarka.redux.Reducer;
package com.example.sample_android.reducer;




public class RemoveReducer implements Reducer<Remove, TodoList> {
    @Override
    public TodoList reduce(Remove action, TodoList state) {
        List<TodoItem> items = new ArrayList<>(state.items());
        for (int i = 0; i < items.size(); i++) {
// Path: sample-android/src/main/java/com/example/sample_android/action/Remove.java
// @AutoValue
// public abstract class Remove implements Action {
//     
//     public static Remove create(int id) {
//         return new AutoValue_Remove(id);
//     }
//     
//     public abstract int id();
// }
// 
// Path: sample-android/src/main/java/com/example/sample_android/state/TodoItem.java
// @AutoValue
// public abstract class TodoItem {
//     
//     public static TodoItem create(int id, String text, boolean done) {
//         return new AutoValue_TodoItem(id, text, done);
//     }
//     
//     public abstract int id();
// 
//     public abstract String text();
//    
//     public abstract boolean done();
// }
// 
// Path: sample-android/src/main/java/com/example/sample_android/state/TodoList.java
// @AutoValue
// public abstract class TodoList {
// 
//     public static TodoList initial() {
//         return new AutoValue_TodoList(true, Collections.<TodoItem>emptyList());
//     }
// 
//     public static TodoList create(boolean loading, List<TodoItem> items) {
//         return new AutoValue_TodoList(loading, Collections.unmodifiableList(items));
//     }
//     
//     public abstract boolean loading();
// 
//     public abstract List<TodoItem> items();
// }
// 
// Path: redux-core/src/main/java/me/tatarka/redux/Reducer.java
// public interface Reducer<A, S> {
//     S reduce(A action, S state);
// }


// Path: sample-android/src/main/java/com/example/sample_android/reducer/RemoveReducer.java
import com.example.sample_android.action.Remove;
import com.example.sample_android.state.TodoItem;
import com.example.sample_android.state.TodoList;
import java.util.ArrayList;
import java.util.List;
import me.tatarka.redux.Reducer;

package com.example.sample_android.reducer;




public class RemoveReducer implements Reducer<Remove, TodoList> {
    @Override
    public TodoList reduce(Remove action, TodoList state) {
        List<TodoItem> items = new ArrayList<>(state.items());
        for (int i = 0; i < items.size(); i++) {
            TodoItem item = items.get(i);