Author: dougb
Date: Thu Nov  4 19:18:32 2010
New Revision: 214802
URL: http://svn.freebsd.org/changeset/base/214802

Log:
  Vendor import of BIND 9.4-ESV-R3

Added:
  vendor/bind9/dist-9.4/doc/draft/draft-ietf-behave-dns64-10.txt   (contents, 
props changed)
  
vendor/bind9/dist-9.4/doc/draft/draft-ietf-dnsext-dnssec-registry-fixes-06.txt  
 (contents, props changed)
  vendor/bind9/dist-9.4/doc/draft/draft-ietf-dnsop-dnssec-key-timing-00.txt   
(contents, props changed)
  vendor/bind9/dist-9.4/doc/draft/draft-mekking-dnsop-auto-cpsync-00.txt   
(contents, props changed)
  vendor/bind9/dist-9.4/doc/draft/draft-yao-dnsext-bname-04.txt   (contents, 
props changed)
  vendor/bind9/dist-9.4/doc/rfc/rfc5933.txt   (contents, props changed)
Deleted:
  vendor/bind9/dist-9.4/doc/draft/draft-ietf-behave-dns64-09.txt
  vendor/bind9/dist-9.4/doc/draft/draft-ietf-dnsext-dnssec-gost-07.txt
Modified:
  vendor/bind9/dist-9.4/CHANGES
  vendor/bind9/dist-9.4/bin/named/query.c
  vendor/bind9/dist-9.4/doc/arm/isc-logo.eps
  vendor/bind9/dist-9.4/doc/arm/isc-logo.pdf
  vendor/bind9/dist-9.4/doc/rfc/index
  vendor/bind9/dist-9.4/lib/dns/api
  vendor/bind9/dist-9.4/lib/dns/include/dns/ncache.h
  vendor/bind9/dist-9.4/lib/dns/include/dns/types.h
  vendor/bind9/dist-9.4/lib/dns/ncache.c
  vendor/bind9/dist-9.4/lib/dns/resolver.c
  vendor/bind9/dist-9.4/lib/dns/validator.c
  vendor/bind9/dist-9.4/version

