From mboxrd@z Thu Jan 1 00:00:00 1970 From: Douglas Gilbert Subject: Re: [PATCH v2 5/5] scsi_debug: add resp_write_scat function Date: Thu, 14 Dec 2017 21:44:53 -0500 Message-ID: References: <20171214014016.13142-1-dgilbert@interlog.com> <20171214014016.13142-6-dgilbert@interlog.com> <1513292262.2475.100.camel@sandisk.com> Reply-To: dgilbert@interlog.com Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------F19635AA4F38496310B72935" Return-path: Received: from smtp.infotech.no ([82.134.31.41]:44480 "EHLO smtp.infotech.no" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754594AbdLOCo4 (ORCPT ); Thu, 14 Dec 2017 21:44:56 -0500 In-Reply-To: <1513292262.2475.100.camel@sandisk.com> Content-Language: en-CA Sender: linux-scsi-owner@vger.kernel.org List-Id: linux-scsi@vger.kernel.org To: Bart Van Assche , "linux-scsi@vger.kernel.org" Cc: "hare@suse.de" , "martin.petersen@oracle.com" This is a multi-part message in MIME format. --------------F19635AA4F38496310B72935 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 2017-12-14 05:57 PM, Bart Van Assche wrote: > On Wed, 2017-12-13 at 20:40 -0500, Douglas Gilbert wrote: >> + {0, 0x7f, 0x11, F_SA_HIGH | F_D_OUT | FF_MEDIA_IO, resp_write_scat, >> + NULL, {32, 0xc7, 0, 0, 0, 0, 0x3f, 0x18, 0x0, 0x11, 0xf8, >> + 0, 0xff, 0xff, 0x0, 0x0} }, /* WRITE SCATTERED(32) */ > > I know this is consistent with other command declarations in the scsi_debug > driver, but it seems weird to me to report to the initiator that only some > bits of the ADDITIONAL CDB LENGTH fields are supported (0x18)? From SPC-5: > > The CDB USAGE DATA field contains information about the CDB for the command > being queried. The first byte of the CDB USAGE DATA field shall contain the > operation code for the command being queried. If the command being queried > contains a service action, then that service action code shall be placed in > the CDB USAGE DATA field in the same location as the SERVICE ACTION field of > the command CDB. All other bytes of the CDB USAGE DATA field shall contain a > usage map for bits in the CDB for the command being queried. Given the opcode and service action for WRITE SCATTERED(32), if the ADDITIONAL CDB LENGTH is other than 0x18, then the command is in error. The mask with the best coverage on that is 0x18. It will catch any bits set that are clear in the corresponding mask position but not catch bits that are clear where the mask is set. So 0x19 will get caught as invalid but 0x10 won't. Attached is some output from a Seagate SAS SSD using the sg_opcodes utility. Note that the 5 variable length cdb_s are all 32 bytes long and have a mask of 0x18 for the ADDITIONAL CDB LENGTH. >> + lrdp = kzalloc(lbdof_blen, GFP_ATOMIC); >> + if (lrdp == NULL) { >> + mk_sense_buffer(scp, ILLEGAL_REQUEST, INSUFF_RES_ASC, >> + INSUFF_RES_ASCQ); >> + return illegal_condition_result; >> + } > > It seems weird to me to report a fatal error to the initiator if a memory > allocation fails? I think other SCSI LLDs return SCSI_MLQUEUE_HOST_BUSY if a > memory allocation fails. The scsi_debug driver plays the role of SCSI initiator and target connected via a virtual transport. If the underlying OS reports a resource error than I believe it is the implementer's choice whether to treat it as a initiator error or a target (logical unit) error. I chose the latter because the failure is in code that is roughly equivalent to the device server (inside a LU inside a target). The scsi_debug driver reports SCSI_MLQUEUE_HOST_BUSY in other contexts, both real out-of-resources situations and via error injection. Doug Gilbert --------------F19635AA4F38496310B72935 Content-Type: text/plain; charset=UTF-8; name="opcodes_m.txt" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="opcodes_m.txt" ICBTRUFHQVRFICAgU1QyMDBGTTAwNzMgICAgICAgQ0IwMgogIFBlcmlwaGVyYWwgZGV2aWNl IHR5cGU6IGRpc2sKCk9wY29kZSAgU2VydmljZSAgICBDREIgICAgTmFtZQooaGV4KSAgIGFj dGlvbihoKSAgc2l6ZSAgICAgICAKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KIDAwICAgICAgICAgICAgICAgICAgNiAgICBUZXN0IFVuaXQgUmVh ZHkKICAgICAgICBjZGIgdXNhZ2U6IDAwIDAwIDAwIDAwIDAwIDAwIAogMDEgICAgICAgICAg ICAgICAgICA2ICAgIFJlemVybyBVbml0CiAgICAgICAgY2RiIHVzYWdlOiAwMSAwMCAwMSAw MCBmZiAwMCAKIDAzICAgICAgICAgICAgICAgICAgNiAgICBSZXF1ZXN0IFNlbnNlCiAgICAg ICAgY2RiIHVzYWdlOiAwMyBlMSAwMCAwMCBmZiAwMCAKIDA0ICAgICAgICAgICAgICAgICAg NiAgICBGb3JtYXQgVW5pdAogICAgICAgIGNkYiB1c2FnZTogMDQgZmYgMDAgZmYgZmYgMDAg CiAwNyAgICAgICAgICAgICAgICAgIDYgICAgUmVhc3NpZ24gQmxvY2tzCiAgICAgICAgY2Ri IHVzYWdlOiAwNyAwMyAwMCAwMCAwMCAwMCAKIDA4ICAgICAgICAgICAgICAgICAgNiAgICBS ZWFkKDYpCiAgICAgICAgY2RiIHVzYWdlOiAwOCAxZiBmZiBmZiBmZiAwMCAKIDBhICAgICAg ICAgICAgICAgICAgNiAgICBXcml0ZSg2KQogICAgICAgIGNkYiB1c2FnZTogMGEgMWYgZmYg ZmYgZmYgMDAgCiAwYiAgICAgICAgICAgICAgICAgIDYgICAgU2Vlayg2KQogICAgICAgIGNk YiB1c2FnZTogMGIgMWYgZmYgZmYgMDAgMDAgCiAxMiAgICAgICAgICAgICAgICAgIDYgICAg SW5xdWlyeQogICAgICAgIGNkYiB1c2FnZTogMTIgZTEgZmYgZmYgZmYgMDAgCiAxNSAgICAg ICAgICAgICAgICAgIDYgICAgTW9kZSBzZWxlY3QoNikKICAgICAgICBjZGIgdXNhZ2U6IDE1 IDExIDAwIDAwIGZmIDAwIAogMTYgICAgICAgICAgICAgICAgICA2ICAgIFJlc2VydmUoNikK ICAgICAgICBjZGIgdXNhZ2U6IDE2IDFlIGZmIGZmIGZmIDAwIAogMTcgICAgICAgICAgICAg ICAgICA2ICAgIFJlbGVhc2UoNikKICAgICAgICBjZGIgdXNhZ2U6IDE3IDFlIGZmIDAwIDAw IDAwIAogMWEgICAgICAgICAgICAgICAgICA2ICAgIE1vZGUgc2Vuc2UoNikKICAgICAgICBj ZGIgdXNhZ2U6IDFhIDA4IGZmIGZmIGZmIDAwIAogMWIgICAgICAgICAgICAgICAgICA2ICAg IFN0YXJ0IHN0b3AgdW5pdAogICAgICAgIGNkYiB1c2FnZTogMWIgMDEgMDAgMGYgZjUgMDAg CiAxYyAgICAgICAgICAgICAgICAgIDYgICAgUmVjZWl2ZSBkaWFnbm9zdGljIHJlc3VsdHMK ICAgICAgICBjZGIgdXNhZ2U6IDFjIDAxIGZmIGZmIGZmIDAwIAogMWQgICAgICAgICAgICAg ICAgICA2ICAgIFNlbmQgZGlhZ25vc3RpYwogICAgICAgIGNkYiB1c2FnZTogMWQgZjcgMDAg ZmYgZmYgMDAgCiAyNSAgICAgICAgICAgICAgICAgMTAgICAgUmVhZCBjYXBhY2l0eSgxMCkK ICAgICAgICBjZGIgdXNhZ2U6IDI1IDAwIDdmIGZmIGZmIGZmIDAwIDAwIDAxIDAwIAogMjgg ICAgICAgICAgICAgICAgIDEwICAgIFJlYWQoMTApCiAgICAgICAgY2RiIHVzYWdlOiAyOCBm YSBmZiBmZiBmZiBmZiAwMCBmZiBmZiAwMCAKIDJhICAgICAgICAgICAgICAgICAxMCAgICBX cml0ZSgxMCkKICAgICAgICBjZGIgdXNhZ2U6IDJhIGZhIGZmIGZmIGZmIGZmIDAwIGZmIGZm IDAwIAogMmIgICAgICAgICAgICAgICAgIDEwICAgIFNlZWsoMTApCiAgICAgICAgY2RiIHVz YWdlOiAyYiAwMCBmZiBmZiBmZiBmZiAwMCAwMCAwMCAwMCAKIDJlICAgICAgICAgICAgICAg ICAxMCAgICBXcml0ZSBhbmQgdmVyaWZ5KDEwKQogICAgICAgIGNkYiB1c2FnZTogMmUgZjIg ZmYgZmYgZmYgZmYgMDAgZmYgZmYgMDAgCiAyZiAgICAgICAgICAgICAgICAgMTAgICAgVmVy aWZ5KDEwKQogICAgICAgIGNkYiB1c2FnZTogMmYgZjIgZmYgZmYgZmYgZmYgMDAgZmYgZmYg MDAgCiAzNSAgICAgICAgICAgICAgICAgMTAgICAgU3luY2hyb25pemUgY2FjaGUoMTApCiAg ICAgICAgY2RiIHVzYWdlOiAzNSAwNiBmZiBmZiBmZiBmZiAwMCBmZiBmZiAwMCAKIDM3ICAg ICAgICAgICAgICAgICAxMCAgICBSZWFkIGRlZmVjdCBkYXRhKDEwKQogICAgICAgIGNkYiB1 c2FnZTogMzcgMDAgMWYgMDAgMDAgMDAgMDAgZmYgZmYgMDAgCiAzYiAgICAgICAgMCAgICAg ICAgMTAgICAgV3JpdGUgYnVmZmVyLCBjb21iaW5lZCBoZWFkZXIgYW5kIGRhdGEgW29yIG11 bHRpcGxlIG1vZGVzXQogICAgICAgIGNkYiB1c2FnZTogM2IgMDAgZmYgZmYgZmYgZmYgZmYg ZmYgZmYgMDAgCiAzYiAgICAgICAgMiAgICAgICAgMTAgICAgV3JpdGUgYnVmZmVyLCBkYXRh CiAgICAgICAgY2RiIHVzYWdlOiAzYiAwMiBmZiBmZiBmZiBmZiBmZiBmZiBmZiAwMCAKIDNi ICAgICAgICA0ICAgICAgICAxMCAgICBXcml0ZSBidWZmZXIsIGRvd25sb2FkIG1pY3JvY29k ZSBhbmQgYWN0aXZhdGUKICAgICAgICBjZGIgdXNhZ2U6IDNiIDA0IGZmIGZmIGZmIGZmIGZm IGZmIGZmIDAwIAogM2IgICAgICAgIDUgICAgICAgIDEwICAgIFdyaXRlIGJ1ZmZlciwgZG93 bmxvYWQgbWljcm9jb2RlLCBzYXZlLCBhbmQgYWN0aXZhdGUKICAgICAgICBjZGIgdXNhZ2U6 IDNiIDA1IGZmIGZmIGZmIGZmIGZmIGZmIGZmIDAwIAogM2IgICAgICAgIDYgICAgICAgIDEw ICAgIFdyaXRlIGJ1ZmZlciwgZG93bmxvYWQgbWljcm9jb2RlIHdpdGggb2Zmc2V0cyBhbmQg YWN0aXZhdGUKICAgICAgICBjZGIgdXNhZ2U6IDNiIDA2IGZmIGZmIGZmIGZmIGZmIGZmIGZm IDAwIAogM2IgICAgICAgIDcgICAgICAgIDEwICAgIFdyaXRlIGJ1ZmZlciwgZG93bmxvYWQg bWljcm9jb2RlIHdpdGggb2Zmc2V0cywgc2F2ZSwgYW5kIGFjdGl2YXRlCiAgICAgICAgY2Ri IHVzYWdlOiAzYiAwNyBmZiBmZiBmZiBmZiBmZiBmZiBmZiAwMCAKIDNiICAgICAgICBhICAg ICAgICAxMCAgICBXcml0ZSBidWZmZXIsIHdyaXRlIGRhdGEgdG8gZWNobyBidWZmZXIKICAg ICAgICBjZGIgdXNhZ2U6IDNiIDBhIGZmIGZmIGZmIGZmIGZmIGZmIGZmIDAwIAogM2IgICAg ICAgIGQgICAgICAgIDEwICAgIFdyaXRlIGJ1ZmZlciwgZG93bmxvYWQgbWljcm9jb2RlIHdp dGggb2Zmc2V0cywgc2VsZWN0IGFjdGl2YXRpb24gZXZlbnRzLCBzYXZlIGFuZCBkZWZlciBh Y3RpdmF0ZQogICAgICAgIGNkYiB1c2FnZTogM2IgMGQgZmYgZmYgZmYgZmYgZmYgZmYgZmYg MDAgCiAzYiAgICAgICAgZSAgICAgICAgMTAgICAgV3JpdGUgYnVmZmVyLCBkb3dubG9hZCBt aWNyb2NvZGUgd2l0aCBvZmZzZXRzLCBzYXZlIGFuZCBkZWZlciBhY3RpdmF0ZQogICAgICAg IGNkYiB1c2FnZTogM2IgMGUgZmYgZmYgZmYgZmYgZmYgZmYgZmYgMDAgCiAzYiAgICAgICAg ZiAgICAgICAgMTAgICAgV3JpdGUgYnVmZmVyLCBhY3RpdmF0ZSBkZWZlcnJlZCBtaWNyb2Nv ZGUKICAgICAgICBjZGIgdXNhZ2U6IDNiIDBmIGZmIGZmIGZmIGZmIGZmIGZmIGZmIDAwIAog M2IgICAgICAgMWEgICAgICAgIDEwICAgIFdyaXRlIGJ1ZmZlciwgZW5hYmxlIGV4cGFuZGVy IGNvbW1zIHByb3RvY29sIGFuZCBlY2hvIGJ1ZmZlcgogICAgICAgIGNkYiB1c2FnZTogM2Ig MWEgZmYgZmYgZmYgZmYgZmYgZmYgZmYgMDAgCiAzYiAgICAgICAxYyAgICAgICAgMTAgICAg V3JpdGUgYnVmZmVyLCBkb3dubG9hZCBhcHBsaWNhdGlvbiBjbGllbnQgZXJyb3IgaGlzdG9y eQogICAgICAgIGNkYiB1c2FnZTogM2IgMWMgZmYgZmYgZmYgZmYgZmYgZmYgZmYgMDAgCiAz YyAgICAgICAgMCAgICAgICAgMTAgICAgUmVhZCBidWZmZXIsIGNvbWJpbmVkIGhlYWRlciBh bmQgZGF0YSBbb3IgbXVsdGlwbGUgbW9kZXNdCiAgICAgICAgY2RiIHVzYWdlOiAzYyAwMCBm ZiBmZiBmZiBmZiBmZiBmZiBmZiAwMCAKIDNjICAgICAgICAyICAgICAgICAxMCAgICBSZWFk IGJ1ZmZlciwgZGF0YQogICAgICAgIGNkYiB1c2FnZTogM2MgMDIgZmYgZmYgZmYgZmYgZmYg ZmYgZmYgMDAgCiAzYyAgICAgICAgMyAgICAgICAgMTAgICAgUmVhZCBidWZmZXIsIGRlc2Ny aXB0b3IKICAgICAgICBjZGIgdXNhZ2U6IDNjIDAzIGZmIGZmIGZmIGZmIGZmIGZmIGZmIDAw IAogM2MgICAgICAgIGEgICAgICAgIDEwICAgIFJlYWQgYnVmZmVyLCByZWFkIGRhdGEgZnJv bSBlY2hvIGJ1ZmZlcgogICAgICAgIGNkYiB1c2FnZTogM2MgMGEgZmYgZmYgZmYgZmYgZmYg ZmYgZmYgMDAgCiAzYyAgICAgICAgYiAgICAgICAgMTAgICAgUmVhZCBidWZmZXIsIGVjaG8g YnVmZmVyIGRlc2NyaXB0b3IKICAgICAgICBjZGIgdXNhZ2U6IDNjIDBiIGZmIGZmIGZmIGZm IGZmIGZmIGZmIDAwIAogM2MgICAgICAgMWMgICAgICAgIDEwICAgIFJlYWQgYnVmZmVyLCBl cnJvciBoaXN0b3J5CiAgICAgICAgY2RiIHVzYWdlOiAzYyAxYyBmZiBmZiBmZiBmZiBmZiBm ZiBmZiAwMCAKIDNlICAgICAgICAgICAgICAgICAxMCAgICBSZWFkIGxvbmcoMTApCiAgICAg ICAgY2RiIHVzYWdlOiAzZSAwNiBmZiBmZiBmZiBmZiAwMCBmZiBmZiAwMCAKIDNmICAgICAg ICAgICAgICAgICAxMCAgICBXcml0ZSBsb25nKDEwKQogICAgICAgIGNkYiB1c2FnZTogM2Yg ZTAgZmYgZmYgZmYgZmYgMDAgZmYgZmYgMDAgCiA0MSAgICAgICAgICAgICAgICAgMTAgICAg V3JpdGUgc2FtZSgxMCkKICAgICAgICBjZGIgdXNhZ2U6IDQxIGUyIGZmIGZmIGZmIGZmIDAw IGZmIGZmIDAwIAogNDIgICAgICAgICAgICAgICAgIDEwICAgIFVubWFwCiAgICAgICAgY2Ri IHVzYWdlOiA0MiAwMCAwMCAwMCAwMCAwMCAxZiBmZiBmZiAwMCAKIDQ4ICAgICAgICAyICAg ICAgICAxMCAgICBTYW5pdGl6ZSwgYmxvY2sgZXJhc2UKICAgICAgICBjZGIgdXNhZ2U6IDQ4 IDAyIDAwIDAwIDAwIDAwIDAwIGZmIGZmIDAwIAogNDggICAgICAgIDMgICAgICAgIDEwICAg IFNhbml0aXplLCBjcnlwdG9ncmFwaGljIGVyYXNlCiAgICAgICAgY2RiIHVzYWdlOiA0OCA4 MyAwMCAwMCAwMCAwMCAwMCBmZiBmZiAwMCAKIDQ4ICAgICAgIDFmICAgICAgICAxMCAgICBT YW5pdGl6ZSwgZXhpdCBmYWlsdXJlIG1vZGUKICAgICAgICBjZGIgdXNhZ2U6IDQ4IDlmIDAw IDAwIDAwIDAwIDAwIGZmIGZmIDAwIAogNGMgICAgICAgICAgICAgICAgIDEwICAgIExvZyBz ZWxlY3QKICAgICAgICBjZGIgdXNhZ2U6IDRjIDAzIGMwIDAwIDAwIDAwIDAwIGZmIGZmIDAw IAogNGQgICAgICAgICAgICAgICAgIDEwICAgIExvZyBzZW5zZQogICAgICAgIGNkYiB1c2Fn ZTogNGQgMDMgZmYgMDAgMDAgZmYgZmYgZmYgZmYgMDAgCiA1NSAgICAgICAgICAgICAgICAg MTAgICAgTW9kZSBzZWxlY3QoMTApCiAgICAgICAgY2RiIHVzYWdlOiA1NSAxMSAwMCAwMCAw MCAwMCAwMCBmZiBmZiAwMCAKIDU2ICAgICAgICAgICAgICAgICAxMCAgICBSZXNlcnZlKDEw KQogICAgICAgIGNkYiB1c2FnZTogNTYgMTIgZmYgMDAgMDAgMDAgMDAgZmYgZmYgMDAgCiA1 NyAgICAgICAgICAgICAgICAgMTAgICAgUmVsZWFzZSgxMCkKICAgICAgICBjZGIgdXNhZ2U6 IDU3IDEyIDAwIDAwIDAwIDAwIDAwIGZmIGZmIDAwIAogNWEgICAgICAgICAgICAgICAgIDEw ICAgIE1vZGUgc2Vuc2UoMTApCiAgICAgICAgY2RiIHVzYWdlOiA1YSAxOCBmZiBmZiAwMCAw MCAwMCBmZiBmZiAwMCAKIDVlICAgICAgICAwICAgICAgICAxMCAgICBQZXJzaXN0ZW50IHJl c2VydmUgaW4sIHJlYWQga2V5cwogICAgICAgIGNkYiB1c2FnZTogNWUgMDAgMDAgMDAgMDAg MDAgMDAgZmYgZmYgMDAgCiA1ZSAgICAgICAgMSAgICAgICAgMTAgICAgUGVyc2lzdGVudCBy ZXNlcnZlIGluLCByZWFkIHJlc2VydmF0aW9uCiAgICAgICAgY2RiIHVzYWdlOiA1ZSAwMSAw MCAwMCAwMCAwMCAwMCBmZiBmZiAwMCAKIDVlICAgICAgICAyICAgICAgICAxMCAgICBQZXJz aXN0ZW50IHJlc2VydmUgaW4sIHJlcG9ydCBjYXBhYmlsaXRpZXMKICAgICAgICBjZGIgdXNh Z2U6IDVlIDAyIDAwIDAwIDAwIDAwIDAwIGZmIGZmIDAwIAogNWUgICAgICAgIDMgICAgICAg IDEwICAgIFBlcnNpc3RlbnQgcmVzZXJ2ZSBpbiwgcmVhZCBmdWxsIHN0YXR1cwogICAgICAg IGNkYiB1c2FnZTogNWUgMDMgMDAgMDAgMDAgMDAgMDAgZmYgZmYgMDAgCiA1ZiAgICAgICAg MCAgICAgICAgMTAgICAgUGVyc2lzdGVudCByZXNlcnZlIG91dCwgcmVnaXN0ZXIKICAgICAg ICBjZGIgdXNhZ2U6IDVmIDAwIGZmIDAwIDAwIDAwIDAwIGZmIGZmIDAwIAogNWYgICAgICAg IDEgICAgICAgIDEwICAgIFBlcnNpc3RlbnQgcmVzZXJ2ZSBvdXQsIHJlc2VydmUKICAgICAg ICBjZGIgdXNhZ2U6IDVmIDAxIGZmIDAwIDAwIDAwIDAwIGZmIGZmIDAwIAogNWYgICAgICAg IDIgICAgICAgIDEwICAgIFBlcnNpc3RlbnQgcmVzZXJ2ZSBvdXQsIHJlbGVhc2UKICAgICAg ICBjZGIgdXNhZ2U6IDVmIDAyIGZmIDAwIDAwIDAwIDAwIGZmIGZmIDAwIAogNWYgICAgICAg IDMgICAgICAgIDEwICAgIFBlcnNpc3RlbnQgcmVzZXJ2ZSBvdXQsIGNsZWFyCiAgICAgICAg Y2RiIHVzYWdlOiA1ZiAwMyBmZiAwMCAwMCAwMCAwMCBmZiBmZiAwMCAKIDVmICAgICAgICA0 ICAgICAgICAxMCAgICBQZXJzaXN0ZW50IHJlc2VydmUgb3V0LCBwcmVlbXB0CiAgICAgICAg Y2RiIHVzYWdlOiA1ZiAwNCBmZiAwMCAwMCAwMCAwMCBmZiBmZiAwMCAKIDVmICAgICAgICA1 ICAgICAgICAxMCAgICBQZXJzaXN0ZW50IHJlc2VydmUgb3V0LCBwcmVlbXB0IGFuZCBhYm9y dAogICAgICAgIGNkYiB1c2FnZTogNWYgMDUgZmYgMDAgMDAgMDAgMDAgZmYgZmYgMDAgCiA1 ZiAgICAgICAgNiAgICAgICAgMTAgICAgUGVyc2lzdGVudCByZXNlcnZlIG91dCwgcmVnaXN0 ZXIgYW5kIGlnbm9yZSBleGlzdGluZyBrZXkKICAgICAgICBjZGIgdXNhZ2U6IDVmIDA2IGZm IDAwIDAwIDAwIDAwIGZmIGZmIDAwIAogNWYgICAgICAgIDcgICAgICAgIDEwICAgIFBlcnNp c3RlbnQgcmVzZXJ2ZSBvdXQsIHJlZ2lzdGVyIGFuZCBtb3ZlCiAgICAgICAgY2RiIHVzYWdl OiA1ZiAwNyBmZiAwMCAwMCAwMCAwMCBmZiBmZiAwMCAKIDdmICAgICAgICA5ICAgICAgICAz MiAgICBSZWFkKDMyKQogICAgICAgIGNkYiB1c2FnZTogN2YgMDkgMDAgMDAgMDAgMDAgMWYg MTggMDAgZmYgZmEgMDAgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYg ZmYgZmYgZmYgZmYgZmYgZmYgZmYgCiA3ZiAgICAgICAgYSAgICAgICAgMzIgICAgVmVyaWZ5 KDMyKQogICAgICAgIGNkYiB1c2FnZTogN2YgMGEgMDAgMDAgMDAgMDAgMWYgMTggMDAgZmYg ZjIgMDAgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYg ZmYgZmYgZmYgZmYgCiA3ZiAgICAgICAgYiAgICAgICAgMzIgICAgV3JpdGUoMzIpCiAgICAg ICAgY2RiIHVzYWdlOiA3ZiAwYiAwMCAwMCAwMCAwMCAxZiAxOCAwMCBmZiBmYSAwMCBmZiBm ZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBm ZiAKIDdmICAgICAgICBjICAgICAgICAzMiAgICBXcml0ZSBhbiB2ZXJpZnkoMzIpCiAgICAg ICAgY2RiIHVzYWdlOiA3ZiAwYyAwMCAwMCAwMCAwMCAxZiAxOCAwMCBmZiBmMiAwMCBmZiBm ZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBm ZiAKIDdmICAgICAgICBkICAgICAgICAzMiAgICBXcml0ZSBzYW1lKDMyKQogICAgICAgIGNk YiB1c2FnZTogN2YgMGQgMDAgMDAgMDAgMDAgMWYgMTggMDAgZmYgZmUgMDAgZmYgZmYgZmYg ZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgCiA4 OCAgICAgICAgICAgICAgICAgMTYgICAgUmVhZCgxNikKICAgICAgICBjZGIgdXNhZ2U6IDg4 IGZhIGZmIGZmIGZmIGZmIGZmIGZmIGZmIGZmIDAwIDAwIGZmIGZmIDAwIDAwIAogOGEgICAg ICAgICAgICAgICAgIDE2ICAgIFdyaXRlKDE2KQogICAgICAgIGNkYiB1c2FnZTogOGEgZmEg ZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgMDAgMDAgZmYgZmYgMDAgMDAgCiA4ZSAgICAgICAg ICAgICAgICAgMTYgICAgV3JpdGUgYW5kIHZlcmlmeSgxNikKICAgICAgICBjZGIgdXNhZ2U6 IDhlIGYyIGZmIGZmIGZmIGZmIGZmIGZmIGZmIGZmIDAwIDAwIGZmIGZmIDAwIDAwIAogOGYg ICAgICAgICAgICAgICAgIDE2ICAgIFZlcmlmeSgxNikKICAgICAgICBjZGIgdXNhZ2U6IDhm IGYyIGZmIGZmIGZmIGZmIGZmIGZmIGZmIGZmIDAwIDAwIGZmIGZmIDAwIDAwIAogOTEgICAg ICAgICAgICAgICAgIDE2ICAgIFN5bmNocm9uaXplIGNhY2hlKDE2KQogICAgICAgIGNkYiB1 c2FnZTogOTEgMDYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgMDAgMDAgZmYgZmYgMDAgMDAg CiA5MyAgICAgICAgICAgICAgICAgMTYgICAgV3JpdGUgc2FtZSgxNikKICAgICAgICBjZGIg dXNhZ2U6IDkzIGVhIGZmIGZmIGZmIGZmIGZmIGZmIGZmIGZmIGZmIGZmIGZmIGZmIDAwIDAw IAogOWUgICAgICAgMTAgICAgICAgIDE2ICAgIFJlYWQgY2FwYWNpdHkoMTYpCiAgICAgICAg Y2RiIHVzYWdlOiA5ZSAxMCBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiAwMCAwMCBmZiBmZiAw MSAwMCAKIDllICAgICAgIDExICAgICAgICAxNiAgICBSZWFkIGxvbmcoMTYpCiAgICAgICAg Y2RiIHVzYWdlOiA5ZSAxMSBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiAwMCAwMCBmZiBmZiAw MyAwMCAKIDlmICAgICAgIDExICAgICAgICAxNiAgICBXcml0ZSBsb25nKDE2KQogICAgICAg IGNkYiB1c2FnZTogOWYgZjEgZmYgZmYgZmYgZmYgZmYgZmYgZmYgZmYgMDAgMDAgZmYgZmYg MDAgMDAgCiBhMCAgICAgICAgICAgICAgICAgMTIgICAgUmVwb3J0IGx1bnMKICAgICAgICBj ZGIgdXNhZ2U6IGEwIGUwIDAwIDAwIDAwIDAwIGZmIGZmIGZmIGZmIDAwIDAwIAogYTIgICAg ICAgICAgICAgICAgIDEyICAgIFNlY3VyaXR5IHByb3RvY29sIGluCiAgICAgICAgY2RiIHVz YWdlOiBhMiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiAwMCAwMCAKIGEzICAgICAgICA1 ICAgICAgICAxMiAgICBSZXBvcnQgaWRlbnRpZnlpbmcgaW5mb3JtYXRpb24KICAgICAgICBj ZGIgdXNhZ2U6IGEzIDA1IDAwIDAwIDAwIDAwIGZmIGZmIGZmIGZmIDAwIDAwIAogYTMgICAg ICAgIGMgICAgICAgIDEyICAgIFJlcG9ydCBzdXBwb3J0ZWQgb3BlcmF0aW9uIGNvZGVzCiAg ICAgICAgY2RiIHVzYWdlOiBhMyAwYyAwNyBmZiBmZiBmZiBmZiBmZiBmZiBmZiAwMCAwMCAK IGEzICAgICAgICBkICAgICAgICAxMiAgICBSZXBvcnQgc3VwcG9ydGVkIHRhc2sgbWFuYWdl bWVudCBmdW5jdGlvbnMKICAgICAgICBjZGIgdXNhZ2U6IGEzIDBkIDA3IGZmIGZmIGZmIGZm IGZmIGZmIGZmIDAwIDAwIAogYTQgICAgICAgIDYgICAgICAgIDEyICAgIFNldCBpZGVudGlm eWluZyBpbmZvcm1hdGlvbgogICAgICAgIGNkYiB1c2FnZTogYTQgMDYgMDAgMDAgMDAgMDAg ZmYgZmYgZmYgZmYgMDAgMDAgCiBhNCAgICAgICAgZiAgICAgICAgMTIgICAgU2V0IHRpbWVz dGFtcAogICAgICAgIGNkYiB1c2FnZTogYTQgMGYgMDAgMDAgMDAgMDAgZmYgZmYgZmYgZmYg MDAgMDAgCiBiNSAgICAgICAgICAgICAgICAgMTIgICAgU2VjdXJpdHkgcHJvdG9jb2wgb3V0 CiAgICAgICAgY2RiIHVzYWdlOiBiNSBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiBmZiAwMCAw MCAKIGI3ICAgICAgICAgICAgICAgICAxMiAgICBSZWFkIGRlZmVjdCBkYXRhKDEyKQogICAg ICAgIGNkYiB1c2FnZTogYjcgMWYgMDAgMDAgMDAgMDAgZmYgZmYgZmYgZmYgMDAgMDAgCiBl MCAgICAgICAgICAgICAgICAgMTAgICAgVmVuZG9yIHNwZWNpZmljIFsweGUwXQogICAgICAg IGNkYiB1c2FnZTogZTAgZmYgZmYgZmYgZmYgMDAgZmYgZmYgMDAgMDAgCiBlMSAgICAgICAg ICAgICAgICAgMTAgICAgVmVuZG9yIHNwZWNpZmljIFsweGUxXQogICAgICAgIGNkYiB1c2Fn ZTogZTEgZmYgZmYgZmYgZmYgMDMgZmYgZmYgMDAgMDAgCiBlMiAgICAgICAgICAgICAgICAg MTAgICAgVmVuZG9yIHNwZWNpZmljIFsweGUyXQogICAgICAgIGNkYiB1c2FnZTogZTIgZmYg ZmYgZmYgZmYgMDAgZmYgZmYgMDAgMDAgCiBlNiAgICAgICAgICAgICAgICAgMTAgICAgVmVu ZG9yIHNwZWNpZmljIFsweGU2XQogICAgICAgIGNkYiB1c2FnZTogZTYgZmYgMWYgZmYgZmYg ZmYgZmYgZmYgZmYgMDAgCiBmNyAgICAgICAgICAgICAgICAgMTAgICAgVmVuZG9yIHNwZWNp ZmljIFsweGY3XQogICAgICAgIGNkYiB1c2FnZTogZjcgZmUgZmYgZmYgZmYgZmYgZmUgZmYg ZmYgMDAgCg== --------------F19635AA4F38496310B72935--