package sandboxModel;

/*Generated by MPS */

import jetbrains.mps.samples.lambdaCalculus.runtime.Function;
import java.util.List;
import java.util.ArrayList;

public class minimalTypeTest {
  public minimalTypeTest() {
  }
  public static void main(String[] args) {
    System.out.println((eval()));
  }
  public static Object eval() {
    return new Function_1751004816843568058();
  }
  public static class Function_1751004816843568058 extends Function {
    private List myOuterVars = new ArrayList();
    public Function_1751004816843568058() {
      myType = "((AnyType->AnyType)->AnyType)";
    }
    public Function_1751004816843568058(List outerVars) {
      myType = "((AnyType->AnyType)->AnyType)";
      myOuterVars.addAll(outerVars);
    }
    public Object eval() {
      int i = 0;
      int j = 0;
      Function x = (Function) myArgs.get(i++);
      return (Object) ((Function) x).apply(x);
    }
    public int getParamsCount() {
      return 1;
    }
    public Function copy() {
      return new Function_1751004816843568058(myOuterVars);
    }
  }
}