Modified: vendor/bind9/dist-9.4/CHANGES
==============================================================================
--- vendor/bind9/dist-9.4/CHANGES       Thu Nov  4 19:07:52 2010        
(r214801)
+++ vendor/bind9/dist-9.4/CHANGES       Thu Nov  4 19:18:32 2010        
(r214802)
@@ -1,3 +1,32 @@
+       --- 9.4-ESV-R3 released ---
+
+2925.  [bug]           Named failed to accept uncachable negative responses
+                       from insecure zones. [RT# 21555]
+
+2921.  [bug]           The resolver could attempt to destroy a fetch context
+                       too soon.  [RT #19878]
+
+2904.   [bug]           When using DLV, sub-zones of the zones in the DLV,
+                       could be incorrectly marked as insecure instead of
+                       secure leading to negative proofs failing.  This was
+                       a unintended outcome from change 2890. [RT# 21392]
+
+2900.  [bug]           The placeholder negative caching element was not
+                       properly constructed triggering a INSIST in 
+                       dns_ncache_towire(). [RT #21346]
+
+2890.  [bug]           Handle the introduction of new trusted-keys and
+                       DS, DLV RRsets better. [RT #21097]
+
+2869.  [bug]           Fix arguments to dns_keytable_findnextkeynode() call.
+                       [RT #20877]
+
+2678.  [func]          Treat DS queries as if "minimal-response yes;"
+                       was set. [RT #20258]
+
+2427.  [func]          Treat DNSKEY queries as if "minimal-response yes;"
+                       was set. [RT #18528]
+
        --- 9.4-ESV-R2 released ---
 
 2876.  [bug]           Named could return SERVFAIL for negative responses

Modified: vendor/bind9/dist-9.4/bin/named/query.c
==============================================================================
--- vendor/bind9/dist-9.4/bin/named/query.c     Thu Nov  4 19:07:52 2010        
(r214801)
+++ vendor/bind9/dist-9.4/bin/named/query.c     Thu Nov  4 19:18:32 2010        
(r214802)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2004-2009  Internet Systems Consortium, Inc. ("ISC")
+ * Copyright (C) 2004-2010  Internet Systems Consortium, Inc. ("ISC")
  * Copyright (C) 1999-2003  Internet Software Consortium.
  *
  * Permission to use, copy, modify, and/or distribute this software for any
@@ -15,7 +15,7 @@
  * PERFORMANCE OF THIS SOFTWARE.
  */
 
-/* $Id: query.c,v 1.257.18.53 2009/12/30 08:55:48 jinmei Exp $ */
+/* $Id: query.c,v 1.257.18.55 2010/07/03 23:45:26 tbox Exp $ */
 
 /*! \file */
 
@@ -4654,6 +4654,13 @@ ns_query_start(ns_client_t *client) {
        }
 
        /*
+        * Turn on minimal response for DNSKEY and DS queries.
+        */
+       if (qtype == dns_rdatatype_dnskey || qtype == dns_rdatatype_ds)
+               client->query.attributes |= (NS_QUERYATTR_NOAUTHORITY |
+                                            NS_QUERYATTR_NOADDITIONAL);
+
+       /*
         * If the client has requested that DNSSEC checking be disabled,
         * allow lookups to return pending data and instruct the resolver
         * to return data before validation has completed.

Modified: vendor/bind9/dist-9.4/doc/arm/isc-logo.eps
==============================================================================
--- vendor/bind9/dist-9.4/doc/arm/isc-logo.eps  Thu Nov  4 19:07:52 2010        
(r214801)
+++ vendor/bind9/dist-9.4/doc/arm/isc-logo.eps  Thu Nov  4 19:18:32 2010        
(r214802)
@@ -1,255 +1,63 @@
 %!PS-Adobe-3.1 EPSF-3.0
-%%Title: Alternate-ISC-logo-v2.ai
-%%Creator: Adobe Illustrator(R) 11
-%%AI8_CreatorVersion: 11.0.0
-%AI9_PrintingDataBegin
-%%For: Douglas E. Appelt
-%%CreationDate: 10/22/04
-%%BoundingBox: 0 0 255 149
-%%HiResBoundingBox: 0 0 254.8672 148.7520
-%%CropBox: 0 0 254.8672 148.7520
+%ADO_DSC_Encoding: MacOS Roman
+%%Title: ISC_logo_only_RGB.eps
+%%Creator: Adobe Illustrator(R) 13.0
+%%For: Brian Reid
+%%CreationDate: 3/25/10
+%%BoundingBox: 0 0 118 46
+%%HiResBoundingBox: 0 0 117.9991 45.0176
+%%CropBox: 0 0 117.9991 45.0176
 %%LanguageLevel: 2
 %%DocumentData: Clean7Bit
+%ADOBeginClientInjection: DocumentHeader "AI11EPS"
+%%AI8_CreatorVersion: 13.0.2
%AI9_PrintingDataBegin
%ADO_BuildNumber: Adobe Illustrator(R) 13.0.2 x434 R agm 4.4379 ct 5.1039
%ADO_ContainsXMP: MainFirst
+%ADOEndClientInjection: DocumentHeader "AI11EPS"
 %%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.19 0)
-%%+ procset Adobe_CoolType_Core (2.23 0)
-%%+ procset Adobe_AGM_Core (2.0 0)
-%%+ procset Adobe_AGM_Utils (1.0 0)
-%%DocumentFonts:
-%%DocumentNeededFonts:
-%%DocumentNeededFeatures:
-%%DocumentSuppliedFeatures:
-%%DocumentProcessColors:  Cyan Magenta Yellow Black
-%%DocumentCustomColors: (PANTONE 1805 C)
-%%+ (PANTONE 871 C)
-%%+ (PANTONE 301 C)
-%%+ (PANTONE 7506 C)
-%%CMYKCustomColor: 0 0.9100 1 0.2300 (PANTONE 1805 C)
-%%+ 0.3569 0.3608 0.6353 0.1882 (PANTONE 871 C)
-%%+ 1 0.4500 0 0.1800 (PANTONE 301 C)
-%%+ 0 0.0500 0.1500 0 (PANTONE 7506 C)
-%%RGBCustomColor:
-%ADO_ContainsXMP: MainFirst
-%AI7_Thumbnail: 128 76 8
-%%BeginData: 10692 Hex Bytes
-%0000330000660000990000CC0033000033330033660033990033CC0033FF
-%0066000066330066660066990066CC0066FF009900009933009966009999
-%0099CC0099FF00CC0000CC3300CC6600CC9900CCCC00CCFF00FF3300FF66
-%00FF9900FFCC3300003300333300663300993300CC3300FF333300333333
-%3333663333993333CC3333FF3366003366333366663366993366CC3366FF
-%3399003399333399663399993399CC3399FF33CC0033CC3333CC6633CC99
-%33CCCC33CCFF33FF0033FF3333FF6633FF9933FFCC33FFFF660000660033
-%6600666600996600CC6600FF6633006633336633666633996633CC6633FF
-%6666006666336666666666996666CC6666FF669900669933669966669999
-%6699CC6699FF66CC0066CC3366CC6666CC9966CCCC66CCFF66FF0066FF33
-%66FF6666FF9966FFCC66FFFF9900009900339900669900999900CC9900FF
-%9933009933339933669933999933CC9933FF996600996633996666996699
-%9966CC9966FF9999009999339999669999999999CC9999FF99CC0099CC33
-%99CC6699CC9999CCCC99CCFF99FF0099FF3399FF6699FF9999FFCC99FFFF
-%CC0000CC0033CC0066CC0099CC00CCCC00FFCC3300CC3333CC3366CC3399
-%CC33CCCC33FFCC6600CC6633CC6666CC6699CC66CCCC66FFCC9900CC9933
-%CC9966CC9999CC99CCCC99FFCCCC00CCCC33CCCC66CCCC99CCCCCCCCCCFF
-%CCFF00CCFF33CCFF66CCFF99CCFFCCCCFFFFFF0033FF0066FF0099FF00CC
-%FF3300FF3333FF3366FF3399FF33CCFF33FFFF6600FF6633FF6666FF6699
-%FF66CCFF66FFFF9900FF9933FF9966FF9999FF99CCFF99FFFFCC00FFCC33
-%FFCC66FFCC99FFCCCCFFCCFFFFFF33FFFF66FFFF99FFFFCC110000001100
-%000011111111220000002200000022222222440000004400000044444444
-%550000005500000055555555770000007700000077777777880000008800
-%000088888888AA000000AA000000AAAAAAAABB000000BB000000BBBBBBBB
-%DD000000DD000000DDDDDDDDEE000000EE000000EEEEEEEE0000000000FF
-%00FF0000FFFFFF0000FF00FFFFFF00FFFFFF
-%524C45FD1CF852FD63FFF820272726272727264B27272627272726272727
-%26272727264B20F827FD63FFF827FFFFFFCFFF84365AFFFFFFCFFFFFFFCF
-%FFFFFFCFFD04FFCAF852FD63FFF827CFCFCACFCA2F0607A8CFCACFCACFCA
-%CFCACFCACFCACFCACF7CF827FD63FFF800FFCFFFA8A8070D06A8CFFFCFFF
-%CFFFCFFFCFFFCFFFCFFFCFA7F852FD63FFF800077E2F0D060D060706537D
-%CF7D2FA8CFCACFCACFCACFCAFF7CF827FD63FFF8000D062F070D062F070D
-%062F2F0D062FCACFCFFFCFCFCFFFCFA1F852FD63FFF8050707062E517651
-%522807060706072ECFCACFCACFCACFCAFF7CF827FD63FFF8002F067C757B
-%757C757B512F072F2FFFCFCFCFFFCFFFCFFFCFA1F852FD63FFF805075251
-%75517551755175512F062FCACFCACFCACFCACFCAFF7CF827FD63FFF8F859
-%75765176757C517C757B2E2F07A8CFFFCFCFCFFFCFCFCFA1F852FD63FFF8
-%00517551757CCFCAA751755175060753CFCACFCACFCACFCACF7CF827FD63
-%FFF8F87C75757CFFCFFFCFA7517C752F072F59A8CFCFCFFFCFFFCFA7F852
-%FD04FFA87D527DA8FD5AFFF827757551A1CFCFCAFFA0755175280D060706
-%A8CFCFCACFCAFF7CF827FD05FF27F827FD5BFFF8F87C51767CFFCFFFCFA0
-%517C752F062F060D84FFCFFFCFFFCFA1F852FD05FF7DF87DFD5BFFF80552
-%7551757CC9A7A05175517606072F7E7DCFCACFC9CFCAFF6FF827FD05FF52
-%F852FD27FFA8FD33FFF80059757C7575517C517C517C2E2F06CFCFFFCFCF
-%9293CAFFCF6FF852FD05FF7DF87DFD04FFA8FD05FF7D7DA8FF527D7D7D52
-%7D52A8FFA8527D527DA8FF7D7D527D52FD05FFA8FD05FFA87D7DFFFFA852
-%7D527DA8FF527D7D7D527D52A8FD19FFF805075275755175517551752D0D
-%0653CFFFCFFFA78C6899939344F827FD05FF52F852FFFFFFA8F87DFD04FF
-%7D27FFA87D7DA8F827A87D7DFFA8F827A8527DFFA8F852A827F8A8FFFFFF
-%7DF8FD05FF2752FFFFA8F827A8527DA87D7DA8F827A87D7DFD19FFF8F82F
-%0752517C757B757C2E0D062FA8C999CFCFC28C928C8C8C6EF852FD05FF7D
-%F87DFD04FFF8F87DFFFFFF7D52FD05FFF852FD05FFF87DFD05FFF852FFFF
-%F852FFFFFF7DF8F8FD04FF7D52FFFFFFF87DFD07FFF852FD1CFFF8000607
-%062F2852282E060D0607067D928C9293688C6892688C44F827FD05FF52F8
-%52FFFFFFA85252F852FFFF7D27FD05FFF87DFD04FFA8F852FD05FFF852FF
-%FFF8A8FFFFFF7D5227F8A8FFFF527DFFFFA8F852FD07FFF87DFD1CFFF800
-%852F2F062F070D062F072F062F0D9A8C928C928C928C928C6EF852FD05FF
-%7DF87DFD04FF27FF52F852FF7D52FD05FFF852FD05FFF82752527DFFFFF8
-%52FF527DFD04FF527DFF27F8A8FF7D7DFFFFFFF82752527DFD04FFF852FD
-%1CFFF827CFCF7D2F060D062F2F7EA82F062F938C68928C8C68926E994AF8
-%27FD05FF52F852FFFFFFA827FFFF52F852A852FD05FFF87DFD04FFA8F852
-%FF7DA8FFFFF82752F8A8FD04FF7D52FFA827F8A87D7DFFFFA8F852FF7DA8
-%FD04FFF87DFD1CFFF827FFCFFFA80D062FA8CFCFCA927693928C928C9292
-%75517C7B51F852FD05FF7DF87DFFFFFFA827FFFFFF52F8F87DFD05FFF852
-%FD05FFF87DFD05FFF852FF52F8A8FFFFFF5252FFFFFF27F8277DFFFFFFF8
-%7DFD07FFF852FD1CFFF827CFCFCACF06062ECFCAFF928C688C6892688C6E
-%765175517C26F827FD05FF52F852FFFFFFA827FD04FF52F852FD05FFF852
-%FD04FFA8F852FFFFA8A8FFF87DFFFFF8F8A8FFFF5227FD04FF27F8A8FFFF
-%A8F852FFFFA8A8FFFFFFF852FD1CFFF827FFCFFFCF7E53A8CFFFCFC99292
-%8C928C92757C757C517C7551F852FD04FFA852F852A8FFFFA8F8A8FD04FF
-%527DFD04FF7DF827FD04FFA8F827525252FF7DF827FFFFFF2727A8FF5227
-%A8FD04FF52A8FFFFA8F827525252FFFFFF7DF827FD1CFFF827CFCFCACFCF
-%CFCAFD04CF93688C688C6F7651755175517C4BF827FD05FFA8FFA8FFFFFF
-%A8FFA8FD0BFFA8FFA8FFFFFFA8FFA8A8A8FFFFFFA8FFA8FFFFFFA8FFA8FF
-%A8FD09FFA8FFA8A8A8FD05FFA8FFA8FD1BFFF827FFCFCFCFFFCFCFCFFFCF
-%C38C928C8C6E7C7576517C75767551F852FD63FFF827CFCFCACFCACFCACF
-%92928C8C688C6875517551755175517526F827FD63FFF827FFCFFFCFFFCF
-%FFCA938C928C928C99517C757C517C757C7551F852FD63FFF827CFCFCACF
-%CACFCACFA093688C6892757551755175517551754BF827FD63FFF827FFCF
-%FFCFCFCFFFCFFF998C8C926E7C7576517C7576517CA7A1F852FD06FFA87D
-%527DA8FD58FFF827CFCFCACFCACFCAFFCF996892686F5175517551755175
-%7CFF7CF827FD05FF7D2752A82727A8FD57FFF827FFCFFFCFFFCFFFC2BB8C
-%928C8C6E7C757C517C757C51CFFFA1F852FD05FF2752FFFFFF52FD58FFF8
-%27CFCFCACFCACFCF99688C68928C6F5175517551755175CAFF7CF827FD04
-%FFA8F852FD5CFFF827FFCFCFCFFFCFFFA0998C928C926E7C517C7576517C
-%51CACFA1F852FD04FFA827F87DFFFFFFA8527DFD04FF527DFFFFA87D52A8
-%FF7D527D527D527D7DFF7D7D527D527DFFFFFFA8FD06FFA8FD04FFA87D7D
-%7DFD26FFF827CFCFCACFCACFCACFCF99688C6893517551755175517575FF
-%7CF827FD05FF52F8F852FFFFFF52F8A8FFFF7D27A8FF5252A8A852A852A8
-%7DF827A87D7DFFA8F852A87D52FFFFFFF8A8FD04FF5227FFFFFF7D27A8A8
-%52A8FD25FFF827FFCFFFCFFFCFFFCFFFA08C8C92927C517C757C517C7575
-%7C7CF852FD06FF52F8F852FFFFFF27F8FFFF52A8FFFFF87DFD07FFF87DFD
-%05FFF852FD06FFF827FD04FF2727FFFFFF2752FD29FFF827CFCFCACFCACF
-%CACFA799688C68927575517551755175517526F84BFD07FF52F8F87DFFFF
-%A8F87D7D52FFFFFFF8F87DFD05FFA8F852FD05FFF87DFD05FFA8F8F8A8FF
-%FF7DF8F8A8FFFF52F852A8FD27FFF827FFCFFFCFCFCFFFCF9368928C928C
-%995176517C7576517C7551F852FD08FF7DF8F8FFFFFF52F827FD05FFF8F8
-%27FD05FFF87DFD05FFF8277D527DFFFF7D52F852FFFF277DF8A8FFFFFF52
-%F8F87DFD26FFF827CFCFCACFCACFCAFF938C688C688C6875517551755175
-%517C26F827FD09FF27F8A8FFFFFFF852FD06FF52F827FFFFFFA8F852FD05
-%FFF852A8A87DFFFF527D7DF8FF7D52A8F87DFD04FF7DF8F8A8FD25FFF827
-%FFCFFFCFFFCFFFCFCFCFC98C928C92927C517C757C517C7551F852FD04FF
-%7DFD04FF7DF8FD04FFF852FD07FF7DF8A8FFFFFFF87DFD05FFF852FD05FF
-%52A8FF272752A8FFF87DFD06FFF8A8FD25FFF827CFCFCACFCACFCAFD04CF
-%99688C688C6E7651755175517C4BF827FD04FF5227FFFFA8F852FD04FFF8
-%7DFFFFFF7D7DFFFF7D27FD04FFF852FD05FFF852FFFFA8FFFF27A8FF7DF8
-%52FFFFF852FFA852FFFF7D27A8FD25FFF827FFCFCFCFFFCFCFCFFFCFCF92
-%928C928C926E7C517C75767551F852FD04FF7D272752277DFD04FF7DF827
-%FFFFFF7D27525227FD04FFA8F852A8FFFFFF7D2727525252FFA8F8A8FFFF
-%52FFFFFF2727A8FF275252527DFD26FFF827CFCFCACFCACFCACFCAFF998C
-%688C688C688C68755176517526F827FD07FFA8FD07FFA8FFA8FFFFFFA8A8
-%A8FD05FFA8FFA8FD05FFA8FFA8A8A8FFA8FFA8FD07FFA8FFFFFFA8A8FD28
-%FFF827FFCFFFCFFFCFFFCFFFCFCF92C29A928C928C928C99757C7551F852
-%FD63FFF827CFCFCACFCACFCACFCAFD04CFFF998C68928C8C6892689344F8
-%27FD63FFF827FFCFFFCFCFCFFFCFCFCFFFCFCFCFC98C928C928C928C928C
-%68F852FD63FFF827CFCFCACFCACFCAA8537ECACFCAFF938C6899688C688C
-%689244F827FD63FFF827FFCFFFCFFFCFA8072F07FFCFFFCFCF992F0D5992
-%928C928C68F852FD08FF7D7D527D52A8A8FD54FFF827CFCFCACFCACFA70D
-%060753A87DA8CA5A0607069368929AC244F827FD06FF7DF8527D7D7D52F8
-%27FD54FFF827FFCFCFCFFFCFCF2F2F070D062F072F062F07539993C2FFFF
-%76F852FD05FF7DF87DFD06FF27FD54FFF827CFCFCACFCACF7D0D060D0607
-%060D0607060753FFCACFCAFF76F827FD04FFA8F827FD07FFA8A8FD15FFA8
-%FD3DFFF827FFCFFFCFFF592F062F072F2852282F072F072F7DFFCFFFCFA7
-%F852FD04FF52F87DFD0CFFA87D7D7DFD05FFA8FD05FF7D7DA8FFFFA87D7D
-%7DFFFFFFA87D527D7DFD04FFA8527D527DA8FFFF7D527D527D527D7DFF7D
-%7D7DFFFFA8527DA8FFFFA8527DFFFFFFA8FD06FFA8FFFFF827CF5959CA53
-%07060D066F688C6892684B060D06077DCFCFCF7CF827FD04FF27F8A8FD0A
-%FFA82752A87D52F852FFFFA8F87DFD04FF7D27FFFF7D27A87D52FFFF5227
-%7DA87D27F8A8FFFFA8F827A827F8A8A852A87DF827A87D7DFFA8F852FFFF
-%A8F827FD04FF2727FFFFFFF8A8FD04FF5227FFFFF827A9062F070D062F28
-%928C928C928C928C92282F072F847E5953F852FD04FFF8F8A8FD0AFF2752
-%FD04FF7DF87DFFFFF8F852FFFFFF7D52FFFFF8A8FFFFA8FF7DF8A8FD04FF
-%27F8FFFFFFF87DFFFFF87DFD04FFF87DFD05FFF852FFFFFFF87DFD04FF27
-%52FFFFFFF827FD04FF2727FFFFF8272F07060D060D278C688C68928C8C68
-%8C688C060D0607060D06F827FFFFFFA827F87DFD09FF7DF8FD06FF27F8FF
-%A85252F852FFFF7D27FFFF27F87DFFFFFF2727FD05FF7DF852FFA8F852FF
-%A8F87DFFFFFFA8F852FD05FFF852FFFFA8F852FD04FF5252FFFFA8F8F8A8
-%FFFF7DF827A8FFF827FF2F2F070D06938C928CBCC9CFC9BB8C928C6F070D
-%062F0706F852FD04FF27F852FD09FF52F8FD06FF52F8FFFF27FF52F852FF
-%7D52FFFFA827F827A8FFF852FD06FFF852FFFFF852FF7D7DFD05FFF87DFD
-%05FFF852FFFFFFF87DFD04FF2752FFFF7D52F852FFFF277DF8A8FFF827CF
-%CF2F0D064C689268C2CFFFCFFFCFC2688C682E0607062F52F827FD04FF7D
-%F8F8A8FD08FF52F8A8FD05FF52F8FFA827FFFF52F852A852FD04FF7DF827
-%FF2727FD05FFA8F852FFA8F82752F8A8FD04FFA8F852FD05FFF852FFFFA8
-%F852FD04FF5252FFFF7D7D7DF8FF7D52A8F87DFFF827FFCF59062F6F8C8C
-%99CFFFCFFFCFFFCF938C8C4B2F0759CFA7F852FD05FF52F827FD06FF7DFF
-%A8F852FD05FFF852FFA827FFFFFF52F8F87DFD05FF7DF8FF52F8A8FD04FF
-%A8F8A8FFFFF87DFF52F8FD05FFF87DFD05FFF852FFFFFFF852FD04FF277D
-%FFFF27A8FF272752FFFFF87DFFF827CFCF2F070693688C99FFCACFCACFCA
-%FF998C686F060759CF7CF827FD05FFA852F8F87DFFFFFF5227FFFF52F87D
-%FFFFFF5227A8FFA827FD04FF52F852FF527DFFFF5227FFFFF827A8FFFFFF
-%2752FFFFFFF852FFFF27F8FFFFFFA8F852FD05FFF87DFFFFFF52F8A8FFFF
-%7D27A8FFFF27A8FF7DF852FFFFF827FFF827FFCF53062F6E928CC2FFFFCF
-%FFCFFFCFC28C926F2F077ECFA7F852FD07FFA8FD06277DFFFFFF7D27277D
-%527DFFFFFF7DF8A8FD04FF527DFFA827525252A8FFFFFF5227527D52A8FF
-%FFFFA8F852A8FFA82727A8FFA8F852A8FFFFFF7DF827FD04FF52277D5252
-%A8FFFFA8F8A8FFFF52FFFFFF2727A8F827CFCF2F07066F8C8C92FFCFCFCA
-%CFCFCF8C8C8C4B060D59CF7CF827FD0BFFA8FD09FFA8FD05FFA8FFA8FD09
-%FFA8A8FD07FFA8A8FD05FFA8FFA8FD05FFA8FFA8FFA8FD05FFA8FFA8FD05
-%FFA8FD05FFA8FFA8FD07FFA8FFF827AF2F2F070D4B928C8CA0FFCFFFCFFF
-%998C8C92280D067ECFA1F852FD63FFF8270707060D0607688C688C99C9CA
-%C9938C688C680D0607065A76F827FD63FFF8275A062F070D07528C928C92
-%8C928C928C928C2F070D062F072EF852FD63FFF84B842F597E0607064C8C
-%8C68928C8C688C6828060D0607060D52F827FD63FFF827FFCFCFCF7E060D
-%062F6F928C928C934B2F070D0684A85A59A1F852FD63FFF827CFCFCACFCA
-%590607060D06282728060D0607067ECACFCFCF7CF827FD63FFF827FFCFFF
-%CFFFCF59062F070D072F070D062F2FA8CFFFCFFFCFA7F852FD63FFF827CF
-%CFCACFCACF2F07060D0607060D06070653CFCFCACFCAFF7CF827FD63FFF8
-%27FFCFFFCFCFA82F070D59CFA8A8A859060D07FD04CFFFCFA1F852FD63FF
-%F827CFCFCACFCFA82F0D2FCFCACFCFCFA80D060DA8CFCACFCAFF7CF827FD
-%63FFF827FFCFFFCFFFCFFFA8FFCFFFCFFFCFFF7E7EA8FFCFFFCFFFFFA7F8
-%52FD63FFFD09F820FD07F820FD07F820F8F827FD63FF27F827F820F827F8
-%20F827F820F827F820F827F820F827F820F827F87CFDE2FFFF
-%%EndData
+%%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
+%%DocumentFonts: 
+%%DocumentNeededFonts: 
+%%DocumentNeededFeatures: 
+%%DocumentSuppliedFeatures: 
+%%DocumentCustomColors: 
+%%CMYKCustomColor: 
+%%RGBCustomColor: 
 %%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-2003 Adobe Systems, Inc.  All Rights Reserved.
-systemdict /setpacking known
-{
-       currentpacking
-       true setpacking
-} if
-userdict /Adobe_AGM_Utils 68 dict dup begin put
+%%Copyright: Copyright(C)2000-2006 Adobe Systems, Inc. All Rights Reserved.
+systemdict/setpacking known
+{currentpacking        true setpacking}if
+userdict/Adobe_AGM_Utils 73 dict dup begin put
 /bdf
-{
-       bind def
-} bind def
-/nd{
-       null def
-}bdf
+{bind def}bind def
+/nd{null def}bdf
 /xdf
-{
-       exch def
-}bdf
-/ldf
-{
-       load def
-}bdf
+{exch def}bdf
+/ldf 
+{load def}bdf
 /ddf
-{
-       put
-}bdf   
+{put}bdf       
 /xddf
-{
-       3 -1 roll put
-}bdf   
+{3 -1 roll put}bdf     
 /xpt
-{
-       exch put
-}bdf
+{exch put}bdf
 /ndf
 {
        exch dup where{
@@ -266,54 +74,48 @@ userdict /Adobe_AGM_Utils 68 dict dup be
                exch def
        }ifelse
 }def
-/bdict
-{
-       mark
-}bdf
-/edict
-{
-       counttomark 2 idiv dup dict begin {def} repeat pop currentdict end
-}def
+/gx
+{get exec}bdf
 /ps_level
        /languagelevel where{
-               pop systemdict /languagelevel get exec
+               pop systemdict/languagelevel gx
        }{
                1
        }ifelse
 def
-/level2
+/level2 
        ps_level 2 ge
 def
-/level3
+/level3 
        ps_level 3 ge
 def
 /ps_version
-       {version cvr} stopped {
-               -1
-       }if
+       {version cvr}stopped{-1}if
 def
+/set_gvm
+{currentglobal exch setglobal}bdf
+/reset_gvm
+{setglobal}bdf
 /makereadonlyarray
 {
-       /packedarray where{
-               pop packedarray
+       /packedarray where{pop packedarray
        }{
-               array astore readonly
-       }ifelse
+               array astore readonly}ifelse
 }bdf
 /map_reserved_ink_name
 {
-       dup type /stringtype eq{
-               dup /Red eq{
-                       pop (_Red_)
+       dup type/stringtype eq{
+               dup/Red eq{
+                       pop(_Red_)
                }{
-                       dup /Green eq{
-                               pop (_Green_)
+                       dup/Green eq{
+                               pop(_Green_)
                        }{
-                               dup /Blue eq{
-                                       pop (_Blue_)
+                               dup/Blue eq{
+                                       pop(_Blue_)
                                }{
-                                       dup () cvn eq{
-                                               pop (Process)
+                                       dup()cvn eq{
+                                               pop(Process)
                                        }if
                                }ifelse
                        }ifelse
@@ -329,20 +131,20 @@ 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_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
+       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
+       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
@@ -351,8 +153,8 @@ def
 {
        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_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
@@ -366,15 +168,15 @@ def
        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
+       AGMUTIL_GSTATE_ht/HalftoneType get dup 9 eq exch 100 eq or
                {
-               currenthalftone /HalftoneType get AGMUTIL_GSTATE_ht 
/HalftoneType get ne
+               currenthalftone/HalftoneType get AGMUTIL_GSTATE_ht/HalftoneType 
get ne
                        {
-                         mark AGMUTIL_GSTATE_ht {sethalftone} stopped 
cleartomark
-                       } if
+                        mark AGMUTIL_GSTATE_ht{sethalftone}stopped cleartomark
+                       }if
                }{
                AGMUTIL_GSTATE_ht sethalftone
-               } ifelse
+               }ifelse
        AGMUTIL_GSTATE_flt setflat
        end
 }def
@@ -397,31 +199,38 @@ def
 /AGMUTIL_dst64 64 string def
 /AGMUTIL_srcLen nd
 /AGMUTIL_ndx nd
-/agm_sethalftone
+/AGMUTIL_cpd nd
+/capture_cpd{
+       //Adobe_AGM_Utils/AGMUTIL_cpd currentpagedevice ddf
+}def
+/thold_halftone
 {
-       dup
-       begin
-               /_Data load
-               /Thresholds xdf
-       end
        level3
-       { sethalftone }{
-               dup /HalftoneType get 3 eq {
-                       sethalftone
-               } {pop} ifelse
-       }ifelse
-} def
+               {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
+       (%)anchorsearch{pop}if
+}bdf
 /filter_cmyk
 {      
-       dup type /filetype ne{
-               exch () /SubFileDecode filter
-       }
-       {
+       dup type/filetype ne{
+               exch()/SubFileDecode filter
+       }{
                exch pop
        }
        ifelse
@@ -429,7 +238,7 @@ def
        exch
        {
                AGMUTIL_src256 readstring pop
-               dup length /AGMUTIL_srcLen exch def
+               dup length/AGMUTIL_srcLen exch def
                /AGMUTIL_ndx 0 def
                AGMCORE_plate_ndx 4 AGMUTIL_srcLen 1 sub{
                        1 index exch get
@@ -441,41 +250,41 @@ def
        }
        bind
        /exec cvx
-       ] cvx
-} bdf
+       ]cvx
+}bdf
 /filter_indexed_devn
 {
        cvi Names length mul names_index add Lookup exch get
-} bdf
+}bdf
 /filter_devn
 {      
        4 dict begin
        /srcStr xdf
        /dstStr xdf
-       dup type /filetype ne{
-               0 () /SubFileDecode filter
+       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
+                       /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
+               ]cvx
                bind
                /exec cvx
-       ] cvx
+       ]cvx
        end
-} bdf
+}bdf
 /AGMUTIL_imagefile nd
 /read_image_file
 {
@@ -484,177 +293,195 @@ def
        /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
-       /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 /MultipleDataSources known {MultipleDataSources}{false} ifelse
+       /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
+               /imbufCnt imageDict/DataSource get length def
                /imbufs imbufCnt array def
-               0 1 imbufCnt 1 sub {
+               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/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
+                       /DataSource[DataSource/devn_sep_datasource cvx]cvx def
                        /MultipleDataSources false def
-                       /Decode [0 1] def
+                       /Decode[0 1]def
                        end
-               } if
+               }if
        }{
                /imbuf imbufLen string def
-               Indexed_DeviceN level3 not and DeviceN_NoneName or {
+               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
+                       /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 {AGMUTIL_imagefile imbuf 
readstring pop} put
-               } ifelse
-       } ifelse
+                       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        
+       imageDict/DataSource origDataSource put
+       imageDict/MultipleDataSources origMultipleDataSources put
+       imageDict/Decode origDecode put 
        end
-} bdf
+}bdf
 /write_image_file
 {
        begin
-       { (AGMUTIL_imagefile) (w+) file } stopped{
+       {(AGMUTIL_imagefile)(w+)file}stopped{
                false
        }{
-               Adobe_AGM_Utils/AGMUTIL_imagefile xddf
+               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 {
+               MultipleDataSources{DataSource 0 get}{DataSource}ifelse 
type/filetype eq{
                        /imbuf imbufLen string def
                }if
-               1 1 Height {
+               1 1 Height MultipleDataSources not{Decode length 2 idiv mul}if{
                        pop
-                       MultipleDataSources {
-                               0 1 DataSource length 1 sub {
+                       MultipleDataSources{
+                               0 1 DataSource length 1 sub{
                                        DataSource type dup
-                                       /arraytype eq {
-                                               pop DataSource exch get exec
+                                       /arraytype eq{
+                                               pop DataSource exch gx
                                        }{
-                                               /filetype eq {
+                                               /filetype eq{
                                                        DataSource exch get 
imbuf readstring pop
                                                }{
                                                        DataSource exch get
-                                               } ifelse
-                                       } ifelse
+                                               }ifelse
+                                       }ifelse
                                        AGMUTIL_imagefile exch writestring
-                               } for
+                               }for
                        }{
                                DataSource type dup
-                               /arraytype eq {
+                               /arraytype eq{
                                        pop DataSource exec
                                }{
-                                       /filetype eq {
+                                       /filetype eq{
                                                DataSource imbuf readstring pop
                                        }{
                                                DataSource
-                                       } ifelse
-                               } ifelse
+                                       }ifelse
+                               }ifelse
                                AGMUTIL_imagefile exch writestring
-                       } ifelse
+                       }ifelse
                }for
                end
                true
        }ifelse
        end
-} bdf
+}bdf
 /close_image_file
 {
-       AGMUTIL_imagefile closefile (AGMUTIL_imagefile) deletefile
+       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
+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
+       currentdict/pstr undef
+}if
 /consumeimagedata
 {
        begin
-       currentdict /MultipleDataSources known not
-               {/MultipleDataSources false def} if
+       AGMIMG_init_common
+       currentdict/MultipleDataSources known not
+               {/MultipleDataSources false def}if
        MultipleDataSources
                {
-               1 dict begin
-               /flushbuffer Width cvi string def
-               1 1 Height cvi
+               DataSource 0 get type
+               dup/filetype eq
                        {
-                       pop
-                       0 1 DataSource length 1 sub
+                       1 dict begin
+                       /flushbuffer Width cvi string def
+                       1 1 Height cvi
                                {
-                               DataSource exch get
-                               dup type dup
-                               /filetype eq
-                                       {
-                                       exch flushbuffer readstring pop pop
-                                       }if
-                               /arraytype eq
+                               pop
+                               0 1 DataSource length 1 sub
                                        {
-                                       exec pop
-                                       }if
+                                       DataSource exch get
+                                       flushbuffer readstring pop pop
+                                       }for
                                }for
-                       }for
-               end
+                       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
+               /DataSource load type 
+               dup/filetype eq
                        {
                        1 dict begin
-                       /flushbuffer Width Decode length 2 div mul cvi string 
def
-                       1 1 Height { pop DataSource flushbuffer readstring pop 
pop} for
+                       /flushbuffer Width Decode length 2 idiv mul cvi string 
def
+                       1 1 Height{pop DataSource flushbuffer readstring pop 
pop}for
                        end
                        }if
-               /arraytype eq
+               dup/arraytype eq exch/packedarraytype eq or/DataSource load 
xcheck and
                        {
-                       1 1 Height { pop DataSource pop } for
+                               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
+        2{/exec load}repeat
+        3 1 roll
+        [5 1 roll]bind cvx
 }def
 /modify_halftone_xfer
 {
@@ -666,16 +493,16 @@ statusdict /product known userdict /AGMP
                }{
                        currenttransfer
                }ifelse
-                addprocs /TransferFunction xdf
+                addprocs/TransferFunction xdf 
                 currentdict end def
                currentdict end sethalftone
        }{
                currentdict/TransferFunction known{
-                       /TransferFunction load
+                       /TransferFunction load 
                }{
                        currenttransfer
                }ifelse
-               addprocs /TransferFunction xdf
+               addprocs/TransferFunction xdf
                currentdict end sethalftone             
                pop
        }ifelse
@@ -684,122 +511,141 @@ statusdict /product known userdict /AGMP
 {
        dup xcheck exch
        dup length array exch
-       Adobe_AGM_Core/AGMCORE_tmp -1 ddf
+       Adobe_AGM_Core/AGMCORE_tmp -1 ddf 
        {
-       Adobe_AGM_Core/AGMCORE_tmp AGMCORE_tmp 1 add ddf
-       dup type /dicttype eq
+       Adobe_AGM_Core/AGMCORE_tmp 2 copy get 1 add ddf 
+       dup type/dicttype eq
                {
-                       AGMCORE_tmp
+                       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 4 -1 roll ddf 
+               }if
+       dup type/arraytype eq
                {
-                       AGMCORE_tmp exch
+                       Adobe_AGM_Core/AGMCORE_tmp get exch
                        clonearray
-                       Adobe_AGM_Core/AGMCORE_tmp 4 -1 roll ddf
-               } if
+                       Adobe_AGM_Core/AGMCORE_tmp 4 -1 roll ddf 
+               }if
        exch dup
-       AGMCORE_tmp 4 -1 roll put
+       Adobe_AGM_Core/AGMCORE_tmp get 4 -1 roll put
        }forall
-       exch {cvx} if
+       exch{cvx}if
 }bdf
 /clonedict
 {
        dup length dict
        begin
-               {
-               dup type /dicttype eq
-                       {
-                               clonedict
-                       } if
-               dup type /arraytype eq
-                       {
-                               clonearray
-                       } if
+       {
+               dup type/dicttype eq
+                       {clonedict}if
+               dup type/arraytype eq

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to