From thierry.goubier@gmail.com Mon Feb 1 16:35:31 2016 From: Thierry Goubier To: moose-dev@list.inf.unibe.ch Subject: [Moose-dev] Re: Anyone can explain this PParser behaviour? Date: Mon, 01 Feb 2016 15:35:31 +0000 Message-ID: In-Reply-To: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============2968346428243608954==" --===============2968346428243608954== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable 2016-02-01 16:32 GMT+01:00 Thierry Goubier : > > > 2016-02-01 16:29 GMT+01:00 Anne Etien : > >> >> Le 1 f=C3=A9vr. 2016 =C3=A0 08:09, stepharo a =C3=A9c= rit : >> >> >> Where? because I spent a couple of hours I only found SQL92 >> >> >> http://savage.net.au/SQL/ >> >> SQL-92, -99, -2003 >> >> >> Excellent! >> Thanks I will archive that. >> >> >> I am not an expert in grammar, but I don=E2=80=99t see on this page the ru= les >> relative to function or even to select query. >> > > First one, just a search on SELECT in the web page: > > > > ::=3D > SELECT [ quantifier> ] <= select > list> expression> > Cool, this hyperlinked grammar, by the way ;) I wish all were like that... Thierry > > > Thierry > > >> >> Anne >> >> >> >> But the point wasn't that; what a LALR/LR parser gives you is a >> grammar ambiguity and conflicts... PetitParser will happily take your >> grammar ans you will only discover when parsing something that it >> doesn't do what you would like. >> >> (The reference citation of Aho and Ullman is ... it may be difficult >> to determine what the language is). >> >> So since you have a grammar, use LALR to check it. >> >> >> But as I said we do not have it. >> >> >> You do have a PEG grammar in your PetitParser efforts, since you have >> been working on it. From far, those grammars are very much like other >> grammars... just that the parser generator behave differently when you have >> conflicts and ambiguity. >> >> Thierry >> _______________________________________________ >> Moose-dev mailing list >> Moose-dev(a)list.inf.unibe.ch >> https://www.list.inf.unibe.ch/listinfo/moose-dev >> >> >> _______________________________________________ >> Moose-dev mailing list >> Moose-dev(a)list.inf.unibe.ch >> https://www.list.inf.unibe.ch/listinfo/moose-dev >> >> >> >> _______________________________________________ >> Moose-dev mailing list >> Moose-dev(a)list.inf.unibe.ch >> https://www.list.inf.unibe.ch/listinfo/moose-dev >> >> > --===============2968346428243608954== Content-Type: text/html Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.htm" MIME-Version: 1.0 PGRpdiBkaXI9Imx0ciI+PGJyPjxkaXYgY2xhc3M9ImdtYWlsX2V4dHJhIj48YnI+PGRpdiBjbGFz cz0iZ21haWxfcXVvdGUiPjIwMTYtMDItMDEgMTY6MzIgR01UKzAxOjAwIFRoaWVycnkgR291Ymll ciA8c3BhbiBkaXI9Imx0ciI+Jmx0OzxhIGhyZWY9Im1haWx0bzp0aGllcnJ5LmdvdWJpZXJAZ21h aWwuY29tIiB0YXJnZXQ9Il9ibGFuayI+dGhpZXJyeS5nb3ViaWVyQGdtYWlsLmNvbTwvYT4mZ3Q7 PC9zcGFuPjo8YnI+PGJsb2NrcXVvdGUgY2xhc3M9ImdtYWlsX3F1b3RlIiBzdHlsZT0ibWFyZ2lu OjAgMCAwIC44ZXg7Ym9yZGVyLWxlZnQ6MXB4ICNjY2Mgc29saWQ7cGFkZGluZy1sZWZ0OjFleCI+ PGRpdiBkaXI9Imx0ciI+PGJyPjxkaXYgY2xhc3M9ImdtYWlsX2V4dHJhIj48YnI+PGRpdiBjbGFz cz0iZ21haWxfcXVvdGUiPjxzcGFuIGNsYXNzPSIiPjIwMTYtMDItMDEgMTY6MjkgR01UKzAxOjAw IEFubmUgRXRpZW4gPHNwYW4gZGlyPSJsdHIiPiZsdDs8YSBocmVmPSJtYWlsdG86YW5uZS5ldGll bkB1bml2LWxpbGxlMS5mciIgdGFyZ2V0PSJfYmxhbmsiPmFubmUuZXRpZW5AdW5pdi1saWxsZTEu ZnI8L2E+Jmd0Ozwvc3Bhbj46PGJyPjxibG9ja3F1b3RlIGNsYXNzPSJnbWFpbF9xdW90ZSIgc3R5 bGU9Im1hcmdpbjowcHggMHB4IDBweCAwLjhleDtib3JkZXItbGVmdC13aWR0aDoxcHg7Ym9yZGVy LWxlZnQtY29sb3I6cmdiKDIwNCwyMDQsMjA0KTtib3JkZXItbGVmdC1zdHlsZTpzb2xpZDtwYWRk aW5nLWxlZnQ6MWV4Ij48ZGl2IHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZCI+PGJyPjxkaXY+ PHNwYW4+PGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSI+PGRpdj5MZSAxIGbDqXZyLiAyMDE2IMOgIDA4 OjA5LCBzdGVwaGFybyAmbHQ7PGEgaHJlZj0ibWFpbHRvOnN0ZXBoYXJvQGZyZWUuZnIiIHRhcmdl dD0iX2JsYW5rIj5zdGVwaGFyb0BmcmVlLmZyPC9hPiZndDsgYSDDqWNyaXQgOjwvZGl2Pjxicj48 ZGl2PjxibG9ja3F1b3RlIHR5cGU9ImNpdGUiIHN0eWxlPSJmb250LWZhbWlseTpIZWx2ZXRpY2E7 Zm9udC1zaXplOjEycHg7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC12YXJpYW50Om5vcm1hbDtmb250 LXdlaWdodDpub3JtYWw7bGV0dGVyLXNwYWNpbmc6bm9ybWFsO2xpbmUtaGVpZ2h0Om5vcm1hbDt0 ZXh0LWFsaWduOnN0YXJ0O3RleHQtaW5kZW50OjBweDt0ZXh0LXRyYW5zZm9ybTpub25lO3doaXRl LXNwYWNlOm5vcm1hbDt3b3JkLXNwYWNpbmc6MHB4Ij48YmxvY2txdW90ZSB0eXBlPSJjaXRlIj48 YnI+V2hlcmU/IGJlY2F1c2UgSSBzcGVudCBhIGNvdXBsZSBvZiBob3VycyBJIG9ubHkgZm91bmQg U1FMOTI8YnI+PC9ibG9ja3F1b3RlPjxicj48YSBocmVmPSJodHRwOi8vc2F2YWdlLm5ldC5hdS9T UUwvIiB0YXJnZXQ9Il9ibGFuayI+aHR0cDovL3NhdmFnZS5uZXQuYXUvU1FMLzwvYT48YnI+PGJy PlNRTC05MiwgLTk5LCAtMjAwMzxicj48L2Jsb2NrcXVvdGU+PGJyIHN0eWxlPSJmb250LWZhbWls eTpIZWx2ZXRpY2E7Zm9udC1zaXplOjEycHg7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC12YXJpYW50 Om5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7bGV0dGVyLXNwYWNpbmc6bm9ybWFsO2xpbmUtaGVp Z2h0Om5vcm1hbDt0ZXh0LWFsaWduOnN0YXJ0O3RleHQtaW5kZW50OjBweDt0ZXh0LXRyYW5zZm9y bTpub25lO3doaXRlLXNwYWNlOm5vcm1hbDt3b3JkLXNwYWNpbmc6MHB4Ij48c3BhbiBzdHlsZT0i Zm9udC1mYW1pbHk6SGVsdmV0aWNhO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtc3R5bGU6bm9ybWFsO2Zv bnQtdmFyaWFudDpub3JtYWw7Zm9udC13ZWlnaHQ6bm9ybWFsO2xldHRlci1zcGFjaW5nOm5vcm1h bDtsaW5lLWhlaWdodDpub3JtYWw7dGV4dC1hbGlnbjpzdGFydDt0ZXh0LWluZGVudDowcHg7dGV4 dC10cmFuc2Zvcm06bm9uZTt3aGl0ZS1zcGFjZTpub3JtYWw7d29yZC1zcGFjaW5nOjBweDtmbG9h dDpub25lO2Rpc3BsYXk6aW5saW5lIWltcG9ydGFudCI+RXhjZWxsZW50ITwvc3Bhbj48YnIgc3R5 bGU9ImZvbnQtZmFtaWx5OkhlbHZldGljYTtmb250LXNpemU6MTJweDtmb250LXN0eWxlOm5vcm1h bDtmb250LXZhcmlhbnQ6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDtsZXR0ZXItc3BhY2luZzpu b3JtYWw7bGluZS1oZWlnaHQ6bm9ybWFsO3RleHQtYWxpZ246c3RhcnQ7dGV4dC1pbmRlbnQ6MHB4 O3RleHQtdHJhbnNmb3JtOm5vbmU7d2hpdGUtc3BhY2U6bm9ybWFsO3dvcmQtc3BhY2luZzowcHgi PjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTpIZWx2ZXRpY2E7Zm9udC1zaXplOjEycHg7Zm9udC1z dHlsZTpub3JtYWw7Zm9udC12YXJpYW50Om5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7bGV0dGVy LXNwYWNpbmc6bm9ybWFsO2xpbmUtaGVpZ2h0Om5vcm1hbDt0ZXh0LWFsaWduOnN0YXJ0O3RleHQt aW5kZW50OjBweDt0ZXh0LXRyYW5zZm9ybTpub25lO3doaXRlLXNwYWNlOm5vcm1hbDt3b3JkLXNw YWNpbmc6MHB4O2Zsb2F0Om5vbmU7ZGlzcGxheTppbmxpbmUhaW1wb3J0YW50Ij5UaGFua3MgSSB3 aWxsIGFyY2hpdmUgdGhhdC48L3NwYW4+PGJyIHN0eWxlPSJmb250LWZhbWlseTpIZWx2ZXRpY2E7 Zm9udC1zaXplOjEycHg7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC12YXJpYW50Om5vcm1hbDtmb250 LXdlaWdodDpub3JtYWw7bGV0dGVyLXNwYWNpbmc6bm9ybWFsO2xpbmUtaGVpZ2h0Om5vcm1hbDt0 ZXh0LWFsaWduOnN0YXJ0O3RleHQtaW5kZW50OjBweDt0ZXh0LXRyYW5zZm9ybTpub25lO3doaXRl LXNwYWNlOm5vcm1hbDt3b3JkLXNwYWNpbmc6MHB4Ij48L2Rpdj48L2Jsb2NrcXVvdGU+PGRpdj48 YnI+PC9kaXY+PC9zcGFuPjxkaXY+SSBhbSBub3QgYW4gZXhwZXJ0IGluIGdyYW1tYXIsIGJ1dCBJ IGRvbuKAmXQgc2VlIG9uIHRoaXMgcGFnZSB0aGUgcnVsZXMgcmVsYXRpdmUgdG8gZnVuY3Rpb24g b3IgZXZlbiB0byBzZWxlY3QgcXVlcnkuPC9kaXY+PC9kaXY+PC9kaXY+PC9ibG9ja3F1b3RlPjxk aXY+PGJyPjwvZGl2Pjwvc3Bhbj48ZGl2PkZpcnN0IG9uZSwganVzdCBhIHNlYXJjaCBvbiBTRUxF Q1QgaW4gdGhlIHdlYiBwYWdlOjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+PGEgaHJlZj0iaHR0 cDovL3NhdmFnZS5uZXQuYXUvU1FML3NxbC05Mi5ibmYuaHRtbCN4cmVmLXF1ZXJ5JTIwc3BlY2lm aWNhdGlvbiIgbmFtZT0iMTA4NTA1ODQ0NV9xdWVyeSBzcGVjaWZpY2F0aW9uIiBzdHlsZT0iZm9u dC1mYW1pbHk6JiMzOTtUaW1lcyBOZXcgUm9tYW4mIzM5Oztmb250LXNpemU6bWVkaXVtIiB0YXJn ZXQ9Il9ibGFuayI+Jmx0O3F1ZXJ5IHNwZWNpZmljYXRpb24mZ3Q7wqA8L2E+PHNwYW4gc3R5bGU9 ImNvbG9yOnJnYigwLDAsMCk7Zm9udC1mYW1pbHk6JiMzOTtUaW1lcyBOZXcgUm9tYW4mIzM5Oztm b250LXNpemU6bWVkaXVtIj7CoMKgwqA6Oj3CoDwvc3Bhbj48YnIgc3R5bGU9ImNvbG9yOnJnYigw LDAsMCk7Zm9udC1mYW1pbHk6JiMzOTtUaW1lcyBOZXcgUm9tYW4mIzM5Oztmb250LXNpemU6bWVk aXVtIj48c3BhbiBzdHlsZT0iY29sb3I6cmdiKDAsMCwwKTtmb250LWZhbWlseTomIzM5O1RpbWVz IE5ldyBSb21hbiYjMzk7O2ZvbnQtc2l6ZTptZWRpdW0iPsKgwqDCoMKgwqDCoMKgwqDCoDwvc3Bh bj48YSBocmVmPSJodHRwOi8vc2F2YWdlLm5ldC5hdS9TUUwvc3FsLTkyLmJuZi5odG1sI3hyZWYt U0VMRUNUIiBzdHlsZT0iZm9udC1mYW1pbHk6JiMzOTtUaW1lcyBOZXcgUm9tYW4mIzM5Oztmb250 LXNpemU6bWVkaXVtIiB0YXJnZXQ9Il9ibGFuayI+U0VMRUNUwqA8L2E+PHNwYW4gc3R5bGU9ImNv bG9yOnJnYigwLDAsMCk7Zm9udC1mYW1pbHk6JiMzOTtUaW1lcyBOZXcgUm9tYW4mIzM5Oztmb250 LXNpemU6bWVkaXVtIj5bwqA8L3NwYW4+PGEgaHJlZj0iaHR0cDovL3NhdmFnZS5uZXQuYXUvU1FM L3NxbC05Mi5ibmYuaHRtbCNzZXQlMjBxdWFudGlmaWVyIiBzdHlsZT0iZm9udC1mYW1pbHk6JiMz OTtUaW1lcyBOZXcgUm9tYW4mIzM5Oztmb250LXNpemU6bWVkaXVtIiB0YXJnZXQ9Il9ibGFuayI+ Jmx0O3NldCBxdWFudGlmaWVyJmd0OzwvYT48c3BhbiBzdHlsZT0iY29sb3I6cmdiKDAsMCwwKTtm b250LWZhbWlseTomIzM5O1RpbWVzIE5ldyBSb21hbiYjMzk7O2ZvbnQtc2l6ZTptZWRpdW0iPsKg XcKgPC9zcGFuPjxhIGhyZWY9Imh0dHA6Ly9zYXZhZ2UubmV0LmF1L1NRTC9zcWwtOTIuYm5mLmh0 bWwjc2VsZWN0JTIwbGlzdCIgc3R5bGU9ImZvbnQtZmFtaWx5OiYjMzk7VGltZXMgTmV3IFJvbWFu JiMzOTs7Zm9udC1zaXplOm1lZGl1bSIgdGFyZ2V0PSJfYmxhbmsiPiZsdDtzZWxlY3QgbGlzdCZn dDs8L2E+PHNwYW4gc3R5bGU9ImNvbG9yOnJnYigwLDAsMCk7Zm9udC1mYW1pbHk6JiMzOTtUaW1l cyBOZXcgUm9tYW4mIzM5Oztmb250LXNpemU6bWVkaXVtIj7CoDwvc3Bhbj48YSBocmVmPSJodHRw Oi8vc2F2YWdlLm5ldC5hdS9TUUwvc3FsLTkyLmJuZi5odG1sI3RhYmxlJTIwZXhwcmVzc2lvbiIg c3R5bGU9ImZvbnQtZmFtaWx5OiYjMzk7VGltZXMgTmV3IFJvbWFuJiMzOTs7Zm9udC1zaXplOm1l ZGl1bSIgdGFyZ2V0PSJfYmxhbmsiPiZsdDt0YWJsZSBleHByZXNzaW9uJmd0OzwvYT48L2Rpdj48 L2Rpdj48L2Rpdj48L2Rpdj48L2Jsb2NrcXVvdGU+PGRpdj48YnI+PC9kaXY+PGRpdj5Db29sLCB0 aGlzIGh5cGVybGlua2VkIGdyYW1tYXIsIGJ5IHRoZSB3YXkgOyk8L2Rpdj48ZGl2Pjxicj48L2Rp dj48ZGl2Pkkgd2lzaCBhbGwgd2VyZSBsaWtlIHRoYXQuLi48L2Rpdj48ZGl2Pjxicj48L2Rpdj48 ZGl2PlRoaWVycnk8L2Rpdj48ZGl2PsKgPC9kaXY+PGJsb2NrcXVvdGUgY2xhc3M9ImdtYWlsX3F1 b3RlIiBzdHlsZT0ibWFyZ2luOjAgMCAwIC44ZXg7Ym9yZGVyLWxlZnQ6MXB4ICNjY2Mgc29saWQ7 cGFkZGluZy1sZWZ0OjFleCI+PGRpdiBkaXI9Imx0ciI+PGRpdiBjbGFzcz0iZ21haWxfZXh0cmEi PjxkaXYgY2xhc3M9ImdtYWlsX3F1b3RlIj48ZGl2PjxzcGFuIGNsYXNzPSJIT0VuWmIiPjxmb250 IGNvbG9yPSIjODg4ODg4Ij48YnI+PC9mb250Pjwvc3Bhbj48L2Rpdj48c3BhbiBjbGFzcz0iSE9F blpiIj48Zm9udCBjb2xvcj0iIzg4ODg4OCI+PGRpdj48YnI+PC9kaXY+PGRpdj5UaGllcnJ5PC9k aXY+PC9mb250Pjwvc3Bhbj48c3BhbiBjbGFzcz0iIj48ZGl2PsKgPC9kaXY+PGJsb2NrcXVvdGUg Y2xhc3M9ImdtYWlsX3F1b3RlIiBzdHlsZT0ibWFyZ2luOjBweCAwcHggMHB4IDAuOGV4O2JvcmRl ci1sZWZ0LXdpZHRoOjFweDtib3JkZXItbGVmdC1jb2xvcjpyZ2IoMjA0LDIwNCwyMDQpO2JvcmRl ci1sZWZ0LXN0eWxlOnNvbGlkO3BhZGRpbmctbGVmdDoxZXgiPjxkaXYgc3R5bGU9IndvcmQtd3Jh cDpicmVhay13b3JkIj48ZGl2PjxzcGFuPjxmb250IGNvbG9yPSIjODg4ODg4Ij48ZGl2Pjxicj48 L2Rpdj48ZGl2PkFubmU8L2Rpdj48L2ZvbnQ+PC9zcGFuPjxzcGFuPjxicj48YmxvY2txdW90ZSB0 eXBlPSJjaXRlIj48ZGl2PjxiciBzdHlsZT0iZm9udC1mYW1pbHk6SGVsdmV0aWNhO2ZvbnQtc2l6 ZToxMnB4O2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtdmFyaWFudDpub3JtYWw7Zm9udC13ZWlnaHQ6 bm9ybWFsO2xldHRlci1zcGFjaW5nOm5vcm1hbDtsaW5lLWhlaWdodDpub3JtYWw7dGV4dC1hbGln bjpzdGFydDt0ZXh0LWluZGVudDowcHg7dGV4dC10cmFuc2Zvcm06bm9uZTt3aGl0ZS1zcGFjZTpu b3JtYWw7d29yZC1zcGFjaW5nOjBweCI+PGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSIgc3R5bGU9ImZv bnQtZmFtaWx5OkhlbHZldGljYTtmb250LXNpemU6MTJweDtmb250LXN0eWxlOm5vcm1hbDtmb250 LXZhcmlhbnQ6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDtsZXR0ZXItc3BhY2luZzpub3JtYWw7 bGluZS1oZWlnaHQ6bm9ybWFsO3RleHQtYWxpZ246c3RhcnQ7dGV4dC1pbmRlbnQ6MHB4O3RleHQt dHJhbnNmb3JtOm5vbmU7d2hpdGUtc3BhY2U6bm9ybWFsO3dvcmQtc3BhY2luZzowcHgiPjxicj48 YmxvY2txdW90ZSB0eXBlPSJjaXRlIj48YmxvY2txdW90ZSB0eXBlPSJjaXRlIj5CdXQgdGhlIHBv aW50IHdhc24mIzM5O3QgdGhhdDsgd2hhdCBhIExBTFIvTFIgcGFyc2VyIGdpdmVzIHlvdSBpcyBh PGJyPmdyYW1tYXIgYW1iaWd1aXR5IGFuZCBjb25mbGljdHMuLi4gUGV0aXRQYXJzZXIgd2lsbCBo YXBwaWx5IHRha2UgeW91cjxicj5ncmFtbWFyIGFucyB5b3Ugd2lsbCBvbmx5IGRpc2NvdmVyIHdo ZW4gcGFyc2luZyBzb21ldGhpbmcgdGhhdCBpdDxicj5kb2VzbiYjMzk7dCBkbyB3aGF0IHlvdSB3 b3VsZCBsaWtlLjxicj48YnI+KFRoZSByZWZlcmVuY2UgY2l0YXRpb24gb2YgQWhvIGFuZCBVbGxt YW4gaXMgLi4uIGl0IG1heSBiZSBkaWZmaWN1bHQ8YnI+dG8gZGV0ZXJtaW5lIHdoYXQgdGhlIGxh bmd1YWdlIGlzKS48YnI+PGJyPlNvIHNpbmNlIHlvdSBoYXZlIGEgZ3JhbW1hciwgdXNlIExBTFIg dG8gY2hlY2sgaXQuPGJyPjwvYmxvY2txdW90ZT48YnI+QnV0IGFzIEkgc2FpZCB3ZSBkbyBub3Qg aGF2ZSBpdC48YnI+PC9ibG9ja3F1b3RlPjxicj5Zb3UgZG8gaGF2ZSBhIFBFRyBncmFtbWFyIGlu IHlvdXIgUGV0aXRQYXJzZXIgZWZmb3J0cywgc2luY2UgeW91IGhhdmUgYmVlbiB3b3JraW5nIG9u IGl0LiBGcm9tIGZhciwgdGhvc2UgZ3JhbW1hcnMgYXJlIHZlcnkgbXVjaCBsaWtlIG90aGVyIGdy YW1tYXJzLi4uIGp1c3QgdGhhdCB0aGUgcGFyc2VyIGdlbmVyYXRvciBiZWhhdmUgZGlmZmVyZW50 bHkgd2hlbiB5b3UgaGF2ZSBjb25mbGljdHMgYW5kIGFtYmlndWl0eS48YnI+PGJyPlRoaWVycnk8 YnI+X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX188YnI+TW9v c2UtZGV2IG1haWxpbmcgbGlzdDxicj48YSBocmVmPSJtYWlsdG86TW9vc2UtZGV2QGxpc3QuaW5m LnVuaWJlLmNoIiB0YXJnZXQ9Il9ibGFuayI+TW9vc2UtZGV2QGxpc3QuaW5mLnVuaWJlLmNoPC9h Pjxicj48YSBocmVmPSJodHRwczovL3d3dy5saXN0LmluZi51bmliZS5jaC9saXN0aW5mby9tb29z ZS1kZXYiIHRhcmdldD0iX2JsYW5rIj5odHRwczovL3d3dy5saXN0LmluZi51bmliZS5jaC9saXN0 aW5mby9tb29zZS1kZXY8L2E+PGJyPjwvYmxvY2txdW90ZT48YnIgc3R5bGU9ImZvbnQtZmFtaWx5 OkhlbHZldGljYTtmb250LXNpemU6MTJweDtmb250LXN0eWxlOm5vcm1hbDtmb250LXZhcmlhbnQ6 bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDtsZXR0ZXItc3BhY2luZzpub3JtYWw7bGluZS1oZWln aHQ6bm9ybWFsO3RleHQtYWxpZ246c3RhcnQ7dGV4dC1pbmRlbnQ6MHB4O3RleHQtdHJhbnNmb3Jt Om5vbmU7d2hpdGUtc3BhY2U6bm9ybWFsO3dvcmQtc3BhY2luZzowcHgiPjxzcGFuIHN0eWxlPSJm b250LWZhbWlseTpIZWx2ZXRpY2E7Zm9udC1zaXplOjEycHg7Zm9udC1zdHlsZTpub3JtYWw7Zm9u dC12YXJpYW50Om5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7bGV0dGVyLXNwYWNpbmc6bm9ybWFs O2xpbmUtaGVpZ2h0Om5vcm1hbDt0ZXh0LWFsaWduOnN0YXJ0O3RleHQtaW5kZW50OjBweDt0ZXh0 LXRyYW5zZm9ybTpub25lO3doaXRlLXNwYWNlOm5vcm1hbDt3b3JkLXNwYWNpbmc6MHB4O2Zsb2F0 Om5vbmU7ZGlzcGxheTppbmxpbmUhaW1wb3J0YW50Ij5fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXzwvc3Bhbj48YnIgc3R5bGU9ImZvbnQtZmFtaWx5OkhlbHZl dGljYTtmb250LXNpemU6MTJweDtmb250LXN0eWxlOm5vcm1hbDtmb250LXZhcmlhbnQ6bm9ybWFs O2ZvbnQtd2VpZ2h0Om5vcm1hbDtsZXR0ZXItc3BhY2luZzpub3JtYWw7bGluZS1oZWlnaHQ6bm9y bWFsO3RleHQtYWxpZ246c3RhcnQ7dGV4dC1pbmRlbnQ6MHB4O3RleHQtdHJhbnNmb3JtOm5vbmU7 d2hpdGUtc3BhY2U6bm9ybWFsO3dvcmQtc3BhY2luZzowcHgiPjxzcGFuIHN0eWxlPSJmb250LWZh bWlseTpIZWx2ZXRpY2E7Zm9udC1zaXplOjEycHg7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC12YXJp YW50Om5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7bGV0dGVyLXNwYWNpbmc6bm9ybWFsO2xpbmUt aGVpZ2h0Om5vcm1hbDt0ZXh0LWFsaWduOnN0YXJ0O3RleHQtaW5kZW50OjBweDt0ZXh0LXRyYW5z Zm9ybTpub25lO3doaXRlLXNwYWNlOm5vcm1hbDt3b3JkLXNwYWNpbmc6MHB4O2Zsb2F0Om5vbmU7 ZGlzcGxheTppbmxpbmUhaW1wb3J0YW50Ij5Nb29zZS1kZXYgbWFpbGluZyBsaXN0PC9zcGFuPjxi ciBzdHlsZT0iZm9udC1mYW1pbHk6SGVsdmV0aWNhO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtc3R5bGU6 bm9ybWFsO2ZvbnQtdmFyaWFudDpub3JtYWw7Zm9udC13ZWlnaHQ6bm9ybWFsO2xldHRlci1zcGFj aW5nOm5vcm1hbDtsaW5lLWhlaWdodDpub3JtYWw7dGV4dC1hbGlnbjpzdGFydDt0ZXh0LWluZGVu dDowcHg7dGV4dC10cmFuc2Zvcm06bm9uZTt3aGl0ZS1zcGFjZTpub3JtYWw7d29yZC1zcGFjaW5n OjBweCI+PGEgaHJlZj0ibWFpbHRvOk1vb3NlLWRldkBsaXN0LmluZi51bmliZS5jaCIgc3R5bGU9 ImZvbnQtZmFtaWx5OkhlbHZldGljYTtmb250LXNpemU6MTJweDtmb250LXN0eWxlOm5vcm1hbDtm b250LXZhcmlhbnQ6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDtsZXR0ZXItc3BhY2luZzpub3Jt YWw7bGluZS1oZWlnaHQ6bm9ybWFsO3RleHQtYWxpZ246c3RhcnQ7dGV4dC1pbmRlbnQ6MHB4O3Rl eHQtdHJhbnNmb3JtOm5vbmU7d2hpdGUtc3BhY2U6bm9ybWFsO3dvcmQtc3BhY2luZzowcHgiIHRh cmdldD0iX2JsYW5rIj5Nb29zZS1kZXZAbGlzdC5pbmYudW5pYmUuY2g8L2E+PGJyIHN0eWxlPSJm b250LWZhbWlseTpIZWx2ZXRpY2E7Zm9udC1zaXplOjEycHg7Zm9udC1zdHlsZTpub3JtYWw7Zm9u dC12YXJpYW50Om5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7bGV0dGVyLXNwYWNpbmc6bm9ybWFs O2xpbmUtaGVpZ2h0Om5vcm1hbDt0ZXh0LWFsaWduOnN0YXJ0O3RleHQtaW5kZW50OjBweDt0ZXh0 LXRyYW5zZm9ybTpub25lO3doaXRlLXNwYWNlOm5vcm1hbDt3b3JkLXNwYWNpbmc6MHB4Ij48YSBo cmVmPSJodHRwczovL3d3dy5saXN0LmluZi51bmliZS5jaC9saXN0aW5mby9tb29zZS1kZXYiIHN0 eWxlPSJmb250LWZhbWlseTpIZWx2ZXRpY2E7Zm9udC1zaXplOjEycHg7Zm9udC1zdHlsZTpub3Jt YWw7Zm9udC12YXJpYW50Om5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7bGV0dGVyLXNwYWNpbmc6 bm9ybWFsO2xpbmUtaGVpZ2h0Om5vcm1hbDt0ZXh0LWFsaWduOnN0YXJ0O3RleHQtaW5kZW50OjBw eDt0ZXh0LXRyYW5zZm9ybTpub25lO3doaXRlLXNwYWNlOm5vcm1hbDt3b3JkLXNwYWNpbmc6MHB4 IiB0YXJnZXQ9Il9ibGFuayI+aHR0cHM6Ly93d3cubGlzdC5pbmYudW5pYmUuY2gvbGlzdGluZm8v bW9vc2UtZGV2PC9hPjwvZGl2PjwvYmxvY2txdW90ZT48L3NwYW4+PC9kaXY+PGJyPjwvZGl2Pjxi cj5fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXzxicj4KTW9v c2UtZGV2IG1haWxpbmcgbGlzdDxicj4KPGEgaHJlZj0ibWFpbHRvOk1vb3NlLWRldkBsaXN0Lmlu Zi51bmliZS5jaCIgdGFyZ2V0PSJfYmxhbmsiPk1vb3NlLWRldkBsaXN0LmluZi51bmliZS5jaDwv YT48YnI+CjxhIGhyZWY9Imh0dHBzOi8vd3d3Lmxpc3QuaW5mLnVuaWJlLmNoL2xpc3RpbmZvL21v b3NlLWRldiIgcmVsPSJub3JlZmVycmVyIiB0YXJnZXQ9Il9ibGFuayI+aHR0cHM6Ly93d3cubGlz dC5pbmYudW5pYmUuY2gvbGlzdGluZm8vbW9vc2UtZGV2PC9hPjxicj4KPGJyPjwvYmxvY2txdW90 ZT48L3NwYW4+PC9kaXY+PGJyPjwvZGl2PjwvZGl2Pgo8L2Jsb2NrcXVvdGU+PC9kaXY+PGJyPjwv ZGl2PjwvZGl2Pgo= --===============2968346428243608954==--