[PATCH] UPDATE TO: [PATCH] Bug 3654: Clean up authorized

Nicole Engard nengard at gmail.com
Tue Sep 22 08:11:07 CEST 2009


values page and add defaults for new categories
Content-Type: text/plain; charset=3D"utf-8"

---
 installer/data/mysql/en/optional/auth_val.sql |    2 +-
 installer/data/mysql/updatedatabase.pl        |   14 +++-----------
 2 files changed, 4 insertions(+), 12 deletions(-)

diff --git a/installer/data/mysql/en/optional/auth_val.sql
b/installer/data/mysql/en/optional/auth_val.sql
index 9769acf..6cde1b2 100644
--- a/installer/data/mysql/en/optional/auth_val.sql
+++ b/installer/data/mysql/en/optional/auth_val.sql
@@ -50,4 +50,4 @@ INSERT INTO `authorised_values` (category,
authorised_value, lib) VALUES ('RESTR
 INSERT INTO `authorised_values` (category, authorised_value, lib)
VALUES ('MANUAL_INV','Copier Fees','.25');

 --custom borrower notes
-INSERT INTO `authorised_values` (category, authorised_value, lib)
VALUES ('BOR_NOTES','ADDR','Address Notes');
\ No newline at end of file
+INSERT INTO `authorised_values` (category, authorised_value, lib)
VALUES ('BOR_NOTES','VERID','Patron needs to bring in driver\'s
license to verify ID');
\ No newline at end of file
diff --git a/installer/data/mysql/updatedatabase.pl
b/installer/data/mysql/updatedatabase.pl
index aa83469..41cadca 100755
--- a/installer/data/mysql/updatedatabase.pl
+++ b/installer/data/mysql/updatedatabase.pl
@@ -2685,24 +2685,16 @@ if (C4::Context->preference("Version") <
TransformToNum($DBversion)) {
     }
     eval { $borrnotes_count =3D $dbh->do("SELECT 1 FROM
authorised_values WHERE category=3D'BOR_NOTES'"); };
     if ($borrnotes_count =3D=3D 0) {
-        $dbh->do("INSERT INTO authorised_values
(category,authorised_value,lib) VALUES ('BOR_NOTES','ADDR','Address
Notes')");
+        $dbh->do("INSERT INTO authorised_values
(category,authorised_value,lib) VALUES ('BOR_NOTES','VERID','Patron
needs to bring in driver\'s license to verify ID')");
     }
-
-	print "Upgrade to $DBversion done ( add defaults to authorized
values for MANUAL_INV and BOR_NOTES )\n";
-	SetVersion ($DBversion);
-}
-
-$DBversion =3D "XXX";
-if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
-
+
     $dbh->do("INSERT INTO authorised_values
(category,authorised_value,lib) VALUES ('LOC','CART','Book Cart')");
     $dbh->do("INSERT INTO authorised_values
(category,authorised_value,lib) VALUES ('LOC','PROC','Processing
Center')");

-	print "Upgrade to $DBversion done ( add new default LOC authorized
values for shelf to cart processing )\n";
+	print "Upgrade to $DBversion done ( add two values to LOC and add
defaults to authorized values for MANUAL_INV and BOR_NOTES )\n";
 	SetVersion ($DBversion);
 }

-
 =3Ditem DropAllForeignKeys($table)

   Drop all foreign keys of the table $table
--=20
1.5.6.5



On Tue, Sep 22, 2009 at 7:26 PM, Nicole Engard <nengard at gmail.com> wrote:
> From a4128e1ad97e748f06f873fc7beba255eeab9f66 Mon Sep 17 00:00:00 2001
> From: Nicole Engard <nengard at gmail.com>
> Date: Tue, 22 Sep 2009 00:31:05 -0400
> Subject: [PATCH] Bug 3654: Clean up authorized values page and add
> defaults for new categories
> Content-Type: text/plain; charset=3D"utf-8"
>
> ---
> =C2=A0installer/data/mysql/en/optional/auth_val.sql =C2=A0 =C2=A0 =C2=A0|=
 =C2=A0 =C2=A08 +++++
> =C2=A0installer/data/mysql/updatedatabase.pl =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 | =C2=A0 28 ++++++++++++++++++++
> =C2=A0.../intranet-tmpl/prog/en/includes/admin-menu.inc =C2=A0| =C2=A0 =
=C2=A02 +-
> =C2=A0.../prog/en/modules/admin/admin-home.tmpl =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0| =C2=A0 =C2=A04 +-
> =C2=A0.../prog/en/modules/admin/authorised_values.tmpl =C2=A0 | =C2=A0 28=
 ++++++++++++++-----
> =C2=A05 files changed, 59 insertions(+), 11 deletions(-)
>
> diff --git a/installer/data/mysql/en/optional/auth_val.sql
> b/installer/data/mysql/en/optional/auth_val.sql
> index 11328e1..9769acf 100644
> --- a/installer/data/mysql/en/optional/auth_val.sql
> +++ b/installer/data/mysql/en/optional/auth_val.sql
> @@ -24,6 +24,8 @@ INSERT INTO `authorised_values` (category,
> authorised_value, lib) VALUES ('LOC',
> =C2=A0INSERT INTO `authorised_values` (category, authorised_value, lib)
> VALUES ('LOC','GEN','General Stacks');
> =C2=A0INSERT INTO `authorised_values` (category, authorised_value, lib)
> VALUES ('LOC','AV','Audio Visual');
> =C2=A0INSERT INTO `authorised_values` (category, authorised_value, lib)
> VALUES ('LOC','REF','Reference');
> +INSERT INTO `authorised_values` (category, authorised_value, lib)
> VALUES ('LOC','CART','Book Cart');
> +INSERT INTO `authorised_values` (category, authorised_value, lib)
> VALUES ('LOC','PROC','Processing Center');
>
> =C2=A0-- collection codes for an item
> =C2=A0INSERT INTO `authorised_values` (category, authorised_value, lib)
> VALUES ('CCODE','FIC','Fiction');
> @@ -43,3 +45,9 @@ INSERT INTO `authorised_values` (category,
> authorised_value, lib) VALUES ('NOT_L
> =C2=A0-- restricted status of an item, linked to items.restricted
> =C2=A0INSERT INTO `authorised_values` (category, authorised_value, lib)
> VALUES ('RESTRICTED','0','');
> =C2=A0INSERT INTO `authorised_values` (category, authorised_value, lib)
> VALUES ('RESTRICTED','1','Restricted Access');
> +
> +-- manual invoice types
> +INSERT INTO `authorised_values` (category, authorised_value, lib)
> VALUES ('MANUAL_INV','Copier Fees','.25');
> +
> +--custom borrower notes
> +INSERT INTO `authorised_values` (category, authorised_value, lib)
> VALUES ('BOR_NOTES','ADDR','Address Notes');
> \ No newline at end of file
> diff --git a/installer/data/mysql/updatedatabase.pl
> b/installer/data/mysql/updatedatabase.pl
> index 10c3451..aa83469 100755
> --- a/installer/data/mysql/updatedatabase.pl
> +++ b/installer/data/mysql/updatedatabase.pl
> @@ -2675,6 +2675,34 @@ if (C4::Context->preference("Version") <
> TransformToNum($DBversion)) {
> =C2=A0 =C2=A0 SetVersion ($DBversion);
> =C2=A0}
>
> +
> +$DBversion =3D "XXX";
> +if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
> +
> + =C2=A0 =C2=A0eval { $maninv_count =3D $dbh->do("SELECT 1 FROM authorise=
d_values
> WHERE category=3D'MANUAL_INV'"); };
> + =C2=A0 =C2=A0if ($maninv_count =3D=3D 0) {
> + =C2=A0 =C2=A0 =C2=A0 =C2=A0$dbh->do("INSERT INTO authorised_values
> (category,authorised_value,lib) VALUES ('MANUAL_INV','Copier
> Fees','.25')");
> + =C2=A0 =C2=A0}
> + =C2=A0 =C2=A0eval { $borrnotes_count =3D $dbh->do("SELECT 1 FROM
> authorised_values WHERE category=3D'BOR_NOTES'"); };
> + =C2=A0 =C2=A0if ($borrnotes_count =3D=3D 0) {
> + =C2=A0 =C2=A0 =C2=A0 =C2=A0$dbh->do("INSERT INTO authorised_values
> (category,authorised_value,lib) VALUES ('BOR_NOTES','ADDR','Address
> Notes')");
> + =C2=A0 =C2=A0}
> +
> + =C2=A0 =C2=A0 =C2=A0 print "Upgrade to $DBversion done ( add defaults t=
o authorized
> values for MANUAL_INV and BOR_NOTES )\n";
> + =C2=A0 =C2=A0 =C2=A0 SetVersion ($DBversion);
> +}
> +
> +$DBversion =3D "XXX";
> +if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
> +
> + =C2=A0 =C2=A0$dbh->do("INSERT INTO authorised_values
> (category,authorised_value,lib) VALUES ('LOC','CART','Book Cart')");
> + =C2=A0 =C2=A0$dbh->do("INSERT INTO authorised_values
> (category,authorised_value,lib) VALUES ('LOC','PROC','Processing
> Center')");
> +
> + =C2=A0 =C2=A0 =C2=A0 print "Upgrade to $DBversion done ( add new defaul=
t LOC authorized
> values for shelf to cart processing )\n";
> + =C2=A0 =C2=A0 =C2=A0 SetVersion ($DBversion);
> +}
> +
> +
> =C2=A0=3Ditem DropAllForeignKeys($table)
>
> =C2=A0 Drop all foreign keys of the table $table
> diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/admin-menu.inc
> b/koha-tmpl/intranet-tmpl/prog/en/includes/admin-menu.inc
> index e14f347..d11d800 100644
> --- a/koha-tmpl/intranet-tmpl/prog/en/includes/admin-menu.inc
> +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/admin-menu.inc
> @@ -9,6 +9,7 @@
> =C2=A0 =C2=A0 =C2=A0 =C2=A0<li><a href=3D"/cgi-bin/koha/admin/aqbookfund.=
pl">Funds and budgets</a></li>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0<li><a href=3D"/cgi-bin/koha/admin/currency.pl=
">Currencies and
> exchange rates</a></li>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0<li><a href=3D"/cgi-bin/koha/admin/itemtypes.p=
l">Item types</a></li>
> + =C2=A0 =C2=A0 =C2=A0 <li><a href=3D"/cgi-bin/koha/admin/authorised_valu=
es.pl">Authorized
> values</a></li>
> =C2=A0</ul>
>
> =C2=A0<h5>Patrons and circulation</h5>
> @@ -24,7 +25,6 @@
>
> =C2=A0<h5>Catalog</h5>
> =C2=A0<ul>
> - =C2=A0 =C2=A0 =C2=A0 <li><a href=3D"/cgi-bin/koha/admin/authorised_valu=
es.pl">Authorized
> values</a></li>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0<li><a href=3D"/cgi-bin/koha/admin/biblio_fram=
ework.pl">MARC
> Bibliographic framework</a></li>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0<li><a href=3D"/cgi-bin/koha/admin/koha2marcli=
nks.pl">Koha to MARC
> mapping</a></li>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0<li><a href=3D"/cgi-bin/koha/admin/checkmarc.p=
l">MARC Bibliographic
> framework test</a></li>
> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/admin-home.tmp=
l
> b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/admin-home.tmpl
> index 11430dc..d336208 100644
> --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/admin-home.tmpl
> +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/admin-home.tmpl
> @@ -38,6 +38,8 @@
> =C2=A0 =C2=A0 =C2=A0 =C2=A0<dd>Define currencies and exchange rates used =
for acquisitions.</dd>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0<dt><a href=3D"/cgi-bin/koha/admin/itemtypes.p=
l">Item types</a></dt>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0<dd>Define item types used for circulation rul=
es.</dd>
> + =C2=A0 =C2=A0 =C2=A0 <dt><a href=3D"/cgi-bin/koha/admin/authorised_valu=
es.pl">Authorized
> values</a></dt>
> + =C2=A0 =C2=A0 =C2=A0 <dd>Define categories and authorized values for th=
em.</dd>
> =C2=A0</dl>
>
> =C2=A0<h3>Patrons and circulation</h3>
> @@ -62,8 +64,6 @@
> =C2=A0<div class=3D"yui-u">
> =C2=A0<h3>Catalog</h3>
> =C2=A0<dl>
> - =C2=A0 =C2=A0 =C2=A0 <dt><a href=3D"/cgi-bin/koha/admin/authorised_valu=
es.pl">Authorized
> values</a></dt>
> - =C2=A0 =C2=A0 =C2=A0 <dd>Define categories and authorized values for th=
em.</dd>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0<dt><a href=3D"/cgi-bin/koha/admin/biblio_fram=
ework.pl">MARC
> Bibliographic framework</a></dt>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0<dd>Create and manage Bibliographic frameworks=
 that define the
> characteristics of your MARC Records (field and subfield definitions)
> as well as templates for the MARC editor.</dd>
> =C2=A0 =C2=A0 =C2=A0 =C2=A0<dt><a href=3D"/cgi-bin/koha/admin/koha2marcli=
nks.pl">Koha to MARC
> mapping</a></dt>
> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_val=
ues.tmpl
> b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_values.tmpl
> index 20b8712..9dd8bfd 100644
> --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_values.tmp=
l
> +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/authorised_values.tmp=
l
> @@ -156,7 +156,7 @@
> =C2=A0</ul></div>
>
> =C2=A0<h1>Authorized values</h1>
> -<p>This table is used in MARC definition. You can define as many
> categories as you want, and as many authorized values as you want in
> each category.</p>
> +<p>These values can be used in many pull down menus throughout the
> Koha system. You can define as many categories as you want, and as
> many authorized values as you want in each category.</p>
> =C2=A0<p>When you define the MARC subfield structure, you can link a
> subfield to a authorized-value category. When the user ask for adding
> of modifying a biblio,
> =C2=A0the subfield is not entered through a free field, but though a list
> of authorized values</p>
> =C2=A0<!-- TMPL_IF name=3D"duplicate_category" -->
> @@ -168,25 +168,37 @@ the subfield is not entered through a free
> field, but though a list of authorize
> =C2=A0<!-- /TMPL_IF -->
> =C2=A0<form action=3D"/cgi-bin/koha/admin/authorised_values.pl" method=3D=
"post"
> id=3D"category"><label for=3D"searchfield">Show Category: </label><!--
> TMPL_VAR name=3D"tab_list" --> <input type=3D"submit" value=3D"Submit"
> /></form>
> =C2=A0<!-- TMPL_IF EXPR=3D"category eq 'Bsort1'" -->
> - =C2=A0 =C2=A0<p>Bsort1 is an authorized value attached to patrons, that=
 can be
> used for stats purposes</p>
> + =C2=A0 =C2=A0<p>An authorized value attached to patrons, that can be us=
ed for
> stats purposes</p>
> =C2=A0<!-- /TMPL_IF -->
> =C2=A0<!-- TMPL_IF EXPR=3D"category eq 'Bsort2'" -->
> - =C2=A0 =C2=A0<p>Bsort2 is an authorized value attached to patrons, that=
 can be
> used for stats purposes</p>
> + =C2=A0 =C2=A0<p>An authorized value attached to patrons, that can be us=
ed for
> stats purposes</p>
> =C2=A0<!-- /TMPL_IF -->
> =C2=A0<!-- TMPL_IF EXPR=3D"category eq 'Asort1'" -->
> - =C2=A0 =C2=A0<p>Asort1 is an authorized value attached to acquisitions,=
 that
> can be used for stats purposes</p>
> + =C2=A0 =C2=A0<p>An authorized value attached to acquisitions, that can =
be used
> for stats purposes</p>
> =C2=A0<!-- /TMPL_IF -->
> =C2=A0<!-- TMPL_IF EXPR=3D"category eq 'Asort2'" -->
> - =C2=A0 =C2=A0<p>Asort2 is an authorized value attached to acquisitions,=
 that
> can be used for stats purposes</p>
> + =C2=A0 =C2=A0<p>An authorized value attached to acquisitions, that can =
be used
> for stats purposes</p>
> =C2=A0<!-- /TMPL_IF -->
> =C2=A0<!-- TMPL_IF EXPR=3D"category eq 'SUGGEST'" -->
> - =C2=A0 =C2=A0<p>The list of patron suggestion reject or accept reasons<=
/p>
> + =C2=A0 =C2=A0<p>Reasons to reject or accept patron suggestions</p>
> =C2=A0<!-- /TMPL_IF -->
> =C2=A0<!-- TMPL_IF EXPR=3D"category eq 'DAMAGED'" -->
> - =C2=A0 =C2=A0<p>The list of status to describe a damaged item</p>
> + =C2=A0 =C2=A0<p>Statuses to describe a damaged item</p>
> =C2=A0<!-- /TMPL_IF -->
> =C2=A0<!-- TMPL_IF EXPR=3D"category eq 'LOST'" -->
> - =C2=A0 =C2=A0<p>The list of status to describe a lost item</p>
> + =C2=A0 =C2=A0<p>Statuses to describe a lost item</p>
> +<!-- /TMPL_IF -->
> +<!-- TMPL_IF EXPR=3D"category eq 'MANUAL_INV'" -->
> + =C2=A0 =C2=A0<p>Additional values for manual invoice types</p>
> +<!-- /TMPL_IF -->
> +<!-- TMPL_IF EXPR=3D"category eq 'BOR_NOTES'" -->
> + =C2=A0 =C2=A0<p>Values for custom patron notes</p>
> +<!-- /TMPL_IF -->
> +<!-- TMPL_IF EXPR=3D"category eq 'LOC'" -->
> + =C2=A0 =C2=A0<p>Values for shelving locations</p>
> +<!-- /TMPL_IF -->
> +<!-- TMPL_IF EXPR=3D"category eq 'CCODE'" -->
> + =C2=A0 =C2=A0<p>Values for collection codes</p>
> =C2=A0<!-- /TMPL_IF -->
> =C2=A0<table>
> =C2=A0<tr>
> --
> 1.5.6.5
>

--00163623aa8dcb1b5804743e8014
Content-Type: application/octet-stream; 
	name="0001-Bug-3654-Clean-up-authorized-values-page-and-add-de.patch"
Content-Disposition: attachment; 
	filename="0001-Bug-3654-Clean-up-authorized-values-page-and-add-de.patch"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_fzy3k9n71

RnJvbSBhNDEyOGUxYWQ5N2U3NDhmMDZmODczZmM3YmViYTI1NWVlYWI5ZjY2IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBOaWNvbGUgRW5nYXJkIDxuZW5nYXJkQGdtYWlsLmNvbT4KRGF0
ZTogVHVlLCAyMiBTZXAgMjAwOSAwMDozMTowNSAtMDQwMApTdWJqZWN0OiBbUEFUQ0hdIEJ1ZyAz
NjU0OiBDbGVhbiB1cCBhdXRob3JpemVkIHZhbHVlcyBwYWdlIGFuZCBhZGQgZGVmYXVsdHMgZm9y
IG5ldyBjYXRlZ29yaWVzCkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD0idXRmLTgi
CgotLS0KIGluc3RhbGxlci9kYXRhL215c3FsL2VuL29wdGlvbmFsL2F1dGhfdmFsLnNxbCAgICAg
IHwgICAgOCArKysrKwogaW5zdGFsbGVyL2RhdGEvbXlzcWwvdXBkYXRlZGF0YWJhc2UucGwgICAg
ICAgICAgICAgfCAgIDI4ICsrKysrKysrKysrKysrKysrKysrCiAuLi4vaW50cmFuZXQtdG1wbC9w
cm9nL2VuL2luY2x1ZGVzL2FkbWluLW1lbnUuaW5jICB8ICAgIDIgKy0KIC4uLi9wcm9nL2VuL21v
ZHVsZXMvYWRtaW4vYWRtaW4taG9tZS50bXBsICAgICAgICAgIHwgICAgNCArLQogLi4uL3Byb2cv
ZW4vbW9kdWxlcy9hZG1pbi9hdXRob3Jpc2VkX3ZhbHVlcy50bXBsICAgfCAgIDI4ICsrKysrKysr
KysrKysrLS0tLS0KIDUgZmlsZXMgY2hhbmdlZCwgNTkgaW5zZXJ0aW9ucygrKSwgMTEgZGVsZXRp
b25zKC0pCgpkaWZmIC0tZ2l0IGEvaW5zdGFsbGVyL2RhdGEvbXlzcWwvZW4vb3B0aW9uYWwvYXV0
aF92YWwuc3FsIGIvaW5zdGFsbGVyL2RhdGEvbXlzcWwvZW4vb3B0aW9uYWwvYXV0aF92YWwuc3Fs
CmluZGV4IDExMzI4ZTEuLjk3NjlhY2YgMTAwNjQ0Ci0tLSBhL2luc3RhbGxlci9kYXRhL215c3Fs
L2VuL29wdGlvbmFsL2F1dGhfdmFsLnNxbAorKysgYi9pbnN0YWxsZXIvZGF0YS9teXNxbC9lbi9v
cHRpb25hbC9hdXRoX3ZhbC5zcWwKQEAgLTI0LDYgKzI0LDggQEAgSU5TRVJUIElOVE8gYGF1dGhv
cmlzZWRfdmFsdWVzYCAoY2F0ZWdvcnksIGF1dGhvcmlzZWRfdmFsdWUsIGxpYikgVkFMVUVTICgn
TE9DJywKIElOU0VSVCBJTlRPIGBhdXRob3Jpc2VkX3ZhbHVlc2AgKGNhdGVnb3J5LCBhdXRob3Jp
c2VkX3ZhbHVlLCBsaWIpIFZBTFVFUyAoJ0xPQycsJ0dFTicsJ0dlbmVyYWwgU3RhY2tzJyk7CiBJ
TlNFUlQgSU5UTyBgYXV0aG9yaXNlZF92YWx1ZXNgIChjYXRlZ29yeSwgYXV0aG9yaXNlZF92YWx1
ZSwgbGliKSBWQUxVRVMgKCdMT0MnLCdBVicsJ0F1ZGlvIFZpc3VhbCcpOwogSU5TRVJUIElOVE8g
YGF1dGhvcmlzZWRfdmFsdWVzYCAoY2F0ZWdvcnksIGF1dGhvcmlzZWRfdmFsdWUsIGxpYikgVkFM
VUVTICgnTE9DJywnUkVGJywnUmVmZXJlbmNlJyk7CitJTlNFUlQgSU5UTyBgYXV0aG9yaXNlZF92
YWx1ZXNgIChjYXRlZ29yeSwgYXV0aG9yaXNlZF92YWx1ZSwgbGliKSBWQUxVRVMgKCdMT0MnLCdD
QVJUJywnQm9vayBDYXJ0Jyk7CitJTlNFUlQgSU5UTyBgYXV0aG9yaXNlZF92YWx1ZXNgIChjYXRl
Z29yeSwgYXV0aG9yaXNlZF92YWx1ZSwgbGliKSBWQUxVRVMgKCdMT0MnLCdQUk9DJywnUHJvY2Vz
c2luZyBDZW50ZXInKTsKIAogLS0gY29sbGVjdGlvbiBjb2RlcyBmb3IgYW4gaXRlbQogSU5TRVJU
IElOVE8gYGF1dGhvcmlzZWRfdmFsdWVzYCAoY2F0ZWdvcnksIGF1dGhvcmlzZWRfdmFsdWUsIGxp
YikgVkFMVUVTICgnQ0NPREUnLCdGSUMnLCdGaWN0aW9uJyk7CkBAIC00MywzICs0NSw5IEBAIElO
U0VSVCBJTlRPIGBhdXRob3Jpc2VkX3ZhbHVlc2AgKGNhdGVnb3J5LCBhdXRob3Jpc2VkX3ZhbHVl
LCBsaWIpIFZBTFVFUyAoJ05PVF9MCiAtLSByZXN0cmljdGVkIHN0YXR1cyBvZiBhbiBpdGVtLCBs
aW5rZWQgdG8gaXRlbXMucmVzdHJpY3RlZAogSU5TRVJUIElOVE8gYGF1dGhvcmlzZWRfdmFsdWVz
YCAoY2F0ZWdvcnksIGF1dGhvcmlzZWRfdmFsdWUsIGxpYikgVkFMVUVTICgnUkVTVFJJQ1RFRCcs
JzAnLCcnKTsKIElOU0VSVCBJTlRPIGBhdXRob3Jpc2VkX3ZhbHVlc2AgKGNhdGVnb3J5LCBhdXRo
b3Jpc2VkX3ZhbHVlLCBsaWIpIFZBTFVFUyAoJ1JFU1RSSUNURUQnLCcxJywnUmVzdHJpY3RlZCBB
Y2Nlc3MnKTsKKworLS0gbWFudWFsIGludm9pY2UgdHlwZXMKK0lOU0VSVCBJTlRPIGBhdXRob3Jp
c2VkX3ZhbHVlc2AgKGNhdGVnb3J5LCBhdXRob3Jpc2VkX3ZhbHVlLCBsaWIpIFZBTFVFUyAoJ01B
TlVBTF9JTlYnLCdDb3BpZXIgRmVlcycsJy4yNScpOworCistLWN1c3RvbSBib3Jyb3dlciBub3Rl
cworSU5TRVJUIElOVE8gYGF1dGhvcmlzZWRfdmFsdWVzYCAoY2F0ZWdvcnksIGF1dGhvcmlzZWRf
dmFsdWUsIGxpYikgVkFMVUVTICgnQk9SX05PVEVTJywnQUREUicsJ0FkZHJlc3MgTm90ZXMnKTsK
XCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9pbnN0YWxsZXIvZGF0YS9t
eXNxbC91cGRhdGVkYXRhYmFzZS5wbCBiL2luc3RhbGxlci9kYXRhL215c3FsL3VwZGF0ZWRhdGFi
YXNlLnBsCmluZGV4IDEwYzM0NTEuLmFhODM0NjkgMTAwNzU1Ci0tLSBhL2luc3RhbGxlci9kYXRh
L215c3FsL3VwZGF0ZWRhdGFiYXNlLnBsCisrKyBiL2luc3RhbGxlci9kYXRhL215c3FsL3VwZGF0
ZWRhdGFiYXNlLnBsCkBAIC0yNjc1LDYgKzI2NzUsMzQgQEAgaWYgKEM0OjpDb250ZXh0LT5wcmVm
ZXJlbmNlKCJWZXJzaW9uIikgPCBUcmFuc2Zvcm1Ub051bSgkREJ2ZXJzaW9uKSkgewogICAgIFNl
dFZlcnNpb24gKCREQnZlcnNpb24pOwogfQogCisKKyREQnZlcnNpb24gPSAiWFhYIjsKK2lmIChD
NDo6Q29udGV4dC0+cHJlZmVyZW5jZSgiVmVyc2lvbiIpIDwgVHJhbnNmb3JtVG9OdW0oJERCdmVy
c2lvbikpIHsKKworICAgIGV2YWwgeyAkbWFuaW52X2NvdW50ID0gJGRiaC0+ZG8oIlNFTEVDVCAx
IEZST00gYXV0aG9yaXNlZF92YWx1ZXMgV0hFUkUgY2F0ZWdvcnk9J01BTlVBTF9JTlYnIik7IH07
CisgICAgaWYgKCRtYW5pbnZfY291bnQgPT0gMCkgeworICAgICAgICAkZGJoLT5kbygiSU5TRVJU
IElOVE8gYXV0aG9yaXNlZF92YWx1ZXMgKGNhdGVnb3J5LGF1dGhvcmlzZWRfdmFsdWUsbGliKSBW
QUxVRVMgKCdNQU5VQUxfSU5WJywnQ29waWVyIEZlZXMnLCcuMjUnKSIpOworICAgIH0KKyAgICBl
dmFsIHsgJGJvcnJub3Rlc19jb3VudCA9ICRkYmgtPmRvKCJTRUxFQ1QgMSBGUk9NIGF1dGhvcmlz
ZWRfdmFsdWVzIFdIRVJFIGNhdGVnb3J5PSdCT1JfTk9URVMnIik7IH07CisgICAgaWYgKCRib3Jy
bm90ZXNfY291bnQgPT0gMCkgeworICAgICAgICAkZGJoLT5kbygiSU5TRVJUIElOVE8gYXV0aG9y
aXNlZF92YWx1ZXMgKGNhdGVnb3J5LGF1dGhvcmlzZWRfdmFsdWUsbGliKSBWQUxVRVMgKCdCT1Jf
Tk9URVMnLCdBRERSJywnQWRkcmVzcyBOb3RlcycpIik7CisgICAgfQorCisJcHJpbnQgIlVwZ3Jh
ZGUgdG8gJERCdmVyc2lvbiBkb25lICggYWRkIGRlZmF1bHRzIHRvIGF1dGhvcml6ZWQgdmFsdWVz
IGZvciBNQU5VQUxfSU5WIGFuZCBCT1JfTk9URVMgKVxuIjsKKwlTZXRWZXJzaW9uICgkREJ2ZXJz
aW9uKTsKK30KKworJERCdmVyc2lvbiA9ICJYWFgiOworaWYgKEM0OjpDb250ZXh0LT5wcmVmZXJl
bmNlKCJWZXJzaW9uIikgPCBUcmFuc2Zvcm1Ub051bSgkREJ2ZXJzaW9uKSkgeworCisgICAgJGRi
aC0+ZG8oIklOU0VSVCBJTlRPIGF1dGhvcmlzZWRfdmFsdWVzIChjYXRlZ29yeSxhdXRob3Jpc2Vk
X3ZhbHVlLGxpYikgVkFMVUVTICgnTE9DJywnQ0FSVCcsJ0Jvb2sgQ2FydCcpIik7CisgICAgJGRi
aC0+ZG8oIklOU0VSVCBJTlRPIGF1dGhvcmlzZWRfdmFsdWVzIChjYXRlZ29yeSxhdXRob3Jpc2Vk
X3ZhbHVlLGxpYikgVkFMVUVTICgnTE9DJywnUFJPQycsJ1Byb2Nlc3NpbmcgQ2VudGVyJykiKTsK
KworCXByaW50ICJVcGdyYWRlIHRvICREQnZlcnNpb24gZG9uZSAoIGFkZCBuZXcgZGVmYXVsdCBM
T0MgYXV0aG9yaXplZCB2YWx1ZXMgZm9yIHNoZWxmIHRvIGNhcnQgcHJvY2Vzc2luZyApXG4iOwor
CVNldFZlcnNpb24gKCREQnZlcnNpb24pOworfQorCisKID1pdGVtIERyb3BBbGxGb3JlaWduS2V5
cygkdGFibGUpCiAKICAgRHJvcCBhbGwgZm9yZWlnbiBrZXlzIG9mIHRoZSB0YWJsZSAkdGFibGUK
ZGlmZiAtLWdpdCBhL2tvaGEtdG1wbC9pbnRyYW5ldC10bXBsL3Byb2cvZW4vaW5jbHVkZXMvYWRt
aW4tbWVudS5pbmMgYi9rb2hhLXRtcGwvaW50cmFuZXQtdG1wbC9wcm9nL2VuL2luY2x1ZGVzL2Fk
bWluLW1lbnUuaW5jCmluZGV4IGUxNGYzNDcuLmQxMWQ4MDAgMTAwNjQ0Ci0tLSBhL2tvaGEtdG1w
bC9pbnRyYW5ldC10bXBsL3Byb2cvZW4vaW5jbHVkZXMvYWRtaW4tbWVudS5pbmMKKysrIGIva29o
YS10bXBsL2ludHJhbmV0LXRtcGwvcHJvZy9lbi9pbmNsdWRlcy9hZG1pbi1tZW51LmluYwpAQCAt
OSw2ICs5LDcgQEAKIAk8bGk+PGEgaHJlZj0iL2NnaS1iaW4va29oYS9hZG1pbi9hcWJvb2tmdW5k
LnBsIj5GdW5kcyBhbmQgYnVkZ2V0czwvYT48L2xpPgogCTxsaT48YSBocmVmPSIvY2dpLWJpbi9r
b2hhL2FkbWluL2N1cnJlbmN5LnBsIj5DdXJyZW5jaWVzIGFuZCBleGNoYW5nZSByYXRlczwvYT48
L2xpPgogCTxsaT48YSBocmVmPSIvY2dpLWJpbi9rb2hhL2FkbWluL2l0ZW10eXBlcy5wbCI+SXRl
bSB0eXBlczwvYT48L2xpPgorCTxsaT48YSBocmVmPSIvY2dpLWJpbi9rb2hhL2FkbWluL2F1dGhv
cmlzZWRfdmFsdWVzLnBsIj5BdXRob3JpemVkIHZhbHVlczwvYT48L2xpPgogPC91bD4KIAogPGg1
PlBhdHJvbnMgYW5kIGNpcmN1bGF0aW9uPC9oNT4KQEAgLTI0LDcgKzI1LDYgQEAKIAogPGg1PkNh
dGFsb2c8L2g1PgogPHVsPgotCTxsaT48YSBocmVmPSIvY2dpLWJpbi9rb2hhL2FkbWluL2F1dGhv
cmlzZWRfdmFsdWVzLnBsIj5BdXRob3JpemVkIHZhbHVlczwvYT48L2xpPgogCTxsaT48YSBocmVm
PSIvY2dpLWJpbi9rb2hhL2FkbWluL2JpYmxpb19mcmFtZXdvcmsucGwiPk1BUkMgQmlibGlvZ3Jh
cGhpYyBmcmFtZXdvcms8L2E+PC9saT4KIAk8bGk+PGEgaHJlZj0iL2NnaS1iaW4va29oYS9hZG1p
bi9rb2hhMm1hcmNsaW5rcy5wbCI+S29oYSB0byBNQVJDIG1hcHBpbmc8L2E+PC9saT4KIAk8bGk+
PGEgaHJlZj0iL2NnaS1iaW4va29oYS9hZG1pbi9jaGVja21hcmMucGwiPk1BUkMgQmlibGlvZ3Jh
cGhpYyBmcmFtZXdvcmsgdGVzdDwvYT48L2xpPgpkaWZmIC0tZ2l0IGEva29oYS10bXBsL2ludHJh
bmV0LXRtcGwvcHJvZy9lbi9tb2R1bGVzL2FkbWluL2FkbWluLWhvbWUudG1wbCBiL2tvaGEtdG1w
bC9pbnRyYW5ldC10bXBsL3Byb2cvZW4vbW9kdWxlcy9hZG1pbi9hZG1pbi1ob21lLnRtcGwKaW5k
ZXggMTE0MzBkYy4uZDMzNjIwOCAxMDA2NDQKLS0tIGEva29oYS10bXBsL2ludHJhbmV0LXRtcGwv
cHJvZy9lbi9tb2R1bGVzL2FkbWluL2FkbWluLWhvbWUudG1wbAorKysgYi9rb2hhLXRtcGwvaW50
cmFuZXQtdG1wbC9wcm9nL2VuL21vZHVsZXMvYWRtaW4vYWRtaW4taG9tZS50bXBsCkBAIC0zOCw2
ICszOCw4IEBACiAJPGRkPkRlZmluZSBjdXJyZW5jaWVzIGFuZCBleGNoYW5nZSByYXRlcyB1c2Vk
IGZvciBhY3F1aXNpdGlvbnMuPC9kZD4KIAk8ZHQ+PGEgaHJlZj0iL2NnaS1iaW4va29oYS9hZG1p
bi9pdGVtdHlwZXMucGwiPkl0ZW0gdHlwZXM8L2E+PC9kdD4KIAk8ZGQ+RGVmaW5lIGl0ZW0gdHlw
ZXMgdXNlZCBmb3IgY2lyY3VsYXRpb24gcnVsZXMuPC9kZD4KKwk8ZHQ+PGEgaHJlZj0iL2NnaS1i
aW4va29oYS9hZG1pbi9hdXRob3Jpc2VkX3ZhbHVlcy5wbCI+QXV0aG9yaXplZCB2YWx1ZXM8L2E+
PC9kdD4KKwk8ZGQ+RGVmaW5lIGNhdGVnb3JpZXMgYW5kIGF1dGhvcml6ZWQgdmFsdWVzIGZvciB0
aGVtLjwvZGQ+CiA8L2RsPgogCiA8aDM+UGF0cm9ucyBhbmQgY2lyY3VsYXRpb248L2gzPgpAQCAt
NjIsOCArNjQsNiBAQAogPGRpdiBjbGFzcz0ieXVpLXUiPgogPGgzPkNhdGFsb2c8L2gzPgogPGRs
PgotCTxkdD48YSBocmVmPSIvY2dpLWJpbi9rb2hhL2FkbWluL2F1dGhvcmlzZWRfdmFsdWVzLnBs
Ij5BdXRob3JpemVkIHZhbHVlczwvYT48L2R0PgotCTxkZD5EZWZpbmUgY2F0ZWdvcmllcyBhbmQg
YXV0aG9yaXplZCB2YWx1ZXMgZm9yIHRoZW0uPC9kZD4KIAk8ZHQ+PGEgaHJlZj0iL2NnaS1iaW4v
a29oYS9hZG1pbi9iaWJsaW9fZnJhbWV3b3JrLnBsIj5NQVJDIEJpYmxpb2dyYXBoaWMgZnJhbWV3
b3JrPC9hPjwvZHQ+CiAJPGRkPkNyZWF0ZSBhbmQgbWFuYWdlIEJpYmxpb2dyYXBoaWMgZnJhbWV3
b3JrcyB0aGF0IGRlZmluZSB0aGUgY2hhcmFjdGVyaXN0aWNzIG9mIHlvdXIgTUFSQyBSZWNvcmRz
IChmaWVsZCBhbmQgc3ViZmllbGQgZGVmaW5pdGlvbnMpIGFzIHdlbGwgYXMgdGVtcGxhdGVzIGZv
ciB0aGUgTUFSQyBlZGl0b3IuPC9kZD4KIAk8ZHQ+PGEgaHJlZj0iL2NnaS1iaW4va29oYS9hZG1p
bi9rb2hhMm1hcmNsaW5rcy5wbCI+S29oYSB0byBNQVJDIG1hcHBpbmc8L2E+PC9kdD4KZGlmZiAt
LWdpdCBhL2tvaGEtdG1wbC9pbnRyYW5ldC10bXBsL3Byb2cvZW4vbW9kdWxlcy9hZG1pbi9hdXRo
b3Jpc2VkX3ZhbHVlcy50bXBsIGIva29oYS10bXBsL2ludHJhbmV0LXRtcGwvcHJvZy9lbi9tb2R1
bGVzL2FkbWluL2F1dGhvcmlzZWRfdmFsdWVzLnRtcGwKaW5kZXggMjBiODcxMi4uOWRkOGJmZCAx
MDA2NDQKLS0tIGEva29oYS10bXBsL2ludHJhbmV0LXRtcGwvcHJvZy9lbi9tb2R1bGVzL2FkbWlu
L2F1dGhvcmlzZWRfdmFsdWVzLnRtcGwKKysrIGIva29oYS10bXBsL2ludHJhbmV0LXRtcGwvcHJv
Zy9lbi9tb2R1bGVzL2FkbWluL2F1dGhvcmlzZWRfdmFsdWVzLnRtcGwKQEAgLTE1Niw3ICsxNTYs
NyBAQAogPC91bD48L2Rpdj4KIAogPGgxPkF1dGhvcml6ZWQgdmFsdWVzPC9oMT4KLTxwPlRoaXMg
dGFibGUgaXMgdXNlZCBpbiBNQVJDIGRlZmluaXRpb24uIFlvdSBjYW4gZGVmaW5lIGFzIG1hbnkg
Y2F0ZWdvcmllcyBhcyB5b3Ugd2FudCwgYW5kIGFzIG1hbnkgYXV0aG9yaXplZCB2YWx1ZXMgYXMg
eW91IHdhbnQgaW4gZWFjaCBjYXRlZ29yeS48L3A+Cis8cD5UaGVzZSB2YWx1ZXMgY2FuIGJlIHVz
ZWQgaW4gbWFueSBwdWxsIGRvd24gbWVudXMgdGhyb3VnaG91dCB0aGUgS29oYSBzeXN0ZW0uIFlv
dSBjYW4gZGVmaW5lIGFzIG1hbnkgY2F0ZWdvcmllcyBhcyB5b3Ugd2FudCwgYW5kIGFzIG1hbnkg
YXV0aG9yaXplZCB2YWx1ZXMgYXMgeW91IHdhbnQgaW4gZWFjaCBjYXRlZ29yeS48L3A+CiA8cD5X
aGVuIHlvdSBkZWZpbmUgdGhlIE1BUkMgc3ViZmllbGQgc3RydWN0dXJlLCB5b3UgY2FuIGxpbmsg
YSBzdWJmaWVsZCB0byBhIGF1dGhvcml6ZWQtdmFsdWUgY2F0ZWdvcnkuIFdoZW4gdGhlIHVzZXIg
YXNrIGZvciBhZGRpbmcgb2YgbW9kaWZ5aW5nIGEgYmlibGlvLAogdGhlIHN1YmZpZWxkIGlzIG5v
dCBlbnRlcmVkIHRocm91Z2ggYSBmcmVlIGZpZWxkLCBidXQgdGhvdWdoIGEgbGlzdCBvZiBhdXRo
b3JpemVkIHZhbHVlczwvcD4KIDwhLS0gVE1QTF9JRiBuYW1lPSJkdXBsaWNhdGVfY2F0ZWdvcnki
IC0tPgpAQCAtMTY4LDI1ICsxNjgsMzcgQEAgdGhlIHN1YmZpZWxkIGlzIG5vdCBlbnRlcmVkIHRo
cm91Z2ggYSBmcmVlIGZpZWxkLCBidXQgdGhvdWdoIGEgbGlzdCBvZiBhdXRob3JpemUKIDwhLS0g
L1RNUExfSUYgLS0+CiA8Zm9ybSBhY3Rpb249Ii9jZ2ktYmluL2tvaGEvYWRtaW4vYXV0aG9yaXNl
ZF92YWx1ZXMucGwiIG1ldGhvZD0icG9zdCIgaWQ9ImNhdGVnb3J5Ij48bGFiZWwgZm9yPSJzZWFy
Y2hmaWVsZCI+U2hvdyBDYXRlZ29yeTogPC9sYWJlbD48IS0tIFRNUExfVkFSIG5hbWU9InRhYl9s
aXN0IiAtLT4gPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IlN1Ym1pdCIgLz48L2Zvcm0+CiA8
IS0tIFRNUExfSUYgRVhQUj0iY2F0ZWdvcnkgZXEgJ0Jzb3J0MSciIC0tPgotICAgIDxwPkJzb3J0
MSBpcyBhbiBhdXRob3JpemVkIHZhbHVlIGF0dGFjaGVkIHRvIHBhdHJvbnMsIHRoYXQgY2FuIGJl
IHVzZWQgZm9yIHN0YXRzIHB1cnBvc2VzPC9wPgorICAgIDxwPkFuIGF1dGhvcml6ZWQgdmFsdWUg
YXR0YWNoZWQgdG8gcGF0cm9ucywgdGhhdCBjYW4gYmUgdXNlZCBmb3Igc3RhdHMgcHVycG9zZXM8
L3A+CiA8IS0tIC9UTVBMX0lGIC0tPgogPCEtLSBUTVBMX0lGIEVYUFI9ImNhdGVnb3J5IGVxICdC
c29ydDInIiAtLT4KLSAgICA8cD5Cc29ydDIgaXMgYW4gYXV0aG9yaXplZCB2YWx1ZSBhdHRhY2hl
ZCB0byBwYXRyb25zLCB0aGF0IGNhbiBiZSB1c2VkIGZvciBzdGF0cyBwdXJwb3NlczwvcD4KKyAg
ICA8cD5BbiBhdXRob3JpemVkIHZhbHVlIGF0dGFjaGVkIHRvIHBhdHJvbnMsIHRoYXQgY2FuIGJl
IHVzZWQgZm9yIHN0YXRzIHB1cnBvc2VzPC9wPgogPCEtLSAvVE1QTF9JRiAtLT4KIDwhLS0gVE1Q
TF9JRiBFWFBSPSJjYXRlZ29yeSBlcSAnQXNvcnQxJyIgLS0+Ci0gICAgPHA+QXNvcnQxIGlzIGFu
IGF1dGhvcml6ZWQgdmFsdWUgYXR0YWNoZWQgdG8gYWNxdWlzaXRpb25zLCB0aGF0IGNhbiBiZSB1
c2VkIGZvciBzdGF0cyBwdXJwb3NlczwvcD4KKyAgICA8cD5BbiBhdXRob3JpemVkIHZhbHVlIGF0
dGFjaGVkIHRvIGFjcXVpc2l0aW9ucywgdGhhdCBjYW4gYmUgdXNlZCBmb3Igc3RhdHMgcHVycG9z
ZXM8L3A+CiA8IS0tIC9UTVBMX0lGIC0tPgogPCEtLSBUTVBMX0lGIEVYUFI9ImNhdGVnb3J5IGVx
ICdBc29ydDInIiAtLT4KLSAgICA8cD5Bc29ydDIgaXMgYW4gYXV0aG9yaXplZCB2YWx1ZSBhdHRh
Y2hlZCB0byBhY3F1aXNpdGlvbnMsIHRoYXQgY2FuIGJlIHVzZWQgZm9yIHN0YXRzIHB1cnBvc2Vz
PC9wPgorICAgIDxwPkFuIGF1dGhvcml6ZWQgdmFsdWUgYXR0YWNoZWQgdG8gYWNxdWlzaXRpb25z
LCB0aGF0IGNhbiBiZSB1c2VkIGZvciBzdGF0cyBwdXJwb3NlczwvcD4KIDwhLS0gL1RNUExfSUYg
LS0+CiA8IS0tIFRNUExfSUYgRVhQUj0iY2F0ZWdvcnkgZXEgJ1NVR0dFU1QnIiAtLT4KLSAgICA8
cD5UaGUgbGlzdCBvZiBwYXRyb24gc3VnZ2VzdGlvbiByZWplY3Qgb3IgYWNjZXB0IHJlYXNvbnM8
L3A+CisgICAgPHA+UmVhc29ucyB0byByZWplY3Qgb3IgYWNjZXB0IHBhdHJvbiBzdWdnZXN0aW9u
czwvcD4KIDwhLS0gL1RNUExfSUYgLS0+CiA8IS0tIFRNUExfSUYgRVhQUj0iY2F0ZWdvcnkgZXEg
J0RBTUFHRUQnIiAtLT4KLSAgICA8cD5UaGUgbGlzdCBvZiBzdGF0dXMgdG8gZGVzY3JpYmUgYSBk
YW1hZ2VkIGl0ZW08L3A+CisgICAgPHA+U3RhdHVzZXMgdG8gZGVzY3JpYmUgYSBkYW1hZ2VkIGl0
ZW08L3A+CiA8IS0tIC9UTVBMX0lGIC0tPgogPCEtLSBUTVBMX0lGIEVYUFI9ImNhdGVnb3J5IGVx
ICdMT1NUJyIgLS0+Ci0gICAgPHA+VGhlIGxpc3Qgb2Ygc3RhdHVzIHRvIGRlc2NyaWJlIGEgbG9z
dCBpdGVtPC9wPgorICAgIDxwPlN0YXR1c2VzIHRvIGRlc2NyaWJlIGEgbG9zdCBpdGVtPC9wPgor
PCEtLSAvVE1QTF9JRiAtLT4KKzwhLS0gVE1QTF9JRiBFWFBSPSJjYXRlZ29yeSBlcSAnTUFOVUFM
X0lOViciIC0tPgorICAgIDxwPkFkZGl0aW9uYWwgdmFsdWVzIGZvciBtYW51YWwgaW52b2ljZSB0
eXBlczwvcD4KKzwhLS0gL1RNUExfSUYgLS0+Cis8IS0tIFRNUExfSUYgRVhQUj0iY2F0ZWdvcnkg
ZXEgJ0JPUl9OT1RFUyciIC0tPgorICAgIDxwPlZhbHVlcyBmb3IgY3VzdG9tIHBhdHJvbiBub3Rl
czwvcD4KKzwhLS0gL1RNUExfSUYgLS0+Cis8IS0tIFRNUExfSUYgRVhQUj0iY2F0ZWdvcnkgZXEg
J0xPQyciIC0tPgorICAgIDxwPlZhbHVlcyBmb3Igc2hlbHZpbmcgbG9jYXRpb25zPC9wPgorPCEt
LSAvVE1QTF9JRiAtLT4KKzwhLS0gVE1QTF9JRiBFWFBSPSJjYXRlZ29yeSBlcSAnQ0NPREUnIiAt
LT4KKyAgICA8cD5WYWx1ZXMgZm9yIGNvbGxlY3Rpb24gY29kZXM8L3A+CiA8IS0tIC9UTVBMX0lG
IC0tPgogPHRhYmxlPgogPHRyPgotLSAKMS41LjYuNQoK
--00163623aa8dcb1b5804743e8014
Content-Type: application/octet-stream; 
	name="0002-UPDATE-TO-PATCH-Bug-3654-Clean-up-authorized-val.patch"
Content-Disposition: attachment; 
	filename="0002-UPDATE-TO-PATCH-Bug-3654-Clean-up-authorized-val.patch"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_fzy3k9nf2

RnJvbSBkNTYwMDhkYTc4Mzg2ZGM2MmQ0NTdhY2UxNGE1MDVhYTZhYzNkZDJhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBOaWNvbGUgRW5nYXJkIDxuZW5nYXJkQGdtYWlsLmNvbT4KRGF0
ZTogVHVlLCAyMiBTZXAgMjAwOSAwMjoxMTowNyAtMDQwMApTdWJqZWN0OiBbUEFUQ0hdIFVQREFU
RSBUTzogW1BBVENIXSBCdWcgMzY1NDogQ2xlYW4gdXAgYXV0aG9yaXplZCB2YWx1ZXMgcGFnZSBh
bmQgYWRkIGRlZmF1bHRzIGZvciBuZXcgY2F0ZWdvcmllcwpDb250ZW50LVR5cGU6IHRleHQvcGxh
aW47IGNoYXJzZXQ9InV0Zi04IgoKLS0tCiBpbnN0YWxsZXIvZGF0YS9teXNxbC9lbi9vcHRpb25h
bC9hdXRoX3ZhbC5zcWwgfCAgICAyICstCiBpbnN0YWxsZXIvZGF0YS9teXNxbC91cGRhdGVkYXRh
YmFzZS5wbCAgICAgICAgfCAgIDE0ICsrKy0tLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDQg
aW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvaW5zdGFsbGVyL2Rh
dGEvbXlzcWwvZW4vb3B0aW9uYWwvYXV0aF92YWwuc3FsIGIvaW5zdGFsbGVyL2RhdGEvbXlzcWwv
ZW4vb3B0aW9uYWwvYXV0aF92YWwuc3FsCmluZGV4IDk3NjlhY2YuLjZjZGUxYjIgMTAwNjQ0Ci0t
LSBhL2luc3RhbGxlci9kYXRhL215c3FsL2VuL29wdGlvbmFsL2F1dGhfdmFsLnNxbAorKysgYi9p
bnN0YWxsZXIvZGF0YS9teXNxbC9lbi9vcHRpb25hbC9hdXRoX3ZhbC5zcWwKQEAgLTUwLDQgKzUw
LDQgQEAgSU5TRVJUIElOVE8gYGF1dGhvcmlzZWRfdmFsdWVzYCAoY2F0ZWdvcnksIGF1dGhvcmlz
ZWRfdmFsdWUsIGxpYikgVkFMVUVTICgnUkVTVFIKIElOU0VSVCBJTlRPIGBhdXRob3Jpc2VkX3Zh
bHVlc2AgKGNhdGVnb3J5LCBhdXRob3Jpc2VkX3ZhbHVlLCBsaWIpIFZBTFVFUyAoJ01BTlVBTF9J
TlYnLCdDb3BpZXIgRmVlcycsJy4yNScpOwogCiAtLWN1c3RvbSBib3Jyb3dlciBub3RlcwotSU5T
RVJUIElOVE8gYGF1dGhvcmlzZWRfdmFsdWVzYCAoY2F0ZWdvcnksIGF1dGhvcmlzZWRfdmFsdWUs
IGxpYikgVkFMVUVTICgnQk9SX05PVEVTJywnQUREUicsJ0FkZHJlc3MgTm90ZXMnKTsKXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCitJTlNFUlQgSU5UTyBgYXV0aG9yaXNlZF92YWx1ZXNgIChj
YXRlZ29yeSwgYXV0aG9yaXNlZF92YWx1ZSwgbGliKSBWQUxVRVMgKCdCT1JfTk9URVMnLCdWRVJJ
RCcsJ1BhdHJvbiBuZWVkcyB0byBicmluZyBpbiBkcml2ZXJcJ3MgbGljZW5zZSB0byB2ZXJpZnkg
SUQnKTsKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9pbnN0YWxsZXIv
ZGF0YS9teXNxbC91cGRhdGVkYXRhYmFzZS5wbCBiL2luc3RhbGxlci9kYXRhL215c3FsL3VwZGF0
ZWRhdGFiYXNlLnBsCmluZGV4IGFhODM0NjkuLjQxY2FkY2EgMTAwNzU1Ci0tLSBhL2luc3RhbGxl
ci9kYXRhL215c3FsL3VwZGF0ZWRhdGFiYXNlLnBsCisrKyBiL2luc3RhbGxlci9kYXRhL215c3Fs
L3VwZGF0ZWRhdGFiYXNlLnBsCkBAIC0yNjg1LDI0ICsyNjg1LDE2IEBAIGlmIChDNDo6Q29udGV4
dC0+cHJlZmVyZW5jZSgiVmVyc2lvbiIpIDwgVHJhbnNmb3JtVG9OdW0oJERCdmVyc2lvbikpIHsK
ICAgICB9CiAgICAgZXZhbCB7ICRib3Jybm90ZXNfY291bnQgPSAkZGJoLT5kbygiU0VMRUNUIDEg
RlJPTSBhdXRob3Jpc2VkX3ZhbHVlcyBXSEVSRSBjYXRlZ29yeT0nQk9SX05PVEVTJyIpOyB9Owog
ICAgIGlmICgkYm9ycm5vdGVzX2NvdW50ID09IDApIHsKLSAgICAgICAgJGRiaC0+ZG8oIklOU0VS
VCBJTlRPIGF1dGhvcmlzZWRfdmFsdWVzIChjYXRlZ29yeSxhdXRob3Jpc2VkX3ZhbHVlLGxpYikg
VkFMVUVTICgnQk9SX05PVEVTJywnQUREUicsJ0FkZHJlc3MgTm90ZXMnKSIpOworICAgICAgICAk
ZGJoLT5kbygiSU5TRVJUIElOVE8gYXV0aG9yaXNlZF92YWx1ZXMgKGNhdGVnb3J5LGF1dGhvcmlz
ZWRfdmFsdWUsbGliKSBWQUxVRVMgKCdCT1JfTk9URVMnLCdWRVJJRCcsJ1BhdHJvbiBuZWVkcyB0
byBicmluZyBpbiBkcml2ZXJcJ3MgbGljZW5zZSB0byB2ZXJpZnkgSUQnKSIpOwogICAgIH0KLQot
CXByaW50ICJVcGdyYWRlIHRvICREQnZlcnNpb24gZG9uZSAoIGFkZCBkZWZhdWx0cyB0byBhdXRo
b3JpemVkIHZhbHVlcyBmb3IgTUFOVUFMX0lOViBhbmQgQk9SX05PVEVTIClcbiI7Ci0JU2V0VmVy
c2lvbiAoJERCdmVyc2lvbik7Ci19Ci0KLSREQnZlcnNpb24gPSAiWFhYIjsKLWlmIChDNDo6Q29u
dGV4dC0+cHJlZmVyZW5jZSgiVmVyc2lvbiIpIDwgVHJhbnNmb3JtVG9OdW0oJERCdmVyc2lvbikp
IHsKLQorICAgIAogICAgICRkYmgtPmRvKCJJTlNFUlQgSU5UTyBhdXRob3Jpc2VkX3ZhbHVlcyAo
Y2F0ZWdvcnksYXV0aG9yaXNlZF92YWx1ZSxsaWIpIFZBTFVFUyAoJ0xPQycsJ0NBUlQnLCdCb29r
IENhcnQnKSIpOwogICAgICRkYmgtPmRvKCJJTlNFUlQgSU5UTyBhdXRob3Jpc2VkX3ZhbHVlcyAo
Y2F0ZWdvcnksYXV0aG9yaXNlZF92YWx1ZSxsaWIpIFZBTFVFUyAoJ0xPQycsJ1BST0MnLCdQcm9j
ZXNzaW5nIENlbnRlcicpIik7CiAKLQlwcmludCAiVXBncmFkZSB0byAkREJ2ZXJzaW9uIGRvbmUg
KCBhZGQgbmV3IGRlZmF1bHQgTE9DIGF1dGhvcml6ZWQgdmFsdWVzIGZvciBzaGVsZiB0byBjYXJ0
IHByb2Nlc3NpbmcgKVxuIjsKKwlwcmludCAiVXBncmFkZSB0byAkREJ2ZXJzaW9uIGRvbmUgKCBh
ZGQgdHdvIHZhbHVlcyB0byBMT0MgYW5kIGFkZCBkZWZhdWx0cyB0byBhdXRob3JpemVkIHZhbHVl
cyBmb3IgTUFOVUFMX0lOViBhbmQgQk9SX05PVEVTIClcbiI7CiAJU2V0VmVyc2lvbiAoJERCdmVy
c2lvbik7CiB9CiAKLQogPWl0ZW0gRHJvcEFsbEZvcmVpZ25LZXlzKCR0YWJsZSkKIAogICBEcm9w
IGFsbCBmb3JlaWduIGtleXMgb2YgdGhlIHRhYmxlICR0YWJsZQotLSAKMS41LjYuNQoK
--00163623aa8dcb1b5804743e8014--


More information about the Koha-patches mailing list