summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-07-10 15:35:54 +0000
committerKarl Berry <karl@freefriends.org>2010-07-10 15:35:54 +0000
commit6e615a31b31d4548ecffa4c9fb541494b25e1237 (patch)
tree3cc0d85064cec23a953ad5d87a1d23cfab3ebfa7
parent7c479d31e98862fb4b5ebbe87c9b4c7048e23934 (diff)
rm fc_arith, author request
git-svn-id: svn://tug.org/texlive/trunk@19344 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/fc_arith/README22
-rw-r--r--Master/texmf-dist/doc/latex/fc_arith/docs/fc_arith.pdfbin511676 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/latex/fc_arith/examples/fc04.pdfbin52900 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/latex/fc_arith/examples/fc04.tex118
-rw-r--r--Master/texmf-dist/doc/latex/fc_arith/examples/fc04_pdftex.tex98
-rw-r--r--Master/texmf-dist/doc/latex/fc_arith/examples/graphics/fc_icons.pdfbin13404 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/latex/fc_arith/examples/graphics/nwfsc_logo.eps8518
-rw-r--r--Master/texmf-dist/doc/latex/fc_arith/examples/graphics/nwfsc_logo.pdfbin11787 -> 0 bytes
-rw-r--r--Master/texmf-dist/source/latex/fc_arith/fc_arith.drv42
-rw-r--r--Master/texmf-dist/source/latex/fc_arith/fc_arith.dtx1802
-rw-r--r--Master/texmf-dist/source/latex/fc_arith/fc_arith.ins62
-rw-r--r--Master/texmf-dist/tex/latex/fc_arith/fc_arith.sty1586
-rwxr-xr-xMaster/tlpkg/bin/tlpkg-ctan-check2
-rwxr-xr-xMaster/tlpkg/libexec/ctan2tds2
-rw-r--r--Master/tlpkg/tlpsrc/collection-humanities.tlpsrc1
-rw-r--r--Master/tlpkg/tlpsrc/fc_arith.tlpsrc0
16 files changed, 3 insertions, 12250 deletions
diff --git a/Master/texmf-dist/doc/latex/fc_arith/README b/Master/texmf-dist/doc/latex/fc_arith/README
deleted file mode 100644
index d9be75ab611..00000000000
--- a/Master/texmf-dist/doc/latex/fc_arith/README
+++ /dev/null
@@ -1,22 +0,0 @@
-The fc_arith Package
-
-fc_arith is a LaTeX package used to create an arithmetic flash card.
-Addition, subtraction, multiplication, and division problems are randomly
-generated. There is a menu system for setting the intervals from which to randomly
-draw numbers, and the number of decimal places these numbers should have. The user
-can optionally compete against the clock, and awarded points as a function of how
-fast the problem is correctly solved.
-
-The flash card created by fc_arith can be customized in many ways. Design and build
-your own flash card using an dvips (or dvipsone)/Acrobat Distiller work flow, or
-a pdftex work flow.
-
-Requirements are
- 1. The eforms package (version 2.5c or later, 2010/03/21 or later), and
- is available from http://www.math.uakron.edu/~dpstory/webeq.html.
- 2. The popupmenu package
- http://mirror.ctan.org/macros/latex/contrib/popupmenu/
-
-D. P. Story
-03/26/10
-
diff --git a/Master/texmf-dist/doc/latex/fc_arith/docs/fc_arith.pdf b/Master/texmf-dist/doc/latex/fc_arith/docs/fc_arith.pdf
deleted file mode 100644
index d5553c7e75d..00000000000
--- a/Master/texmf-dist/doc/latex/fc_arith/docs/fc_arith.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/fc_arith/examples/fc04.pdf b/Master/texmf-dist/doc/latex/fc_arith/examples/fc04.pdf
deleted file mode 100644
index acef8bdd1b4..00000000000
--- a/Master/texmf-dist/doc/latex/fc_arith/examples/fc04.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/fc_arith/examples/fc04.tex b/Master/texmf-dist/doc/latex/fc_arith/examples/fc04.tex
deleted file mode 100644
index 537e02981e2..00000000000
--- a/Master/texmf-dist/doc/latex/fc_arith/examples/fc04.tex
+++ /dev/null
@@ -1,118 +0,0 @@
-\documentclass{article}
-\usepackage[
- web={usetemplates,pro,usesf},
- eforms
-]{aeb_pro}
-\usepackage{fc_arith}
-\margins{.25in}{.25in}{.25in}{.25in}
-\screensize{4.3in+25bp}{4.4in}
-\textBgColor{webyellow}
-
-\DeclareDocInfo
-{
- university={\AcroTeX.Net},
- title={PDF Flash Card: Arithmetic},
- author={D. P. Story, AcroTeX.Net, Northwest Florida State College, The University of Akron},
- email={dpstory@acrotex.net},
- subject={Practice elementary arithmetic operations},
- talksite={\url{www.acrotex.net}},
- version={1.0},
- keywords={AcroTeX.Net, arithmetic, flash cards},
- copyrightStatus=True,
- copyrightNotice={Copyright (C) \the\year, D. P. Story},
- copyrightInfoURL={http://www.acrotex.net}
-}
-\DeclareInitView{windowoptions={showtitle}}
-
-%
-% Set the ranges of the operations
-%
-\DeclareArithParams
-{%
- addT={[2,20]},addB={[5,30]},
- subT={[1,5]},subB={[5,10]},
- mulT={[1,12]},mulB={[1,10]},
- divQ={[1,4]},divB={[1,10]},
-}
-
-%
-% Optionally insert a logo in the upper right corner using \rheader (part of the running header.
-%
-\rheader{\parbox[t]{.5in}{\kern0pt\includegraphics[width=\linewidth]{graphics/nwfsc_logo}}}
-
-\begin{popupmenu}{fcMenu}
- \item{title=Options, return=0}
- \item{title=Toggle Keypad,return=1}
- \item{title=About PDF Flash Cards, return=2}
-\end{popupmenu}
-
-% Import and place icon appearances
-\declareMultiImages
-{%
- {path=graphics/fc_icons.pdf,page=0,placement=StartAgain}
- {path=graphics/fc_icons.pdf,page=1,placement=[1]StartAgain}
- {path=graphics/fc_icons.pdf,page=2,placement=NewProblem}
- {path=graphics/fc_icons.pdf,page=3,placement=[1]NewProblem}
-}
-\begin{docassembly}
-\insertPreDocAssembly
-\end{docassembly}
-
-\parskip0pt\parindent0pt%\previewtrue
-
-\begin{document}
-
-\begin{center}
-
-{%
- \LARGE\bfseries\color{blue}PDF Flash Cards\\[1ex]Elementary Arithmetic
-}
-
-%
-% The arithmetic problem, \arithProb: top, bottom and operation. This command is REQUIRED.
-% This command generates three text fields stacked so that form a standard arithmetic
-% problem: top
-% op bot
-%
-
-\arithProb
-
-%
-% \alertbox is a text field where a right or wrong message is written--REQUIRED
-% \startAgain clears the statistics field, re-initializes a variables--REQUIRED
-% \inputRegion is where the user enters his/her answer--REQUIRED
-% \Keypad allows user to enter answer with mouse--OPTIONAL
-% \newCard random selects a new arithmetic problem (add, sub, mul, div) depending on the
-% combo box \cbOperation, described below.
-%
-% These components can be moved around to a new design, thought I don't know what that would
-% be. I have no imagination for design myself.
-
-\mbox{\vbox{\smash{\alertbox}\startAgain}\fcSep\inputRegion\fcSep\vbox{\smash{\raisebox{4bp}{\Keypad}}\newCard}}%
-
-\medskip
-%
-% \cbTiming is combo box use to set a time limit on answer the problem--OPTIONAL
-% There is also a package option, notimedscores, that removes timing calculations
-% from the PDF, no statistics, no alerts. The option notimedscores makes the combo
-% box created y \cbTiming into a readonly field.
-%
-% \ansField is the field the user enters his/her answer into---REQUIRED
-% \cbOperation a combo box to select what operation to use---REQUIRED
-
-\mbox{\cbTiming\fcSep\ansField\fcSep\cbOperation}
-
-\medskip
-
-%
-% This calculation computes the width of the previous row of fields, and sets \cs{fcWidth},
-% a dimension in this package, to that width.
-%
-\settowidth{\fcWidth}{\cbTiming\fcSep\ansField\fcSep\cbOperation}
-%
-% \statsFields is a collection of text fields to display user statistics---OPTIONAL
-%
-\makebox[\fcWidth][s]{\statsFields}
-
-\end{center}
-\end{document} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/fc_arith/examples/fc04_pdftex.tex b/Master/texmf-dist/doc/latex/fc_arith/examples/fc04_pdftex.tex
deleted file mode 100644
index 1d7e83966f8..00000000000
--- a/Master/texmf-dist/doc/latex/fc_arith/examples/fc04_pdftex.tex
+++ /dev/null
@@ -1,98 +0,0 @@
-\documentclass{article}
-\usepackage[pdftex,usetemplates,pro,usesf]{web}
-\usepackage{eforms}
-\usepackage{fc_arith}
-\margins{.25in}{.25in}{.25in}{.25in}
-\screensize{4.3in+25bp}{4.4in}
-\textBgColor{webyellow}
-
-\DeclareDocInfo
-{
- university={\AcroTeX.Net},
- title={PDF Flash Card: Arithmetic},
- author={D. P. Story, AcroTeX.Net, Northwest Florida State College, The University of Akron},
- email={dpstory@acrotex.net},
- subject={Practice elementary arithmetic operations},
- talksite={\url{www.acrotex.net}},
- version={1.0},
- keywords={AcroTeX.Net, arithmetic, flash cards},
-}
-
-\DeclareArithParams
-{%
- addT={[2,20]},addB={[5,30]},
- subT={[1,5]},subB={[5,10]},
- mulT={[1,12]},mulB={[1,10]},
- divQ={[1,4]},divB={[1,10]}
-}
-
-%
-% Optionally insert a logo in the upper right corner using \rheader (part of the running header.
-%
-\rheader{\parbox[t]{.5in}{\kern0pt\includegraphics[width=\linewidth]{graphics/nwfsc_logo}}}
-
-\begin{popupmenu}{fcMenu}
- \item{title=Options, return=0}
- \item{title=Toggle Keypad,return=1}
- \item{title=About PDF Flash Cards, return=2}
-\end{popupmenu}
-
-
-\parskip0pt\parindent0pt%\previewtrue
-
-\begin{document}
-
-\begin{center}
-
-{%
- \LARGE\bfseries\color{blue}PDF Flash Cards\\[1ex]Elementary Arithmetic
-}
-
-%
-% The arithmetic problem, \arithProb: top, bottom and operation. This command is REQUIRED.
-% This command generates three text fields stacked so that form a standard arithmetic
-% problem: top
-% op bot
-%
-
-\arithProb
-
-%
-% \alertbox is a text field where a right or wrong message is written--REQUIRED
-% \startAgain clears the statistics field, re-initializes a variables--REQUIRED
-% \inputRegion is where the user enters his/her answer--REQUIRED
-% \Keypad allows user to enter answer with mouse--OPTIONAL
-% \newCard random selects a new arithmetic problem (add, sub, mul, div) depending on the
-% combo box \cbOperation, described below.
-%
-% These components can be moved around to a new design, thought I don't know what that would
-% be. I have no imagination for design myself.
-
-\mbox{\vbox{\smash{\alertbox}\startAgain}\fcSep\inputRegion\fcSep\vbox{\smash{\raisebox{4bp}{\Keypad}}\newCard}}%
-
-\medskip
-%
-% \cbTiming is combo box use to set a time limit on answer the problem--OPTIONAL
-% There is also a package option, notimedscores, that removes timing calculations
-% from the PDF, no statistics, no alerts. The option notimedscores makes the combo
-% box created y \cbTiming into a readonly field.
-%
-% \ansField is the field the user enters his/her answer into---REQUIRED
-% \cbOperation a combo box to select what operation to use---REQUIRED
-
-\mbox{\cbTiming\fcSep\ansField\fcSep\cbOperation}
-
-\medskip
-
-%
-% This calculation computes the width of the previous row of fields, and sets \cs{fcWidth},
-% a dimension in this package, to that width.
-%
-\settowidth{\fcWidth}{\cbTiming\fcSep\ansField\fcSep\cbOperation}
-%
-% \statsFields is a collection of text fields to display user statistics---OPTIONAL
-%
-\makebox[\fcWidth][s]{\statsFields}
-
-\end{center}
-\end{document} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/fc_arith/examples/graphics/fc_icons.pdf b/Master/texmf-dist/doc/latex/fc_arith/examples/graphics/fc_icons.pdf
deleted file mode 100644
index f09ef44f796..00000000000
--- a/Master/texmf-dist/doc/latex/fc_arith/examples/graphics/fc_icons.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/fc_arith/examples/graphics/nwfsc_logo.eps b/Master/texmf-dist/doc/latex/fc_arith/examples/graphics/nwfsc_logo.eps
deleted file mode 100644
index 1be612edf15..00000000000
--- a/Master/texmf-dist/doc/latex/fc_arith/examples/graphics/nwfsc_logo.eps
+++ /dev/null
@@ -1,8518 +0,0 @@
-%!PS-Adobe-3.1 EPSF-3.0
-%ADO_DSC_Encoding: Windows Roman
-%%Title: A9R88CD.tmp.pdf
-%%Creator: Adobe Acrobat 9.0.0
-%%For: Donald Story
-%%CreationDate: 09/29/2008, 3:43:37 PM
-%%BoundingBox: 0 0 78 74
-%%HiResBoundingBox: 0 0 77.2364 73.4901
-%%CropBox: 0 0 77.2364 73.4901
-%%LanguageLevel: 2
-%%DocumentNeededResources: (atend)
-%%DocumentSuppliedResources: (atend)
-%%DocumentNeededFeatures: (atend)
-%%DocumentSuppliedFeatures: (atend)
-%%DocumentData: Clean7Bit
-%%Pages: (atend)
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%DocumentCustomColors: (atend)
-%%EndComments
-%%BeginDefaults
-%%ViewingOrientation: 1 0 0 1
-%%EndDefaults
-%%BeginProlog
-%%BeginResource: procset Adobe_AGM_Utils 1.0 0
-%%Version: 1.0 0
-%%Copyright: Copyright(C)2000-2006 Adobe Systems, Inc. All Rights Reserved.
-systemdict/setpacking known
-{currentpacking true setpacking}if
-userdict/Adobe_AGM_Utils 75 dict dup begin put
-/bdf
-{bind def}bind def
-/nd{null def}bdf
-/xdf
-{exch def}bdf
-/ldf
-{load def}bdf
-/ddf
-{put}bdf
-/xddf
-{3 -1 roll put}bdf
-/xpt
-{exch put}bdf
-/ndf
-{
- exch dup where{
- pop pop pop
- }{
- xdf
- }ifelse
-}def
-/cdndf
-{
- exch dup currentdict exch known{
- pop pop
- }{
- exch def
- }ifelse
-}def
-/gx
-{get exec}bdf
-/ps_level
- /languagelevel where{
- pop systemdict/languagelevel gx
- }{
- 1
- }ifelse
-def
-/level2
- ps_level 2 ge
-def
-/level3
- ps_level 3 ge
-def
-/ps_version
- {version cvr}stopped{-1}if
-def
-/set_gvm
-{currentglobal exch setglobal}bdf
-/reset_gvm
-{setglobal}bdf
-/makereadonlyarray
-{
- /packedarray where{pop packedarray
- }{
- array astore readonly}ifelse
-}bdf
-/map_reserved_ink_name
-{
- dup type/stringtype eq{
- dup/Red eq{
- pop(_Red_)
- }{
- dup/Green eq{
- pop(_Green_)
- }{
- dup/Blue eq{
- pop(_Blue_)
- }{
- dup()cvn eq{
- pop(Process)
- }if
- }ifelse
- }ifelse
- }ifelse
- }if
-}bdf
-/AGMUTIL_GSTATE 22 dict def
-/get_gstate
-{
- AGMUTIL_GSTATE begin
- /AGMUTIL_GSTATE_clr_spc currentcolorspace def
- /AGMUTIL_GSTATE_clr_indx 0 def
- /AGMUTIL_GSTATE_clr_comps 12 array def
- mark currentcolor counttomark
- {AGMUTIL_GSTATE_clr_comps AGMUTIL_GSTATE_clr_indx 3 -1 roll put
- /AGMUTIL_GSTATE_clr_indx AGMUTIL_GSTATE_clr_indx 1 add def}repeat pop
- /AGMUTIL_GSTATE_fnt rootfont def
- /AGMUTIL_GSTATE_lw currentlinewidth def
- /AGMUTIL_GSTATE_lc currentlinecap def
- /AGMUTIL_GSTATE_lj currentlinejoin def
- /AGMUTIL_GSTATE_ml currentmiterlimit def
- currentdash/AGMUTIL_GSTATE_do xdf/AGMUTIL_GSTATE_da xdf
- /AGMUTIL_GSTATE_sa currentstrokeadjust def
- /AGMUTIL_GSTATE_clr_rnd currentcolorrendering def
- /AGMUTIL_GSTATE_op currentoverprint def
- /AGMUTIL_GSTATE_bg currentblackgeneration cvlit def
- /AGMUTIL_GSTATE_ucr currentundercolorremoval cvlit def
- currentcolortransfer cvlit/AGMUTIL_GSTATE_gy_xfer xdf cvlit/AGMUTIL_GSTATE_b_xfer xdf
- cvlit/AGMUTIL_GSTATE_g_xfer xdf cvlit/AGMUTIL_GSTATE_r_xfer xdf
- /AGMUTIL_GSTATE_ht currenthalftone def
- /AGMUTIL_GSTATE_flt currentflat def
- end
-}def
-/set_gstate
-{
- AGMUTIL_GSTATE begin
- AGMUTIL_GSTATE_clr_spc setcolorspace
- AGMUTIL_GSTATE_clr_indx{AGMUTIL_GSTATE_clr_comps AGMUTIL_GSTATE_clr_indx 1 sub get
- /AGMUTIL_GSTATE_clr_indx AGMUTIL_GSTATE_clr_indx 1 sub def}repeat setcolor
- AGMUTIL_GSTATE_fnt setfont
- AGMUTIL_GSTATE_lw setlinewidth
- AGMUTIL_GSTATE_lc setlinecap
- AGMUTIL_GSTATE_lj setlinejoin
- AGMUTIL_GSTATE_ml setmiterlimit
- AGMUTIL_GSTATE_da AGMUTIL_GSTATE_do setdash
- AGMUTIL_GSTATE_sa setstrokeadjust
- AGMUTIL_GSTATE_clr_rnd setcolorrendering
- AGMUTIL_GSTATE_op setoverprint
- AGMUTIL_GSTATE_bg cvx setblackgeneration
- AGMUTIL_GSTATE_ucr cvx setundercolorremoval
- AGMUTIL_GSTATE_r_xfer cvx AGMUTIL_GSTATE_g_xfer cvx AGMUTIL_GSTATE_b_xfer cvx
- AGMUTIL_GSTATE_gy_xfer cvx setcolortransfer
- AGMUTIL_GSTATE_ht/HalftoneType get dup 9 eq exch 100 eq or
- {
- currenthalftone/HalftoneType get AGMUTIL_GSTATE_ht/HalftoneType get ne
- {
- mark AGMUTIL_GSTATE_ht{sethalftone}stopped cleartomark
- }if
- }{
- AGMUTIL_GSTATE_ht sethalftone
- }ifelse
- AGMUTIL_GSTATE_flt setflat
- end
-}def
-/get_gstate_and_matrix
-{
- AGMUTIL_GSTATE begin
- /AGMUTIL_GSTATE_ctm matrix currentmatrix def
- end
- get_gstate
-}def
-/set_gstate_and_matrix
-{
- set_gstate
- AGMUTIL_GSTATE begin
- AGMUTIL_GSTATE_ctm setmatrix
- end
-}def
-/AGMUTIL_str256 256 string def
-/AGMUTIL_src256 256 string def
-/AGMUTIL_dst64 64 string def
-/AGMUTIL_srcLen nd
-/AGMUTIL_ndx nd
-/AGMUTIL_cpd nd
-/capture_cpd{
- //Adobe_AGM_Utils/AGMUTIL_cpd currentpagedevice ddf
-}def
-/thold_halftone
-{
- level3
- {sethalftone currenthalftone}
- {
- dup/HalftoneType get 3 eq
- {
- sethalftone currenthalftone
- }{
- begin
- Width Height mul{
- Thresholds read{pop}if
- }repeat
- end
- currenthalftone
- }ifelse
- }ifelse
-}def
-/rdcmntline
-{
- currentfile AGMUTIL_str256 readline pop
- (%)anchorsearch{pop}if
-}bdf
-/filter_cmyk
-{
- dup type/filetype ne{
- exch()/SubFileDecode filter
- }{
- exch pop
- }
- ifelse
- [
- exch
- {
- AGMUTIL_src256 readstring pop
- dup length/AGMUTIL_srcLen exch def
- /AGMUTIL_ndx 0 def
- AGMCORE_plate_ndx 4 AGMUTIL_srcLen 1 sub{
- 1 index exch get
- AGMUTIL_dst64 AGMUTIL_ndx 3 -1 roll put
- /AGMUTIL_ndx AGMUTIL_ndx 1 add def
- }for
- pop
- AGMUTIL_dst64 0 AGMUTIL_ndx getinterval
- }
- bind
- /exec cvx
- ]cvx
-}bdf
-/filter_indexed_devn
-{
- cvi Names length mul names_index add Lookup exch get
-}bdf
-/filter_devn
-{
- 4 dict begin
- /srcStr xdf
- /dstStr xdf
- dup type/filetype ne{
- 0()/SubFileDecode filter
- }if
- [
- exch
- [
- /devicen_colorspace_dict/AGMCORE_gget cvx/begin cvx
- currentdict/srcStr get/readstring cvx/pop cvx
- /dup cvx/length cvx 0/gt cvx[
- Adobe_AGM_Utils/AGMUTIL_ndx 0/ddf cvx
- names_index Names length currentdict/srcStr get length 1 sub{
- 1/index cvx/exch cvx/get cvx
- currentdict/dstStr get/AGMUTIL_ndx/load cvx 3 -1/roll cvx/put cvx
- Adobe_AGM_Utils/AGMUTIL_ndx/AGMUTIL_ndx/load cvx 1/add cvx/ddf cvx
- }for
- currentdict/dstStr get 0/AGMUTIL_ndx/load cvx/getinterval cvx
- ]cvx/if cvx
- /end cvx
- ]cvx
- bind
- /exec cvx
- ]cvx
- end
-}bdf
-/AGMUTIL_imagefile nd
-/read_image_file
-{
- AGMUTIL_imagefile 0 setfileposition
- 10 dict begin
- /imageDict xdf
- /imbufLen Width BitsPerComponent mul 7 add 8 idiv def
- /imbufIdx 0 def
- /origDataSource imageDict/DataSource get def
- /origMultipleDataSources imageDict/MultipleDataSources get def
- /origDecode imageDict/Decode get def
- /dstDataStr imageDict/Width get colorSpaceElemCnt mul string def
- imageDict/MultipleDataSources known{MultipleDataSources}{false}ifelse
- {
- /imbufCnt imageDict/DataSource get length def
- /imbufs imbufCnt array def
- 0 1 imbufCnt 1 sub{
- /imbufIdx xdf
- imbufs imbufIdx imbufLen string put
- imageDict/DataSource get imbufIdx[AGMUTIL_imagefile imbufs imbufIdx get/readstring cvx/pop cvx]cvx put
- }for
- DeviceN_PS2{
- imageDict begin
- /DataSource[DataSource/devn_sep_datasource cvx]cvx def
- /MultipleDataSources false def
- /Decode[0 1]def
- end
- }if
- }{
- /imbuf imbufLen string def
- Indexed_DeviceN level3 not and DeviceN_NoneName or{
- /srcDataStrs[imageDict begin
- currentdict/MultipleDataSources known{MultipleDataSources{DataSource length}{1}ifelse}{1}ifelse
- {
- Width Decode length 2 div mul cvi string
- }repeat
- end]def
- imageDict begin
- /DataSource[AGMUTIL_imagefile Decode BitsPerComponent false 1/filter_indexed_devn load dstDataStr srcDataStrs devn_alt_datasource/exec cvx]cvx def
- /Decode[0 1]def
- end
- }{
- imageDict/DataSource[1 string dup 0 AGMUTIL_imagefile Decode length 2 idiv string/readstring cvx/pop cvx names_index/get cvx/put cvx]cvx put
- imageDict/Decode[0 1]put
- }ifelse
- }ifelse
- imageDict exch
- load exec
- imageDict/DataSource origDataSource put
- imageDict/MultipleDataSources origMultipleDataSources put
- imageDict/Decode origDecode put
- end
-}bdf
-/write_image_file
-{
- begin
- {(AGMUTIL_imagefile)(w+)file}stopped{
- false
- }{
- Adobe_AGM_Utils/AGMUTIL_imagefile xddf
- 2 dict begin
- /imbufLen Width BitsPerComponent mul 7 add 8 idiv def
- MultipleDataSources{DataSource 0 get}{DataSource}ifelse type/filetype eq{
- /imbuf imbufLen string def
- }if
- 1 1 Height MultipleDataSources not{Decode length 2 idiv mul}if{
- pop
- MultipleDataSources{
- 0 1 DataSource length 1 sub{
- DataSource type dup
- /arraytype eq{
- pop DataSource exch gx
- }{
- /filetype eq{
- DataSource exch get imbuf readstring pop
- }{
- DataSource exch get
- }ifelse
- }ifelse
- AGMUTIL_imagefile exch writestring
- }for
- }{
- DataSource type dup
- /arraytype eq{
- pop DataSource exec
- }{
- /filetype eq{
- DataSource imbuf readstring pop
- }{
- DataSource
- }ifelse
- }ifelse
- AGMUTIL_imagefile exch writestring
- }ifelse
- }for
- end
- true
- }ifelse
- end
-}bdf
-/close_image_file
-{
- AGMUTIL_imagefile closefile(AGMUTIL_imagefile)deletefile
-}def
-statusdict/product known userdict/AGMP_current_show known not and{
- /pstr statusdict/product get def
- pstr(HP LaserJet 2200)eq
- pstr(HP LaserJet 4000 Series)eq or
- pstr(HP LaserJet 4050 Series )eq or
- pstr(HP LaserJet 8000 Series)eq or
- pstr(HP LaserJet 8100 Series)eq or
- pstr(HP LaserJet 8150 Series)eq or
- pstr(HP LaserJet 5000 Series)eq or
- pstr(HP LaserJet 5100 Series)eq or
- pstr(HP Color LaserJet 4500)eq or
- pstr(HP Color LaserJet 4600)eq or
- pstr(HP LaserJet 5Si)eq or
- pstr(HP LaserJet 1200 Series)eq or
- pstr(HP LaserJet 1300 Series)eq or
- pstr(HP LaserJet 4100 Series)eq or
- {
- userdict/AGMP_current_show/show load put
- userdict/show{
- currentcolorspace 0 get
- /Pattern eq
- {false charpath f}
- {AGMP_current_show}ifelse
- }put
- }if
- currentdict/pstr undef
-}if
-/consumeimagedata
-{
- begin
- AGMIMG_init_common
- currentdict/MultipleDataSources known not
- {/MultipleDataSources false def}if
- MultipleDataSources
- {
- DataSource 0 get type
- dup/filetype eq
- {
- 1 dict begin
- /flushbuffer Width cvi string def
- 1 1 Height cvi
- {
- pop
- 0 1 DataSource length 1 sub
- {
- DataSource exch get
- flushbuffer readstring pop pop
- }for
- }for
- end
- }if
- dup/arraytype eq exch/packedarraytype eq or DataSource 0 get xcheck and
- {
- Width Height mul cvi
- {
- 0 1 DataSource length 1 sub
- {dup DataSource exch gx length exch 0 ne{pop}if}for
- dup 0 eq
- {pop exit}if
- sub dup 0 le
- {exit}if
- }loop
- pop
- }if
- }
- {
- /DataSource load type
- dup/filetype eq
- {
- 1 dict begin
- /flushbuffer Width Decode length 2 idiv mul cvi string def
- 1 1 Height{pop DataSource flushbuffer readstring pop pop}for
- end
- }if
- dup/arraytype eq exch/packedarraytype eq or/DataSource load xcheck and
- {
- Height Width BitsPerComponent mul 8 BitsPerComponent sub add 8 idiv Decode length 2 idiv mul mul
- {
- DataSource length dup 0 eq
- {pop exit}if
- sub dup 0 le
- {exit}if
- }loop
- pop
- }if
- }ifelse
- end
-}bdf
-/addprocs
-{
- 2{/exec load}repeat
- 3 1 roll
- [5 1 roll]bind cvx
-}def
-/modify_halftone_xfer
-{
- currenthalftone dup length dict copy begin
- currentdict 2 index known{
- 1 index load dup length dict copy begin
- currentdict/TransferFunction known{
- /TransferFunction load
- }{
- currenttransfer
- }ifelse
- addprocs/TransferFunction xdf
- currentdict end def
- currentdict end sethalftone
- }{
- currentdict/TransferFunction known{
- /TransferFunction load
- }{
- currenttransfer
- }ifelse
- addprocs/TransferFunction xdf
- currentdict end sethalftone
- pop
- }ifelse
-}def
-/clonearray
-{
- dup xcheck exch
- dup length array exch
- Adobe_AGM_Core/AGMCORE_tmp -1 ddf
- {
- Adobe_AGM_Core/AGMCORE_tmp 2 copy get 1 add ddf
- dup type/dicttype eq
- {
- Adobe_AGM_Core/AGMCORE_tmp get
- exch
- clonedict
- Adobe_AGM_Core/AGMCORE_tmp 4 -1 roll ddf
- }if
- dup type/arraytype eq
- {
- Adobe_AGM_Core/AGMCORE_tmp get exch
- clonearray
- Adobe_AGM_Core/AGMCORE_tmp 4 -1 roll ddf
- }if
- exch dup
- Adobe_AGM_Core/AGMCORE_tmp get 4 -1 roll put
- }forall
- exch{cvx}if
-}bdf
-/clonedict
-{
- dup length dict
- begin
- {
- dup type/dicttype eq
- {clonedict}if
- dup type/arraytype eq
- {clonearray}if
- def
- }forall
- currentdict
- end
-}bdf
-/DeviceN_PS2
-{
- /currentcolorspace AGMCORE_gget 0 get/DeviceN eq level3 not and
-}bdf
-/Indexed_DeviceN
-{
- /indexed_colorspace_dict AGMCORE_gget dup null ne{
- dup/CSDBase known{
- /CSDBase get/CSD get_res/Names known
- }{
- pop false
- }ifelse
- }{
- pop false
- }ifelse
-}bdf
-/DeviceN_NoneName
-{
- /Names where{
- pop
- false Names
- {
- (None)eq or
- }forall
- }{
- false
- }ifelse
-}bdf
-/DeviceN_PS2_inRip_seps
-{
- /AGMCORE_in_rip_sep where
- {
- pop dup type dup/arraytype eq exch/packedarraytype eq or
- {
- dup 0 get/DeviceN eq level3 not and AGMCORE_in_rip_sep and
- {
- /currentcolorspace exch AGMCORE_gput
- false
- }{
- true
- }ifelse
- }{
- true
- }ifelse
- }{
- true
- }ifelse
-}bdf
-/base_colorspace_type
-{
- dup type/arraytype eq{0 get}if
-}bdf
-/currentdistillerparams where{pop currentdistillerparams/CoreDistVersion get 5000 lt}{true}ifelse
-{
- /pdfmark_5{cleartomark}bind def
-}{
- /pdfmark_5{pdfmark}bind def
-}ifelse
-/ReadBypdfmark_5
-{
- currentfile exch 0 exch/SubFileDecode filter
- /currentdistillerparams where
- {pop currentdistillerparams/CoreDistVersion get 5000 lt}{true}ifelse
- {flushfile cleartomark}
- {/PUT pdfmark}ifelse
-}bdf
-/ReadBypdfmark_5_string
-{
- 2 dict begin
- /makerString exch def string/tmpString exch def
- {
- currentfile tmpString readline not{pop exit}if
- makerString anchorsearch
- {
- pop pop cleartomark exit
- }{
- 3 copy/PUT pdfmark_5 pop 2 copy(\n)/PUT pdfmark_5
- }ifelse
- }loop
- end
-}bdf
-/xpdfm
-{
- {
- dup 0 get/Label eq
- {
- aload length[exch 1 add 1 roll/PAGELABEL
- }{
- aload pop
- [{ThisPage}<<5 -2 roll>>/PUT
- }ifelse
- pdfmark_5
- }forall
-}bdf
-/lmt{
- dup 2 index le{exch}if pop dup 2 index ge{exch}if pop
-}bdf
-/int{
- dup 2 index sub 3 index 5 index sub div 6 -2 roll sub mul exch pop add exch pop
-}bdf
-/ds{
- Adobe_AGM_Utils begin
-}bdf
-/dt{
- currentdict Adobe_AGM_Utils eq{
- end
- }if
-}bdf
-systemdict/setpacking known
-{setpacking}if
-%%EndResource
-%%BeginResource: procset Adobe_AGM_Core 2.0 0
-%%Version: 2.0 0
-%%Copyright: Copyright(C)1997-2007 Adobe Systems, Inc. All Rights Reserved.
-systemdict/setpacking known
-{
- currentpacking
- true setpacking
-}if
-userdict/Adobe_AGM_Core 209 dict dup begin put
-/Adobe_AGM_Core_Id/Adobe_AGM_Core_2.0_0 def
-/AGMCORE_str256 256 string def
-/AGMCORE_save nd
-/AGMCORE_graphicsave nd
-/AGMCORE_c 0 def
-/AGMCORE_m 0 def
-/AGMCORE_y 0 def
-/AGMCORE_k 0 def
-/AGMCORE_cmykbuf 4 array def
-/AGMCORE_screen[currentscreen]cvx def
-/AGMCORE_tmp 0 def
-/AGMCORE_&setgray nd
-/AGMCORE_&setcolor nd
-/AGMCORE_&setcolorspace nd
-/AGMCORE_&setcmykcolor nd
-/AGMCORE_cyan_plate nd
-/AGMCORE_magenta_plate nd
-/AGMCORE_yellow_plate nd
-/AGMCORE_black_plate nd
-/AGMCORE_plate_ndx nd
-/AGMCORE_get_ink_data nd
-/AGMCORE_is_cmyk_sep nd
-/AGMCORE_host_sep nd
-/AGMCORE_avoid_L2_sep_space nd
-/AGMCORE_distilling nd
-/AGMCORE_composite_job nd
-/AGMCORE_producing_seps nd
-/AGMCORE_ps_level -1 def
-/AGMCORE_ps_version -1 def
-/AGMCORE_environ_ok nd
-/AGMCORE_CSD_cache 0 dict def
-/AGMCORE_currentoverprint false def
-/AGMCORE_deltaX nd
-/AGMCORE_deltaY nd
-/AGMCORE_name nd
-/AGMCORE_sep_special nd
-/AGMCORE_err_strings 4 dict def
-/AGMCORE_cur_err nd
-/AGMCORE_current_spot_alias false def
-/AGMCORE_inverting false def
-/AGMCORE_feature_dictCount nd
-/AGMCORE_feature_opCount nd
-/AGMCORE_feature_ctm nd
-/AGMCORE_ConvertToProcess false def
-/AGMCORE_Default_CTM matrix def
-/AGMCORE_Default_PageSize nd
-/AGMCORE_Default_flatness nd
-/AGMCORE_currentbg nd
-/AGMCORE_currentucr nd
-/AGMCORE_pattern_paint_type 0 def
-/knockout_unitsq nd
-currentglobal true setglobal
-[/CSA/Gradient/Procedure]
-{
- /Generic/Category findresource dup length dict copy/Category defineresource pop
-}forall
-setglobal
-/AGMCORE_key_known
-{
- where{
- /Adobe_AGM_Core_Id known
- }{
- false
- }ifelse
-}ndf
-/flushinput
-{
- save
- 2 dict begin
- /CompareBuffer 3 -1 roll def
- /readbuffer 256 string def
- mark
- {
- currentfile readbuffer{readline}stopped
- {cleartomark mark}
- {
- not
- {pop exit}
- if
- CompareBuffer eq
- {exit}
- if
- }ifelse
- }loop
- cleartomark
- end
- restore
-}bdf
-/getspotfunction
-{
- AGMCORE_screen exch pop exch pop
- dup type/dicttype eq{
- dup/HalftoneType get 1 eq{
- /SpotFunction get
- }{
- dup/HalftoneType get 2 eq{
- /GraySpotFunction get
- }{
- pop
- {
- abs exch abs 2 copy add 1 gt{
- 1 sub dup mul exch 1 sub dup mul add 1 sub
- }{
- dup mul exch dup mul add 1 exch sub
- }ifelse
- }bind
- }ifelse
- }ifelse
- }if
-}def
-/np
-{newpath}bdf
-/clp_npth
-{clip np}def
-/eoclp_npth
-{eoclip np}def
-/npth_clp
-{np clip}def
-/graphic_setup
-{
- /AGMCORE_graphicsave save store
- concat
- 0 setgray
- 0 setlinecap
- 0 setlinejoin
- 1 setlinewidth
- []0 setdash
- 10 setmiterlimit
- np
- false setoverprint
- false setstrokeadjust
- //Adobe_AGM_Core/spot_alias gx
- /Adobe_AGM_Image where{
- pop
- Adobe_AGM_Image/spot_alias 2 copy known{
- gx
- }{
- pop pop
- }ifelse
- }if
- /sep_colorspace_dict null AGMCORE_gput
- 100 dict begin
- /dictstackcount countdictstack def
- /showpage{}def
- mark
-}def
-/graphic_cleanup
-{
- cleartomark
- dictstackcount 1 countdictstack 1 sub{end}for
- end
- AGMCORE_graphicsave restore
-}def
-/compose_error_msg
-{
- grestoreall initgraphics
- /Helvetica findfont 10 scalefont setfont
- /AGMCORE_deltaY 100 def
- /AGMCORE_deltaX 310 def
- clippath pathbbox np pop pop 36 add exch 36 add exch moveto
- 0 AGMCORE_deltaY rlineto AGMCORE_deltaX 0 rlineto
- 0 AGMCORE_deltaY neg rlineto AGMCORE_deltaX neg 0 rlineto closepath
- 0 AGMCORE_&setgray
- gsave 1 AGMCORE_&setgray fill grestore
- 1 setlinewidth gsave stroke grestore
- currentpoint AGMCORE_deltaY 15 sub add exch 8 add exch moveto
- /AGMCORE_deltaY 12 def
- /AGMCORE_tmp 0 def
- AGMCORE_err_strings exch get
- {
- dup 32 eq
- {
- pop
- AGMCORE_str256 0 AGMCORE_tmp getinterval
- stringwidth pop currentpoint pop add AGMCORE_deltaX 28 add gt
- {
- currentpoint AGMCORE_deltaY sub exch pop
- clippath pathbbox pop pop pop 44 add exch moveto
- }if
- AGMCORE_str256 0 AGMCORE_tmp getinterval show( )show
- 0 1 AGMCORE_str256 length 1 sub
- {
- AGMCORE_str256 exch 0 put
- }for
- /AGMCORE_tmp 0 def
- }{
- AGMCORE_str256 exch AGMCORE_tmp xpt
- /AGMCORE_tmp AGMCORE_tmp 1 add def
- }ifelse
- }forall
-}bdf
-/AGMCORE_CMYKDeviceNColorspaces[
- [/Separation/None/DeviceCMYK{0 0 0}]
- [/Separation(Black)/DeviceCMYK{0 0 0 4 -1 roll}bind]
- [/Separation(Yellow)/DeviceCMYK{0 0 3 -1 roll 0}bind]
- [/DeviceN[(Yellow)(Black)]/DeviceCMYK{0 0 4 2 roll}bind]
- [/Separation(Magenta)/DeviceCMYK{0 exch 0 0}bind]
- [/DeviceN[(Magenta)(Black)]/DeviceCMYK{0 3 1 roll 0 exch}bind]
- [/DeviceN[(Magenta)(Yellow)]/DeviceCMYK{0 3 1 roll 0}bind]
- [/DeviceN[(Magenta)(Yellow)(Black)]/DeviceCMYK{0 4 1 roll}bind]
- [/Separation(Cyan)/DeviceCMYK{0 0 0}]
- [/DeviceN[(Cyan)(Black)]/DeviceCMYK{0 0 3 -1 roll}bind]
- [/DeviceN[(Cyan)(Yellow)]/DeviceCMYK{0 exch 0}bind]
- [/DeviceN[(Cyan)(Yellow)(Black)]/DeviceCMYK{0 3 1 roll}bind]
- [/DeviceN[(Cyan)(Magenta)]/DeviceCMYK{0 0}]
- [/DeviceN[(Cyan)(Magenta)(Black)]/DeviceCMYK{0 exch}bind]
- [/DeviceN[(Cyan)(Magenta)(Yellow)]/DeviceCMYK{0}]
- [/DeviceCMYK]
-]def
-/ds{
- Adobe_AGM_Core begin
- /currentdistillerparams where
- {
- pop currentdistillerparams/CoreDistVersion get 5000 lt
- {<</DetectBlends false>>setdistillerparams}if
- }if
- /AGMCORE_ps_version xdf
- /AGMCORE_ps_level xdf
- errordict/AGM_handleerror known not{
- errordict/AGM_handleerror errordict/handleerror get put
- errordict/handleerror{
- Adobe_AGM_Core begin
- $error/newerror get AGMCORE_cur_err null ne and{
- $error/newerror false put
- AGMCORE_cur_err compose_error_msg
- }if
- $error/newerror true put
- end
- errordict/AGM_handleerror get exec
- }bind put
- }if
- /AGMCORE_environ_ok
- ps_level AGMCORE_ps_level ge
- ps_version AGMCORE_ps_version ge and
- AGMCORE_ps_level -1 eq or
- def
- AGMCORE_environ_ok not
- {/AGMCORE_cur_err/AGMCORE_bad_environ def}if
- /AGMCORE_&setgray systemdict/setgray get def
- level2{
- /AGMCORE_&setcolor systemdict/setcolor get def
- /AGMCORE_&setcolorspace systemdict/setcolorspace get def
- }if
- /AGMCORE_currentbg currentblackgeneration def
- /AGMCORE_currentucr currentundercolorremoval def
- /AGMCORE_Default_flatness currentflat def
- /AGMCORE_distilling
- /product where{
- pop systemdict/setdistillerparams known product(Adobe PostScript Parser)ne and
- }{
- false
- }ifelse
- def
- /AGMCORE_GSTATE AGMCORE_key_known not{
- /AGMCORE_GSTATE 21 dict def
- /AGMCORE_tmpmatrix matrix def
- /AGMCORE_gstack 32 array def
- /AGMCORE_gstackptr 0 def
- /AGMCORE_gstacksaveptr 0 def
- /AGMCORE_gstackframekeys 14 def
- /AGMCORE_&gsave/gsave ldf
- /AGMCORE_&grestore/grestore ldf
- /AGMCORE_&grestoreall/grestoreall ldf
- /AGMCORE_&save/save ldf
- /AGMCORE_&setoverprint/setoverprint ldf
- /AGMCORE_gdictcopy{
- begin
- {def}forall
- end
- }def
- /AGMCORE_gput{
- AGMCORE_gstack AGMCORE_gstackptr get
- 3 1 roll
- put
- }def
- /AGMCORE_gget{
- AGMCORE_gstack AGMCORE_gstackptr get
- exch
- get
- }def
- /gsave{
- AGMCORE_&gsave
- AGMCORE_gstack AGMCORE_gstackptr get
- AGMCORE_gstackptr 1 add
- dup 32 ge{limitcheck}if
- /AGMCORE_gstackptr exch store
- AGMCORE_gstack AGMCORE_gstackptr get
- AGMCORE_gdictcopy
- }def
- /grestore{
- AGMCORE_&grestore
- AGMCORE_gstackptr 1 sub
- dup AGMCORE_gstacksaveptr lt{1 add}if
- dup AGMCORE_gstack exch get dup/AGMCORE_currentoverprint known
- {/AGMCORE_currentoverprint get setoverprint}{pop}ifelse
- /AGMCORE_gstackptr exch store
- }def
- /grestoreall{
- AGMCORE_&grestoreall
- /AGMCORE_gstackptr AGMCORE_gstacksaveptr store
- }def
- /save{
- AGMCORE_&save
- AGMCORE_gstack AGMCORE_gstackptr get
- AGMCORE_gstackptr 1 add
- dup 32 ge{limitcheck}if
- /AGMCORE_gstackptr exch store
- /AGMCORE_gstacksaveptr AGMCORE_gstackptr store
- AGMCORE_gstack AGMCORE_gstackptr get
- AGMCORE_gdictcopy
- }def
- /setoverprint{
- dup/AGMCORE_currentoverprint exch AGMCORE_gput AGMCORE_&setoverprint
- }def
- 0 1 AGMCORE_gstack length 1 sub{
- AGMCORE_gstack exch AGMCORE_gstackframekeys dict put
- }for
- }if
- level3/AGMCORE_&sysshfill AGMCORE_key_known not and
- {
- /AGMCORE_&sysshfill systemdict/shfill get def
- /AGMCORE_&sysmakepattern systemdict/makepattern get def
- /AGMCORE_&usrmakepattern/makepattern load def
- }if
- /currentcmykcolor[0 0 0 0]AGMCORE_gput
- /currentstrokeadjust false AGMCORE_gput
- /currentcolorspace[/DeviceGray]AGMCORE_gput
- /sep_tint 0 AGMCORE_gput
- /devicen_tints[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]AGMCORE_gput
- /sep_colorspace_dict null AGMCORE_gput
- /devicen_colorspace_dict null AGMCORE_gput
- /indexed_colorspace_dict null AGMCORE_gput
- /currentcolor_intent()AGMCORE_gput
- /customcolor_tint 1 AGMCORE_gput
- /absolute_colorimetric_crd null AGMCORE_gput
- /relative_colorimetric_crd null AGMCORE_gput
- /saturation_crd null AGMCORE_gput
- /perceptual_crd null AGMCORE_gput
- currentcolortransfer cvlit/AGMCore_gray_xfer xdf cvlit/AGMCore_b_xfer xdf
- cvlit/AGMCore_g_xfer xdf cvlit/AGMCore_r_xfer xdf
- <<
- /MaxPatternItem currentsystemparams/MaxPatternCache get
- >>
- setuserparams
- end
-}def
-/ps
-{
- /setcmykcolor where{
- pop
- Adobe_AGM_Core/AGMCORE_&setcmykcolor/setcmykcolor load put
- }if
- Adobe_AGM_Core begin
- /setcmykcolor
- {
- 4 copy AGMCORE_cmykbuf astore/currentcmykcolor exch AGMCORE_gput
- 1 sub 4 1 roll
- 3{
- 3 index add neg dup 0 lt{
- pop 0
- }if
- 3 1 roll
- }repeat
- setrgbcolor pop
- }ndf
- /currentcmykcolor
- {
- /currentcmykcolor AGMCORE_gget aload pop
- }ndf
- /setoverprint
- {pop}ndf
- /currentoverprint
- {false}ndf
- /AGMCORE_cyan_plate 1 0 0 0 test_cmyk_color_plate def
- /AGMCORE_magenta_plate 0 1 0 0 test_cmyk_color_plate def
- /AGMCORE_yellow_plate 0 0 1 0 test_cmyk_color_plate def
- /AGMCORE_black_plate 0 0 0 1 test_cmyk_color_plate def
- /AGMCORE_plate_ndx
- AGMCORE_cyan_plate{
- 0
- }{
- AGMCORE_magenta_plate{
- 1
- }{
- AGMCORE_yellow_plate{
- 2
- }{
- AGMCORE_black_plate{
- 3
- }{
- 4
- }ifelse
- }ifelse
- }ifelse
- }ifelse
- def
- /AGMCORE_have_reported_unsupported_color_space false def
- /AGMCORE_report_unsupported_color_space
- {
- AGMCORE_have_reported_unsupported_color_space false eq
- {
- (Warning: Job contains content that cannot be separated with on-host methods. This content appears on the black plate, and knocks out all other plates.)==
- Adobe_AGM_Core/AGMCORE_have_reported_unsupported_color_space true ddf
- }if
- }def
- /AGMCORE_composite_job
- AGMCORE_cyan_plate AGMCORE_magenta_plate and AGMCORE_yellow_plate and AGMCORE_black_plate and def
- /AGMCORE_in_rip_sep
- /AGMCORE_in_rip_sep where{
- pop AGMCORE_in_rip_sep
- }{
- AGMCORE_distilling
- {
- false
- }{
- userdict/Adobe_AGM_OnHost_Seps known{
- false
- }{
- level2{
- currentpagedevice/Separations 2 copy known{
- get
- }{
- pop pop false
- }ifelse
- }{
- false
- }ifelse
- }ifelse
- }ifelse
- }ifelse
- def
- /AGMCORE_producing_seps AGMCORE_composite_job not AGMCORE_in_rip_sep or def
- /AGMCORE_host_sep AGMCORE_producing_seps AGMCORE_in_rip_sep not and def
- /AGM_preserve_spots
- /AGM_preserve_spots where{
- pop AGM_preserve_spots
- }{
- AGMCORE_distilling AGMCORE_producing_seps or
- }ifelse
- def
- /AGM_is_distiller_preserving_spotimages
- {
- currentdistillerparams/PreserveOverprintSettings known
- {
- currentdistillerparams/PreserveOverprintSettings get
- {
- currentdistillerparams/ColorConversionStrategy known
- {
- currentdistillerparams/ColorConversionStrategy get
- /sRGB ne
- }{
- true
- }ifelse
- }{
- false
- }ifelse
- }{
- false
- }ifelse
- }def
- /convert_spot_to_process where{pop}{
- /convert_spot_to_process
- {
- //Adobe_AGM_Core begin
- dup map_alias{
- /Name get exch pop
- }if
- dup dup(None)eq exch(All)eq or
- {
- pop false
- }{
- AGMCORE_host_sep
- {
- gsave
- 1 0 0 0 setcmykcolor currentgray 1 exch sub
- 0 1 0 0 setcmykcolor currentgray 1 exch sub
- 0 0 1 0 setcmykcolor currentgray 1 exch sub
- 0 0 0 1 setcmykcolor currentgray 1 exch sub
- add add add 0 eq
- {
- pop false
- }{
- false setoverprint
- current_spot_alias false set_spot_alias
- 1 1 1 1 6 -1 roll findcmykcustomcolor 1 setcustomcolor
- set_spot_alias
- currentgray 1 ne
- }ifelse
- grestore
- }{
- AGMCORE_distilling
- {
- pop AGM_is_distiller_preserving_spotimages not
- }{
- //Adobe_AGM_Core/AGMCORE_name xddf
- false
- //Adobe_AGM_Core/AGMCORE_pattern_paint_type get 0 eq
- AGMUTIL_cpd/OverrideSeparations known and
- {
- AGMUTIL_cpd/OverrideSeparations get
- {
- /HqnSpots/ProcSet resourcestatus
- {
- pop pop pop true
- }if
- }if
- }if
- {
- AGMCORE_name/HqnSpots/ProcSet findresource/TestSpot gx not
- }{
- gsave
- [/Separation AGMCORE_name/DeviceGray{}]AGMCORE_&setcolorspace
- false
- AGMUTIL_cpd/SeparationColorNames 2 copy known
- {
- get
- {AGMCORE_name eq or}forall
- not
- }{
- pop pop pop true
- }ifelse
- grestore
- }ifelse
- }ifelse
- }ifelse
- }ifelse
- end
- }def
- }ifelse
- /convert_to_process where{pop}{
- /convert_to_process
- {
- dup length 0 eq
- {
- pop false
- }{
- AGMCORE_host_sep
- {
- dup true exch
- {
- dup(Cyan)eq exch
- dup(Magenta)eq 3 -1 roll or exch
- dup(Yellow)eq 3 -1 roll or exch
- dup(Black)eq 3 -1 roll or
- {pop}
- {convert_spot_to_process and}ifelse
- }
- forall
- {
- true exch
- {
- dup(Cyan)eq exch
- dup(Magenta)eq 3 -1 roll or exch
- dup(Yellow)eq 3 -1 roll or exch
- (Black)eq or and
- }forall
- not
- }{pop false}ifelse
- }{
- false exch
- {
- /PhotoshopDuotoneList where{pop false}{true}ifelse
- {
- dup(Cyan)eq exch
- dup(Magenta)eq 3 -1 roll or exch
- dup(Yellow)eq 3 -1 roll or exch
- dup(Black)eq 3 -1 roll or
- {pop}
- {convert_spot_to_process or}ifelse
- }
- {
- convert_spot_to_process or
- }
- ifelse
- }
- forall
- }ifelse
- }ifelse
- }def
- }ifelse
- /AGMCORE_avoid_L2_sep_space
- version cvr 2012 lt
- level2 and
- AGMCORE_producing_seps not and
- def
- /AGMCORE_is_cmyk_sep
- AGMCORE_cyan_plate AGMCORE_magenta_plate or AGMCORE_yellow_plate or AGMCORE_black_plate or
- def
- /AGM_avoid_0_cmyk where{
- pop AGM_avoid_0_cmyk
- }{
- AGM_preserve_spots
- userdict/Adobe_AGM_OnHost_Seps known
- userdict/Adobe_AGM_InRip_Seps known or
- not and
- }ifelse
- {
- /setcmykcolor[
- {
- 4 copy add add add 0 eq currentoverprint and{
- pop 0.0005
- }if
- }/exec cvx
- /AGMCORE_&setcmykcolor load dup type/operatortype ne{
- /exec cvx
- }if
- ]cvx def
- }if
- /AGMCORE_IsSeparationAProcessColor
- {
- dup(Cyan)eq exch dup(Magenta)eq exch dup(Yellow)eq exch(Black)eq or or or
- }def
- AGMCORE_host_sep{
- /setcolortransfer
- {
- AGMCORE_cyan_plate{
- pop pop pop
- }{
- AGMCORE_magenta_plate{
- 4 3 roll pop pop pop
- }{
- AGMCORE_yellow_plate{
- 4 2 roll pop pop pop
- }{
- 4 1 roll pop pop pop
- }ifelse
- }ifelse
- }ifelse
- settransfer
- }
- def
- /AGMCORE_get_ink_data
- AGMCORE_cyan_plate{
- {pop pop pop}
- }{
- AGMCORE_magenta_plate{
- {4 3 roll pop pop pop}
- }{
- AGMCORE_yellow_plate{
- {4 2 roll pop pop pop}
- }{
- {4 1 roll pop pop pop}
- }ifelse
- }ifelse
- }ifelse
- def
- /AGMCORE_RemoveProcessColorNames
- {
- 1 dict begin
- /filtername
- {
- dup/Cyan eq 1 index(Cyan)eq or
- {pop(_cyan_)}if
- dup/Magenta eq 1 index(Magenta)eq or
- {pop(_magenta_)}if
- dup/Yellow eq 1 index(Yellow)eq or
- {pop(_yellow_)}if
- dup/Black eq 1 index(Black)eq or
- {pop(_black_)}if
- }def
- dup type/arraytype eq
- {[exch{filtername}forall]}
- {filtername}ifelse
- end
- }def
- level3{
- /AGMCORE_IsCurrentColor
- {
- dup AGMCORE_IsSeparationAProcessColor
- {
- AGMCORE_plate_ndx 0 eq
- {dup(Cyan)eq exch/Cyan eq or}if
- AGMCORE_plate_ndx 1 eq
- {dup(Magenta)eq exch/Magenta eq or}if
- AGMCORE_plate_ndx 2 eq
- {dup(Yellow)eq exch/Yellow eq or}if
- AGMCORE_plate_ndx 3 eq
- {dup(Black)eq exch/Black eq or}if
- AGMCORE_plate_ndx 4 eq
- {pop false}if
- }{
- gsave
- false setoverprint
- current_spot_alias false set_spot_alias
- 1 1 1 1 6 -1 roll findcmykcustomcolor 1 setcustomcolor
- set_spot_alias
- currentgray 1 ne
- grestore
- }ifelse
- }def
- /AGMCORE_filter_functiondatasource
- {
- 5 dict begin
- /data_in xdf
- data_in type/stringtype eq
- {
- /ncomp xdf
- /comp xdf
- /string_out data_in length ncomp idiv string def
- 0 ncomp data_in length 1 sub
- {
- string_out exch dup ncomp idiv exch data_in exch ncomp getinterval comp get 255 exch sub put
- }for
- string_out
- }{
- string/string_in xdf
- /string_out 1 string def
- /component xdf
- [
- data_in string_in/readstring cvx
- [component/get cvx 255/exch cvx/sub cvx string_out/exch cvx 0/exch cvx/put cvx string_out]cvx
- [/pop cvx()]cvx/ifelse cvx
- ]cvx/ReusableStreamDecode filter
- }ifelse
- end
- }def
- /AGMCORE_separateShadingFunction
- {
- 2 dict begin
- /paint? xdf
- /channel xdf
- dup type/dicttype eq
- {
- begin
- FunctionType 0 eq
- {
- /DataSource channel Range length 2 idiv DataSource AGMCORE_filter_functiondatasource def
- currentdict/Decode known
- {/Decode Decode channel 2 mul 2 getinterval def}if
- paint? not
- {/Decode[1 1]def}if
- }if
- FunctionType 2 eq
- {
- paint?
- {
- /C0[C0 channel get 1 exch sub]def
- /C1[C1 channel get 1 exch sub]def
- }{
- /C0[1]def
- /C1[1]def
- }ifelse
- }if
- FunctionType 3 eq
- {
- /Functions[Functions{channel paint? AGMCORE_separateShadingFunction}forall]def
- }if
- currentdict/Range known
- {/Range[0 1]def}if
- currentdict
- end}{
- channel get 0 paint? AGMCORE_separateShadingFunction
- }ifelse
- end
- }def
- /AGMCORE_separateShading
- {
- 3 -1 roll begin
- currentdict/Function known
- {
- currentdict/Background known
- {[1 index{Background 3 index get 1 exch sub}{1}ifelse]/Background xdf}if
- Function 3 1 roll AGMCORE_separateShadingFunction/Function xdf
- /ColorSpace[/DeviceGray]def
- }{
- ColorSpace dup type/arraytype eq{0 get}if/DeviceCMYK eq
- {
- /ColorSpace[/DeviceN[/_cyan_/_magenta_/_yellow_/_black_]/DeviceCMYK{}]def
- }{
- ColorSpace dup 1 get AGMCORE_RemoveProcessColorNames 1 exch put
- }ifelse
- ColorSpace 0 get/Separation eq
- {
- {
- [1/exch cvx/sub cvx]cvx
- }{
- [/pop cvx 1]cvx
- }ifelse
- ColorSpace 3 3 -1 roll put
- pop
- }{
- {
- [exch ColorSpace 1 get length 1 sub exch sub/index cvx 1/exch cvx/sub cvx ColorSpace 1 get length 1 add 1/roll cvx ColorSpace 1 get length{/pop cvx}repeat]cvx
- }{
- pop[ColorSpace 1 get length{/pop cvx}repeat cvx 1]cvx
- }ifelse
- ColorSpace 3 3 -1 roll bind put
- }ifelse
- ColorSpace 2/DeviceGray put
- }ifelse
- end
- }def
- /AGMCORE_separateShadingDict
- {
- dup/ColorSpace get
- dup type/arraytype ne
- {[exch]}if
- dup 0 get/DeviceCMYK eq
- {
- exch begin
- currentdict
- AGMCORE_cyan_plate
- {0 true}if
- AGMCORE_magenta_plate
- {1 true}if
- AGMCORE_yellow_plate
- {2 true}if
- AGMCORE_black_plate
- {3 true}if
- AGMCORE_plate_ndx 4 eq
- {0 false}if
- dup not currentoverprint and
- {/AGMCORE_ignoreshade true def}if
- AGMCORE_separateShading
- currentdict
- end exch
- }if
- dup 0 get/Separation eq
- {
- exch begin
- ColorSpace 1 get dup/None ne exch/All ne and
- {
- ColorSpace 1 get AGMCORE_IsCurrentColor AGMCORE_plate_ndx 4 lt and ColorSpace 1 get AGMCORE_IsSeparationAProcessColor not and
- {
- ColorSpace 2 get dup type/arraytype eq{0 get}if/DeviceCMYK eq
- {
- /ColorSpace
- [
- /Separation
- ColorSpace 1 get
- /DeviceGray
- [
- ColorSpace 3 get/exec cvx
- 4 AGMCORE_plate_ndx sub -1/roll cvx
- 4 1/roll cvx
- 3[/pop cvx]cvx/repeat cvx
- 1/exch cvx/sub cvx
- ]cvx
- ]def
- }{
- AGMCORE_report_unsupported_color_space
- AGMCORE_black_plate not
- {
- currentdict 0 false AGMCORE_separateShading
- }if
- }ifelse
- }{
- currentdict ColorSpace 1 get AGMCORE_IsCurrentColor
- 0 exch
- dup not currentoverprint and
- {/AGMCORE_ignoreshade true def}if
- AGMCORE_separateShading
- }ifelse
- }if
- currentdict
- end exch
- }if
- dup 0 get/DeviceN eq
- {
- exch begin
- ColorSpace 1 get convert_to_process
- {
- ColorSpace 2 get dup type/arraytype eq{0 get}if/DeviceCMYK eq
- {
- /ColorSpace
- [
- /DeviceN
- ColorSpace 1 get
- /DeviceGray
- [
- ColorSpace 3 get/exec cvx
- 4 AGMCORE_plate_ndx sub -1/roll cvx
- 4 1/roll cvx
- 3[/pop cvx]cvx/repeat cvx
- 1/exch cvx/sub cvx
- ]cvx
- ]def
- }{
- AGMCORE_report_unsupported_color_space
- AGMCORE_black_plate not
- {
- currentdict 0 false AGMCORE_separateShading
- /ColorSpace[/DeviceGray]def
- }if
- }ifelse
- }{
- currentdict
- false -1 ColorSpace 1 get
- {
- AGMCORE_IsCurrentColor
- {
- 1 add
- exch pop true exch exit
- }if
- 1 add
- }forall
- exch
- dup not currentoverprint and
- {/AGMCORE_ignoreshade true def}if
- AGMCORE_separateShading
- }ifelse
- currentdict
- end exch
- }if
- dup 0 get dup/DeviceCMYK eq exch dup/Separation eq exch/DeviceN eq or or not
- {
- exch begin
- ColorSpace dup type/arraytype eq
- {0 get}if
- /DeviceGray ne
- {
- AGMCORE_report_unsupported_color_space
- AGMCORE_black_plate not
- {
- ColorSpace 0 get/CIEBasedA eq
- {
- /ColorSpace[/Separation/_ciebaseda_/DeviceGray{}]def
- }if
- ColorSpace 0 get dup/CIEBasedABC eq exch dup/CIEBasedDEF eq exch/DeviceRGB eq or or
- {
- /ColorSpace[/DeviceN[/_red_/_green_/_blue_]/DeviceRGB{}]def
- }if
- ColorSpace 0 get/CIEBasedDEFG eq
- {
- /ColorSpace[/DeviceN[/_cyan_/_magenta_/_yellow_/_black_]/DeviceCMYK{}]def
- }if
- currentdict 0 false AGMCORE_separateShading
- }if
- }if
- currentdict
- end exch
- }if
- pop
- dup/AGMCORE_ignoreshade known
- {
- begin
- /ColorSpace[/Separation(None)/DeviceGray{}]def
- currentdict end
- }if
- }def
- /shfill
- {
- AGMCORE_separateShadingDict
- dup/AGMCORE_ignoreshade known
- {pop}
- {AGMCORE_&sysshfill}ifelse
- }def
- /makepattern
- {
- exch
- dup/PatternType get 2 eq
- {
- clonedict
- begin
- /Shading Shading AGMCORE_separateShadingDict def
- Shading/AGMCORE_ignoreshade known
- currentdict end exch
- {pop<</PatternType 1/PaintProc{pop}/BBox[0 0 1 1]/XStep 1/YStep 1/PaintType 1/TilingType 3>>}if
- exch AGMCORE_&sysmakepattern
- }{
- exch AGMCORE_&usrmakepattern
- }ifelse
- }def
- }if
- }if
- AGMCORE_in_rip_sep{
- /setcustomcolor
- {
- exch aload pop
- dup 7 1 roll inRip_spot_has_ink not {
- 4{4 index mul 4 1 roll}
- repeat
- /DeviceCMYK setcolorspace
- 6 -2 roll pop pop
- }{
- //Adobe_AGM_Core begin
- /AGMCORE_k xdf/AGMCORE_y xdf/AGMCORE_m xdf/AGMCORE_c xdf
- end
- [/Separation 4 -1 roll/DeviceCMYK
- {dup AGMCORE_c mul exch dup AGMCORE_m mul exch dup AGMCORE_y mul exch AGMCORE_k mul}
- ]
- setcolorspace
- }ifelse
- setcolor
- }ndf
- /setseparationgray
- {
- [/Separation(All)/DeviceGray{}]setcolorspace_opt
- 1 exch sub setcolor
- }ndf
- }{
- /setseparationgray
- {
- AGMCORE_&setgray
- }ndf
- }ifelse
- /findcmykcustomcolor
- {
- 5 makereadonlyarray
- }ndf
- /setcustomcolor
- {
- exch aload pop pop
- 4{4 index mul 4 1 roll}repeat
- setcmykcolor pop
- }ndf
- /has_color
- /colorimage where{
- AGMCORE_producing_seps{
- pop true
- }{
- systemdict eq
- }ifelse
- }{
- false
- }ifelse
- def
- /map_index
- {
- 1 index mul exch getinterval{255 div}forall
- }bdf
- /map_indexed_devn
- {
- Lookup Names length 3 -1 roll cvi map_index
- }bdf
- /n_color_components
- {
- base_colorspace_type
- dup/DeviceGray eq{
- pop 1
- }{
- /DeviceCMYK eq{
- 4
- }{
- 3
- }ifelse
- }ifelse
- }bdf
- level2{
- /mo/moveto ldf
- /li/lineto ldf
- /cv/curveto ldf
- /knockout_unitsq
- {
- 1 setgray
- 0 0 1 1 rectfill
- }def
- level2/setcolorspace AGMCORE_key_known not and{
- /AGMCORE_&&&setcolorspace/setcolorspace ldf
- /AGMCORE_ReplaceMappedColor
- {
- dup type dup/arraytype eq exch/packedarraytype eq or
- {
- /AGMCORE_SpotAliasAry2 where{
- begin
- dup 0 get dup/Separation eq
- {
- pop
- dup length array copy
- dup dup 1 get
- current_spot_alias
- {
- dup map_alias
- {
- false set_spot_alias
- dup 1 exch setsepcolorspace
- true set_spot_alias
- begin
- /sep_colorspace_dict currentdict AGMCORE_gput
- pop pop pop
- [
- /Separation Name
- CSA map_csa
- MappedCSA
- /sep_colorspace_proc load
- ]
- dup Name
- end
- }if
- }if
- map_reserved_ink_name 1 xpt
- }{
- /DeviceN eq
- {
- dup length array copy
- dup dup 1 get[
- exch{
- current_spot_alias{
- dup map_alias{
- /Name get exch pop
- }if
- }if
- map_reserved_ink_name
- }forall
- ]1 xpt
- }if
- }ifelse
- end
- }if
- }if
- }def
- /setcolorspace
- {
- dup type dup/arraytype eq exch/packedarraytype eq or
- {
- dup 0 get/Indexed eq
- {
- AGMCORE_distilling
- {
- /PhotoshopDuotoneList where
- {
- pop false
- }{
- true
- }ifelse
- }{
- true
- }ifelse
- {
- aload pop 3 -1 roll
- AGMCORE_ReplaceMappedColor
- 3 1 roll 4 array astore
- }if
- }{
- AGMCORE_ReplaceMappedColor
- }ifelse
- }if
- DeviceN_PS2_inRip_seps{AGMCORE_&&&setcolorspace}if
- }def
- }if
- }{
- /adj
- {
- currentstrokeadjust{
- transform
- 0.25 sub round 0.25 add exch
- 0.25 sub round 0.25 add exch
- itransform
- }if
- }def
- /mo{
- adj moveto
- }def
- /li{
- adj lineto
- }def
- /cv{
- 6 2 roll adj
- 6 2 roll adj
- 6 2 roll adj curveto
- }def
- /knockout_unitsq
- {
- 1 setgray
- 8 8 1[8 0 0 8 0 0]{<ffffffffffffffff>}image
- }def
- /currentstrokeadjust{
- /currentstrokeadjust AGMCORE_gget
- }def
- /setstrokeadjust{
- /currentstrokeadjust exch AGMCORE_gput
- }def
- /setcolorspace
- {
- /currentcolorspace exch AGMCORE_gput
- }def
- /currentcolorspace
- {
- /currentcolorspace AGMCORE_gget
- }def
- /setcolor_devicecolor
- {
- base_colorspace_type
- dup/DeviceGray eq{
- pop setgray
- }{
- /DeviceCMYK eq{
- setcmykcolor
- }{
- setrgbcolor
- }ifelse
- }ifelse
- }def
- /setcolor
- {
- currentcolorspace 0 get
- dup/DeviceGray ne{
- dup/DeviceCMYK ne{
- dup/DeviceRGB ne{
- dup/Separation eq{
- pop
- currentcolorspace 3 gx
- currentcolorspace 2 get
- }{
- dup/Indexed eq{
- pop
- currentcolorspace 3 get dup type/stringtype eq{
- currentcolorspace 1 get n_color_components
- 3 -1 roll map_index
- }{
- exec
- }ifelse
- currentcolorspace 1 get
- }{
- /AGMCORE_cur_err/AGMCORE_invalid_color_space def
- AGMCORE_invalid_color_space
- }ifelse
- }ifelse
- }if
- }if
- }if
- setcolor_devicecolor
- }def
- }ifelse
- /sop/setoverprint ldf
- /lw/setlinewidth ldf
- /lc/setlinecap ldf
- /lj/setlinejoin ldf
- /ml/setmiterlimit ldf
- /dsh/setdash ldf
- /sadj/setstrokeadjust ldf
- /gry/setgray ldf
- /rgb/setrgbcolor ldf
- /cmyk[
- /currentcolorspace[/DeviceCMYK]/AGMCORE_gput cvx
- /setcmykcolor load dup type/operatortype ne{/exec cvx}if
- ]cvx bdf
- level3 AGMCORE_host_sep not and{
- /nzopmsc{
- 6 dict begin
- /kk exch def
- /yy exch def
- /mm exch def
- /cc exch def
- /sum 0 def
- cc 0 ne{/sum sum 2#1000 or def cc}if
- mm 0 ne{/sum sum 2#0100 or def mm}if
- yy 0 ne{/sum sum 2#0010 or def yy}if
- kk 0 ne{/sum sum 2#0001 or def kk}if
- AGMCORE_CMYKDeviceNColorspaces sum get setcolorspace
- sum 0 eq{0}if
- end
- setcolor
- }bdf
- }{
- /nzopmsc/cmyk ldf
- }ifelse
- /sep/setsepcolor ldf
- /devn/setdevicencolor ldf
- /idx/setindexedcolor ldf
- /colr/setcolor ldf
- /csacrd/set_csa_crd ldf
- /sepcs/setsepcolorspace ldf
- /devncs/setdevicencolorspace ldf
- /idxcs/setindexedcolorspace ldf
- /cp/closepath ldf
- /clp/clp_npth ldf
- /eclp/eoclp_npth ldf
- /f/fill ldf
- /ef/eofill ldf
- /@/stroke ldf
- /nclp/npth_clp ldf
- /gset/graphic_setup ldf
- /gcln/graphic_cleanup ldf
- /ct/concat ldf
- /cf/currentfile ldf
- /fl/filter ldf
- /rs/readstring ldf
- /AGMCORE_def_ht currenthalftone def
- /clonedict Adobe_AGM_Utils begin/clonedict load end def
- /clonearray Adobe_AGM_Utils begin/clonearray load end def
- currentdict{
- dup xcheck 1 index type dup/arraytype eq exch/packedarraytype eq or and{
- bind
- }if
- def
- }forall
- /getrampcolor
- {
- /indx exch def
- 0 1 NumComp 1 sub
- {
- dup
- Samples exch get
- dup type/stringtype eq{indx get}if
- exch
- Scaling exch get aload pop
- 3 1 roll
- mul add
- }for
- ColorSpaceFamily/Separation eq
- {sep}
- {
- ColorSpaceFamily/DeviceN eq
- {devn}{setcolor}ifelse
- }ifelse
- }bdf
- /sssetbackground{
- aload pop
- ColorSpaceFamily/Separation eq
- {sep}
- {
- ColorSpaceFamily/DeviceN eq
- {devn}{setcolor}ifelse
- }ifelse
- }bdf
- /RadialShade
- {
- 40 dict begin
- /ColorSpaceFamily xdf
- /background xdf
- /ext1 xdf
- /ext0 xdf
- /BBox xdf
- /r2 xdf
- /c2y xdf
- /c2x xdf
- /r1 xdf
- /c1y xdf
- /c1x xdf
- /rampdict xdf
- /setinkoverprint where{pop/setinkoverprint{pop}def}if
- gsave
- BBox length 0 gt
- {
- np
- BBox 0 get BBox 1 get moveto
- BBox 2 get BBox 0 get sub 0 rlineto
- 0 BBox 3 get BBox 1 get sub rlineto
- BBox 2 get BBox 0 get sub neg 0 rlineto
- closepath
- clip
- np
- }if
- c1x c2x eq
- {
- c1y c2y lt{/theta 90 def}{/theta 270 def}ifelse
- }{
- /slope c2y c1y sub c2x c1x sub div def
- /theta slope 1 atan def
- c2x c1x lt c2y c1y ge and{/theta theta 180 sub def}if
- c2x c1x lt c2y c1y lt and{/theta theta 180 add def}if
- }ifelse
- gsave
- clippath
- c1x c1y translate
- theta rotate
- -90 rotate
- {pathbbox}stopped
- {0 0 0 0}if
- /yMax xdf
- /xMax xdf
- /yMin xdf
- /xMin xdf
- grestore
- xMax xMin eq yMax yMin eq or
- {
- grestore
- end
- }{
- /max{2 copy gt{pop}{exch pop}ifelse}bdf
- /min{2 copy lt{pop}{exch pop}ifelse}bdf
- rampdict begin
- 40 dict begin
- background length 0 gt{background sssetbackground gsave clippath fill grestore}if
- gsave
- c1x c1y translate
- theta rotate
- -90 rotate
- /c2y c1x c2x sub dup mul c1y c2y sub dup mul add sqrt def
- /c1y 0 def
- /c1x 0 def
- /c2x 0 def
- ext0
- {
- 0 getrampcolor
- c2y r2 add r1 sub 0.0001 lt
- {
- c1x c1y r1 360 0 arcn
- pathbbox
- /aymax exch def
- /axmax exch def
- /aymin exch def
- /axmin exch def
- /bxMin xMin axmin min def
- /byMin yMin aymin min def
- /bxMax xMax axmax max def
- /byMax yMax aymax max def
- bxMin byMin moveto
- bxMax byMin lineto
- bxMax byMax lineto
- bxMin byMax lineto
- bxMin byMin lineto
- eofill
- }{
- c2y r1 add r2 le
- {
- c1x c1y r1 0 360 arc
- fill
- }
- {
- c2x c2y r2 0 360 arc fill
- r1 r2 eq
- {
- /p1x r1 neg def
- /p1y c1y def
- /p2x r1 def
- /p2y c1y def
- p1x p1y moveto p2x p2y lineto p2x yMin lineto p1x yMin lineto
- fill
- }{
- /AA r2 r1 sub c2y div def
- AA -1 eq
- {/theta 89.99 def}
- {/theta AA 1 AA dup mul sub sqrt div 1 atan def}
- ifelse
- /SS1 90 theta add dup sin exch cos div def
- /p1x r1 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def
- /p1y p1x SS1 div neg def
- /SS2 90 theta sub dup sin exch cos div def
- /p2x r1 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def
- /p2y p2x SS2 div neg def
- r1 r2 gt
- {
- /L1maxX p1x yMin p1y sub SS1 div add def
- /L2maxX p2x yMin p2y sub SS2 div add def
- }{
- /L1maxX 0 def
- /L2maxX 0 def
- }ifelse
- p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto
- L1maxX L1maxX p1x sub SS1 mul p1y add lineto
- fill
- }ifelse
- }ifelse
- }ifelse
- }if
- c1x c2x sub dup mul
- c1y c2y sub dup mul
- add 0.5 exp
- 0 dtransform
- dup mul exch dup mul add 0.5 exp 72 div
- 0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
- 72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
- 1 index 1 index lt{exch}if pop
- /hires xdf
- hires mul
- /numpix xdf
- /numsteps NumSamples def
- /rampIndxInc 1 def
- /subsampling false def
- numpix 0 ne
- {
- NumSamples numpix div 0.5 gt
- {
- /numsteps numpix 2 div round cvi dup 1 le{pop 2}if def
- /rampIndxInc NumSamples 1 sub numsteps div def
- /subsampling true def
- }if
- }if
- /xInc c2x c1x sub numsteps div def
- /yInc c2y c1y sub numsteps div def
- /rInc r2 r1 sub numsteps div def
- /cx c1x def
- /cy c1y def
- /radius r1 def
- np
- xInc 0 eq yInc 0 eq rInc 0 eq and and
- {
- 0 getrampcolor
- cx cy radius 0 360 arc
- stroke
- NumSamples 1 sub getrampcolor
- cx cy radius 72 hires div add 0 360 arc
- 0 setlinewidth
- stroke
- }{
- 0
- numsteps
- {
- dup
- subsampling{round cvi}if
- getrampcolor
- cx cy radius 0 360 arc
- /cx cx xInc add def
- /cy cy yInc add def
- /radius radius rInc add def
- cx cy radius 360 0 arcn
- eofill
- rampIndxInc add
- }repeat
- pop
- }ifelse
- ext1
- {
- c2y r2 add r1 lt
- {
- c2x c2y r2 0 360 arc
- fill
- }{
- c2y r1 add r2 sub 0.0001 le
- {
- c2x c2y r2 360 0 arcn
- pathbbox
- /aymax exch def
- /axmax exch def
- /aymin exch def
- /axmin exch def
- /bxMin xMin axmin min def
- /byMin yMin aymin min def
- /bxMax xMax axmax max def
- /byMax yMax aymax max def
- bxMin byMin moveto
- bxMax byMin lineto
- bxMax byMax lineto
- bxMin byMax lineto
- bxMin byMin lineto
- eofill
- }{
- c2x c2y r2 0 360 arc fill
- r1 r2 eq
- {
- /p1x r2 neg def
- /p1y c2y def
- /p2x r2 def
- /p2y c2y def
- p1x p1y moveto p2x p2y lineto p2x yMax lineto p1x yMax lineto
- fill
- }{
- /AA r2 r1 sub c2y div def
- AA -1 eq
- {/theta 89.99 def}
- {/theta AA 1 AA dup mul sub sqrt div 1 atan def}
- ifelse
- /SS1 90 theta add dup sin exch cos div def
- /p1x r2 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def
- /p1y c2y p1x SS1 div sub def
- /SS2 90 theta sub dup sin exch cos div def
- /p2x r2 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def
- /p2y c2y p2x SS2 div sub def
- r1 r2 lt
- {
- /L1maxX p1x yMax p1y sub SS1 div add def
- /L2maxX p2x yMax p2y sub SS2 div add def
- }{
- /L1maxX 0 def
- /L2maxX 0 def
- }ifelse
- p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto
- L1maxX L1maxX p1x sub SS1 mul p1y add lineto
- fill
- }ifelse
- }ifelse
- }ifelse
- }if
- grestore
- grestore
- end
- end
- end
- }ifelse
- }bdf
- /GenStrips
- {
- 40 dict begin
- /ColorSpaceFamily xdf
- /background xdf
- /ext1 xdf
- /ext0 xdf
- /BBox xdf
- /y2 xdf
- /x2 xdf
- /y1 xdf
- /x1 xdf
- /rampdict xdf
- /setinkoverprint where{pop/setinkoverprint{pop}def}if
- gsave
- BBox length 0 gt
- {
- np
- BBox 0 get BBox 1 get moveto
- BBox 2 get BBox 0 get sub 0 rlineto
- 0 BBox 3 get BBox 1 get sub rlineto
- BBox 2 get BBox 0 get sub neg 0 rlineto
- closepath
- clip
- np
- }if
- x1 x2 eq
- {
- y1 y2 lt{/theta 90 def}{/theta 270 def}ifelse
- }{
- /slope y2 y1 sub x2 x1 sub div def
- /theta slope 1 atan def
- x2 x1 lt y2 y1 ge and{/theta theta 180 sub def}if
- x2 x1 lt y2 y1 lt and{/theta theta 180 add def}if
- }
- ifelse
- gsave
- clippath
- x1 y1 translate
- theta rotate
- {pathbbox}stopped
- {0 0 0 0}if
- /yMax exch def
- /xMax exch def
- /yMin exch def
- /xMin exch def
- grestore
- xMax xMin eq yMax yMin eq or
- {
- grestore
- end
- }{
- rampdict begin
- 20 dict begin
- background length 0 gt{background sssetbackground gsave clippath fill grestore}if
- gsave
- x1 y1 translate
- theta rotate
- /xStart 0 def
- /xEnd x2 x1 sub dup mul y2 y1 sub dup mul add 0.5 exp def
- /ySpan yMax yMin sub def
- /numsteps NumSamples def
- /rampIndxInc 1 def
- /subsampling false def
- xStart 0 transform
- xEnd 0 transform
- 3 -1 roll
- sub dup mul
- 3 1 roll
- sub dup mul
- add 0.5 exp 72 div
- 0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
- 72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
- 1 index 1 index lt{exch}if pop
- mul
- /numpix xdf
- numpix 0 ne
- {
- NumSamples numpix div 0.5 gt
- {
- /numsteps numpix 2 div round cvi dup 1 le{pop 2}if def
- /rampIndxInc NumSamples 1 sub numsteps div def
- /subsampling true def
- }if
- }if
- ext0
- {
- 0 getrampcolor
- xMin xStart lt
- {
- xMin yMin xMin neg ySpan rectfill
- }if
- }if
- /xInc xEnd xStart sub numsteps div def
- /x xStart def
- 0
- numsteps
- {
- dup
- subsampling{round cvi}if
- getrampcolor
- x yMin xInc ySpan rectfill
- /x x xInc add def
- rampIndxInc add
- }repeat
- pop
- ext1{
- xMax xEnd gt
- {
- xEnd yMin xMax xEnd sub ySpan rectfill
- }if
- }if
- grestore
- grestore
- end
- end
- end
- }ifelse
- }bdf
-}def
-/pt
-{
- end
-}def
-/dt{
-}def
-/pgsv{
- //Adobe_AGM_Core/AGMCORE_save save put
-}def
-/pgrs{
- //Adobe_AGM_Core/AGMCORE_save get restore
-}def
-systemdict/findcolorrendering known{
- /findcolorrendering systemdict/findcolorrendering get def
-}if
-systemdict/setcolorrendering known{
- /setcolorrendering systemdict/setcolorrendering get def
-}if
-/test_cmyk_color_plate
-{
- gsave
- setcmykcolor currentgray 1 ne
- grestore
-}def
-/inRip_spot_has_ink
-{
- dup//Adobe_AGM_Core/AGMCORE_name xddf
- convert_spot_to_process not
-}def
-/map255_to_range
-{
- 1 index sub
- 3 -1 roll 255 div mul add
-}def
-/set_csa_crd
-{
- /sep_colorspace_dict null AGMCORE_gput
- begin
- CSA get_csa_by_name setcolorspace_opt
- set_crd
- end
-}
-def
-/map_csa
-{
- currentdict/MappedCSA known{MappedCSA null ne}{false}ifelse
- {pop}{get_csa_by_name/MappedCSA xdf}ifelse
-}def
-/setsepcolor
-{
- /sep_colorspace_dict AGMCORE_gget begin
- dup/sep_tint exch AGMCORE_gput
- TintProc
- end
-}def
-/setdevicencolor
-{
- /devicen_colorspace_dict AGMCORE_gget begin
- Names length copy
- Names length 1 sub -1 0
- {
- /devicen_tints AGMCORE_gget 3 1 roll xpt
- }for
- TintProc
- end
-}def
-/sep_colorspace_proc
-{
- /AGMCORE_tmp exch store
- /sep_colorspace_dict AGMCORE_gget begin
- currentdict/Components known{
- Components aload pop
- TintMethod/Lab eq{
- 2{AGMCORE_tmp mul NComponents 1 roll}repeat
- LMax sub AGMCORE_tmp mul LMax add NComponents 1 roll
- }{
- TintMethod/Subtractive eq{
- NComponents{
- AGMCORE_tmp mul NComponents 1 roll
- }repeat
- }{
- NComponents{
- 1 sub AGMCORE_tmp mul 1 add NComponents 1 roll
- }repeat
- }ifelse
- }ifelse
- }{
- ColorLookup AGMCORE_tmp ColorLookup length 1 sub mul round cvi get
- aload pop
- }ifelse
- end
-}def
-/sep_colorspace_gray_proc
-{
- /AGMCORE_tmp exch store
- /sep_colorspace_dict AGMCORE_gget begin
- GrayLookup AGMCORE_tmp GrayLookup length 1 sub mul round cvi get
- end
-}def
-/sep_proc_name
-{
- dup 0 get
- dup/DeviceRGB eq exch/DeviceCMYK eq or level2 not and has_color not and{
- pop[/DeviceGray]
- /sep_colorspace_gray_proc
- }{
- /sep_colorspace_proc
- }ifelse
-}def
-/setsepcolorspace
-{
- current_spot_alias{
- dup begin
- Name map_alias{
- exch pop
- }if
- end
- }if
- dup/sep_colorspace_dict exch AGMCORE_gput
- begin
- CSA map_csa
- /AGMCORE_sep_special Name dup()eq exch(All)eq or store
- AGMCORE_avoid_L2_sep_space{
- [/Indexed MappedCSA sep_proc_name 255 exch
- {255 div}/exec cvx 3 -1 roll[4 1 roll load/exec cvx]cvx
- ]setcolorspace_opt
- /TintProc{
- 255 mul round cvi setcolor
- }bdf
- }{
- MappedCSA 0 get/DeviceCMYK eq
- currentdict/Components known and
- AGMCORE_sep_special not and{
- /TintProc[
- Components aload pop Name findcmykcustomcolor
- /exch cvx/setcustomcolor cvx
- ]cvx bdf
- }{
- AGMCORE_host_sep Name(All)eq and{
- /TintProc{
- 1 exch sub setseparationgray
- }bdf
- }{
- AGMCORE_in_rip_sep MappedCSA 0 get/DeviceCMYK eq and
- AGMCORE_host_sep or
- Name()eq and{
- /TintProc[
- MappedCSA sep_proc_name exch 0 get/DeviceCMYK eq{
- cvx/setcmykcolor cvx
- }{
- cvx/setgray cvx
- }ifelse
- ]cvx bdf
- }{
- AGMCORE_producing_seps MappedCSA 0 get dup/DeviceCMYK eq exch/DeviceGray eq or and AGMCORE_sep_special not and{
- /TintProc[
- /dup cvx
- MappedCSA sep_proc_name cvx exch
- 0 get/DeviceGray eq{
- 1/exch cvx/sub cvx 0 0 0 4 -1/roll cvx
- }if
- /Name cvx/findcmykcustomcolor cvx/exch cvx
- AGMCORE_host_sep{
- AGMCORE_is_cmyk_sep
- /Name cvx
- /AGMCORE_IsSeparationAProcessColor load/exec cvx
- /not cvx/and cvx
- }{
- Name inRip_spot_has_ink not
- }ifelse
- [
- /pop cvx 1
- ]cvx/if cvx
- /setcustomcolor cvx
- ]cvx bdf
- }{
- /TintProc{setcolor}bdf
- [/Separation Name MappedCSA sep_proc_name load]setcolorspace_opt
- }ifelse
- }ifelse
- }ifelse
- }ifelse
- }ifelse
- set_crd
- setsepcolor
- end
-}def
-/additive_blend
-{
- 3 dict begin
- /numarrays xdf
- /numcolors xdf
- 0 1 numcolors 1 sub
- {
- /c1 xdf
- 1
- 0 1 numarrays 1 sub
- {
- 1 exch add/index cvx
- c1/get cvx/mul cvx
- }for
- numarrays 1 add 1/roll cvx
- }for
- numarrays[/pop cvx]cvx/repeat cvx
- end
-}def
-/subtractive_blend
-{
- 3 dict begin
- /numarrays xdf
- /numcolors xdf
- 0 1 numcolors 1 sub
- {
- /c1 xdf
- 1 1
- 0 1 numarrays 1 sub
- {
- 1 3 3 -1 roll add/index cvx
- c1/get cvx/sub cvx/mul cvx
- }for
- /sub cvx
- numarrays 1 add 1/roll cvx
- }for
- numarrays[/pop cvx]cvx/repeat cvx
- end
-}def
-/exec_tint_transform
-{
- /TintProc[
- /TintTransform cvx/setcolor cvx
- ]cvx bdf
- MappedCSA setcolorspace_opt
-}bdf
-/devn_makecustomcolor
-{
- 2 dict begin
- /names_index xdf
- /Names xdf
- 1 1 1 1 Names names_index get findcmykcustomcolor
- /devicen_tints AGMCORE_gget names_index get setcustomcolor
- Names length{pop}repeat
- end
-}bdf
-/setdevicencolorspace
-{
- dup/AliasedColorants known{false}{true}ifelse
- current_spot_alias and{
- 7 dict begin
- /names_index 0 def
- dup/names_len exch/Names get length def
- /new_names names_len array def
- /new_LookupTables names_len array def
- /alias_cnt 0 def
- dup/Names get
- {
- dup map_alias{
- exch pop
- dup/ColorLookup known{
- dup begin
- new_LookupTables names_index ColorLookup put
- end
- }{
- dup/Components known{
- dup begin
- new_LookupTables names_index Components put
- end
- }{
- dup begin
- new_LookupTables names_index[null null null null]put
- end
- }ifelse
- }ifelse
- new_names names_index 3 -1 roll/Name get put
- /alias_cnt alias_cnt 1 add def
- }{
- /name xdf
- new_names names_index name put
- dup/LookupTables known{
- dup begin
- new_LookupTables names_index LookupTables names_index get put
- end
- }{
- dup begin
- new_LookupTables names_index[null null null null]put
- end
- }ifelse
- }ifelse
- /names_index names_index 1 add def
- }forall
- alias_cnt 0 gt{
- /AliasedColorants true def
- /lut_entry_len new_LookupTables 0 get dup length 256 ge{0 get length}{length}ifelse def
- 0 1 names_len 1 sub{
- /names_index xdf
- new_LookupTables names_index get dup length 256 ge{0 get length}{length}ifelse lut_entry_len ne{
- /AliasedColorants false def
- exit
- }{
- new_LookupTables names_index get 0 get null eq{
- dup/Names get names_index get/name xdf
- name(Cyan)eq name(Magenta)eq name(Yellow)eq name(Black)eq
- or or or not{
- /AliasedColorants false def
- exit
- }if
- }if
- }ifelse
- }for
- lut_entry_len 1 eq{
- /AliasedColorants false def
- }if
- AliasedColorants{
- dup begin
- /Names new_names def
- /LookupTables new_LookupTables def
- /AliasedColorants true def
- /NComponents lut_entry_len def
- /TintMethod NComponents 4 eq{/Subtractive}{/Additive}ifelse def
- /MappedCSA TintMethod/Additive eq{/DeviceRGB}{/DeviceCMYK}ifelse def
- currentdict/TTTablesIdx known not{
- /TTTablesIdx -1 def
- }if
- end
- }if
- }if
- end
- }if
- dup/devicen_colorspace_dict exch AGMCORE_gput
- begin
- currentdict/AliasedColorants known{
- AliasedColorants
- }{
- false
- }ifelse
- dup not{
- CSA map_csa
- }if
- /TintTransform load type/nulltype eq or{
- /TintTransform[
- 0 1 Names length 1 sub
- {
- /TTTablesIdx TTTablesIdx 1 add def
- dup LookupTables exch get dup 0 get null eq
- {
- 1 index
- Names exch get
- dup(Cyan)eq
- {
- pop exch
- LookupTables length exch sub
- /index cvx
- 0 0 0
- }
- {
- dup(Magenta)eq
- {
- pop exch
- LookupTables length exch sub
- /index cvx
- 0/exch cvx 0 0
- }{
- (Yellow)eq
- {
- exch
- LookupTables length exch sub
- /index cvx
- 0 0 3 -1/roll cvx 0
- }{
- exch
- LookupTables length exch sub
- /index cvx
- 0 0 0 4 -1/roll cvx
- }ifelse
- }ifelse
- }ifelse
- 5 -1/roll cvx/astore cvx
- }{
- dup length 1 sub
- LookupTables length 4 -1 roll sub 1 add
- /index cvx/mul cvx/round cvx/cvi cvx/get cvx
- }ifelse
- Names length TTTablesIdx add 1 add 1/roll cvx
- }for
- Names length[/pop cvx]cvx/repeat cvx
- NComponents Names length
- TintMethod/Subtractive eq
- {
- subtractive_blend
- }{
- additive_blend
- }ifelse
- ]cvx bdf
- }if
- AGMCORE_host_sep{
- Names convert_to_process{
- exec_tint_transform
- }
- {
- currentdict/AliasedColorants known{
- AliasedColorants not
- }{
- false
- }ifelse
- 5 dict begin
- /AvoidAliasedColorants xdf
- /painted? false def
- /names_index 0 def
- /names_len Names length def
- AvoidAliasedColorants{
- /currentspotalias current_spot_alias def
- false set_spot_alias
- }if
- Names{
- AGMCORE_is_cmyk_sep{
- dup(Cyan)eq AGMCORE_cyan_plate and exch
- dup(Magenta)eq AGMCORE_magenta_plate and exch
- dup(Yellow)eq AGMCORE_yellow_plate and exch
- (Black)eq AGMCORE_black_plate and or or or{
- /devicen_colorspace_dict AGMCORE_gget/TintProc[
- Names names_index/devn_makecustomcolor cvx
- ]cvx ddf
- /painted? true def
- }if
- painted?{exit}if
- }{
- 0 0 0 0 5 -1 roll findcmykcustomcolor 1 setcustomcolor currentgray 0 eq{
- /devicen_colorspace_dict AGMCORE_gget/TintProc[
- Names names_index/devn_makecustomcolor cvx
- ]cvx ddf
- /painted? true def
- exit
- }if
- }ifelse
- /names_index names_index 1 add def
- }forall
- AvoidAliasedColorants{
- currentspotalias set_spot_alias
- }if
- painted?{
- /devicen_colorspace_dict AGMCORE_gget/names_index names_index put
- }{
- /devicen_colorspace_dict AGMCORE_gget/TintProc[
- names_len[/pop cvx]cvx/repeat cvx 1/setseparationgray cvx
- 0 0 0 0/setcmykcolor cvx
- ]cvx ddf
- }ifelse
- end
- }ifelse
- }
- {
- AGMCORE_in_rip_sep{
- Names convert_to_process not
- }{
- level3
- }ifelse
- {
- [/DeviceN Names MappedCSA/TintTransform load]setcolorspace_opt
- /TintProc level3 not AGMCORE_in_rip_sep and{
- [
- Names/length cvx[/pop cvx]cvx/repeat cvx
- ]cvx bdf
- }{
- {setcolor}bdf
- }ifelse
- }{
- exec_tint_transform
- }ifelse
- }ifelse
- set_crd
- /AliasedColorants false def
- end
-}def
-/setindexedcolorspace
-{
- dup/indexed_colorspace_dict exch AGMCORE_gput
- begin
- currentdict/CSDBase known{
- CSDBase/CSD get_res begin
- currentdict/Names known{
- currentdict devncs
- }{
- 1 currentdict sepcs
- }ifelse
- AGMCORE_host_sep{
- 4 dict begin
- /compCnt/Names where{pop Names length}{1}ifelse def
- /NewLookup HiVal 1 add string def
- 0 1 HiVal{
- /tableIndex xdf
- Lookup dup type/stringtype eq{
- compCnt tableIndex map_index
- }{
- exec
- }ifelse
- /Names where{
- pop setdevicencolor
- }{
- setsepcolor
- }ifelse
- currentgray
- tableIndex exch
- 255 mul cvi
- NewLookup 3 1 roll put
- }for
- [/Indexed currentcolorspace HiVal NewLookup]setcolorspace_opt
- end
- }{
- level3
- {
- currentdict/Names known{
- [/Indexed[/DeviceN Names MappedCSA/TintTransform load]HiVal Lookup]setcolorspace_opt
- }{
- [/Indexed[/Separation Name MappedCSA sep_proc_name load]HiVal Lookup]setcolorspace_opt
- }ifelse
- }{
- [/Indexed MappedCSA HiVal
- [
- currentdict/Names known{
- Lookup dup type/stringtype eq
- {/exch cvx CSDBase/CSD get_res/Names get length dup/mul cvx exch/getinterval cvx{255 div}/forall cvx}
- {/exec cvx}ifelse
- /TintTransform load/exec cvx
- }{
- Lookup dup type/stringtype eq
- {/exch cvx/get cvx 255/div cvx}
- {/exec cvx}ifelse
- CSDBase/CSD get_res/MappedCSA get sep_proc_name exch pop/load cvx/exec cvx
- }ifelse
- ]cvx
- ]setcolorspace_opt
- }ifelse
- }ifelse
- end
- set_crd
- }
- {
- CSA map_csa
- AGMCORE_host_sep level2 not and{
- 0 0 0 0 setcmykcolor
- }{
- [/Indexed MappedCSA
- level2 not has_color not and{
- dup 0 get dup/DeviceRGB eq exch/DeviceCMYK eq or{
- pop[/DeviceGray]
- }if
- HiVal GrayLookup
- }{
- HiVal
- currentdict/RangeArray known{
- {
- /indexed_colorspace_dict AGMCORE_gget begin
- Lookup exch
- dup HiVal gt{
- pop HiVal
- }if
- NComponents mul NComponents getinterval{}forall
- NComponents 1 sub -1 0{
- RangeArray exch 2 mul 2 getinterval aload pop map255_to_range
- NComponents 1 roll
- }for
- end
- }bind
- }{
- Lookup
- }ifelse
- }ifelse
- ]setcolorspace_opt
- set_crd
- }ifelse
- }ifelse
- end
-}def
-/setindexedcolor
-{
- AGMCORE_host_sep{
- /indexed_colorspace_dict AGMCORE_gget
- begin
- currentdict/CSDBase known{
- CSDBase/CSD get_res begin
- currentdict/Names known{
- map_indexed_devn
- devn
- }
- {
- Lookup 1 3 -1 roll map_index
- sep
- }ifelse
- end
- }{
- Lookup MappedCSA/DeviceCMYK eq{4}{1}ifelse 3 -1 roll
- map_index
- MappedCSA/DeviceCMYK eq{setcmykcolor}{setgray}ifelse
- }ifelse
- end
- }{
- level3 not AGMCORE_in_rip_sep and/indexed_colorspace_dict AGMCORE_gget/CSDBase known and{
- /indexed_colorspace_dict AGMCORE_gget/CSDBase get/CSD get_res begin
- map_indexed_devn
- devn
- end
- }
- {
- setcolor
- }ifelse
- }ifelse
-}def
-/ignoreimagedata
-{
- currentoverprint not{
- gsave
- dup clonedict begin
- 1 setgray
- /Decode[0 1]def
- /DataSource<FF>def
- /MultipleDataSources false def
- /BitsPerComponent 8 def
- currentdict end
- systemdict/image gx
- grestore
- }if
- consumeimagedata
-}def
-/add_res
-{
- dup/CSD eq{
- pop
- //Adobe_AGM_Core begin
- /AGMCORE_CSD_cache load 3 1 roll put
- end
- }{
- defineresource pop
- }ifelse
-}def
-/del_res
-{
- {
- aload pop exch
- dup/CSD eq{
- pop
- {//Adobe_AGM_Core/AGMCORE_CSD_cache get exch undef}forall
- }{
- exch
- {1 index undefineresource}forall
- pop
- }ifelse
- }forall
-}def
-/get_res
-{
- dup/CSD eq{
- pop
- dup type dup/nametype eq exch/stringtype eq or{
- AGMCORE_CSD_cache exch get
- }if
- }{
- findresource
- }ifelse
-}def
-/get_csa_by_name
-{
- dup type dup/nametype eq exch/stringtype eq or{
- /CSA get_res
- }if
-}def
-/paintproc_buf_init
-{
- /count get 0 0 put
-}def
-/paintproc_buf_next
-{
- dup/count get dup 0 get
- dup 3 1 roll
- 1 add 0 xpt
- get
-}def
-/cachepaintproc_compress
-{
- 5 dict begin
- currentfile exch 0 exch/SubFileDecode filter/ReadFilter exch def
- /ppdict 20 dict def
- /string_size 16000 def
- /readbuffer string_size string def
- currentglobal true setglobal
- ppdict 1 array dup 0 1 put/count xpt
- setglobal
- /LZWFilter
- {
- exch
- dup length 0 eq{
- pop
- }{
- ppdict dup length 1 sub 3 -1 roll put
- }ifelse
- {string_size}{0}ifelse string
- }/LZWEncode filter def
- {
- ReadFilter readbuffer readstring
- exch LZWFilter exch writestring
- not{exit}if
- }loop
- LZWFilter closefile
- ppdict
- end
-}def
-/cachepaintproc
-{
- 2 dict begin
- currentfile exch 0 exch/SubFileDecode filter/ReadFilter exch def
- /ppdict 20 dict def
- currentglobal true setglobal
- ppdict 1 array dup 0 1 put/count xpt
- setglobal
- {
- ReadFilter 16000 string readstring exch
- ppdict dup length 1 sub 3 -1 roll put
- not{exit}if
- }loop
- ppdict dup dup length 1 sub()put
- end
-}def
-/make_pattern
-{
- exch clonedict exch
- dup matrix currentmatrix matrix concatmatrix 0 0 3 2 roll itransform
- exch 3 index/XStep get 1 index exch 2 copy div cvi mul sub sub
- exch 3 index/YStep get 1 index exch 2 copy div cvi mul sub sub
- matrix translate exch matrix concatmatrix
- 1 index begin
- BBox 0 get XStep div cvi XStep mul/xshift exch neg def
- BBox 1 get YStep div cvi YStep mul/yshift exch neg def
- BBox 0 get xshift add
- BBox 1 get yshift add
- BBox 2 get xshift add
- BBox 3 get yshift add
- 4 array astore
- /BBox exch def
- [xshift yshift/translate load null/exec load]dup
- 3/PaintProc load put cvx/PaintProc exch def
- end
- gsave 0 setgray
- makepattern
- grestore
-}def
-/set_pattern
-{
- dup/PatternType get 1 eq{
- dup/PaintType get 1 eq{
- currentoverprint sop[/DeviceGray]setcolorspace 0 setgray
- }if
- }if
- setpattern
-}def
-/setcolorspace_opt
-{
- dup currentcolorspace eq{pop}{setcolorspace}ifelse
-}def
-/updatecolorrendering
-{
- currentcolorrendering/RenderingIntent known{
- currentcolorrendering/RenderingIntent get
- }
- {
- Intent/AbsoluteColorimetric eq
- {
- /absolute_colorimetric_crd AGMCORE_gget dup null eq
- }
- {
- Intent/RelativeColorimetric eq
- {
- /relative_colorimetric_crd AGMCORE_gget dup null eq
- }
- {
- Intent/Saturation eq
- {
- /saturation_crd AGMCORE_gget dup null eq
- }
- {
- /perceptual_crd AGMCORE_gget dup null eq
- }ifelse
- }ifelse
- }ifelse
- {
- pop null
- }
- {
- /RenderingIntent known{null}{Intent}ifelse
- }ifelse
- }ifelse
- Intent ne{
- Intent/ColorRendering{findresource}stopped
- {
- pop pop systemdict/findcolorrendering known
- {
- Intent findcolorrendering
- {
- /ColorRendering findresource true exch
- }
- {
- /ColorRendering findresource
- product(Xerox Phaser 5400)ne
- exch
- }ifelse
- dup Intent/AbsoluteColorimetric eq
- {
- /absolute_colorimetric_crd exch AGMCORE_gput
- }
- {
- Intent/RelativeColorimetric eq
- {
- /relative_colorimetric_crd exch AGMCORE_gput
- }
- {
- Intent/Saturation eq
- {
- /saturation_crd exch AGMCORE_gput
- }
- {
- Intent/Perceptual eq
- {
- /perceptual_crd exch AGMCORE_gput
- }
- {
- pop
- }ifelse
- }ifelse
- }ifelse
- }ifelse
- 1 index{exch}{pop}ifelse
- }
- {false}ifelse
- }
- {true}ifelse
- {
- dup begin
- currentdict/TransformPQR known{
- currentdict/TransformPQR get aload pop
- 3{{}eq 3 1 roll}repeat or or
- }
- {true}ifelse
- currentdict/MatrixPQR known{
- currentdict/MatrixPQR get aload pop
- 1.0 eq 9 1 roll 0.0 eq 9 1 roll 0.0 eq 9 1 roll
- 0.0 eq 9 1 roll 1.0 eq 9 1 roll 0.0 eq 9 1 roll
- 0.0 eq 9 1 roll 0.0 eq 9 1 roll 1.0 eq
- and and and and and and and and
- }
- {true}ifelse
- end
- or
- {
- clonedict begin
- /TransformPQR[
- {4 -1 roll 3 get dup 3 1 roll sub 5 -1 roll 3 get 3 -1 roll sub div
- 3 -1 roll 3 get 3 -1 roll 3 get dup 4 1 roll sub mul add}bind
- {4 -1 roll 4 get dup 3 1 roll sub 5 -1 roll 4 get 3 -1 roll sub div
- 3 -1 roll 4 get 3 -1 roll 4 get dup 4 1 roll sub mul add}bind
- {4 -1 roll 5 get dup 3 1 roll sub 5 -1 roll 5 get 3 -1 roll sub div
- 3 -1 roll 5 get 3 -1 roll 5 get dup 4 1 roll sub mul add}bind
- ]def
- /MatrixPQR[0.8951 -0.7502 0.0389 0.2664 1.7135 -0.0685 -0.1614 0.0367 1.0296]def
- /RangePQR[-0.3227950745 2.3229645538 -1.5003771057 3.5003465881 -0.1369979095 2.136967392]def
- currentdict end
- }if
- setcolorrendering_opt
- }if
- }if
-}def
-/set_crd
-{
- AGMCORE_host_sep not level2 and{
- currentdict/ColorRendering known{
- ColorRendering/ColorRendering{findresource}stopped not{setcolorrendering_opt}if
- }{
- currentdict/Intent known{
- updatecolorrendering
- }if
- }ifelse
- currentcolorspace dup type/arraytype eq
- {0 get}if
- /DeviceRGB eq
- {
- currentdict/UCR known
- {/UCR}{/AGMCORE_currentucr}ifelse
- load setundercolorremoval
- currentdict/BG known
- {/BG}{/AGMCORE_currentbg}ifelse
- load setblackgeneration
- }if
- }if
-}def
-/set_ucrbg
-{
- dup null eq{pop/AGMCORE_currentbg load}{/Procedure get_res}ifelse setblackgeneration
- dup null eq{pop/AGMCORE_currentucr load}{/Procedure get_res}ifelse setundercolorremoval
-}def
-/setcolorrendering_opt
-{
- dup currentcolorrendering eq{
- pop
- }{
- product(HP Color LaserJet 2605)anchorsearch{
- pop pop pop
- }{
- pop
- clonedict
- begin
- /Intent Intent def
- currentdict
- end
- setcolorrendering
- }ifelse
- }ifelse
-}def
-/cpaint_gcomp
-{
- convert_to_process//Adobe_AGM_Core/AGMCORE_ConvertToProcess xddf
- //Adobe_AGM_Core/AGMCORE_ConvertToProcess get not
- {
- (%end_cpaint_gcomp)flushinput
- }if
-}def
-/cpaint_gsep
-{
- //Adobe_AGM_Core/AGMCORE_ConvertToProcess get
- {
- (%end_cpaint_gsep)flushinput
- }if
-}def
-/cpaint_gend
-{np}def
-/T1_path
-{
- currentfile token pop currentfile token pop mo
- {
- currentfile token pop dup type/stringtype eq
- {pop exit}if
- 0 exch rlineto
- currentfile token pop dup type/stringtype eq
- {pop exit}if
- 0 rlineto
- }loop
-}def
-/T1_gsave
- level3
- {/clipsave}
- {/gsave}ifelse
- load def
-/T1_grestore
- level3
- {/cliprestore}
- {/grestore}ifelse
- load def
-/set_spot_alias_ary
-{
- dup inherit_aliases
- //Adobe_AGM_Core/AGMCORE_SpotAliasAry xddf
-}def
-/set_spot_normalization_ary
-{
- dup inherit_aliases
- dup length
- /AGMCORE_SpotAliasAry where{pop AGMCORE_SpotAliasAry length add}if
- array
- //Adobe_AGM_Core/AGMCORE_SpotAliasAry2 xddf
- /AGMCORE_SpotAliasAry where{
- pop
- AGMCORE_SpotAliasAry2 0 AGMCORE_SpotAliasAry putinterval
- AGMCORE_SpotAliasAry length
- }{0}ifelse
- AGMCORE_SpotAliasAry2 3 1 roll exch putinterval
- true set_spot_alias
-}def
-/inherit_aliases
-{
- {dup/Name get map_alias{/CSD put}{pop}ifelse}forall
-}def
-/set_spot_alias
-{
- /AGMCORE_SpotAliasAry2 where{
- /AGMCORE_current_spot_alias 3 -1 roll put
- }{
- pop
- }ifelse
-}def
-/current_spot_alias
-{
- /AGMCORE_SpotAliasAry2 where{
- /AGMCORE_current_spot_alias get
- }{
- false
- }ifelse
-}def
-/map_alias
-{
- /AGMCORE_SpotAliasAry2 where{
- begin
- /AGMCORE_name xdf
- false
- AGMCORE_SpotAliasAry2{
- dup/Name get AGMCORE_name eq{
- /CSD get/CSD get_res
- exch pop true
- exit
- }{
- pop
- }ifelse
- }forall
- end
- }{
- pop false
- }ifelse
-}bdf
-/spot_alias
-{
- true set_spot_alias
- /AGMCORE_&setcustomcolor AGMCORE_key_known not{
- //Adobe_AGM_Core/AGMCORE_&setcustomcolor/setcustomcolor load put
- }if
- /customcolor_tint 1 AGMCORE_gput
- //Adobe_AGM_Core begin
- /setcustomcolor
- {
- //Adobe_AGM_Core begin
- dup/customcolor_tint exch AGMCORE_gput
- 1 index aload pop pop 1 eq exch 1 eq and exch 1 eq and exch 1 eq and not
- current_spot_alias and{1 index 4 get map_alias}{false}ifelse
- {
- false set_spot_alias
- /sep_colorspace_dict AGMCORE_gget null ne
- 3 1 roll 2 index{
- exch pop/sep_tint AGMCORE_gget exch
- }if
- mark 3 1 roll
- setsepcolorspace
- counttomark 0 ne{
- setsepcolor
- }if
- pop
- not{/sep_tint 1.0 AGMCORE_gput}if
- pop
- true set_spot_alias
- }{
- AGMCORE_&setcustomcolor
- }ifelse
- end
- }bdf
- end
-}def
-/begin_feature
-{
- Adobe_AGM_Core/AGMCORE_feature_dictCount countdictstack put
- count Adobe_AGM_Core/AGMCORE_feature_opCount 3 -1 roll put
- {Adobe_AGM_Core/AGMCORE_feature_ctm matrix currentmatrix put}if
-}def
-/end_feature
-{
- 2 dict begin
- /spd/setpagedevice load def
- /setpagedevice{get_gstate spd set_gstate}def
- stopped{$error/newerror false put}if
- end
- count Adobe_AGM_Core/AGMCORE_feature_opCount get sub dup 0 gt{{pop}repeat}{pop}ifelse
- countdictstack Adobe_AGM_Core/AGMCORE_feature_dictCount get sub dup 0 gt{{end}repeat}{pop}ifelse
- {Adobe_AGM_Core/AGMCORE_feature_ctm get setmatrix}if
-}def
-/set_negative
-{
- //Adobe_AGM_Core begin
- /AGMCORE_inverting exch def
- level2{
- currentpagedevice/NegativePrint known AGMCORE_distilling not and{
- currentpagedevice/NegativePrint get//Adobe_AGM_Core/AGMCORE_inverting get ne{
- true begin_feature true{
- <</NegativePrint//Adobe_AGM_Core/AGMCORE_inverting get>>setpagedevice
- }end_feature
- }if
- /AGMCORE_inverting false def
- }if
- }if
- AGMCORE_inverting{
- [{1 exch sub}/exec load dup currenttransfer exch]cvx bind settransfer
- AGMCORE_distilling{
- erasepage
- }{
- gsave np clippath 1/setseparationgray where{pop setseparationgray}{setgray}ifelse
- /AGMIRS_&fill where{pop AGMIRS_&fill}{fill}ifelse grestore
- }ifelse
- }if
- end
-}def
-/lw_save_restore_override{
- /md where{
- pop
- md begin
- initializepage
- /initializepage{}def
- /pmSVsetup{}def
- /endp{}def
- /pse{}def
- /psb{}def
- /orig_showpage where
- {pop}
- {/orig_showpage/showpage load def}
- ifelse
- /showpage{orig_showpage gR}def
- end
- }if
-}def
-/pscript_showpage_override{
- /NTPSOct95 where
- {
- begin
- showpage
- save
- /showpage/restore load def
- /restore{exch pop}def
- end
- }if
-}def
-/driver_media_override
-{
- /md where{
- pop
- md/initializepage known{
- md/initializepage{}put
- }if
- md/rC known{
- md/rC{4{pop}repeat}put
- }if
- }if
- /mysetup where{
- /mysetup[1 0 0 1 0 0]put
- }if
- Adobe_AGM_Core/AGMCORE_Default_CTM matrix currentmatrix put
- level2
- {Adobe_AGM_Core/AGMCORE_Default_PageSize currentpagedevice/PageSize get put}if
-}def
-/capture_mysetup
-{
- /Pscript_Win_Data where{
- pop
- Pscript_Win_Data/mysetup known{
- Adobe_AGM_Core/save_mysetup Pscript_Win_Data/mysetup get put
- }if
- }if
-}def
-/restore_mysetup
-{
- /Pscript_Win_Data where{
- pop
- Pscript_Win_Data/mysetup known{
- Adobe_AGM_Core/save_mysetup known{
- Pscript_Win_Data/mysetup Adobe_AGM_Core/save_mysetup get put
- Adobe_AGM_Core/save_mysetup undef
- }if
- }if
- }if
-}def
-/driver_check_media_override
-{
- /PrepsDict where
- {pop}
- {
- Adobe_AGM_Core/AGMCORE_Default_CTM get matrix currentmatrix ne
- Adobe_AGM_Core/AGMCORE_Default_PageSize get type/arraytype eq
- {
- Adobe_AGM_Core/AGMCORE_Default_PageSize get 0 get currentpagedevice/PageSize get 0 get eq and
- Adobe_AGM_Core/AGMCORE_Default_PageSize get 1 get currentpagedevice/PageSize get 1 get eq and
- }if
- {
- Adobe_AGM_Core/AGMCORE_Default_CTM get setmatrix
- }if
- }ifelse
-}def
-AGMCORE_err_strings begin
- /AGMCORE_bad_environ(Environment not satisfactory for this job. Ensure that the PPD is correct or that the PostScript level requested is supported by this printer. )def
- /AGMCORE_color_space_onhost_seps(This job contains colors that will not separate with on-host methods. )def
- /AGMCORE_invalid_color_space(This job contains an invalid color space. )def
-end
-/set_def_ht
-{AGMCORE_def_ht sethalftone}def
-/set_def_flat
-{AGMCORE_Default_flatness setflat}def
-end
-systemdict/setpacking known
-{setpacking}if
-%%EndResource
-%%BeginResource: procset Adobe_CoolType_Core 2.31 0
-%%Copyright: Copyright 1997-2006 Adobe Systems Incorporated. All Rights Reserved.
-%%Version: 2.31 0
-10 dict begin
-/Adobe_CoolType_Passthru currentdict def
-/Adobe_CoolType_Core_Defined userdict/Adobe_CoolType_Core known def
-Adobe_CoolType_Core_Defined
- {/Adobe_CoolType_Core userdict/Adobe_CoolType_Core get def}
-if
-userdict/Adobe_CoolType_Core 70 dict dup begin put
-/Adobe_CoolType_Version 2.31 def
-/Level2?
- systemdict/languagelevel known dup
- {pop systemdict/languagelevel get 2 ge}
- if def
-Level2? not
- {
- /currentglobal false def
- /setglobal/pop load def
- /gcheck{pop false}bind def
- /currentpacking false def
- /setpacking/pop load def
- /SharedFontDirectory 0 dict def
- }
-if
-currentpacking
-true setpacking
-currentglobal false setglobal
-userdict/Adobe_CoolType_Data 2 copy known not
- {2 copy 10 dict put}
-if
-get
- begin
- /@opStackCountByLevel 32 dict def
- /@opStackLevel 0 def
- /@dictStackCountByLevel 32 dict def
- /@dictStackLevel 0 def
- end
-setglobal
-currentglobal true setglobal
-userdict/Adobe_CoolType_GVMFonts known not
- {userdict/Adobe_CoolType_GVMFonts 10 dict put}
-if
-setglobal
-currentglobal false setglobal
-userdict/Adobe_CoolType_LVMFonts known not
- {userdict/Adobe_CoolType_LVMFonts 10 dict put}
-if
-setglobal
-/ct_VMDictPut
- {
- dup gcheck{Adobe_CoolType_GVMFonts}{Adobe_CoolType_LVMFonts}ifelse
- 3 1 roll put
- }bind def
-/ct_VMDictUndef
- {
- dup Adobe_CoolType_GVMFonts exch known
- {Adobe_CoolType_GVMFonts exch undef}
- {
- dup Adobe_CoolType_LVMFonts exch known
- {Adobe_CoolType_LVMFonts exch undef}
- {pop}
- ifelse
- }ifelse
- }bind def
-/ct_str1 1 string def
-/ct_xshow
-{
- /_ct_na exch def
- /_ct_i 0 def
- currentpoint
- /_ct_y exch def
- /_ct_x exch def
- {
- pop pop
- ct_str1 exch 0 exch put
- ct_str1 show
- {_ct_na _ct_i get}stopped
- {pop pop}
- {
- _ct_x _ct_y moveto
- 0
- rmoveto
- }
- ifelse
- /_ct_i _ct_i 1 add def
- currentpoint
- /_ct_y exch def
- /_ct_x exch def
- }
- exch
- @cshow
-}bind def
-/ct_yshow
-{
- /_ct_na exch def
- /_ct_i 0 def
- currentpoint
- /_ct_y exch def
- /_ct_x exch def
- {
- pop pop
- ct_str1 exch 0 exch put
- ct_str1 show
- {_ct_na _ct_i get}stopped
- {pop pop}
- {
- _ct_x _ct_y moveto
- 0 exch
- rmoveto
- }
- ifelse
- /_ct_i _ct_i 1 add def
- currentpoint
- /_ct_y exch def
- /_ct_x exch def
- }
- exch
- @cshow
-}bind def
-/ct_xyshow
-{
- /_ct_na exch def
- /_ct_i 0 def
- currentpoint
- /_ct_y exch def
- /_ct_x exch def
- {
- pop pop
- ct_str1 exch 0 exch put
- ct_str1 show
- {_ct_na _ct_i get}stopped
- {pop pop}
- {
- {_ct_na _ct_i 1 add get}stopped
- {pop pop pop}
- {
- _ct_x _ct_y moveto
- rmoveto
- }
- ifelse
- }
- ifelse
- /_ct_i _ct_i 2 add def
- currentpoint
- /_ct_y exch def
- /_ct_x exch def
- }
- exch
- @cshow
-}bind def
-/xsh{{@xshow}stopped{Adobe_CoolType_Data begin ct_xshow end}if}bind def
-/ysh{{@yshow}stopped{Adobe_CoolType_Data begin ct_yshow end}if}bind def
-/xysh{{@xyshow}stopped{Adobe_CoolType_Data begin ct_xyshow end}if}bind def
-currentglobal true setglobal
-/ct_T3Defs
-{
-/BuildChar
-{
- 1 index/Encoding get exch get
- 1 index/BuildGlyph get exec
-}bind def
-/BuildGlyph
-{
- exch begin
- GlyphProcs exch get exec
- end
-}bind def
-}bind def
-setglobal
-/@_SaveStackLevels
- {
- Adobe_CoolType_Data
- begin
- /@vmState currentglobal def false setglobal
- @opStackCountByLevel
- @opStackLevel
- 2 copy known not
- {
- 2 copy
- 3 dict dup/args
- 7 index
- 5 add array put
- put get
- }
- {
- get dup/args get dup length 3 index lt
- {
- dup length 5 add array exch
- 1 index exch 0 exch putinterval
- 1 index exch/args exch put
- }
- {pop}
- ifelse
- }
- ifelse
- begin
- count 1 sub
- 1 index lt
- {pop count}
- if
- dup/argCount exch def
- dup 0 gt
- {
- args exch 0 exch getinterval
- astore pop
- }
- {pop}
- ifelse
- count
- /restCount exch def
- end
- /@opStackLevel @opStackLevel 1 add def
- countdictstack 1 sub
- @dictStackCountByLevel exch @dictStackLevel exch put
- /@dictStackLevel @dictStackLevel 1 add def
- @vmState setglobal
- end
- }bind def
-/@_RestoreStackLevels
- {
- Adobe_CoolType_Data
- begin
- /@opStackLevel @opStackLevel 1 sub def
- @opStackCountByLevel @opStackLevel get
- begin
- count restCount sub dup 0 gt
- {{pop}repeat}
- {pop}
- ifelse
- args 0 argCount getinterval{}forall
- end
- /@dictStackLevel @dictStackLevel 1 sub def
- @dictStackCountByLevel @dictStackLevel get
- end
- countdictstack exch sub dup 0 gt
- {{end}repeat}
- {pop}
- ifelse
- }bind def
-/@_PopStackLevels
- {
- Adobe_CoolType_Data
- begin
- /@opStackLevel @opStackLevel 1 sub def
- /@dictStackLevel @dictStackLevel 1 sub def
- end
- }bind def
-/@Raise
- {
- exch cvx exch errordict exch get exec
- stop
- }bind def
-/@ReRaise
- {
- cvx $error/errorname get errordict exch get exec
- stop
- }bind def
-/@Stopped
- {
- 0 @#Stopped
- }bind def
-/@#Stopped
- {
- @_SaveStackLevels
- stopped
- {@_RestoreStackLevels true}
- {@_PopStackLevels false}
- ifelse
- }bind def
-/@Arg
- {
- Adobe_CoolType_Data
- begin
- @opStackCountByLevel @opStackLevel 1 sub get
- begin
- args exch
- argCount 1 sub exch sub get
- end
- end
- }bind def
-currentglobal true setglobal
-/CTHasResourceForAllBug
- Level2?
- {
- 1 dict dup
- /@shouldNotDisappearDictValue true def
- Adobe_CoolType_Data exch/@shouldNotDisappearDict exch put
- begin
- count @_SaveStackLevels
- {(*){pop stop}128 string/Category resourceforall}
- stopped pop
- @_RestoreStackLevels
- currentdict Adobe_CoolType_Data/@shouldNotDisappearDict get dup 3 1 roll ne dup 3 1 roll
- {
- /@shouldNotDisappearDictValue known
- {
- {
- end
- currentdict 1 index eq
- {pop exit}
- if
- }
- loop
- }
- if
- }
- {
- pop
- end
- }
- ifelse
- }
- {false}
- ifelse
- def
-true setglobal
-/CTHasResourceStatusBug
- Level2?
- {
- mark
- {/steveamerige/Category resourcestatus}
- stopped
- {cleartomark true}
- {cleartomark currentglobal not}
- ifelse
- }
- {false}
- ifelse
- def
-setglobal
-/CTResourceStatus
- {
- mark 3 1 roll
- /Category findresource
- begin
- ({ResourceStatus}stopped)0()/SubFileDecode filter cvx exec
- {cleartomark false}
- {{3 2 roll pop true}{cleartomark false}ifelse}
- ifelse
- end
- }bind def
-/CTWorkAroundBugs
- {
- Level2?
- {
- /cid_PreLoad/ProcSet resourcestatus
- {
- pop pop
- currentglobal
- mark
- {
- (*)
- {
- dup/CMap CTHasResourceStatusBug
- {CTResourceStatus}
- {resourcestatus}
- ifelse
- {
- pop dup 0 eq exch 1 eq or
- {
- dup/CMap findresource gcheck setglobal
- /CMap undefineresource
- }
- {
- pop CTHasResourceForAllBug
- {exit}
- {stop}
- ifelse
- }
- ifelse
- }
- {pop}
- ifelse
- }
- 128 string/CMap resourceforall
- }
- stopped
- {cleartomark}
- stopped pop
- setglobal
- }
- if
- }
- if
- }bind def
-/ds
- {
- Adobe_CoolType_Core
- begin
- CTWorkAroundBugs
- /mo/moveto load def
- /nf/newencodedfont load def
- /msf{makefont setfont}bind def
- /uf{dup undefinefont ct_VMDictUndef}bind def
- /ur/undefineresource load def
- /chp/charpath load def
- /awsh/awidthshow load def
- /wsh/widthshow load def
- /ash/ashow load def
- /@xshow/xshow load def
- /@yshow/yshow load def
- /@xyshow/xyshow load def
- /@cshow/cshow load def
- /sh/show load def
- /rp/repeat load def
- /.n/.notdef def
- end
- currentglobal false setglobal
- userdict/Adobe_CoolType_Data 2 copy known not
- {2 copy 10 dict put}
- if
- get
- begin
- /AddWidths? false def
- /CC 0 def
- /charcode 2 string def
- /@opStackCountByLevel 32 dict def
- /@opStackLevel 0 def
- /@dictStackCountByLevel 32 dict def
- /@dictStackLevel 0 def
- /InVMFontsByCMap 10 dict def
- /InVMDeepCopiedFonts 10 dict def
- end
- setglobal
- }bind def
-/dt
- {
- currentdict Adobe_CoolType_Core eq
- {end}
- if
- }bind def
-/ps
- {
- Adobe_CoolType_Core begin
- Adobe_CoolType_GVMFonts begin
- Adobe_CoolType_LVMFonts begin
- SharedFontDirectory begin
- }bind def
-/pt
- {
- end
- end
- end
- end
- }bind def
-/unload
- {
- systemdict/languagelevel known
- {
- systemdict/languagelevel get 2 ge
- {
- userdict/Adobe_CoolType_Core 2 copy known
- {undef}
- {pop pop}
- ifelse
- }
- if
- }
- if
- }bind def
-/ndf
- {
- 1 index where
- {pop pop pop}
- {dup xcheck{bind}if def}
- ifelse
- }def
-/findfont systemdict
- begin
- userdict
- begin
- /globaldict where{/globaldict get begin}if
- dup where pop exch get
- /globaldict where{pop end}if
- end
- end
-Adobe_CoolType_Core_Defined
- {/systemfindfont exch def}
- {
- /findfont 1 index def
- /systemfindfont exch def
- }
-ifelse
-/undefinefont
- {pop}ndf
-/copyfont
- {
- currentglobal 3 1 roll
- 1 index gcheck setglobal
- dup null eq{0}{dup length}ifelse
- 2 index length add 1 add dict
- begin
- exch
- {
- 1 index/FID eq
- {pop pop}
- {def}
- ifelse
- }
- forall
- dup null eq
- {pop}
- {{def}forall}
- ifelse
- currentdict
- end
- exch setglobal
- }bind def
-/copyarray
- {
- currentglobal exch
- dup gcheck setglobal
- dup length array copy
- exch setglobal
- }bind def
-/newencodedfont
- {
- currentglobal
- {
- SharedFontDirectory 3 index known
- {SharedFontDirectory 3 index get/FontReferenced known}
- {false}
- ifelse
- }
- {
- FontDirectory 3 index known
- {FontDirectory 3 index get/FontReferenced known}
- {
- SharedFontDirectory 3 index known
- {SharedFontDirectory 3 index get/FontReferenced known}
- {false}
- ifelse
- }
- ifelse
- }
- ifelse
- dup
- {
- 3 index findfont/FontReferenced get
- 2 index dup type/nametype eq
- {findfont}
- if ne
- {pop false}
- if
- }
- if
- dup
- {
- 1 index dup type/nametype eq
- {findfont}
- if
- dup/CharStrings known
- {
- /CharStrings get length
- 4 index findfont/CharStrings get length
- ne
- {
- pop false
- }
- if
- }
- {pop}
- ifelse
- }
- if
- {
- pop
- 1 index findfont
- /Encoding get exch
- 0 1 255
- {2 copy get 3 index 3 1 roll put}
- for
- pop pop pop
- }
- {
- currentglobal
- 4 1 roll
- dup type/nametype eq
- {findfont}
- if
- dup gcheck setglobal
- dup dup maxlength 2 add dict
- begin
- exch
- {
- 1 index/FID ne
- 2 index/Encoding ne and
- {def}
- {pop pop}
- ifelse
- }
- forall
- /FontReferenced exch def
- /Encoding exch dup length array copy def
- /FontName 1 index dup type/stringtype eq{cvn}if def dup
- currentdict
- end
- definefont ct_VMDictPut
- setglobal
- }
- ifelse
- }bind def
-/SetSubstituteStrategy
- {
- $SubstituteFont
- begin
- dup type/dicttype ne
- {0 dict}
- if
- currentdict/$Strategies known
- {
- exch $Strategies exch
- 2 copy known
- {
- get
- 2 copy maxlength exch maxlength add dict
- begin
- {def}forall
- {def}forall
- currentdict
- dup/$Init known
- {dup/$Init get exec}
- if
- end
- /$Strategy exch def
- }
- {pop pop pop}
- ifelse
- }
- {pop pop}
- ifelse
- end
- }bind def
-/scff
- {
- $SubstituteFont
- begin
- dup type/stringtype eq
- {dup length exch}
- {null}
- ifelse
- /$sname exch def
- /$slen exch def
- /$inVMIndex
- $sname null eq
- {
- 1 index $str cvs
- dup length $slen sub $slen getinterval cvn
- }
- {$sname}
- ifelse def
- end
- {findfont}
- @Stopped
- {
- dup length 8 add string exch
- 1 index 0(BadFont:)putinterval
- 1 index exch 8 exch dup length string cvs putinterval cvn
- {findfont}
- @Stopped
- {pop/Courier findfont}
- if
- }
- if
- $SubstituteFont
- begin
- /$sname null def
- /$slen 0 def
- /$inVMIndex null def
- end
- }bind def
-/isWidthsOnlyFont
- {
- dup/WidthsOnly known
- {pop pop true}
- {
- dup/FDepVector known
- {/FDepVector get{isWidthsOnlyFont dup{exit}if}forall}
- {
- dup/FDArray known
- {/FDArray get{isWidthsOnlyFont dup{exit}if}forall}
- {pop}
- ifelse
- }
- ifelse
- }
- ifelse
- }bind def
-/ct_StyleDicts 4 dict dup begin
- /Adobe-Japan1 4 dict dup begin
- Level2?
- {
- /Serif
- /HeiseiMin-W3-83pv-RKSJ-H/Font resourcestatus
- {pop pop/HeiseiMin-W3}
- {
- /CIDFont/Category resourcestatus
- {
- pop pop
- /HeiseiMin-W3/CIDFont resourcestatus
- {pop pop/HeiseiMin-W3}
- {/Ryumin-Light}
- ifelse
- }
- {/Ryumin-Light}
- ifelse
- }
- ifelse
- def
- /SansSerif
- /HeiseiKakuGo-W5-83pv-RKSJ-H/Font resourcestatus
- {pop pop/HeiseiKakuGo-W5}
- {
- /CIDFont/Category resourcestatus
- {
- pop pop
- /HeiseiKakuGo-W5/CIDFont resourcestatus
- {pop pop/HeiseiKakuGo-W5}
- {/GothicBBB-Medium}
- ifelse
- }
- {/GothicBBB-Medium}
- ifelse
- }
- ifelse
- def
- /HeiseiMaruGo-W4-83pv-RKSJ-H/Font resourcestatus
- {pop pop/HeiseiMaruGo-W4}
- {
- /CIDFont/Category resourcestatus
- {
- pop pop
- /HeiseiMaruGo-W4/CIDFont resourcestatus
- {pop pop/HeiseiMaruGo-W4}
- {
- /Jun101-Light-RKSJ-H/Font resourcestatus
- {pop pop/Jun101-Light}
- {SansSerif}
- ifelse
- }
- ifelse
- }
- {
- /Jun101-Light-RKSJ-H/Font resourcestatus
- {pop pop/Jun101-Light}
- {SansSerif}
- ifelse
- }
- ifelse
- }
- ifelse
- /RoundSansSerif exch def
- /Default Serif def
- }
- {
- /Serif/Ryumin-Light def
- /SansSerif/GothicBBB-Medium def
- {
- (fonts/Jun101-Light-83pv-RKSJ-H)status
- }stopped
- {pop}{
- {pop pop pop pop/Jun101-Light}
- {SansSerif}
- ifelse
- /RoundSansSerif exch def
- }ifelse
- /Default Serif def
- }
- ifelse
- end
- def
- /Adobe-Korea1 4 dict dup begin
- /Serif/HYSMyeongJo-Medium def
- /SansSerif/HYGoThic-Medium def
- /RoundSansSerif SansSerif def
- /Default Serif def
- end
- def
- /Adobe-GB1 4 dict dup begin
- /Serif/STSong-Light def
- /SansSerif/STHeiti-Regular def
- /RoundSansSerif SansSerif def
- /Default Serif def
- end
- def
- /Adobe-CNS1 4 dict dup begin
- /Serif/MKai-Medium def
- /SansSerif/MHei-Medium def
- /RoundSansSerif SansSerif def
- /Default Serif def
- end
- def
-end
-def
-Level2?{currentglobal true setglobal}if
-/ct_BoldRomanWidthProc
- {
- stringwidth 1 index 0 ne{exch .03 add exch}if setcharwidth
- 0 0
- }bind def
-/ct_Type0WidthProc
- {
- dup stringwidth 0 0 moveto
- 2 index true charpath pathbbox
- 0 -1
- 7 index 2 div .88
- setcachedevice2
- pop
- 0 0
- }bind def
-/ct_Type0WMode1WidthProc
- {
- dup stringwidth
- pop 2 div neg -0.88
- 2 copy
- moveto
- 0 -1
- 5 -1 roll true charpath pathbbox
- setcachedevice
- }bind def
-/cHexEncoding
-[/c00/c01/c02/c03/c04/c05/c06/c07/c08/c09/c0A/c0B/c0C/c0D/c0E/c0F/c10/c11/c12
-/c13/c14/c15/c16/c17/c18/c19/c1A/c1B/c1C/c1D/c1E/c1F/c20/c21/c22/c23/c24/c25
-/c26/c27/c28/c29/c2A/c2B/c2C/c2D/c2E/c2F/c30/c31/c32/c33/c34/c35/c36/c37/c38
-/c39/c3A/c3B/c3C/c3D/c3E/c3F/c40/c41/c42/c43/c44/c45/c46/c47/c48/c49/c4A/c4B
-/c4C/c4D/c4E/c4F/c50/c51/c52/c53/c54/c55/c56/c57/c58/c59/c5A/c5B/c5C/c5D/c5E
-/c5F/c60/c61/c62/c63/c64/c65/c66/c67/c68/c69/c6A/c6B/c6C/c6D/c6E/c6F/c70/c71
-/c72/c73/c74/c75/c76/c77/c78/c79/c7A/c7B/c7C/c7D/c7E/c7F/c80/c81/c82/c83/c84
-/c85/c86/c87/c88/c89/c8A/c8B/c8C/c8D/c8E/c8F/c90/c91/c92/c93/c94/c95/c96/c97
-/c98/c99/c9A/c9B/c9C/c9D/c9E/c9F/cA0/cA1/cA2/cA3/cA4/cA5/cA6/cA7/cA8/cA9/cAA
-/cAB/cAC/cAD/cAE/cAF/cB0/cB1/cB2/cB3/cB4/cB5/cB6/cB7/cB8/cB9/cBA/cBB/cBC/cBD
-/cBE/cBF/cC0/cC1/cC2/cC3/cC4/cC5/cC6/cC7/cC8/cC9/cCA/cCB/cCC/cCD/cCE/cCF/cD0
-/cD1/cD2/cD3/cD4/cD5/cD6/cD7/cD8/cD9/cDA/cDB/cDC/cDD/cDE/cDF/cE0/cE1/cE2/cE3
-/cE4/cE5/cE6/cE7/cE8/cE9/cEA/cEB/cEC/cED/cEE/cEF/cF0/cF1/cF2/cF3/cF4/cF5/cF6
-/cF7/cF8/cF9/cFA/cFB/cFC/cFD/cFE/cFF]def
-/ct_BoldBaseFont
- 11 dict begin
- /FontType 3 def
- /FontMatrix[1 0 0 1 0 0]def
- /FontBBox[0 0 1 1]def
- /Encoding cHexEncoding def
- /_setwidthProc/ct_BoldRomanWidthProc load def
- /_bcstr1 1 string def
- /BuildChar
- {
- exch begin
- _basefont setfont
- _bcstr1 dup 0 4 -1 roll put
- dup
- _setwidthProc
- 3 copy
- moveto
- show
- _basefonto setfont
- moveto
- show
- end
- }bind def
- currentdict
- end
-def
-systemdict/composefont known
-{
-/ct_DefineIdentity-H
-{
- /Identity-H/CMap resourcestatus
- {
- pop pop
- }
- {
- /CIDInit/ProcSet findresource begin
- 12 dict begin
- begincmap
- /CIDSystemInfo 3 dict dup begin
- /Registry(Adobe)def
- /Ordering(Identity)def
- /Supplement 0 def
- end def
- /CMapName/Identity-H def
- /CMapVersion 1.000 def
- /CMapType 1 def
- 1 begincodespacerange
- <0000><FFFF>
- endcodespacerange
- 1 begincidrange
- <0000><FFFF>0
- endcidrange
- endcmap
- CMapName currentdict/CMap defineresource pop
- end
- end
- }
- ifelse
-}
-def
-/ct_BoldBaseCIDFont
- 11 dict begin
- /CIDFontType 1 def
- /CIDFontName/ct_BoldBaseCIDFont def
- /FontMatrix[1 0 0 1 0 0]def
- /FontBBox[0 0 1 1]def
- /_setwidthProc/ct_Type0WidthProc load def
- /_bcstr2 2 string def
- /BuildGlyph
- {
- exch begin
- _basefont setfont
- _bcstr2 1 2 index 256 mod put
- _bcstr2 0 3 -1 roll 256 idiv put
- _bcstr2 dup _setwidthProc
- 3 copy
- moveto
- show
- _basefonto setfont
- moveto
- show
- end
- }bind def
- currentdict
- end
-def
-}if
-Level2?{setglobal}if
-/ct_CopyFont{
- {
- 1 index/FID ne 2 index/UniqueID ne and
- {def}{pop pop}ifelse
- }forall
-}bind def
-/ct_Type0CopyFont
-{
- exch
- dup length dict
- begin
- ct_CopyFont
- [
- exch
- FDepVector
- {
- dup/FontType get 0 eq
- {
- 1 index ct_Type0CopyFont
- /_ctType0 exch definefont
- }
- {
- /_ctBaseFont exch
- 2 index exec
- }
- ifelse
- exch
- }
- forall
- pop
- ]
- /FDepVector exch def
- currentdict
- end
-}bind def
-/ct_MakeBoldFont
-{
- dup/ct_SyntheticBold known
- {
- dup length 3 add dict begin
- ct_CopyFont
- /ct_StrokeWidth .03 0 FontMatrix idtransform pop def
- /ct_SyntheticBold true def
- currentdict
- end
- definefont
- }
- {
- dup dup length 3 add dict
- begin
- ct_CopyFont
- /PaintType 2 def
- /StrokeWidth .03 0 FontMatrix idtransform pop def
- /dummybold currentdict
- end
- definefont
- dup/FontType get dup 9 ge exch 11 le and
- {
- ct_BoldBaseCIDFont
- dup length 3 add dict copy begin
- dup/CIDSystemInfo get/CIDSystemInfo exch def
- ct_DefineIdentity-H
- /_Type0Identity/Identity-H 3 -1 roll[exch]composefont
- /_basefont exch def
- /_Type0Identity/Identity-H 3 -1 roll[exch]composefont
- /_basefonto exch def
- currentdict
- end
- /CIDFont defineresource
- }
- {
- ct_BoldBaseFont
- dup length 3 add dict copy begin
- /_basefont exch def
- /_basefonto exch def
- currentdict
- end
- definefont
- }
- ifelse
- }
- ifelse
-}bind def
-/ct_MakeBold{
- 1 index
- 1 index
- findfont
- currentglobal 5 1 roll
- dup gcheck setglobal
- dup
- /FontType get 0 eq
- {
- dup/WMode known{dup/WMode get 1 eq}{false}ifelse
- version length 4 ge
- and
- {version 0 4 getinterval cvi 2015 ge}
- {true}
- ifelse
- {/ct_Type0WidthProc}
- {/ct_Type0WMode1WidthProc}
- ifelse
- ct_BoldBaseFont/_setwidthProc 3 -1 roll load put
- {ct_MakeBoldFont}ct_Type0CopyFont definefont
- }
- {
- dup/_fauxfont known not 1 index/SubstMaster known not and
- {
- ct_BoldBaseFont/_setwidthProc /ct_BoldRomanWidthProc load put
- ct_MakeBoldFont
- }
- {
- 2 index 2 index eq
- {exch pop }
- {
- dup length dict begin
- ct_CopyFont
- currentdict
- end
- definefont
- }
- ifelse
- }
- ifelse
- }
- ifelse
- pop pop pop
- setglobal
-}bind def
-/?str1 256 string def
-/?set
- {
- $SubstituteFont
- begin
- /$substituteFound false def
- /$fontname 1 index def
- /$doSmartSub false def
- end
- dup
- findfont
- $SubstituteFont
- begin
- $substituteFound
- {false}
- {
- dup/FontName known
- {
- dup/FontName get $fontname eq
- 1 index/DistillerFauxFont known not and
- /currentdistillerparams where
- {pop false 2 index isWidthsOnlyFont not and}
- if
- }
- {false}
- ifelse
- }
- ifelse
- exch pop
- /$doSmartSub true def
- end
- {
- 5 1 roll pop pop pop pop
- findfont
- }
- {
- 1 index
- findfont
- dup/FontType get 3 eq
- {
- 6 1 roll pop pop pop pop pop false
- }
- {pop true}
- ifelse
- {
- $SubstituteFont
- begin
- pop pop
- /$styleArray 1 index def
- /$regOrdering 2 index def
- pop pop
- 0 1 $styleArray length 1 sub
- {
- $styleArray exch get
- ct_StyleDicts $regOrdering
- 2 copy known
- {
- get
- exch 2 copy known not
- {pop/Default}
- if
- get
- dup type/nametype eq
- {
- ?str1 cvs length dup 1 add exch
- ?str1 exch(-)putinterval
- exch dup length exch ?str1 exch 3 index exch putinterval
- add ?str1 exch 0 exch getinterval cvn
- }
- {
- pop pop/Unknown
- }
- ifelse
- }
- {
- pop pop pop pop/Unknown
- }
- ifelse
- }
- for
- end
- findfont
- }if
- }
- ifelse
- currentglobal false setglobal 3 1 roll
- null copyfont definefont pop
- setglobal
- }bind def
-setpacking
-userdict/$SubstituteFont 25 dict put
-1 dict
- begin
- /SubstituteFont
- dup $error exch 2 copy known
- {get}
- {pop pop{pop/Courier}bind}
- ifelse def
- /currentdistillerparams where dup
- {
- pop pop
- currentdistillerparams/CannotEmbedFontPolicy 2 copy known
- {get/Error eq}
- {pop pop false}
- ifelse
- }
- if not
- {
- countdictstack array dictstack 0 get
- begin
- userdict
- begin
- $SubstituteFont
- begin
- /$str 128 string def
- /$fontpat 128 string def
- /$slen 0 def
- /$sname null def
- /$match false def
- /$fontname null def
- /$substituteFound false def
- /$inVMIndex null def
- /$doSmartSub true def
- /$depth 0 def
- /$fontname null def
- /$italicangle 26.5 def
- /$dstack null def
- /$Strategies 10 dict dup
- begin
- /$Type3Underprint
- {
- currentglobal exch false setglobal
- 11 dict
- begin
- /UseFont exch
- $WMode 0 ne
- {
- dup length dict copy
- dup/WMode $WMode put
- /UseFont exch definefont
- }
- if def
- /FontName $fontname dup type/stringtype eq{cvn}if def
- /FontType 3 def
- /FontMatrix[.001 0 0 .001 0 0]def
- /Encoding 256 array dup 0 1 255{/.notdef put dup}for pop def
- /FontBBox[0 0 0 0]def
- /CCInfo 7 dict dup
- begin
- /cc null def
- /x 0 def
- /y 0 def
- end def
- /BuildChar
- {
- exch
- begin
- CCInfo
- begin
- 1 string dup 0 3 index put exch pop
- /cc exch def
- UseFont 1000 scalefont setfont
- cc stringwidth/y exch def/x exch def
- x y setcharwidth
- $SubstituteFont/$Strategy get/$Underprint get exec
- 0 0 moveto cc show
- x y moveto
- end
- end
- }bind def
- currentdict
- end
- exch setglobal
- }bind def
- /$GetaTint
- 2 dict dup
- begin
- /$BuildFont
- {
- dup/WMode known
- {dup/WMode get}
- {0}
- ifelse
- /$WMode exch def
- $fontname exch
- dup/FontName known
- {
- dup/FontName get
- dup type/stringtype eq{cvn}if
- }
- {/unnamedfont}
- ifelse
- exch
- Adobe_CoolType_Data/InVMDeepCopiedFonts get
- 1 index/FontName get known
- {
- pop
- Adobe_CoolType_Data/InVMDeepCopiedFonts get
- 1 index get
- null copyfont
- }
- {$deepcopyfont}
- ifelse
- exch 1 index exch/FontBasedOn exch put
- dup/FontName $fontname dup type/stringtype eq{cvn}if put
- definefont
- Adobe_CoolType_Data/InVMDeepCopiedFonts get
- begin
- dup/FontBasedOn get 1 index def
- end
- }bind def
- /$Underprint
- {
- gsave
- x abs y abs gt
- {/y 1000 def}
- {/x -1000 def 500 120 translate}
- ifelse
- Level2?
- {
- [/Separation(All)/DeviceCMYK{0 0 0 1 pop}]
- setcolorspace
- }
- {0 setgray}
- ifelse
- 10 setlinewidth
- x .8 mul
- [7 3]
- {
- y mul 8 div 120 sub x 10 div exch moveto
- 0 y 4 div neg rlineto
- dup 0 rlineto
- 0 y 4 div rlineto
- closepath
- gsave
- Level2?
- {.2 setcolor}
- {.8 setgray}
- ifelse
- fill grestore
- stroke
- }
- forall
- pop
- grestore
- }bind def
- end def
- /$Oblique
- 1 dict dup
- begin
- /$BuildFont
- {
- currentglobal exch dup gcheck setglobal
- null copyfont
- begin
- /FontBasedOn
- currentdict/FontName known
- {
- FontName
- dup type/stringtype eq{cvn}if
- }
- {/unnamedfont}
- ifelse
- def
- /FontName $fontname dup type/stringtype eq{cvn}if def
- /currentdistillerparams where
- {pop}
- {
- /FontInfo currentdict/FontInfo known
- {FontInfo null copyfont}
- {2 dict}
- ifelse
- dup
- begin
- /ItalicAngle $italicangle def
- /FontMatrix FontMatrix
- [1 0 ItalicAngle dup sin exch cos div 1 0 0]
- matrix concatmatrix readonly
- end
- 4 2 roll def
- def
- }
- ifelse
- FontName currentdict
- end
- definefont
- exch setglobal
- }bind def
- end def
- /$None
- 1 dict dup
- begin
- /$BuildFont{}bind def
- end def
- end def
- /$Oblique SetSubstituteStrategy
- /$findfontByEnum
- {
- dup type/stringtype eq{cvn}if
- dup/$fontname exch def
- $sname null eq
- {$str cvs dup length $slen sub $slen getinterval}
- {pop $sname}
- ifelse
- $fontpat dup 0(fonts/*)putinterval exch 7 exch putinterval
- /$match false def
- $SubstituteFont/$dstack countdictstack array dictstack put
- mark
- {
- $fontpat 0 $slen 7 add getinterval
- {/$match exch def exit}
- $str filenameforall
- }
- stopped
- {
- cleardictstack
- currentdict
- true
- $SubstituteFont/$dstack get
- {
- exch
- {
- 1 index eq
- {pop false}
- {true}
- ifelse
- }
- {begin false}
- ifelse
- }
- forall
- pop
- }
- if
- cleartomark
- /$slen 0 def
- $match false ne
- {$match(fonts/)anchorsearch pop pop cvn}
- {/Courier}
- ifelse
- }bind def
- /$ROS 1 dict dup
- begin
- /Adobe 4 dict dup
- begin
- /Japan1 [/Ryumin-Light/HeiseiMin-W3
- /GothicBBB-Medium/HeiseiKakuGo-W5
- /HeiseiMaruGo-W4/Jun101-Light]def
- /Korea1 [/HYSMyeongJo-Medium/HYGoThic-Medium]def
- /GB1 [/STSong-Light/STHeiti-Regular]def
- /CNS1 [/MKai-Medium/MHei-Medium]def
- end def
- end def
- /$cmapname null def
- /$deepcopyfont
- {
- dup/FontType get 0 eq
- {
- 1 dict dup/FontName/copied put copyfont
- begin
- /FDepVector FDepVector copyarray
- 0 1 2 index length 1 sub
- {
- 2 copy get $deepcopyfont
- dup/FontName/copied put
- /copied exch definefont
- 3 copy put pop pop
- }
- for
- def
- currentdict
- end
- }
- {$Strategies/$Type3Underprint get exec}
- ifelse
- }bind def
- /$buildfontname
- {
- dup/CIDFont findresource/CIDSystemInfo get
- begin
- Registry length Ordering length Supplement 8 string cvs
- 3 copy length 2 add add add string
- dup 5 1 roll dup 0 Registry putinterval
- dup 4 index(-)putinterval
- dup 4 index 1 add Ordering putinterval
- 4 2 roll add 1 add 2 copy(-)putinterval
- end
- 1 add 2 copy 0 exch getinterval $cmapname $fontpat cvs exch
- anchorsearch
- {pop pop 3 2 roll putinterval cvn/$cmapname exch def}
- {pop pop pop pop pop}
- ifelse
- length
- $str 1 index(-)putinterval 1 add
- $str 1 index $cmapname $fontpat cvs putinterval
- $cmapname length add
- $str exch 0 exch getinterval cvn
- }bind def
- /$findfontByROS
- {
- /$fontname exch def
- $ROS Registry 2 copy known
- {
- get Ordering 2 copy known
- {get}
- {pop pop[]}
- ifelse
- }
- {pop pop[]}
- ifelse
- false exch
- {
- dup/CIDFont resourcestatus
- {
- pop pop
- save
- 1 index/CIDFont findresource
- dup/WidthsOnly known
- {dup/WidthsOnly get}
- {false}
- ifelse
- exch pop
- exch restore
- {pop}
- {exch pop true exit}
- ifelse
- }
- {pop}
- ifelse
- }
- forall
- {$str cvs $buildfontname}
- {
- false(*)
- {
- save exch
- dup/CIDFont findresource
- dup/WidthsOnly known
- {dup/WidthsOnly get not}
- {true}
- ifelse
- exch/CIDSystemInfo get
- dup/Registry get Registry eq
- exch/Ordering get Ordering eq and and
- {exch restore exch pop true exit}
- {pop restore}
- ifelse
- }
- $str/CIDFont resourceforall
- {$buildfontname}
- {$fontname $findfontByEnum}
- ifelse
- }
- ifelse
- }bind def
- end
- end
- currentdict/$error known currentdict/languagelevel known and dup
- {pop $error/SubstituteFont known}
- if
- dup
- {$error}
- {Adobe_CoolType_Core}
- ifelse
- begin
- {
- /SubstituteFont
- /CMap/Category resourcestatus
- {
- pop pop
- {
- $SubstituteFont
- begin
- /$substituteFound true def
- dup length $slen gt
- $sname null ne or
- $slen 0 gt and
- {
- $sname null eq
- {dup $str cvs dup length $slen sub $slen getinterval cvn}
- {$sname}
- ifelse
- Adobe_CoolType_Data/InVMFontsByCMap get
- 1 index 2 copy known
- {
- get
- false exch
- {
- pop
- currentglobal
- {
- GlobalFontDirectory 1 index known
- {exch pop true exit}
- {pop}
- ifelse
- }
- {
- FontDirectory 1 index known
- {exch pop true exit}
- {
- GlobalFontDirectory 1 index known
- {exch pop true exit}
- {pop}
- ifelse
- }
- ifelse
- }
- ifelse
- }
- forall
- }
- {pop pop false}
- ifelse
- {
- exch pop exch pop
- }
- {
- dup/CMap resourcestatus
- {
- pop pop
- dup/$cmapname exch def
- /CMap findresource/CIDSystemInfo get{def}forall
- $findfontByROS
- }
- {
- 128 string cvs
- dup(-)search
- {
- 3 1 roll search
- {
- 3 1 roll pop
- {dup cvi}
- stopped
- {pop pop pop pop pop $findfontByEnum}
- {
- 4 2 roll pop pop
- exch length
- exch
- 2 index length
- 2 index
- sub
- exch 1 sub -1 0
- {
- $str cvs dup length
- 4 index
- 0
- 4 index
- 4 3 roll add
- getinterval
- exch 1 index exch 3 index exch
- putinterval
- dup/CMap resourcestatus
- {
- pop pop
- 4 1 roll pop pop pop
- dup/$cmapname exch def
- /CMap findresource/CIDSystemInfo get{def}forall
- $findfontByROS
- true exit
- }
- {pop}
- ifelse
- }
- for
- dup type/booleantype eq
- {pop}
- {pop pop pop $findfontByEnum}
- ifelse
- }
- ifelse
- }
- {pop pop pop $findfontByEnum}
- ifelse
- }
- {pop pop $findfontByEnum}
- ifelse
- }
- ifelse
- }
- ifelse
- }
- {//SubstituteFont exec}
- ifelse
- /$slen 0 def
- end
- }
- }
- {
- {
- $SubstituteFont
- begin
- /$substituteFound true def
- dup length $slen gt
- $sname null ne or
- $slen 0 gt and
- {$findfontByEnum}
- {//SubstituteFont exec}
- ifelse
- end
- }
- }
- ifelse
- bind readonly def
- Adobe_CoolType_Core/scfindfont/systemfindfont load put
- }
- {
- /scfindfont
- {
- $SubstituteFont
- begin
- dup systemfindfont
- dup/FontName known
- {dup/FontName get dup 3 index ne}
- {/noname true}
- ifelse
- dup
- {
- /$origfontnamefound 2 index def
- /$origfontname 4 index def/$substituteFound true def
- }
- if
- exch pop
- {
- $slen 0 gt
- $sname null ne
- 3 index length $slen gt or and
- {
- pop dup $findfontByEnum findfont
- dup maxlength 1 add dict
- begin
- {1 index/FID eq{pop pop}{def}ifelse}
- forall
- currentdict
- end
- definefont
- dup/FontName known{dup/FontName get}{null}ifelse
- $origfontnamefound ne
- {
- $origfontname $str cvs print
- ( substitution revised, using )print
- dup/FontName known
- {dup/FontName get}{(unspecified font)}
- ifelse
- $str cvs print(.\n)print
- }
- if
- }
- {exch pop}
- ifelse
- }
- {exch pop}
- ifelse
- end
- }bind def
- }
- ifelse
- end
- end
- Adobe_CoolType_Core_Defined not
- {
- Adobe_CoolType_Core/findfont
- {
- $SubstituteFont
- begin
- $depth 0 eq
- {
- /$fontname 1 index dup type/stringtype ne{$str cvs}if def
- /$substituteFound false def
- }
- if
- /$depth $depth 1 add def
- end
- scfindfont
- $SubstituteFont
- begin
- /$depth $depth 1 sub def
- $substituteFound $depth 0 eq and
- {
- $inVMIndex null ne
- {dup $inVMIndex $AddInVMFont}
- if
- $doSmartSub
- {
- currentdict/$Strategy known
- {$Strategy/$BuildFont get exec}
- if
- }
- if
- }
- if
- end
- }bind put
- }
- if
- }
- if
- end
-/$AddInVMFont
- {
- exch/FontName 2 copy known
- {
- get
- 1 dict dup begin exch 1 index gcheck def end exch
- Adobe_CoolType_Data/InVMFontsByCMap get exch
- $DictAdd
- }
- {pop pop pop}
- ifelse
- }bind def
-/$DictAdd
- {
- 2 copy known not
- {2 copy 4 index length dict put}
- if
- Level2? not
- {
- 2 copy get dup maxlength exch length 4 index length add lt
- 2 copy get dup length 4 index length add exch maxlength 1 index lt
- {
- 2 mul dict
- begin
- 2 copy get{forall}def
- 2 copy currentdict put
- end
- }
- {pop}
- ifelse
- }
- if
- get
- begin
- {def}
- forall
- end
- }bind def
-end
-end
-%%EndResource
-currentglobal true setglobal
-%%BeginResource: procset Adobe_CoolType_Utility_MAKEOCF 1.23 0
-%%Copyright: Copyright 1987-2006 Adobe Systems Incorporated.
-%%Version: 1.23 0
-systemdict/languagelevel known dup
- {currentglobal false setglobal}
- {false}
-ifelse
-exch
-userdict/Adobe_CoolType_Utility 2 copy known
- {2 copy get dup maxlength 27 add dict copy}
- {27 dict}
-ifelse put
-Adobe_CoolType_Utility
- begin
- /@eexecStartData
- <BAB431EA07F209EB8C4348311481D9D3F76E3D15246555577D87BC510ED54E
- 118C39697FA9F6DB58128E60EB8A12FA24D7CDD2FA94D221FA9EC8DA3E5E6A1C
- 4ACECC8C2D39C54E7C946031DD156C3A6B4A09AD29E1867A>def
- /@recognizeCIDFont null def
- /ct_Level2? exch def
- /ct_Clone? 1183615869 internaldict dup
- /CCRun known not
- exch/eCCRun known not
- ct_Level2? and or def
-ct_Level2?
- {globaldict begin currentglobal true setglobal}
-if
- /ct_AddStdCIDMap
- ct_Level2?
- {{
- mark
- Adobe_CoolType_Utility/@recognizeCIDFont currentdict put
- {
- ((Hex)57 StartData
- 0615 1e27 2c39 1c60 d8a8 cc31 fe2b f6e0
- 7aa3 e541 e21c 60d8 a8c9 c3d0 6d9e 1c60
- d8a8 c9c2 02d7 9a1c 60d8 a849 1c60 d8a8
- cc36 74f4 1144 b13b 77)0()/SubFileDecode filter cvx exec
- }
- stopped
- {
- cleartomark
- Adobe_CoolType_Utility/@recognizeCIDFont get
- countdictstack dup array dictstack
- exch 1 sub -1 0
- {
- 2 copy get 3 index eq
- {1 index length exch sub 1 sub{end}repeat exit}
- {pop}
- ifelse
- }
- for
- pop pop
- Adobe_CoolType_Utility/@eexecStartData get eexec
- }
- {cleartomark}
- ifelse
- }}
- {{
- Adobe_CoolType_Utility/@eexecStartData get eexec
- }}
- ifelse bind def
-userdict/cid_extensions known
-dup{cid_extensions/cid_UpdateDB known and}if
- {
- cid_extensions
- begin
- /cid_GetCIDSystemInfo
- {
- 1 index type/stringtype eq
- {exch cvn exch}
- if
- cid_extensions
- begin
- dup load 2 index known
- {
- 2 copy
- cid_GetStatusInfo
- dup null ne
- {
- 1 index load
- 3 index get
- dup null eq
- {pop pop cid_UpdateDB}
- {
- exch
- 1 index/Created get eq
- {exch pop exch pop}
- {pop cid_UpdateDB}
- ifelse
- }
- ifelse
- }
- {pop cid_UpdateDB}
- ifelse
- }
- {cid_UpdateDB}
- ifelse
- end
- }bind def
- end
- }
-if
-ct_Level2?
- {end setglobal}
-if
- /ct_UseNativeCapability? systemdict/composefont known def
- /ct_MakeOCF 35 dict def
- /ct_Vars 25 dict def
- /ct_GlyphDirProcs 6 dict def
- /ct_BuildCharDict 15 dict dup
- begin
- /charcode 2 string def
- /dst_string 1500 string def
- /nullstring()def
- /usewidths? true def
- end def
- ct_Level2?{setglobal}{pop}ifelse
- ct_GlyphDirProcs
- begin
- /GetGlyphDirectory
- {
- systemdict/languagelevel known
- {pop/CIDFont findresource/GlyphDirectory get}
- {
- 1 index/CIDFont findresource/GlyphDirectory
- get dup type/dicttype eq
- {
- dup dup maxlength exch length sub 2 index lt
- {
- dup length 2 index add dict copy 2 index
- /CIDFont findresource/GlyphDirectory 2 index put
- }
- if
- }
- if
- exch pop exch pop
- }
- ifelse
- +
- }def
- /+
- {
- systemdict/languagelevel known
- {
- currentglobal false setglobal
- 3 dict begin
- /vm exch def
- }
- {1 dict begin}
- ifelse
- /$ exch def
- systemdict/languagelevel known
- {
- vm setglobal
- /gvm currentglobal def
- $ gcheck setglobal
- }
- if
- ?{$ begin}if
- }def
- /?{$ type/dicttype eq}def
- /|{
- userdict/Adobe_CoolType_Data known
- {
- Adobe_CoolType_Data/AddWidths? known
- {
- currentdict Adobe_CoolType_Data
- begin
- begin
- AddWidths?
- {
- Adobe_CoolType_Data/CC 3 index put
- ?{def}{$ 3 1 roll put}ifelse
- CC charcode exch 1 index 0 2 index 256 idiv put
- 1 index exch 1 exch 256 mod put
- stringwidth 2 array astore
- currentfont/Widths get exch CC exch put
- }
- {?{def}{$ 3 1 roll put}ifelse}
- ifelse
- end
- end
- }
- {?{def}{$ 3 1 roll put}ifelse} ifelse
- }
- {?{def}{$ 3 1 roll put}ifelse}
- ifelse
- }def
- /!
- {
- ?{end}if
- systemdict/languagelevel known
- {gvm setglobal}
- if
- end
- }def
- /:{string currentfile exch readstring pop}executeonly def
- end
- ct_MakeOCF
- begin
- /ct_cHexEncoding
- [/c00/c01/c02/c03/c04/c05/c06/c07/c08/c09/c0A/c0B/c0C/c0D/c0E/c0F/c10/c11/c12
- /c13/c14/c15/c16/c17/c18/c19/c1A/c1B/c1C/c1D/c1E/c1F/c20/c21/c22/c23/c24/c25
- /c26/c27/c28/c29/c2A/c2B/c2C/c2D/c2E/c2F/c30/c31/c32/c33/c34/c35/c36/c37/c38
- /c39/c3A/c3B/c3C/c3D/c3E/c3F/c40/c41/c42/c43/c44/c45/c46/c47/c48/c49/c4A/c4B
- /c4C/c4D/c4E/c4F/c50/c51/c52/c53/c54/c55/c56/c57/c58/c59/c5A/c5B/c5C/c5D/c5E
- /c5F/c60/c61/c62/c63/c64/c65/c66/c67/c68/c69/c6A/c6B/c6C/c6D/c6E/c6F/c70/c71
- /c72/c73/c74/c75/c76/c77/c78/c79/c7A/c7B/c7C/c7D/c7E/c7F/c80/c81/c82/c83/c84
- /c85/c86/c87/c88/c89/c8A/c8B/c8C/c8D/c8E/c8F/c90/c91/c92/c93/c94/c95/c96/c97
- /c98/c99/c9A/c9B/c9C/c9D/c9E/c9F/cA0/cA1/cA2/cA3/cA4/cA5/cA6/cA7/cA8/cA9/cAA
- /cAB/cAC/cAD/cAE/cAF/cB0/cB1/cB2/cB3/cB4/cB5/cB6/cB7/cB8/cB9/cBA/cBB/cBC/cBD
- /cBE/cBF/cC0/cC1/cC2/cC3/cC4/cC5/cC6/cC7/cC8/cC9/cCA/cCB/cCC/cCD/cCE/cCF/cD0
- /cD1/cD2/cD3/cD4/cD5/cD6/cD7/cD8/cD9/cDA/cDB/cDC/cDD/cDE/cDF/cE0/cE1/cE2/cE3
- /cE4/cE5/cE6/cE7/cE8/cE9/cEA/cEB/cEC/cED/cEE/cEF/cF0/cF1/cF2/cF3/cF4/cF5/cF6
- /cF7/cF8/cF9/cFA/cFB/cFC/cFD/cFE/cFF]def
- /ct_CID_STR_SIZE 8000 def
- /ct_mkocfStr100 100 string def
- /ct_defaultFontMtx[.001 0 0 .001 0 0]def
- /ct_1000Mtx[1000 0 0 1000 0 0]def
- /ct_raise{exch cvx exch errordict exch get exec stop}bind def
- /ct_reraise
- {cvx $error/errorname get(Error: )print dup( )cvs print
- errordict exch get exec stop
- }bind def
- /ct_cvnsi
- {
- 1 index add 1 sub 1 exch 0 4 1 roll
- {
- 2 index exch get
- exch 8 bitshift
- add
- }
- for
- exch pop
- }bind def
- /ct_GetInterval
- {
- Adobe_CoolType_Utility/ct_BuildCharDict get
- begin
- /dst_index 0 def
- dup dst_string length gt
- {dup string/dst_string exch def}
- if
- 1 index ct_CID_STR_SIZE idiv
- /arrayIndex exch def
- 2 index arrayIndex get
- 2 index
- arrayIndex ct_CID_STR_SIZE mul
- sub
- {
- dup 3 index add 2 index length le
- {
- 2 index getinterval
- dst_string dst_index 2 index putinterval
- length dst_index add/dst_index exch def
- exit
- }
- {
- 1 index length 1 index sub
- dup 4 1 roll
- getinterval
- dst_string dst_index 2 index putinterval
- pop dup dst_index add/dst_index exch def
- sub
- /arrayIndex arrayIndex 1 add def
- 2 index dup length arrayIndex gt
- {arrayIndex get}
- {
- pop
- exit
- }
- ifelse
- 0
- }
- ifelse
- }
- loop
- pop pop pop
- dst_string 0 dst_index getinterval
- end
- }bind def
- ct_Level2?
- {
- /ct_resourcestatus
- currentglobal mark true setglobal
- {/unknowninstancename/Category resourcestatus}
- stopped
- {cleartomark setglobal true}
- {cleartomark currentglobal not exch setglobal}
- ifelse
- {
- {
- mark 3 1 roll/Category findresource
- begin
- ct_Vars/vm currentglobal put
- ({ResourceStatus}stopped)0()/SubFileDecode filter cvx exec
- {cleartomark false}
- {{3 2 roll pop true}{cleartomark false}ifelse}
- ifelse
- ct_Vars/vm get setglobal
- end
- }
- }
- {{resourcestatus}}
- ifelse bind def
- /CIDFont/Category ct_resourcestatus
- {pop pop}
- {
- currentglobal true setglobal
- /Generic/Category findresource
- dup length dict copy
- dup/InstanceType/dicttype put
- /CIDFont exch/Category defineresource pop
- setglobal
- }
- ifelse
- ct_UseNativeCapability?
- {
- /CIDInit/ProcSet findresource begin
- 12 dict begin
- begincmap
- /CIDSystemInfo 3 dict dup begin
- /Registry(Adobe)def
- /Ordering(Identity)def
- /Supplement 0 def
- end def
- /CMapName/Identity-H def
- /CMapVersion 1.000 def
- /CMapType 1 def
- 1 begincodespacerange
- <0000><FFFF>
- endcodespacerange
- 1 begincidrange
- <0000><FFFF>0
- endcidrange
- endcmap
- CMapName currentdict/CMap defineresource pop
- end
- end
- }
- if
- }
- {
- /ct_Category 2 dict begin
- /CIDFont 10 dict def
- /ProcSet 2 dict def
- currentdict
- end
- def
- /defineresource
- {
- ct_Category 1 index 2 copy known
- {
- get
- dup dup maxlength exch length eq
- {
- dup length 10 add dict copy
- ct_Category 2 index 2 index put
- }
- if
- 3 index 3 index put
- pop exch pop
- }
- {pop pop/defineresource/undefined ct_raise}
- ifelse
- }bind def
- /findresource
- {
- ct_Category 1 index 2 copy known
- {
- get
- 2 index 2 copy known
- {get 3 1 roll pop pop}
- {pop pop/findresource/undefinedresource ct_raise}
- ifelse
- }
- {pop pop/findresource/undefined ct_raise}
- ifelse
- }bind def
- /resourcestatus
- {
- ct_Category 1 index 2 copy known
- {
- get
- 2 index known
- exch pop exch pop
- {
- 0 -1 true
- }
- {
- false
- }
- ifelse
- }
- {pop pop/findresource/undefined ct_raise}
- ifelse
- }bind def
- /ct_resourcestatus/resourcestatus load def
- }
- ifelse
- /ct_CIDInit 2 dict
- begin
- /ct_cidfont_stream_init
- {
- {
- dup(Binary)eq
- {
- pop
- null
- currentfile
- ct_Level2?
- {
- {cid_BYTE_COUNT()/SubFileDecode filter}
- stopped
- {pop pop pop}
- if
- }
- if
- /readstring load
- exit
- }
- if
- dup(Hex)eq
- {
- pop
- currentfile
- ct_Level2?
- {
- {null exch/ASCIIHexDecode filter/readstring}
- stopped
- {pop exch pop(>)exch/readhexstring}
- if
- }
- {(>)exch/readhexstring}
- ifelse
- load
- exit
- }
- if
- /StartData/typecheck ct_raise
- }
- loop
- cid_BYTE_COUNT ct_CID_STR_SIZE le
- {
- 2 copy cid_BYTE_COUNT string exch exec
- pop
- 1 array dup
- 3 -1 roll
- 0 exch put
- }
- {
- cid_BYTE_COUNT ct_CID_STR_SIZE div ceiling cvi
- dup array exch 2 sub 0 exch 1 exch
- {
- 2 copy
- 5 index
- ct_CID_STR_SIZE
- string
- 6 index exec
- pop
- put
- pop
- }
- for
- 2 index
- cid_BYTE_COUNT ct_CID_STR_SIZE mod string
- 3 index exec
- pop
- 1 index exch
- 1 index length 1 sub
- exch put
- }
- ifelse
- cid_CIDFONT exch/GlyphData exch put
- 2 index null eq
- {
- pop pop pop
- }
- {
- pop/readstring load
- 1 string exch
- {
- 3 copy exec
- pop
- dup length 0 eq
- {
- pop pop pop pop pop
- true exit
- }
- if
- 4 index
- eq
- {
- pop pop pop pop
- false exit
- }
- if
- }
- loop
- pop
- }
- ifelse
- }bind def
- /StartData
- {
- mark
- {
- currentdict
- dup/FDArray get 0 get/FontMatrix get
- 0 get 0.001 eq
- {
- dup/CDevProc known not
- {
- /CDevProc 1183615869 internaldict/stdCDevProc 2 copy known
- {get}
- {
- pop pop
- {pop pop pop pop pop 0 -1000 7 index 2 div 880}
- }
- ifelse
- def
- }
- if
- }
- {
- /CDevProc
- {
- pop pop pop pop pop
- 0
- 1 cid_temp/cid_CIDFONT get
- /FDArray get 0 get
- /FontMatrix get 0 get div
- 7 index 2 div
- 1 index 0.88 mul
- }def
- }
- ifelse
- /cid_temp 15 dict def
- cid_temp
- begin
- /cid_CIDFONT exch def
- 3 copy pop
- dup/cid_BYTE_COUNT exch def 0 gt
- {
- ct_cidfont_stream_init
- FDArray
- {
- /Private get
- dup/SubrMapOffset known
- {
- begin
- /Subrs SubrCount array def
- Subrs
- SubrMapOffset
- SubrCount
- SDBytes
- ct_Level2?
- {
- currentdict dup/SubrMapOffset undef
- dup/SubrCount undef
- /SDBytes undef
- }
- if
- end
- /cid_SD_BYTES exch def
- /cid_SUBR_COUNT exch def
- /cid_SUBR_MAP_OFFSET exch def
- /cid_SUBRS exch def
- cid_SUBR_COUNT 0 gt
- {
- GlyphData cid_SUBR_MAP_OFFSET cid_SD_BYTES ct_GetInterval
- 0 cid_SD_BYTES ct_cvnsi
- 0 1 cid_SUBR_COUNT 1 sub
- {
- exch 1 index
- 1 add
- cid_SD_BYTES mul cid_SUBR_MAP_OFFSET add
- GlyphData exch cid_SD_BYTES ct_GetInterval
- 0 cid_SD_BYTES ct_cvnsi
- cid_SUBRS 4 2 roll
- GlyphData exch
- 4 index
- 1 index
- sub
- ct_GetInterval
- dup length string copy put
- }
- for
- pop
- }
- if
- }
- {pop}
- ifelse
- }
- forall
- }
- if
- cleartomark pop pop
- end
- CIDFontName currentdict/CIDFont defineresource pop
- end end
- }
- stopped
- {cleartomark/StartData ct_reraise}
- if
- }bind def
- currentdict
- end def
- /ct_saveCIDInit
- {
- /CIDInit/ProcSet ct_resourcestatus
- {true}
- {/CIDInitC/ProcSet ct_resourcestatus}
- ifelse
- {
- pop pop
- /CIDInit/ProcSet findresource
- ct_UseNativeCapability?
- {pop null}
- {/CIDInit ct_CIDInit/ProcSet defineresource pop}
- ifelse
- }
- {/CIDInit ct_CIDInit/ProcSet defineresource pop null}
- ifelse
- ct_Vars exch/ct_oldCIDInit exch put
- }bind def
- /ct_restoreCIDInit
- {
- ct_Vars/ct_oldCIDInit get dup null ne
- {/CIDInit exch/ProcSet defineresource pop}
- {pop}
- ifelse
- }bind def
- /ct_BuildCharSetUp
- {
- 1 index
- begin
- CIDFont
- begin
- Adobe_CoolType_Utility/ct_BuildCharDict get
- begin
- /ct_dfCharCode exch def
- /ct_dfDict exch def
- CIDFirstByte ct_dfCharCode add
- dup CIDCount ge
- {pop 0}
- if
- /cid exch def
- {
- GlyphDirectory cid 2 copy known
- {get}
- {pop pop nullstring}
- ifelse
- dup length FDBytes sub 0 gt
- {
- dup
- FDBytes 0 ne
- {0 FDBytes ct_cvnsi}
- {pop 0}
- ifelse
- /fdIndex exch def
- dup length FDBytes sub FDBytes exch getinterval
- /charstring exch def
- exit
- }
- {
- pop
- cid 0 eq
- {/charstring nullstring def exit}
- if
- /cid 0 def
- }
- ifelse
- }
- loop
- }def
- /ct_SetCacheDevice
- {
- 0 0 moveto
- dup stringwidth
- 3 -1 roll
- true charpath
- pathbbox
- 0 -1000
- 7 index 2 div 880
- setcachedevice2
- 0 0 moveto
- }def
- /ct_CloneSetCacheProc
- {
- 1 eq
- {
- stringwidth
- pop -2 div -880
- 0 -1000 setcharwidth
- moveto
- }
- {
- usewidths?
- {
- currentfont/Widths get cid
- 2 copy known
- {get exch pop aload pop}
- {pop pop stringwidth}
- ifelse
- }
- {stringwidth}
- ifelse
- setcharwidth
- 0 0 moveto
- }
- ifelse
- }def
- /ct_Type3ShowCharString
- {
- ct_FDDict fdIndex 2 copy known
- {get}
- {
- currentglobal 3 1 roll
- 1 index gcheck setglobal
- ct_Type1FontTemplate dup maxlength dict copy
- begin
- FDArray fdIndex get
- dup/FontMatrix 2 copy known
- {get}
- {pop pop ct_defaultFontMtx}
- ifelse
- /FontMatrix exch dup length array copy def
- /Private get
- /Private exch def
- /Widths rootfont/Widths get def
- /CharStrings 1 dict dup/.notdef
- <d841272cf18f54fc13>dup length string copy put def
- currentdict
- end
- /ct_Type1Font exch definefont
- dup 5 1 roll put
- setglobal
- }
- ifelse
- dup/CharStrings get 1 index/Encoding get
- ct_dfCharCode get charstring put
- rootfont/WMode 2 copy known
- {get}
- {pop pop 0}
- ifelse
- exch
- 1000 scalefont setfont
- ct_str1 0 ct_dfCharCode put
- ct_str1 exch ct_dfSetCacheProc
- ct_SyntheticBold
- {
- currentpoint
- ct_str1 show
- newpath
- moveto
- ct_str1 true charpath
- ct_StrokeWidth setlinewidth
- stroke
- }
- {ct_str1 show}
- ifelse
- }def
- /ct_Type4ShowCharString
- {
- ct_dfDict ct_dfCharCode charstring
- FDArray fdIndex get
- dup/FontMatrix get dup ct_defaultFontMtx ct_matrixeq not
- {ct_1000Mtx matrix concatmatrix concat}
- {pop}
- ifelse
- /Private get
- Adobe_CoolType_Utility/ct_Level2? get not
- {
- ct_dfDict/Private
- 3 -1 roll
- {put}
- 1183615869 internaldict/superexec get exec
- }
- if
- 1183615869 internaldict
- Adobe_CoolType_Utility/ct_Level2? get
- {1 index}
- {3 index/Private get mark 6 1 roll}
- ifelse
- dup/RunInt known
- {/RunInt get}
- {pop/CCRun}
- ifelse
- get exec
- Adobe_CoolType_Utility/ct_Level2? get not
- {cleartomark}
- if
- }bind def
- /ct_BuildCharIncremental
- {
- {
- Adobe_CoolType_Utility/ct_MakeOCF get begin
- ct_BuildCharSetUp
- ct_ShowCharString
- }
- stopped
- {stop}
- if
- end
- end
- end
- end
- }bind def
- /BaseFontNameStr(BF00)def
- /ct_Type1FontTemplate 14 dict
- begin
- /FontType 1 def
- /FontMatrix [0.001 0 0 0.001 0 0]def
- /FontBBox [-250 -250 1250 1250]def
- /Encoding ct_cHexEncoding def
- /PaintType 0 def
- currentdict
- end def
- /BaseFontTemplate 11 dict
- begin
- /FontMatrix [0.001 0 0 0.001 0 0]def
- /FontBBox [-250 -250 1250 1250]def
- /Encoding ct_cHexEncoding def
- /BuildChar/ct_BuildCharIncremental load def
- ct_Clone?
- {
- /FontType 3 def
- /ct_ShowCharString/ct_Type3ShowCharString load def
- /ct_dfSetCacheProc/ct_CloneSetCacheProc load def
- /ct_SyntheticBold false def
- /ct_StrokeWidth 1 def
- }
- {
- /FontType 4 def
- /Private 1 dict dup/lenIV 4 put def
- /CharStrings 1 dict dup/.notdef<d841272cf18f54fc13>put def
- /PaintType 0 def
- /ct_ShowCharString/ct_Type4ShowCharString load def
- }
- ifelse
- /ct_str1 1 string def
- currentdict
- end def
- /BaseFontDictSize BaseFontTemplate length 5 add def
- /ct_matrixeq
- {
- true 0 1 5
- {
- dup 4 index exch get exch 3 index exch get eq and
- dup not
- {exit}
- if
- }
- for
- exch pop exch pop
- }bind def
- /ct_makeocf
- {
- 15 dict
- begin
- exch/WMode exch def
- exch/FontName exch def
- /FontType 0 def
- /FMapType 2 def
- dup/FontMatrix known
- {dup/FontMatrix get/FontMatrix exch def}
- {/FontMatrix matrix def}
- ifelse
- /bfCount 1 index/CIDCount get 256 idiv 1 add
- dup 256 gt{pop 256}if def
- /Encoding
- 256 array 0 1 bfCount 1 sub{2 copy dup put pop}for
- bfCount 1 255{2 copy bfCount put pop}for
- def
- /FDepVector bfCount dup 256 lt{1 add}if array def
- BaseFontTemplate BaseFontDictSize dict copy
- begin
- /CIDFont exch def
- CIDFont/FontBBox known
- {CIDFont/FontBBox get/FontBBox exch def}
- if
- CIDFont/CDevProc known
- {CIDFont/CDevProc get/CDevProc exch def}
- if
- currentdict
- end
- BaseFontNameStr 3(0)putinterval
- 0 1 bfCount dup 256 eq{1 sub}if
- {
- FDepVector exch
- 2 index BaseFontDictSize dict copy
- begin
- dup/CIDFirstByte exch 256 mul def
- FontType 3 eq
- {/ct_FDDict 2 dict def}
- if
- currentdict
- end
- 1 index 16
- BaseFontNameStr 2 2 getinterval cvrs pop
- BaseFontNameStr exch definefont
- put
- }
- for
- ct_Clone?
- {/Widths 1 index/CIDFont get/GlyphDirectory get length dict def}
- if
- FontName
- currentdict
- end
- definefont
- ct_Clone?
- {
- gsave
- dup 1000 scalefont setfont
- ct_BuildCharDict
- begin
- /usewidths? false def
- currentfont/Widths get
- begin
- exch/CIDFont get/GlyphDirectory get
- {
- pop
- dup charcode exch 1 index 0 2 index 256 idiv put
- 1 index exch 1 exch 256 mod put
- stringwidth 2 array astore def
- }
- forall
- end
- /usewidths? true def
- end
- grestore
- }
- {exch pop}
- ifelse
- }bind def
- currentglobal true setglobal
- /ct_ComposeFont
- {
- ct_UseNativeCapability?
- {
- 2 index/CMap ct_resourcestatus
- {pop pop exch pop}
- {
- /CIDInit/ProcSet findresource
- begin
- 12 dict
- begin
- begincmap
- /CMapName 3 index def
- /CMapVersion 1.000 def
- /CMapType 1 def
- exch/WMode exch def
- /CIDSystemInfo 3 dict dup
- begin
- /Registry(Adobe)def
- /Ordering
- CMapName ct_mkocfStr100 cvs
- (Adobe-)search
- {
- pop pop
- (-)search
- {
- dup length string copy
- exch pop exch pop
- }
- {pop(Identity)}
- ifelse
- }
- {pop (Identity)}
- ifelse
- def
- /Supplement 0 def
- end def
- 1 begincodespacerange
- <0000><FFFF>
- endcodespacerange
- 1 begincidrange
- <0000><FFFF>0
- endcidrange
- endcmap
- CMapName currentdict/CMap defineresource pop
- end
- end
- }
- ifelse
- composefont
- }
- {
- 3 2 roll pop
- 0 get/CIDFont findresource
- ct_makeocf
- }
- ifelse
- }bind def
- setglobal
- /ct_MakeIdentity
- {
- ct_UseNativeCapability?
- {
- 1 index/CMap ct_resourcestatus
- {pop pop}
- {
- /CIDInit/ProcSet findresource begin
- 12 dict begin
- begincmap
- /CMapName 2 index def
- /CMapVersion 1.000 def
- /CMapType 1 def
- /CIDSystemInfo 3 dict dup
- begin
- /Registry(Adobe)def
- /Ordering
- CMapName ct_mkocfStr100 cvs
- (Adobe-)search
- {
- pop pop
- (-)search
- {dup length string copy exch pop exch pop}
- {pop(Identity)}
- ifelse
- }
- {pop(Identity)}
- ifelse
- def
- /Supplement 0 def
- end def
- 1 begincodespacerange
- <0000><FFFF>
- endcodespacerange
- 1 begincidrange
- <0000><FFFF>0
- endcidrange
- endcmap
- CMapName currentdict/CMap defineresource pop
- end
- end
- }
- ifelse
- composefont
- }
- {
- exch pop
- 0 get/CIDFont findresource
- ct_makeocf
- }
- ifelse
- }bind def
- currentdict readonly pop
- end
- end
-%%EndResource
-setglobal
-%%BeginResource: procset Adobe_CoolType_Utility_T42 1.0 0
-%%Copyright: Copyright 1987-2004 Adobe Systems Incorporated.
-%%Version: 1.0 0
-userdict/ct_T42Dict 15 dict put
-ct_T42Dict begin
-/Is2015?
-{
- version
- cvi
- 2015
- ge
-}bind def
-/AllocGlyphStorage
-{
- Is2015?
- {
- pop
- }
- {
- {string}forall
- }ifelse
-}bind def
-/Type42DictBegin
-{
-25 dict begin
- /FontName exch def
- /CharStrings 256 dict
-begin
- /.notdef 0 def
- currentdict
-end def
- /Encoding exch def
- /PaintType 0 def
- /FontType 42 def
- /FontMatrix[1 0 0 1 0 0]def
- 4 array astore cvx/FontBBox exch def
- /sfnts
-}bind def
-/Type42DictEnd
-{
- currentdict dup/FontName get exch definefont end
-ct_T42Dict exch
-dup/FontName get exch put
-}bind def
-/RD{string currentfile exch readstring pop}executeonly def
-/PrepFor2015
-{
-Is2015?
-{
- /GlyphDirectory
- 16
- dict def
- sfnts 0 get
- dup
- 2 index
- (glyx)
- putinterval
- 2 index
- (locx)
- putinterval
- pop
- pop
-}
-{
- pop
- pop
-}ifelse
-}bind def
-/AddT42Char
-{
-Is2015?
-{
- /GlyphDirectory get
- begin
- def
- end
- pop
- pop
-}
-{
- /sfnts get
- 4 index
- get
- 3 index
- 2 index
- putinterval
- pop
- pop
- pop
- pop
-}ifelse
-}bind def
-/T0AddT42Mtx2
-{
-/CIDFont findresource/Metrics2 get begin def end
-}bind def
-end
-%%EndResource
-currentglobal true setglobal
-%%BeginFile: MMFauxFont.prc
-%%Copyright: Copyright 1987-2001 Adobe Systems Incorporated.
-%%All Rights Reserved.
-userdict /ct_EuroDict 10 dict put
-ct_EuroDict begin
-/ct_CopyFont
-{
- { 1 index /FID ne {def} {pop pop} ifelse} forall
-} def
-/ct_GetGlyphOutline
-{
- gsave
- initmatrix newpath
- exch findfont dup
- length 1 add dict
- begin
- ct_CopyFont
- /Encoding Encoding dup length array copy
- dup
- 4 -1 roll
- 0 exch put
- def
- currentdict
- end
- /ct_EuroFont exch definefont
- 1000 scalefont setfont
- 0 0 moveto
- [
- <00> stringwidth
- <00> false charpath
- pathbbox
- [
- {/m cvx} {/l cvx} {/c cvx} {/cp cvx} pathforall
- grestore
- counttomark 8 add
-}
-def
-/ct_MakeGlyphProc
-{
- ] cvx
- /ct_PSBuildGlyph cvx
- ] cvx
-} def
-/ct_PSBuildGlyph
-{
- gsave
- 8 -1 roll pop
- 7 1 roll
- 6 -2 roll ct_FontMatrix transform 6 2 roll
- 4 -2 roll ct_FontMatrix transform 4 2 roll
- ct_FontMatrix transform
- currentdict /PaintType 2 copy known {get 2 eq}{pop pop false} ifelse
- dup 9 1 roll
- {
- currentdict /StrokeWidth 2 copy known
- {
- get 2 div
- 0 ct_FontMatrix dtransform pop
- 5 1 roll
- 4 -1 roll 4 index sub
- 4 1 roll
- 3 -1 roll 4 index sub
- 3 1 roll
- exch 4 index add exch
- 4 index add
- 5 -1 roll pop
- }
- {
- pop pop
- }
- ifelse
- }
- if
- setcachedevice
- ct_FontMatrix concat
- ct_PSPathOps begin
- exec
- end
- {
- currentdict /StrokeWidth 2 copy known
- { get }
- { pop pop 0 }
- ifelse
- setlinewidth stroke
- }
- {
- fill
- }
- ifelse
- grestore
-} def
-/ct_PSPathOps 4 dict dup begin
- /m {moveto} def
- /l {lineto} def
- /c {curveto} def
- /cp {closepath} def
-end
-def
-/ct_matrix1000 [1000 0 0 1000 0 0] def
-/ct_AddGlyphProc
-{
- 2 index findfont dup length 4 add dict
- begin
- ct_CopyFont
- /CharStrings CharStrings dup length 1 add dict copy
- begin
- 3 1 roll def
- currentdict
- end
- def
- /ct_FontMatrix ct_matrix1000 FontMatrix matrix concatmatrix def
- /ct_PSBuildGlyph /ct_PSBuildGlyph load def
- /ct_PSPathOps /ct_PSPathOps load def
- currentdict
- end
- definefont pop
-}
-def
-systemdict /languagelevel known
-{
- /ct_AddGlyphToPrinterFont {
- 2 copy
- ct_GetGlyphOutline 3 add -1 roll restore
- ct_MakeGlyphProc
- ct_AddGlyphProc
- } def
-}
-{
- /ct_AddGlyphToPrinterFont {
- pop pop restore
- Adobe_CTFauxDict /$$$FONTNAME get
- /Euro
- Adobe_CTFauxDict /$$$SUBSTITUTEBASE get
- ct_EuroDict exch get
- ct_AddGlyphProc
- } def
-} ifelse
-/AdobeSansMM
-{
-556 0 24 -19 541 703
- {
- 541 628 m
- 510 669 442 703 354 703 c
- 201 703 117 607 101 444 c
- 50 444 l
- 25 372 l
- 97 372 l
- 97 301 l
- 49 301 l
- 24 229 l
- 103 229 l
- 124 67 209 -19 350 -19 c
- 435 -19 501 25 509 32 c
- 509 131 l
- 492 105 417 60 343 60 c
- 267 60 204 127 197 229 c
- 406 229 l
- 430 301 l
- 191 301 l
- 191 372 l
- 455 372 l
- 479 444 l
- 194 444 l
- 201 531 245 624 348 624 c
- 433 624 484 583 509 534 c
- cp
- 556 0 m
- }
-ct_PSBuildGlyph
-} def
-/AdobeSerifMM
-{
-500 0 10 -12 484 692
- {
- 347 298 m
- 171 298 l
- 170 310 170 322 170 335 c
- 170 362 l
- 362 362 l
- 374 403 l
- 172 403 l
- 184 580 244 642 308 642 c
- 380 642 434 574 457 457 c
- 481 462 l
- 474 691 l
- 449 691 l
- 433 670 429 657 410 657 c
- 394 657 360 692 299 692 c
- 204 692 94 604 73 403 c
- 22 403 l
- 10 362 l
- 70 362 l
- 69 352 69 341 69 330 c
- 69 319 69 308 70 298 c
- 22 298 l
- 10 257 l
- 73 257 l
- 97 57 216 -12 295 -12 c
- 364 -12 427 25 484 123 c
- 458 142 l
- 425 101 384 37 316 37 c
- 256 37 189 84 173 257 c
- 335 257 l
- cp
- 500 0 m
- }
-ct_PSBuildGlyph
-} def
-end
-%%EndFile
-setglobal
-Adobe_CoolType_Core begin /$None SetSubstituteStrategy end
-%%BeginResource: procset Adobe_AGM_Image 1.0 0
-%%Version: 1.0 0
-%%Copyright: Copyright(C)2000-2006 Adobe Systems, Inc. All Rights Reserved.
-systemdict/setpacking known
-{
- currentpacking
- true setpacking
-}if
-userdict/Adobe_AGM_Image 71 dict dup begin put
-/Adobe_AGM_Image_Id/Adobe_AGM_Image_1.0_0 def
-/nd{
- null def
-}bind def
-/AGMIMG_&image nd
-/AGMIMG_&colorimage nd
-/AGMIMG_&imagemask nd
-/AGMIMG_mbuf()def
-/AGMIMG_ybuf()def
-/AGMIMG_kbuf()def
-/AGMIMG_c 0 def
-/AGMIMG_m 0 def
-/AGMIMG_y 0 def
-/AGMIMG_k 0 def
-/AGMIMG_tmp nd
-/AGMIMG_imagestring0 nd
-/AGMIMG_imagestring1 nd
-/AGMIMG_imagestring2 nd
-/AGMIMG_imagestring3 nd
-/AGMIMG_imagestring4 nd
-/AGMIMG_imagestring5 nd
-/AGMIMG_cnt nd
-/AGMIMG_fsave nd
-/AGMIMG_colorAry nd
-/AGMIMG_override nd
-/AGMIMG_name nd
-/AGMIMG_maskSource nd
-/AGMIMG_flushfilters nd
-/invert_image_samples nd
-/knockout_image_samples nd
-/img nd
-/sepimg nd
-/devnimg nd
-/idximg nd
-/ds
-{
- Adobe_AGM_Core begin
- Adobe_AGM_Image begin
- /AGMIMG_&image systemdict/image get def
- /AGMIMG_&imagemask systemdict/imagemask get def
- /colorimage where{
- pop
- /AGMIMG_&colorimage/colorimage ldf
- }if
- end
- end
-}def
-/ps
-{
- Adobe_AGM_Image begin
- /AGMIMG_ccimage_exists{/customcolorimage where
- {
- pop
- /Adobe_AGM_OnHost_Seps where
- {
- pop false
- }{
- /Adobe_AGM_InRip_Seps where
- {
- pop false
- }{
- true
- }ifelse
- }ifelse
- }{
- false
- }ifelse
- }bdf
- level2{
- /invert_image_samples
- {
- Adobe_AGM_Image/AGMIMG_tmp Decode length ddf
- /Decode[Decode 1 get Decode 0 get]def
- }def
- /knockout_image_samples
- {
- Operator/imagemask ne{
- /Decode[1 1]def
- }if
- }def
- }{
- /invert_image_samples
- {
- {1 exch sub}currenttransfer addprocs settransfer
- }def
- /knockout_image_samples
- {
- {pop 1}currenttransfer addprocs settransfer
- }def
- }ifelse
- /img/imageormask ldf
- /sepimg/sep_imageormask ldf
- /devnimg/devn_imageormask ldf
- /idximg/indexed_imageormask ldf
- /_ctype 7 def
- currentdict{
- dup xcheck 1 index type dup/arraytype eq exch/packedarraytype eq or and{
- bind
- }if
- def
- }forall
-}def
-/pt
-{
- end
-}def
-/dt
-{
-}def
-/AGMIMG_flushfilters
-{
- dup type/arraytype ne
- {1 array astore}if
- dup 0 get currentfile ne
- {dup 0 get flushfile}if
- {
- dup type/filetype eq
- {
- dup status 1 index currentfile ne and
- {closefile}
- {pop}
- ifelse
- }{pop}ifelse
- }forall
-}def
-/AGMIMG_init_common
-{
- currentdict/T known{/ImageType/T ldf currentdict/T undef}if
- currentdict/W known{/Width/W ldf currentdict/W undef}if
- currentdict/H known{/Height/H ldf currentdict/H undef}if
- currentdict/M known{/ImageMatrix/M ldf currentdict/M undef}if
- currentdict/BC known{/BitsPerComponent/BC ldf currentdict/BC undef}if
- currentdict/D known{/Decode/D ldf currentdict/D undef}if
- currentdict/DS known{/DataSource/DS ldf currentdict/DS undef}if
- currentdict/O known{
- /Operator/O load 1 eq{
- /imagemask
- }{
- /O load 2 eq{
- /image
- }{
- /colorimage
- }ifelse
- }ifelse
- def
- currentdict/O undef
- }if
- currentdict/HSCI known{/HostSepColorImage/HSCI ldf currentdict/HSCI undef}if
- currentdict/MD known{/MultipleDataSources/MD ldf currentdict/MD undef}if
- currentdict/I known{/Interpolate/I ldf currentdict/I undef}if
- currentdict/SI known{/SkipImageProc/SI ldf currentdict/SI undef}if
- /DataSource load xcheck not{
- DataSource type/arraytype eq{
- DataSource 0 get type/filetype eq{
- /_Filters DataSource def
- currentdict/MultipleDataSources known not{
- /DataSource DataSource dup length 1 sub get def
- }if
- }if
- }if
- currentdict/MultipleDataSources known not{
- /MultipleDataSources DataSource type/arraytype eq{
- DataSource length 1 gt
- }
- {false}ifelse def
- }if
- }if
- /NComponents Decode length 2 div def
- currentdict/SkipImageProc known not{/SkipImageProc{false}def}if
-}bdf
-/imageormask_sys
-{
- begin
- AGMIMG_init_common
- save mark
- level2{
- currentdict
- Operator/imagemask eq{
- AGMIMG_&imagemask
- }{
- use_mask{
- process_mask AGMIMG_&image
- }{
- AGMIMG_&image
- }ifelse
- }ifelse
- }{
- Width Height
- Operator/imagemask eq{
- Decode 0 get 1 eq Decode 1 get 0 eq and
- ImageMatrix/DataSource load
- AGMIMG_&imagemask
- }{
- BitsPerComponent ImageMatrix/DataSource load
- AGMIMG_&image
- }ifelse
- }ifelse
- currentdict/_Filters known{_Filters AGMIMG_flushfilters}if
- cleartomark restore
- end
-}def
-/overprint_plate
-{
- currentoverprint{
- 0 get dup type/nametype eq{
- dup/DeviceGray eq{
- pop AGMCORE_black_plate not
- }{
- /DeviceCMYK eq{
- AGMCORE_is_cmyk_sep not
- }if
- }ifelse
- }{
- false exch
- {
- AGMOHS_sepink eq or
- }forall
- not
- }ifelse
- }{
- pop false
- }ifelse
-}def
-/process_mask
-{
- level3{
- dup begin
- /ImageType 1 def
- end
- 4 dict begin
- /DataDict exch def
- /ImageType 3 def
- /InterleaveType 3 def
- /MaskDict 9 dict begin
- /ImageType 1 def
- /Width DataDict dup/MaskWidth known{/MaskWidth}{/Width}ifelse get def
- /Height DataDict dup/MaskHeight known{/MaskHeight}{/Height}ifelse get def
- /ImageMatrix[Width 0 0 Height neg 0 Height]def
- /NComponents 1 def
- /BitsPerComponent 1 def
- /Decode DataDict dup/MaskD known{/MaskD}{[1 0]}ifelse get def
- /DataSource Adobe_AGM_Core/AGMIMG_maskSource get def
- currentdict end def
- currentdict end
- }if
-}def
-/use_mask
-{
- dup/Mask known {dup/Mask get}{false}ifelse
-}def
-/imageormask
-{
- begin
- AGMIMG_init_common
- SkipImageProc{
- currentdict consumeimagedata
- }
- {
- save mark
- level2 AGMCORE_host_sep not and{
- currentdict
- Operator/imagemask eq DeviceN_PS2 not and{
- imagemask
- }{
- AGMCORE_in_rip_sep currentoverprint and currentcolorspace 0 get/DeviceGray eq and{
- [/Separation/Black/DeviceGray{}]setcolorspace
- /Decode[Decode 1 get Decode 0 get]def
- }if
- use_mask{
- process_mask image
- }{
- DeviceN_NoneName DeviceN_PS2 Indexed_DeviceN level3 not and or or AGMCORE_in_rip_sep and
- {
- Names convert_to_process not{
- 2 dict begin
- /imageDict xdf
- /names_index 0 def
- gsave
- imageDict write_image_file{
- Names{
- dup(None)ne{
- [/Separation 3 -1 roll/DeviceGray{1 exch sub}]setcolorspace
- Operator imageDict read_image_file
- names_index 0 eq{true setoverprint}if
- /names_index names_index 1 add def
- }{
- pop
- }ifelse
- }forall
- close_image_file
- }if
- grestore
- end
- }{
- Operator/imagemask eq{
- imagemask
- }{
- image
- }ifelse
- }ifelse
- }{
- Operator/imagemask eq{
- imagemask
- }{
- image
- }ifelse
- }ifelse
- }ifelse
- }ifelse
- }{
- Width Height
- Operator/imagemask eq{
- Decode 0 get 1 eq Decode 1 get 0 eq and
- ImageMatrix/DataSource load
- /Adobe_AGM_OnHost_Seps where{
- pop imagemask
- }{
- currentgray 1 ne{
- currentdict imageormask_sys
- }{
- currentoverprint not{
- 1 AGMCORE_&setgray
- currentdict imageormask_sys
- }{
- currentdict ignoreimagedata
- }ifelse
- }ifelse
- }ifelse
- }{
- BitsPerComponent ImageMatrix
- MultipleDataSources{
- 0 1 NComponents 1 sub{
- DataSource exch get
- }for
- }{
- /DataSource load
- }ifelse
- Operator/colorimage eq{
- AGMCORE_host_sep{
- MultipleDataSources level2 or NComponents 4 eq and{
- AGMCORE_is_cmyk_sep{
- MultipleDataSources{
- /DataSource DataSource 0 get xcheck
- {
- [
- DataSource 0 get/exec cvx
- DataSource 1 get/exec cvx
- DataSource 2 get/exec cvx
- DataSource 3 get/exec cvx
- /AGMCORE_get_ink_data cvx
- ]cvx
- }{
- DataSource aload pop AGMCORE_get_ink_data
- }ifelse def
- }{
- /DataSource
- Width BitsPerComponent mul 7 add 8 idiv Height mul 4 mul
- /DataSource load
- filter_cmyk 0()/SubFileDecode filter def
- }ifelse
- /Decode[Decode 0 get Decode 1 get]def
- /MultipleDataSources false def
- /NComponents 1 def
- /Operator/image def
- invert_image_samples
- 1 AGMCORE_&setgray
- currentdict imageormask_sys
- }{
- currentoverprint not Operator/imagemask eq and{
- 1 AGMCORE_&setgray
- currentdict imageormask_sys
- }{
- currentdict ignoreimagedata
- }ifelse
- }ifelse
- }{
- MultipleDataSources NComponents AGMIMG_&colorimage
- }ifelse
- }{
- true NComponents colorimage
- }ifelse
- }{
- Operator/image eq{
- AGMCORE_host_sep{
- /DoImage true def
- currentdict/HostSepColorImage known{HostSepColorImage not}{false}ifelse
- {
- AGMCORE_black_plate not Operator/imagemask ne and{
- /DoImage false def
- currentdict ignoreimagedata
- }if
- }if
- 1 AGMCORE_&setgray
- DoImage
- {currentdict imageormask_sys}if
- }{
- use_mask{
- process_mask image
- }{
- image
- }ifelse
- }ifelse
- }{
- Operator/knockout eq{
- pop pop pop pop pop
- currentcolorspace overprint_plate not{
- knockout_unitsq
- }if
- }if
- }ifelse
- }ifelse
- }ifelse
- }ifelse
- cleartomark restore
- }ifelse
- currentdict/_Filters known{_Filters AGMIMG_flushfilters}if
- end
-}def
-/sep_imageormask
-{
- /sep_colorspace_dict AGMCORE_gget begin
- CSA map_csa
- begin
- AGMIMG_init_common
- SkipImageProc{
- currentdict consumeimagedata
- }{
- save mark
- AGMCORE_avoid_L2_sep_space{
- /Decode[Decode 0 get 255 mul Decode 1 get 255 mul]def
- }if
- AGMIMG_ccimage_exists
- MappedCSA 0 get/DeviceCMYK eq and
- currentdict/Components known and
- Name()ne and
- Name(All)ne and
- Operator/image eq and
- AGMCORE_producing_seps not and
- level2 not and
- {
- Width Height BitsPerComponent ImageMatrix
- [
- /DataSource load/exec cvx
- {
- 0 1 2 index length 1 sub{
- 1 index exch
- 2 copy get 255 xor put
- }for
- }/exec cvx
- ]cvx bind
- MappedCSA 0 get/DeviceCMYK eq{
- Components aload pop
- }{
- 0 0 0 Components aload pop 1 exch sub
- }ifelse
- Name findcmykcustomcolor
- customcolorimage
- }{
- AGMCORE_producing_seps not{
- level2{
- //Adobe_AGM_Core/AGMCORE_pattern_paint_type get 2 ne AGMCORE_avoid_L2_sep_space not and currentcolorspace 0 get/Separation ne and{
- [/Separation Name MappedCSA sep_proc_name exch dup 0 get 15 string cvs(/Device)anchorsearch{pop pop 0 get}{pop}ifelse exch load]setcolorspace_opt
- /sep_tint AGMCORE_gget setcolor
- }if
- currentdict imageormask
- }{
- currentdict
- Operator/imagemask eq{
- imageormask
- }{
- sep_imageormask_lev1
- }ifelse
- }ifelse
- }{
- AGMCORE_host_sep{
- Operator/knockout eq{
- currentdict/ImageMatrix get concat
- knockout_unitsq
- }{
- currentgray 1 ne{
- AGMCORE_is_cmyk_sep Name(All)ne and{
- level2{
- Name AGMCORE_IsSeparationAProcessColor
- {
- Operator/imagemask eq{
- //Adobe_AGM_Core/AGMCORE_pattern_paint_type get 2 ne{
- /sep_tint AGMCORE_gget 1 exch sub AGMCORE_&setcolor
- }if
- }{
- invert_image_samples
- }ifelse
- }{
- //Adobe_AGM_Core/AGMCORE_pattern_paint_type get 2 ne{
- [/Separation Name[/DeviceGray]
- {
- sep_colorspace_proc AGMCORE_get_ink_data
- 1 exch sub
- }bind
- ]AGMCORE_&setcolorspace
- /sep_tint AGMCORE_gget AGMCORE_&setcolor
- }if
- }ifelse
- currentdict imageormask_sys
- }{
- currentdict
- Operator/imagemask eq{
- imageormask_sys
- }{
- sep_image_lev1_sep
- }ifelse
- }ifelse
- }{
- Operator/imagemask ne{
- invert_image_samples
- }if
- currentdict imageormask_sys
- }ifelse
- }{
- currentoverprint not Name(All)eq or Operator/imagemask eq and{
- currentdict imageormask_sys
- }{
- currentoverprint not
- {
- gsave
- knockout_unitsq
- grestore
- }if
- currentdict consumeimagedata
- }ifelse
- }ifelse
- }ifelse
- }{
- //Adobe_AGM_Core/AGMCORE_pattern_paint_type get 2 ne{
- currentcolorspace 0 get/Separation ne{
- [/Separation Name MappedCSA sep_proc_name exch 0 get exch load]setcolorspace_opt
- /sep_tint AGMCORE_gget setcolor
- }if
- }if
- currentoverprint
- MappedCSA 0 get/DeviceCMYK eq and
- Name AGMCORE_IsSeparationAProcessColor not and
- //Adobe_AGM_Core/AGMCORE_pattern_paint_type get 2 ne{Name inRip_spot_has_ink not and}{false}ifelse
- Name(All)ne and{
- imageormask_l2_overprint
- }{
- currentdict imageormask
- }ifelse
- }ifelse
- }ifelse
- }ifelse
- cleartomark restore
- }ifelse
- currentdict/_Filters known{_Filters AGMIMG_flushfilters}if
- end
- end
-}def
-/colorSpaceElemCnt
-{
- mark currentcolor counttomark dup 2 add 1 roll cleartomark
-}bdf
-/devn_sep_datasource
-{
- 1 dict begin
- /dataSource xdf
- [
- 0 1 dataSource length 1 sub{
- dup currentdict/dataSource get/exch cvx/get cvx/exec cvx
- /exch cvx names_index/ne cvx[/pop cvx]cvx/if cvx
- }for
- ]cvx bind
- end
-}bdf
-/devn_alt_datasource
-{
- 11 dict begin
- /convProc xdf
- /origcolorSpaceElemCnt xdf
- /origMultipleDataSources xdf
- /origBitsPerComponent xdf
- /origDecode xdf
- /origDataSource xdf
- /dsCnt origMultipleDataSources{origDataSource length}{1}ifelse def
- /DataSource origMultipleDataSources
- {
- [
- BitsPerComponent 8 idiv origDecode length 2 idiv mul string
- 0 1 origDecode length 2 idiv 1 sub
- {
- dup 7 mul 1 add index exch dup BitsPerComponent 8 idiv mul exch
- origDataSource exch get 0()/SubFileDecode filter
- BitsPerComponent 8 idiv string/readstring cvx/pop cvx/putinterval cvx
- }for
- ]bind cvx
- }{origDataSource}ifelse 0()/SubFileDecode filter def
- [
- origcolorSpaceElemCnt string
- 0 2 origDecode length 2 sub
- {
- dup origDecode exch get dup 3 -1 roll 1 add origDecode exch get exch sub 2 BitsPerComponent exp 1 sub div
- 1 BitsPerComponent 8 idiv{DataSource/read cvx/not cvx{0}/if cvx/mul cvx}repeat/mul cvx/add cvx
- }for
- /convProc load/exec cvx
- origcolorSpaceElemCnt 1 sub -1 0
- {
- /dup cvx 2/add cvx/index cvx
- 3 1/roll cvx/exch cvx 255/mul cvx/cvi cvx/put cvx
- }for
- ]bind cvx 0()/SubFileDecode filter
- end
-}bdf
-/devn_imageormask
-{
- /devicen_colorspace_dict AGMCORE_gget begin
- CSA map_csa
- 2 dict begin
- dup
- /srcDataStrs[3 -1 roll begin
- AGMIMG_init_common
- currentdict/MultipleDataSources known{MultipleDataSources{DataSource length}{1}ifelse}{1}ifelse
- {
- Width Decode length 2 div mul cvi
- {
- dup 65535 gt{1 add 2 div cvi}{exit}ifelse
- }loop
- string
- }repeat
- end]def
- /dstDataStr srcDataStrs 0 get length string def
- begin
- AGMIMG_init_common
- SkipImageProc{
- currentdict consumeimagedata
- }{
- save mark
- AGMCORE_producing_seps not{
- level3 not{
- Operator/imagemask ne{
- /DataSource[[
- DataSource Decode BitsPerComponent currentdict/MultipleDataSources known{MultipleDataSources}{false}ifelse
- colorSpaceElemCnt/devicen_colorspace_dict AGMCORE_gget/TintTransform get
- devn_alt_datasource 1/string cvx/readstring cvx/pop cvx]cvx colorSpaceElemCnt 1 sub{dup}repeat]def
- /MultipleDataSources true def
- /Decode colorSpaceElemCnt[exch{0 1}repeat]def
- }if
- }if
- currentdict imageormask
- }{
- AGMCORE_host_sep{
- Names convert_to_process{
- CSA get_csa_by_name 0 get/DeviceCMYK eq{
- /DataSource
- Width BitsPerComponent mul 7 add 8 idiv Height mul 4 mul
- DataSource Decode BitsPerComponent currentdict/MultipleDataSources known{MultipleDataSources}{false}ifelse
- 4/devicen_colorspace_dict AGMCORE_gget/TintTransform get
- devn_alt_datasource
- filter_cmyk 0()/SubFileDecode filter def
- /MultipleDataSources false def
- /Decode[1 0]def
- /DeviceGray setcolorspace
- currentdict imageormask_sys
- }{
- AGMCORE_report_unsupported_color_space
- AGMCORE_black_plate{
- /DataSource
- DataSource Decode BitsPerComponent currentdict/MultipleDataSources known{MultipleDataSources}{false}ifelse
- CSA get_csa_by_name 0 get/DeviceRGB eq{3}{1}ifelse/devicen_colorspace_dict AGMCORE_gget/TintTransform get
- devn_alt_datasource
- /MultipleDataSources false def
- /Decode colorSpaceElemCnt[exch{0 1}repeat]def
- currentdict imageormask_sys
- }{
- gsave
- knockout_unitsq
- grestore
- currentdict consumeimagedata
- }ifelse
- }ifelse
- }
- {
- /devicen_colorspace_dict AGMCORE_gget/names_index known{
- Operator/imagemask ne{
- MultipleDataSources{
- /DataSource[DataSource devn_sep_datasource/exec cvx]cvx def
- /MultipleDataSources false def
- }{
- /DataSource/DataSource load dstDataStr srcDataStrs 0 get filter_devn def
- }ifelse
- invert_image_samples
- }if
- currentdict imageormask_sys
- }{
- currentoverprint not Operator/imagemask eq and{
- currentdict imageormask_sys
- }{
- currentoverprint not
- {
- gsave
- knockout_unitsq
- grestore
- }if
- currentdict consumeimagedata
- }ifelse
- }ifelse
- }ifelse
- }{
- currentdict imageormask
- }ifelse
- }ifelse
- cleartomark restore
- }ifelse
- currentdict/_Filters known{_Filters AGMIMG_flushfilters}if
- end
- end
- end
-}def
-/imageormask_l2_overprint
-{
- currentdict
- currentcmykcolor add add add 0 eq{
- currentdict consumeimagedata
- }{
- level3{
- currentcmykcolor
- /AGMIMG_k xdf
- /AGMIMG_y xdf
- /AGMIMG_m xdf
- /AGMIMG_c xdf
- Operator/imagemask eq{
- [/DeviceN[
- AGMIMG_c 0 ne{/Cyan}if
- AGMIMG_m 0 ne{/Magenta}if
- AGMIMG_y 0 ne{/Yellow}if
- AGMIMG_k 0 ne{/Black}if
- ]/DeviceCMYK{}]setcolorspace
- AGMIMG_c 0 ne{AGMIMG_c}if
- AGMIMG_m 0 ne{AGMIMG_m}if
- AGMIMG_y 0 ne{AGMIMG_y}if
- AGMIMG_k 0 ne{AGMIMG_k}if
- setcolor
- }{
- /Decode[Decode 0 get 255 mul Decode 1 get 255 mul]def
- [/Indexed
- [
- /DeviceN[
- AGMIMG_c 0 ne{/Cyan}if
- AGMIMG_m 0 ne{/Magenta}if
- AGMIMG_y 0 ne{/Yellow}if
- AGMIMG_k 0 ne{/Black}if
- ]
- /DeviceCMYK{
- AGMIMG_k 0 eq{0}if
- AGMIMG_y 0 eq{0 exch}if
- AGMIMG_m 0 eq{0 3 1 roll}if
- AGMIMG_c 0 eq{0 4 1 roll}if
- }
- ]
- 255
- {
- 255 div
- mark exch
- dup dup dup
- AGMIMG_k 0 ne{
- /sep_tint AGMCORE_gget mul MappedCSA sep_proc_name exch pop load exec 4 1 roll pop pop pop
- counttomark 1 roll
- }{
- pop
- }ifelse
- AGMIMG_y 0 ne{
- /sep_tint AGMCORE_gget mul MappedCSA sep_proc_name exch pop load exec 4 2 roll pop pop pop
- counttomark 1 roll
- }{
- pop
- }ifelse
- AGMIMG_m 0 ne{
- /sep_tint AGMCORE_gget mul MappedCSA sep_proc_name exch pop load exec 4 3 roll pop pop pop
- counttomark 1 roll
- }{
- pop
- }ifelse
- AGMIMG_c 0 ne{
- /sep_tint AGMCORE_gget mul MappedCSA sep_proc_name exch pop load exec pop pop pop
- counttomark 1 roll
- }{
- pop
- }ifelse
- counttomark 1 add -1 roll pop
- }
- ]setcolorspace
- }ifelse
- imageormask_sys
- }{
- write_image_file{
- currentcmykcolor
- 0 ne{
- [/Separation/Black/DeviceGray{}]setcolorspace
- gsave
- /Black
- [{1 exch sub/sep_tint AGMCORE_gget mul}/exec cvx MappedCSA sep_proc_name cvx exch pop{4 1 roll pop pop pop 1 exch sub}/exec cvx]
- cvx modify_halftone_xfer
- Operator currentdict read_image_file
- grestore
- }if
- 0 ne{
- [/Separation/Yellow/DeviceGray{}]setcolorspace
- gsave
- /Yellow
- [{1 exch sub/sep_tint AGMCORE_gget mul}/exec cvx MappedCSA sep_proc_name cvx exch pop{4 2 roll pop pop pop 1 exch sub}/exec cvx]
- cvx modify_halftone_xfer
- Operator currentdict read_image_file
- grestore
- }if
- 0 ne{
- [/Separation/Magenta/DeviceGray{}]setcolorspace
- gsave
- /Magenta
- [{1 exch sub/sep_tint AGMCORE_gget mul}/exec cvx MappedCSA sep_proc_name cvx exch pop{4 3 roll pop pop pop 1 exch sub}/exec cvx]
- cvx modify_halftone_xfer
- Operator currentdict read_image_file
- grestore
- }if
- 0 ne{
- [/Separation/Cyan/DeviceGray{}]setcolorspace
- gsave
- /Cyan
- [{1 exch sub/sep_tint AGMCORE_gget mul}/exec cvx MappedCSA sep_proc_name cvx exch pop{pop pop pop 1 exch sub}/exec cvx]
- cvx modify_halftone_xfer
- Operator currentdict read_image_file
- grestore
- }if
- close_image_file
- }{
- imageormask
- }ifelse
- }ifelse
- }ifelse
-}def
-/indexed_imageormask
-{
- begin
- AGMIMG_init_common
- save mark
- currentdict
- AGMCORE_host_sep{
- Operator/knockout eq{
- /indexed_colorspace_dict AGMCORE_gget dup/CSA known{
- /CSA get get_csa_by_name
- }{
- /Names get
- }ifelse
- overprint_plate not{
- knockout_unitsq
- }if
- }{
- Indexed_DeviceN{
- /devicen_colorspace_dict AGMCORE_gget dup/names_index known exch/Names get convert_to_process or{
- indexed_image_lev2_sep
- }{
- currentoverprint not{
- knockout_unitsq
- }if
- currentdict consumeimagedata
- }ifelse
- }{
- AGMCORE_is_cmyk_sep{
- Operator/imagemask eq{
- imageormask_sys
- }{
- level2{
- indexed_image_lev2_sep
- }{
- indexed_image_lev1_sep
- }ifelse
- }ifelse
- }{
- currentoverprint not{
- knockout_unitsq
- }if
- currentdict consumeimagedata
- }ifelse
- }ifelse
- }ifelse
- }{
- level2{
- Indexed_DeviceN{
- /indexed_colorspace_dict AGMCORE_gget begin
- }{
- /indexed_colorspace_dict AGMCORE_gget dup null ne
- {
- begin
- currentdict/CSDBase known{CSDBase/CSD get_res/MappedCSA get}{CSA}ifelse
- get_csa_by_name 0 get/DeviceCMYK eq ps_level 3 ge and ps_version 3015.007 lt and
- AGMCORE_in_rip_sep and{
- [/Indexed[/DeviceN[/Cyan/Magenta/Yellow/Black]/DeviceCMYK{}]HiVal Lookup]
- setcolorspace
- }if
- end
- }
- {pop}ifelse
- }ifelse
- imageormask
- Indexed_DeviceN{
- end
- }if
- }{
- Operator/imagemask eq{
- imageormask
- }{
- indexed_imageormask_lev1
- }ifelse
- }ifelse
- }ifelse
- cleartomark restore
- currentdict/_Filters known{_Filters AGMIMG_flushfilters}if
- end
-}def
-/indexed_image_lev2_sep
-{
- /indexed_colorspace_dict AGMCORE_gget begin
- begin
- Indexed_DeviceN not{
- currentcolorspace
- dup 1/DeviceGray put
- dup 3
- currentcolorspace 2 get 1 add string
- 0 1 2 3 AGMCORE_get_ink_data 4 currentcolorspace 3 get length 1 sub
- {
- dup 4 idiv exch currentcolorspace 3 get exch get 255 exch sub 2 index 3 1 roll put
- }for
- put setcolorspace
- }if
- currentdict
- Operator/imagemask eq{
- AGMIMG_&imagemask
- }{
- use_mask{
- process_mask AGMIMG_&image
- }{
- AGMIMG_&image
- }ifelse
- }ifelse
- end end
-}def
- /OPIimage
- {
- dup type/dicttype ne{
- 10 dict begin
- /DataSource xdf
- /ImageMatrix xdf
- /BitsPerComponent xdf
- /Height xdf
- /Width xdf
- /ImageType 1 def
- /Decode[0 1 def]
- currentdict
- end
- }if
- dup begin
- /NComponents 1 cdndf
- /MultipleDataSources false cdndf
- /SkipImageProc{false}cdndf
- /Decode[
- 0
- currentcolorspace 0 get/Indexed eq{
- 2 BitsPerComponent exp 1 sub
- }{
- 1
- }ifelse
- ]cdndf
- /Operator/image cdndf
- end
- /sep_colorspace_dict AGMCORE_gget null eq{
- imageormask
- }{
- gsave
- dup begin invert_image_samples end
- sep_imageormask
- grestore
- }ifelse
- }def
-/cachemask_level2
-{
- 3 dict begin
- /LZWEncode filter/WriteFilter xdf
- /readBuffer 256 string def
- /ReadFilter
- currentfile
- 0(%EndMask)/SubFileDecode filter
- /ASCII85Decode filter
- /RunLengthDecode filter
- def
- {
- ReadFilter readBuffer readstring exch
- WriteFilter exch writestring
- not{exit}if
- }loop
- WriteFilter closefile
- end
-}def
-/spot_alias
-{
- /mapto_sep_imageormask
- {
- dup type/dicttype ne{
- 12 dict begin
- /ImageType 1 def
- /DataSource xdf
- /ImageMatrix xdf
- /BitsPerComponent xdf
- /Height xdf
- /Width xdf
- /MultipleDataSources false def
- }{
- begin
- }ifelse
- /Decode[/customcolor_tint AGMCORE_gget 0]def
- /Operator/image def
- /SkipImageProc{false}def
- currentdict
- end
- sep_imageormask
- }bdf
- /customcolorimage
- {
- Adobe_AGM_Image/AGMIMG_colorAry xddf
- /customcolor_tint AGMCORE_gget
- <<
- /Name AGMIMG_colorAry 4 get
- /CSA[/DeviceCMYK]
- /TintMethod/Subtractive
- /TintProc null
- /MappedCSA null
- /NComponents 4
- /Components[AGMIMG_colorAry aload pop pop]
- >>
- setsepcolorspace
- mapto_sep_imageormask
- }ndf
- Adobe_AGM_Image/AGMIMG_&customcolorimage/customcolorimage load put
- /customcolorimage
- {
- Adobe_AGM_Image/AGMIMG_override false put
- current_spot_alias{dup 4 get map_alias}{false}ifelse
- {
- false set_spot_alias
- /customcolor_tint AGMCORE_gget exch setsepcolorspace
- pop
- mapto_sep_imageormask
- true set_spot_alias
- }{
- //Adobe_AGM_Image/AGMIMG_&customcolorimage get exec
- }ifelse
- }bdf
-}def
-/snap_to_device
-{
- 6 dict begin
- matrix currentmatrix
- dup 0 get 0 eq 1 index 3 get 0 eq and
- 1 index 1 get 0 eq 2 index 2 get 0 eq and or exch pop
- {
- 1 1 dtransform 0 gt exch 0 gt/AGMIMG_xSign? exch def/AGMIMG_ySign? exch def
- 0 0 transform
- AGMIMG_ySign?{floor 0.1 sub}{ceiling 0.1 add}ifelse exch
- AGMIMG_xSign?{floor 0.1 sub}{ceiling 0.1 add}ifelse exch
- itransform/AGMIMG_llY exch def/AGMIMG_llX exch def
- 1 1 transform
- AGMIMG_ySign?{ceiling 0.1 add}{floor 0.1 sub}ifelse exch
- AGMIMG_xSign?{ceiling 0.1 add}{floor 0.1 sub}ifelse exch
- itransform/AGMIMG_urY exch def/AGMIMG_urX exch def
- [AGMIMG_urX AGMIMG_llX sub 0 0 AGMIMG_urY AGMIMG_llY sub AGMIMG_llX AGMIMG_llY]concat
- }{
- }ifelse
- end
-}def
-level2 not{
- /colorbuf
- {
- 0 1 2 index length 1 sub{
- dup 2 index exch get
- 255 exch sub
- 2 index
- 3 1 roll
- put
- }for
- }def
- /tint_image_to_color
- {
- begin
- Width Height BitsPerComponent ImageMatrix
- /DataSource load
- end
- Adobe_AGM_Image begin
- /AGMIMG_mbuf 0 string def
- /AGMIMG_ybuf 0 string def
- /AGMIMG_kbuf 0 string def
- {
- colorbuf dup length AGMIMG_mbuf length ne
- {
- dup length dup dup
- /AGMIMG_mbuf exch string def
- /AGMIMG_ybuf exch string def
- /AGMIMG_kbuf exch string def
- }if
- dup AGMIMG_mbuf copy AGMIMG_ybuf copy AGMIMG_kbuf copy pop
- }
- addprocs
- {AGMIMG_mbuf}{AGMIMG_ybuf}{AGMIMG_kbuf}true 4 colorimage
- end
- }def
- /sep_imageormask_lev1
- {
- begin
- MappedCSA 0 get dup/DeviceRGB eq exch/DeviceCMYK eq or has_color not and{
- {
- 255 mul round cvi GrayLookup exch get
- }currenttransfer addprocs settransfer
- currentdict imageormask
- }{
- /sep_colorspace_dict AGMCORE_gget/Components known{
- MappedCSA 0 get/DeviceCMYK eq{
- Components aload pop
- }{
- 0 0 0 Components aload pop 1 exch sub
- }ifelse
- Adobe_AGM_Image/AGMIMG_k xddf
- Adobe_AGM_Image/AGMIMG_y xddf
- Adobe_AGM_Image/AGMIMG_m xddf
- Adobe_AGM_Image/AGMIMG_c xddf
- AGMIMG_y 0.0 eq AGMIMG_m 0.0 eq and AGMIMG_c 0.0 eq and{
- {AGMIMG_k mul 1 exch sub}currenttransfer addprocs settransfer
- currentdict imageormask
- }{
- currentcolortransfer
- {AGMIMG_k mul 1 exch sub}exch addprocs 4 1 roll
- {AGMIMG_y mul 1 exch sub}exch addprocs 4 1 roll
- {AGMIMG_m mul 1 exch sub}exch addprocs 4 1 roll
- {AGMIMG_c mul 1 exch sub}exch addprocs 4 1 roll
- setcolortransfer
- currentdict tint_image_to_color
- }ifelse
- }{
- MappedCSA 0 get/DeviceGray eq{
- {255 mul round cvi ColorLookup exch get 0 get}currenttransfer addprocs settransfer
- currentdict imageormask
- }{
- MappedCSA 0 get/DeviceCMYK eq{
- currentcolortransfer
- {255 mul round cvi ColorLookup exch get 3 get 1 exch sub}exch addprocs 4 1 roll
- {255 mul round cvi ColorLookup exch get 2 get 1 exch sub}exch addprocs 4 1 roll
- {255 mul round cvi ColorLookup exch get 1 get 1 exch sub}exch addprocs 4 1 roll
- {255 mul round cvi ColorLookup exch get 0 get 1 exch sub}exch addprocs 4 1 roll
- setcolortransfer
- currentdict tint_image_to_color
- }{
- currentcolortransfer
- {pop 1}exch addprocs 4 1 roll
- {255 mul round cvi ColorLookup exch get 2 get}exch addprocs 4 1 roll
- {255 mul round cvi ColorLookup exch get 1 get}exch addprocs 4 1 roll
- {255 mul round cvi ColorLookup exch get 0 get}exch addprocs 4 1 roll
- setcolortransfer
- currentdict tint_image_to_color
- }ifelse
- }ifelse
- }ifelse
- }ifelse
- end
- }def
- /sep_image_lev1_sep
- {
- begin
- /sep_colorspace_dict AGMCORE_gget/Components known{
- Components aload pop
- Adobe_AGM_Image/AGMIMG_k xddf
- Adobe_AGM_Image/AGMIMG_y xddf
- Adobe_AGM_Image/AGMIMG_m xddf
- Adobe_AGM_Image/AGMIMG_c xddf
- {AGMIMG_c mul 1 exch sub}
- {AGMIMG_m mul 1 exch sub}
- {AGMIMG_y mul 1 exch sub}
- {AGMIMG_k mul 1 exch sub}
- }{
- {255 mul round cvi ColorLookup exch get 0 get 1 exch sub}
- {255 mul round cvi ColorLookup exch get 1 get 1 exch sub}
- {255 mul round cvi ColorLookup exch get 2 get 1 exch sub}
- {255 mul round cvi ColorLookup exch get 3 get 1 exch sub}
- }ifelse
- AGMCORE_get_ink_data currenttransfer addprocs settransfer
- currentdict imageormask_sys
- end
- }def
- /indexed_imageormask_lev1
- {
- /indexed_colorspace_dict AGMCORE_gget begin
- begin
- currentdict
- MappedCSA 0 get dup/DeviceRGB eq exch/DeviceCMYK eq or has_color not and{
- {HiVal mul round cvi GrayLookup exch get HiVal div}currenttransfer addprocs settransfer
- imageormask
- }{
- MappedCSA 0 get/DeviceGray eq{
- {HiVal mul round cvi Lookup exch get HiVal div}currenttransfer addprocs settransfer
- imageormask
- }{
- MappedCSA 0 get/DeviceCMYK eq{
- currentcolortransfer
- {4 mul HiVal mul round cvi 3 add Lookup exch get HiVal div 1 exch sub}exch addprocs 4 1 roll
- {4 mul HiVal mul round cvi 2 add Lookup exch get HiVal div 1 exch sub}exch addprocs 4 1 roll
- {4 mul HiVal mul round cvi 1 add Lookup exch get HiVal div 1 exch sub}exch addprocs 4 1 roll
- {4 mul HiVal mul round cvi Lookup exch get HiVal div 1 exch sub}exch addprocs 4 1 roll
- setcolortransfer
- tint_image_to_color
- }{
- currentcolortransfer
- {pop 1}exch addprocs 4 1 roll
- {3 mul HiVal mul round cvi 2 add Lookup exch get HiVal div}exch addprocs 4 1 roll
- {3 mul HiVal mul round cvi 1 add Lookup exch get HiVal div}exch addprocs 4 1 roll
- {3 mul HiVal mul round cvi Lookup exch get HiVal div}exch addprocs 4 1 roll
- setcolortransfer
- tint_image_to_color
- }ifelse
- }ifelse
- }ifelse
- end end
- }def
- /indexed_image_lev1_sep
- {
- /indexed_colorspace_dict AGMCORE_gget begin
- begin
- {4 mul HiVal mul round cvi Lookup exch get HiVal div 1 exch sub}
- {4 mul HiVal mul round cvi 1 add Lookup exch get HiVal div 1 exch sub}
- {4 mul HiVal mul round cvi 2 add Lookup exch get HiVal div 1 exch sub}
- {4 mul HiVal mul round cvi 3 add Lookup exch get HiVal div 1 exch sub}
- AGMCORE_get_ink_data currenttransfer addprocs settransfer
- currentdict imageormask_sys
- end end
- }def
-}if
-end
-systemdict/setpacking known
-{setpacking}if
-%%EndResource
-currentdict Adobe_AGM_Utils eq {end} if
-%%EndProlog
-%%BeginSetup
-Adobe_AGM_Utils begin
-2 2010 Adobe_AGM_Core/ds gx
-Adobe_CoolType_Core/ds get exec
-Adobe_AGM_Image/ds gx
-[/NamespacePush pdfmark_5
-[/_objdef {Doc_Metadata} /type /stream /OBJ pdfmark_5
-[{Doc_Metadata} 842 (% &end XMP packet& %) ReadBypdfmark_5_string
-<?xpacket begin='' id='W5M0MpCehiHzreSzNTczkc9d'?>
-<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 4.2.1-c041 52.342996, 2008/05/07-20:48:00 ">
- <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
- <rdf:Description rdf:about=""
- xmlns:xmp="http://ns.adobe.com/xap/1.0/"
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/"
- xmlns:pdf="http://ns.adobe.com/pdf/1.3/"
- xmp:ModifyDate="2008-09-29T15:42:22-05:00"
- xmp:CreateDate="2008-09-29T15:42:22-05:00"
- xmp:MetadataDate="2008-09-29T15:42:22-05:00"
- xmp:CreatorTool="Adobe Acrobat 9.0"
- dc:format="application/pdf"
- xmpMM:DocumentID="uuid:6ccb3fe6-c793-4b58-9600-f2f81df9224d"
- xmpMM:InstanceID="uuid:067c5701-e5b5-4d27-9675-fee69945a37d"
- pdf:Producer="Adobe Acrobat 9.0 Image Conversion Plug-in"/>
- </rdf:RDF>
-</x:xmpmeta>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<?xpacket end='w'?>
-
-
-% &end XMP packet& %
-
-[{Doc_Metadata} 2 dict begin /Type /Metadata def /Subtype /XML def currentdict end /PUT pdfmark_5
-[/Document 1 dict begin /Metadata {Doc_Metadata} def currentdict end /BDC pdfmark_5
-[/NamespacePop pdfmark_5
-currentdict Adobe_AGM_Utils eq {end} if
-%%EndSetup
-%%Page: 1 1
-%%EndPageComments
-%%BeginPageSetup
-Adobe_AGM_Utils begin
-Adobe_AGM_Core/ps gx
-Adobe_AGM_Core/capture_mysetup gx
-Adobe_AGM_Utils/capture_cpd gx
-Adobe_CoolType_Core/ps get exec
-Adobe_AGM_Image/ps gx
-%%EndPageSetup
-1 -1 scale 0 -73.49 translate
-pgsv
-[1 0 0 1 0 0 ]ct
-gsave
-np
-gsave
-0 0 mo
-0 73.49 li
-77.2363 73.49 li
-77.2363 0 li
-cp
-clp
-[1 0 0 1 0 0 ]ct
-80.99 73.49 mo
-0 73.49 li
-0 0 li
-80.99 0 li
-80.99 73.49 li
-false sop
-gsave
-/0
-[/DeviceCMYK] /CSA add_res
-/0 /CSA get_res setcolorspace
-clp
-[1 0 0 -1 0 73.49 ]ct
-[82.4898 0 0 74.9898 -.749907 -.749892 ]ct
-snap_to_device
-Adobe_AGM_Image/AGMIMG_fl cf /ASCII85Decode fl /RunLengthDecode filter ddf
-<<
-/T 1
-/W 110
-/H 100
-/M[110 0 0 -100 0 100 ]
-/BC 8
-/D[0 1 0 1 0 1 0 1 ]
-/DS [
-[AGMIMG_fl 110 string /rs cvx /pop cvx] cvx
-[AGMIMG_fl 110 string /rs cvx /pop cvx] cvx
-[AGMIMG_fl 110 string /rs cvx /pop cvx] cvx
-[AGMIMG_fl 110 string /rs cvx /pop cvx] cvx
-]
-/O 3
->>
-%%BeginBinary: 1
-img
-(pC-IZF%!F['[!C[&pI;ZELX=['['A[']S6"0er2Yj\poZLP7+['R!B['[0DpTjk,rj)X+BD_`@YHP17
-['[0H['-jDX/iV3Y6hV@['[$@['[-Erj2U0!OK*1Y5kltZh^iqZNmkCYHYC@Z`j22#I:\CZEgm:@/L!C
-TqS6XVl-DhW2$5gT:`'YTr4Z_W2$,bVkp6hVZ*ClV?!IkUB%.[VYR(YV?a#qUSXicVPEsa#Gn;qV5:,^
->5S@=VP^K/`PoX0aLT1@St=WKVU`)kft4B'`P91e_#D(Q^q[Ll\\#WM_#(qC^%&lC`P9$u_Ss=&q7m6M
-^r=('d$?-Y!#VoCYd1XCZa@*B['Zs;['HmBYI([@YdCe3ZNIG7Y-@B$q6L"+oWne0Z`paB['R"2ZN.B3
-ZN7+>qu@Y=YHY7<['R-HYI([;X0f+7[BR$FYHYC@ZEjJ9riuR2ZMgs,ZLG3rYjo%%['Hm>"15GAYPGL0
-ZEppDZF-W=qu@Y/TqeH^Vl$>iUSau^T;\T[Vk^,fUSF]aV5=0grhTXmV>[.hV=:AXV=CDfVkp/bVPg;d
-q5+:kVPg8e!iV\oqu@Y4VQIPN`PB@3\\d$kT%UfSe[<9I]</rh^VBc`rkAZQ^Uq%e]>*jNq7Z=6#K=Hi
-]u%b(]D95I^VIh'^X/8qqu@#0['dBNZa@*G!4Mj5"Lb\I[^5t?rjDm9['TV9"1,AAZe)Ph[^<EJ[C3HK
-pTt+6['[<GCA\&E['[*@Z*h!H[B?mD[C!-FYctJ5ZidJ9Yd"8:[C-"@!O]<3[J7-![J@3*[/dH1[0*\<
-['f_:#IUqC[C*0@@f-6+VZ!FnVu!=qVl-JlVPjEl!2f^n!2ogp!iMuprMT^ori#^mnYc2]q547lVt6hl
-Vl6PlVl6=qqu@_R_V3Yrd+-grfZ;ahg"P!0g;(\\g">9;g=aj'rn.P,g""HmbL"f7g%NtoebRnoeHagY
-bL"tsg!KQJ#M%M\e^`<O1Ah+`['[<P['[<N[C3HL[CE`R[/RKI\@AuVZaRBN['mHQ\@AuU[C*HOppg.-
-n[SP*rNum>\@&cS\%&mB\,j%JrO)a0C]"/E[C*3B['[!>Z*1RBZ*:I>['0G4$*UM<YHYFBYcb2.YlD!%
-YkbQoYkbO-YHY:9YHRf,r3-@-Yct=7AGcE6Vl-JlVl6PlW2KQl!iDoorMTpuW2?JkVl.&'!iMf"qu?`I
-"kD;Z`Q6^2g'5aRg=b/raSsm#g"G-4^tRJle_8[Tg&'Lug%j@lg%jA%g&Ke*f`9b%fa$6af\5'6\Mj?c
-s0M[2$b3UOZF%'I['m?JZi.65[C*BNrj2a5[^G>+q6f+e"h(eF\$'QE!"uWE['d9KYd(R>[BR'HYdLgF
-[/RH8Z*C[=rj2a7Yd+28la?Pnn[/A(rjDd5p9b+3YdLmBY@@D0s/,do"K/2sVPX3h!N2goW;idnW;idp
-W9pM\Vtm:]VZ<[pVuN^hVZs)uVl-Jf?2O[E^qe%7aOStt_S+.HbKJVi^sL0Ge^`C-g"=us`R*>mkgfL_
-rRLSk!87A%s4R+r#2._\e_-oWqu@A5YI(gJ[^3<I[^NZT['[<N]!qXF"1,JEZhh'+Ze)S`ZN.?6['[17
-ZiIH3Zi[\>C&@rAYctL=Y->=A['6^9YdLmAriZX8['d9KY-GCA[-b9s[.1R"[-tC)['d<G!Nfi/!!8pj
-Vt[+pVl-JkVl6MkqksXpVPpDjkc"<TgSb.H>l4R.Z*D:$f\4^!g"I7pf\+g*f\59:`Pp$Ad+I(!_SXLH
-e]Z/5d.kf[g%j1obPBfkbPolfb5foab6H>HbKJV70DkePYHP=Brj2s>\?rWI['m?OrjMd4"1,GCZiIN2
-[/[Q6[f<c1[/%6-[J@3*\-'+G[^H+A!4M[0#.:tJ[(!8Tqu@A6YdL[B['d*@[C!-EYdCX<Ycn#4"LYJ@
-['BM8s0;U.s0;O0r3Z:(q6Bb&q61+3Z*:L@[C!15Zj*e>['[!?A,H<1USF`cVl'Ej!N;dlW;`^HW9pM`
-VuEXpVt$\dUL*iu)n!*(g"!sig>UT']@koZg"YB<fuVk"d+[1+gABS#g@3ekg@X(tf`9S%g&omUg"Q5S
-!8@G*!naV2qu@D7YdLj@[(!*'[CEZP['-?bL8M?W[KF"I['fnA$+.(J[C3TS\%&m![0O(I\@/cO[CH+A
-rj;s=\$`WPYA=%9-a0_Y[BHs@WJe$bYdLmCT6tjU[BQg=Y->:<Y-,":[BQp?Yck77Yh62\[JmB4['d0C
-pot%-YHb@8Y[mY3s.]juVk^/gSV*l=rhp*tQ$.26Vl6PkqPaFld&6rBrMT^onYcJ`?Mjd9]=ZeI\]*6i
-3niQHbKI;5+W>J3e_8[7f\4F#f\"p.ec+;$g"4p_e_8^1g""g0pY#f(g=k2a2#I=nYHPIE[(<]%'r8:H
-Za[HD=W`^6\@8uTYHY@A[f*Q7Za@+C[^NTNZgkEuZgY7$[JmN6ZaKV9#ICeGZa7-EC&@u0YSaaNYBgqR
-YHY@:XeJN2K!);\YdCU;[B?\3[/RH8Z*:I;pU0t,rNu+&q6UC7[B[*H['d15[0<eB[BHcCquHblrhpO/
-VfWQ7Vl-DjVjL'oH`3j@W2?;arMTjsW2HSlrMTapW;3@]W;NRmVtd1jVu*FgVZE`orMTak?2O[H[C+]A
-aPbbn!+aj@^tIRn!!"J#iRuo$WOpO0f\+6be^2kFg&]aNq:5;^q9\rfq8``_e_8^"a8sZAq:,_se_8Bs
-fr6\'!,&UCZa[<K\qC%eV7j=E[(;V`[^<ZIF&-X`20?%5X,&oB?Uo:MYY@/T<[M'=5]3f;+doOC[AHq_
-KrJ?3K=&+uYC3pf['!1jRuAb!B1c"0\<gK$6sm<C4[<:#:J<]KYI_*I['0OEquCE7Yd1I>[&nHQ#bA*%
-[C*,p19\*gWF\J(="n3fY,HY(:K'DhY-:8M7S4k%4#p]Q=WWR)YHa]l0mB?i.Wr,$XfZNG['[#)3KS\9
-:Kp%QYHWm^8iotZAMlJG,XasS9X(Y,[C!/HquH_m%B-5&Vf2\?P,G7WVl,.I0)hb$SRFfg<%DFOVk.rb
-92IZZVkZL26:`1m2`4m9<>pRbW2PtN/TI.Q-ZH#_VkIl)W$.p%2MlZ%9348CW2P>D7Q=5C@PTf9+@/4E
-8Y`5^W2QIrqu@nR]t`7R_Vl=3!+t<GbLPQ4!8H&`R0N]p!WWJ#j-CYb!!E9%#iMi\!#,U=!WYBYg"LEG
-!#U.b!#N`/hkL_]faPCk!(S76!!3-#g"ACa!!17Jq#CW(i762qXY'GNrj4>e[BR0%3$\Wq]<o&YL-r;Z
-VESjtXg4EZ*2^HD!*l^g&4rdPSu5`mNM;,_[V61.VRj1D[WVqR\VLN?\[8nr+fMiXZSlL*Wu,$;RsqQA
-,`fC'FKC%]X+::hVjMn9['[<PZu,^@rj4qnZ*19]0d-a^XgG:6G<<+4T/L#RX0@XB)kF.!"AuCS&O2t3
-PbCkVJ!kM,Z!7d2Y-G18B*t35H44es[B4Ei,bhKF[4kghVAN+$O)_D$+b?kYAZBj3VK;uLTSm`l['d'@
-ZtK::s/,do#,A)C/fb(LrMW,)2l3F;1L$?@V2$fBPbsHB9r!%E4I:#FQV.F+OE#B>=::ClW2HM&#*c$-
-#]$?:Ve[3;Vl6OF=K%Z&99k<KURE3M';pXqSo07OD?F.0K5.*YVl6Pk@/L!0_SXCHg:Q2jrW$+dj4W,D
-)?@P2D?'fuT"RDi!,:Oq!!'DS!!%9\:O)p?-!hE0i;s"!j4`5G#QST!*WQc3bMEd1He[3"!!:l/!!$n(
-&@I5m-f.2qS.n,C'EA8W3Y/+@e^srV_E.Sprj67F['R3(A>^R[U:[bAQSl4Y5!Q$X[^irE)DJV/#_]e#
-D@EYW\%[\)VnTUF]7(9k]<elUK)hsaY7j^A\$S6tK=8:j-_\5W"`1obYIT]"YJ%HLYHkXOV?_sk\uW<I
-\$iZHB)DZ.[0<eAZa#3c?_JMNRBEm"MD26@2E.A5Z)t4")Chqo$?`PU?k9<BYc`?\TrtW(Y&P#LXg5@<
-FT\VFYS9L/YdH:gFg8'H,ab^;#[X[:YcWKaYcb+3YHY76SI0bIXf/D0YHG:7?Mjg$W"c,+IT2XP$]q9`
-Vh6LtW&$5sVl$@^VihcBVl0f=Vl*f-T;\ZbFU"20Vkp8+%%=)jW2FS9SYr4o6)UWZ0`Z0iVjefhVkO;t
-VPg2eHNp7BVP9f]Vl#[_Ff210r29Xh=o8:!b9u#s^u6jHGlRhNikXM5!8H0,!.NtehW&,H!8?*+(uXHY
-!1qm(jW6PbH0*nrj:D<DikN[t(BBl_[/^3cj3%E&(ZF50!*80[!!MEC[GND5Z/slBWP.?RB`K47i0N$K
-g"=KA-i<s+['[0H[(*]&;7i_6,,;TYJLA(!!1(=,YI(aOD?-*7"aRhq=s:,Z\%%G&Tt.\B\pbHg[C3HP
-KFXrj/@e^rX1O`p0KQMPJOR&YWsEFN[(!QA*']Y"\?iWM\tT@Z\?r]Q[(!NOYA!h6rj=2^[BQiZ8$/Ho
-+.B@7F!RlL!K+%aYdCU:?ic7k#]$TG:EHaEY,m-ZR/O3-E>OtHYdCWW%AL)18/J5,NC5'LYc`%1Y-4c4
-)dKPQYHOK92heE:ZE^^<R0[l9['-[@YHG7:@/L$(W%b-JW2F](Vj@`0OJo'p+K(%rJu5KAVPg=s!/7?S
-B;VS")Pa4/W-SW-Vl-JkCD2a,W$QBjQ`-fN':u.V5pS.\Vf"MnVk")qW2?MkOr#p(Vl-AgV5TFX"E(-9
-Vl0Kl!M`ir!("fOd)F2]i#;[TGlRhPf\mJDi^Wu,j4^oXg>iA:4kTfDjl6=@XlJ'k-3.*,iS!-#!*%\+
-aOqC1HeIEZ!1)V,rW"1VjV%XHj-'HEiPO:-AcMfajkdc2^YrAs'Aggag<81%fs*"(!!'B=['m?K[^^lN
-[(2h;#ck[l4Lp.GTXqM;[][5u#a;CrB==[6S$]Q1[YY0b\?iQRIK3DM>#];X$`g_EN<l#b;iR1LS\71<
-]""sO0mQB2['ku""bX4lZa@9;$BD^)[C!<K[^NPYqu@>9['6sFYH;k&[&oW'$DstK1cDL\!LBps['$U7
-H4#D.$<sa,7ZXp`Z*AZ^T<GT.X`4G89M\2c)\&[JZ%!+BX[dl##a2;IFT/H`%4l9ZA@/Li$3t^YY-PF;
-R14\M['@!FZ*:C<AGcH-VZ*M7Vl">dW2GR]#+DE.0rK!kN2NSPW2$;4#(N9M=/Q+a6APQ=2PtU"Pc(CW
-VeZ?)8P;KU(CHV/VKiB%W'kob"cB35Dl9M.#q0FL@&U#M"pAnDW26GjO9p62q5=:"quAOi_V32Sg><PD
-g##[-!/BSO!8n[o;WQBLfX^#^!&1)H!o@\m6.srFi>qu7iP=.*&-)_0!&4TV!/B4d,lgBl!$sc.9B6'f
-i8M9J!"8i3g"7VO!#OAA^Y.OO!%-dJg=aR$g=XJ)quB-jZF76L[^_&X[C<c:#UQ:E:ptNKS%?#8[]mH5
-"-Kl+.rd9u[^`]O\VLBb[^<HSILVmPX/iUI#-5;CWtTBO2lj@r,AjS?WjK4A$r<aVMmp.+TJ?Lu[^3EQ
-U^W6nZaI9O[^3BGC&@s2Yct:5[BQcW3O,fjNsm5#TLQ+u"-9RhZ*:I8N<b'>(aiiF/?c1_[&nWYSZ]B*
-X`4i8YGnD+A-f'9YG`.CW%k3R%UQ=kUpRD7%n)t7IBKcVQRiaMF0;pRY+#rOXgPF;YHYF>Y[[M1s/#[m
-&#OA*W2HSK#Tf1q6Dn>qL]459Vk^/D"+6pZ,%)fIVl-JlVfW')W2HSlCC?&pSXQHa"e2EfS.Jtt/XrXG
->GEX8W2?I"6'QG7W2HPR.0+8bW!'#\$@/QGVu`YuquCED^"Cu\g><eKg>h3X!!$PN!87_Z6/^JNhQ>g$
-!%PY^!!WE'gYUW)h];c0f[\^7&-,M*R>/Zb!/]ajNrT?L!0#Y4"M"M`g#:H]!,3Drf\>Fc!!!\bd+I8c
-!%$OLg=b05d+YTTqu@&/ZF76LZako_ZW4H@^7,?SI8%/:#C3hf[(*EPGmL:S"`Co%"cKh![^_/!U:.S?
-\98:]\[JrYJHr*a]!b<[F)e_%ALDA.[^<KG"`qAdYdUpG\[Xj(VRX"AV?hmarj2j:['d9DD>XD5YSXIM
-[B4g>[B?p?O:!1L6Ec7RCTXhJYcpj(CC6]@#@OZT#CWk]Y-!'YRBWm!X_/0CYHG+3EseSDXg(5;ARr$I
-=X7BZYI(O;#\C0CYHG:@Xfs_bTWPT)SI9YF['d9G['@!>B)DW7V5:,hVl6M93rZ'"VhkU"Bg8MI#%sg3
-VPp>hB*OWu"C.mB"F$`AW2FbB23=c7W2=&3Su8NcVeu^)Vl6IX+(8QUW)XsG=/W!pUBG#'Vk^2gW2HRM
-!1'L\Vj%F+Vl6NkVu`PuquAjm^"V,hd,,lEd+HP&7fWN"!9#g9%,]dUftH5N!-,jU"Q0jl+lV,,hAuZ'
-g>UcC#QU1Nf\5<u!-@)V/)^I.#6rlA!WWB*g=b>n!!hQE]@bZWhq7u0Fl1m+B`K")aOSttg"P,Q3;`bN
-Za7$F[C!N!4gVT,[()\;#"6&4-5!Ak[^NlQ1.8aT#_ot%?NZP&[_%(qWj]C>]7(Wu[^NQTK*%pY\@I_-
-$`1DEV?.-d\?r]M$?$Tg[^WT?ZaRKJ#*u^+\>B7b]=>?LZideDX)7b7?F-uF[B[*BG;Ze5YdCNr%gY8#
-XWeCYY-5(4Y:Mc;W!mmPX]#I\Xg,!L$Dao/YH;d]W3<G4X`Xi@Yct6]$OrZ/Y+5b+K!2ScYRP'FZ*1R-
-Z`pU5"cBLfYFbiE$*LM9['d9D[A[a9!</kpW%Ouf18q(KVP]7Z"ZWEW*tFp@Vl6Jd.6+5s#]clA:]l9H
-VPnA:RA[!YVe[$<VuEV*E!)E)W2G"J$Bh<bPQM8>rhgI,$!sO,W2PuYVl--jJu>QFPlQ'+qPXFb@Jg-*
-^^S*,g=bC$!79]X_V\)e!);D/!!&VNg=kYc!!)#E!#jnS!!"k4iSkLNJ_o%iiXc*Rg=k6>(BAU3g#"7Z
-!+t*GB`J,^imles!!_KBg!FWPhVt+,2VZsFE<%6Ern.Iug"=Z44T#3YZk'LL\[HYnX15XG\@J(=0"+ci
-Uc&sH['Z;q<3!X'!dM/`YY#1R]!uV`R^f`5\8MP>]<f)WD?6TF[^<4H4gql2[k/#q[^<WB#W/obIA_L5
-Za4"%XLPXLM[O[<[^3?L['R6FC&@u0[3)]VY\4ZGYHG79XcO&AYHOEL'n3NsO?lF5Y*9-)Y,t*q57D\:
-X^DNtYI(O9@L%srZE:9;"eDd"[BL0!YHY.5-P*Sg['-#-0"%6fTPnAHZVr`]YdCQ\%;2iH[C*6H[BHcC
-quARPW2HSjVl4,9R]!*]Vl,=Y-)[Z'//!3)W/3Z+RAYrFAZ2N%4U?#*Vd'I]Vl6Mk?3H"\1Sq%K>m$7f
-W2HBt18h(KV]uPIVl6MV"t?L6BpNLAV5@'ESuATcFp_`WW2QVmVl6Pg?2O[kbKJG_^Yd`O!/':`_Vs??
-!!(a4@K6BQ_V%EZ!.j3,!".B8])VgIi8+S:5N9c@h?EsEikOF("TW/ng=<S2!8?,_irC8'g"tE?AcMhS
-Ae/qn#/@qR!1_`qiZS:-i7QE,g==R'WA+5M<jK$>]"#,EALE28[C!<M\u'AK[(*/Z<&RHhO0?(#M(M;o
-Zb!;Y<I(H[++(,tZ`R.SJZH,dYZ`E"X15XG?^eO8YdTO>[^``RLF+ldA5'Fg1-ScW&XBu:['4s6BVr/C
-['m?J\$'ND!<035YHYF,=X83nZ*gsCYFf4+['-?>82*D?Juu/^Hm_.I[B6WB8o'u,*c7s_[AueDF/ZFL
-YYQN[W3EM6;ie&bYHWLoYHY:8GTnhA=$j-=/2g10M63qgY\l!rTX;,7YdLmBY5i&0!,/4*W2HSmPZ8iG
-Tr=lfVl,ecU8XuY@mqq6?@/BCVKF+GOJo(P?UeXl?5[FKW2Q=V+`<jJVkZm-At>luVbi,GW2$;:Br@o.
-VfNq1;,fcYFX]+<>_8oQVk[rT=I,naVl6MlW1mSq!"ciWg>LZ-CB=JQUY=8Oj5=eY"f^27L'[bY3!Lh,
-hngE7!+=14\HW$@Ba+PHT%_P_!!![r^uMNs!"+qCj4+,ohV#Np,nJ__g=mPH!!*-$g)g4n&d1)Pf[[)7
-!!7;rd+-k#d+PBPqu@83YdCpI['QsCW404EZ`q%?[LTCI\@8iOYHkLF[^*9LY=>q+Ye.?I['R-BYd1aE
-YILsC\@AlPY.1XA['mQM\?r`P]"58W['R<I[CNBC['mHMYH,(>['[9N['-U=\[/ZO['R6FC&@rdYHP=;
-['d6B[A'h-YHk@8Y-5+1YcY(8ZEUR@Xg,+;Y->1;YH>(5['I*CYct::YctJlYHY.8['-[7[C!0AYckI<
-[B6X>YdC^<Yd(=1YdCU:Z`g=4YI(^@YI(L6['$gEYdLmBY@@D0s.fRl5,Y9OW0aH\W268eW2HMaW2?Mj
-V5'lcVl$;hW2$;gUSt&`VPU2cUSXodUSt,bW2?GjUSjc`Vl6MgVl-Jl,cIW=W2QPjUSt)^USk#gVP9Z\
-Vl6PlW2QG_Vl-JkW2HSmU0[Zs<4fc`g"FokUW\#:gY'?Ri7QfCSD)lQ_S<@hd,3fqaOmcO^q8XcVS^*u
-\ZNQt^pVk:VV0kBft$(8bJi2rXl7g`bM_<tg=a6tXkM[&Xi9#H^o8!5g=k6'gY'ZIT#KX7e_8R#fr6\'
-!%5.\Za@'IZa@6N\$WQN['d6H[^<EL[^WcU\?rWL['[9O\%B/Y]"7mL-b?am\$WTI]=5/V['[<O[(<]O
-Zb!KQ\$`HH\$WWQZaR<O['[?M\GioI\[SrP['[BT\$r]M['m?J!k5@IquHc(rj<<A[C!'?YdC[?['?sF
-YI([AriZa7YdCdF[C!0AYH>%3ri[KMYHP1:YdL[=Xg#19['d*@[BHg=Z`gd@YHb:=Y-kL<[Jm<I['[$D
-Yck75Xg#1=[C!'>Ycb=?[BR'HYHMF5!<8toVuW^pVuEV)VPpAjVl6JkVl6MkW2?KkVuWaoW;`[tVPg>j
-VZ*IsUSt)fW2KWn"fJ8sV5C0hW!&loW2HQjW!9,sW2QVlW;`[qVPsHk$)j`"Vl6MlW1mSq!#`bpd*'ei
-d+R=5j2fs._V2fPg=a?sg=bHF0\O=^d*(+riS!5Df]:uFiS*AH^uNu"Z/Xf\fu;.fg"#$7]tiRQg"G)k
-d+Hn/g<fiO)VN!dg"G*6f\YZ-^rs^Si8`J*d+-k#d+PBPquA4R[(!QR]!euQZa@*L[^<NRZaI6GZa@$F
-\%&oT[C<ZTTQPU4DJ"<t\?@9k[^<QN[^NNL\@8oR\[8cK[(<KP[C<NS[]d-K[(!ER[^3QR[^WaF[M#dI
-\@/lR\$WTQZa7$I['R6FC&@re['[$@Y-5%9[Bm6JYctO<Yd:U<YHtX@['-^;Z*CL:Y*N^;FC86hVm*D/
-YI1U@Ycb:=ricO4XgG@:!4Dg0'sY!NXg#%4Y-bF?YHY@:YHY15Y-5#,YR[hCY-kO;ZaI3F[C*3A@f-6+
-VuEUtVl-JkVY[4rVPpDfVPg8fq5=UY@q]ab=)"/&U]./4W2?MlV5L8iVl6MkW2$8gUSk&gVl6PhW2QSk
-VPg?oVPg?jW"c/.USFccW2HSmVPpAjVl6MlW1mSq!#W\og"G$9gY(,mfur(&bLkL`g=s6Te\/j!fg4?G
-g"G"U#RqIN!Y:7CZ/F?dftc=o^W"mdhT4Tng:Pnn]AqW*e_o/hf\"($_Vj.`i7lu<g">'3[C+]EfYuLd
-$K9XQd+-k#d+PBPqu?i*ZaR7?ZN[_C[C3NQrNmQQ[(!HO[C!BM['mENZ`ppC9*0:#?q7*&Z`^@8rNnJg
-]",#FVQ[A<[]m6EXKT"7[^rlU\#Z^7ZFI6BYcb16ZF%-M\$WHL[^WEJ[(!BK[^<BMYA*n7!4,J-YI1^E
-[C!?HYck7<['d<E['$[;Z*^a?['$U;Z`gO85mD"V<BZtWZE1"4[C!?KYcY%2W1U9#Xfnq2YH"_3Xfnn4
-YHY"1X0Ah6Wj&]+YS=LIZ*1R>Yck73YI(L@[BR'HYHMF5!!K0rVl-EkW!TB#Vl-JlVPgAkrhogpqku9J
-W2?>gUHJ]iIo/7kW26/XW2QVlW26GjTq%@AW2HPgW1olWW1g,eW2QVbUS"B]V4RX\$`0f"VPpDhW2HSe
-VuEV!Vl6MlW1mSq!$]4ogXX*dd+Qt'hV6`,_UZi^aOo5$g;r"%aOo8$^q872!(?ko0*)&gfY=,Dd*'DY
-ftH>$VN5Mlg#:\tfVtC9aJ7JLg=bMS[@Y(b^RVF:Z)t^_hVm/<^"V5oU"e8Rd+-k#d+PBPqu?f%YIFM=
-/[Vjk[^EKL[C<WO[^3?J\?iWQ[^<EJ['m?N^2jC[^:9lF[%&a4X1#IG\%AL^BLHiY8n4O+[]>*#?"6oK
-X15UFRl=NG[&eKu?t)c*>a)M+rj3-EULU10['R-J['R6FC&@r4YHP,.YnXRQ[BQpD[BZm<[B?gC['6j?
-YckG5[3i,cYc_OBYHG'rYI0K@2Q3j_Y-4t"><?A)5?=,RYGQL^;H?CoV])bA[#d"<R^B)/,#qW/7T"lG
-XgGICXdW:_Yl;$6YdLmBY@@D0s.TCi!iDoopo"@mW2HSjW;WUqW2HTnV[Ho8Tr+`JVl5Fu1S"BA,*c7i
-?sYupNi/eEE>;5I86D@ZW2>A&99?*DAKF]H4[Mkm!iDoprhg0d;jF;ZW2HSlW2QFrqu?eqVV(n%9>]'+
-g=j`ng=Y**fY>VKftZ8$g;VUhe_8R6j9G[^jl'7ob=Va7O4r7=g#?lN!!WW-!EA(5M&63m!<<1[in2+:
-!!$EJS-f5s!WE'20>QSg`RWgQ!H-WAd+-k#d+JH!0`1n[YctUDZaI-L[^<EJ['fn?=15HBZa[<OYI(^G
-['[9KZakSnX15[G\%A[_4LV])\%87dE3m'XVC*mi[^_q0H+8b>?`plJXqs72\@.G#O1)6d9FXe#\@/cV
-JcLtG['R-J['R6FC&@r;YHP+9[B['BZ*cX"[C!3H[C!0G['QpCYctO?Z*^m@['HfT%B6J3[BH^3*]1()
-ZEC<s.:]ZeYam$eS?K,]!Gefb%9*80+KQA:YcY'Z#D0.]R6hBOXKSk8X`OStXgGLDYdLmBY@@D0s.fOk
-!iDonr29Unr29UmrhomnW2L*$W2?MlV5J/:SZ8UeW'6ai0rLtHW2P_'?_sZqPTV05Vl,IRB;]nZ:nste
-TG')ZVPnhDH`*Qu579cMVl-DjDZG6aVPpDkVl6Pg?2O[Q]=Z_:d+Z:giQK<hg"P!"aP,"o^t?i`[EI:_
-aMQTN^Y]V'RG$HDg#JJ#-NMoT^Y%IF!!^3sZ"X1<AD6!=!"@^-!!'R_iLp5Og#(F0!%HWs>Q+U7U#FkF
-iY;GFikj'mg==R'WA+5M"1,>@\Gii8[HOt:\9f*j]<o&S\%3SS\[/ZOZlEA_\[T&XY9>=$/%VJ]J[rBa
-"g5DCZnGIh[(2_-VRa:J\UX['\[T,U5RK6W\?rTL[C!9HC&@r:Za7$C[C*BH[HY%LX_eoIXgG7=Y-/g4
-Y-PF=Zl;oGXg#"2Y9#!sY*oc@XfXemXKT"<.8$bMXV-d"SZf0!YB'_WXfnk43=ROAYl;$5Z*^pF@Jg*.
-VP^;jVuEUpVs1,^Ve?g0rhp4&W2CItVkp;hW#&5.V^JF@U)G2RViV1%Vl2]\TVnZc-:k)4VhtP?Vl6Mk
-D#e(DW2HIL#q5\L"/`#o>l4R-^qeXVe]ZY"e`kaJh@0I#j2fm'f\c`0i4m7fa8c5#hrEDHW;lq>j'Vj$
-hVnM8U#X#C!!(ZghFdi_j5AnV&HE*og"sLC!"%T:bL"Gd_U-(MquHc'!OTB9ZiIMtZjXEd!+KP'E4!*a
--V+0E0t<8GS%Gl1[^`qN"e3'%#EQL16Vt7u\[*8P[^N]5!M?a-ZF7/!&ZrLKMcG`AP.A""[f3T5C&@r:
-Za7$C[C*BH[J.'"ZjX!I!EE8[A$iGD,X)+02hD6pXg#.8YcUS(OKYAcK!)4;7^'5%ZPuB<YcWfeQ*da!
-Y-BJiX0K$Z8q.2%Y-G48YI1dD@f-3/VP^;jVuEUpVs1,]Vd]W3;HGV\VPpF93rProHNT)&USarfVb%#J
-VjI[8VPc@>W2QVk(IJ,!&q^:FW2HJjW%&:LVPnZ-Gm8_qrhostW2QOtqu@#<^tIDkbLtV"l.Ha,#64c+
-!!^<nf`2$,gY1X9!(5`\Z,#,IiW&sKj*gtWjQ$:@g!JWl!!*#T&ip"hg"X3mg&M,EiQ*/B,lfOTrRqA#
-d(_73!!BR6[(-+B!4D$t,e\=(S#1UT[^`Xk6asM1\97kL]!euM\%A+0M7KVlD6os>PI_sHZaM,X\$`]/
-"erN8[^Wkd!MQs2?&#j;8@H";['m?KY%mk7#d^kEYdLmGZ*ii'26LQtO.U<$YH>2X40PiqX_7a-YHG::
-YH<lfI'9=R?F?1qL9IedYTZN?Z*&feRBNg!Y,u(D"dlHs;Ko5h5-_;q['-jEY@@D0"K&&pW2KWn!2o([
-.ApYYLm2U^Vl$C82lNXQVdodmVl6PhW2PLQFf1W4>H!WUJ#B3@W#\;*W"OR_O/JnQW2Eo'Ni8jNEi(!A
-VZ*LrVl6Ph!+#L&#f+7/g"":!g=>H@5NE(M6Yd2;g>C6W!86,Rh?a1%i7Q5bg#>F#*oheO"OLHT0]:^#
-g&M-+g=S(Z>N+;pf]!&7<nQF4)W(MpiVqL5g=aZ[1Ah+SZa7$Krj2[5ppBRu8%<^JYeIQG[^rsq:Uma:
-]6b$`[]m3KZaQG*R_>Bq1jTBt\@K&UZR8_^[(;e.Tt@\?['s]ZVn/o5=+N45X1#LE['R-CC]"/<Za7$C
-[C*BH[HY$uY<ch/YHG()Yck8T7'Er$X_eK:YHY:8Z`fPnO04iR/o1kYYH=t4[3S;H[BG_rR'!a"['!UE
-TWP's9QMlnVm3D3rj;d2A,H<0VP^;jVuEUpVs1,lVdp",VPfi[Vl1\'Vl$;hBF5B8Vk^,eVPf=PL8U(7
-.;&iHVl0Nm!?ai1VZ_kYO/JlSW"N2@QD^2U8T$$^S#3-]Vl6Ph?Mjd/^qeXVe]ZY"e`ka2iX#UsjkG@C
-i7S)1iP<.d%00qnXl8$Mg._Q3jB2H_%0-ARinrDBci=()e_j(#=lI6OaOgOoF5_rU!##>4N8`F+e^2LI
-1].4TZa7$Krj2[5kd3.SJe4uk['m?I[NA5S[C3Z0!,K<U[(!EUD??cLTa6(TM[YHN[^3=g;n00BT)bUq
-['[CX\4\!P]43UgPDKHR\%&fPZa?oMqu@#/Za?sE[C!3Hl*Nj]F:kIT['-mAY9$'7Z*(6`!F;k8['$g>
-?j<@.QjR`7Hk1V/YdLka8$0,&Pl[;T['[!<5p!D8<\0MjHjEfXYI1aF!jo1@qu?ksVPpGkrhogpkbo_E
-%@j>pVl6Gi)*k*uW2G(E=f/-qW2QV!".,pH#&0uY$?`9GVu\#/rh^Tm!0=%VVl-CT)Q9Q4.?&b!"B;:s
-W2HSmUKm]s#f+7/g"":!g=>H@8(\OVO5&@BbIuX1!9;ecj"165jiGEnbMr^*Hf\B1&)&0,*o>Vtb5_P"
-^u8)i>MdH?j50h:g#2r3:bWpj!or7_`R*;G0DkePZa7$Krj2[5n$Mqu8%W[FYIh0M[(3ag5.J24VmJYn
-Vn'CH];.*"\%8FAPe4V%"-L4*[j+n_\@J+2QFaT9[ZWA"]<ilU]=G@]'X"mR['[9FC&@r:Za7$C[C*BH
-[HY%)X^V^@XgG7<Xfj&k2Qa*cTsQT_T!#3#Xd^bMYH=E(LomgG#DB4_YTQQAYH<ohMQZr^'87u]XgB:9
-Xf\d0's+R@['['A@Jg*.VP^;jVuEUpVs1,uVd9Y&Vl$DkVl(@fVPg>YW%eLEVl-JkOX=HBW2PpbJZ,J0
-"+C0H!?4N-VZM\VK)MSUIOK67W#gkqVl*N+T_t_hUKm]s#f+7/g"":!g=>H@/)ga5UZ0/CaPPhT!8lbl
-H,oscGi7Q7iF2ckg#-WG1udQr!%[$eirB)=i>^WG!&ilriS,pa)WJg<:#b$a!W\qHf\+s3[4M4U"1,>@
-\Gii8[HOt[\k!!l\?iQL\u-SqR%o^Y\>qA#J?PiE6X?k,\!@;,[^W\8!J.JP%l^Q#[tY/fYH+IO3G,_.
-DA]@^[L0I-!.h2[\$WQHC&@r:Za7$C[C*BH[HY%gY<E2NXgPOCYFlm[NLGE)Ybs#fF0M:)4&W8aYDN`e
-Yck5n"a$r@&2L,bYBL=EYGI_210Lld?l5WBYHN]_F/H+D['?iDqu?_o"/`#qVuEUpVs1-@V`P$8VPpDk
-Vj8/@KogXbW1,4KD53>W2bp-HW.G:OW2QUT")am"$ne!IW,`)2Tph*_0NY-M>SNS)VZVGMDO^U'!M`ot
-!!pBUg"Fp!g"P!Og%*fdhuEa>hpB?qi,\ku4CBN>fo,n2&[?+X!!'Rhferg1g=b0[!#3%f!!%c3fbshj
-VLr=o!!;-5"9<o2gY4F_'8bApg"N\_qu?i*Za@7AZiIMtZiQk479+H,[^W]SRq#6(>?6$W\?pNT8Rbtg
-\$rfQH;&R\YIh/p8r/(&>*u_%JP0N]G$nmS]"*u-@&LQA[]a:%R'a?0['+3A!!op;['6sG['@%'Ziuh"
-8nFX!riZWh<^]ta8o(]6Zit535?1U8riRcYCdMj.YcY9T5C.EI:Q)K^F?ru.B2r*#YHNXU<M6M$Y-:q]
-Mm]ar[BO-<!!K0rW2QWnVuWa[W#1Or7UhU\W2HSL;aF>V87nfuW+S=W;GM]>W!6m!AX&sfVB'V=FDjfF
-K;bP_4]G9g;,rRQVg_99QD^UYUK&murMTal?2O[.^qeXVe]ZY"e`ka(<WW7+CYIIrfg,W=!<<*,g>9mZ
-!!!$"/cOB>a:/+VCUN-<(]YTl!!#(6XV:a:!=/]-;A.pJ/H>fmi5"!Q!WY:)fuqRD0`1nQZa7$Krj2[5
-la.21[^`ZT]!SiQZadBN\$iaD[iVlc\@8fO[_&lQ[^3EO]!o2Q\@B/R[^`rY[(!KR\G`iF\@/`P\@T5X
-\$WNS[^Z7C!4Dp3C]"/<Za7$C[C*BH[I:L%[3Mr\Yd:O:['d*DYI(L;Yd(@8YcbC<YHP@AY-#%;Yd:O;
-XfhZ-s/l:(*j)TPYHP(3Y-,"3Yck@9Yck19YI([=Z*1RB['-]Equ?ksVPpGkrhojqW:6bbVuEV#VPg>j
-W2HMjW;`[sVPpDjrhogpr29drVl-DiVuEV@USt)gUSk#gW2HSlVPgAkVl6PlV5L8iVl$DkVPpAjVl6Pl
-UL*iu#f+7/g"":!g=>ZFrmaWpg=a:"jOq`2^u<u$j5/bIj5\e=g#C]3bLkgi`SSDbj5ASC[FsEq\_?$%
-fYuOthr35?hUpN9^Y7B%hnn'f_W0V.e]?Fu[5@d]"1,>@\Gii8[Hk1/[C3TT['[9N[^`KIZapCN[^WTQ
-['mC?[O&8h[^NQN[C!-G\$rfQYe%9QZadHM[C3KM\$rcPY-tdGZEq$Krj2m9['R-KY%RY4#d^kEYdLmG
-Z*j&-rj<KGYct=<['-X8YckFAXfen2[BR'CZ2Cd-[B?a<,IF_\[BQm<Y->::Xfnt:Yd(O>YHbI;Y-GC<
-Yd(R>Z`^I<[/IB7['$K<qu?ksVPpGkrhogpn#65`rhopsVl6NmVu`ZkqPXInW2TWlrhp%!Vl6PlUSn'h
-!i)]lrhogo!iDoor29gtUSt&gV5F6j"/i&qVuEUqTN_6n#f+7/g"":!g=>ZFrm_\9g=bH(aP5A"ft#)K
-i7Qc9d+QtJg)/SugX+U,hSn4&e[=8df\4EYi7lr3g#9aGg'lZef\4ldg>U_u^t@9Gfu;Lge^3"%Tdfm>
-"1,>@\Gii8[Hk1+[C3TL]=YYa['ot@$+%+IZa@-C\$WC;ZnAej[^irY[^`fR[(*TRYI(XE['d6J\$iWM
-Za[9JZa@*K]!SWJ[(*WS['R3ID>XD6ZNde@[C*BH[I:L%[/dK2YSsXHXg#49['d9KYI1[CZ*1@=YI1dF
-['d*@Y5YOGZ*1=;['6a;YdCa>[B[$BY->7>[B?pEZaI0DYI(L<[/R94[C*3DBD_`4VP^;jVuEUpVt[.c
-W;`^oW!K/sVPpGkW2QWmW!B/sW2$;hUSn'h!iMckrhfdoVu3IuVk^,dW2HSjrhojpVuEV"VP^8hW2HMf
-qPXInV-s3$#f+7/g"":!g=>ZFrm_2+g=`Ugj?);Qe_&R*aO&Ve^W"p;g"!^bbLtRlg8W`^hVR5Nf\+@!
-g"N^J^t@2k^Y7>o^r=[Qd)*TK`S'1d\_@&9"kq/Hg:o]H!!BR6[(-+B!4D."(:CT\\>u*g[^NNR\@8iU
-[^W]R\@K&T1V1$(\@B#R\?r-*Q_p[k]!f&W\?rZS['R?Q[^<NP\@T&V\%&rV\$WNP\[AlS['[?HC]"/<
-Za7$C[C*BH[I:L%[26*PYck!dOKbppXfnn7Xfnq4YcY(3[''A3$a-_9[%3J>TV8QkY7\"@YdLa=[C*-@
-YI1R<YckF<rN?X6[C*6@Z*(:<['6cFqu?ksVPpGkrhogpn#65`rhp:(S;2p!Vl$AiW2QVlW;NOnW;`^o
-W!T;uVNd$lQC"MJrhft!Vl6MkW2T]n"K85sVl0WoW;EIpW2HSmrhfgrUL*iu#f+7/g"":!g=>ZFrm_S6
-g=bJH5t0M]^u=8)aPYb*rn]NjgY(WDj4W,<^#$V?:cWZDj5AYJhV$H5i7634j4i,;hV$i?j4WDMg>g`6
-g"tH8gXX9rYlH][!!BR6[(-+B!4D."/[`$sWGe/lR&-IIS"6piX1>!nURRjMXIH)\[C3ZLKRoGU@[jj*
-S!BYY\=obuZl,C7[^N6#U8GB-U83p<Y.("!UT:c0[(!5Oqu@#/Za?sE[C!3Hq6]n'rj>A'Ycsj2MiE^e
-Q]mMo[BHI0RZ3bsPa\V6SX?[bXflkhMMbDpYbI59QE@BYS[>f3Oeo4aW.gY3YcaC`Jr6b7Pb"8B['@!@
-X^M&,"K&&pW2KWn!2o:arhoao!14O.K8##BNf/^NVkKQWOG/dPMiaNdP`GaA-DPNtJqHsWVjE3kN2W\9
-P,>1VM41B@SUZ`cVl5Z=I"S2mMis0mrMTaj>5S@+^qeXVe]ZY"eaM2jeJ-`kfmX,d4Zm=U9gq_*VM<r8
-4^^W7:LK\]Bi`s?i40[=2E:e*j*O3P;WHG5B#;a48qYdNP:p6XhUl%A.QP&l:M+"&g"P-3UFH*@"1,>@
-\Gii8[Hk1G[C3T31on0XR"l]JQa_N[[[W^[>F;(>4c#T:\%.;_Uq""0Y*:2WRu^En[r,Za[\lET\@%&U
-PGYRFB:+m>X/\R(S#`p(['m/Qqu@#/Za?sE[C!3Hn$N)%2R0KjMCtj2P)FQ)MMeTY>d9BO6Vi].H8U#1
-Y-4sR4.EFUR'2<]OFfu>Y@(A6Yb4"2Xg*(/'8E-`JQn%eI&Ec%?BD%kZ*gd>@f-3/VP^;jVuEUpVsgS`
-VuEV_K.3CiMM#seJqL">=Jgq05YZrmF>@onW2QV930C,;O/%8=LjML&W*E6!Vj95jVl4VlJ!?^T=+c!F
-S!c6>Lmk9@VZNck?2O[.^qeXVe]ZY"eaM2jeOnQLff9%uj%DEP!&cjj'*@,_56([G<#u#Z7G-;N*WT[.
-i*!TI$q2TF%G:jbg"pcM0](M%!&/2j-NZ=_*fPXM"@\'ug==ob1Ah+SZa7$Krj2^6[-Y.l[C3TR-8qR1
-\=tUd\Z]HlVRX<>H+:JO17bSV[(0R'\%/oXY;_BO]8.K7BN)LQXXBLI[t?]>[&#7J]Y1ASZoWN1ZFIBN
-['+3A!!op;['6sG['@%.ZiIK4[/dK2YXTfjR'*W\.'9\W<@4??Y"EK3XbeTlYHP=8<ACYYZ)t2aI'0St
-*4/p?Xfe]MNNKF-18;.H-Ch6AW3<QbCnIr8YI([?@f-3/VP^;jVuEUpVsgS`Vu<P"+"WJNViN.%V`geQ
-,*f((7V8NrJglSPVl6Lj/Z>SGW1kkeVl+VRW)uHcVk5)cW2FSgQ_ooiP,G4KVku.\Q)1CWVPp1nqu@#<
-^tIDkbLtV"n(I]j*ST6#g&M+Ujl0JEhrD*F!--lV!".WC2#p:[gY(F7!<Cd/g>Jq1+l_H%!6>3AiS^:-
-4Q,69!.2Rp!+b3PPM3kR%;rl<ftuF>0DkePZa7$Krj2[5la/:P[^`iN5T6`6ShI7[N,BnF\[Gd]\@R\D
-Odihe\P"]hZa[KE)54LMWtqFQA%3JaZne2\]8I\oUmN"+\Z9nOZo)`iX1,UG\$'TF!!op;['6sG['@%-
-[/RHtZ*:I7YW3W%Xck38Y'sb%:Tq$$@'?_`*e]TW[')bHXgP=7U)99&YGN)'B3)4AZn.BEXaM1FS;S5k
-Xef^($FDKpO/T4c['-]Dqu?ksVPpGkrhogpn#65`rhpg6UGWdXVMcdoVg)Jf9rFj`?)OTH)L[C>W2Dd-
-rhq!<Qkb[ZVj\6[@oK;%W%!V%Vfru/P(OIGVj_.^W%2,-SGfAeUL*iu!5JiTg"Fp!g"P!Fg&BMog=k6;
-[/^2shb=*Ej<Fg.!9<#<"l\Jg!%U@faQ!7#i6^-7IK3O0i._5<#Q`r"a8eliiZS:YA3'_-hh)5Vf`2.>
-O4`.,fsNX6!!BR6[(-+B!4DR.o!CWW\$I'A];?UU\mpkR+fDkP>e.D*5-M?"[^VJCICZqnVG1%$]ne\[
-A5BhGXZDr^\q`PZ[&Y$m]<<-E[PsBKZim_C[]aBB!!op;['6sG['@%'ZiQZ#4gc5eY+H]AX]C$q*hf`1
-;6I$O2Qa?oYHWg(DQU+GT0l/OY'Mk*=%'0oX#,m>YBW(1[&=g]XfiY,YVLq2[0*\:X^M&,"K&&pW2KWn
-!2o([&s9)j(PATL(oO<2Hu9jhVb'U\0;j+PTr=ofVh#_"Vl-;S5XhWLF"jOl6)UWQ0SlX)F#BnpSePt<
-U(rTa/q0atVuEUqTj%?o#f+7/g"":!g=>H@,@]][!'91V!7g!..MMl.huEc8h^/>uaO&Z$1]S'Di4Eb)
-!$gF^*!"mu!9)Y'!(5Z%)Z\ODQ2hKUW;oZL!%lC;e^3%&UFH*@"1,>@\Gii8[HOtSLjb>%ZaQ&QZ^GU=
-\4;(X?ZrlbM)C'N['R9NKO&MJHE!BNJVeoA[WXcqO.\aPMkPVZNtRV[QplU`<2Qi^D3Ufu\@8oND>XA>
-Za7$C[C*BH[HY%eH>eCCZ`o08Z]/7mY<?s1;eN>AHn]es['Qm>F])[jCnctsF*r%aY\5kFJX8B%I$en.
-JVC=f4`l'BT<C+YLRPENYHIu1BD_`4VP^;jVuEUpVs1-MF)$&-VPenmVM/0NV`J[m:h-H$FXqN\VP^8g
-E)'_XB:+HYDKTfHW+7W1H]BscG)gAjH[_`D3H'%/Q(g$<J<6P)W2HD!qu@&=^tIDkbLtV"g$76\*"OJ%
-^tpaF^c_eVi;aJE!!q;q*WR-/_SG$e(]XaT%=USG'-7`?g'Ia/-WC'I+]]0T-S;G_!#6OTEN&p@0jqQF
-g"O&#qu?i*Za@7AZiIN%[/737Z^[bo\?rI<WslGFX/E%rX1#O@TrP0mZP'dZYFCrP\@\f8U92&9X.H2d
-[f30?Za-:*W49@AU8Fos\"oq!YICsI[&e'@!!op;['6sG['@%'ZjO.#S$9*'Xf/(qW$8INW1^/_VQd;.
-R&$UeZEgU9XcSO-Xf\RiRB*HnWKa'KYPt11[BQ$sU9C]'R@g4]YFD5XXfek8[&R[7!!K0rW2QWnVuWa[
-W#MUhOe\hQTq.XCSuANVQCaA2W2QJOR@:(NV5Fp'TnnD]VPp&HO.WAKSVrf"VuDttW25QFQ`$aVO-Q*1
-W0*F2Tr=lfVk.5m!!pBUg"Fp!g"P!@fdsp)@^Y4KUQ^=uQJ1;YF.@-)g=a#;JVMOd^Y[nD76OK)igEqR
-T&\Om:N^^Yg\u70d(NSCHf<h`>Aeo?fj]5BUY+;D`LJd_!!BR6[(-+B!4D$t*P&Ve\?rQO\@/lVYI(jK
-\%9)U['mKQ\$NWPYI;"@[LT^P\$icU[^3HP]!f&V\,NfC\%/rRY.M$I]!SjF\c&u9ZiR@Gqu@#/Za?sE
-[C!3Hl*N%EY-+n6Yct76Yck7;YHG%3YHkR@Xfeh7XgPC:Y->16Z*gd=Y->(7YHY.3YPt[?YHb=6YdL[;
-[C!-FZ*(76YckIA['+$<!<8ntW2QWnVuWa[W"l5/W2?MiW2?MkVkU,fW2QVlV5L2grhomrVka6h"fA5s
-Vl6NmW!0#rVl6PlrhojqVZ*J"W2$5gW2HSmVl9Nk!iVf!qu@#<^tIDkbLtV"pY#/k/`545hoNLahqI,L
-WQ=,Pf\k`'e`#B;f[/O+[G'QqiRll7g"Y04fY?,"i7Qc_fG<3"j58_?\`D,ji60j4f\YK>e]$4=2#I=U
-Za7$Krj2[5kd1Dp\$R![ZF@3E[^3?L]!SWMZaR6LY-t^E\$iZMrj3iV[]m*J['[6I[^3?M\$*0F\$NHN
-['m<J['mES['R?N[JmN8[C<AUqu@#/Za?sE[C!3Hl*M,.YdC[>Y-bF<Za?p>['-[=YdCVjYHG7?Y-54<
-[C*BHYck@:['d0HYdLmBYctOCYdLjA['-mE['6d:[Bd!DZ*gsGZ*:EBqu?ksVPpGkrhogpl)4i^Vl-Ji
-W2HEiV@f`(W2$8eW2HShW2HPlVl6GirhostUSXofr29gtW2HDgW2KTm"/i)rVuEUrVkp<iW!'#sVk[Sr
-!!pBUg"Fp!g"P!@fep%p`S/#X`NeC;_V3qh\`(<W`S.lT`RWVpftZ(\aP,L_^Y.;`g<eR#e_/uje^3@'
-g"FI$&^]4Mg=kK8^Ym;hbK.ZVj1@/G!!BR6[(-+B!4D$t$F[FL[C3WR\$3<Mrj3$?YI(XE[^<WT\@2CD
-rjEoTZaI6LYdCjG[C!9H\?NEO[^3KNYI(^GZaR3H\$NI@[04"H[(!4=C&@r:Za7$C[C*BH[HY'tYWK+n
-Xg,+7YHP@@[BZsC[BQmBYHP17['d<GYckC@Z*1F9[B?mA['R'BYHG+4[BR$B['?gBY-YO>ZF'V9"gGDB
-Y-2=4!!K0rW2QWnVuWakW:6_kVkp>iVl6MgVuEV#Vl6AgW2QVkVuEUpVYm>%VPpGkW2$8hVl6PkV5U0d
-W!];uW2HSmVPpGiVu<OsVl-Jf?2O[.^qeXVe]ZY"e`k`eg-+K0g=kE;j/q%gbK/5fZ,P)DhSS4(g"O<n
-e_]0;^sLfig:Pnf`S/DK^Y-6Og"=[)fsTMeg<eKfd+Q1Qrn7P/e^`<O0`1nQZa7$Krj2[5jg59#[C!*F
-[^W^EZidbD[^6RPZEq!GY-PLI['-[B[^<RDZkBgWYI(aH['R*H[C!6I[^WWPZi7<?ZaR<L\$rfS[C!HI
-D>XA>Za7$C[C*BH[HY't[3)ZY[BHa;Y->=@[BR$B['['DY-Y=9YHP=;Ycb4<Yd>[_[BZs>[BQjB[Bm-C
-['6g>Y-bF@[C!<KZ*1O<Y-+t5[BQlIqu?ksVPpGkrhogpkGSN]W2QVhr2:d:Vl6PlW2?DgW2?>dVl-Jg
-USt,hW2QSkVPp5fW2HPlVZ*LqV5U?jW!0&qW2?Jirhogprhojm@/L!1^qeXVe]ZY"e`kaTbKJGig=<ad
-g=Y-&`RW\qhT3RI^t?H5^"_Vh[C+Z@e_/Wme`#2\bM(\#d(nAhaM$<]f\,!*bJM-CiS)0%f\"p3b6$A%
-3W&jZZa7$Krj2[5kd228ZaR$B[^NQPZF.3P\$NHM[C3HP[C!EOrj2j?Za@6N\GW]7[^H+A)n!,]ZaR6M
-[C3<K[^WTO['[9KZa7$K['[<GC&@r:Za7$C[C*BH[HY%8Y-kO<Yck:<Y->18YckC?Yd(F?Yd(R<YPtm1
-YI1b:Yl(jEY-G@@[BZmB[B?p?Z*1@6Y-518['['Erj;p6['d*>@Jg*.VP^;jVuEUpVspY[W!B2pV5L8h
-W29Hk!2fao!2ogp#,\>sW2QSkqksLmr2BXnrhp("W2QVmW2HEiW",]&W2?JjW2QVmW2HSf>l4R-^qeXV
-e]ZY"e`k`nf[/Tf^"_8XfY%:=rn0<Ig"P0:bLtUdf\=Kg_Vieog"P-#`S&>Rf\4<`bM(V!d+Hn$g=s6l
-f\+'oaMQfQd*U=rg""cN/GoJVSXlIQU7eBeXgkmP])B;QZE((.VP^/hWjKCM^:qV,rk8?=r2U44]t_>#
-`1ER#Z+\*T`rEjT]%s^uZa@0JZa[,Pqu@/7\$WEK[Bcj9Unk#jrM:%%XKJ_3ZF%6U_S<k!]tV5[Y5bp-
-]*l!JWMuYf_83alXeu)m!iW'&n[.\j#IUtD[C*3A@f-37Za6m<Y-G49Z*h!BY5PU9['R$BYct7)URI^C
-SXl:@ri6!rr1j@lWr8t%TqS6YWiZ3's/k1WrMTpuW2HSmU0[Zs%)p36e^Djpf%&C(gY;\["kM2Sf$r4K
-df@VhcMlDpebmhqg&Bb3f@S<ne(<C-rm_)(g=tH:#LM#Te^3!K0`1nNSI;!^W1or^YH>=E]"7jR&$i7;
-XJVkjWiEG<]=u#!`r<[O[f!<:[D'Jna2adCWj07Url,#U_7JI0#ICeG['R6FC&@r>\$r`L[^EEAY,%kn
-Wr8aoV@K]1Y-P@?]=Yqp^V.=p^Ab25Yl(p;Z)jn&UnkiC]=+i=rhBOnW3P0c#IUtD[C*3A@f-37Za6m<
-Y-G49Z*h!BY5PU;['R$BYct7)URI^CSXl:@WMoruW2TWj$`L)-Xfnq%TqeKbXT#F'XkTcYVl6MlW1mSq
-!"?icdacdneCN1%fA#'Yf`fsVf%/@#rmLkkqp,2qs4[D%#hn.hg="EpcI2jHgt;VV!nuA_h:W%[e_8R#
-fr6\'!</o1[(4)oa2uE>^q-\GSt;j]Z+A!"rm3"9c,@5rWN!;5\@BDm`Pod2^pgSMVl-u3Vkg&]St;g^
-Yct:-U8%Unjg59!['m?J\$'ND!#E,U[]QR'S!o_4TV8Bl\%TJf\[JcDU]-l4UT_8D`Q-$5^:h4dZa-m@
-['[?V^r!t)_8=.0`PKC"Z`p[9ZF@=0[.^j3[C*6H[BHcCqu@M2W2Zl%['[6N[^*3AX/VqlUSXidW3$!$
-"0A8hSGnoSTDYMfUnj`XrgaRgR[oq<S=uXUX0&M/YcOqaW!'#sVl6NpU0[Zs(;dr=f\+U!d*Btfe_A^*
-d*U4kfA"d"rlc)%cI'q[aN2TLc-=JVc-=tqg"+Nrr65Ynb0&#TeCWC,f@89uiRnI_e_8R#fr6\'!</o$
-[(4)oa2uC2_SEacVOjBWXKf@Wbl5s9bg")<Xf8;0\@T8e^qmk*^V7.^Y,\S3[\opqU7RsRY->.5VP9gD
-Zj3qE[^<BMYA*n7(:guaXfA(aR[BM9TrPH.]tM(h[]um.rgs1c"g>MP`Q-$tZQ$$KXK8_:\%92a]tD1t
-_SjF4_83UeYct78\$t>'#IUtD[C*3A@f-3AW2Q\sYI([E\@/]KY,eOuV5'laW2QfsXokc#St,eIrM0:e
-!Mc@iU7qRW&"8rXS"-"BTrG)pXg,+3XPg#]Vl6MlW1mSq!#EGge_&R$da6:ce^`F+eBlRje^rR)cMl#l
-cHah_b/h[&g&9P)aj&93e,IStbK@uQcICJ!f`TjUe'm:/#LM#Te^3!K0`1nd]tM1j['6g@Z*^mO]u7k2
-ahG3lZ*CA.VuNLkWr9%!YlD63_@ODi\$**>W2QVqZ+7HW\$#\,s.f4nm^*5*['m?J\$'ND!#DrK[]m0N
-[^<TP[&pI-VOjBm_84%,`r3e$^V@Cm\[fSo^qdUqZa6sC[^ru^]=uA-_n`srZ*C@9ZEga?Za8]!$+.(I
-[BR'HYHMF5!#D3!USt)eVPg;iW2cl!XK\q"R[TY4R/NQTU&UnfV>m(cTDtS_V%oc"U7\-MQ^=55TVAB`
-Y,ee2ZEg[;i2?jXW2HSmU0[Zss1]9!g""<ug""d/gt^Q7daHFcc-+;PrQP;gs3q"us31MgrR(Vq&C]4Y
-e'Q.Ubg4YcgY:H6eC=HFiRnI_e_8R#fr6\'!"uuY^UUYTZ*LXA[(X/k`6$-8[KEtCZ)di$+/5L0WiW;&
-X08_:\AH+u^q[@eY-4q*W2H`%\[oA]Y5P6tUZ&QbZa@0JZa[,Pqu@M>['m3H]!euV['Zs;VP]rV]tqP&
-_oDYm#f"-d]=GJk`PNV3]tLbYXf\k<]"u8(aN297]t(DQX0]+;Z*CXAiNrit[BR'HYHMF5!#D3!USt)e
-VPg;iW2cl!XK\q"R[TY4R/NQTU&UnfV>m%bSc>>]V$a)rU8"6MR[9A2SI;*bW2Ql"YctF=YHQl_#,eDt
-W2QFrqu@MI^Xh)gbh(Oug"G09f\"X#cHXVWbK9_,'[Y4Ue(*!jaihlPc-4Dag=t3-c--+,$-^`BeD&a3
-f@8=Kdeqe\fa#mSg==R'WA+5M#fO[%`5fX-^qT]Q'!ACBZ)k%3Z*:I8Y-"h,X/W(bqNVPVR@U(NYI1m`
-bK%?,VPsKis/>t%s17a-qm#n##ICeG['R6FC&@r:\@B)V]=55U\,3NFZa7?Y\[f/WYct73WMublUSGU#
-_%+>r]=5&GVkT?;Q(OkX[f3i;[f<T3Z153k[Ka.IYdLmBY5i&0!!o$^StVaNUSOX]W"Q/3TV/-XVP^Jt
-Z*C^E\[fGgU\^brVQ-YtYHbC>^:q7g[BQY0VuNarXm`4YV?a&tW2HSmU0[Zs#e[guf?MFgg!]cNs47h/
-d+-[uf@ej/f@8<uda-7fqTo_rcHt%if%AQrb08AeeCFQIs4./&s4d(sn^e#me_8R#fr6\'!!pN]a2H$5
-^VIS\ZkBOEZ*CC3Z*CO;Y-+n/X/i5!L&?H4JUrfDQ(Y+[[_'`+a1f'\W;`UmW;j+%](*/tYm7VB[^<BM
-YA*n7#e7CT[(EfU[(#q>'!npX]t(\^[]m!<Xf8:sVPBp5r7)2'da#kM\Zi*4V36uEQ(OkX[f3i;[f<T3
-Z153k[Kj4JYdLmBY@@D0#b%3RTq8$SUn[abs/Z0ms/#ams/l=+s0_m;s1\B*!i2WjriH+&#I(qV]XG5P
-WW&gqWW0*uW:[%YV?a&tW2HSmU0[Zs#e[guf?MFgg!]cN'%ba^d+-[uf@ej/f@8<uda-7BqQ(1=^WFmR
-g"kN-b08AeeCFQIs4./&s4d(srR^_o#LM#Te^3!K0`1qN_>_@q\[\oKZ*UaC['I*K[^W?*OH"d*:-^p!
-/ghke(_m_u')iIZ*?QFN.l'"C;J^c>Q*A-F`lu9;]=YbirNlO2s0_[0q5jCo"LPSH['TnDY\X.:(q@)g
-\\,Vg[^s#UXK8A!USOKQX1cBkfBh`$%dMZc\Y#+OPFJMY\[f>aqmHI/q6]t.q7$[:Z*:UBY-;F6!!o$^
-StDRGTVePEVP^DqZF.3M\$r]BW2Hl3g[3nB`k8gkQ'IPpNf8gOT:D:=VRF\$fY=esZb!rc^U:2:St;IB
-rM]aopSdVYqksOj?Mjd@]=Z;:`Pp6VbgkA!f\"X!e^`1!da#qDTlgZG5:76V$4$_8!rN'8"9er7%2p]S
-IAF<ne'lLab0&Ghe^`-trQtSps4[;%q:5;l!SQ3+f`Kg.1].7Q_u@RU\@T*HZ6$6W[(!KS[]>@-B3@tr
-3A2Tq'G1fe%1NdW&.oKc&f_T%)'0tJ7TN`.Lp4Y2_TK[4]Xkhk[C!<K[C!:8[/$g!WX#o=\?rWPY\X.:
-#J.LZ]"G\^Z2V*FYHXt(US=EQXNK/Pi8O2!q"X^^r;?Qnr;QourV?6_rqHiihr`b0TTbe3S#He.\@K2k
-Z*^mCZ*^q6[/%9.^'D$MYdCd?Y[dS2#Fh3SSt2OLVZ*IoXKDH-'XY?UXf\4^MO0TlN/`dSNJ3%=LPPkc
-(P$s\G^4diK:S[;]YD(k[^NKCSXuCBQM%3TW;3:cU\gtjUL*iu#Je.!dDaMcf`'P:f\+j,f@AR)eAS,%
-7OK;m$NpP'!WE';!WrQS8na^2e'ck"dDa)Vf[[spg"G*5g!Ih9g%j1rci25kg"QGY!naV2qu@PB\%05e
-^qm[mUm@1*Nf&F+3&3$,(D.2W&.BF!-7gf,3^#Yk6:40>72eN[5!:kF%LNae.6:%CPcMRBbIb?n['[6M
-\+d9*XSJt'['dEN[(!8Tqu?`-&%T6U\#QC'WNsCW_o9gLl1=o^rqc0SnFH2DoCVbUpBU?[l0A'@r;QZp
-%HYX;Xf/,3\?WHLZ*1A*[/%9.\-KCGYdCd?Y[dS2&Y#8aV4t&nYHG.4Xf/+pYdW@BbcmOrNg?&oOHPlu
-R[]e-OckurR[p%CU8"6IP)=sKJq8oQ^XU-#TV\NcWLTNXVl00cnYQ,]!Ma!!!#<2\eCr?lg=Oun`lu`P
-`O_m++qXt[quI$("U5;C&J>j&(`OSB-R^Gp.jcGW&e+mC!!*383+f/3h:TofcI^e#e_:#U!6Fuhq:5;l
-!SQ3+f`Kg.1].5/Za76V^qIIp\#Q$^N-]&F>:L^6&e56S$3ptZ-nmS@4[__18l/Ab<D#kV8k;?;68Ku.
-$kNgZ.n!WgXM;j"]Y"0M"1,MG\+m?#X9Z,?\?rWPY\X.:&@f6ZYdC:+VQ$f1^rY="gY)T*"o\Atrr2iY
-rt,2-rVQ*Vjg;.fVT-<V[C!=CYcb2)[.1[3['?jB['$WCquB*QR\HURWiNG.Wi)nuZ`TmaOc+j@IXd03
-J;Tku]uJ:Am-*HfgY191gt^Z?h;$E&d))]?H[^g%S=?LTWMu2SW2QWdW;NLcV>I1lUL*iu'sY$qgY'?X
-f\#$4dDrPOAjlt,!W`?#!#Ye?$lC?D2e6N;DL$Y^Kkt[IDJ<EV9-b#NrW*N6(LE`bg=='Wd+QU]d+R(G
-g%!Sng"QGY!8%=S1].5"\[fDa]!ST7OH"0M5r'Jg"U>8G+Yc2T=^lB%R%h(&]W8*=['d=@[hlBVXJhqf
-TWbJfMfN3!2^B\*6ZSL2`jboR!k,PFq6]stq54J)[CETN\$0ZG!"#X(Xf/4tXg?'f!9sF]!r`0!rr+GE
-oB5`)dD3,aSt<$bVP^)^St;RMV5gZ&[C)s4\&[.bn+Zh\s8V;tP)lgGZid_?Yd+#2q7HI@#ILb?['[!?
-A,H<FVP^AqY-YC:W2R2M]Wn9!MgKf%KnP>CN1cmQUo^f,[C*?I['[6KrjNZMZa-g=Y-,1@ZDsFXLk(#.
-PI%<a]>FNF!2oOhq4mbYqksOj?Mjd5^:rCTg"+^%a318h1`$>o!##A8$5b6VG`Si>db!%"eC<($e^aZK
-!S,a=f%&9udacgi["qX-$j6\E5,H]TbLtRiaOU:Dq:YSmq8`TigA]b,fW?t-!<0Yl\@T#LRsSmQ82qt2
-#RLhI)_3s;<dKUaQ(Fq_]tUVN['[9M\@B#S[&^'tSt<-gV43Qn<Br>l.6%Q:Fiq\5[^<C6[/$`tX9Z,?
-\?rWPY\X.:riQX/Whul-eC!=Bnb<"WruU(D`P/gaU7\'XWhuYfU7e0OV5C?!['mE?VR!ePi;NZbq=<Y"
-NKUNM['d9J[C,q>rj;L5q7$[:Z*:UBY-;F6!</u]Ycb76Ybn(_Q]6o_P*LQQOeAYd]r\**Uo1<#[C3BH
-['[9M\@B#T['R'BY-,.<WhuSk^!s?SH$YCA`kCo@o:u>\qksOj?Mjd5bfnJbgY(B/VJ]'W&-`17!"8l1
-%3nPsYJJH3g=b$TeGn/#f)F/?f%8F"da?ImfA"m#YC9Ln%0Hu(P/Yf$g=aioaNMd&g%j+meH+@Wrn.A*
-XY]kTs3DP-W/GId5qWud%h0*g+=_YcIZ9nlXK]7Frk8HB[C-"Js1&'4)mQZV^;\(4aKr4UY-5:G]=")J
->"1=u0sJ$n[f3W6Zh_!(Wqie&['dEN[(!8Tqu?n`P*N<"nG<.grr2rt]u1B/c+ps%[Cs8h]tVA"_>^_>
-[Jm`Z]tM"dZEgR5`Po[0[]ZI'Vm4G#jS/]SYI(O<[C!<Kq6]t0q7$[:Z*:UBY-;F6!$Jqe\?DX0^:L8-
-PF@c*SYiKGP+\bJV5'l[T:DIAR$jBAV>m=iT,=5oU8"K\Vl,rNSt;dWYck:@_PNZj`9F&rVuWahW:?Y[
-Vu`Z"qu@&@_p$WFSSU7t"8r65!X9'8F.^=qdaZjic-4JZbg+N5gAfk*eH4+Ee,Ieqd/V5fbnJ[\h;6r4
-VH5&U&L>!0g=k)uaO'b9q:#/i!SQ3+f`Kg.1].4kd*Tq:M-N\3)A`qo$kjj;2NF#gR\-4LX15\=^&kaN
-[Jmoa[C*0?YHY7=^r++2aL/F[YH5+A\ZqWbI8`9V)lp3M\$uLH[(,q=q5X7i#ILnK['[<HC]"/ANfKF/
-de<J0q>UEorr2os&'`&-]=kkl]=bel^qmn(_>^n\^:h:r]u.e%[&pR5XM)<Z]t(PFU8G01fDbdUrhcp,
-Y->:?Ykb[']DoM=^'D$MYdCd?Y[dS2+MPRtX/)JMKQWB;Q'.cIe*<a(U8"?XUSOQUS=H%8R@4&L!M?%a
-T,F/hTVSE\W2H/UT:_sX[^NZU['eZ?\!ie]o;MJ[q4IP_!2BO#qu@&,YKkt;B.48j!r`30!XK\u`6?Z[
-eBuXkdF%p:"jYE8aj&'/clCKPaO&Vog=+EsdaZ^qe^W*rd*B.N4:;7JXkDA"g%j+m])gU=rn.A*XY]kT
-&?)P.Mc:l<'aPL!3)XgbXg?]f0=A6t[^N]PY;.q7Lnq#T[ATmrSt)4;P@I<R4Z"W1('t<U%20U!+tbZ3
-5aSstEr5n@\@Aomq#13l#Q=Ghm``JIZgb?eZl$'PY-5(6Z`jB-rR8-WVPg`+[^`o_^;TR<s8W)mrr]s5
-Pumk`&?)P(VNlq,WK3!oO-66=Yb^0Tpo#aAVl6JdKSc=tVm<_9Xf\b/XK&.mdI[4g`4)qOR@Kh@VQ$Z#
-]<fc5Y-#*Bqu?l8^tldjrW<E+!<`roLVVNug"?_dg=Y0:ftaHl%9"ObgXF*meC2jodE^.aRs&$s*=`5S
-!!!$#!WrQ1'HAl1cIf!Hqu@;+VlPbU)$U?O*]$)fNM*DYfsD^+['dEQ\?iP*4]Q<`XgYU-Vl6\oQ\p#V
-4#ei+,8h$t#mq%L&f2H/*?m%"NjluKqu?r2\?sQToDAIc"T6?NXgZoi+gJDZYcb4<[/^0pe@;QXW4B4>
-Yd;*beEQMimI0]Dqu6Tlrri;orr9_7WKpZa!"c*-VkoT!F,u9T\'qphWNi>KW"l2b[Yp!@YHP:9Xf8:t
-WMQ,]URI@+rf%GVS=Q=JVPpMSI?12+Y.&$@!!L!Kg;6&P!!`ZI8;kU=e^rL-*no<$g">!)_G2gF;l87(
-f$;e#gtU)YOX_7_#m:;1rW)ou$3C;6!WiZV[FhcAqu@;H`5@jI/h/hM=F-=A_8r:CppB%f"LYVDZaB_A
--cF,D>ut'aT;8ELG"b7^/MoRS7o!)j>[:W<;bTSH3[c!s7X_>OEVoeJTV/%#p%%MGqu50VW0j0m_<82s
-ZiIB1[/dT5YU>p,nEolJe[rK&b3/g)rpTFHnEfN)iT9"Ri9BOrm.:5ImetJ;SQl!lri?R"O`YH&TY.k>
-YICX'S(OY?Vl9Nl-aL:JLkqatTW"i_UpQ\@AqYttO-Q3)TpqL<Q'.5eN/Me(OJ\q^B)DW?]=ZY9=9\j@
-/V(=Ygssp#d+R(Sg==BnrRhS/c%AAC?Fn_6e]+L+@k8#j$P=*t1.G;L<)?+H/0>fC"T\`OV:iI=quH`7
-%@:Hc4$cDiOI*>nbb(TYZlc`c\&u[SG?.^bQ`R'/?q!(:4[;A(:L.pgJV],1Cg7<B90tTq3_5(-^2WuM
-"/)<^_u0N>e&&SmPFf\,fX1Ub&?r@@R$knSrp&1UZFA?;l1b)T#l<`9e]c=llhgPY"4"6C>PnI$X:MD5
-TVJBU_:>]hYHkpJS=S<2"/i)rVuEVB]!@s+R=C0jVl,K$Ed*>*d*gRm_mZeQXKAb<`RE8of"AApXerC7
-qu@>@]@Y;\,oo'[][#$Zb/_cTg"G%2e]Z.dg=b-$eBP!j.VR#X]P]P<$PORQ=(6B6VRO+R_6p"sF`(A=
-+XKdthmkTA!"c*-Vm*:kQ^t7^YH+_D`lc*c[-=ss[2QE[[ABh<_5r#m;G'P\@s3j#XL,CI]"Ynq_YqRS
-aTnN)P*s%u[r2*D&BMr0[(+/r\Z;a2[C)d)XKgWhr3QL4[/R<:['?mI[\9J'f^\t@%K#A>ai:WoZ*(4,
-Vkp6gT)G,`YI_N^S"-0Xqu@:qR%:"KV5(5uYd(70YHOn"fr+nKqPXLqWNWH5X-/O1VOim*MjUB>VuEXn
-Ws#Z2Xf\f+Xp;8?YH>4?Y@@D0$G*gng"*mJcI^\!rRCqj^tIBAe_0rU(YRNre(*.-fSiit7QWe.CR`>r
-e_8d1fDaA)e'lgre,Ic#e]l=`eCgr\qu@;,W2Hl)T:i-bZ)k",`5BX3fsCmg[CE]Srj3uJX2Vu]QYTGj
-8m$h6TVJHm[(<ib_8aL<bK@rLb/qbuS!fb[^B(c]qu@;MahkEm]tCVPX0&e;US=fpfsCmiZ*:F9rj<!B
-[@j(p_"Rd,rs[Jq]"5>W['?p:Wi2lqT)bJ]Rg64+]"+<#TO.Nr$(73PUnjc\Xg,)7ZE(%-XJhoDW;`\*
-WN!82WgolMR&R6aStDgXrhostXf\\+rius:ZEUO8['H[2[C32Jqu@;@]Zo'ZdF6Xrf$qpof%/<epY"T[
-"OPlUg"QGU(=UdZ_Um2$5;PfY\^8sYe_/X1f@J<nrlGVnda?Ikda6@mf[S?H2>dFc`5Ka;bf.EAd)sSR
-_TKg+\)t'gZn8et[C!<KVl[/+Z*^d9Zb+5t`kA7HbKIrC^UCGMYck:7ZEgpHZa7-FYGe4/qu@;6ZF-a;
-ZE0aoTVJTp[C*ZZfsCjh['6bRZ*gsD_n!4_\?WHQZ`^(!W34%UTqSNm[^s)brjrTO\\#GdTq\<^X0K!E
-qu@:tS"QOOV5C8oW2lhmTV.gFe>NnUW2QDbVP0c]UnFT`YHP&9Wh?#bWhuVfU7n-JrgaFjTq\3m]<e`H
-YG5M'!"cTIeCW$kg=4'kda64cf$i1&f`94pfcf)"g"OBof=SiNf"0Mge^DjhbKJDbf@JO%e'Q[reC<$t
-$.I8EcI^\!e>G;(!"d&caN2WB`QHNQbJ_0<`4!,+ZlQT_['[9MWi!#*Z*::5Zb+5t`kA@Obfn/F^U:>K
-rN$C2YdLpH[^WNFWhF)'!<9>7[B$O6Yb@ecTrG0%]YqM:Zlc]`Yd(UDYcbOO]!f/\]="uKUSOik^:U/8
-XL#CL]tXH^$c'Qk\tPmoX/iG3B`%iCR$aPATqS<^XK8G"VP'KKS>`C?W#hk8W2HPlW2$,aVP^2cV5C2p
-YH=h"UT:JoV5']VSc,&dT:_dN[^WWJZ*0p1qu@;,W79G9^=UoUa4/_ndDa8Umb-s['?eq[g==a-f[S9p
-f@A*nf%Ad.ci2;qe'cOgbg$.6rQGYpcHt%jeCW:&eZUt1!"d/ib."IQXK]1Wdb*3ua0rG4[.Ud<bKI/q
-]"ukEbIX.2S=RjHZ*F87qmud6"0A#`\Gio;aE7=[&@8^N]ZAF?`5]<cTV/<q_84O+"Ikmh[]p7>Pa%ZB
-`l?!7S"$jprNuI,rj2sA^qQhLUS<WEqu@:uS=lC>Pa7Z%Su/NfV4O-EdARY`Z_jUuXgkmIW1BKLT<kl$
-VZ!IgW!K5sV67#2Zc$YW!"cfUdF6.Oa32NKai;?Ed`p%afa6!Nf@Sd2b0&&brlPAgcd14prRq)&rn.P,
-cd:Cue((K!1&M"_`l?01XK/G,\'*4Pf[%UH[aDGobKI/q]"ukEbIX.2S=RjHZ*F87qmud6"0A#`\Gio;
-aE7=[&@8^N]ZAF?`5]<cTV/<q_84O+&Y#8u[]ucqPaeqt`l5faS$od([/7--Zj=4X^8e6/U5DnI!"bZj
-TU_C6QC!o/VQ-YmSsl,;W8a`fZa6O+W3*S>Z`'FcS=d-oVPa!a#c4DpY-5=@`,#8N&A5['e&T8EbK%oM
-`l?6Nc->/!o@XGrce$e'g<.Rag]#=uc-O_ffDXD"g]#k3e^)Urf[JBO1&M"_USFQf[FE[M_7-n^[]HRM
-`mM-pU8"n<Z*q*DY.r*/e]b:gS@Z;@Y,7h_StDXNW3EkK^ppnd\uW*6B`%iA`l>d)]qV:/_o0L0_8*j]
-UX?F^`l>^*]"5Yk[\oR_UV4joWiE,+'=YWf]tD"g[]ld*TtS+AZF-j6@/L!9T:_gLTW+r_R@'A1R[p"Q
-YL09ZS"$(DU8"9PUT1T(XItrJriQ:&WViS"Vl?f$ZEg*qW2HZtWj$"2!"co[d+-L\ajA/Pb0A2WcdgRn
-fdFqbd*U7jd*U@kaiViT`PpTdg=Oj%d*U1fe(*.+e^_plgXk!.Yqu:X#c"/hYdN!0c,'Fhs0hs/s2NHn
--_d??Z*q*DY.r*/e]b:gS@Z;@Y,7h_StDXNW3EkK^ppnd\uW*6B`%iA`l>d)]qV:/_o0L0_8*j]U\M4M
-ZmWl5]tM"g^V@4TR[U"bbKHocX0]:J]tM(k\[J`BTqT04Y-PI<W*oN'&>,SgT:i0`Ssbt5R[Te<YHR,f
-l_k>`S"QFKU7\'QWj/h1TU;,GXoYT&r1sk#WNE>/ZCdegVlQi%A,H<<^VA.Gd)3uPai_cNc-O_de^iFO
-fdFqbd*U7jd*U@kaiViT`PpTdg=Oj%d*U1fe(*.+e^_plgXk!.Yqu:X%)p3(Z*ha!\[fGgb0'^X!2e/N
-rOMsCrPnrU\H');Y5bm/])95O['Zp9VkTp'`4EIr_7=L^!"b?XR'43)[_]u"_6p\d^pgVs[/IQ8[f*6.
-ZFRRG^]1\@Z2Ca([/[ZD]YD4o]X>DETU/gZ!"clY\uMF%Ssbq6R\6=GT<,9EW;WIjU]%+mV4s^`TDb_d
-WXbu+V59r\Tq.dMTXD#7B)DW/_%4B-f?hXac,e,QdF$:de'udurRCkurR1i!eC4EDs4RG,r7he8g""X$
-d*TkXg!S7!Y;6"U%)p3(Z*ha!\[fGgb0'^X!N*6P[/IQ8^\u1S_R[,SY5bm/])95O['Zp9VkTp'`4EIr
-_7=L^!"b?XR'43)[_]u"_6p\d^pgW<[,\Ol\c9,:WrfT;])KJE[/[E/XU__F\[fAf^V%4e]Utj`=o872
-^:q1YTW"HMQ^XA9TV%jXYhl>NW;WIjU]%+mV4s^`TDb_dWXbu+V59r\Tq.dMTXD#7B)DW?_84FKd)jPW
-aNVlUdEg.feButJeGn+udfS+Me,I_og&Kh)g^`#je^`*pd)aGadF-UL1Ah+`YHP7$SYicmW2m2Faf_e\
-^<s=bao]Vt]Df/>[_Bf&rOr9M!6"iVrPT#V^<Fg,Yen/MB)DW?V5:'%`P]R4ai;5rVmE^uRaJM>[0!nP
-^])(P_7dCirOr6BrOMm<s1SEB!l1J&!N0?'!"c]O[&9RiR[9A.RB!9fX1GmiW;E4hSt2DMRKB%OT)G5S
-SdCsYSt;XJ[BQuKqu@&C`n&P\bKS,KaTfr9dF[!sd*^PDd/qbAcMl#ic-FbcrQbGjrR1Yl$-pi9b14ed
-f!7.1!"c?;ZC@D^[&Bq(Z,t+jY.hXE[+htbao]Vt]Df/>[_Bf&rP&<MrQ"lT$,4-tbd+Ii^S>E=!"c!'
-VS'mc_T'^;_l'E=Z^R?F[-Y0s[0!nP^])(P_7dCirOr6BrOMm<s1SEB"Mg\(VdTE&&@o?YVkB]OQ^=)-
-WiE,#]"6FjrM]Ud!hPsQrL*eYSt>nOpRV\^SXuFHT=(o0Ac)N>`l?TWbKJ,P`lZEOdF[!sd*^PDd/qbA
-cMl#fblZ2=df%JkdJ_Mld0\+D`lciWe(1f]qu?i*Za@7AZiIM6ZjF+HZa@0JZa[,Pqu@#/Za?sE[C!3H
-WO)o<[BR'HYHMF5!<8ntW2QWnVuW`oW!9/uVl6Pg?2O[.^qeXVe]ZY"eb@b'fa#mSg==R'WA+5M"1,>@
-\Gii8[H4d6Zj3qE[^<BMYA*n7#d^kEYdLmGZ*i,he[,Rh[BR'HYHMF5!!K0rW2QWnVuWa6W9'r^Vl6Ml
-W1mSq!!pBUg"Fp!g"Ou_g%X/)d+-k#d+PBPqu?i*Za@7AZiIM4Zj*kD[^<BMY5i;7!!op;['6sG['@$<
-Zj4"HYdLmBY@@D0"K&&pW2KWn!2oXkYc%c(W2HSmU0[Zs#f+7/g"":!g=>E?_V#1@e_8R#fr6\'!!BR6
-[(-+B!4CCbe$K@d['m?J\$'ND!!op;['6sG['@$Y[,eS![C*6H[BHcCqu?ksVPpGkrhogp[A`_r#,eDt
-W2QFrqu@#<^tIDkbLtV"WS%F$e_8R#!njP,qu?i*Za@7AZiIM4Zj3qE[^<BMYA*n7#d^kEYdLmGZ*gR<
-#IUtD[C*3A@f-3/VP^;jVuEUpVspXqW!9/uVl6Pg?2O[.^qeXVe]ZY"e_f''fa#mSg==R'WA+5M"1,>@
-\Gii8[EZ)6Zj3qE[^<BMYA*n7#d^kEYdLmGZ*h9PmBd,+[BR'HYHMF5!!K0rW2QWnVuW`sW;WY!Vl6Ml
-W1mSq!!pBUg"Fp!g"OuUfa#mSg==R'WA+5M!4)a5[(-+B!4Ac4#ICeG['R6FC&@r:Za7$C[C*BH[J7,7
-Zj4"HYdLmBY@@D0"K&&pW2KWn!2o"Y_Pd[:W2HSmU0[Zs#f+7/g"":!g==d-eCb)Re_8R#fr6\'!!BR6
-[(-+B!4BbPjg59!['m?J\$'ND!!op;['6sG['@$G[.^j3[C*6H[BHcCqu?ksVPpGkrhogpW2KisW2HSm
-!MWlt!!pBUg"Fp!g"OuUfa#mSg==R'WA+5M"1,>@\Gii:[C!<@Zj3qE[^<BMYA*n7#d^kEYdLmGZ*j&-
-]<hgN[BR'HYHMF5!!K0rW2QWnVuWaPW6;+DVl6MlW1mSq!!pBUg"Fp!g"P!$g"k<dd+-k#d+PBPqu?i*
-Za@7AZiIMG[-k:+Za@0JZa[,Pqu@#/Za?sE[C!3HX0`2?['d<G[C*3A@f-3/VP^;jVuEUpVl6NuVl6Ml
-W1mSq!<9h=g"Fp!g"OuUfa#mSg==R'WA+5M"1,>@\Gii8[J$u6Zj3qE[^<BMYA*n7#d^kEYdLmGZ*i`$
-`3]cW[BR'HYHMF5!!K0rW2QWnVuWaGW77aMVl6MlW1mSq!!pBUg"Fp!g"Oupg#grmd+-k#d+PBPqu?i*
-Za@7AZiIM>[.gp4Za@0JZa[,Pqu@#/Za?sE[C!3HWO)l;[BR'HYHIq8qu?ksVPpGkrhogpW2KouW2HSm
-U0[Zs#f+7/g"":!g=?#PZ.TB/e_8R#fr6\'!!BR6[(-+B!4D!s_R'QS['m?J\$'ND!!op;['6sG['@$j
-[*uAe[C*6H[BHcCqu?ksVPpGkrhogp`i.pr#,eDtW2QFrqu@#<^tIDkbLtV"[Ft6+#LM#Te^3!K0`1nQ
-Za7$Krj2[5W3c]6['m?J!k5@Iqu@#/Za?sE[C!3HWO)o<[BR'HYHMF5!!K0rW2QWnVuW`oW!9/uVl6Pg
-?2O[.^qeXVe]ZY"eaV8'fa#mSg==R'WA+5M"1,>@\Gii8[GJ:6Zj3qE[^<BMYA*n7#d^kEYdLmGZ*hla
-gp@<o[BR'HYHMF5!!K0rW2QWnVuWa/W9gGeVl6MlW1mSq!!pBUg"Fp!g"OuXg&BY0d+-k#d+PBPqu?i*
-Za@7AZiIM4Zj3qE[^<BMYA*n7!4)p:['6sG['@$<Zj4"HYdLmBY@@D0"K&&pW2KWn!2oUjZ)@l)W2HSm
-U0[Zs#f+7/g"":!g=>B>_q>:Ae_8R#fr6\'!!fd6ZF-sAZEr)de?K7\XgYRH]!lST!!g$D['@'N['R]Z
-jgGE(\?NBIXf>h-!!]6pVl$>fVm<2nVZ3LkVu``%qu?u=_V*Snd+R'Mf*0aVg<e:#!Ne3V!!fU,Z*:I8
-Z*C73#HY#6YdV*JC]"/=['[?S\$WZT\$rBH#JIgXYH>+*?Mjd-TV/'VUnORNUq<E-U8"N[U8X_iqu?u)
-Y/&,m]>2;>^<F:r^V@Xt]ucQiqu?u'XKf"6Y-G7UYhcMgXK8e5[^i\Zqu?u/[(*]V[(*WX\*g^1]tLeV
-Xg4^.qu?qoTVJ?ZTqeT_$)FAkU8F][W1[Dn!!f[0^rX7%^r!%a#J\$j]=l=P.f99s~>
-
-%%EndBinary
-grestore
-np
-grestore
-grestore
-pgrs
-%%PageTrailer
-[
-[/CSA [/0 ]]
-] del_res
-Adobe_AGM_Image/pt gx
-Adobe_CoolType_Core/pt get exec
-Adobe_AGM_Core/restore_mysetup gx
-Adobe_AGM_Core/pt gx
-currentdict Adobe_AGM_Utils eq {end} if
-%%Trailer
-Adobe_AGM_Utils begin
-[/EMC pdfmark_5
-currentdict Adobe_AGM_Utils eq {end} if
-Adobe_AGM_Image/dt get exec
-Adobe_CoolType_Core/dt get exec
-Adobe_AGM_Core/dt get exec
-%%Pages: 1
-%%DocumentNeededResources:
-%%DocumentSuppliedResources: procset Adobe_AGM_Image 1.0 0
-%%+ procset Adobe_CoolType_Utility_T42 1.0 0
-%%+ procset Adobe_CoolType_Utility_MAKEOCF 1.23 0
-%%+ procset Adobe_CoolType_Core 2.31 0
-%%+ procset Adobe_AGM_Core 2.0 0
-%%+ procset Adobe_AGM_Utils 1.0 0
-%%DocumentNeededFeatures:
-%%DocumentSuppliedFeatures:
-%%DocumentCustomColors:
-%%CMYKCustomColor:
-%%RGBCustomColor:
-%%EOF
diff --git a/Master/texmf-dist/doc/latex/fc_arith/examples/graphics/nwfsc_logo.pdf b/Master/texmf-dist/doc/latex/fc_arith/examples/graphics/nwfsc_logo.pdf
deleted file mode 100644
index d6e9357c755..00000000000
--- a/Master/texmf-dist/doc/latex/fc_arith/examples/graphics/nwfsc_logo.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/source/latex/fc_arith/fc_arith.drv b/Master/texmf-dist/source/latex/fc_arith/fc_arith.drv
deleted file mode 100644
index 43343d9df7a..00000000000
--- a/Master/texmf-dist/source/latex/fc_arith/fc_arith.drv
+++ /dev/null
@@ -1,42 +0,0 @@
-%%
-%% This is file `fc_arith.drv',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% fc_arith.dtx (with options: `copyright,driver')
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% fc_arith.sty package, 2010-3-17 %%
-%% Copyright (C) 1999-2002 D. P. Story %%
-%% dpstory@uakron.edu %%
-%% %%
-%% This program can redistributed and/or modified under %%
-%% the terms of the LaTeX Project Public License %%
-%% Distributed from CTAN archives in directory %%
-%% macros/latex/base/lppl.txt; either version 1 of the %%
-%% License, or (at your option) any later version. %%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-%% History: Noel Vaillant began developing a better fc_arith.sty
-%% based on my earlier published fc_arith.sty. Many thanks
-%% to him for starting me off.
-%%---------------------------------------------------------
-\documentclass{ltxdoc}
-\usepackage[colorlinks,hyperindex]{hyperref}
-\begin{document}
-\def\CMD#1{\textbackslash#1}
- \GetFileInfo{fc_arith.sty}
- \title{fc\_arith: Flash Cards for Arithmetic}
- \author{D. P. Story\\
- Email: \texttt{dpstory@uakron.edu}}
- \date{processed \today}
- \maketitle
- \tableofcontents
- \let\Email\texttt
- \DocInput{fc_arith.dtx}
- \PrintIndex
-\end{document}
-\endinput
-%%
-%% End of file `fc_arith.drv'.
diff --git a/Master/texmf-dist/source/latex/fc_arith/fc_arith.dtx b/Master/texmf-dist/source/latex/fc_arith/fc_arith.dtx
deleted file mode 100644
index c7f604e56c2..00000000000
--- a/Master/texmf-dist/source/latex/fc_arith/fc_arith.dtx
+++ /dev/null
@@ -1,1802 +0,0 @@
-%\iffalse
-%<*copyright>
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% fc_arith.sty package, 2010-3-17 %%
-%% Copyright (C) 1999-2002 D. P. Story %%
-%% dpstory@uakron.edu %%
-%% %%
-%% This program can redistributed and/or modified under %%
-%% the terms of the LaTeX Project Public License %%
-%% Distributed from CTAN archives in directory %%
-%% macros/latex/base/lppl.txt; either version 1 of the %%
-%% License, or (at your option) any later version. %%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-%% History: Noel Vaillant began developing a better fc_arith.sty
-%% based on my earlier published fc_arith.sty. Many thanks
-%% to him for starting me off.
-%%---------------------------------------------------------
-%</copyright>
-%<package>\NeedsTeXFormat{LaTeX2e}[1997/12/01]
-%<package>\ProvidesPackage{fc_arith}
-%<package> [2010/03/17 v0.1a fc_arith: PDF flash cards for arithmetic drill (dps)]
-%<*driver>
-\documentclass{ltxdoc}
-\usepackage[colorlinks,hyperindex]{hyperref}
-%\pdfstringdefDisableCommands{\let\\\textbackslash}
-%\EnableCrossrefs \CodelineIndex
-\begin{document}
-\def\CMD#1{\textbackslash#1}
- \GetFileInfo{fc_arith.sty}
- \title{fc\_arith: Flash Cards for Arithmetic}
- \author{D. P. Story\\
- Email: \texttt{dpstory@uakron.edu}}
- \date{processed \today}
- \maketitle
- \tableofcontents
- \let\Email\texttt
- \DocInput{fc_arith.dtx}
- \PrintIndex
-\end{document}
-%</driver>
-% \fi
-% \MakeShortVerb{|}
-% \StopEventually{}
-%
-% \DoNotIndex{\def,\edef,\gdef,\xdef,\global,\long,\let}
-% \DoNotIndex{\expandafter,\string,\the,\ifx,\else,\fi}
-% \DoNotIndex{\csname,\endcsname,\relax,\begingroup,\endgroup}
-% \DoNotIndex{\DeclareTextCommand,\DeclareTextCompositeCommand}
-% \DoNotIndex{\space,\@empty,\special}
-%
-% \begin{macrocode}
-%<*package>
-% \end{macrocode}
-%\section{Package Options}
-% \begin{macrocode}
-\RequirePackage{xkeyval}
-\RequirePackage{calc}
-% \end{macrocode}
-% \begin{macro}{allownegsub}
-% The original arithmetic flash cards did not allow a negative difference,
-% if this option is used, the differences are allowed to be negative.
-% \begin{macrocode}
-\DeclareOptionX{allownegsub}{\def\fcAllowSub{true}}\def\fcAllowSub{false}
-% \end{macrocode}
-% \end{macro}
-% \begin{macro}{nomenu}
-% The menu allows to user to change the range of the numbers, using this
-% option removes the menu.
-% \begin{macrocode}
-\DeclareOptionX{nomenu}{\let\fc@usemenu=n}\let\fc@usemenu=y
-% \end{macrocode}
-% \end{macro}
-% \begin{macro}{operations}
-% Give the ability to declare what operations FC should show. Supported operations
-% are add, sub, mul, div. The default is all operations.
-% \begin{macrocode}
-\DeclareOptionX{operations}[add,sub,mul,div]{\def\fc@operations{#1}}
-\def\fc@operations{add,sub,mul,div}
-% \end{macrocode}
-% \end{macro}
-% \begin{macro}{showkeypadlink}
-% If the \texttt{nomenu} option is taken, you can select the \texttt{showkepadlink} so the
-% user can toggle the keypad.
-% \begin{macrocode}
-\DeclareOptionX{showkeypadlink}{\let\fc@keypadlink=y}
-\let\fc@keypadlink=n
-% \end{macrocode}
-% \end{macro}
-% \begin{macro}{notimedscores}
-% Do not tally timed scores. Some may not want the pressure!
-% \begin{macrocode}
-\DeclareOptionX{notimedscores}{%
- \def\fcTimedScores{false}
- \let\fc@timedscores=n
-}
-\def\fcTimedScores{true}
-\let\fc@timedscores=y
-% \end{macrocode}
-% \end{macro}
-% \begin{macrocode}
-\ProcessOptionsX
-\RequirePackage{eforms}[2010/03/21]
-\RequirePackage{popupmenu}
-% \end{macrocode}
-%\section{Main Code}
-% \begin{macrocode}
-\newdimen\fcWidth
-% \end{macrocode}
-% The keys for the \texttt{fcopera} family are defined here. These are % used with the \texttt{operations} option. These define the \texttt{add}, % \texttt{sub}, \texttt{mul}, and \texttt{div} operations.
-% \begin{macrocode}
-\define@boolkey{fcopera}{add}[true]{}
-\define@boolkey{fcopera}{sub}[true]{}
-\define@boolkey{fcopera}{mul}[true]{}
-\define@boolkey{fcopera}{div}[true]{}
-% \end{macrocode}
-% We take the macro \cs{fc@operations} defined by the \texttt{operations} option, set
-% the corresponding keys for the \texttt{fcopera} family.
-% \begin{macrocode}
-\edef\fc@expand{\noexpand\setkeys{fcopera}{\fc@operations}}\fc@expand
-% \end{macrocode}
-% \begin{macro}{\DeclareArithParams}
-% The builder of this arithmetic flash cards can hard-wire the ranges. Here is an
-% example of usage:
-%\begin{verbatim}
-%\DeclareArithParams
-%{%
-% addT={[2,20]},addB={[5,30]},
-% addDecT=none,addDecB=2,
-% subT={[1,5]},subB={[5,10]},
-% subDecT=1,subDecB=2,
-% mulT={[1,12]},mulB={[1,10]},
-% mulDecT=1,mulDecB=2,
-% divQ={[1,4]},divB={[1,10]},
-% divDecQ=1,divDecB=2
-%}
-%\end{verbatim}
-% Below are defined the keys used by \cs{DeclareArithParams}.
-% \begin{macrocode}
-\define@key{fcarithparams}{addT}[{[0,100]}]{\def\fcAddTParams{#1}}
-\define@key{fcarithparams}{addB}[{[0,100]}]{\def\fcAddBParams{#1}}
-\define@choicekey{fcarithparams}{addDecT}[\val\nr]{none,1,2}[none]{%
- \edef\fcaddDecT{\nr}}{}
-\define@choicekey{fcarithparams}{addDecB}[\val\nr]{none,1,2}[none]{%
- \edef\fcaddDecB{\nr}}{}
-\define@key{fcarithparams}{subT}[{[0,100]}]{\def\fcSubTParams{#1}}
-\define@key{fcarithparams}{subB}[{[0,100]}]{\def\fcSubBParams{#1}}
-\define@choicekey{fcarithparams}{subDecT}[\val\nr]{none,1,2}[none]{%
- \edef\fcsubDecT{\nr}}{}
-\define@choicekey{fcarithparams}{subDecB}[\val\nr]{none,1,2}[none]{%
- \edef\fcsubDecB{\nr}}{}
-\define@key{fcarithparams}{mulT}[{[0,100]}]{\def\fcMulTParams{#1}}
-\define@key{fcarithparams}{mulB}[{[0,10]}]{\def\fcMulBParams{#1}}
-\define@choicekey{fcarithparams}{mulDecT}[\val\nr]{none,1,2}[none]{%
- \edef\fcmulDecT{\nr}}{}
-\define@choicekey{fcarithparams}{mulDecB}[\val\nr]{none,1,2}[none]{%
- \edef\fcmulDecB{\nr}}{}
-\define@key{fcarithparams}{divQ}[{[0,10]}]{\def\fcDivQParams{#1}}
-\define@key{fcarithparams}{divB}[{[0,10]}]{\def\fcDivBParams{#1}}
-\define@choicekey{fcarithparams}{divDecQ}[\val\nr]{none,1,2}[none]{%
- \edef\fcdivDecQ{\nr}}{}
-\define@choicekey{fcarithparams}{divDecB}[\val\nr]{none,1,2}[none]{%
- \edef\fcdivDecB{\nr}}{}
-% \end{macrocode}
-% We set the defaults for these keys.
-% \begin{macrocode}
-\setkeys{fcarithparams}{addT,addB,subT,subB,mulT,mulB,divQ,divB,%
- addDecT,addDecB,subDecT,subDecB,mulDecT,mulDecB,divDecQ,divDecB}
-\newcommand{\DeclareArithParams}[1]{\setkeys{fcarithparams}{#1}}
-\@onlypreamble\DeclareArithParams
-% \end{macrocode}
-% \end{macro}
-% \begin{macro}{\timeUpMsg}
-% \begin{macro}{\rightMsg}
-% \begin{macro}{\wrongMsg}
-% \begin{macro}{\startAgainMsg}
-% \begin{macro}{\newCardMsg}
-% Strings that can be redefined; the meanings are obvious.
-% \begin{macrocode}
-\newcommand{\timeUpMsg}{Your Time is UP!}
-\newcommand{\rightMsg}{Right!}
-\newcommand{\wrongMsg}{Wrong!}
-\newcommand{\startAgainMsg}{Start Again}
-\newcommand{\newCardMsg}{New Card}
-\newcommand{\toggleKeypad}{Toggle Keypad}
-\newcommand{\operation}{Operation}
-\newcommand{\numCorrect}{Number Correct}
-\newcommand{\numAttempted}{Number Attempted}
-\newcommand{\percentCorrect}{Percentage Correct}
-\newcommand{\timedScores}{Timed Scores}
-\newcommand{\fmtAnswer}{Answer:}
-\newcommand{\kpDec}{.}
-\newcommand{\kpMinus}{-}
-\newcommand{\kpBack}{Back}
-\newcommand{\kpEnter}{Enter}
-\newcommand{\fcNoTiming}{No Timing}
-\newcommand{\fcAddition}{Addition}
-\newcommand{\fcSubtraction}{Subtraction}
-\newcommand{\fcMultiplication}{Multiplication}
-\newcommand{\fcDivision}{Division}
-\newcommand{\fcSettings}{Settings}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \begin{macro}{\FCMenu}
-% This is the menu system, it is normally placed in the running header
-% on the left, though this can be changed.
-% \begin{macrocode}
-\newcommand{\fcSettingsColor}{black}
-\newcommand{\FCMenu}{\mbox{\setLinkText[\linktxtcolor{\fcSettingsColor}
- \A{\JS{processFcMenu();}}]{\fcSettings}}}
-\if\fc@usemenu y\lheader{\FCMenu}\rheader{}\else
-\lheader{}\rheader{}\fi
-% \end{macrocode}
-% \end{macro}
-% \subsection{The form fields}
-% \begin{macro}{\tBGNoBorder}
-% \begin{macro}{\tBGNoBorderI}
-% \begin{macro}{\cBGNoBorder}
-% \begin{macro}{\cBGBorder}
-% \begin{macro}{\myNumPad}
-% Some preset formatting for the various fields. May be redefined.
-% \begin{macrocode}
-\newcommand{\tBGNoBorder}{\BC{}\BG{}\autoCenter{n}\textSize{0}
- \textColor{1 0 0}\Ff\FfReadOnly}
-\newcommand{\tBGNoBorderI}{\BC{}\BG{}\autoCenter{n}\textSize{0}
- \textColor{0 0 0}}
-\newcommand{\cBGNoBorder}{\Q{1}\BC{}\BG{}\autoCenter{n}\textSize{0}
- \textColor{0 0 0}\BG{.75 .75 .75}\Ff\FfReadOnly}
-\newcommand{\cBGBorder}{\BC{0 0 0}\BG{.75 .75 .75}\autoCenter{n}
- \textSize{0}\textColor{0 0 0}}
-\newcommand{\myNumPadI}{\F\FHidden\autoCenter{n}\textSize{8}
- \textFont{\fieldFont}\S{S}}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \begin{macro}{\setDimOf}
-% \begin{macro}{\monoSpaceFont}
-% \begin{macro}{\fieldFont}
-% The following are some customization commands, used for setting field properties that
-% are not included in the presets.
-% \begin{macrocode}
-\newcommand{\setDimOf}[3]{\@namedef{widthOf#1}{#2}%
- \@namedef{heightOf#1}{#3}}
-\newcommand{\monoSpaceFont}{CoBo}
-\newcommand{\fieldFont}{Helv}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \begin{macro}{\arithProb}
-% \cs{arithProb} consists of three fields: \texttt{top}, \texttt{operation}, and \texttt{bottom},
-% these three fields are bundled together as a single unit. We use \textbf{courier-bold} for the \texttt{top} and \texttt{bottom}
-% so we can align the decimal points, if there are any.
-% \begin{macrocode}
-\setDimOf{top}{1in}{0.62in}
-\setDimOf{operation}{.38in}{.62in}
-\setDimOf{bottom}{1in}{0.62in}
-\newcommand{\arithProb}{\mbox{\vbox{\offinterlineskip
- \hbox{\hspace*{\@nameuse{widthOfoperation}}%
- \textField[\presets{\tBGNoBorder}
- \textFont{\monoSpaceFont}\Q{2}]{top}%
- {\@nameuse{widthOf\Fld@name}}{\@nameuse{heightOf\Fld@name}}%
- }%
- \hbox{%
- \textField[\presets{\tBGNoBorder}
- \textSize{25}\Q{1}]{operation}{\@nameuse{widthOf\Fld@name}}%
- {\@nameuse{heightOf\Fld@name}}%
- \textField[\presets{\tBGNoBorder}
- \textFont{\monoSpaceFont}\Q{2}]{bottom}%
- {\@nameuse{widthOf\Fld@name}}{\@nameuse{heightOf\Fld@name}}%
- }}}%
-}
-% \end{macrocode}
-% \end{macro}
-% \begin{macro}{\alertbox}
-% \begin{macro}{\startAgain}
-% \begin{macro}{\inputRegion}
-% \begin{macro}{\newCard}
-% More components of these flash cards: \cs{alertbox} displays the ``Right/Wrong'' message;
-% \cs{startAgain} is a button for starting all over again, it takes an icon;
-% \cs{inputRegion} is where the user inputs his/her answer;
-% \cs{newCard} a push button for randomly geneating a new problem. These different elements
-% can be placed anywhere.
-% \begin{macrocode}
-\setDimOf{alertbox}{.88in}{.62in}
-\setDimOf{StartAgain}{0.88in}{0.62in}
-\setDimOf{result}{1.38in}{0.62in}
-\setDimOf{NewProblem}{0.88in}{0.62in}
-\newcommand{\alertbox}[1][]{\hbox{\textField[\presets{\tBGNoBorder}
- \textSize{0}#1]{alertbox}{\@nameuse{widthOf\Fld@name}}%
- {\@nameuse{heightOf\Fld@name}}}}
-\edef\distillOpts{\ifnum\eq@drivernum=1 \else\noexpand\FB{false}
- \noexpand\I{null}\noexpand\TP{2}\fi}
-\newcommand{\startAgain}[1][]{\hbox{\expandafter\pushButton\expandafter[\distillOpts
- \presets{\tBGNoBorderI}\textFont{\fieldFont}\S{S}
- \textSize{12}\CA{\startAgainMsg}\AC{\startAgainMsg}#1
- \A{\JS{startAgain();}}]{StartAgain}{\@nameuse{widthOf\Fld@name}}%
- {\@nameuse{heightOf\Fld@name}}}}
-\newcommand{\inputRegion}[1][]{\hbox{\textField[\presets{\cBGNoBorder}
- \Ff{-\FfReadOnly}\Q{2}#1\AA{\AAValidate{validateResult();}
- \AAKeystroke{myNumber_Keystroke(numDecimals,1,0,0,"",true);}
- \AAFormat{try{%
- myNumber_Format(numDecimals,1,0,0,"",true);}catch(e){}}}
- ]{result}{\@nameuse{widthOf\Fld@name}}%
- {\@nameuse{heightOf\Fld@name}}}}
-\newcommand{\newCard}[1][]{\hbox{\expandafter\pushButton\expandafter[\distillOpts
- \presets{\tBGNoBorderI}\textFont{\fieldFont}\S{S}
- \CA{\newCardMsg}\AC{\newCardMsg}#1\A{\JS{newCard();}}
- ]{NewProblem}{\@nameuse{widthOf\Fld@name}}%
- {\@nameuse{heightOf\Fld@name}}}}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \begin{macro}{\cbTiming}
-% \begin{macro}{\ansField}
-% \begin{macro}{\cbOperation}
-% \cs{cbTiming} is a dropdown menu for timing; \cs{ansField} is a text field where
-% the correct answers are written; \cs{cbOperation} is a dropdown menu of operations.
-% \begin{macrocode}
-% {\@nameuse{widthOf\Fld@name}}{\@nameuse{heightOf\Fld@name}}
-\setDimOf{TimeDelay}{0.9in}{0.24in}
-\setDimOf{ansregion}{.87in+10bp}{.24in}
-\setDimOf{ChooseOperation}{1.38in-10bp}{0.24in}
-\edef\isReadOnlyTiming{\if\fc@timedscores n\noexpand\Ff{\FfReadOnly}\fi}
-\newcommand{\cbTiming}[1][]{\hbox{%
- \expandafter\comboBox\expandafter[\isReadOnlyTiming\presets{\cBGBorder}
- \textFont{\fieldFont}\V{600000}\DV{600000}#1
- \AA{\AAKeystroke{%
- if (!event.willCommit) timelimit=event.changeEx;}}
- ]{TimeDelay}{\@nameuse{widthOf\Fld@name}}%
- {\@nameuse{heightOf\Fld@name}}{%
- [(600000)(\fcNoTiming)][(30)(30 sec)][(25)(25 sec)][(20)(20 sec)]%
- [(15)(15 sec)][(10)(10 sec)][(5)(\space 5 sec)]}}%
-}
-\newcommand{\ansField}[1][]{\hbox{\textField[\presets{\cBGNoBorder}\Q{2}
- #1\AA{\AAFormat{%
- if (event.value!="") {\r
- try{myNumber_Format(numDecimals,1,0,0,"",true);\r
- event.value="\fmtAnswer\space" + event.value;}catch(e){};}}}
- ]{ansregion}{\@nameuse{widthOf\Fld@name}}%
- {\@nameuse{heightOf\Fld@name}}}%
-}
-\newcommand{\cbOperation}[1][]{\hbox{%
- \comboBox[\presets{\cBGBorder}\textFont{\fieldFont}#1
- \V{a}\DV{a}]{ChooseOperation}{\@nameuse{widthOf\Fld@name}}%
- {\@nameuse{heightOf\Fld@name}}{%
- \ifKV@fcopera@add[(a)(\fcAddition)]\fi%
- \ifKV@fcopera@sub[(s)(\fcSubtraction)]\fi%
- \ifKV@fcopera@mul[(m)(\fcMultiplication)]\fi%
- \ifKV@fcopera@div[(d)(\fcDivision)]\fi}}%
-}
-% \end{macrocode}
-% \end{macro}
-% \end{macro}
-% \end{macro}
-% \cs{szNum} is the width and height of a keypad button.
-% \begin{macrocode}
-\newcommand{\szNum}{14bp}
-% \end{macrocode}
-% \begin{macro}{\Keypad}
-% A keypad for the user to enter responses using the mouse only. Cool!
-% \begin{macrocode}
-\newcommand{\Keypad}{%
- \vbox{\offinterlineskip\if\fc@keypadlink y
- \setlength{\fcWidth}{\szNum*4}%
- \hbox to\fcWidth{\small\hfill\setLink[\linktxtcolor{blue}
- \A{\JS{ToggleKeyPad()}}]{\toggleKeypad}\hfill}\vskip4bp\fi
- \hbox{\pushButton[\presets{\myNumPadI}\CA{7}
- \A{\JS{addDigit(7)}}]{num7}{\szNum}{\szNum}%
- \kern1bp\pushButton[\presets{\myNumPadI}\CA{8}
- \A{\JS{addDigit(8)}}]{num8}{\szNum}{\szNum}%
- \kern1bp\pushButton[\presets{\myNumPadI}\CA{9}
- \A{\JS{addDigit(9)}}]{num9}{\szNum}{\szNum}}%
- \vskip1bp
- \hbox{\pushButton[\presets{\myNumPadI}\CA{4}
- \A{\JS{addDigit(4)}}]{num4}{\szNum}{\szNum}%
- \kern1bp\pushButton[\presets{\myNumPadI}\CA{5}
- \A{\JS{addDigit(5)}}]{num5}{\szNum}{\szNum}%
- \kern1bp\pushButton[\presets{\myNumPadI}\CA{6}
- \A{\JS{addDigit(6)}}]{num6}{\szNum}{\szNum}}%
- \vskip1bp
- \hbox{\pushButton[\presets{\myNumPadI}\CA{1}
- \A{\JS{addDigit(1)}}]{num1}{\szNum}{\szNum}%
- \kern1bp\pushButton[\presets{\myNumPadI}\CA{2}
- \A{\JS{addDigit(2)}}]{num2}{\szNum}{\szNum}%
- \kern1bp\pushButton[\presets{\myNumPadI}\CA{3}
- \A{\JS{addDigit(3)}}]{num3}{\szNum}{\szNum}}%
- \vskip1bp
- \hbox{\pushButton[\presets{\myNumPadI}\CA{0}
- \A{\JS{addDigit(0)}}]{num0}{1bp+\szNum*2}{\szNum}%
- \kern1bp\pushButton[\presets{\myNumPadI}\CA{\kpDec}
- \A{\JS{addDigit("Dec")}}
- ]{Dec}{\szNum}{\szNum}\kern1bp
- \smash{\vbox{%
- \hbox{\pushButton[\presets{\myNumPadI}\CA{\kpMinus}
- \A{\JS{addDigit("Minus")}}
- ]{Minus}{\szNum}{\szNum}}\kern1bp
- \hbox{\pushButton[\presets{\myNumPadI}\CA{\kpBack}
- \textSize{0}\A{\JS{addDigit("Back")}}
- ]{Back}{\szNum}{\szNum}}\kern1bp
- \hbox{\pushButton[\presets{\myNumPadI}\CA{\kpEnter}
- \textSize{0}\A{\JS{addDigit("Enter")}}
- ]{Enter}{\szNum}{1bp+\szNum*2}}%
- }}}}%
-}
-% \end{macrocode}
-% \end{macro}
-% \cs{fcSep} is a standard separation between elements.
-% \begin{macrocode}
-\def\fcSep{\quad}
-% \end{macrocode}
-% \begin{macro}{\statsFields}
-% A collection of fields that summarize the attempts at responding to the arithmetic
-% problem.
-% \begin{macrocode}
-\setDimOf{fcSF}{0.37in}{0.25in}
-\newcommand{\statsFieldOpColor}{1 0 0}
-\newcommand{\statsFieldColor}{blue}
-% \end{macrocode}
-% \begin{macrocode}
-\newcommand{\statsFields}{%
-% \end{macrocode}
-% The Addition column
-% \begin{macrocode}
-\ifKV@fcopera@add
- \vbox{\offinterlineskip
- \hbox{\textField[\presets{\cBGNoBorder}\textColor{\statsFieldOpColor}
- \V{+}\DV{+}\Q{1}]{AddScore1}{\widthOffcSF}{\heightOffcSF}}%
- \hbox{\textField[\presets{\cBGNoBorder}
- ]{AddScore2}{\widthOffcSF}{\heightOffcSF}}%
- \hbox{\textField[\presets{\cBGNoBorder}
- ]{AddScore3}{\widthOffcSF}{\heightOffcSF}}%
- \hbox{\textField[\presets{\cBGNoBorder}
- ]{AddScore4}{\widthOffcSF}{\heightOffcSF}}%
-\if\fc@timedscores y
- \hbox{\textField[\presets{\cBGNoBorder}
- ]{AddScore5}{\widthOffcSF}{\heightOffcSF}}%
-\fi
- }\fcSep
-\fi
-% \end{macrocode}
-% The Subtraction column
-% \begin{macrocode}
-\ifKV@fcopera@sub
-\vbox{\offinterlineskip
- \hbox{\textField[\presets{\cBGNoBorder}\textColor{\statsFieldOpColor}
- \V{-}\DV{-}\Q{1}]{SubScore1}{\widthOffcSF}{\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{SubScore2}%
- {\widthOffcSF}{\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{SubScore3}%
- {\widthOffcSF}{\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{SubScore4}{\widthOffcSF}%
- {\heightOffcSF}}
-\if\fc@timedscores y
- \hbox{\textField[\presets{\cBGNoBorder}]{SubScore5}{\widthOffcSF}%
- {\heightOffcSF}}
-\fi
- }\fcSep
-\fi
-% \end{macrocode}
-% The Multiplication column
-% \begin{macrocode}
-\ifKV@fcopera@mul
-\vbox{\offinterlineskip
- \hbox{\textField[\presets{\cBGNoBorder}\textColor{\statsFieldOpColor}
- \V{x}\DV{x}\Q{1}]{MulScore1}{\widthOffcSF}{\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{MulScore2}{\widthOffcSF}%
- {\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{MulScore3}{\widthOffcSF}%
- {\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{MulScore4}{\widthOffcSF}%
- {\heightOffcSF}}
-\if\fc@timedscores y
- \hbox{\textField[\presets{\cBGNoBorder}]{MulScore5}{\widthOffcSF}%
- {\heightOffcSF}}
-\fi
- }\fcSep
-\fi
-% \end{macrocode}
-% The Division column
-% \begin{macrocode}
-\ifKV@fcopera@div
-\vbox{\offinterlineskip
- \hbox{\textField[\presets{\cBGNoBorder}\textColor{\statsFieldOpColor}
- \V{\string\367}\DV{\string\367}\Q{1}]{DivScore1}{\widthOffcSF}%
- {\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{DivScore2}{\widthOffcSF}%
- {\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{DivScore3}{\widthOffcSF}%
- {\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{DivScore4}{\widthOffcSF}%
- {\heightOffcSF}}
-\if\fc@timedscores y
- \hbox{\textField[\presets{\cBGNoBorder}]{DivScore5}{\widthOffcSF}%
- {\heightOffcSF}}
-\fi
- }\fcSep
-\fi
-% \end{macrocode}
-% Description column
-% \begin{macrocode}
-\vbox{\offinterlineskip
- \hbox{\parbox[b][.25in][c]{.75in}{%
- \textcolor{blue}{\operation}\hfill}}
- \hbox{\parbox[b][.25in][c]{1.25in}{%
- \textcolor{blue}{\numCorrect}\hfill}}
- \hbox{\parbox[b][.25in][c]{1.25in}{%
- \textcolor{blue}{\numAttempted}\hfill}}
- \hbox{\parbox[b][.25in][c]{1.25in}{%
- \textcolor{blue}{\percentCorrect}\hfill}}
-\if\fc@timedscores y
- \hbox{\textField[\presets{\cBGNoBorder}\textColor{\statsFieldOpColor}
- ]{ScoreTotal}{.51in}{.25in}\kern1bp
- \makebox[0pt][l]{\pushButton[\presets{\tBGNoBorder}
- \Ff{-\FfReadOnly}\S{S}\H{I}\textSize{10}
- \A{\JS{docTimeScores();}}]{Descrip5}{1in}{.25in}}%
- \parbox[b][.25in][c]{1in}{%
- \centering\textcolor{blue}{\timedScores}}}%
-\fi
- }%
-}
-% \end{macrocode}
-% \end{macro}
-%\section{JavaScript Code}
-% \begin{macrocode}
-\edef\bFCa{/\ifKV@fcopera@add/\else*\fi}
-\edef\eFCa{\ifKV@fcopera@add/\else*\fi/}
-\edef\bFCs{/\ifKV@fcopera@sub/\else*\fi}
-\edef\eFCs{\ifKV@fcopera@sub/\else*\fi/}
-\edef\bFCm{/\ifKV@fcopera@mul/\else*\fi}
-\edef\eFCm{\ifKV@fcopera@mul/\else*\fi/}
-\edef\bFCd{/\ifKV@fcopera@div/\else*\fi}
-\edef\eFCd{\ifKV@fcopera@div/\else*\fi/}
-\begin{insDLJS*}[_loadfcjs]{fcjs}
-\begin{newsegment}{data}
-var _loadfcjs=true;
-var t, b, o, r, c, oAlert;
-function getFieldObjects()
-{
- t=this.getField("top");
- b=this.getField("bottom");
- o=this.getField("operation");
- r=this.getField("result");
- c=this.getField("ChooseOperation");
- oAlert=this.getField("alertbox");
- useKeyPad = (this.getField("Enter").display==display.visible);
-}
-var turnoff=false;
-var timedScores=\fcTimedScores;
-var useKeyPad = false;
-var decimalPressed = false;
-var keypadInput=false;
-var operand='a';
-var NumAddCorr=0;
-var NumAddTried=0;
-var NumSubCorr=0;
-var NumSubTried=0;
-var NumMulCorr=0;
-var NumMulTried=0;
-var NumDivCorr=0;
-var NumDivTried=0;
-timelimit=600000;
-mybegin="";
-getFieldObjects();
-var numDecimals=0;
-var addDecT = \fcaddDecT, addDecB = \fcaddDecB;
-var addT_a = Number(\fcAddTParams[0]);
-var addT_b = Number(\fcAddTParams[1]);
-var addB_a = Number(\fcAddBParams[0]);
-var addB_b = Number(\fcAddBParams[1]);
-var subDecT = \fcsubDecT, subDecB = \fcsubDecB;
-var subT_a = Number(\fcSubTParams[0]);
-var subT_b = Number(\fcSubTParams[1]);
-var subB_a = Number(\fcMulBParams[0]);
-var subB_b = Number(\fcMulBParams[1]);
-var mulDecT = \fcmulDecT, mulDecB = \fcmulDecB;
-var mulT_a = Number(\fcMulTParams[0]);
-var mulT_b = Number(\fcMulTParams[1]);
-var mulB_a = Number(\fcMulBParams[0]);
-var mulB_b = Number(\fcMulBParams[1]);
-% \end{macrocode}
-% Here, Q corresponds to the quotient, and B corresponds to the divisor
-% \begin{macrocode}
-var divDecQ = \fcdivDecQ, divDecB = \fcdivDecB;
-var divQ_a = Number(\fcDivQParams[0]);
-var divQ_b = Number(\fcDivQParams[1]);
-var divB_a = Number(\fcDivBParams[0]);
-var divB_b = Number(\fcDivBParams[1]);
-\end{newsegment}
-\begin{newsegment}{updatescore}
-function updatescore(f,t) {
- // console.println(t);
- var points;
- if(t<=5) points=6;
- if((t>5)&&(t<=10)) points=5;
- if((t>10)&&(t<=15)) points=4;
- if((t>15)&&(t<=20)) points=3;
- if((t>20)&&(t<=25)) points=2;
- if(t>=25) points=1;
- var oField=this.getField(f);
- if ( oField != null ) {
- oField.value+=points;
- this.getField("ScoreTotal").value+=points;
- }
-}
-function docTimeScores() {
- app.execDialog(fcTimedScoresDialog);
-}
-var fcTimedScoresDialog =
-{
- // set a default value for radio button field
- initialize: function(dialog) {
- },
- // when user presses "Ok", this handler will execute first
- commit: function(dialog) {
- },
- // The Dialog Description
- description:
- {
- name: "PDF Flash Cards - Timed Scores",
- align_children: "align_left",
- elements:
- [
- {
- type: "view",
- align_children: "align_left",
- elements:
- [
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "instr",
- name: "Points are awarded, based on time, "
- +"for successfully solving a problem:"
- }
- ]
- },
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "gap",
- width: 10
- },
- {
- type: "static_text",
- item_id: "hr01",
- char_width: 22,
- font: "dialog",
- bold: true,
- name: "Time elapsed"
- },
- {
- type: "static_text",
- item_id: "hr02",
- font: "dialog",
- bold: true,
- name: "Points"
- },
- ]
- },
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "gap",
- width: 10
- },
- {
- type: "static_text",
- item_id: "st11",
- char_width: 22,
- name: "Less then 5 sec"
- },
- {
- type: "static_text",
- item_id: "st12",
- name: " 6"
- },
- ]
- },
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "gap",
- width: 10
- },
- {
- type: "static_text",
- item_id: "st21",
- char_width: 22,
- name: "Between 5 and 10 sec"
- },
- {
- type: "static_text",
- item_id: "st22",
- name: " 5"
- },
- ]
- },
-//---
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "gap",
- width: 10
- },
- {
- type: "static_text",
- item_id: "st31",
- char_width: 22,
- name: "Between 10 and 15 sec"
- },
- {
- type: "static_text",
- item_id: "st32",
- name: " 4"
- },
- ]
- },
-//---
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "gap",
- width: 10
- },
- {
- type: "static_text",
- item_id: "st41",
- char_width: 22,
- name: "Between 10 and 20 sec"
- },
- {
- type: "static_text",
- item_id: "st42",
- name: " 3"
- },
- ]
- },
- ]
- },
-//---
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "gap",
- width: 10
- },
- {
- type: "static_text",
- item_id: "st51",
- char_width: 22,
- name: "Between 20 and 25 sec"
- },
- {
- type: "static_text",
- item_id: "st52",
- name: " 2"
- },
- ]
- },
-//---
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "gap",
- width: 10
- },
- {
- type: "static_text",
- item_id: "st61",
- char_width: 22,
- name: "Greater than 25 sec"
- },
- {
- type: "static_text",
- item_id: "st62",
- name: " 1"
- },
- ]
- },
-//---
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- alignment: "align_right",
- type: "ok",
- }
- ]
- }
- ]
- }
-}
-function validateResult()
-{
- var oField;
- if (!turnoff && !keypadInput) {
-% event.target.readonly=true;
- MsgFlag=false;
- delay=true;
- timenow=new Date();
- mynow=util.printd("mmm d, yyyy, H:M:s",timenow);
- elapsedtime = (Date.parse(mynow)-Date.parse(mybegin))/1000;
- timeelapsed = (elapsedtime>timelimit);
- switch (operand) {
- case 'a':
- oField = this.getField("AddScore2");
- calculation=Number(t.value)+Number(b.value);
- if(timeelapsed) {
- if (timedScores) app.alert("\timeUpMsg",3);
- if ( oField != null ) oField.value=NumAddCorr;
- } else {
- if(Number(event.value)==calculation) {
- MsgFlag=true;
- if ( oField != null ) {
- oField.value=++NumAddCorr;
- updatescore("AddScore5",elapsedtime);
- }
- }
- else
- if ( oField != null ) oField.value=NumAddCorr;
- }
- oField = this.getField("AddScore3");
- if (oField != null ) oField.value=++NumAddTried;
- oField = this.getField("AddScore4");
- if (oField != null ) oField.value = util.printf("\%.0f",
- (NumAddCorr/NumAddTried)*100);
- break;
- case 's':
- oField=this.getField("SubScore2");
- calculation=Number(t.value)-Number(b.value);
- if(timeelapsed) {
- if (timedScores) app.alert("\timeUpMsg",3);
- oField.value=NumSubCorr;
- } else {
- if(Number(event.value)==calculation) {
- MsgFlag=true;
- if ( oField != null ) {
- oField.value=++NumSubCorr;
- updatescore("SubScore5",elapsedtime);
- }
- } else
- if ( oField != null ) oField.value=NumSubCorr;
- }
- oField=this.getField("SubScore3");
- if (oField != null) oField.value=++NumSubTried;
- oField=this.getField("SubScore4");
- if (oField != null) oField.value=util.printf("\%.0f",
- (NumSubCorr/NumSubTried)*100);
- break;
- case 'm':
- oField=this.getField("MulScore2");
- calculation=util.printf("\%."+numDecimals+"f",
- (t.value*b.value));
- if(timeelapsed) {
- if (timedScores) app.alert("\timeUpMsg",3);
- if (oField != null) oField.value=NumSubCorr;
- } else {
- if(Number(event.value)==Number(calculation)) {
- MsgFlag=true;
- if (oField != null) {
- oField.value=++NumMulCorr;
- updatescore("MulScore5",elapsedtime);
- }
- } else
- if (oField != null) oField.value=NumMulCorr;
- }
- oField=this.getField("MulScore3");
- if (oField != null) oField.value=++NumMulTried;
- oField=this.getField("MulScore4");
- if (oField != null) oField.value=util.printf("\%.0f",
- (NumMulCorr/NumMulTried)*100);
- break;
- case 'd':
- oField=this.getField("DivScore2");
-% calculation=t.value/b.value;
- calculation=util.printf("\%."+numDecimals+"f",
- t.value/b.value);
- if(timeelapsed) {
- if (timedScores) app.alert("\timeUpMsg",3);
- if (oField != null) oField.value=NumDivCorr;
- } else {
- if(Number(event.value)==Number(calculation)) {
- MsgFlag=true;
- if (oField != null) {
- oField.value=++NumDivCorr;
- updatescore("DivScore5",elapsedtime);
- }
- } else
- if ( oField != null ) oField.value=NumDivCorr;
- }
- oField = this.getField("DivScore3");
- if (oField != null) oField.value=++NumDivTried;
- oField = this.getField("DivScore4");
- if (oField != null) oField.value=util.printf("\%.0f",
- (NumDivCorr/NumDivTried)*100);
- break;
- }
- if(!timeelapsed) {
- if(MsgFlag) {
- oAlert.textColor=color.blue;
- oAlert.value="\rightMsg";
- } else {
- oAlert.textColor=color.red;
- oAlert.value="\wrongMsg";
- }
- }
- this.getField("ansregion").value=calculation;
- this.getField("NewProblem").setFocus() ;
- delay=false;
- }
-}
-function startAgain() {
- getFieldObjects();
- turnoff=true;
- event.rc=false;
- this.resetForm();
- operand='+';
- NumAddCorr=0;
- NumAddTried=0;
- NumSubCorr=0;
- NumSubTried=0;
- NumMulCorr=0;
- umMulTried=0;
- NumDivCorr=0;
- NumDivTried=0;
-}
-function newCard() {
- turnoff=true;
- this.resetForm(["result","top","bottom","ansregion","alertbox"]);
- operand = c.value;
- switch (operand)
- {
- case 'a':
- {
- o.value='+'; // addDecT
- numDecimals = Math.max(addDecT,addDecB);
- var topTemplate = "\%."+addDecT+"f";
- var botTemplate = "\%."+addDecB+"f";
- var matchTemplate = "\%."+ numDecimals +"f";
- var m=util.printf(topTemplate,
- (addT_b-addT_a)*Math.random()+addT_a);
- var n=util.printf(botTemplate,
- (addB_b-addB_a)*Math.random()+addB_a);
- m=util.printf(matchTemplate,m);
- n=util.printf(matchTemplate,n);
- var nWidth=(m.length < n.length) ? n.length : m.length;
- var commonTemplate = "\%"+nWidth+"."+numDecimals+"f";
- t.value=util.printf(commonTemplate,m);
- b.value=util.printf(commonTemplate,n);
- break;
- }
- case 's':
- {
- o.value="-";
- numDecimals = Math.max(subDecT,subDecB);
- var topTemplate = "\%."+subDecT+"f";
- var botTemplate = "\%."+subDecB+"f";
- var matchTemplate = "\%."+ numDecimals +"f";
- var m=util.printf(topTemplate,
- (subT_b-subT_a)*Math.random()+subT_a);
- var n=util.printf(botTemplate,
- (subB_b-subB_a)*Math.random()+subB_a);
- m=util.printf(matchTemplate,m);
- n=util.printf(matchTemplate,n);
- var nWidth=(m.length < n.length) ? n.length : m.length;
- var commonTemplate = "\%"+nWidth+"."+numDecimals+"f";
- t.value=util.printf(commonTemplate,m);
- b.value=util.printf(commonTemplate,n);
- if(!\fcAllowSub\space && (b.value>t.value))
- {
- var tmp = b.value;
- b.value = t.value;
- t.value = tmp;
- }
- break;
- }
- case 'm':
- {
- o.value='x';
- numDecimals=Math.max(mulDecT,mulDecB);
- var topTemplate = "\%."+mulDecT+"f";
- var botTemplate = "\%."+mulDecB+"f";
- var matchTemplate = "\%."+ numDecimals +"f";
- var m=util.printf(topTemplate,
- (mulT_b-mulT_a)*Math.random()+mulT_a);
- var n=util.printf(botTemplate,
- (mulB_b-mulB_a)*Math.random()+mulB_a);
- m=util.printf(matchTemplate,m);
- n=util.printf(matchTemplate,n);
- var nWidth=(m.length < n.length) ? n.length : m.length;
- var commonTemplate = "\%"+nWidth+"."+numDecimals+"f";
- t.value=util.printf(commonTemplate,m);
- b.value=util.printf(commonTemplate,n);
- numDecimals = mulDecT + mulDecB;
- break;
- }
- case 'd':
- {
-% o.value='/';
- o.value='\string\367'
- numDecimals=divDecQ+divDecB;
-% numDecimals=Math.max(divDecQ,divDecB);
- var topTemplate = "\%."+divDecQ+"f";
- var botTemplate = "\%."+divDecB+"f";
- var matchTemplate = "\%."+ numDecimals +"f";
- var n,m;
- var quotient=util.printf(topTemplate,
- divQ_a + (divQ_b-divQ_a)*Math.random());
- for(n=util.printf(botTemplate,
- divB_a + (divB_b-divB_a)*Math.random());
- n==0; n=util.printf("\%.0f",
- divB_a + (divB_b-divB_a)*Math.random()));
- m=util.printf(matchTemplate,quotient*n);
- n=util.printf(matchTemplate,n);
- var nWidth=(m.length < n.length) ? n.length : m.length;
- var commonTemplate = "\%"+nWidth+"."+numDecimals+"f";
- t.value=util.printf(commonTemplate,m);
- b.value=util.printf(commonTemplate,n);
- numDecimals = divDecQ;
- break;
- }
- }
- // console.println("operation = " + o.value);
- turnoff=false;
- if (!useKeyPad) r.readonly=false;
- timebegin = new Date();
- mybegin = util.printd("mmm d, yyyy, H:M:s",timebegin);
- r.setFocus();
-}
-function addDigit(n) {
- if (oAlert.value != "") return;
- switch (n) {
- case "Enter":
- var tmp_value=r.valueAsString;
- this.resetForm(["result"]);
- keypadInput=false;
- r.value = tmp_value;
- break;
- case "Back":
- keypadInput=true;
- var tmp_value=r.valueAsString;
- if (tmp_value != "")
- r.value = tmp_value.substring(0,tmp_value.length-1);
- break;
- case "Dec":
- keypadInput=true;
- var v=r.valueAsString;
- v = v + ".";
- r.value = v
- break;
- case "Minus":
- keypadInput=true;
- var v=r.valueAsString;
- if (r.value < 0 ) {
- v = String(Math.abs(v));
- } else v = "-" + v;
- r.value = v;
- break;
- default:
- keypadInput=true;
- v=r.valueAsString
- v = v + String(n);
- r.value = v
- }
-}
-function ToggleKeyPad() {
- useKeyPad = !useKeyPad;
- this.delay=true;
- if (useKeyPad) {
- for (var i=0; i<= 9; i++)
- this.getField("num"+i).display=display.visible;
- this.getField("Back").display=display.visible;
- this.getField("Enter").display=display.visible;
- this.getField("Dec").display=display.visible;
- this.getField("Minus").display=display.visible;
- this.getField("result").readonly=true;
- } else {
- for (var i=0; i<= 9; i++)
- this.getField("num"+i).display=display.hidden;
- this.getField("Back").display=display.hidden;
- this.getField("Enter").display=display.hidden;
- this.getField("Dec").display=display.hidden;
- this.getField("Minus").display=display.hidden;
- this.getField("result").readonly=false;
- }
- this.delay=false;
-}
-\end{newsegment}
-\begin{newsegment}{Custom Keystroke for Numbers}
-function myNumber_Keystroke(nDec,sepStyle,negStyle,currStyle,
- strCurrency,bCurrencyPrepend) {
- var v = t.valueAsString;
- if ( v == "")
- { event.rc=false; this.resetForm(["result"]); }
- else
- if ( event.value != "-" && event.value != ".")
- AFNumber_Keystroke(nDec,sepStyle,negStyle,currStyle,
- strCurrency,bCurrencyPrepend);
-}
-function myNumber_Format(nDec,sepStyle,negStyle,currStyle,
- strCurrency,bCurrencyPrepend) {
- if ( !useKeyPad && event.value != "-" && event.value != ".")
- AFNumber_Format(nDec,sepStyle,negStyle,currStyle,
- strCurrency,bCurrencyPrepend);
-}
-\end{newsegment}
-\begin{newsegment}{Option Dialog Box}
-var fcDialog =
-{
- // set a default value for radio button field
- initialize: function(dialog) {
- var addDT="AT0" + String(addDecT);
- var addDB="AB0" + String(addDecB);
- var subDT="ST0" + String(subDecT);
- var subDB="SB0" + String(subDecB);
- var mulDT="MT0" + String(mulDecT);
- var mulDB="MB0" + String(mulDecB);
- var divDQ="DQ0" + String(divDecQ);
- var divDB="DB0" + String(divDecB);
- var radioString = addDT +": true, " + addDB +": true, "
- + subDT + ": true, " + subDB + ": true, "
- + mulDT + ": true, " + mulDB + ": true, "
- + divDQ + ": true, " + divDB + ": true "
-//console.println("radioString="+radioString);
- eval("dialog.load({" + radioString + "})");
- dialog.load({
- // Populate the addition first
- "aT_a": util.printf("\%.0f",addT_a),
- "aT_b": util.printf("\%.0f",addT_b),
- "aB_a": util.printf("\%.0f",addB_a),
- "aB_b": util.printf("\%.0f",addB_b),
- // subtraction
- "sT_a": util.printf("\%.0f",subT_a),
- "sT_b": util.printf("\%.0f",subT_b),
- "sB_a": util.printf("\%.0f",subB_a),
- "sB_b": util.printf("\%.0f",subB_b),
- // multiplication
- "mT_a": util.printf("\%.0f",mulT_a),
- "mT_b": util.printf("\%.0f",mulT_b),
- "mB_a": util.printf("\%.0f",mulB_a),
- "mB_b": util.printf("\%.0f",mulB_b),
- // division
- "dQ_a": util.printf("\%.0f",divQ_a),
- "dQ_b": util.printf("\%.0f",divQ_b),
- "dB_a": util.printf("\%.0f",divB_a),
- "dB_b": util.printf("\%.0f",divB_b)
- });
- },
- // when user presses "Ok", this handler will execute first
- commit: function(dialog) {
- var results = dialog.store();
- addT_a = Math.round(results["aT_a"]);
- addT_b = Math.round(results["aT_b"]);
- addB_a = Math.round(results["aB_a"]);
- addB_b = Math.round(results["aB_b"]);
- for (var i=0; i < 3; i++)
- if (results["AT0"+i]) { addDecT = i; break; }
- for (var i=0; i < 3; i++)
- if (results["AB0"+i]) { addDecB = i; break; }
- // subtraction
- subT_a = Math.round(results["sT_a"]);
- subT_b = Math.round(results["sT_b"]);
- subB_a = Math.round(results["sB_a"]);
- subB_b = Math.round(results["sB_b"]);
- for (var i=0; i < 3; i++)
- if (results["ST0"+i]) { subDecT = i; break; }
- for (var i=0; i < 3; i++)
- if (results["SB0"+i]) { subDecB = i; break; }
- // multiplication
- mulT_a = Math.round(results["mT_a"]);
- mulT_b = Math.round(results["mT_b"]);
- mulB_a = Math.round(results["mB_a"]);
- mulB_b = Math.round(results["mB_b"]);
- for (var i=0; i < 3; i++)
- if (results["MT0"+i]) { mulDecT = i; break; }
- for (var i=0; i < 3; i++)
- if (results["MB0"+i]) { mulDecB = i; break; }
- // division
- divQ_a = Math.round(results["dQ_a"]);
- divQ_b = Math.round(results["dQ_b"]);
- divB_a = Math.round(results["dB_a"]);
- divB_b = Math.round(results["dB_b"]);
- for (var i=0; i < 3; i++)
- if (results["DQ0"+i]) { divDecQ = i; break; }
- for (var i=0; i < 3; i++)
- if (results["DB0"+i]) { divDecB = i; break; }
- },
- // The Dialog Description
- description:
- {
- name: "PDF Flash Cards - Options",
- align_children: "align_left",
- elements:
- [
-\bFCa
- { // The Addition Cluster
- type: "cluster",
- name: "Addition",
- item_id: "add",
- align_children: "align_left",
- elements:
- [
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "addRngT",
- name: "Range Top "
- },
- {
- item_id: "aT_a",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "static_text",
- item_id: "addRngToT",
- name: " to "
- },
- {
- item_id: "aT_b",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "view",
- align_children: "align_distribute",
- elements:
- [
- {
- type: "static_text",
- item_id: "aDcT",
- name: "Decimals:"
- },
- {
- type: "radio",
- item_id: "AT00",
- group_id: "AddT",
- name: "none"
- },
- {
- type: "radio",
- item_id: "AT01",
- group_id: "AddT",
- name: "1",
- },
- {
- type: "radio",
- item_id: "AT02",
- group_id: "AddT",
- name: "2",
- },
- ]
- },
- ]
- },
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "addRngB",
- name: "Range Bottom"
- },
- {
- item_id: "aB_a",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "static_text",
- item_id: "addRngToB",
- name: " to "
- },
- {
- item_id: "aB_b",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "view",
- align_children: "align_distribute",
- elements:
- [
- {
- type: "static_text",
- item_id: "aDcB",
- name: "Decimals:"
- },
- {
- type: "radio",
- item_id: "AB00",
- group_id: "AddB",
- name: "none"
- },
- {
- type: "radio",
- item_id: "AB01",
- group_id: "AddB",
- name: "1",
- },
- {
- type: "radio",
- item_id: "AB02",
- group_id: "AddB",
- name: "2",
- },
- ]
- },
- ]
- }
- ]
- }, // End Addition Cluster
-\eFCa
-\bFCs
- { // The Subtraction Cluster
- type: "cluster",
- name: "Subtraction",
- item_id: "sub",
- align_children: "align_left",
- elements:
- [
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "subRngT",
- name: "Range Top "
- },
- {
- item_id: "sT_a",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "static_text",
- item_id: "subRngToT",
- name: " to "
- },
- {
- item_id: "sT_b",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "view",
- align_children: "align_distribute",
- elements:
- [
- {
- type: "static_text",
- item_id: "sDT",
- name: "Decimals:"
- },
- {
- type: "radio",
- item_id: "ST00",
- group_id: "SubT",
- name: "none"
- },
- {
- type: "radio",
- item_id: "ST01",
- group_id: "SubT",
- name: "1",
- },
- {
- type: "radio",
- item_id: "ST02",
- group_id: "SubT",
- name: "2",
- },
- ]
- },
- ]
- },
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "subRngB",
- name: "Range Bottom"
- },
- {
- item_id: "sB_a",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "static_text",
- item_id: "subRngToB",
- name: " to "
- },
- {
- item_id: "sB_b",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "view",
- align_children: "align_distribute",
- elements:
- [
- {
- type: "static_text",
- item_id: "sDcB",
- name: "Decimals:"
- },
- {
- type: "radio",
- item_id: "SB00",
- group_id: "SubB",
- name: "none"
- },
- {
- type: "radio",
- item_id: "SB01",
- group_id: "SubB",
- name: "1",
- },
- {
- type: "radio",
- item_id: "SB02",
- group_id: "SubB",
- name: "2",
- },
- ]
- },
- ]
- }
- ]
- }, // End Subtraction Cluster
-\eFCs
-\bFCm
- { // The Multiplication Cluster
- type: "cluster",
- name: "Multiplication",
- item_id: "mul",
- align_children: "align_left",
- elements:
- [
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "mulRngT",
- name: "Range Top "
- },
- {
- item_id: "mT_a",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "static_text",
- item_id: "mulRngToT",
- name: " to "
- },
- {
- item_id: "mT_b",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "view",
- align_children: "align_distribute",
- elements:
- [
- {
- type: "static_text",
- item_id: "mDcT",
- name: "Decimals:"
- },
- {
- type: "radio",
- item_id: "MT00",
- group_id: "MulT",
- name: "none"
- },
- {
- type: "radio",
- item_id: "MT01",
- group_id: "MulT",
- name: "1",
- },
- {
- type: "radio",
- item_id: "MT02",
- group_id: "MulT",
- name: "2",
- },
- ]
- },
- ]
- },
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "mulRngB",
- name: "Range Bottom"
- },
- {
- item_id: "mB_a",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "static_text",
- item_id: "mulRngToB",
- name: " to "
- },
- {
- item_id: "mB_b",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "view",
- align_children: "align_distribute",
- elements:
- [
- {
- type: "static_text",
- item_id: "mDcB",
- name: "Decimals:"
- },
- {
- type: "radio",
- item_id: "MB00",
- group_id: "MulB",
- name: "none"
- },
- {
- type: "radio",
- item_id: "MB01",
- group_id: "MulB",
- name: "1",
- },
- {
- type: "radio",
- item_id: "MB02",
- group_id: "MulB",
- name: "2",
- },
- ]
- },
- ]
- }
- ]
- }, // End Multiplication Cluster
-\eFCm
-\bFCd
- { // The Division Cluster
- type: "cluster",
- name: "Division",
- item_id: "div",
- align_children: "align_left",
- elements:
- [
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "divRngQ",
- name: "Range Quotient"
- },
- {
- item_id: "dQ_a",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "static_text",
- item_id: "divRngToT",
- name: " to "
- },
- {
- item_id: "dQ_b",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "view",
- align_children: "align_distribute",
- elements:
- [
- {
- type: "static_text",
- item_id: "dDcQ",
- name: "Decimals:"
- },
- {
- type: "radio",
- item_id: "DQ00",
- group_id: "DivQ",
- name: "none"
- },
- {
- type: "radio",
- item_id: "DQ01",
- group_id: "DivQ",
- name: "1",
- },
- {
- type: "radio",
- item_id: "DQ02",
- group_id: "DivQ",
- name: "2",
- },
- ]
- },
- ]
- },
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "divRngB",
- name: "Range Divisor "
- },
- {
- item_id: "dB_a",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "static_text",
- item_id: "divRngToB",
- name: " to "
- },
- {
- item_id: "dB_b",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "view",
- align_children: "align_distribute",
- elements:
- [
- {
- type: "static_text",
- item_id: "dDcB",
- name: "Decimals:"
- },
- {
- type: "radio",
- item_id: "DB00",
- group_id: "DivB",
- name: "none"
- },
- {
- type: "radio",
- item_id: "DB01",
- group_id: "DivB",
- name: "1",
- },
- {
- type: "radio",
- item_id: "DB02",
- group_id: "DivB",
- name: "2",
- },
- ]
- },
- ]
- }
- ]
- }, // End Division Cluster
-\eFCd
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- alignment: "align_right",
- type: "ok_cancel",
- }
- ]
- }
- ]
- }
-}
-\end{newsegment}
-\end{insDLJS*}
-\begin{insDLJS}[fcMenu]{fcmd}{Menu Data}
-\fcMenu
-function processFcMenu() {
- var cChoice = \popUpMenu(fcMenu);
- if ( cChoice != null ) {
- switch(cChoice) {
- case "0": app.execDialog(fcDialog);
- break;
- case "1": ToggleKeyPad();
- break
- case "2": app.execMenuItem("GeneralInfo");
- }
- }
-}
-\end{insDLJS}
-% \end{macrocode}
-% \begin{macrocode}
-\InputIfFileExists{fc_custom.def}{}{}
-% \end{macrocode}
-
-% \begin{macrocode}
-%</package>
-% \end{macrocode}
diff --git a/Master/texmf-dist/source/latex/fc_arith/fc_arith.ins b/Master/texmf-dist/source/latex/fc_arith/fc_arith.ins
deleted file mode 100644
index dcf5c0c2fa5..00000000000
--- a/Master/texmf-dist/source/latex/fc_arith/fc_arith.ins
+++ /dev/null
@@ -1,62 +0,0 @@
-%%
-%% This file will generate fast loadable files and documentation
-%% driver files from the doc files in this package when run through
-%% LaTeX or TeX.
-%%
-%% Copyright 1999-2006 D. P. Story
-%%
-%% This file is part of the `AcroTeX eDucation Bundle'.
-%% -------------------------------------------
-%%
-%% It may be distributed under the conditions of the LaTeX Project Public
-%% License, either version 1.2 of this license or (at your option) any
-%% later version. The latest version of this license is in
-%% http://www.latex-project.org/lppl.txt
-%% and version 1.2 or later is part of all distributions of LaTeX
-%% version 1999/12/01 or later.
-%%
-%% --------------- start of docstrip commands ------------------
-%%
-\def\filedate{2010/03/17}
-\def\batchfile{fc_arith.ins}
-\input docstrip
-
-\ifx\generate\undefined
- \Msg{**********************************************}
- \Msg{*}
- \Msg{* This installation requires docstrip}
- \Msg{* version 2.4 or later.}
- \Msg{*}
- \Msg{* An older version of docstrip has been input}
- \Msg{*}
- \Msg{**********************************************}
- \errhelp{Move or rename old docstrip.tex and get a newer one.}
- \errmessage{Old docstrip in input path}
- \batchmode
- \csname @@end\endcsname\end
-\fi
-
-\keepsilent
-\askforoverwritefalse
-%\askonceonly
-%\usedir{tex/latex/hyperref}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-\preamble
-\endpreamble
-
-\generate{%
- \file{fc_arith.sty}{\from{fc_arith.dtx}{copyright,package}}
- \file{fc_arith.drv}{\from{fc_arith.dtx}{copyright,driver}}
-}
-
-\Msg{***************************************************************}
-\Msg{*}
-\Msg{* \space To finish the installation you have to copy the files }
-\Msg{*}
-\Msg{* \space *.sty, *.cfg and *.def into a directory searched by TeX}
-\Msg{*}
-\Msg{***************************************************************}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\endinput
diff --git a/Master/texmf-dist/tex/latex/fc_arith/fc_arith.sty b/Master/texmf-dist/tex/latex/fc_arith/fc_arith.sty
deleted file mode 100644
index 9e3d50bcb19..00000000000
--- a/Master/texmf-dist/tex/latex/fc_arith/fc_arith.sty
+++ /dev/null
@@ -1,1586 +0,0 @@
-%%
-%% This is file `fc_arith.sty',
-%% generated with the docstrip utility.
-%%
-%% The original source files were:
-%%
-%% fc_arith.dtx (with options: `copyright,package')
-%%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% fc_arith.sty package, 2010-3-17 %%
-%% Copyright (C) 1999-2002 D. P. Story %%
-%% dpstory@uakron.edu %%
-%% %%
-%% This program can redistributed and/or modified under %%
-%% the terms of the LaTeX Project Public License %%
-%% Distributed from CTAN archives in directory %%
-%% macros/latex/base/lppl.txt; either version 1 of the %%
-%% License, or (at your option) any later version. %%
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%
-%% History: Noel Vaillant began developing a better fc_arith.sty
-%% based on my earlier published fc_arith.sty. Many thanks
-%% to him for starting me off.
-%%---------------------------------------------------------
-\NeedsTeXFormat{LaTeX2e}[1997/12/01]
-\ProvidesPackage{fc_arith}
- [2010/03/17 v0.1a fc_arith: PDF flash cards for arithmetic drill (dps)]
-\RequirePackage{xkeyval}
-\RequirePackage{calc}
-\DeclareOptionX{allownegsub}{\def\fcAllowSub{true}}\def\fcAllowSub{false}
-\DeclareOptionX{nomenu}{\let\fc@usemenu=n}\let\fc@usemenu=y
-\DeclareOptionX{operations}[add,sub,mul,div]{\def\fc@operations{#1}}
-\def\fc@operations{add,sub,mul,div}
-\DeclareOptionX{showkeypadlink}{\let\fc@keypadlink=y}
-\let\fc@keypadlink=n
-\DeclareOptionX{notimedscores}{%
- \def\fcTimedScores{false}
- \let\fc@timedscores=n
-}
-\def\fcTimedScores{true}
-\let\fc@timedscores=y
-\ProcessOptionsX
-\RequirePackage{eforms}[2010/03/21]
-\RequirePackage{popupmenu}
-\newdimen\fcWidth
-\define@boolkey{fcopera}{add}[true]{}
-\define@boolkey{fcopera}{sub}[true]{}
-\define@boolkey{fcopera}{mul}[true]{}
-\define@boolkey{fcopera}{div}[true]{}
-\edef\fc@expand{\noexpand\setkeys{fcopera}{\fc@operations}}\fc@expand
-\define@key{fcarithparams}{addT}[{[0,100]}]{\def\fcAddTParams{#1}}
-\define@key{fcarithparams}{addB}[{[0,100]}]{\def\fcAddBParams{#1}}
-\define@choicekey{fcarithparams}{addDecT}[\val\nr]{none,1,2}[none]{%
- \edef\fcaddDecT{\nr}}{}
-\define@choicekey{fcarithparams}{addDecB}[\val\nr]{none,1,2}[none]{%
- \edef\fcaddDecB{\nr}}{}
-\define@key{fcarithparams}{subT}[{[0,100]}]{\def\fcSubTParams{#1}}
-\define@key{fcarithparams}{subB}[{[0,100]}]{\def\fcSubBParams{#1}}
-\define@choicekey{fcarithparams}{subDecT}[\val\nr]{none,1,2}[none]{%
- \edef\fcsubDecT{\nr}}{}
-\define@choicekey{fcarithparams}{subDecB}[\val\nr]{none,1,2}[none]{%
- \edef\fcsubDecB{\nr}}{}
-\define@key{fcarithparams}{mulT}[{[0,100]}]{\def\fcMulTParams{#1}}
-\define@key{fcarithparams}{mulB}[{[0,10]}]{\def\fcMulBParams{#1}}
-\define@choicekey{fcarithparams}{mulDecT}[\val\nr]{none,1,2}[none]{%
- \edef\fcmulDecT{\nr}}{}
-\define@choicekey{fcarithparams}{mulDecB}[\val\nr]{none,1,2}[none]{%
- \edef\fcmulDecB{\nr}}{}
-\define@key{fcarithparams}{divQ}[{[0,10]}]{\def\fcDivQParams{#1}}
-\define@key{fcarithparams}{divB}[{[0,10]}]{\def\fcDivBParams{#1}}
-\define@choicekey{fcarithparams}{divDecQ}[\val\nr]{none,1,2}[none]{%
- \edef\fcdivDecQ{\nr}}{}
-\define@choicekey{fcarithparams}{divDecB}[\val\nr]{none,1,2}[none]{%
- \edef\fcdivDecB{\nr}}{}
-\setkeys{fcarithparams}{addT,addB,subT,subB,mulT,mulB,divQ,divB,%
- addDecT,addDecB,subDecT,subDecB,mulDecT,mulDecB,divDecQ,divDecB}
-\newcommand{\DeclareArithParams}[1]{\setkeys{fcarithparams}{#1}}
-\@onlypreamble\DeclareArithParams
-\newcommand{\timeUpMsg}{Your Time is UP!}
-\newcommand{\rightMsg}{Right!}
-\newcommand{\wrongMsg}{Wrong!}
-\newcommand{\startAgainMsg}{Start Again}
-\newcommand{\newCardMsg}{New Card}
-\newcommand{\toggleKeypad}{Toggle Keypad}
-\newcommand{\operation}{Operation}
-\newcommand{\numCorrect}{Number Correct}
-\newcommand{\numAttempted}{Number Attempted}
-\newcommand{\percentCorrect}{Percentage Correct}
-\newcommand{\timedScores}{Timed Scores}
-\newcommand{\fmtAnswer}{Answer:}
-\newcommand{\kpDec}{.}
-\newcommand{\kpMinus}{-}
-\newcommand{\kpBack}{Back}
-\newcommand{\kpEnter}{Enter}
-\newcommand{\fcNoTiming}{No Timing}
-\newcommand{\fcAddition}{Addition}
-\newcommand{\fcSubtraction}{Subtraction}
-\newcommand{\fcMultiplication}{Multiplication}
-\newcommand{\fcDivision}{Division}
-\newcommand{\fcSettings}{Settings}
-\newcommand{\fcSettingsColor}{black}
-\newcommand{\FCMenu}{\mbox{\setLinkText[\linktxtcolor{\fcSettingsColor}
- \A{\JS{processFcMenu();}}]{\fcSettings}}}
-\if\fc@usemenu y\lheader{\FCMenu}\rheader{}\else
-\lheader{}\rheader{}\fi
-\newcommand{\tBGNoBorder}{\BC{}\BG{}\autoCenter{n}\textSize{0}
- \textColor{1 0 0}\Ff\FfReadOnly}
-\newcommand{\tBGNoBorderI}{\BC{}\BG{}\autoCenter{n}\textSize{0}
- \textColor{0 0 0}}
-\newcommand{\cBGNoBorder}{\Q{1}\BC{}\BG{}\autoCenter{n}\textSize{0}
- \textColor{0 0 0}\BG{.75 .75 .75}\Ff\FfReadOnly}
-\newcommand{\cBGBorder}{\BC{0 0 0}\BG{.75 .75 .75}\autoCenter{n}
- \textSize{0}\textColor{0 0 0}}
-\newcommand{\myNumPadI}{\F\FHidden\autoCenter{n}\textSize{8}
- \textFont{\fieldFont}\S{S}}
-\newcommand{\setDimOf}[3]{\@namedef{widthOf#1}{#2}%
- \@namedef{heightOf#1}{#3}}
-\newcommand{\monoSpaceFont}{CoBo}
-\newcommand{\fieldFont}{Helv}
-\setDimOf{top}{1in}{0.62in}
-\setDimOf{operation}{.38in}{.62in}
-\setDimOf{bottom}{1in}{0.62in}
-\newcommand{\arithProb}{\mbox{\vbox{\offinterlineskip
- \hbox{\hspace*{\@nameuse{widthOfoperation}}%
- \textField[\presets{\tBGNoBorder}
- \textFont{\monoSpaceFont}\Q{2}]{top}%
- {\@nameuse{widthOf\Fld@name}}{\@nameuse{heightOf\Fld@name}}%
- }%
- \hbox{%
- \textField[\presets{\tBGNoBorder}
- \textSize{25}\Q{1}]{operation}{\@nameuse{widthOf\Fld@name}}%
- {\@nameuse{heightOf\Fld@name}}%
- \textField[\presets{\tBGNoBorder}
- \textFont{\monoSpaceFont}\Q{2}]{bottom}%
- {\@nameuse{widthOf\Fld@name}}{\@nameuse{heightOf\Fld@name}}%
- }}}%
-}
-\setDimOf{alertbox}{.88in}{.62in}
-\setDimOf{StartAgain}{0.88in}{0.62in}
-\setDimOf{result}{1.38in}{0.62in}
-\setDimOf{NewProblem}{0.88in}{0.62in}
-\newcommand{\alertbox}[1][]{\hbox{\textField[\presets{\tBGNoBorder}
- \textSize{0}#1]{alertbox}{\@nameuse{widthOf\Fld@name}}%
- {\@nameuse{heightOf\Fld@name}}}}
-\edef\distillOpts{\ifnum\eq@drivernum=1 \else\noexpand\FB{false}
- \noexpand\I{null}\noexpand\TP{2}\fi}
-\newcommand{\startAgain}[1][]{\hbox{\expandafter\pushButton\expandafter[\distillOpts
- \presets{\tBGNoBorderI}\textFont{\fieldFont}\S{S}
- \textSize{12}\CA{\startAgainMsg}\AC{\startAgainMsg}#1
- \A{\JS{startAgain();}}]{StartAgain}{\@nameuse{widthOf\Fld@name}}%
- {\@nameuse{heightOf\Fld@name}}}}
-\newcommand{\inputRegion}[1][]{\hbox{\textField[\presets{\cBGNoBorder}
- \Ff{-\FfReadOnly}\Q{2}#1\AA{\AAValidate{validateResult();}
- \AAKeystroke{myNumber_Keystroke(numDecimals,1,0,0,"",true);}
- \AAFormat{try{%
- myNumber_Format(numDecimals,1,0,0,"",true);}catch(e){}}}
- ]{result}{\@nameuse{widthOf\Fld@name}}%
- {\@nameuse{heightOf\Fld@name}}}}
-\newcommand{\newCard}[1][]{\hbox{\expandafter\pushButton\expandafter[\distillOpts
- \presets{\tBGNoBorderI}\textFont{\fieldFont}\S{S}
- \CA{\newCardMsg}\AC{\newCardMsg}#1\A{\JS{newCard();}}
- ]{NewProblem}{\@nameuse{widthOf\Fld@name}}%
- {\@nameuse{heightOf\Fld@name}}}}
-\setDimOf{TimeDelay}{0.9in}{0.24in}
-\setDimOf{ansregion}{.87in+10bp}{.24in}
-\setDimOf{ChooseOperation}{1.38in-10bp}{0.24in}
-\edef\isReadOnlyTiming{\if\fc@timedscores n\noexpand\Ff{\FfReadOnly}\fi}
-\newcommand{\cbTiming}[1][]{\hbox{%
- \expandafter\comboBox\expandafter[\isReadOnlyTiming\presets{\cBGBorder}
- \textFont{\fieldFont}\V{600000}\DV{600000}#1
- \AA{\AAKeystroke{%
- if (!event.willCommit) timelimit=event.changeEx;}}
- ]{TimeDelay}{\@nameuse{widthOf\Fld@name}}%
- {\@nameuse{heightOf\Fld@name}}{%
- [(600000)(\fcNoTiming)][(30)(30 sec)][(25)(25 sec)][(20)(20 sec)]%
- [(15)(15 sec)][(10)(10 sec)][(5)(\space 5 sec)]}}%
-}
-\newcommand{\ansField}[1][]{\hbox{\textField[\presets{\cBGNoBorder}\Q{2}
- #1\AA{\AAFormat{%
- if (event.value!="") {\r
- try{myNumber_Format(numDecimals,1,0,0,"",true);\r
- event.value="\fmtAnswer\space" + event.value;}catch(e){};}}}
- ]{ansregion}{\@nameuse{widthOf\Fld@name}}%
- {\@nameuse{heightOf\Fld@name}}}%
-}
-\newcommand{\cbOperation}[1][]{\hbox{%
- \comboBox[\presets{\cBGBorder}\textFont{\fieldFont}#1
- \V{a}\DV{a}]{ChooseOperation}{\@nameuse{widthOf\Fld@name}}%
- {\@nameuse{heightOf\Fld@name}}{%
- \ifKV@fcopera@add[(a)(\fcAddition)]\fi%
- \ifKV@fcopera@sub[(s)(\fcSubtraction)]\fi%
- \ifKV@fcopera@mul[(m)(\fcMultiplication)]\fi%
- \ifKV@fcopera@div[(d)(\fcDivision)]\fi}}%
-}
-\newcommand{\szNum}{14bp}
-\newcommand{\Keypad}{%
- \vbox{\offinterlineskip\if\fc@keypadlink y
- \setlength{\fcWidth}{\szNum*4}%
- \hbox to\fcWidth{\small\hfill\setLink[\linktxtcolor{blue}
- \A{\JS{ToggleKeyPad()}}]{\toggleKeypad}\hfill}\vskip4bp\fi
- \hbox{\pushButton[\presets{\myNumPadI}\CA{7}
- \A{\JS{addDigit(7)}}]{num7}{\szNum}{\szNum}%
- \kern1bp\pushButton[\presets{\myNumPadI}\CA{8}
- \A{\JS{addDigit(8)}}]{num8}{\szNum}{\szNum}%
- \kern1bp\pushButton[\presets{\myNumPadI}\CA{9}
- \A{\JS{addDigit(9)}}]{num9}{\szNum}{\szNum}}%
- \vskip1bp
- \hbox{\pushButton[\presets{\myNumPadI}\CA{4}
- \A{\JS{addDigit(4)}}]{num4}{\szNum}{\szNum}%
- \kern1bp\pushButton[\presets{\myNumPadI}\CA{5}
- \A{\JS{addDigit(5)}}]{num5}{\szNum}{\szNum}%
- \kern1bp\pushButton[\presets{\myNumPadI}\CA{6}
- \A{\JS{addDigit(6)}}]{num6}{\szNum}{\szNum}}%
- \vskip1bp
- \hbox{\pushButton[\presets{\myNumPadI}\CA{1}
- \A{\JS{addDigit(1)}}]{num1}{\szNum}{\szNum}%
- \kern1bp\pushButton[\presets{\myNumPadI}\CA{2}
- \A{\JS{addDigit(2)}}]{num2}{\szNum}{\szNum}%
- \kern1bp\pushButton[\presets{\myNumPadI}\CA{3}
- \A{\JS{addDigit(3)}}]{num3}{\szNum}{\szNum}}%
- \vskip1bp
- \hbox{\pushButton[\presets{\myNumPadI}\CA{0}
- \A{\JS{addDigit(0)}}]{num0}{1bp+\szNum*2}{\szNum}%
- \kern1bp\pushButton[\presets{\myNumPadI}\CA{\kpDec}
- \A{\JS{addDigit("Dec")}}
- ]{Dec}{\szNum}{\szNum}\kern1bp
- \smash{\vbox{%
- \hbox{\pushButton[\presets{\myNumPadI}\CA{\kpMinus}
- \A{\JS{addDigit("Minus")}}
- ]{Minus}{\szNum}{\szNum}}\kern1bp
- \hbox{\pushButton[\presets{\myNumPadI}\CA{\kpBack}
- \textSize{0}\A{\JS{addDigit("Back")}}
- ]{Back}{\szNum}{\szNum}}\kern1bp
- \hbox{\pushButton[\presets{\myNumPadI}\CA{\kpEnter}
- \textSize{0}\A{\JS{addDigit("Enter")}}
- ]{Enter}{\szNum}{1bp+\szNum*2}}%
- }}}}%
-}
-\def\fcSep{\quad}
-\setDimOf{fcSF}{0.37in}{0.25in}
-\newcommand{\statsFieldOpColor}{1 0 0}
-\newcommand{\statsFieldColor}{blue}
-\newcommand{\statsFields}{%
-\ifKV@fcopera@add
- \vbox{\offinterlineskip
- \hbox{\textField[\presets{\cBGNoBorder}\textColor{\statsFieldOpColor}
- \V{+}\DV{+}\Q{1}]{AddScore1}{\widthOffcSF}{\heightOffcSF}}%
- \hbox{\textField[\presets{\cBGNoBorder}
- ]{AddScore2}{\widthOffcSF}{\heightOffcSF}}%
- \hbox{\textField[\presets{\cBGNoBorder}
- ]{AddScore3}{\widthOffcSF}{\heightOffcSF}}%
- \hbox{\textField[\presets{\cBGNoBorder}
- ]{AddScore4}{\widthOffcSF}{\heightOffcSF}}%
-\if\fc@timedscores y
- \hbox{\textField[\presets{\cBGNoBorder}
- ]{AddScore5}{\widthOffcSF}{\heightOffcSF}}%
-\fi
- }\fcSep
-\fi
-\ifKV@fcopera@sub
-\vbox{\offinterlineskip
- \hbox{\textField[\presets{\cBGNoBorder}\textColor{\statsFieldOpColor}
- \V{-}\DV{-}\Q{1}]{SubScore1}{\widthOffcSF}{\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{SubScore2}%
- {\widthOffcSF}{\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{SubScore3}%
- {\widthOffcSF}{\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{SubScore4}{\widthOffcSF}%
- {\heightOffcSF}}
-\if\fc@timedscores y
- \hbox{\textField[\presets{\cBGNoBorder}]{SubScore5}{\widthOffcSF}%
- {\heightOffcSF}}
-\fi
- }\fcSep
-\fi
-\ifKV@fcopera@mul
-\vbox{\offinterlineskip
- \hbox{\textField[\presets{\cBGNoBorder}\textColor{\statsFieldOpColor}
- \V{x}\DV{x}\Q{1}]{MulScore1}{\widthOffcSF}{\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{MulScore2}{\widthOffcSF}%
- {\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{MulScore3}{\widthOffcSF}%
- {\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{MulScore4}{\widthOffcSF}%
- {\heightOffcSF}}
-\if\fc@timedscores y
- \hbox{\textField[\presets{\cBGNoBorder}]{MulScore5}{\widthOffcSF}%
- {\heightOffcSF}}
-\fi
- }\fcSep
-\fi
-\ifKV@fcopera@div
-\vbox{\offinterlineskip
- \hbox{\textField[\presets{\cBGNoBorder}\textColor{\statsFieldOpColor}
- \V{\string\367}\DV{\string\367}\Q{1}]{DivScore1}{\widthOffcSF}%
- {\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{DivScore2}{\widthOffcSF}%
- {\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{DivScore3}{\widthOffcSF}%
- {\heightOffcSF}}
- \hbox{\textField[\presets{\cBGNoBorder}]{DivScore4}{\widthOffcSF}%
- {\heightOffcSF}}
-\if\fc@timedscores y
- \hbox{\textField[\presets{\cBGNoBorder}]{DivScore5}{\widthOffcSF}%
- {\heightOffcSF}}
-\fi
- }\fcSep
-\fi
-\vbox{\offinterlineskip
- \hbox{\parbox[b][.25in][c]{.75in}{%
- \textcolor{blue}{\operation}\hfill}}
- \hbox{\parbox[b][.25in][c]{1.25in}{%
- \textcolor{blue}{\numCorrect}\hfill}}
- \hbox{\parbox[b][.25in][c]{1.25in}{%
- \textcolor{blue}{\numAttempted}\hfill}}
- \hbox{\parbox[b][.25in][c]{1.25in}{%
- \textcolor{blue}{\percentCorrect}\hfill}}
-\if\fc@timedscores y
- \hbox{\textField[\presets{\cBGNoBorder}\textColor{\statsFieldOpColor}
- ]{ScoreTotal}{.51in}{.25in}\kern1bp
- \makebox[0pt][l]{\pushButton[\presets{\tBGNoBorder}
- \Ff{-\FfReadOnly}\S{S}\H{I}\textSize{10}
- \A{\JS{docTimeScores();}}]{Descrip5}{1in}{.25in}}%
- \parbox[b][.25in][c]{1in}{%
- \centering\textcolor{blue}{\timedScores}}}%
-\fi
- }%
-}
-\edef\bFCa{/\ifKV@fcopera@add/\else*\fi}
-\edef\eFCa{\ifKV@fcopera@add/\else*\fi/}
-\edef\bFCs{/\ifKV@fcopera@sub/\else*\fi}
-\edef\eFCs{\ifKV@fcopera@sub/\else*\fi/}
-\edef\bFCm{/\ifKV@fcopera@mul/\else*\fi}
-\edef\eFCm{\ifKV@fcopera@mul/\else*\fi/}
-\edef\bFCd{/\ifKV@fcopera@div/\else*\fi}
-\edef\eFCd{\ifKV@fcopera@div/\else*\fi/}
-\begin{insDLJS*}[_loadfcjs]{fcjs}
-\begin{newsegment}{data}
-var _loadfcjs=true;
-var t, b, o, r, c, oAlert;
-function getFieldObjects()
-{
- t=this.getField("top");
- b=this.getField("bottom");
- o=this.getField("operation");
- r=this.getField("result");
- c=this.getField("ChooseOperation");
- oAlert=this.getField("alertbox");
- useKeyPad = (this.getField("Enter").display==display.visible);
-}
-var turnoff=false;
-var timedScores=\fcTimedScores;
-var useKeyPad = false;
-var decimalPressed = false;
-var keypadInput=false;
-var operand='a';
-var NumAddCorr=0;
-var NumAddTried=0;
-var NumSubCorr=0;
-var NumSubTried=0;
-var NumMulCorr=0;
-var NumMulTried=0;
-var NumDivCorr=0;
-var NumDivTried=0;
-timelimit=600000;
-mybegin="";
-getFieldObjects();
-var numDecimals=0;
-var addDecT = \fcaddDecT, addDecB = \fcaddDecB;
-var addT_a = Number(\fcAddTParams[0]);
-var addT_b = Number(\fcAddTParams[1]);
-var addB_a = Number(\fcAddBParams[0]);
-var addB_b = Number(\fcAddBParams[1]);
-var subDecT = \fcsubDecT, subDecB = \fcsubDecB;
-var subT_a = Number(\fcSubTParams[0]);
-var subT_b = Number(\fcSubTParams[1]);
-var subB_a = Number(\fcMulBParams[0]);
-var subB_b = Number(\fcMulBParams[1]);
-var mulDecT = \fcmulDecT, mulDecB = \fcmulDecB;
-var mulT_a = Number(\fcMulTParams[0]);
-var mulT_b = Number(\fcMulTParams[1]);
-var mulB_a = Number(\fcMulBParams[0]);
-var mulB_b = Number(\fcMulBParams[1]);
-var divDecQ = \fcdivDecQ, divDecB = \fcdivDecB;
-var divQ_a = Number(\fcDivQParams[0]);
-var divQ_b = Number(\fcDivQParams[1]);
-var divB_a = Number(\fcDivBParams[0]);
-var divB_b = Number(\fcDivBParams[1]);
-\end{newsegment}
-\begin{newsegment}{updatescore}
-function updatescore(f,t) {
- // console.println(t);
- var points;
- if(t<=5) points=6;
- if((t>5)&&(t<=10)) points=5;
- if((t>10)&&(t<=15)) points=4;
- if((t>15)&&(t<=20)) points=3;
- if((t>20)&&(t<=25)) points=2;
- if(t>=25) points=1;
- var oField=this.getField(f);
- if ( oField != null ) {
- oField.value+=points;
- this.getField("ScoreTotal").value+=points;
- }
-}
-function docTimeScores() {
- app.execDialog(fcTimedScoresDialog);
-}
-var fcTimedScoresDialog =
-{
- // set a default value for radio button field
- initialize: function(dialog) {
- },
- // when user presses "Ok", this handler will execute first
- commit: function(dialog) {
- },
- // The Dialog Description
- description:
- {
- name: "PDF Flash Cards - Timed Scores",
- align_children: "align_left",
- elements:
- [
- {
- type: "view",
- align_children: "align_left",
- elements:
- [
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "instr",
- name: "Points are awarded, based on time, "
- +"for successfully solving a problem:"
- }
- ]
- },
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "gap",
- width: 10
- },
- {
- type: "static_text",
- item_id: "hr01",
- char_width: 22,
- font: "dialog",
- bold: true,
- name: "Time elapsed"
- },
- {
- type: "static_text",
- item_id: "hr02",
- font: "dialog",
- bold: true,
- name: "Points"
- },
- ]
- },
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "gap",
- width: 10
- },
- {
- type: "static_text",
- item_id: "st11",
- char_width: 22,
- name: "Less then 5 sec"
- },
- {
- type: "static_text",
- item_id: "st12",
- name: " 6"
- },
- ]
- },
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "gap",
- width: 10
- },
- {
- type: "static_text",
- item_id: "st21",
- char_width: 22,
- name: "Between 5 and 10 sec"
- },
- {
- type: "static_text",
- item_id: "st22",
- name: " 5"
- },
- ]
- },
-//---
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "gap",
- width: 10
- },
- {
- type: "static_text",
- item_id: "st31",
- char_width: 22,
- name: "Between 10 and 15 sec"
- },
- {
- type: "static_text",
- item_id: "st32",
- name: " 4"
- },
- ]
- },
-//---
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "gap",
- width: 10
- },
- {
- type: "static_text",
- item_id: "st41",
- char_width: 22,
- name: "Between 10 and 20 sec"
- },
- {
- type: "static_text",
- item_id: "st42",
- name: " 3"
- },
- ]
- },
- ]
- },
-//---
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "gap",
- width: 10
- },
- {
- type: "static_text",
- item_id: "st51",
- char_width: 22,
- name: "Between 20 and 25 sec"
- },
- {
- type: "static_text",
- item_id: "st52",
- name: " 2"
- },
- ]
- },
-//---
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "gap",
- width: 10
- },
- {
- type: "static_text",
- item_id: "st61",
- char_width: 22,
- name: "Greater than 25 sec"
- },
- {
- type: "static_text",
- item_id: "st62",
- name: " 1"
- },
- ]
- },
-//---
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- alignment: "align_right",
- type: "ok",
- }
- ]
- }
- ]
- }
-}
-function validateResult()
-{
- var oField;
- if (!turnoff && !keypadInput) {
- MsgFlag=false;
- delay=true;
- timenow=new Date();
- mynow=util.printd("mmm d, yyyy, H:M:s",timenow);
- elapsedtime = (Date.parse(mynow)-Date.parse(mybegin))/1000;
- timeelapsed = (elapsedtime>timelimit);
- switch (operand) {
- case 'a':
- oField = this.getField("AddScore2");
- calculation=Number(t.value)+Number(b.value);
- if(timeelapsed) {
- if (timedScores) app.alert("\timeUpMsg",3);
- if ( oField != null ) oField.value=NumAddCorr;
- } else {
- if(Number(event.value)==calculation) {
- MsgFlag=true;
- if ( oField != null ) {
- oField.value=++NumAddCorr;
- updatescore("AddScore5",elapsedtime);
- }
- }
- else
- if ( oField != null ) oField.value=NumAddCorr;
- }
- oField = this.getField("AddScore3");
- if (oField != null ) oField.value=++NumAddTried;
- oField = this.getField("AddScore4");
- if (oField != null ) oField.value = util.printf("\%.0f",
- (NumAddCorr/NumAddTried)*100);
- break;
- case 's':
- oField=this.getField("SubScore2");
- calculation=Number(t.value)-Number(b.value);
- if(timeelapsed) {
- if (timedScores) app.alert("\timeUpMsg",3);
- oField.value=NumSubCorr;
- } else {
- if(Number(event.value)==calculation) {
- MsgFlag=true;
- if ( oField != null ) {
- oField.value=++NumSubCorr;
- updatescore("SubScore5",elapsedtime);
- }
- } else
- if ( oField != null ) oField.value=NumSubCorr;
- }
- oField=this.getField("SubScore3");
- if (oField != null) oField.value=++NumSubTried;
- oField=this.getField("SubScore4");
- if (oField != null) oField.value=util.printf("\%.0f",
- (NumSubCorr/NumSubTried)*100);
- break;
- case 'm':
- oField=this.getField("MulScore2");
- calculation=util.printf("\%."+numDecimals+"f",
- (t.value*b.value));
- if(timeelapsed) {
- if (timedScores) app.alert("\timeUpMsg",3);
- if (oField != null) oField.value=NumSubCorr;
- } else {
- if(Number(event.value)==Number(calculation)) {
- MsgFlag=true;
- if (oField != null) {
- oField.value=++NumMulCorr;
- updatescore("MulScore5",elapsedtime);
- }
- } else
- if (oField != null) oField.value=NumMulCorr;
- }
- oField=this.getField("MulScore3");
- if (oField != null) oField.value=++NumMulTried;
- oField=this.getField("MulScore4");
- if (oField != null) oField.value=util.printf("\%.0f",
- (NumMulCorr/NumMulTried)*100);
- break;
- case 'd':
- oField=this.getField("DivScore2");
- calculation=util.printf("\%."+numDecimals+"f",
- t.value/b.value);
- if(timeelapsed) {
- if (timedScores) app.alert("\timeUpMsg",3);
- if (oField != null) oField.value=NumDivCorr;
- } else {
- if(Number(event.value)==Number(calculation)) {
- MsgFlag=true;
- if (oField != null) {
- oField.value=++NumDivCorr;
- updatescore("DivScore5",elapsedtime);
- }
- } else
- if ( oField != null ) oField.value=NumDivCorr;
- }
- oField = this.getField("DivScore3");
- if (oField != null) oField.value=++NumDivTried;
- oField = this.getField("DivScore4");
- if (oField != null) oField.value=util.printf("\%.0f",
- (NumDivCorr/NumDivTried)*100);
- break;
- }
- if(!timeelapsed) {
- if(MsgFlag) {
- oAlert.textColor=color.blue;
- oAlert.value="\rightMsg";
- } else {
- oAlert.textColor=color.red;
- oAlert.value="\wrongMsg";
- }
- }
- this.getField("ansregion").value=calculation;
- this.getField("NewProblem").setFocus() ;
- delay=false;
- }
-}
-function startAgain() {
- getFieldObjects();
- turnoff=true;
- event.rc=false;
- this.resetForm();
- operand='+';
- NumAddCorr=0;
- NumAddTried=0;
- NumSubCorr=0;
- NumSubTried=0;
- NumMulCorr=0;
- umMulTried=0;
- NumDivCorr=0;
- NumDivTried=0;
-}
-function newCard() {
- turnoff=true;
- this.resetForm(["result","top","bottom","ansregion","alertbox"]);
- operand = c.value;
- switch (operand)
- {
- case 'a':
- {
- o.value='+'; // addDecT
- numDecimals = Math.max(addDecT,addDecB);
- var topTemplate = "\%."+addDecT+"f";
- var botTemplate = "\%."+addDecB+"f";
- var matchTemplate = "\%."+ numDecimals +"f";
- var m=util.printf(topTemplate,
- (addT_b-addT_a)*Math.random()+addT_a);
- var n=util.printf(botTemplate,
- (addB_b-addB_a)*Math.random()+addB_a);
- m=util.printf(matchTemplate,m);
- n=util.printf(matchTemplate,n);
- var nWidth=(m.length < n.length) ? n.length : m.length;
- var commonTemplate = "\%"+nWidth+"."+numDecimals+"f";
- t.value=util.printf(commonTemplate,m);
- b.value=util.printf(commonTemplate,n);
- break;
- }
- case 's':
- {
- o.value="-";
- numDecimals = Math.max(subDecT,subDecB);
- var topTemplate = "\%."+subDecT+"f";
- var botTemplate = "\%."+subDecB+"f";
- var matchTemplate = "\%."+ numDecimals +"f";
- var m=util.printf(topTemplate,
- (subT_b-subT_a)*Math.random()+subT_a);
- var n=util.printf(botTemplate,
- (subB_b-subB_a)*Math.random()+subB_a);
- m=util.printf(matchTemplate,m);
- n=util.printf(matchTemplate,n);
- var nWidth=(m.length < n.length) ? n.length : m.length;
- var commonTemplate = "\%"+nWidth+"."+numDecimals+"f";
- t.value=util.printf(commonTemplate,m);
- b.value=util.printf(commonTemplate,n);
- if(!\fcAllowSub\space && (b.value>t.value))
- {
- var tmp = b.value;
- b.value = t.value;
- t.value = tmp;
- }
- break;
- }
- case 'm':
- {
- o.value='x';
- numDecimals=Math.max(mulDecT,mulDecB);
- var topTemplate = "\%."+mulDecT+"f";
- var botTemplate = "\%."+mulDecB+"f";
- var matchTemplate = "\%."+ numDecimals +"f";
- var m=util.printf(topTemplate,
- (mulT_b-mulT_a)*Math.random()+mulT_a);
- var n=util.printf(botTemplate,
- (mulB_b-mulB_a)*Math.random()+mulB_a);
- m=util.printf(matchTemplate,m);
- n=util.printf(matchTemplate,n);
- var nWidth=(m.length < n.length) ? n.length : m.length;
- var commonTemplate = "\%"+nWidth+"."+numDecimals+"f";
- t.value=util.printf(commonTemplate,m);
- b.value=util.printf(commonTemplate,n);
- numDecimals = mulDecT + mulDecB;
- break;
- }
- case 'd':
- {
- o.value='\string\367'
- numDecimals=divDecQ+divDecB;
- var topTemplate = "\%."+divDecQ+"f";
- var botTemplate = "\%."+divDecB+"f";
- var matchTemplate = "\%."+ numDecimals +"f";
- var n,m;
- var quotient=util.printf(topTemplate,
- divQ_a + (divQ_b-divQ_a)*Math.random());
- for(n=util.printf(botTemplate,
- divB_a + (divB_b-divB_a)*Math.random());
- n==0; n=util.printf("\%.0f",
- divB_a + (divB_b-divB_a)*Math.random()));
- m=util.printf(matchTemplate,quotient*n);
- n=util.printf(matchTemplate,n);
- var nWidth=(m.length < n.length) ? n.length : m.length;
- var commonTemplate = "\%"+nWidth+"."+numDecimals+"f";
- t.value=util.printf(commonTemplate,m);
- b.value=util.printf(commonTemplate,n);
- numDecimals = divDecQ;
- break;
- }
- }
- // console.println("operation = " + o.value);
- turnoff=false;
- if (!useKeyPad) r.readonly=false;
- timebegin = new Date();
- mybegin = util.printd("mmm d, yyyy, H:M:s",timebegin);
- r.setFocus();
-}
-function addDigit(n) {
- if (oAlert.value != "") return;
- switch (n) {
- case "Enter":
- var tmp_value=r.valueAsString;
- this.resetForm(["result"]);
- keypadInput=false;
- r.value = tmp_value;
- break;
- case "Back":
- keypadInput=true;
- var tmp_value=r.valueAsString;
- if (tmp_value != "")
- r.value = tmp_value.substring(0,tmp_value.length-1);
- break;
- case "Dec":
- keypadInput=true;
- var v=r.valueAsString;
- v = v + ".";
- r.value = v
- break;
- case "Minus":
- keypadInput=true;
- var v=r.valueAsString;
- if (r.value < 0 ) {
- v = String(Math.abs(v));
- } else v = "-" + v;
- r.value = v;
- break;
- default:
- keypadInput=true;
- v=r.valueAsString
- v = v + String(n);
- r.value = v
- }
-}
-function ToggleKeyPad() {
- useKeyPad = !useKeyPad;
- this.delay=true;
- if (useKeyPad) {
- for (var i=0; i<= 9; i++)
- this.getField("num"+i).display=display.visible;
- this.getField("Back").display=display.visible;
- this.getField("Enter").display=display.visible;
- this.getField("Dec").display=display.visible;
- this.getField("Minus").display=display.visible;
- this.getField("result").readonly=true;
- } else {
- for (var i=0; i<= 9; i++)
- this.getField("num"+i).display=display.hidden;
- this.getField("Back").display=display.hidden;
- this.getField("Enter").display=display.hidden;
- this.getField("Dec").display=display.hidden;
- this.getField("Minus").display=display.hidden;
- this.getField("result").readonly=false;
- }
- this.delay=false;
-}
-\end{newsegment}
-\begin{newsegment}{Custom Keystroke for Numbers}
-function myNumber_Keystroke(nDec,sepStyle,negStyle,currStyle,
- strCurrency,bCurrencyPrepend) {
- var v = t.valueAsString;
- if ( v == "")
- { event.rc=false; this.resetForm(["result"]); }
- else
- if ( event.value != "-" && event.value != ".")
- AFNumber_Keystroke(nDec,sepStyle,negStyle,currStyle,
- strCurrency,bCurrencyPrepend);
-}
-function myNumber_Format(nDec,sepStyle,negStyle,currStyle,
- strCurrency,bCurrencyPrepend) {
- if ( !useKeyPad && event.value != "-" && event.value != ".")
- AFNumber_Format(nDec,sepStyle,negStyle,currStyle,
- strCurrency,bCurrencyPrepend);
-}
-\end{newsegment}
-\begin{newsegment}{Option Dialog Box}
-var fcDialog =
-{
- // set a default value for radio button field
- initialize: function(dialog) {
- var addDT="AT0" + String(addDecT);
- var addDB="AB0" + String(addDecB);
- var subDT="ST0" + String(subDecT);
- var subDB="SB0" + String(subDecB);
- var mulDT="MT0" + String(mulDecT);
- var mulDB="MB0" + String(mulDecB);
- var divDQ="DQ0" + String(divDecQ);
- var divDB="DB0" + String(divDecB);
- var radioString = addDT +": true, " + addDB +": true, "
- + subDT + ": true, " + subDB + ": true, "
- + mulDT + ": true, " + mulDB + ": true, "
- + divDQ + ": true, " + divDB + ": true "
-//console.println("radioString="+radioString);
- eval("dialog.load({" + radioString + "})");
- dialog.load({
- // Populate the addition first
- "aT_a": util.printf("\%.0f",addT_a),
- "aT_b": util.printf("\%.0f",addT_b),
- "aB_a": util.printf("\%.0f",addB_a),
- "aB_b": util.printf("\%.0f",addB_b),
- // subtraction
- "sT_a": util.printf("\%.0f",subT_a),
- "sT_b": util.printf("\%.0f",subT_b),
- "sB_a": util.printf("\%.0f",subB_a),
- "sB_b": util.printf("\%.0f",subB_b),
- // multiplication
- "mT_a": util.printf("\%.0f",mulT_a),
- "mT_b": util.printf("\%.0f",mulT_b),
- "mB_a": util.printf("\%.0f",mulB_a),
- "mB_b": util.printf("\%.0f",mulB_b),
- // division
- "dQ_a": util.printf("\%.0f",divQ_a),
- "dQ_b": util.printf("\%.0f",divQ_b),
- "dB_a": util.printf("\%.0f",divB_a),
- "dB_b": util.printf("\%.0f",divB_b)
- });
- },
- // when user presses "Ok", this handler will execute first
- commit: function(dialog) {
- var results = dialog.store();
- addT_a = Math.round(results["aT_a"]);
- addT_b = Math.round(results["aT_b"]);
- addB_a = Math.round(results["aB_a"]);
- addB_b = Math.round(results["aB_b"]);
- for (var i=0; i < 3; i++)
- if (results["AT0"+i]) { addDecT = i; break; }
- for (var i=0; i < 3; i++)
- if (results["AB0"+i]) { addDecB = i; break; }
- // subtraction
- subT_a = Math.round(results["sT_a"]);
- subT_b = Math.round(results["sT_b"]);
- subB_a = Math.round(results["sB_a"]);
- subB_b = Math.round(results["sB_b"]);
- for (var i=0; i < 3; i++)
- if (results["ST0"+i]) { subDecT = i; break; }
- for (var i=0; i < 3; i++)
- if (results["SB0"+i]) { subDecB = i; break; }
- // multiplication
- mulT_a = Math.round(results["mT_a"]);
- mulT_b = Math.round(results["mT_b"]);
- mulB_a = Math.round(results["mB_a"]);
- mulB_b = Math.round(results["mB_b"]);
- for (var i=0; i < 3; i++)
- if (results["MT0"+i]) { mulDecT = i; break; }
- for (var i=0; i < 3; i++)
- if (results["MB0"+i]) { mulDecB = i; break; }
- // division
- divQ_a = Math.round(results["dQ_a"]);
- divQ_b = Math.round(results["dQ_b"]);
- divB_a = Math.round(results["dB_a"]);
- divB_b = Math.round(results["dB_b"]);
- for (var i=0; i < 3; i++)
- if (results["DQ0"+i]) { divDecQ = i; break; }
- for (var i=0; i < 3; i++)
- if (results["DB0"+i]) { divDecB = i; break; }
- },
- // The Dialog Description
- description:
- {
- name: "PDF Flash Cards - Options",
- align_children: "align_left",
- elements:
- [
-\bFCa
- { // The Addition Cluster
- type: "cluster",
- name: "Addition",
- item_id: "add",
- align_children: "align_left",
- elements:
- [
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "addRngT",
- name: "Range Top "
- },
- {
- item_id: "aT_a",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "static_text",
- item_id: "addRngToT",
- name: " to "
- },
- {
- item_id: "aT_b",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "view",
- align_children: "align_distribute",
- elements:
- [
- {
- type: "static_text",
- item_id: "aDcT",
- name: "Decimals:"
- },
- {
- type: "radio",
- item_id: "AT00",
- group_id: "AddT",
- name: "none"
- },
- {
- type: "radio",
- item_id: "AT01",
- group_id: "AddT",
- name: "1",
- },
- {
- type: "radio",
- item_id: "AT02",
- group_id: "AddT",
- name: "2",
- },
- ]
- },
- ]
- },
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "addRngB",
- name: "Range Bottom"
- },
- {
- item_id: "aB_a",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "static_text",
- item_id: "addRngToB",
- name: " to "
- },
- {
- item_id: "aB_b",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "view",
- align_children: "align_distribute",
- elements:
- [
- {
- type: "static_text",
- item_id: "aDcB",
- name: "Decimals:"
- },
- {
- type: "radio",
- item_id: "AB00",
- group_id: "AddB",
- name: "none"
- },
- {
- type: "radio",
- item_id: "AB01",
- group_id: "AddB",
- name: "1",
- },
- {
- type: "radio",
- item_id: "AB02",
- group_id: "AddB",
- name: "2",
- },
- ]
- },
- ]
- }
- ]
- }, // End Addition Cluster
-\eFCa
-\bFCs
- { // The Subtraction Cluster
- type: "cluster",
- name: "Subtraction",
- item_id: "sub",
- align_children: "align_left",
- elements:
- [
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "subRngT",
- name: "Range Top "
- },
- {
- item_id: "sT_a",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "static_text",
- item_id: "subRngToT",
- name: " to "
- },
- {
- item_id: "sT_b",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "view",
- align_children: "align_distribute",
- elements:
- [
- {
- type: "static_text",
- item_id: "sDT",
- name: "Decimals:"
- },
- {
- type: "radio",
- item_id: "ST00",
- group_id: "SubT",
- name: "none"
- },
- {
- type: "radio",
- item_id: "ST01",
- group_id: "SubT",
- name: "1",
- },
- {
- type: "radio",
- item_id: "ST02",
- group_id: "SubT",
- name: "2",
- },
- ]
- },
- ]
- },
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "subRngB",
- name: "Range Bottom"
- },
- {
- item_id: "sB_a",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "static_text",
- item_id: "subRngToB",
- name: " to "
- },
- {
- item_id: "sB_b",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "view",
- align_children: "align_distribute",
- elements:
- [
- {
- type: "static_text",
- item_id: "sDcB",
- name: "Decimals:"
- },
- {
- type: "radio",
- item_id: "SB00",
- group_id: "SubB",
- name: "none"
- },
- {
- type: "radio",
- item_id: "SB01",
- group_id: "SubB",
- name: "1",
- },
- {
- type: "radio",
- item_id: "SB02",
- group_id: "SubB",
- name: "2",
- },
- ]
- },
- ]
- }
- ]
- }, // End Subtraction Cluster
-\eFCs
-\bFCm
- { // The Multiplication Cluster
- type: "cluster",
- name: "Multiplication",
- item_id: "mul",
- align_children: "align_left",
- elements:
- [
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "mulRngT",
- name: "Range Top "
- },
- {
- item_id: "mT_a",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "static_text",
- item_id: "mulRngToT",
- name: " to "
- },
- {
- item_id: "mT_b",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "view",
- align_children: "align_distribute",
- elements:
- [
- {
- type: "static_text",
- item_id: "mDcT",
- name: "Decimals:"
- },
- {
- type: "radio",
- item_id: "MT00",
- group_id: "MulT",
- name: "none"
- },
- {
- type: "radio",
- item_id: "MT01",
- group_id: "MulT",
- name: "1",
- },
- {
- type: "radio",
- item_id: "MT02",
- group_id: "MulT",
- name: "2",
- },
- ]
- },
- ]
- },
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "mulRngB",
- name: "Range Bottom"
- },
- {
- item_id: "mB_a",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "static_text",
- item_id: "mulRngToB",
- name: " to "
- },
- {
- item_id: "mB_b",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "view",
- align_children: "align_distribute",
- elements:
- [
- {
- type: "static_text",
- item_id: "mDcB",
- name: "Decimals:"
- },
- {
- type: "radio",
- item_id: "MB00",
- group_id: "MulB",
- name: "none"
- },
- {
- type: "radio",
- item_id: "MB01",
- group_id: "MulB",
- name: "1",
- },
- {
- type: "radio",
- item_id: "MB02",
- group_id: "MulB",
- name: "2",
- },
- ]
- },
- ]
- }
- ]
- }, // End Multiplication Cluster
-\eFCm
-\bFCd
- { // The Division Cluster
- type: "cluster",
- name: "Division",
- item_id: "div",
- align_children: "align_left",
- elements:
- [
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "divRngQ",
- name: "Range Quotient"
- },
- {
- item_id: "dQ_a",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "static_text",
- item_id: "divRngToT",
- name: " to "
- },
- {
- item_id: "dQ_b",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "view",
- align_children: "align_distribute",
- elements:
- [
- {
- type: "static_text",
- item_id: "dDcQ",
- name: "Decimals:"
- },
- {
- type: "radio",
- item_id: "DQ00",
- group_id: "DivQ",
- name: "none"
- },
- {
- type: "radio",
- item_id: "DQ01",
- group_id: "DivQ",
- name: "1",
- },
- {
- type: "radio",
- item_id: "DQ02",
- group_id: "DivQ",
- name: "2",
- },
- ]
- },
- ]
- },
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- type: "static_text",
- item_id: "divRngB",
- name: "Range Divisor "
- },
- {
- item_id: "dB_a",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "static_text",
- item_id: "divRngToB",
- name: " to "
- },
- {
- item_id: "dB_b",
- type: "edit_text",
- alignment: "align_fill",
- width: 40,
- height: 20
- },
- {
- type: "view",
- align_children: "align_distribute",
- elements:
- [
- {
- type: "static_text",
- item_id: "dDcB",
- name: "Decimals:"
- },
- {
- type: "radio",
- item_id: "DB00",
- group_id: "DivB",
- name: "none"
- },
- {
- type: "radio",
- item_id: "DB01",
- group_id: "DivB",
- name: "1",
- },
- {
- type: "radio",
- item_id: "DB02",
- group_id: "DivB",
- name: "2",
- },
- ]
- },
- ]
- }
- ]
- }, // End Division Cluster
-\eFCd
- {
- type: "view",
- align_children: "align_row",
- elements:
- [
- {
- alignment: "align_right",
- type: "ok_cancel",
- }
- ]
- }
- ]
- }
-}
-\end{newsegment}
-\end{insDLJS*}
-\begin{insDLJS}[fcMenu]{fcmd}{Menu Data}
-\fcMenu
-function processFcMenu() {
- var cChoice = \popUpMenu(fcMenu);
- if ( cChoice != null ) {
- switch(cChoice) {
- case "0": app.execDialog(fcDialog);
- break;
- case "1": ToggleKeyPad();
- break
- case "2": app.execMenuItem("GeneralInfo");
- }
- }
-}
-\end{insDLJS}
-\InputIfFileExists{fc_custom.def}{}{}
-
-\endinput
-%%
-%% End of file `fc_arith.sty'.
diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check
index ce184166395..a8abee4ef99 100755
--- a/Master/tlpkg/bin/tlpkg-ctan-check
+++ b/Master/tlpkg/bin/tlpkg-ctan-check
@@ -128,7 +128,7 @@ my @TLP_working = qw(
expdlist expl3 export expressg extarrows exteps
extpfeil extract extsizes
faktor fancybox fancyhdr fancynum fancypar fancyref fancytooltips fancyvrb
- FAQ-en fbs fc_arith featpost fenixpar
+ FAQ-en fbs featpost fenixpar
feyn feynmf fge fig4latex figbas figflow figsize
filecontents filehook findhyph fink first-latex-doc
fix2col fixfoot fixme fixpdfmag
diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds
index 70de1d611e5..27a19e1bb2d 100755
--- a/Master/tlpkg/libexec/ctan2tds
+++ b/Master/tlpkg/libexec/ctan2tds
@@ -265,6 +265,8 @@ $Master = "$mydir/../..";
'faq-fr', "die 'skipping, nonfree'",
'fax', "die 'skipping, nosell license'",
'fc', "&MAKEflatten",
+ 'fc_arith', "die 'skipping, per author request'",
+ 'fc-arith', "die 'skipping, per author request'",
'featpost', "&MAKEfeatpost",
'feynmf', "&MAKEfeynmf",
'findhyph', "&MAKEflatten",
diff --git a/Master/tlpkg/tlpsrc/collection-humanities.tlpsrc b/Master/tlpkg/tlpsrc/collection-humanities.tlpsrc
index a3582f36068..f299780f291 100644
--- a/Master/tlpkg/tlpsrc/collection-humanities.tlpsrc
+++ b/Master/tlpkg/tlpsrc/collection-humanities.tlpsrc
@@ -9,7 +9,6 @@ depend covington
depend dramatist
depend ecltree
depend ednotes
-depend fc_arith
depend gb4e
depend gmverse
depend jura
diff --git a/Master/tlpkg/tlpsrc/fc_arith.tlpsrc b/Master/tlpkg/tlpsrc/fc_arith.tlpsrc
deleted file mode 100644
index e69de29bb2d..00000000000
--- a/Master/tlpkg/tlpsrc/fc_arith.tlpsrc
+++ /dev/null