{{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}} <<
>>
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 <<
  /Root 1 0 R
>>
{{startxref}}
%%EOF
