{{header}}
{{object 1 0}} <<
  /Type /Catalog
  /Pages 2 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]
>>
% OpenAction action
{{object 10 0}} <<
  /Type /Action
  /S /JavaScript
  /JS 11 0 R
>>
endobj
% JS program to exexute
{{object 11 0}} <<
  {{streamlen}}
>>
stream
var result;
try {
  result = app.response("question");
  app.alert("result: " + result);
  result = app.response("question", "title", "default", true, "label");
  app.alert("result: " + result);
  result = app.response({"cQuestion": "question"});
  app.alert("result: " + result);
  result = app.response({
    "cQuestion": "question",
    "cTitle": "title",
    "cDefault": "default",
    "bPassword": true,
    "cLabel": "label"
  });
  app.alert("result: " + result);
} catch (e) {
  app.alert("unexpected error " + e);
}
try {
  app.response();
  app.alert("unexpected success");
} catch (e) {
  app.alert("Caught expected error " + e);
}
try {
  app.response({});
  app.alert("unexpected success");
} catch (e) {
  app.alert("Caught expected error " + e);
}
endstream
endobj
{{xref}}
{{trailer}}
{{startxref}}
%%EOF
