From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <10walls@gmail.com> Received: from mail-pg1-x52a.google.com (mail-pg1-x52a.google.com [IPv6:2607:f8b0:4864:20::52a]) by sourceware.org (Postfix) with ESMTPS id 44BA0384BC14 for ; Tue, 24 Nov 2020 12:33:36 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 44BA0384BC14 Received: by mail-pg1-x52a.google.com with SMTP id l17so6894490pgk.1 for ; Tue, 24 Nov 2020 04:33:36 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:to:references:from:subject:message-id:date :user-agent:mime-version:in-reply-to; bh=e+j53n8m4IZIH3kqPaFm9st11uKh1yTmoeNeTUI2AVs=; b=XcfP0ki5r7oNVw0eBhfW2Xbz7iVfQae47cE8Ke6QmLyc/h25m77YbwvaRAk/n+KGmp NHdzWj3YyNTxa+gI7QC91eklb2rgykpnvSNHkkOe82idgwQ/saQ8AD/4i8pOy4v6v6fm HZCWrNHFCH22AI+1Q3UEMgvoM9oB00Qw9DydEc6qwpdaLQdrqU9iaY4XIr4AEXo8v8C+ EboBZp16q/jsBaQhTSeoOJStJ+oE7sNNsPZPHrLMIfua0P+UYAG3q8x8Oa2hxvDL6xpC kjXIWUSf66ML0/HcSrpH+JJv5kjUEenkSfE9FapSge5pXOjJERqohUfXskiWlKs/0BT1 lNDw== X-Gm-Message-State: AOAM532kBwPvVwRJyHVdaZeyai2B/HG+CebnwDQ6qeCC58y3Oma57o0p IziuGqHMlPQpQoSWfrs19sx1DgnrtHQ= X-Google-Smtp-Source: ABdhPJxUSt68OozeqCtGPAjGSt6g2ge7X8+R2Y9iRDVlhqQ2N07CLIIhRUhPFEezNeER44DUsPn23A== X-Received: by 2002:a65:63d5:: with SMTP id n21mr3467998pgv.346.1606221215030; Tue, 24 Nov 2020 04:33:35 -0800 (PST) Received: from ?IPv6:2001:f40:91b::3:d7e0? ([2001:f40:91b::3:d7e0]) by smtp.gmail.com with ESMTPSA id x24sm13061092pgh.17.2020.11.24.04.33.33 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 24 Nov 2020 04:33:34 -0800 (PST) To: sten.kristian.ivarsson@gmail.com, 'The Cygwin Mailing List' References: <000a01d6be5b$3808cad0$a81a6070$@gmail.com> <87a2c99c-045c-e815-4c03-bab7a89a025b@cs.umass.edu> <000201d6bf17$7cc4beb0$764e3c10$@gmail.com> <9e881c01-e883-ecd5-883a-e1ac55c740c7@gmail.com> <000601d6c173$aa55d540$ff017fc0$@gmail.com> <000a01d6c244$b64bbd70$22e33850$@gmail.com> <001801d6c255$f0e115a0$d2a340e0$@gmail.com> From: Jonathan Yong <10walls@gmail.com> Subject: Re: Sv: Sv: Sv: Sv: Sv: g++ and c++17 filesystem Message-ID: <2d906235-e206-f6c6-5302-9b11bbe484c7@gmail.com> Date: Tue, 24 Nov 2020 12:33:27 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.4.2 MIME-Version: 1.0 In-Reply-To: <001801d6c255$f0e115a0$d2a340e0$@gmail.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="ZJWBsQMI7fWeZFwVtzyrSoBPD5FATZWuD" X-Spam-Status: No, score=-3032.0 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, GB_TO_NAME_FREEMAIL, NICE_REPLY_A, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: cygwin@cygwin.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 Nov 2020 12:33:37 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --ZJWBsQMI7fWeZFwVtzyrSoBPD5FATZWuD Content-Type: multipart/mixed; boundary="WHPxPs3qXiv5xz0rMOD6CJ50ECQDl5vlE"; protected-headers="v1" From: Jonathan Yong <10walls@gmail.com> To: sten.kristian.ivarsson@gmail.com, 'The Cygwin Mailing List' Message-ID: <2d906235-e206-f6c6-5302-9b11bbe484c7@gmail.com> Subject: Re: Sv: Sv: Sv: Sv: Sv: g++ and c++17 filesystem References: <000a01d6be5b$3808cad0$a81a6070$@gmail.com> <87a2c99c-045c-e815-4c03-bab7a89a025b@cs.umass.edu> <000201d6bf17$7cc4beb0$764e3c10$@gmail.com> <9e881c01-e883-ecd5-883a-e1ac55c740c7@gmail.com> <000601d6c173$aa55d540$ff017fc0$@gmail.com> <000a01d6c244$b64bbd70$22e33850$@gmail.com> <001801d6c255$f0e115a0$d2a340e0$@gmail.com> In-Reply-To: <001801d6c255$f0e115a0$d2a340e0$@gmail.com> --WHPxPs3qXiv5xz0rMOD6CJ50ECQDl5vlE Content-Type: multipart/mixed; boundary="------------0EF3EEBC1A5E2C5305B52217" Content-Language: en-US This is a multi-part message in MIME format. --------------0EF3EEBC1A5E2C5305B52217 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable On 11/24/20 11:35 AM, sten.kristian.ivarsson@gmail.com wrote: > [snip] >=20 >> std::filesystem POSIX mode is common to all POSIX platforms where >> backslashes are NOT directory separators. How do you make them accept = your >> demands? How are you going to force POSIX platforms allow Windows spec= ific >> code? >=20 > I've been trying to say over and over again that our code doesn't handl= e any Windows specific stuff and not anywhere have I claimed that anyone = else need to handle Windows specific stuff either (except for the interna= ls of Cygwin of which Windows specific logic is already present) >=20 > I repeat; I don't expect any of the Cygwin-Posix-functions to accept an= y Windows-style-paths (though some of them, as I repeatedly have said, al= ready does so) and I only expect that I can operate according to the C++-= standard on an instantiated std::filesystem::path >=20 How do you expect std::filesystem to do that when Windows paths are not=20 even accepted in API calls? >> Make it try to enter subdirectories every time std::filesystem is >> called? >> >> You refuse to understand that Cygwin is NOT Windows, it is a POSIX >> platform. Using Cygwin means complying with POSIX expectations and >> standards. >> >> I don't see how this conversation can continue if you still refuse to = see >> Cygwin as something separate from Windows. Besides, you have already >> answered your question by ruling out MinGW, so Microsoft Visual Studio= it >> is. >=20 > I repeat (again); neither MinGW/MSVS is an option because we're trying = to use Posix and C++ >=20 > Just to be clear: >=20 > - Our code DOESN'T handle Windows-style-paths explicitly in any way > - We DON'T expect Cygwin-Posix-file-related-functions to accept Windows= -style-paths > - We WOULD like std::filesystem to work according to the C++ ISO standa= rd Why would std::filesystem be an exception? How would it know if a=20 backslash is part of a name and not a separator? How does it know when=20 to apply exceptions? What about mixed paths? The C++ standard mentions separators, not specific characters, and the=20 forward slash is used under Cygwin, not the Windows backslash. The bigger question would be how would you expect a Cygwin application=20 to even accept a Windows paths. It should use *nix paths, as all Cygwin=20 programs do. --------------0EF3EEBC1A5E2C5305B52217 Content-Type: application/pgp-keys; name="OpenPGP_0x713B5FE29C145D45_and_old_rev.asc" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="OpenPGP_0x713B5FE29C145D45_and_old_rev.asc" -----BEGIN PGP PUBLIC KEY BLOCK----- xsFNBFDEdwIBEACSrmywJMpgYlgJa0HJ1AFu9tQp8yVpVS21EfnrSK16TS6PoW/JS78D5CYxp= shP zr1iil8yeL8/val1yXkI8uNZjMnhLxMBU5C7WEMCeY/h760btG3bZZ5BMCNCkC0YfrtvJJQDE= yv1 H+p1U7yMFRyxNtMjaf6QDzoRjTVOzO6mtNMZWYnlhzC54etiVt3HQ4jKOlKbI+dwjigIw8B1S= Z+x WcukAHRMBcIZYLjbnAI/XNu796pfwh6QEhJjr8EpvyNjdHLFSMMuyUPO/a3sr/jkFSTpqt5lr= 9jW ejdQwe7e8WtbC+euv++fH1B9Yz42259kLxgH+aHk6lWX3epIIx3w17rGfaMrFrINjXEBGLLOQ= kIy 2LtBLYRU2NhDg+VSDOEwAsiOVZs1EHpSNF5GV12L8SFiNtVToHxLRpObNpYIHBkDFzx9gvQfX= 5Ko cx5XFhBiNfTjdxBOjopLzQHpfCSo3fzSqc7zpscqOw3uni7GIN86fI8h3wSV44dQ4yaervnL2= kZy kRyWL5y1C9WDfjzljTIeLB6gK/gBbrsuKuVC42r6xAK9yC9pL0Trf7+GLJ9UF4WGnJ5IvfVpZ= 7gt BMjWOpiwewTprdBNwhLsVSep9Vqg/cbtmG6AnpzNtMsLEWAwDpgaFa5KqlehgUCuMlEdU6Lhv= Sd0 cJ/pqKwwzxEiLwARAQABzRlqb25feSA8MTB3YWxsc0BnbWFpbC5jb20+wsGVBBMBAgA/AhsDB= gsJ CAcDAgYVCAIJCgsEFgIDAQIeAQIXgBYhBOUK3Z2wV/T6ZOG2z3E7X+KcFF1FBQJb/k5NBQkUn= 9jL AAoJEHE7X+KcFF1FVlkP/jwLb9aab268Q3XQnocIDD7HArFnzKyvIvIndqGuGs51u+6p8I+zB= KHI yF4T9E1mkXfq2bRIbvKojrkAGi7KgCePKHRILVtfiAANSJtj9304WcUYIiD3vLHgB0Hiv5AUc= 3YW ntnaznKh8VMLMx/ANf3/OjeldikLunkC7vu/YwhbdsPWDEn7v47FsllqhbLbjsm+trboiORJM= UzA dJ65yv2WvRKnsRLdrXSyXxcW651XiNstVpgCqGkZP1PUSxUX8SvA/UzVXC4rw0nHaVVlB5Jov= ywL /Y/3GG6q3/x6hXWgqDBB68GvlQLA39JRGq6ELwwE9mo5EzU4q6a1Y2Uy1ZKqJ56xs+peI5qJd= FtI fXcPX2e6wdaCW631HcgJpykIS/gwDIsxI8NhfmiDLXY1sWnKDU0hjIwDEP/fjLtHp2o1TFBzB= MX9 4/CLi4kt2jhPZqhZed/unJ3IVtpwfi7Lum5LuNQhHqPF8U2YGJfIwaap6KUThy3CffPBhzSyQ= bTl izhP9hAGaMqh9NomJn+YIJlJEYoRkubcaQ95Vev4K0y3LNklxbePo2Jwd+ovxprS6NeJJaRTV= pR8 ZO58RD5B/1oKTW6udVQIeNATjkwoDSR6fi9s7sLLfCVy4404hYuzvrlm4QF3gruz4qhL4w1SG= 0ld dEGhMderspH9WtQs4H7ewsF+BBMBAgAoBQJQxHcCAhsDBQkJZgGABgsJCAcDAgYVCAIJCgsEF= gID AQIeAQIXgAAKCRBxO1/inBRdRSpmEACCSmpexUnrETc2+suu5d5Qj4mrIfNeYlMLGgBObD21q= Ny/ pcQs++BVOEdy4O7rNevWvlgN770JoD1hixzsI3eOqOn5hnaKvRAzbtL0U69qwUcyefTuhNT/S= Jpl h7U73tqUoj9UskgRNTqYt2echszQ52BmdkLuGYY/1Pv3zhXncPGtTNHaTc8MhkuHqDZFyXX6d= ovM D6p+7C7OgZwjINVzsRvPJjb7TbFBkNgAsFdYfSZkSBfY26t7Af0St+Z6WwcUpvGC9CSd2ubvk= TGF 8RNDXyXZ1PNKtoYoY3BlkD6jxYosufi/2/o/DySWU2eNF/0i9xyeJ7wuve9sh+EIJ5nUzfk1G= 6DL a3qhck9umnbdOJF7LUqUNRz05Zo8Y6aSAsLt0bVJ4wgeGD6IhtHNOu7Gp0vwsdsv5Bx5Iqf3i= i3Y m3CNSe+DhVYrIsOESSEnuyIbSkJwvbtAArxGYffHmaDNjzrQ0nvFvjQvmiklvONMy69WsQHKB= eFT e5YZAfpwUPw7K8Zet3wK2jeMOOPvZyQBM0vkrC13hvarzyyDTuqQfSrQKUAukJBJ0HRf1Pnek= tEL UILvpTUXVb5zgPh5q7iwY2Wp7v8uv7ESLV76muA3WCmI+BEOfSkyg9KfSGSLB14+MNGsbGNYv= YH8 NJiQRHMiSSybhilO0oOEYl9hnCN+Yc0hSm9uYXRoYW4gWW9uZyA8MTB3YWxsc0BnbWFpbC5jb= 20+ wsGWBBMBAgBAAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AWIQTlCt2dsFf0+mThts9xO= 1/i nBRdRQUCW/5OWQUJFJ/YywAKCRBxO1/inBRdRZf0D/4kY6ZXlSH4TdGQFEvjTOQNiui2Mpy6H= JmP aTY4x/eu+M1pec4bNpTiP1yhQSWQ2aXCBQj8dJEAYr71WC+3+XEr2daViflu2DA+5zRgXNJZD= JLY DCVJS+EM1X43hyUVEcOG1LL0nB/vZ9QYRIgh+j90NHXQ5MXYcMzQS/+urR0gNsME4KwLbQGbd= 8eA Ie0jNu0lEdqNjHxS0lPD4mE2Z153nQvnWxFAmbUYKaSyAkUNOuVquGRk4UsS94Jl4P8rnZ1+H= Swi JQXQSuMYESjmgkTw37BUcmUXfh3qiYZBMq9N027QFontVmICnNessVyqPQ9RCj96Yuu/0BjIa= Z6b 9Vjc7O/LLt/GgxGIdeer8k7u3E3QyhwtvxJDlJ+kjhHjYmpHSzIDRCLqGwmk4FKnrkqh49j21= gh2 YWmZ7kJ3rcEjx6wPJ8fxaoVBAIg3szbspGqR1YKW1cMfs75hFvMMrjOiGTgXUwdjR5QOu+a+2= yeA pkZ0zRfHzVcS9eWxyMGPk7fc0tkpQ07uBi3cW1sOV0H+NoIdtiDXkihb8N+zXiz/qZwdj5/hi= YcB 54JjxACzk4V3DKu4NCIAkfuMTBIoTkUFdRpngaC3Jf0PM9Bv1bSmNMSQGEWjKHOUnC6+xi2Dh= fF5 9PGZIrHad1da2pVF0SFnEPCMJG4iXicTw36trJYfrsLBfwQTAQIAKQUCU3X3YAIbAwUJCWYBg= AcL CQgHAwIBBhUIAgkKCwQWAgMBAh4BAheAAAoJEHE7X+KcFF1FITkP/R+JT8lQova36BfsrdfMP= v3C ApwE/nyyf1SddYojRteCo1cJbYmpyV8dw42am01D3j4po+pYGN7p3DSbF2zSSJkdGC4X0COVI= 4aV 3AO2MPOe/RvszRgcnmP5VLjnokN6pOOBkdEovqg+O3zRG4DScaWxnjIddoirNFpJ5sssH/oNL= 0bZ RzkPmtHOezIS5D9PEDk24XGYTURPoHqNsQ40pdvtxLFU7kR5D8xTDzBQjnnBSBJJId7T2O0BM= xDx GVv7iSfrQHBM2rLNLizSJkzr5do43DlHI5IoNy4vNsEvaUkgEonR/BDIoxuGWpLZ/WZwTuYPq= HYA cDYYzJOm+Hs9N8B4HAxe3BdfpWBiVT+lpsoBrDk/q7xZ+I7Axg5u6nklNRvRBwqJhEKKz+kgR= WGp FpsXuslNDdTiD9h1c398F2yDe4XFCQfCBTzTDDQVHHh2y+ytf812WfYIbfkM7HtjoBshyqrkG= XlR ckMMAq7bkIQDYD+UKDUVoDCt8sDgoV7rraMtFRiLmD57/VUfDlQMddmZGCMgmGpSktzg7xHzc= 3Z3 ZBAuiF2aIcofp6ZhH+2fND5IBnyl0FGuK5hSky5ZgO4QAdGxKmOVj3+1MUV/oif6ls+QVshuS= 86T 9Xnwa7QuHBW/L0BnHDCO4JDPjJKgO5zbqexr5yESElkFIFwHyFrDzsFNBFDEdwIBEACsXcBns= 4YG VTUGMVKVGEocPffmAhAY89XSk1c1qWPngieUtZ2GoiG+a8IKAqYIjfpuV/YXX8i9mXuGAGJvf= 6rR hpPos8v76y3qoFFrPsFjNaiTTTvPn1oNRT+Br5KWjJaDomGkmQe5bGrok6ETK4VgRdYWPib7I= bTL UX1rzfaKvDP219HTsdWj/cdE3QGTZjekJUiJqgqSS8SmaBNtFm2T18r3gdx6+Xq0kJPW421Ia= Xtu xbyD3MTBVJYEfY+rEvVfMUi9rvsfCG0djJOh8954D8AhVY58x7aszhHddTeQlXxUdwNpyJFFo= FFh pj0LvmhCH84eaf+9eW8VqegPDzE2MJ/Oe+bftYS9qtIx4MMHRU5Wl7g2x3QUhsmyev3BmhBvq= Fzo 6TmBZ1bjp2MXZqQw2d5YXJNb0Vtr9qgV1EqnoG7Lf5q5wcENYAJDVeOzOMxUnM3u2VYbt8GMu= 3QI TxpHw4lOukzarmEmAq3EwwzBxFKKmD9gvAbkAGmimONRiQSY9OBEW4XLmOqy9b7pnoS+6x0Oq= v8l ELvz9TJ2Kh5urXJ/7LOvof9z3R0g7Hn7AWn1Y+0hUKN1vRqziJdIFqZ7kcViiKYAKfYiDPlHS= AVg uc3qvok0P8A3uS5qvkz2yC3C5Jt913FoNVu3ny0/UCDjpSAqC3qTXMx3otwLDLv/dwARAQABw= sF8 BBgBAgAmAhsMFiEE5QrdnbBX9Ppk4bbPcTtf4pwUXUUFAlv+TloFCRSf2NgACgkQcTtf4pwUX= UWz cw//ckxWc2Zyd58jjZxpMG1hpGHJVMyi+1aC12mCozlKuGDUBhbEbs6z8INlAQh9ic5dh9jXW= 8Wc lJglzo1Bm1naQOUmCFLh2WgV/0Om9vqDeJ0r5J2xcoBesiAflt/2dBHn3sZHivwq46c2/pMl9= 5LA oA9z+4lZLBCjL64wo9QZujrDoSlUTKMnmfTKYzvUqF4Y7394b3cwi4WNlR3CeqAzU5f+RjGlI= pCT P2h+ui7L8JvPCBLzy6lcEm6NJayUIMDyFKYtlJdiPOVtSveZyrFjx6qWrIHogOXTorTZrtysB= i8g AoU+7h7dOBswi0vnjftyH7S6M8N0K+LKnRj8zBjajyAcBRuvXP+tfvIPHUMnkWifgMLhrMUgT= ZHX 4V4DVjNHzVuAxr+yIHGLUgn6sSrYnYX8aCK37cByLO78563LaT/p7WD56R5grBe0HEaoarixV= mov v4GzI3GGNLBx+GraRAtvbPsol0sZ0OZWKWVL1/meHi7Fe5EFYeoI5/xANT1Xm+GMnLGrt6CH4= 4Fa J0rUQ900ZGf69laS+pniyasFgdtiUeCLCcUww9k6jUq5Sa1npJYFVJqnuush2cUXWG5Z9DFZ2= Jg7 LWvZqUc2rt0B8+AIWWfEGNoh3KgziYAnpr+5iH7wMIsgvMwRrJmB2S4ixQUNVeE06B+VUDKv1= Bkf mRHGwE0ETSg45AEIANeD/h9XEUDi0xZYKQGk/cw5Kih5spOB3UE4m6JKhv+3vrH9M7Zxt88Cs= naM 7jnbUm6iBsTCn40FrYl/20G+iJtAQiblvKdNS5Ivk0wWor7hTZMRAKzqmPX+xUDPgfu+8N++0= aGu gdAfKsGELJxRim1tRT7ntS+8fWoP2qkn+Mv8DCgUQSZGtwbWQeCRsBHuKfA7uPJHLUzwdgPa5= XAz fWw6ggFvpA8XBlKuT/duSgSvyKMUZ5Z6TiRClol20YwVfsFXxZmzr453obGy28ckS8JnLRxg/= 6cY dWH6Ex+bhI4gcZORUDeY6lRisIB1s3PIPZYv0gKRO5moJawZcAvw4LUAEQEAAcLAXwQgAQIAC= QUC U3X1IAIdAAAKCRBuRRqDPvSezXPkB/0ddadFpDaInaoNvlCg9iN4c/rMzfkw4G6nMAbwSqNQ6= ixF WLIirXi/YV4/O5gTpEdpT5j62AfqCM3rB+FeyHFLd69y9kFyTde16NsgGLmSAnpZa6Y9wCg70= Pyb tcCE/hIyENYKfLYj1IW5Olc5plLzsfOTTaMTXiG9WZ9j+YxQ2ge4UucqSc4sSttf8WZJVqQsv= +a0 GtC1pABjoMmv6Xn8PrTF43VUiOFy1XdYYNLLGPYP4fSclJk7K2q+IHDdUU3FzzbM2+i3HF8fV= aCv q03oVLtDMuhxtLDHT845iDoGnNxKMqeZdDlpGLKhw72YV/cP+N+WBdVzHywv6LUmhdSewsBfB= CAB AgAJBQJQxHiSAh0AAAoJEG5FGoM+9J7NiowH/iyQWOPjm8nf0vkh2YCtqCNA6AH4AH8mOZVhN= qfo ++B6cfX5w2WyFXs97MMyPuVJjg51wFPLIjmVREVkWHsdGYCK8ipyMRp+aAGZkq7lFreCqD78j= y1I AuAaGq4ewKBtt9VqX1n09KfQBm+uPhiDSYYpDeVFvuD4NWlfq50IviWe9+DdpMFhDaKf3jaTi= ZFa fRzX2i8myWvX3hF6rwxACedcTuJR74YC/pW6ZMVe1+13A7tZEXwGd6H2zkY0HH+ltNv/Im+H2= WQo DbXYmKzpe+0leBY3bL6+2+eZuKKzhhHbnwnBTubo6QIXXYW575Pb+6ascVebFooRD4EJuDnhY= OzN GWpvbl95IDwxMHdhbGxzQGdtYWlsLmNvbT7CwH4EEwECACgCGwMGCwkIBwMCBhUIAgkKCwQWA= gMB Ah4BAheABQJQxHW4BQkDnSVcAAoJEG5FGoM+9J7N9EkH/3heEJaIwbrjq3RMywLTmOGX1NxBK= 6lz CxjRZcOK83hg3CdQu7b0Cvd5jubWKNdER1JoIyE4MVmDbUIdZQHGY4boG7torVGI+k6EUGQTu= p1P Af9YNXqAZLxQQUc30pxowKILBOwpT6Dvy0RVd2ddglrKYnG7hH9uoGwowUOVMUeQ1hxYpDoTt= zN7 L3TfiBOD0aQ82QJYAE5/mzwAJAYV+qfCNKOthTPHcrRsdzKT1Sjfupmi9XF+U+Kp8rxqa+EVG= vLY HtgLbLa+BgUc20MjMJ3Y9cBHNHHr4ZtXRTVN0LC4Ui1T93JttwSPHld5ZDXxlaMFDD5MDJ4oX= dmL qjUll9zOwE0ETSg45AEIALRd3uUSAqv+sSOEpKPKONCcJx9Yv4GKpaBMg1Q1K2Dw73Im/B9p7= xUF 0ZN9OBR5l/Ho42W1vCTZMwYXuJkLYRFpXXVALTMHI9k2ADhqMvoxe044zS3q7Wd0dIQOBe7Gb= Ue3 rU+amvp+SF7qvB0AL3MK3MWEsXiHZUomj9dbEsWeo+5rZnGe51U0csPIUv40NRXBdtMIPVyH8= Osb n6EMjA1xvoDOqLFSrtAWuvRDlfsF7mQC/A5X6zPTG2dS2ooqkkIm9M7o3Yx2OwBRUfhexVsU0= r8S eNdaAW0fYGYhw36PUGYrwOXuNxeUnlYt/wsxLjKsjGkhJPx7bN5Ex4aXpdsAEQEAAcLAXwQYA= QIA CQUCTSg45AIbDAAKCRBuRRqDPvSezTT2B/9Q2tyuSxHlsF1DK+bT/JU300ANWGWDyo8v/UOVF= uhJ W5s0at+TfrbwWtdDEEFzLpSxrjUxcxECzbi63DLqlxS/Ytge7Fccc8BjVpZAIexIXiYKtdUV0= hcc I3soGpKFPr/eDKxnjBVG/+OBaYU/yjUPKA+bhpKdkXC3khzATxIbstfbgu8F9PaGQpDKM9thy= BDJ VeVfMoE0RvLtGyvbUWGFiGrjQw1sOe+xLVLV+ZhZnsGU4zFmrRoLNipJzIopPIOjrIlzIBm9X= BY3 GkCWTg0rx86v4dDW9d1SNGhZ0lgQ0pA7q0ODWl803L5cOLmdvcOvvsH0pGkS+odZw0klsvVh =3DtNbV -----END PGP PUBLIC KEY BLOCK----- --------------0EF3EEBC1A5E2C5305B52217-- --WHPxPs3qXiv5xz0rMOD6CJ50ECQDl5vlE-- --ZJWBsQMI7fWeZFwVtzyrSoBPD5FATZWuD Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsF5BAABCAAjFiEE5QrdnbBX9Ppk4bbPcTtf4pwUXUUFAl+8/ZcFAwAAAAAACgkQcTtf4pwUXUW9 nQ/6Ah9yMygAhSnavrmz6pFK2fviIIp/6m+3h8CmxdjS7LzEnajfg96i7wJwyBKoc+C6BkQhURf2 PYpcwrkjmkn85RLvHjgcTKUtOJ4Fx1qj+m6o0pZAdE7oYpDlGy8R8eWdoAEjafuVDgcArNTYxvpx WVLaaFUePATLB2UGAlH9kgN/DuDCMpduWaIzXVmDfWdCdQX5673YFUUm6AFsyEgcl7SNGy1JwMCU 5MEd2av/dU/yAa6NqORJCjZHmiRiKffBACl0QIqXevIgEwKfBpHQWG+B58eelGR/08wdZllI3EtG jH1Sl21POk6fhW3nuosAZF2jBgwuArl+EoR2TLfmg0PkmGxHzsdM7VhRo0S0V4RpanqufzIqAq9/ xTQYQTMZ/xAhsIwkZw17FRgVT9qqwRlTDaL2WJ11QlNgyd6s5bVXdWv5k5wfZvhB5qRi1qBWYHsc NowVVuW48NnSyab33uTpX7A3KoTNl31h5LDGzJ9QkRUvTq5FjLAr2fonqNKcy+JtKgZWeB/ewxnp z7BuSqI24xSHC6VmqasPjAuDQKqyDnhPylYmiBm2+V+sH+H7KYaDEde6oXjtSk4m1X/FjIfbEIx5 qvyrTGC4Wqlgl8SC9/IUrkK3X2HoNfzrp6VVJtUK+s0132M5/6WqePQarm6LavVZhjW4Z0o+6qhu mEc= =/Ult -----END PGP SIGNATURE----- --ZJWBsQMI7fWeZFwVtzyrSoBPD5FATZWuD--