{{header}}
{{object 1 0}} <<
  /Type /Catalog
  /Pages 2 0 R
  /AcroForm 4 0 R
  /OpenAction 10 0 R
>>
endobj
{{object 2 0}} <<
  /Type /Pages
  /Count 1
  /Kids [
    3 0 R
  ]
>>
endobj
% Page number 0.
{{object 3 0}} <<
  /Type /Page
  /Parent 2 0 R
  /Resources <<
    /Font <</F1 15 0 R>>
  >>
  /Contents [21 0 R]
  /MediaBox [0 0 612 792]
>>
endobj
% Forms
{{object 4 0}} <<
  /Fields [5 0 R]
>>
endobj
% Field
{{object 5 0}} <<
 /FT /Tx
 /T (MyField)
 /Type /Annot
 /Subtype /Widget
 /Rect [100 200 150 250]
>>
endobj
% OpenAction action
{{object 10 0}} <<
  /Type /Action
  /S /JavaScript
  /JS 11 0 R
>>
endobj
% JS program to execute
{{object 11 0}} <<
  {{streamlen}}
>>
stream
function testField(x) {
  var field = this.getField("MyField");
  field.value = x;
  var y = field.value;
  app.alert("Answer for \"" + x + "\" is: " + typeof(y) + " " + y);
}
testField("");
testField("goats");
testField("b4");
testField("b4.5");
testField("4x");
testField("4.5x");
testField(4);
testField("4");
testField(" 4");
testField("4 ");
testField("                          4                                      ");
testField("4 3 2 1");
testField("-4");
testField("23.00000001");
testField("23.00000000000000001");
testField(40000000000000000000000000);
testField("40000000000000000000000000");
testField("25,5");
testField("1e+5");
testField("1e5");
testField("1e-5");
testField("-1e-5");
testField("1.2e5");
testField(Infinity);
testField("Infinity");
testField("INFINITY");
testField("INF");
testField(NaN);
testField("NaN");
testField("NAN");
testField("0x100");
testField("0x100.1");
testField("0x100,1");
testField("0x100x1");
testField("123x6");
testField("123xy6");
testField("123.y6");
testField("1,000,000");
testField("1.2.3");
testField("1-3");
testField("1+3");
testField("1.-3");
testField("1.+3");
testField([1, 2, 3, 4]);
testField("[1, 2, 3, 4]");
testField({a: 1, b: 2});
testField("{a: 1, b: 2}");
testField(function(x) { return x+1; });
testField("function(x) { return x+1; }");
endstream
endobj
{{xref}}
{{trailer}}
{{startxref}}
%%EOF
