import org.checkerframework.checker.index.qual.*;

public class SameLenTripleThreat {
    public void foo(String[] vars) {
        String[] qrets = new String[vars.length];
        String @SameLen("vars") [] y = qrets;
        String[] indices = new String[vars.length];
        String @SameLen("qrets") [] x = indices;
    }

    String[] indices;

    public void foo2(String... vars) {
        String[] qrets = new String[vars.length];
        indices = new String[vars.length];
        String[] indicesLocal = new String[vars.length];
        for (int i = 0; i < qrets.length; i++) {
            indices[i] = "hello";
            indicesLocal[i] = "hello";
        }
    }

    public void foo3(String... vars) {
        String[] qrets = new String[vars.length];
        String[] indicesLocal = new String[vars.length];
        indices = new String[vars.length];
        for (int i = 0; i < qrets.length; i++) {
            indices[i] = "hello";
            indicesLocal[i] = "hello";
        }
    }
}
