Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1p4OSX-0001iX-0I for pgsql-hackers@arkaria.postgresql.org; Sun, 11 Dec 2022 15:41:45 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1p4OSV-0006EN-PR for pgsql-hackers@arkaria.postgresql.org; Sun, 11 Dec 2022 15:41:43 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1p4OSV-0006EB-Ds for pgsql-hackers@lists.postgresql.org; Sun, 11 Dec 2022 15:41:43 +0000 Received: from mail-ot1-x334.google.com ([2607:f8b0:4864:20::334]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1p4OST-0003tG-0Z for pgsql-hackers@lists.postgresql.org; Sun, 11 Dec 2022 15:41:43 +0000 Received: by mail-ot1-x334.google.com with SMTP id x25-20020a056830115900b00670932eff32so438523otq.3 for ; Sun, 11 Dec 2022 07:41:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=wooFWCjfCITSYNa/NPVx2DTw8CTt+Ilq9cvHXW96fOQ=; b=U12kbioiMv0kc8O77WWcMArKthWx3lGFIJ8ne4iBHGMlo0/V71aNJUD2Lrnbdx8WYv OFM2TzGc/BUWq+LyJwLWM+AP4wrqDUzBEzYKnFN4WlvauJV6FxQJuFhNBo9OxxT2TPNr UDt+/ToOLJ4e6RnJc0p5BycOMD7QTHb6nfrFAXl06kHZSIWwbKA8CVgXK/TwFRaSkrm7 0F2dDyEyaD9DseNNuy7qBknU5zYm0vBj3z/QHheOWy3goYqsa2+VJtxuyhsVC6ETgiKn ctCUvBam1JdkFDZpNzP2x8CLYVQlI6qL6DinjCs5GdNOSiF5OeK1Wj/lDH0ySEw/9KAo 9Eqw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=wooFWCjfCITSYNa/NPVx2DTw8CTt+Ilq9cvHXW96fOQ=; b=KKbxF5i1nTolWLa/FBWcc4ZWvEvdSGfNedRpcs02jumgYOtTeC2ctFCAii8rF6U3ms A/ss7np+dBEfczRVAvRSzPfD93sQCRef8DGPmdqTJe/3rm6wBNPwKiD+YOJs9OwLExbQ RVq2+gBc1dk5mmULH/5RBT+nRuPTpYA20eK1OayyI7dRFHvJLbiaLuNuuTT24g3IEHwD tONc2x0b/edganA8s60gh0MC0cWJsUWRLImqHSyfJAL+3bBls9A2yF+s3JhHtpiAxdVU ex496fECb2AYIvbH2MDXXWHkaGIVbeXZCTmBkDZxGoI9/aWZA8UDfuD8wdj4OjG2/7rr 1t5Q== X-Gm-Message-State: ANoB5plgBN1OzLpQhBx8P6nYgw3cJYHT6hEvaOzYQJaoL238BiE4SQ80 fjjRXlhy+OQwGDCNyjyRlomeKXNLwxtZoxtjOiKKH18= X-Google-Smtp-Source: AA0mqf7RwUkK1AfOpDUxPQifjNziRf/aoaEj96J4Z5ohGCMTJC8FfnqJZzSgns0J6XQNzam3fXx/LpiVgmTqJkN2as4= X-Received: by 2002:a05:6830:610e:b0:66e:34d1:2088 with SMTP id ca14-20020a056830610e00b0066e34d12088mr29126673otb.149.1670773298791; Sun, 11 Dec 2022 07:41:38 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Joseph Koshakow Date: Sun, 11 Dec 2022 10:41:27 -0500 Message-ID: Subject: Re: Date-Time dangling unit fix To: PostgreSQL Hackers Content-Type: multipart/mixed; boundary="000000000000f9b00c05ef8f38b0" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000f9b00c05ef8f38b0 Content-Type: text/plain; charset="UTF-8" On Sun, Dec 11, 2022 at 10:29 AM Joseph Koshakow wrote: > > Hi all, > > Attached is a patch to fix a parsing error for date-time types that > allow dangling units in the input. For example, > `date '1995-08-06 m y d'` was considered a valid date and the dangling > units were ignored. > > Intervals also suffer from a similar issue, but the attached patch > doesn't fix that issue. For example, > `interval '1 day second month 6 hours days years ago'` is parsed as a > valid interval with -1 days and -6 hours. I'm hoping to fix that in a > later patch, but it will likely be more complicated than the other > date-time fixes. > > - Joe Koshakow I think I sent that to the wrong email address. --000000000000f9b00c05ef8f38b0 Content-Type: text/x-patch; charset="US-ASCII"; name="v1-0001-Handle-dangling-units-in-date-time-input.patch" Content-Disposition: attachment; filename="v1-0001-Handle-dangling-units-in-date-time-input.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lbjj9bx90 RnJvbSBmYmNmMzkyMTFmYzdhMzc5ZWEwMjExNjAyOTg2MDQ2OTQzODNkNTZjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKb3NlcGggS29zaGFrb3cgPGtvc2h5NDRAZ21haWwuY29tPgpE YXRlOiBTYXQsIDEwIERlYyAyMDIyIDE4OjU5OjI2IC0wNTAwClN1YmplY3Q6IFtQQVRDSF0gSGFu ZGxlIGRhbmdsaW5nIHVuaXRzIGluIGRhdGUtdGltZSBpbnB1dAoKRGVjb2RlRGF0ZVRpbWUgYW5k IERlY29kZVRpbWVPbmx5IGFsbG93ZWQgZGFuZ2xpbmcgdW5pdCB0eXBlcyBvbiBpbnB1dAp3aXRo b3V0IHJldHVybmluZyBhbiBlcnJvci4gRm9yIGV4YW1wbGUsIGBkYXRlICcxOTk1LTA4LTA2IG0g eSBkJ2Agd2FzCmNvbnNpZGVyZWQgYSB2YWxpZCBkYXRlIGFuZCB0aGUgZGFuZ2xpbmcgdW5pdHMg d2VyZSBpZ25vcmVkLiBUaGlzCmNvbW1pdCBmaXhlcyB0aGlzIGlzc3VlIHNvIGFuIGVycm9yIGlz IHJldHVybmVkIGluc3RlYWQuCi0tLQogc3JjL2JhY2tlbmQvdXRpbHMvYWR0L2RhdGV0aW1lLmMg ICAgICAgICAgfCA4ICsrKysrKysrCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2RhdGUub3V0 ICAgICAgICB8IDUgKysrKysKIHNyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdGltZS5vdXQgICAg ICAgIHwgNSArKysrKwogc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC90aW1lc3RhbXAub3V0ICAg fCA1ICsrKysrCiBzcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3RpbWVzdGFtcHR6Lm91dCB8IDUg KysrKysKIHNyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdGltZXR6Lm91dCAgICAgIHwgNSArKysr Kwogc3JjL3Rlc3QvcmVncmVzcy9zcWwvZGF0ZS5zcWwgICAgICAgICAgICAgfCAzICsrKwogc3Jj L3Rlc3QvcmVncmVzcy9zcWwvdGltZS5zcWwgICAgICAgICAgICAgfCAzICsrKwogc3JjL3Rlc3Qv cmVncmVzcy9zcWwvdGltZXN0YW1wLnNxbCAgICAgICAgfCAzICsrKwogc3JjL3Rlc3QvcmVncmVz cy9zcWwvdGltZXN0YW1wdHouc3FsICAgICAgfCAzICsrKwogc3JjL3Rlc3QvcmVncmVzcy9zcWwv dGltZXR6LnNxbCAgICAgICAgICAgfCAzICsrKwogMTEgZmlsZXMgY2hhbmdlZCwgNDggaW5zZXJ0 aW9ucygrKQoKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9kYXRldGltZS5jIGIv c3JjL2JhY2tlbmQvdXRpbHMvYWR0L2RhdGV0aW1lLmMKaW5kZXggYjViMTE3YThjYS4uYTk4NWQx YjZlYSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRpbHMvYWR0L2RhdGV0aW1lLmMKKysrIGIv c3JjL2JhY2tlbmQvdXRpbHMvYWR0L2RhdGV0aW1lLmMKQEAgLTE1NjYsNiArMTU2NiwxMCBAQCBE ZWNvZGVEYXRlVGltZShjaGFyICoqZmllbGQsIGludCAqZnR5cGUsIGludCBuZiwKIAkJZm1hc2sg fD0gdG1hc2s7CiAJfQkJCQkJCQkvKiBlbmQgbG9vcCBvdmVyIGZpZWxkcyAqLwogCisJLyogcHJl Zml4IHR5cGUgd2FzIGRhbmdsaW5nIGFuZCBuZXZlciBoYW5kbGVkICovCisJaWYgKHB0eXBlICE9 IDApCisJCXJldHVybiBEVEVSUl9CQURfRk9STUFUOworCiAJLyogZG8gZmluYWwgY2hlY2tpbmcv YWRqdXN0bWVudCBvZiBZL00vRCBmaWVsZHMgKi8KIAlkdGVyciA9IFZhbGlkYXRlRGF0ZShmbWFz aywgaXNqdWxpYW4sIGlzMmRpZ2l0cywgYmMsIHRtKTsKIAlpZiAoZHRlcnIpCkBAIC0yNDE1LDYg KzI0MTksMTAgQEAgRGVjb2RlVGltZU9ubHkoY2hhciAqKmZpZWxkLCBpbnQgKmZ0eXBlLCBpbnQg bmYsCiAJCWZtYXNrIHw9IHRtYXNrOwogCX0JCQkJCQkJLyogZW5kIGxvb3Agb3ZlciBmaWVsZHMg Ki8KIAorCS8qIHByZWZpeCB0eXBlIHdhcyBkYW5nbGluZyBhbmQgbmV2ZXIgaGFuZGxlZCAqLwor CWlmIChwdHlwZSAhPSAwKQorCQlyZXR1cm4gRFRFUlJfQkFEX0ZPUk1BVDsKKwogCS8qIGRvIGZp bmFsIGNoZWNraW5nL2FkanVzdG1lbnQgb2YgWS9NL0QgZmllbGRzICovCiAJZHRlcnIgPSBWYWxp ZGF0ZURhdGUoZm1hc2ssIGlzanVsaWFuLCBpczJkaWdpdHMsIGJjLCB0bSk7CiAJaWYgKGR0ZXJy KQpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9kYXRlLm91dCBiL3NyYy90 ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvZGF0ZS5vdXQKaW5kZXggZjhmODNlNDBlOS4uZmVjNDY2YTU5 NCAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9kYXRlLm91dAorKysgYi9z cmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2RhdGUub3V0CkBAIC0xNTI2LDMgKzE1MjYsOCBAQCBz ZWxlY3QgbWFrZV90aW1lKDEwLCA1NSwgMTAwLjEpOwogRVJST1I6ICB0aW1lIGZpZWxkIHZhbHVl IG91dCBvZiByYW5nZTogMTA6NTU6MTAwLjEKIHNlbGVjdCBtYWtlX3RpbWUoMjQsIDAsIDIuMSk7 CiBFUlJPUjogIHRpbWUgZmllbGQgdmFsdWUgb3V0IG9mIHJhbmdlOiAyNDowMDoyLjEKKy0tIHRl c3QgZXJyb3Igb24gZGFuZ2xpbmcgdW5pdHMKK1NFTEVDVCBkYXRlICcxOTk1LTA4LTA2IG0nOwor RVJST1I6ICBpbnZhbGlkIGlucHV0IHN5bnRheCBmb3IgdHlwZSBkYXRlOiAiMTk5NS0wOC0wNiBt IgorTElORSAxOiBTRUxFQ1QgZGF0ZSAnMTk5NS0wOC0wNiBtJzsKKyAgICAgICAgICAgICAgICAg ICAgXgpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC90aW1lLm91dCBiL3Ny Yy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdGltZS5vdXQKaW5kZXggYTQ0Y2FlZGVkZC4uNWY3MDU4 ZWNhOCAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC90aW1lLm91dAorKysg Yi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3RpbWUub3V0CkBAIC0yMjksMyArMjI5LDggQEAg U0VMRUNUIGRhdGVfcGFydCgnZXBvY2gnLCAgICAgICBUSU1FICcyMDIwLTA1LTI2IDEzOjMwOjI1 LjU3NTQwMScpOwogIDQ4NjI1LjU3NTQwMQogKDEgcm93KQogCistLSB0ZXN0IGVycm9yIG9uIGRh bmdsaW5nIHVuaXRzCitTRUxFQ1QgdGltZSAnMTI6MzA6MTUgZCc7CitFUlJPUjogIGludmFsaWQg aW5wdXQgc3ludGF4IGZvciB0eXBlIHRpbWU6ICIxMjozMDoxNSBkIgorTElORSAxOiBTRUxFQ1Qg dGltZSAnMTI6MzA6MTUgZCc7CisgICAgICAgICAgICAgICAgICAgIF4KZGlmZiAtLWdpdCBhL3Ny Yy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvdGltZXN0YW1wLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3Mv ZXhwZWN0ZWQvdGltZXN0YW1wLm91dAppbmRleCBiZTY2Mjc0NzM4Li42ZmNlNzMxOWViIDEwMDY0 NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3RpbWVzdGFtcC5vdXQKKysrIGIvc3Jj L3Rlc3QvcmVncmVzcy9leHBlY3RlZC90aW1lc3RhbXAub3V0CkBAIC0yMTEwLDMgKzIxMTAsOCBA QCBzZWxlY3QgKiBmcm9tIGdlbmVyYXRlX3NlcmllcygnMjAyMC0wMS0wMSAwMDowMCc6OnRpbWVz dGFtcCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcyMDIwLTAxLTAyIDAzOjAwJzo6 dGltZXN0YW1wLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJzAgaG91cic6OmludGVy dmFsKTsKIEVSUk9SOiAgc3RlcCBzaXplIGNhbm5vdCBlcXVhbCB6ZXJvCistLSB0ZXN0IGVycm9y IG9uIGRhbmdsaW5nIHVuaXRzCitTRUxFQ1QgdGltZXN0YW1wICcxOTk1LTA4LTA2IDEyOjMwOjE1 IHknOworRVJST1I6ICBpbnZhbGlkIGlucHV0IHN5bnRheCBmb3IgdHlwZSB0aW1lc3RhbXA6ICIx OTk1LTA4LTA2IDEyOjMwOjE1IHkiCitMSU5FIDE6IFNFTEVDVCB0aW1lc3RhbXAgJzE5OTUtMDgt MDYgMTI6MzA6MTUgeSc7CisgICAgICAgICAgICAgICAgICAgICAgICAgXgpkaWZmIC0tZ2l0IGEv c3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC90aW1lc3RhbXB0ei5vdXQgYi9zcmMvdGVzdC9yZWdy ZXNzL2V4cGVjdGVkL3RpbWVzdGFtcHR6Lm91dAppbmRleCBmYjA2YWNiY2NjLi41NjVjNTU5NWVh IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3RpbWVzdGFtcHR6Lm91dAor KysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL3RpbWVzdGFtcHR6Lm91dApAQCAtMzA4NSwz ICszMDg1LDggQEAgc2VsZWN0ICogZnJvbSB0bXB0eiB3aGVyZSBmMSBhdCB0aW1lIHpvbmUgJ3V0 YycgPSAnMjAxNy0wMS0xOCAwMDowMCc7CiAgVHVlIEphbiAxNyAxNjowMDowMCAyMDE3IFBTVAog KDEgcm93KQogCistLSB0ZXN0IGVycm9yIG9uIGRhbmdsaW5nIHVuaXRzCitTRUxFQ1QgdGltZXN0 YW1wdHogJzE5OTUtMDgtMDYgMTI6MzA6MTUgbSc7CitFUlJPUjogIGludmFsaWQgaW5wdXQgc3lu dGF4IGZvciB0eXBlIHRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZTogIjE5OTUtMDgtMDYgMTI6MzA6 MTUgbSIKK0xJTkUgMTogU0VMRUNUIHRpbWVzdGFtcHR6ICcxOTk1LTA4LTA2IDEyOjMwOjE1IG0n OworICAgICAgICAgICAgICAgICAgICAgICAgICAgXgpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVn cmVzcy9leHBlY3RlZC90aW1ldHoub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC90aW1l dHoub3V0CmluZGV4IDk4NDI4NTY2M2IuLjJkZGY1ZTQzYmEgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0 L3JlZ3Jlc3MvZXhwZWN0ZWQvdGltZXR6Lm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVj dGVkL3RpbWV0ei5vdXQKQEAgLTI2MiwzICsyNjIsOCBAQCBTRUxFQ1QgZGF0ZV9wYXJ0KCdlcG9j aCcsICAgICAgIFRJTUUgV0lUSCBUSU1FIFpPTkUgJzIwMjAtMDUtMjYgMTM6MzA6MjUuNTc1NDAx LQogIDYzMDI1LjU3NTQwMQogKDEgcm93KQogCistLSB0ZXN0IGVycm9yIG9uIGRhbmdsaW5nIHVu aXRzCitTRUxFQ1QgdGltZXR6ICcxMjozMDoxNSBkJzsKK0VSUk9SOiAgaW52YWxpZCBpbnB1dCBz eW50YXggZm9yIHR5cGUgdGltZSB3aXRoIHRpbWUgem9uZTogIjEyOjMwOjE1IGQiCitMSU5FIDE6 IFNFTEVDVCB0aW1ldHogJzEyOjMwOjE1IGQnOworICAgICAgICAgICAgICAgICAgICAgIF4KZGlm ZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2RhdGUuc3FsIGIvc3JjL3Rlc3QvcmVncmVz cy9zcWwvZGF0ZS5zcWwKaW5kZXggOWZkMTViZTVmOS4uOWViODVkZmMxOCAxMDA2NDQKLS0tIGEv c3JjL3Rlc3QvcmVncmVzcy9zcWwvZGF0ZS5zcWwKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwv ZGF0ZS5zcWwKQEAgLTM3MSwzICszNzEsNiBAQCBzZWxlY3QgbWFrZV9kYXRlKDIwMTMsIDEzLCAx KTsKIHNlbGVjdCBtYWtlX2RhdGUoMjAxMywgMTEsIC0xKTsKIHNlbGVjdCBtYWtlX3RpbWUoMTAs IDU1LCAxMDAuMSk7CiBzZWxlY3QgbWFrZV90aW1lKDI0LCAwLCAyLjEpOworCistLSB0ZXN0IGVy cm9yIG9uIGRhbmdsaW5nIHVuaXRzCitTRUxFQ1QgZGF0ZSAnMTk5NS0wOC0wNiBtJzsKZGlmZiAt LWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3RpbWUuc3FsIGIvc3JjL3Rlc3QvcmVncmVzcy9z cWwvdGltZS5zcWwKaW5kZXggYjQzOWNkNmI0MS4uNGYxYzE0MjI2YyAxMDA2NDQKLS0tIGEvc3Jj L3Rlc3QvcmVncmVzcy9zcWwvdGltZS5zcWwKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvdGlt ZS5zcWwKQEAgLTc3LDMgKzc3LDYgQEAgU0VMRUNUIGRhdGVfcGFydCgnbWljcm9zZWNvbmQnLCBU SU1FICcyMDIwLTA1LTI2IDEzOjMwOjI1LjU3NTQwMScpOwogU0VMRUNUIGRhdGVfcGFydCgnbWls bGlzZWNvbmQnLCBUSU1FICcyMDIwLTA1LTI2IDEzOjMwOjI1LjU3NTQwMScpOwogU0VMRUNUIGRh dGVfcGFydCgnc2Vjb25kJywgICAgICBUSU1FICcyMDIwLTA1LTI2IDEzOjMwOjI1LjU3NTQwMScp OwogU0VMRUNUIGRhdGVfcGFydCgnZXBvY2gnLCAgICAgICBUSU1FICcyMDIwLTA1LTI2IDEzOjMw OjI1LjU3NTQwMScpOworCistLSB0ZXN0IGVycm9yIG9uIGRhbmdsaW5nIHVuaXRzCitTRUxFQ1Qg dGltZSAnMTI6MzA6MTUgZCc7CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC90aW1l c3RhbXAuc3FsIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvdGltZXN0YW1wLnNxbAppbmRleCBlMTE3 NWIxMmNlLi4wMzEwMjViZDg1IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC90aW1l c3RhbXAuc3FsCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3RpbWVzdGFtcC5zcWwKQEAgLTM5 MSwzICszOTEsNiBAQCBzZWxlY3QgZ2VuZXJhdGVfc2VyaWVzKCcyMDIyLTAxLTAxIDAwOjAwJzo6 dGltZXN0YW1wLAogc2VsZWN0ICogZnJvbSBnZW5lcmF0ZV9zZXJpZXMoJzIwMjAtMDEtMDEgMDA6 MDAnOjp0aW1lc3RhbXAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnMjAyMC0wMS0w MiAwMzowMCc6OnRpbWVzdGFtcCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcwIGhv dXInOjppbnRlcnZhbCk7CisKKy0tIHRlc3QgZXJyb3Igb24gZGFuZ2xpbmcgdW5pdHMKK1NFTEVD VCB0aW1lc3RhbXAgJzE5OTUtMDgtMDYgMTI6MzA6MTUgeSc7CmRpZmYgLS1naXQgYS9zcmMvdGVz dC9yZWdyZXNzL3NxbC90aW1lc3RhbXB0ei5zcWwgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC90aW1l c3RhbXB0ei5zcWwKaW5kZXggMjcyNjNiM2UwYi4uM2ZmZWY2ZDhhNSAxMDA2NDQKLS0tIGEvc3Jj L3Rlc3QvcmVncmVzcy9zcWwvdGltZXN0YW1wdHouc3FsCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mv c3FsL3RpbWVzdGFtcHR6LnNxbApAQCAtNTk0LDMgKzU5NCw2IEBAIGluc2VydCBpbnRvIHRtcHR6 IHZhbHVlcyAoJzIwMTctMDEtMTggMDA6MDArMDAnKTsKIGV4cGxhaW4gKGNvc3RzIG9mZikKIHNl bGVjdCAqIGZyb20gdG1wdHogd2hlcmUgZjEgYXQgdGltZSB6b25lICd1dGMnID0gJzIwMTctMDEt MTggMDA6MDAnOwogc2VsZWN0ICogZnJvbSB0bXB0eiB3aGVyZSBmMSBhdCB0aW1lIHpvbmUgJ3V0 YycgPSAnMjAxNy0wMS0xOCAwMDowMCc7CisKKy0tIHRlc3QgZXJyb3Igb24gZGFuZ2xpbmcgdW5p dHMKK1NFTEVDVCB0aW1lc3RhbXB0eiAnMTk5NS0wOC0wNiAxMjozMDoxNSBtJzsKZGlmZiAtLWdp dCBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL3RpbWV0ei5zcWwgYi9zcmMvdGVzdC9yZWdyZXNzL3Nx bC90aW1ldHouc3FsCmluZGV4IGI2MmFhM2ZlMDUuLmNjYmZjMzFkNjQgMTAwNjQ0Ci0tLSBhL3Ny Yy90ZXN0L3JlZ3Jlc3Mvc3FsL3RpbWV0ei5zcWwKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwv dGltZXR6LnNxbApAQCAtODQsMyArODQsNiBAQCBTRUxFQ1QgZGF0ZV9wYXJ0KCdtaWNyb3NlY29u ZCcsIFRJTUUgV0lUSCBUSU1FIFpPTkUgJzIwMjAtMDUtMjYgMTM6MzA6MjUuNTc1NDAxLQogU0VM RUNUIGRhdGVfcGFydCgnbWlsbGlzZWNvbmQnLCBUSU1FIFdJVEggVElNRSBaT05FICcyMDIwLTA1 LTI2IDEzOjMwOjI1LjU3NTQwMS0wNCcpOwogU0VMRUNUIGRhdGVfcGFydCgnc2Vjb25kJywgICAg ICBUSU1FIFdJVEggVElNRSBaT05FICcyMDIwLTA1LTI2IDEzOjMwOjI1LjU3NTQwMS0wNCcpOwog U0VMRUNUIGRhdGVfcGFydCgnZXBvY2gnLCAgICAgICBUSU1FIFdJVEggVElNRSBaT05FICcyMDIw LTA1LTI2IDEzOjMwOjI1LjU3NTQwMS0wNCcpOworCistLSB0ZXN0IGVycm9yIG9uIGRhbmdsaW5n IHVuaXRzCitTRUxFQ1QgdGltZXR6ICcxMjozMDoxNSBkJzsKLS0gCjIuMzQuMQoK --000000000000f9b00c05ef8f38b0--