class test_enumerated_list{

public mfl.Number get_test_enumerated_list(){
  mfl.Number result = new mfl.Number();
  mfl.Value lst;
  System.out.println(new mfl.Enumerated_list(0).toString());
  System.out.println(new mfl.Enumerated_list(1).append(new mfl.Integer(1)).toString());
  System.out.println(new mfl.Enumerated_list(2).append(new mfl.Integer(1)).append(new mfl.Integer(2)).toString());
  System.out.println(new mfl.Integer(1).in_op(new mfl.Enumerated_list(2).append(new mfl.Integer(1)).append(new mfl.Integer(2))).toString());
  System.out.println(new mfl.Integer(3).in_op(new mfl.Enumerated_list(2).append(new mfl.Integer(1)).append(new mfl.Integer(2))).toString());
  lst = new mfl.Enumerated_list(4).append(new mfl.Integer(1)).append(new mfl.Integer(2)).append(new mfl.Integer(3)).append(new mfl.Integer(4));
  System.out.println(lst.index_op(new mfl.Integer(3)).toString());
  lst = lst.update_element(new mfl.Integer(4), new mfl.Enumerated_list(3).append(new mfl.Integer(4)).append(new mfl.Integer(5)).append(new mfl.Integer(6)));
  System.out.println(lst.toString());
  lst = lst.update_element(new mfl.Integer(4), lst.index_op(new mfl.Integer(4)).op_update_element(new mfl.Integer(3), new mfl.Integer(10), "multiply_op"));
  System.out.println(lst.toString());
  System.out.println(new mfl.Enumerated_list(2).append(new mfl.Integer(1)).append(new mfl.Integer(2)).plus_op(new mfl.Enumerated_list(2).append(new mfl.Integer(3)).append(new mfl.Integer(4))).toString());
  System.out.println(lst.plus_op(new mfl.Enumerated_list(1).append(new mfl.Integer(1000))).toString());
  return result;
}

public static void main(String Argv[]){
  test_enumerated_list m = new test_enumerated_list();
  m.get_test_enumerated_list();
}

}

