vala-0.54.8-150400.3.3.1<>,chp9|u ۑ2Xp1|>?=SPE,^CKkuܹ,iQ@ !l4;=sbٍJY{!vV"f" `,p]{VU@P+بZ"2VFLRO_Uv%3U넴,\p)e'+L%7jP')U YjPy,KH#dݫعY>ɚD,kSoOު9Z;-`'`o"(opGٞ`=>E?d  : .Jou|$H H  H H 0H bH dHiHpXHvvH||h|'(_8h9:>d@eBe FeGe,HHjLHIolHXpYpZq [q\qH]v8H^Gbc.defluHvwdHxHy.z\lpvCvala0.54.8150400.3.3.1Programming language for GNOMEVala is an object-oriented programming language with a self-hosting compiler that generates C code and uses the GObject system.chsheep70PSUSE Linux Enterprise 15SUSE LLC LGPL-2.1-or-laterhttps://www.suse.com/Development/Languages/Otherhttps://wiki.gnome.org/Projects/Valalinuxx86_64update-alternatives \ --install /usr/bin/vala vala /usr/bin/vala-0.54 \ 54 \ --slave /usr/bin/valac valac /usr/bin/valac-0.54 \ --slave /usr/bin/vala-gen-introspect vala-gen-introspect /usr/bin/vala-gen-introspect-0.54 \ --slave /usr/bin/vapigen vapigen /usr/bin/vapigen-0.54 \ --slave /usr/share/man/man1/valac.1.gz valac.1.gz /usr/share/man/man1/valac-0.54.1.gz \ --slave /usr/share/man/man1/vala-gen-introspect.1.gz vala-gen-introspect.1.gz /usr/share/man/man1/vala-gen-introspect-0.54.1.gz \ --slave /usr/share/man/man1/vapigen.1.gz vapigen.1.gz /usr/share/man/man1/vapigen-0.54.1.gz \ --slave /usr/lib64/pkgconfig/vapigen.pc vapigen.pc /usr/lib64/pkgconfig/vapigen-0.54.pc# Note: we don't use "$1 -eq 0", to avoid issues if the package gets renamed if [ ! -f /usr/bin/vala-0.54 ]; then update-alternatives --remove vala /usr/bin/vala-0.54 fi %@8. p l (G 0FgD_ |LR#ͭ z q"  -/[IbA8DD%WO+?.6'*^R:RBN ++F#-P( Nb#3LI>  I H@:9 @+ A%#; MtNqD$1GSf;p-gZ7x%*/i; l7D !k8^ & a8A(UFT'?_ *r8e281  }SvZ(R.[JH*R{&( ";968 ImL8=*Ky( 1 !z YD 5NS U Vz6 Li 3cE l59 g+ +j0Ep Yz큤큤큤큤A큤A큤A큤AAA큤chchchchchchchchchchchchchchchchchchchchchchchchb!!b6X__b6Mab!!chSߢchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchch54e0478949b68233d78b0e5421feb2956d2c9859709327e49dcd5c16393bd2df80283d5891669c500d3fe7906893ac3c61cf9914bcbfe88125198084ff023b1be804f177495abf6e11faeab57dd79170f9f5a0030edc3ae41b96d44721d0ac4604f7e9a436faff765f04fc595f7073dd66348bd38da0bd5353b15ed7fce861b3cde8d4d8c0c2949a16ba6d0bfdd129a590e1c84288358d42e951d16f42ec24ba10b077f0697111c7baa96b5e3e2369cbb5bbc16e1c62519b84af3db8c0fb7fb69e528c2b4a897d2f46a69137d6b68908a4adeadb46ed44cef279c900f5887ad9d4fa595e0c639077d2e1bbdce9224c04cf56b9f705ac4cf9a8fa6f871942a8f6fdd2b1a69524bb7c5379cfa139278a9eb4ccc4a77a4342f6a1becee33338a3955af0e237f94beb8ab7a50829b6dd61538493bd24b31e5f1983ad2ae2b0055505fb8284b6057300466698dba88f4e80ed191654f5ed3df3e40b78908deb1c11e468f0c9813ed63bd6ae41fd98f8f2ea8a763ca8f20490d9df1a194ddd0faee40f3fe87e4303632f44a624340498c2931034f66a0f6b9a37f3593b0183aa7ac9e33debe734c777df09c3c762cadd0fea1bebdb857c55243d605dc5b09211895bf3174606e06322236a4bb85553222e7ee1106e9eb0d361e9f499b1f66bb21b5f555df07007198989c622f5d41de8d703e7bef3d0e79d62e24332ee739a452af62a4b6b8bcf0ee0d9eef8018cdae3d94f3350344112ee7ffb38e7a7d084c9d75720a6b38ca31332a837af658f44b117ceaab4bac4a246c644f4d6e48321b9737519661ea07eb91191da917256458919296ba9a69a9536193345f62f645ad99f6a449e94f1baa6932b6ed9757b5013fa1e5f4a365134bf7d56b5edaae377eb7cd41a5af996d6c7ba0fc309cb7d3080a5c431cf5cf24ce81500dc8484705269e28cea9e94f1baa6932b6ed9757b5013fa1e5f4a365134bf7d56b5edaae377eb7cd41a44d578a36a1a3987f8deb7a0bc482e68cef02a3de73164bf58632d97e3574e2f9e94f1baa6932b6ed9757b5013fa1e5f4a365134bf7d56b5edaae377eb7cd41af5eb1635f16ba574de434c73004beb7736c0cbfe3c689df623be5ae981f4bf599e94f1baa6932b6ed9757b5013fa1e5f4a365134bf7d56b5edaae377eb7cd41ad773a7675b295c4f1e6172ba2d2328d1226ae81fb55d618f01f52bd2c40c44559e94f1baa6932b6ed9757b5013fa1e5f4a365134bf7d56b5edaae377eb7cd41a3a0e9c3eb788e62a9268c7ad9b0dc28280774ec03681c9ad067c36567d4d6edaceb1effbcc434e5f31864d2ddab4e0b1ae49862085522b1481fc859771f466de684bef0b263f54aac48a8c07f04f1ceec33aca7898c0d48201c98e7ad39f494fe8959bdf36a303571cf7daa944ecdce9f4f398b777d390753fee34ab8b92984be8feaf51386c5c80d7f435e369cc04ff35236efe5db65a73275c12c0c6f5b15c6e875c1ed1189f3ccd3e373ea29b28113cca7862174e22ab67c1b99b14409ab0fbb82de069dd00c89c228f08c71471dbf828a52816bcc440ed14b9323f8453b58f3b22b8bd824f616618c75a02d9cea3a503e0b3dcf3a543841a1c02f144de5f37beaca43d1bc83bbd949e634e14063d2e9a6eeb2bc03c6bbc25dd19089b9e4ec9307486597e069af46b62f70e35cfbf6903d30777557f694efe409a43de2bed5f1e6ef1e45c5705e9400f405f4d0b97441848c005a690b360996455224887421d91abcca3da8bd19a6b3ed454b651cd159f569b5ee814f191618ccd225312921c7bd3887e51c3bc3825a5278d931582a10c041504e6204537b5785013af81a249ee2231fdd7f88954fa5e1908f3920e88ceb5c0f800d46b93cda4651c0e9844936b36f3ffe4c53868175a59370327b1f1e23e4a6cf584e49f72c02cd5d6fafd8af5566ff5fc63d8c1dec679149987aff89d1eda6d07920c9f07821ae77bd9ce4e20eb7fcc5e235c989c6661cadd976823e3ccaebd23f2a207acdf08eefa7935233fa1134948ee33557a25861e6e743fee101c98cb4f5698cc0acb0651c0584208e37c3bb6d910b945dd5b443331fcf4c7f75884e80d17604c54587dbd1fe9901f94ee635485015b1a115f6591cf14abfa57030edf5ae8b6bd41b5df7e94230d00ad9ce4357b8e9e20616fcc6ac6b59602b9e8def1f78fa2169892493606f48965b53428edf9e6e33a6832b3cc61624d8611aed47dae38ebedc777af6b85943315afaa385d32061125928be0ecdc96a61e803d6979d350a22bb99b347a38fe9d220a49fdfe128ec55b1c062b3992781e66009a1e83838a35730a77bb5d762b530d08c8d7a51ea1d315e0a13164255b27fd1db56599afbe9f44186d72de8ed8ca8545f9f2177ab3eba4edb1d4a98125304c61777980512818aeeda40bb0091693ff93d647ce52cada0e078d75a1b7894f5648c0276d17c3c22c2d7b922a69ea029938594c5f3e530625a02517bc6424af2e36aa3436d13568ad56c2080bc314186a765c6fe5ea1b89e09333e0105a082c078af22e5c5d1ff5a6e10309ee339658f1018bdabd3d757326e5451020a19d5dad43ce4fe344e996093e830b15440ff3bb065853b357e7f2581063529ba327dfb342fdd12fa6e5f35b31b03f1544d810f5e3d13b05ad7692bfa2b38ecdb4c6c8e9d634078b0706c10fa0136079f3bcb13efbe7039add806caf1bb7ca08dbde2215d4c24eff661f43295d871e19ca5370f592506a1d64654e25b1ee105936e83949ebaea0181031f31401148a9fd58dd302532ce2ecffd54cbbcccb778dac273743c340e71406bc09fe3a6e5690f4edd01e3f90d725c3a39bd8ed2d8b0267f9c7b71b02432f08b3154ba07924e4aeed939d60cf13badfe9f95012dc23cd51425e1004fabc97e4650aee5f026db357220eb311a52000646551380cd5766e700244694601f4ad730741c99d0b2697166ab7a556514c90af9fe1a6597b500f80844610ecde81e6860922c2882d589ef42fedceb1effbcc434e5f31864d2ddab4e0b1ae49862085522b1481fc859771f466de45a5740457ce3977e0faf7d71615b9a2e9304a7db8b7a2c720fed384ac487ef7432a7e16fdcb8f1ed38fce7d3056f522e1162116719ba45a54b0956df595ed4734ea0563814bb1f55df4b1eb417d400c826e3e88172295ad73a1cb69b880538728c34b9c76c6ef88ed6221e006f03fd80659760e6fb8f1fae43297df805767e5d15309e44aa45c57684d5d4c3137be68621b2f96e0442bc4b25a469133f27312c64d59c1f180f2392038c7a479185112d943ec8678ddff074d975ad5f45b1eb83192b53b47c88ed0ee185b0baee1485cba1093e2484948940e99dcd767a7ce0c704c020e168cb60944921a4f14b6f2ff522c6a4224bffe6903ef2d1ec7aaa923364ab582526834ef2237d488e11180c57abf405912286ef0ae41b21e9d68eeb9a0a923f6a07995849a074b8dead644248b5943c976b2156c97a827ad1d2f9f331b2d677f713f11f6f4c090e01644ffbf50d6db1330ef104482b21a91192c458e9ca41c89b7ef114b983b8b0254f29e50c01e229a8fa4d39d2e59ec014b9a1e61aee8f161111573c9c5b0c58e9443661f0f24a236c20908fcf6ddb5d2c679755b4322ee5513f98d8d5219229746b614f00e2758be43a21172c15079cd92392c63ac7e647ea5e9a7099a0c0bb5ccbf61d714a819b062b9a38268f0278f8f6c1428b6f5d97a71077ff62d1df17b1eaa91f12c21ff79b3e5fc2d542119b2b109d5afec0c92af5dce2a1fd3368609b3e64b365c249972c933a931313012f998a903eb47c0bd006d00bcaffc1ad857e015a8003e9389968163b5bcbcc02bca9079651531e590d0d50755e912435020f71c3406ae102bd674ade268bf8437d427af648cb4650a8ae1750790ac4452bda393bbc99f17b20b0dcd8a453aedc4ea3c8dd108432e190e857aa09a5bf5170e672a876d03a3f05b3b08b177f8245c3cb1c5441201887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd18887203f447af48e1ab744b6e7935c28599e99456b0f9a7336596a5209a288cf057852701887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd18887203de8109e09f9b88882f8908df6d31a9608d24fb670a7cac7ccb086a563e841b88e83facad3ea4890ad24e0b130f30809201a1225f05442acb563b62d2700fff2cc0e126bc61b28818513e7aaa990fe63d9e0bc05dc04239ce697f41f36cacad7e46b8fcca647ea504afb7e37ada35774bcd6c7e0c6117d5b02677182f1d77ab1c01887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd1888720371b4467f19135c8fe1f7db12e816ff1a972acb067524884225fa0c1b1a0822d8935f581d55784a5ea0858acdd98c19320e0cdce441fdad902055f038597c8545dd37f338af1ef71bda929a4274ce982ecaa8b92df9ec7881d6e3f17b6f2b7ff767bba1ee6b2f125167ef8db68bbfb2c4bd8f3c2e2f75cacf94075218f0b08864c119b4a604af418832691c0b6dfdeeac22bb83e747083bf356b453f9b6632d103717eb8f8daec90d9de87af85a40aa84383554c08b5fc522044316f08c13b433ceb1effbcc434e5f31864d2ddab4e0b1ae49862085522b1481fc859771f466de47d34c322d941918cfe2ff265dbcf3789b781c81c78f59c95b049c635200c70b1c43da6cde4298fb5da213b78530fdace179a8f9c6e2b44d2404c7ef757fd9cec0e126bc61b28818513e7aaa990fe63d9e0bc05dc04239ce697f41f36cacad7ea1647cdf4baf9a895a75a1b5bb8c54feacef2a1d860c5bb844320c7e5dae31c2e8959bdf36a303571cf7daa944ecdce9f4f398b777d390753fee34ab8b92984bc00bb26076fd6beb508fac7d25d6bf0fc71a0f5ce7b47db760dff4dc9e488ae174f3ec23b0f3dbb5ac699968c69cba9898cefa5f758b868aed84544cf79257b4cd7c696f19845887d4e50e5b84c43404f321092d25e6240754d387878200197c0612a7eb41d89c5f8334212677dfa774dd86c33138ebdb8b32769d7764a95760df5f1e7640ece4ddc5fe68a9ffbc1513ff65017234cf795385c098da39688a499a60596ac1abd13bee5c269f68ab6a6e42978d956c4947039eaccf3a0150f8de064aa57951542e3f0cc334bcf2b0c501efc84ed514df6672da54721373e53cd7e8959bdf36a303571cf7daa944ecdce9f4f398b777d390753fee34ab8b92984b7537c572dbb5d38c9a22bc36a1d9fe5365521de39ec02766a657cd750aea4b9ae06a33a3bc47642260106358af1f856c7a9e2ff7432c57751e90501f8f239995ed77a6a904a198db94638873b21de23212e32071b000988e553959128797a12e8cf14112a1a2bedf366db42e3c4b7692a175f09064fdb94303b50f100f4875cce8959bdf36a303571cf7daa944ecdce9f4f398b777d390753fee34ab8b92984bfd50a35765bc467f28e6b22c43ff9feab745bc4cf67b5d030a7eef3e3d6ca9a9e2bf6986cc78cf01a499f5db4abacb7577578509ed7a331d2062fbc6a6a4d7f5d3fd7c06a8e3c59a5af4a7a3434f92936d416def4b04278d4a57161c16698a52ca0029f82854f265dee64f783a2990300a5ad00a4d96e7863709482f33b104868148fd05479833b24f844434733272c4dcf63c9aa56039806f645955a66c25fabd6bb7a82aac473b169744c781a1cc3763c34372fd8b32ac65ba4250db24ec6dcb7692026f3be1e608b5e4ec1f268d2f8dae3b5537af54b58d5c0dfe519abbd8e2bf6986cc78cf01a499f5db4abacb7577578509ed7a331d2062fbc6a6a4d7f5999d0649deaf3d79740efc4d55f84ed844e98b4a021418985457c7413a9e17f0e2bf6986cc78cf01a499f5db4abacb7577578509ed7a331d2062fbc6a6a4d7f50e28c2c09a0a35175321c635e03643404722bb58f1b702c80aac04ac8bd53e03e2bf6986cc78cf01a499f5db4abacb7577578509ed7a331d2062fbc6a6a4d7f56528a80153ad2d0658471f567c36f9ad336531647d246058640aeb16ded80d3ae2bf6986cc78cf01a499f5db4abacb7577578509ed7a331d2062fbc6a6a4d7f5404d29847bd9d5f18867a854128c6172af4ef9b536d58f8d9861270152c06fcce2bf6986cc78cf01a499f5db4abacb7577578509ed7a331d2062fbc6a6a4d7f52ebfbf6e1ec60e68244df235a1619d500e2ba5018eadc3251e8c64b8fdd3f09a2c1264f9b8e442f7921f20680410012f6dbcca1734b8e27ef4736040fb2e27ee3986806018b00980cfece28239e6872448706b1ff4fcea17b658577d7004939418cf3af2e667054499565fe4adcbf24164c6c5ce69f05c4cfc69e59fe6d71552c59b638b15b41e4cefcb0c3eb973da16a5f0fab67d5397a77faf9f9f96867f781b0eea7f4edb2569d68897e0b6a1dcde7bb7c0ee66b12a076e146577ff7782dcc03f187e948ac5ac3c5f9f0aa80060698d79c48a0f40d7fe3beb3f7f2febe413f63db73315e2865fbf9e8732b0b7d8c2d4de29346d03443ee20e1d634465c55c32f7f678fe3ccdb6a025c4118b9d58161a572b6f14083926db056c30cb550cf43c48dc1f67e2f7769d623376500c0eba1749d14466029566c86bfdeaf8bd09d3ec3ad6281fcb4f56d68bfb17d16afd6eee10db087eb5fb98e575ead739fc47b5ca0029f82854f265dee64f783a2990300a5ad00a4d96e7863709482f33b10486b8af06f8d821358f6cf05a1a115b86f1dcc0c4fe723978c7f63734efcd962fb0d83c96f9bf5e1e5afe802143e24ea63b338a81704433205755898c8a701439f3185df4d519070ebaa54b042166eb1a81c1542e304efdeebff863db0bc05310f2987ec290dbfe6c3a64d4cf5d5e8d89af4d649ec396ed51842f5b7914fac54c121934cf11f8dde98cb92ff51620d23518cae191d7feefebf103bbe83a4dbf67e1e2bf6986cc78cf01a499f5db4abacb7577578509ed7a331d2062fbc6a6a4d7f553f34a895f927a70eed31f66c6bf534399277d4a9a74a8378553a88f3598f66cca0029f82854f265dee64f783a2990300a5ad00a4d96e7863709482f33b10486e47bfe6a6033db1af0c6bf6aceb08cca8ca1f0b24b2ae5086c76939b8a66da42ca0029f82854f265dee64f783a2990300a5ad00a4d96e7863709482f33b10486c094730bb81c394707ee383546c7a8e6d5accbc35f0d42afb37542d6e004b1fed3bf31f04a150eca5cc32debe2464944daae0ac1ccc4e4e88aa0cb4ed61f4a5e9eb5be5d3071afc33b1b95f500870c73f5b7f0b94163ce660d04ed7c63b36d43902ffe3f940a62e7b3e4919bdc0b35e9d3ad1a04f0a0e01a71f2c4080c09e528a0d4ff3729643f93e1cc29214afe12bd342d809a441c323d86d040daf641e9d21c6c03b985157cb29efd55a9f1a0e834a0a1be336209da3d994da9106b2aa44035b88adbec86e02f4aeba5ea8ca2648f250208a2f0788ba43e609850cd967d56ca664028f2a9917b959cc629c0e00db19cdd220be2e7d145f47d1775121a69a9b72b3be1a18d842d2a44f7d2f7d25f30998bfa26d15b35e4f481b259b0a28910c59c3b7afd6a7595747737aa578c328c00cfb375ae438c84ab887dfa1935000b077152f32fa8c1437d2798df4d957c1c68c7b424f5b7e5e580006c57679ea9af2d14163070adda4da9af0d8fe0aab69cf85d2fa9ed165165248f1fc861ecd40765406bef493ff6430606cfac826a0584b2bdbeebf43b935c5e0eaab5b9dd377d2eeb65edc470f5b3752b82c7971aa6aeeb7083dd4b8bec3e38669a582e39a5873069789a2f5327b8940e7d19c314a900a23ed52aa09e36f4725f78d6b3faf34bf7a2ccbda34e0f7c54103bbb40abbb41cc5325f9b5f6d24fa8efbb409a0b1eb1700146e9bb09c38b01025306190161e8cf636913f77ccb1ac5cb39e123cd40ef1b131f3f8254d7fc123f06aceaf30ef886b370414e505e2449058200c7f09657c46f5a8ed5aff4396c9d231863aef1d6db49af2f6e6e5c1e2725b8d3458b7db7ceb1effbcc434e5f31864d2ddab4e0b1ae49862085522b1481fc859771f466de72473f4b06e88c7923595a6d35aac92ffb3197094fa47a625e314cc9dc2589e732ca3449a1997d24017a87754a8c878301f4e93d47256695b5988e6101af37b9dfbe51c9daaf8667de5bd86c86993b7c880abb17aa8321ca4126c3b91ed9d3bee8959bdf36a303571cf7daa944ecdce9f4f398b777d390753fee34ab8b92984b8e05f6b0d239588e9a836dc395e03d4dce193157295320406a1afcb4bff072a09887103885b66fe47ebda53f0da210163e192ae621bc0e395e41e1d2d6e55b38a2e614c95a7a0be57b181bb2195ef146e08213480b6e4b60e46d16faf45f1dcd0860fb5278b063458f444ee69f8117a0e4b72d09c8100eb13e7f733d1f9c5b731ef625d70c232956128ea7ae3ab663e90e8edcae1c8af583926a0659f8ad17f405434246bbf68f9468dc1e7dd267e89f0f5b8e249497ed666b927b4a10b15ee901887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd18887203a1d3b2c9286fb448893e078f838eda48f91eeea3a0ffc664cc17095b31e24327ceb1effbcc434e5f31864d2ddab4e0b1ae49862085522b1481fc859771f466dec75a53009f611a6da442f159759a47cab4df0cb8ced51938cadd6a5aa4371adb47b9d07eb7e4501b4cdef11d2a47bc5855aa8c557a2a31079d3e5358b614b39f522a760d7f83fc71304cdb2da855c550d21d2e5576b304357727709bcff0d5c9921d74678564394647558e00bd8843caf881151e4196d6912c85616fc79ec67a948ecb61c868a4822c5a8100f5cbc413f9de773a15996650d8af18b9ccc4e0f354748f5d475ce5d66dbf52ee4a06b40bf5cabc353b8254bae911d13dad63963fdfd9a02940d1150380d8c7ebec0904a06e6ecc5e2990012f10e84bff5eb0708001887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd18887203f90e3e83200d65cb34358f2a1523b4b2a5d33a64c98a73e4f165e7d32a8421811b131f3f8254d7fc123f06aceaf30ef886b370414e505e2449058200c7f096571dd007dc0e4d7f2c42df0d70d403934a6f6eda2de9866cfa337b73d236ea7c4388bbf2a69ff68ae6e9baa1cd351c2c12932f8ef429ace7c98f523fe1c288c80214af99a1cc77d79ca0aa091a62fd9dbbd04c144ecb167d6a723eed0a16801f0276cc02b30b354ff5cc7cc5f3d78be7c75631f18e66050c268395798f896f2a6e5538bda32ed1810ee704b7e882697d83dd277c35e208a8822e03f4a78afd0ed8558d69b02b41cb1619d1fd5b3c31bbc3db31eff1e246824072d037c2294e86f22aace4e50a615db046012d4971aa1de0d1ead2af4aba4be9d7cdcb16804e28c50ae7e5448e73e2e5dd2f050817710181dc7647f95d37dbc541d3d01ff700ac50c9d992094c1c19516c93450af3f9beb3b580c9adb619d8d8cc2a91c038a89f9cb1b38528fb0b0b2952d2f795d8f78f545afa9c2207e60e30db6abf832468a876afcbb0549c8d92f1209107aa5e2a748ea982ac6c58f6e222c1f596eadea3ae6672baff1f11ba92ac4e325402eb1097ef90bbe245e0c01f0e54646153fbd9c0d8ab3957afe381937beff2a1c85d0bf2dc9b3d2cd378f71bdae98613522814ae24d17a7d45c18a8b33563600070285a7b0a2ec3bb68491243942fce08b35d14c11d745fba1cb70ab9dc02a80eeba8a1864a0f32b2941e008c0af389be7b56ba83060245d54240a077690e55a9b0622abc3fa0661ff53ec5eddf81e9f10bee536fed745fba1cb70ab9dc02a80eeba8a1864a0f32b2941e008c0af389be7b56ba8302e4e8f345aec3602fbc99af94ba29075b9f8c1c9667c3923503f0d8487f2006593aa8671e7c229b74633d51539e4c39c8a0354d9efc1379f8ee8fe47d51b5bf091ce9b75a872ae21990927cb1f10a554e6e361dc5f6d265c7164020b007781030bd249e45bd0ebd21188babf12fd8173c3f62b0316df2a862d2d5f48d4082e7fb10d0b6d67e213015f3b883aadc1a4325c595beedc158ae53a3e47fe99472c5484bd9b3243b1f3874a66bf537e57df93d20191123257cceb796a51ca4deb9c99044dd6f1de1d4ce5f2b2cd8d2caf4a8aaa80981f87ab9829e54cca91ffe341a620489f95f8c39008780cdb4f27ebd6964d31fd4e9e23497479e9df6f28c929a2d2494889cd29f3557af27ce6405af2f46e7ea7ccea0514e2246de36e74ce5a26c60b03767d6b154ded8d877a6bb482395eaef82eba01720dfe1dbd85cd22512cd5078f909d15fc03fd438799530446636097c419e51f7b8118c1daf435ef330eaa08af7a83d1406e32c34b7c267a30bdd3492fc1158b4184f1502b41979b5a6a90e21c03636e9d09ca9b66575cb16a5b006fc6bf90e6b7971309146384a1d8d34b8aba586391346545248bf68dc89f748374d7540154fb1984717eff22141a2d01887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd18887203df984915bbd2452a6c7b6a0613f4d852723e382809e91f3a3cfec612f73f84147186efaed8c540465e903ddce31187dddc1e2be7773a320e629939b0ed85eb46ceb1effbcc434e5f31864d2ddab4e0b1ae49862085522b1481fc859771f466de1654a4603e9892a10d4fc54f4e455cb6019c941d8aa17ec6a266fe5d1a95d90acb9b532a8588e8840e8c9f209b16b62491b3ad529147d93933a5e9f5e0b53db01b131f3f8254d7fc123f06aceaf30ef886b370414e505e2449058200c7f09657bb3e6d3e5c479e9ad1c2b02c7e75d3e943b75f8b1ab43139299188d1687b28325273e7a0ce5de3876676de2f7cf30d7e34a3fb0b70ee8477d3f84ad9ccca0040e69fbb2b965a2b3b335c0eea090b3516ef22421655a2ac92e97aa88bbbeca0342f88037c6d27c59af54a653a432e34de944a35cbefc1db744614ab65cd4aa338ceb1effbcc434e5f31864d2ddab4e0b1ae49862085522b1481fc859771f466debd3934f608ee781f96311776f5ad7b7487f6c0161a0c186b69443f0cd5344f8e37293cf29468740d4f36e3025fb0cfc89a23a7d15c0d9be50f4eb5977edab5a038881475d937dd4c6688bb461f2379234c7ddbf20e9dc466672f8f2b788b4bc4c182efb4f093394e026b316f99e9b54d2f5944bd52a35a9a4343c02790c789a3efe1575347c05018e326142b4835228d1e3294c105211d8e7a90c2d70bca7c4401887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd188872032f87de5b0170dec1359e0bdfab1e88e77ae610fabadbdb19f98bed6180516e8f87ad96236fafaaa1791a92b2d0a71b1898a6c3e7d05efac0940b3aae337fa717bbb9cda87ce78d43eb7c809427070830e5a49d67a01c09c9207ccae1d42f53cabcbc131cd731b693772e13170304d30400b12e53aa2fc64e004d2141fceee3fdcb1d7bea89b084c7bba92c7b296751b94f8e626def898b716ec6e5d42388c2333ee67326ebe10ac23bc7cf5ce4ac38434d7d0edd0648f485e7ab5c2c3cea092080e28aa778c3be3be445f169a5f0d8545a9078f75c2a86004d01afa893373ff737f99e013d1fc10b5c52d5da3c81924b0b2da0c4f3984992100fb8909bac271c01887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd1888720364be11e9904296bfe3c05bb4f07505f90ad66275e72aaf6a47d0e64b9425c71ffb74d9397d69ccac62d75a953f100f103c302d9dfe9dc7eaf677ab5a24a7c10e2b92aff685c604da890d5b0531bf479a6ac407ee190afad6d95aa725268f6cb5b9c9de0893852aaba1fa3250ea845968905f7ff0390555762e7683fb6c159fbd33a7b522f1515a108265853ce869ad61e670666e16cf69a839d22790af6ce07bde743a6df3f1d089c937e77e49942c4448872ebc1a2a9a284dbf097d5a13e7755762fe55cf9c649e5c516cb304eb12554c8854baf7d324e65a18db7448ce0cb1b65f813c87649d699db336a514a758ff4dc1e85906ce681f8830798020bf75bd00fcbfe3bb18ce501fd89a1a7b4656d70b6718c6dba349cf4347219cae363406bffbec5665b6dd839024e23274e3d4cc8760ab77b7e95f85cac2f2d343f4e4d69d3a8727207598148668bf5c463f7f6ae3573c538bc8ce6c2095089c96f8381e44f6713a5d35d86d4b08b0e3773f4dd7eda12cfc4e993e33f80215a9accad6daaf398a73bf47e12a525c38b2a6bba6b00246b12f536961c3deb2ba99fa25c6fd2edac20f44132c8a9f1abb386184132a38b1e638743a4f46aefba60f5e3f59329e94f1baa6932b6ed9757b5013fa1e5f4a365134bf7d56b5edaae377eb7cd41a1512c55e16375d6d5bfb4d3056ac84a0b8649279a693378573e5bc4387af18dd9e94f1baa6932b6ed9757b5013fa1e5f4a365134bf7d56b5edaae377eb7cd41ac664d2101744b5a53637e67665ed559be449c053a39a7aced513eecbc29584989e94f1baa6932b6ed9757b5013fa1e5f4a365134bf7d56b5edaae377eb7cd41af5637fca759515c984044a0c535b1fd074be1c6206410d83bc1c73c238ec3f0fee281db965e9253cba305e6c5274f09a30f24a1abca28555a0e7cb5e8f68f3c4525332b2462befe439414df8c6f451ef4b96d724af4add27b814f26251bcf4dc3e4cc94ad5b7f684e6fd5f532289488a1a17443f196d051be80b0ec62c6b145f2ec3ea3aa78649d1ed170d71ff3fd3169aa861f73c2121521bec1171d32fedbae7e078298ee253f3a56b26a0d17b3f30ebefcee913ef86002e423739d8777c65865a23cc1ff2f378caba60e1d48c16033eeb48088dc9dc3c1d3671bbf0bc30362e48f77900b4af77a6d46f20ad10bf6d0ed3e9e85dd36f62ec2caa5ba2e7c37c01887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd1888720320984bea5c53620253f7c28fc3f34c7e4710da8f2be4ee9c5175614b5f2cc3451b2bdd7a0f6c514f0c6d01ff83f6a657cb0afba5c2cf8231d66b50642becb7eeb4451862da63e9800965215ccfeea0bd06fb50d2b3689228ee671e1b3d508952aaf895afa923b75f0f4ed9bb69ff9fb23752f945461cd5e7d14f48aaf1236f1a3adb6276ad108a346fe9cd2afcab11b037595a97ea0c2abbeee0e26aa01ec7c38c4c80c1130b82bdd7ec23cb2c7303d84fce6ac8656f2280d9e997d0be0fe2be3adb6276ad108a346fe9cd2afcab11b037595a97ea0c2abbeee0e26aa01ec7c3f8d8db2441630a9e92cbd087406bde6e87795fc60b98bcc389dfeb40c49ace1b6f447552c60affd50bf470cfa7c1fdd6d6196ba0d6a04c5af36e02c059ebb233982a2b6904893af6415240c38983f3de7a440ee225e2fa6ffb63bbc8a69cb4a967628bc679fe8711e446cc50859903c525d99bb89013b3ea7728b29f16bf408fd9df86be6f587db22ea1bc2ccdf2be1ab103939a6c4a1e75c0db1251ac7019adfc411187f79fe568d872e71ce46140ea3c966fdf4336267541477156283deef39bb89075a7aa6acac83a5be5b76db35e5885b2c490b1c84cdda710c332047e9f32df88f8f1fbb0564ee3583eb74c47cb3a355280007617bb5d8db4aebdc81f4aea3ba300e1b6508e3b2f49357141223182499ec69e362a904a214179a40bd912/etc/alternatives/valavalac-0.54/etc/alternatives/vala-gen-introspect/etc/alternatives/valac/etc/alternatives/vapigen/etc/alternatives/vapigen.pcvala-gen-introspect-0.54.1.gzvalac-0.54.1.gzvapigen-0.54.1.gz@@@@@@@@rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootvala-0.54.8-150400.3.3.1.src.rpmlibvalaccodegen.so()(64bit)pkgconfig(vapigen)pkgconfig(vapigen-0.54)valavala(x86-64)vala-devel@@@@@@@@@@@@@@@@     /bin/sh/bin/sh/bin/sh/usr/bin/pkg-configlibc.so.6()(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.7)(64bit)libglib-2.0.so.0()(64bit)libgmodule-2.0.so.0()(64bit)libgobject-2.0.so.0()(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2.5)(64bit)libvala-0.54.so.0()(64bit)libvalaccodegen.so()(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)update-alternativesupdate-alternatives3.0.4-14.6.0-14.0.4-14.0-15.2-14.14.3b7@b0a|a*@aa}3aZaI@aD@a3_a#a``@`z`S@`F`:4@`/@`-@_=_^@_u_ts@_ts@_ts@_s!_S}_16_16_$^)@^x^@^@^^<@^<@^<@^<@^<@^}^|@^?@]҇]M@]]@]m]m]m]m]H@]-@]\\\\6\\}@\}@\}@\}@\}@\}@\}@\}@\G\@[[t[@[z@[z@[z@[z@[L[+@[ZԐ@ZUZ&ZZ@ZZH@ZZZZZZZZv@ZvZqZe@Z7ZC@YdYzYY@@YY@Y@Yp@YP@YYXXrXƉXXX@XtXQ4@XQ4@XOXEVX5X @WW@W;WgV@V@VHUUUUUU@U @T@T@Td@T;bjorn.lie@gmail.comgmbr3@opensuse.orgbjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.comdimstar@opensuse.orgbjorn.lie@gmail.comdimstar@opensuse.orgbjorn.lie@gmail.combjorn.lie@gmail.commgorse@suse.comdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgmgorse@suse.comdimstar@opensuse.orgdimstar@opensuse.orgbjorn.lie@gmail.comdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgbjorn.lie@gmail.combjorn.lie@gmail.comdimstar@opensuse.orgdimstar@opensuse.orgbjorn.lie@gmail.comdimstar@opensuse.orgbjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.comdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgbjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.commgorse@suse.commgorse@suse.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.comluc14n0@linuxmail.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgluc14n0@linuxmail.orgdimstar@opensuse.orgluc14n0@linuxmail.orgdimstar@opensuse.orgluc14n0@linuxmail.orgbjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.combjorn.lie@gmail.comzaitor@opensuse.orgfezhang@suse.comluc14n0@linuxmail.orgzaitor@opensuse.orgjengelh@inai.dezaitor@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgdimstar@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgdimstar@opensuse.orgzaitor@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgadam.majer@suse.dedimstar@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgdimstar@opensuse.orgzaitor@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgdimstar@opensuse.orgdimstar@opensuse.orgzaitor@opensuse.orgzaitor@opensuse.orgolaf@aepfle.dedimstar@opensuse.org- Update to version 0.54.8: + Various improvements and bug fixes: - codegen: . Emit G_DEFINE_AUTOPTR_CLEANUP_FUNC() for interfaces with base class. . Emit G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC() for structs. . Drop confusing warning when accessing interface members. - vala: Catch and throw possible inner error of lock statements. - girparser: . Handle duplicated and unnamed symbols. . Add support for "copy_/free_function" metadata for compact classes. . Don't count instance-parameter when checking for backwards closure reference. + Bindings: - gst-editing-services-1.0: Fix BaseEffect.set_time_translation_funcs() - gstreamer-audio-1.0: Fix a few binding errors - gstreamer-base-1.0: Fix a few binding errors - gstreamer-video-1.0: Fix a few binding errors - gtk4: Fix content_deserialize_async() - libarchive: Fix a few binding errors - libgsf-1: Fix a few binding errors - libgrss: Fix FeedItem.get_geo_point() parameters - SDL2_ttf: Fix a few binding errors - tiff: Fix a few binding errors- Update to version 0.54.7: + Various improvements and bug fixes: - codegen: . Generated SimpleType structs don't have a type id . Avoid symbol clashes with "va_*" from "stdarg.h" . Access of inline allocated array is guaranteed to be non null . Don't uncoditionally null check callback_func for GLib.Closure . Access of stack allocated struct is guaranteed to be non null . Use correct target/destroy of delegate field initializer - gtkmodule: Improve UI parsing and handling of nested objects and properties - vala: . Show source location when reporting deprecations . Require lvalue access of delegate target/destroy "fields" . Transform assignment of an array element as needed . Add missing TraverseVisitor.visit_data_type() . Make sure to drop our "trap" jump target in case of an error . Move dynamic property errors to semantic analyzer pass . Free empty stack list for code contexts . Clear SemanticAnalyzer.current_{symbol,source_file} when not needed anymore - parser: Reduce the source reference of main block method to its beginning - parser: Improve handling of nullable VarType in with-statement - manual: Update from wiki.gnome.org- Update to version 0.54.6: + Various improvements and bug fixes: - codegen: . Allow boxing of non-external SimpleType structs . Cast given default-value of struct with possible member initializer . Clear existing length values when revisiting a slice expression - vala: . Allow unsafe assignment of integer to enum while reporting a notice . Non nullable enum types are simple types . Correctly replace "in" expression in pre-/postconditions of method + Bindings: gio-2.0: Add custom MemoryOutputStream.with_*data() wrappers- Update to version 0.54.5: + Various improvements and bug fixes: - codegen: . Correctly handle chain up of struct creation methods . Use a dedicated EmitContext for _variant_get*() functions . gtkmodule: Handle nested closure elements and bind them accordingly - vala: . NullLiteral is not a valid argument for string concatenation . Set is_yield_expression in async context when chaining up to async base ctor . Report statement parsing error if it is not meant to be an expression . girparser: Avoid possibily creating duplicated attributes - vapigen.m4: use $PKG_CONFIG_SYSROOT_DIR + Bindings: - glib-2.0: Always use the actual C type for CCode.array_length_type - gstreamer: Cherry-pick bindings fixes from 0.56 - gstreamer-1.0: Unskip the ElementFactory.make/create_full() symbols- Update to version 0.54.4: + Various improvements and bug fixes: - codegen: . Use CCodeConstant for member access of constant symbol . Emit constants without initializer list in defines section . Add and use CCodeConstantIdentifier for accessing constants . Check required length of enum type name for GType support . Add missing check while overriding virtual async interface methods . Drop inconsistent space for ObjectType parameters . Accept CCode.type attribute on parameters . Fix CCodeUnaryExpression.write() for PREFIX_INCREMENT/PREFIX_DECREMENT - vala: . Improve error message for invalid handler of dynamic signal . Using SignalHandler.disconnect() is required for dynamic signals . Check for unavailable value-type of variable initializer . Add [Profile] as known attribute for methods . Report error on missing gio-2.0 package for async constructors . Fix signals with generic return . parser: Split out Parser.parse_switch_section_statement() . parser: Better handling of misplaced switch sections - genie: . Amend text of indent and dedent for error messages . Accept INTERR token before type arguments when parsing type . Properly handle plain "get" or "set" property accessors . "exception" is the expected string for TokenType.ERRORDOMAIN . Accept accessibility/async modifiers on "construct" creation methods - girparser: Accept "sealed" for transformed records and compact classes - gtkmodule: Improve error message for invalid signal element in ui-file - build: Add "test-update" which passed UPDATE_EXPECTED=1 to refresh c-expected - tests: Rename colliding test cases to avoid conflicts + Bindings: - alsa: Add more API and fix a few things - gnome-desktop-3.0: Some parameter fixes - gstreamer: Cherry-pick bindings fixes from 0.56 - gstreamer-base-1.0: Some parameter fixes - gtk4: Update to 4.5.0~cd9b7307 - pango: Cherry-pick bindings fixes from 0.56- Update to version 0.54.3: + Various improvements and bug fixes: - codegen: Actually free data when using "remove(_all)" on GLib.Queue/(S)List - vala: . Parameter following ellipsis parameter is not allowed . More thorough check of ValueType and set CodeNode.error on failure . Really check compatiblity of error types for delegate symbol . Correctly output signature of callable throwing error . Report error for non ErrorType in throws . Implement CodeWriter.visit_foreach_statement()/visit_catch_clause() - parser: Make sure ErrorCodes are accessible as needed - girparser: Add support for "ref_/ref_sink_/unref_function" metadata for classes - Replace post(un) handling for libvala and libvaladoc with new ldconfig_scriptlets macro.- Update to version 0.54.2: + Various improvements and bug fixes: - vala: . Multi-dimensional params-array not allowed . Accept NullType as generic type argument . Set source references of created DataType instances in OCE + Bindings: - gio-2.0: Update to 2.71.0~a0d2efdc - glib-2.0: Update 2.70 symbols - gtk4: Update to 4.5.0~da5efea6- Update to version 0.54.1: + Regression and bug fixes: - codegen: . Add type declaration for implicit temporary local variable. . Sealed class in external package is not special. + Bindings: - gstreamer: Update from 1.19.0+ git master. - gtk4: Update to 4.5.0~3e20ecd6.- Update to version 0.54.0: + Various improvements and bug fixes: - vala: Warn about unsupported cast to void and drop it. - vala: Don't restrict element type of GLib.Array. - valadoc: Correctly format background of inline @link's. + Bindings: - gio-2.0: Unhide a few usable symbols which are marked not introspectable.- Update to version 0.53.2: + Various improvements and bug fixes: - codegen: . Fix property access inside opaque compact class . Add missing cast to access base-class members in class/static ctor + Bindings: - glib-2.0: Current constants in GLib.Math are part of glib.h - glib-2.0: Add RefString since 2.58 - gstreamer: Update from 1.19.0+ git master - gtk4: Update to 4.5.0~e681fdd9 - vapi: Update GIR-based bindings- Update to version 0.53.1: + Highlights: - Support explicit nullable var-type declarations, - Add support for variadic delegates, - Add support for sealed classes, - Add support for null-safe access operator, - Emit external creation methods in bindings, - Introduce VALA_EXPORT for public symbols to improve portability, - girwriter: + Use "optional" and "nullable" instead of deprecated "allow-none", + Improve struct creation method binding, - girparser: + Improve instance method detection, + Never skip "function" elements, + Add "move-to" value of functions as Version.replacement, + Various improvements and bug fixes. + Updated bindings.- Update to version 0.52.5: + Various improvements and bug fixes: - codegen: . Allow null to initialize non-null struct inside initializer list . Implementing GLib.Source.prepare/check is optional since 2.36 . Fix variadic constructors for compact classes and structs . Use detroy_value() for delete statement . Fix params-array in constructor for struct - vala: . Rely on DataType.to_qualified_string() for error-types . Disallow resize() for constant arrays - Recognize multiple valid CCode.gir_namespace/_version in VAPI files - Slightly improve source_reference for get_dup_func_expression() - girwriter: . Respect GIR.name for constants, errordomains and delegates . Add explicit writable attribute to all field elements . Fix position of "result" parameter for struct constructor . Write missing c:type attribute of compact class record - girparser: Add support for "final" class attribute - tests/girwriter: Add missing [Flags] annotation - testrunner: Add support for girwriter tests - docs: Update bootstrap instructions in README.md + Bindings: - Partly revert "gstreamer: Update from 1.19.0+ git master" - glib-2.0: expected_type and return value of VariantDict.lookup_value() is nullable - glib-2.0: Add Uri.to_string/to_string_partial() (since 2.66) - gobject-2.0: Fix the Closure.invoke() signature - gstreamer: Update from 1.19.0+ git master - gtk4: Update to 4.3.2+04f3c805 - linux: Substitute linux/if.h with net/if.h - linux: Fix some bindings errors - linux: Fix i2c-dev constants- Update to version 0.52.4: + Various improvements and bug fixes: - codegen: . GArray, GByteArray and GPtrArray are reference counted . Replace wrongly hard coded usage of G_OBJECT_GET_CLASS . Don't add errornous cast for unknown type_symbol . Mark entry point method implementation "_vala_main" as static . Improve check for GLib.Source derived classes - vala: Parameter following params-array parameter is not allowed - doc: Update man page to include more information on profiles + Bindings: - glib-2.0: Add missing has_typedef attributes on SourceFuncs delegates - gstreamer: Update from 1.19.0+ git master - gtk+-3.0: Update to 3.24.29+f9fe28ce - gtk4: Update to 4.3.0+24f0ae1d - pango: Mark language parameter of AttrIterator.get_font() as out - vapi: Update GIR-based bindings- Update to version 0.52.3: + Various improvements and bug fixes: - codegen: . Apply gconstpointer to gpointer cast to GenericType only. . Fix access to captured generics in async method of interfaces (2). . Use if-clause for is_in_destructor() condition to be more clear. . Add missing "_return" label and "_inner_error*_" declaration in dtors. . Don't use G_GNUC_INTERNAL on implicit type specific fields. - vala: . length-type of arrays must not be nullable. . Report a warning for unhandled errors in destructors. - parser: . Minor semantic checks to improve error messages. . Allow empty member-initializer and accept trailing comma. . Include INTERR token in source_reference of parsed types.- Update to version 0.52.2: + Regression and bug fixes: - codegen: . Don't free temp-var for element-access to array with boxed structs. . Don't free unowned heap allocated struct. + Bindings: glib-2.0: Add simple_generics attribute to GenericArray.find_custom(). - Changes from version 0.52.1: + Various improvements and bug fixes: - codegen: . Improve handling of ellipsis parameter in get_ccode_name(). . Fix default value of get_ccode_destroy_notify_pos(). . Don't override valid target/destroy of previous lambda argument. . Don't call *_instance_init() in compact class chainup. - vala: Mark tranformed static member-access as qualified. - parser: Stricter mode for chained member initializer with - -keep-going. - girwriter: namespace expects "c:symbol-prefixes" attribute. - girwriter: Don't use instance-parameter inside callback. - girparser,libvaladoc/girimporter: Don't guess length of xml header, iterate forward to . - libvaladoc/girimporter: parse_constant() use "c:identifier" attribute first. + Bindings: - gsl: Add BLAS module. - rest-0.7: Fix OAuthProxyAuthCallback binding. - gtk+-3.0: Fix ModuleInitFunc binding. - gio-2.0: Fix TlsPassword.get_value() binding. - Fix several bindings which lead to invalid code by using them in: javascriptcoregtk-4.0, libusb, libusb-1.0, pixman-1, webkit2gtk-web-extension-4.0, x11, zlib.- Update to version 0.52.0: + Various improvements and bug fixes: - codegen: Include "glib.h" for deprecated symbols (GOBJECT). - vala: Improve error for incompatible expressions in conditional expression. - vala: Check for unused attributes unconditionally. - girparser: Allow overriding of "Compact" attribute for classes. - girparser: Handle empty "" element and report an error. - girparser: Add support for NoWrapper metadata for methods. - build: Add --enable-test-asan configure option.- Update to version 0.51.90: + Various improvements and bug fixes: - codegen: + More use of get_ccode_type_name(). + "_first_array" parameter for params-array is variadic too. + Inherit GType from base struct of SimpleType structs. - vala: + Report warning if --target-glib=auto was not evaluated successfully. + Fix ownership inheritance of "unowned var" in foreach statement. + Use pre-resolved symbol/type of SemanticAnalyzer if possible. - gdbus: Don't leak memory of deserialized arguments on error in wrapper method. - girparser: Reuse populated Node.gtype_struct_for instead of resolving again. - girparser: Evaluate "glib:type-struct" twice to pick up reparented structs. - testrunner: Include Gio-2.0/gio-2.0 for GIR tests too. + Bindings: gtk4: Update to 4.1.1+f8f90d85.- Update to version 0.51.3: + Various improvements and bug fixes: - codegen: + Don't use volatile modifier in glib API when targetting >= 2.68. + CCodeBaseModule.get_type_id_expression () won't return null. + Don't wrongly emit declaration for default-handler of signals. + Include "string.h" for strcmp() (POSIX). - vala: + Generics value holding struct pointer requires casting on access. + Infer needle type for "in" expression on enum. + Don't allow "in" operation with different enum types. + Improve context check whether property is writeable on assignments. + Include "stdlib.h" for Enum.to_string() (POSIX). + Set proper source_reference for implicit "this" and "result" variables. + Report error for invalid inner operand of unary expressions. - girwriter: Output default handler of signals. + Bindings: - glib-2.0: Add new symbols from 2.68. - webkit2gtk-4.0: Update to 2.31.90. - vapi: Update GIR-based bindings.- Update to version 0.51.2: + Various improvements and bug fixes: - vala: + Check type-arguments in base-types/prerequisites of class/interface. + Include type-checks in preconditions of methods for type narrowing. + Capturing va_list parameters/variables is not allowed. + Properly parse and handle chained initialization of members. - codewriter: Output valid vala syntax for LoopStatement and don't write trailing ";" after body of WithStatement. + Bindings: + gstreamer: Update from 1.19.0+ git master. + vapi: Update GIR-based bindings.- Update to version 0.51.1: + Support "binding" to bind GtkCallback to class of given property. + Add support for type narrowing. + Support chain up to simple generics constructor. + Perform runtime version check of libvala. + girparser: Handle anonymous delegate not backed by virtual-method or signal. + Add support for 'opaque' compact classes. + Add further support for params arrays in constructors. + Improve handling of "NoWrapper" attribute. + Improve support of SimpleType struct constructors. + Use __attribute__ instead of G_GNUC_* in POSIX profile. + Add SDL 2.x bindings [#1032] amd drop SDL 1.x. + Various improvements and bug fixes. + Various binding updates.- Update to version 0.50.3: + Various improvements and bug fixes: - codegen: . Use CCodeInvalidExpression instead of place holders . Don't leak memory of already assigned out-parameter on error . Don't leak memory on internal value comparison of property setter . Fix assignment of casted struct value to property - vala: . Report an error if gio-2.0 is missing for DBus support . Add missing TraverseVisitor.visit_addressof_expression() . value_type of PointerIndirection expressions must not be owned . SliceExpression need to return heap-allocated or unowned references . Accept "unowned var" as type for foreach variable declaration . Ownership transfer of inline-allocated array is not allowed - tests: Use Automake’s parallel test driver to speed up running tests - testrunner: A lot of simplifications + Bindings: - gio-2.0: Fix DBusSubtreeIntrospectFunc binding - gstreamer-1.0: Fix direction of GLib.Value typed parameters - gstreamer: Update from 1.19.0+ git master - gtk4: . Use correct cheader_include for wayland/x11 gdk backend . Don't rename binding for gtk_css_provider_load_from_data . Update to 4.0.1 - webkit2gtk-4.0: Update to 2.30.3- Update to version 0.50.2: + Various improvements and bug fixes: - codegen: . More use of delegate_target_type and delegate_target_destroy_type. . Reduce get_delegate_target/ get_delegate_target_destroy_notify calls. . Don't use inferred type for temp-value to access generic property. . Update outdated array _size_ variable of captured local-variable. . Report internal error for unsupported collection type in foreach. - vala: . Issue an error on void initializer for local-variable. . Allow markup-reader to accept spaces around '=' of attribute assignment. . CodeNode.source_reference is optional, so let the API respect that. . Use DataType.compatible() to check for string concatenation. - valadoc: Don't call CodeContext.pop() on empty stack. - libvaladoc: Don't filter-out generic type-parameters of delegates. - libvaladoc/girimporter: Skip "docsection" elements in . - testrunner: Add "-Werror=return-local-addr" flag. + Bindings updates.- Update to version 0.50.1: + Various improvements and bug fixes: - codegen: . Don't falsly use g_return_val_if_fail() for async creation method. . Don't pass CCodeFunctionCall to NULL-aware free macro. - vala: . Improve parsing of with-statement and allow it as embedded statement. . Prioritize the usage of an existing with-variable instance, Recognize previously inserted implicit access to with-variable. - parser: Allow to begin expression with statement keyword. - g-i: Fix a couple of C compiler warnings. - libvaladoc: Fix a couple of C compiler warnings. - testrunner: Pass --enable-checking to increase coverage, Filter external -0X flags to preserve current default -O0. - build: Stop passing obsolete --use-header. + Update bindings.- Update to version 0.50.0: + Codegen: The actual struct size is required for calloc (POSIX).- Update to version 0.49.92: + Various improvements and bug fixes: - Don't use locale dependent string functions on syntax strings. - girparser: Additionally fallback to "glib:type-name" to retrieve the cname.- Update to version 0.49.91: + Various improvements and bug fixes: - codegen: Don't append unreachable clean-up section of Block. - codegen: Always include base_struct declaration if available. - vala: Additionally break on ObjectCreationExpression in "tainted" check. - vala: Add ObjectCreationExpression.to_string(). - manual: Update from wiki.gnome.org. + Bindings: - gio-unix-2.0,glib-2.0: Updates for 2.66. - gtk4: Resolve a few conflicts of methods with virtual-methods. - Changes from version 0.49.90: + Regression and bug fixes: - tests: Don't rely on undefined use-after-free behaviour of glibc. - Add TraverseVisitor for traversing the tree with a callback. - Force usage of temporary variables for "tainted" member accesses. - vala: Move transformation of unary increment/decrement to codegen. - vala: Set parent_node for child nodes of lambda-expression. + Bindings: - gstreamer: Update from 1.17.2+ git master. - gtk4: Update to 3.99.0+e6e2d6b4. - pango: Update from 1.46.0. - webkit2gtk-4.0: Update to 2.29.91. - Changes from version 0.49.2: + Highlights: - Support non-virtual signals with default handler. + Various improvements and bug fixes: - Switch context if with-variable is not owned by with-statement.- Update to version 0.48.11: + Various improvements and bug fixes: - codegen: . The actual struct size is required for calloc (POSIX) . Don't pass CCodeFunctionCall to NULL-aware free macro - g-i: Fix a couple of C compiler warnings - libvaladoc: Fix a couple of C compiler warnings - testrunner: Pass --enable-checking to increase coverage, Filter external -0X flags to preserve current default -O0 + Bindings: - gstreamer: Update from 1.18.0+ git master - gtk4: Don't skip LayoutManager.create_layout_child() - gtk4: Update to 3.99.1+15b635d7 - poppler-glib: Update to 20.09.0 - vapi: Update GIR-based bindings - webkit2gtk-4.0: Update to 2.30.1- Update to version 0.48.10: + Various improvements and bug fixes: - tests: Don't rely on undefined use-after-free behaviour of glibc - Add TraverseVisitor for traversing the tree with a callback - Force usage of temporary variables for "tainted" member accesses - vala: . Move transformation of unary increment/decrement to codegen . Set parent_node for child nodes of lambda-expression . Additionally break on ObjectCreationExpression in "tainted" check . Add ObjectCreationExpression.to_string() - codegen: Don't append unreachable clean-up section of Block - codegen: Always include base_struct declaration if available - manual: Update from wiki.gnome.org - Don't use locale dependent string functions on syntax strings - girparser: Additionally fallback to "glib:type-name" to retrieve the cname - libvaladoc/girimporter: . Fallback to "name" for callback . Fallback to "glib:type-name" for class, interface and record . Improve parse_symbol_doc() and don't use parse_doc() . Skip "attribute" elements - libvaladoc/gtkdoc-importer: . Correctly retrieve "url" from "ulink" elements . Don't let parse_block_taglet() return null + Bindings: - gstreamer: Update from 1.17.2+ git master - gtk4: Update to 3.99.1 - gtk4: Resolve a few conflicts of methods with virtual-methods - pango: Update from 1.46.0 - webkit2gtk-4.0: Update to 2.29.91- Update to version 0.48.9: + Regression and bug fixes: - codegen: Include header for base-symbols when connecting vfuncs. - vala: + Inherit CCode.returns_floating_reference attribute from base. + Mark tranformed member-access as qualified. - girparser: Add support for string "feature_test_macro" metadata. - Revert "girwriter: Use appropriate get_ccode_* functions". + Bindings: - gio-unix-2.0: Fix "g_unix_mount_for" binding. - gio-2.0: Include "gio/gsettingsbackend.h" for GLib.SettingsBackend members. - goocanvas-2.0: Fix some field ownerships and types. - gstreamer: Update from 1.17.2+ git master. - gtk4: Update to 3.99.0+358b698e. - pango: Update from 1.45.4+. - posix: Add missing "has_typedef" attribute for some delegates. - posix: Declare WRDE_APPEND constant as public. - Drop vala-revert-girwriter-get_ccode.patch: fixed upstream.- Add vala-revert-girwriter-get_ccode.patch: Revert "girwriter: Use appropriate get_ccode_* functions"; fixes generation of Tracker's .gir files used by gnome-music.- Update to version 0.48.8: + Various improvements and bug fixes: - codegen: . Handle "gtk_param_spec_expression" in get_param_spec() . Properly compare string if binary-expression contains string-literal . Inline allocated and constant arrays are never NULL . Check param for null before using it . Properly destroy elements of an inline struct array - vala: . Avoid subsequent critical caused by invalid array type for constant . Improve error handling of nested initializer lists . Don't allow "resize" invocation on variable with unowned array type . Property must be writable when invoking ReturnsModifiedPointer method . Recursive check of assignment target to recognize constants . Return copy of constant type in get_value_type_for_symbol() . Handle parameter initializer without value-type . Fully qualify member-access when using-directive was used to resolve . Tranform instance member-access to a static one if possible . Improve check of expression passed to yield . Allow prototype access to signal with emitter . Check error-type accessibility of creation methods and delegates - girparser: Warn about conflicting signals and properties - girparser: Skip 'docsection' elements in - girwriter: . Add c:identifier-prefixes to . Write c:type="void" when name="none" . Write c:symbol-prefix on supported elements . Don't include symbols outside of a namespace . Use appropriate get_ccode_* functions - libvaladoc: Support exporting the `class` modifier on methods and fields - Disable deprecation warnings when checking bindings - tests: Fix "methods/extern" test with -Werror=address and gcc 5.4.0 + Bindings: - glib-2.0: Add AtomicUint, an alternation of AtomicInt for uint - gstreamer: Update from 1.17.2+ git master - gtk+-3.0: Update to 3.24.21+ffe2df7b - gtk+-3.0: Resolve conflicts of signals with properties - gtk4: Resolve conflict of DropTarget.drop signal with property - gtk4: Improve Gtk.ParamSpecExpression binding - gtk4: Fix binding of CClosureExpression ctor [#1024] - gtk4,gtk4-unix-print: Update to 3.98.5+23dcf36e - webkit2gtk-4.0: Update to 2.29.4- Update to version 0.48.7: + Various improvements and bug fixes: - codegen: . Improve array-dup-wrapper for empty arrays. . Don't call get_ccode_finish_instance() with non-async methods. . Cast initializer-list to struct for non-constant/-array assignment. . Consistently use get_ccode_lower_case_prefix() for function names. - vala: . Correctly handle qualified struct type in initializer list. . Reduce calls of CodeContext.get(). . Fix value-type for ArrayCreationExpression used as argument. . Improve parameter check of "get" method used for foreach. . Don't carry floating reference into unknown target type expression. - girparser: Actually respect given cprefix metadata for enumerations. - girwriter: Append symbol-attributes to callback field. - parser: Avoid mitigation for missing token if it follows DOT or DOUBLE_COLON. - libvaladoc/girimporter: Skip "function-macro" elements. - build: Update git-version-gen to latest upstream. - tests: Build typelib if g-ir-compiler is available. + Bindings: - gstreamer-audio-1.0: Adjustments for Gst.Audio.Sink class extension. - gstreamer: Update from 1.17.1+ git master. - gtk+-3.0: Deprecated abstract methods are not required to be implemented. - gtk4: Prefix value names of PaintableFlags with "STATIC_". - gtk4: Mark optional methods of Gdk.Paintable interface as virtual. - gtk4: Update to 3.98.5+fca2ba96. - harfbuzz-gobject: Update to 2.6.8. - pango: Update from 1.45.2. - webkit2gtk-4.0: Update to 2.29.2. - vapi: Update GIR-based bindings.- Update to version 0.48.6: + Regression and bug fixes: - codegen: . Correctly handle cast-expression of real struct to nullable struct. . Use loop index instead of get_ccode_pos() for ellipsis parameter. - vala: . Allow node_ref being null in SemanticAnalyzer.get_instance_base_type(). . SemanticAnalyzer.get_instance_base_type() is not allowed to return null. . params-array parameter is not allowed in abstract/virtual method. . Use stable hash for methods in HashMap of implicit_implementations and Use "str_equal" as equal_func for ArrayList instances. . Set value_type of undefined member-access to avoid further criticals. . Transform cast from floating-type to boxed-type. . Transform cast from integer-type to boxed-type. . Explicit "new" method may be incompatible with a posssible base method. - valadoc: Add implicit "Posix" using-directive for POSIX profile. - girparser: Add support for boolean "new" argument for methods. + Bindings: gtk4: Update to 3.98.3+028942c8.- Update to version 0.48.5: + Regression and bug fixes: - Revert "vala: Set default_construction_method in semantic-analyzer check if required". - tests: Fix make dist.- Update to version 0.48.4: + Various improvements and bug fixes: - codegen: . Fix binary 'in' operator on array with boxed value-typed needle . Use get_value_*_function() in GSignalModule.generate_marshaller() . Correctly handle signals returning real non-nullable struct . Use specified indices to access multidimensional array constants . Fix base-access to non-abstract/non-virtual properties . Fix default of CCode.pos for parameters in async methods - vala: . Set default_construction_method in semantic-analyzer check if required . Fix cleaning of output in CodeContext.pkg_config_modversion() . Don't use possibly uninitialized backing field of package_name . Add SourceReference.contains() and SourceLocation.to_string() . Check assigned handler of dynamic signal before proceeding further . Don't perform version check on internal lambda method . Perform version check for types of non-external variable declarations . Quote symbol on report by version attribute check . Ensure non-empty argument list for "disconnect" before accessing it - girparser: . Move special handling for certain parameters to process_callable() . Drop special handling of GLib.Data, GLib.PtrArray and GLib.String . Improve detection of AsyncReadyCallback/AsyncResult parameters - parser: Handle incomplete expression statements + Bindings: - gio-2.0: Add "async_result_pos" attributes to * .call_with_unix_fd_list() - glib-2.0: . Fix Filename.canonicalize() binding of g_canonicalize_filename . Guard Pid.to_string() with GLIB_2_50 to deal with G_PID_FORMAT - gstreamer-app-1.0: Don't merge Src.push_buffer_*() signal with its method - gstreamer-1.0: Don't skip GST_*_FORMAT strings - gtk4: Update to 3.98.3 - vapi: Update GIR-based bindings- Update to version 0.48.3: + Various improvements and bug fixes: - codegen: . Append initializer for "_*_size_" of array field in internal struct . Avoid critical trying to serialize an unsupported type to Variant . Don't free value if property setter takes ownership . Correct field declaration for captured inline-allocated array . Include "glib.h" for G_BEGIN_DECLS/G_END_DECLS usage . Correctly handle transformation of translated string-literal constants . Don't pass CCodeCastExpression to NULL-aware free macro - vala: . Support struct initializer list in non-constant array . Handle unlock() statement in CodeWriter . Handle all ctors and dtors in CodeWriter . Consider boolean types are compatible with each other . Parse standalone integer/real literals as expression statement . Warn about usage of override to implement abstract interface methods + Bindings: - gio-2.0: Update to 2.65.0~a136776e - gstreamer: Update from 1.17.0+ git master - gtk4: Update to 3.98.2+11495027.- Update to version 0.48.2: + Various improvements and bug fixes: - vapigen: Define "GOBJECT" corresponding to set profile of CodeContext - codegen: . Reset outdated array _size_ variable after use as ref parameter . Emit postconditions before free'ing local variables . Correctly access captured parameter in precondition of method . Use correctly typed array-length variable for property-getter . Use correctly typed array-length variable for delegate invocation . Inherit "array_length_type" from (base-) parameter/property/method . Improve handling of "array_length_type" attribute . Use memset to init inline-allocated array with non-constant size . Initialize temp-var for property array length before calling getter . Include "glib.h" for g_return_*() usage - vala: . Use error() instead of Report.error() inside of CodeContext.get() . Accept enum-values as length for inline allocated arrays . Improve copy of required attributes from delegate to lamdba method . Inherit lambda parameter attributes from delegate . Inline-allocated array aren't instantiated with creation expression - valadoc: Create and register current Vala.CodeContext properly - parser: Improve error message for invalid ArrayCreationExpression - tests: Drop usage of "--main main" and avoid ambigious entry-points - manual: Update from wiki.gnome.org + Bindings: - Add cairo-gobject binding - cairo: Add missing type_id attributes guarded by GOBJECT define - glib-2.0: Add binding for g_poll() [#924] - glib-2.0: Add binding for g_win32_ftruncate() - glib-2.0: Add missing IOChannel's win32 API - gio-2.0: Add binding for g_io_error_from_win32_error() - gstreamer: Update from 1.17.0+ git master - gtk4: Update to 3.98.1 - posix: Add pathconf and fpathconf bindings - vapi: Update GIR-based bindings.- Update to version 0.48.1: + Various improvements and bug fixes: - codegen: . Replace hard-coded "gsize" with resolved "size_t" . Add destroy of parameter in vfunc of delegate property setter . Inherit "array" attributes from (base/-interface) property . Inherit "delegate_target" from (base/-interface) parameter/property/method . Actually respect "delegate_target" attribute of method/parameter . Move ObjectTypeSymbol casting to GTypeModule . Factor out GValueModule and GLibValue into a separate source-files . Avoid symbol clashes with "va_*" from "stdarg.h" - vala: . Fix search for Parameter.base_parameter . Real struct-type without type_id can't be used for GObject property - codewriter: Output inner interface declarations + Bindings: - glib-2.0: Add missing "type_id"/"has_type_id" attributes to structs - glib-2.0: Memory profiling ("g_mem_*") is deprecated since 2.46 - linux: Don't depend on GLib.Time when using POSIX profile - gtk4: Update to 3.98+2da445f9 - poppler-glib: Update to 0.85 - vapi: Update GIR-based bindings- Update to version 0.48.0: + Various improvements and bug fixes: - vala: . Fix circular reference in Property/EnumValueType. . Report an internal error for unavailable context and bail. . Prevent possible stack-overflow in Class.is_subtype_of(). - Add missing CodeContext.pop() calls. - codegen: Add more "low-level" includes of "glib.h". - girparser: Decrease return_array_length_idx for transformed function. - girparser: Delay adding of "GLib.Object" prerequisite to interfaces. - manual: Update from wiki.gnome.org. + Bindings: vapi: Update GIR-based bindings.- Update to version 0.47.92: + Various improvements and bug fixes: - Add support for sealed classes in bindings. - codegen: Don't initialize stack-allocated array with local-constant length. - vala: Improve robustness of analyzer pass for language-servers. - vala: Add local-variables to current scope regardless its error state. - testrunner: Pass G_DEBUG=fatal-warnings to invalid test. + Bindings: Add some fundamental deps files to improve --nostdpkg support.- Update to version 0.47.91: + Various improvements and bug fixes: - vala: . Fix base-access check for compact classes. . Don't ignore errors in Parameter and acknowledge them further. . Properly set CodeNode.error when reporting an error. - girparser: Report a warning for conflicting class and instance methods. - testrunner: Invalid tests and therefore expected failures must return 1. - manual: Update from wiki.gnome.org. + Bindings: - Add harfbuzz-gobject binding. - gstreamer: Update from 1.17.0+ git master. - gtk+-*.0,gtk4: Fix iter parameter of TextIter.order(). - gtk4: Update to 3.98.0+410dbdf6. - pango: Update and add harfbuzz-gobject as dependency. - webkit2gtk-4.0: Update to 2.27.90.- Update to version 0.47.4: + Various improvements and bug fixes: - vala: . Make *_try_id specific to emit-context instead being global states. . Improve detection of recursive struct declarations. . Inline allocated arrays require length or initializer. - parser: Improve robustness and behavior of --keep-going. - Bindings: . javascriptcoregtk-4.0: Make JSC.Class usable by defining the right callback. . gtk4: Update to 3.96.0+4ab12ab7. . vapi: Update GIR-based bindings. - Changes from version 0.47.3: + Highlight: Add further support for params arrays. + Various improvements and bug fixes: - codegen: . Don't set implemenation of interface property to its own. . Use result value of assignment rather than its computation. . Cast instance parameter in member-initializer for base-properties. - vala: . Infer target_type in coalescing expressions. . Non-nullable value-type in coalesce expression needs to be copied. . Fix short-circuiting behavior of coalescing operator. . Always bail if there are semantic errors. - girparser: Apply explicitly given ctype metadata attributes on callables. + Bindings: - glib-2.0: Let (u)int.try_parse() return false if there is an unparsed part. - gtk4: Update to 3.96.0+7e2e92a8. - gstreamer: Update from 1.17.0+ git master. - vapi: Update GIR-based bindings. - webkit2gtk-4.0: Update to 2.27.4.- Update to version 0.46.7: + Various improvements and bug fixes: - codegen: . Don't initialize stack-allocated array with local-constant length . Add destroy of parameter in vfunc of delegate property setter . Reset outdated array _size_ variable after use as ref parameter . Emit postconditions before free'ing local variables . Correctly access captured parameter in precondition of method . Use memset to init inline-allocated array with non-constant size . Initialize temp-var for property array length before calling getter . Include "glib.h" for g_return_*() usage - vala: . Properly set CodeNode.error when reporting an error . Improve robustness of analyzer pass for language-servers . Add local-variables to current scope regardless its error state . Fix circular reference in Property/EnumValueType - Report an internal error for unavailable context and bail - Prevent possible stack-overflow in Class.is_subtype_of() . Fix search for Parameter.base_parameter . Use error() instead of Report.error() inside of CodeContext.get() . Accept enum-values as length for inline allocated arrays . Improve copy of required attributes from delegate to lamdba method . Inherit lambda parameter attributes from delegate . Inline-allocated array aren't instantiated with creation expression - Add missing CodeContext.pop() calls - girparser: . Report a warning for conflicting class and instance methods . Decrease return_array_length_idx for transformed function - Delay adding of "GLib.Object" prerequisite to interfaces - vapigen: Define "GOBJECT" corresponding to set profile of CodeContext - valadoc: Create and register current Vala.CodeContext properly - parser: Improve error message for invalid ArrayCreationExpression - testrunner: Pass G_DEBUG=fatal-warnings to invalid test - manual: Update from wiki.gnome.org + Bindings: - Add cairo-gobject binding - Add harfbuzz-gobject binding - Add some fundamental deps files to improve --nostdpkg support - cairo: Add missing type_id attributes guarded by GOBJECT define - glib-2.0: Add binding for g_poll() - glib-2.0: Add binding for g_win32_ftruncate() - glib-2.0: Add missing IOChannel's win32 API - glib-2.0: Add missing "type_id"/"has_type_id" attributes to structs - glib-2.0: Memory profiling ("g_mem_*") is deprecated since 2.46 - gio-2.0: Add binding for g_io_error_from_win32_error() - gtk+-3.0: Update to 3.24.14 - gtk+-*.0,gtk4: Fix iter parameter of TextIter.order() - gtk4: Update to 3.98.0+410dbdf6 - linux: Don't depend on GLib.Time when using POSIX profile - poppler-glib: Update to 0.85 - posix: Add pathconf and fpathconf bindings - webkit2gtk-4.0: Update to 2.27.90- Update to version 0.46.6: + Various improvements and bug fixes: - codegen: . Fix precondition in creation method of structs . Don't set implemenation of interface property to its own . Use result value of assignment rather than its computation . Cast instance parameter in member-initializer for base-properties . Skip StructRegisterFunction for boolean/integer/floating types . Handle different type-symbols in visit_base_access() . Explicitly include header for length-type of arrays . Explicitly include as needed for null-literal - vala: . VoidType is actually compatible with itself . Keep formal_target_type on transform of method-call/object-creation . Add a basic parameter check for [Print] methods . Don't ignore inner errors in Block and acknowledge them further . Don't report further errors if MemberInitializer.check() failed . Improve error message for unsupported inner types and declarations . Don't allow "va_list" as return-type or type of fields . Check before accessing "name" of parent_symbol which might be null . Allow to override base interface properties explicitly . Always bail if there are semantic errors . Fix base-access check for compact classes . Improve detection of recursive struct declarations . Inline allocated arrays require length or initializer . Don't ignore errors in Parameter and acknowledge them further - parser: Implicit "main" method of main-block is public and static - genie: Fix parser's inner state when a struct is declared after a class - girparser: Apply explicitly given ctype metadata attributes on callables - testrunner: Invalid tests and therefore expected failures must return 1 + Bindings: - glib-2.0: Add to_string() for GLib.PollFd and GLib.Pid - gstreamer: Update from 1.17.0+ git master - gtk+-3.0: Update to 3.24.13+3822ac74 - gtk4: Update to 3.96.0+4ab12ab7 - webkit2gtk-4.0: Update to 2.27.4- Update to version 0.46.5: + Regression and bug fixes: - codegen: . Fix vfunc signature of delegate-typed property in interface . Fix support of dynamic DBus methods - vala: . Don't require constant initializer in fast-vapi . Report error for async creation expression without yield + Bindings: glib-2.0: Add "has_typedef = false" to custom MarkupParser*Func delegates- Update to version 0.46.4: + Various improvements and bug fixes: - codegen: . Use G_TYPE_INSTANCE_GET_INTERFACE to get vtable for base-access . Fix setting of generic-type properties for gobject chain up . Make type-parameter properties readable . Reduce code duplications when generation base-access - vala: . Warn when passing arrays to typeof(), except for "string[]" . Don't falsely resolve binary-expression to bool . Do not allow += for arrays with fixed length . Infer array length of inline allocated arrays for fields . Do not allow to .resize() on arrays with fixed length . Do not allow to change .length of arrays with fixed length . Improve error message for arrays as type arguments . Improve error reporting for invalid interface prerequisites . Write value of constants/enums in fast-vapi if constant only . Restore DestroysInstance behaviour for non-compact classes - parser: `owned` is not allowed on Constants - girparser: Detect and replace "-" in parameter names - girwriter: Add readable="0"/private="1" attribute to type-specific fields - gidl: . Calculate size correctly, avoid use-after-free . Avoid use of uninitialized "markup" warning . Ignore flags like -mfpmath=sse, -msse or -msse2 - valadoc: . libvaladoc: Fix parameter and property ownership declarations . Fix ownership declarations of Constants - pkg-config: . vala: Add missing gmodule-2.0 to Requires.private of pkg-config file . libvaladoc: Move gmodule-2.0 to Requires.private of pkg-config file + Bindings: - glib-2.0: Guard against passing null source to GLib.Memory.copy() - gio-2.0: Use custom TaskReadyCallback delegate in Task.report*_error() - gstreamer: Update from 1.17.0+ git master - gtk+-3.0: Skip _MountOperationHandler* symbols - gtk4,gtk4-unix-print: Update to 3.96.0+ab407ba5 - libusb-1.0: Don't depend on glib-2.0 - libusb-1.0: Remove unused private "malloc" binding - linux: Add memfd_create(2) - posix: Bind some essential memory allocation functions - webkit2gtk-4.0: Update to 2.27.2- Update to version 0.46.3: + Various improvements and bug fixes: - codegen: . Accept children after generating type specific declarations . Preserve full access to delegate variables and its target/destroy cvalues . Initialize delegate temp-var which is assigned by property getter . Silence warning about copying if delegate doesn't carry its target . Use gtype-boxed API for structs with "g_boxed_free" attribute - ccode: Implicitly register declaration for added CCodeFunction - vala: Fix compatible/disposable check between structs and their subtypes - vala: Don't issue a warning for non-public struct fields in bindings - girparser: Add required copy/free attributes for gtype-boxed structs and regenerate GIR-based bindings to pick up copy/free attributes - docs: Mention requirement of autoconf-archive as build-dependency - vapi: Perform syntax and semantic check for all bindings on "make check" + Bindings: - avahi-client: Fix "use of possibly unassigned parameter" warnings - glib-2.0: Set default_value attribute for GLib.pointer - gnutls: Fix "use of possibly unassigned parameter" warnings - tokyocabinet: Fix deprecation warnings - xcb: Fix "missing return statement at end of subroutine body" errors- Update to version 0.46.2: + Various improvements and bug fixes: - vala: . Report dedicated error message for params-array parameter mismatch. . Output "params" qualifier of parameters. . Allow to override virtual interface implementations. . Perform stricter compatibility check for delegates. - codegen: Directly use "memmove()" while g_memmove() is deprecated. - valadoc: Explicitly pass --pkg libgvc. - tests: Add more tests to increase coverage. + Bindings: - gio-unix-2.0: Fix DesktopAppInfo.get_string(), UnixFDMessage.steal_fds(). - glib-2.0: DateTime.from_iso8601() can take a null TimeZone. - gobject-2.0: Some cherry-picking from GIR generated binding. - gstreamer: Update from 1.17.0+ git master. - gtk4: Update to 3.96.0+bcea9652. - gtk4: Constructors of Gtk.MediaFile needs to be static functions. - sqlite3: Fix use of possibly unassigned parameter `errmsg'.- Update to version 0.46.1: + Regression and bug fixes: - vala: Run FlowAnalyzer on all given source-files. - valadoc: Explicitly pass --pkg libvala@PACKAGE_SUFFIX@ as for doclets/tests. + Bindings: - gio-unix-2.0: Add UnixMountEntry.get_root_path() since 2.60. - gstreamer: Update from 1.17.0+ git master. - gtk4: Update to 3.96.0+97231ca2. - gtk+-3.0: Ownership mismatch of ColorButton.rgba property-accessor. - vapi: Update GIR-based bindings.- Update to version 0.46.0: + Highlights: - Add boolean CodeContext.keep_going and corresponding compiler option. + Various improvements and bug fixes: - vala: . Move find_parent_type_symbol/get_this_type() to SemanticAnalyzer . Exclude nullable simple-type structs from gobject-property support. . Reject unary operations on nullable integer/floating/boolean type. - codegen: . Don't append unreachable clean-up section of Block. . Don't cause double-free due append_local_free() in uncaught-errors. . Don't unconditionally add/return internal "result" variable - codewriter: Write "weak" modifier for properties. - girparser: Improve evaluation of instance-parameter information. + Regenerate GIR-based bindings to pick up out/ref instance-parameters. - girparser/gidlparser: "value_owned = true" by default for property types. - libvaladoc: Don't traverse into close circles with parent. - genie: Creation methods should not be static. + Bindings: - glib-2.0: Fix MutexLocker binding. - glib-2.0: Add missing "DestroysInstance" attributes to Mutex/Locker API. - glib-2.0: Use 'GStatBuf' as ctype for 'Stat'. - glib-2.0: Add new symbols from 2.62. - gio-2.0: Drop metadata for NativeSocketAddress. - gstreamer: Update from 1.17.0+ git master. - gtk4: Regenerate to pick up DestroyInstance attributes. - json-glib-1.0: Change abstract methods of Serializable to virtual. - libsoup-2.4: soup_auth_new is not a constructor but a factory method. - vapi: Update GIR-based bindings.- Update to version 0.45.91: + Various improvements and bug fixes: - vala: Init formal_target_type of built ArrayCreationExpression from InitializerList. - vala: Add missing closing brace/bracket in to_string() of ArrayCreationExpression and InitializerList. + Bindings: - cairo: Add 1.16 symbols. - linux: Add more Input and update UserspaceInput bindings. - sqlite3: Bind sqlite3_expanded_sql() and sqlite3_normalised_sql(). + Changes in version 0.45.90: + Various improvements and bug fixes: - vala: . Support static methods in error-domains. - codegen: . Move private type-struct to type-definition section. - valadoc: Install icons and doclets to API dependent folders. - Bindings: . glib-2.0: Add new symbols and deprecations from 2.62. . glib-2.0: Add MappedFile.from_fd constructor. . gstreamer: Update from 1.17.0+ git master. . posix: . Add *at() calls and related constants. . vapi: Update GIR-based bindings + Changes in version 0.45.3: + Various improvements and bug fixes: - vala: Add Symbol.is_extern and use/set is accordingly. - codegen: . Don't write declaration of extern symbols with given header. - Bindings: . glib-2.0: Add new symbols from 2.62. . gstreamer: Update from 1.17.0+ git master. . vapi: Update GIR-based bindings. + Changes in version 0.45.2: + Various improvements and bug fixes: - genie: Drop unused "writeonly" token - genie: Make 'self' match its TokenType name - Bindings: . gmodule-2.0: Build from GIR. . glib-2.0: Add Unicode 12.0 symbols. . gstreamer: Update from 1.17.0+ git master. . webkit2gtk-4.0: Update to 2.25.1. . vapi: Update GIR-based bindings. + Changes in version 0.45.1: + Highlights: - Require and target GLib >= 2.48. - Add support for --target-glib=auto. - Report error for public creation methods of abstract classes. - Report error for yield statements without async context. - Write "Source" attribute in fast-vapi mode. - Support GObject properties with nullable GType-based struct type. - valadoc: Drop obsolete "Driver" API. + Various improvements and bug fixes: - Bindings: . Remove vte, vte-2.90 bindings. . Rename graphene-1.0 to graphene-gobject-1.0. . gstreamer: Update from 1.17.0+ git master. . gtk4: Update to 3.96.0+322507f2. . vapi: Update GIR-based bindings. - Up glib2 requirement. - Update vala_version, vala_libversion, and vala_priority. - Adjust doclets directory in files.- Update to version 0.44.8: + Various improvements and bug fixes: - vala: . Support static methods in error-domains. . vala: Init formal_target_type of built ArrayCreationExpression from InitializerList. . Add missing closing brace/bracket in to_string() of ArrayCreationExpression and InitializerList. . Reject unary operations on nullable integer/floating/boolean type. . Run FlowAnalyzer on all given source-files. - codegen: . Don't append unreachable clean-up section of Block. . Don't cause double-free due append_local_free() in uncaught-errors. . Don't unconditionally add/return internal "result" variable. - codewriter: Write "weak" modifier for properties - girparser/gidlparser: "value_owned = true" by default for property types. - libvaladoc: Don't traverse into close circles with parent. - genie: Creation methods should not be static. - valadoc: Explicitly pass --pkg libvala@PACKAGE_SUFFIX@ as for doclets/tests. + Bindings: - cairo: Add 1.16 symbols. - glib-2.0: Fix MutexLocker binding. - glib-2.0: Add missing "DestroysInstance" attributes to Mutex/Locker API. - glib-2.0: Use 'GStatBuf' as ctype for 'Stat'. - glib-2.0: DateTime.from_iso8601() can take a null TimeZone. - gio-2.0: Drop metadata for NativeSocketAddress. - gio-unix-2.0: Add UnixMountEntry.get_root_path() since 2.60. - gtk4: Sync from 0.46 branch. - json-glib-1.0: Change abstract methods of Serializable to virtual. - libsoup-2.4: soup_auth_new is not a constructor but a factory method. - linux: Add more Input and update UserspaceInput bindings. - posix: Add *at() calls and related constants. - sqlite3: Bind sqlite3_expanded_sql() and sqlite3_normalised_sql(). - sqlite3: Fix use of possibly unassigned parameter `errmsg'. - webkit2gtk-4.0: Update to 2.26.0.- Update to version 0.44.7: + Various improvements and bug fixes: - vala: . Fix mixup of target_glib_major/minor in set_target_glib_version(). . Implicit GValue cast requires GOBJECT profile. . NoAccessorMethod checks require GOBJECT profile. . 'construct' is not supported in POSIX profile. - codegen: . Use G_TYPE_CHECK_INSTANCE_CAST for comparisons with interfaces. . Append line-break after G_DEFINE_AUTOPTR_CLEANUP_FUNC. . Include required type-definition when casting from generic pointer. - girparser: Handle "function-macro" by skipping them. + Bindings: - glib-2.0: Add MappedFile.from_fd constructor. - posix: Fix return-value of mknod() and c-include for tcgetsid(). - webkit2gtk-4.0: Fix WebContext.initialize_notification_permissions(). - x11: Fix return type of XInternAtoms and XGetAtomNames bindings.- Update to version 0.44.6: + Various improvements and bug fixes: - codegen: . Real structs are allowed by simple generics and passed as reference. . Assign GValue result of function calls to temp-var on copy_value. - build: Pass -no-undefined when linking libvalaccodegen. - tests: Null-terminate arrays for compatibility test of uint8 / uchar. + Bindings: - glib-2.0: Add binding for g_strv_equal() (since 2.60). - glib-2.0: Bind strcmp0 as GLib.CompareFunc. - glib-2.0: Fix RecMutexLocker binding. - gtk4: Update to 3.96.0+b05d1676. - xtst: Fix signature of XTest.fake_relative_motion_event(). - Bump vala_priority from 42 to 44, something we should have done many micro versions ago.- Update to version 0.44.5: + Various improvements and bug fixes: - Only warn about imcompatible type of external construct property. - codegen: Use array_length of collection variable instead of expression. - girparser: Skip 'attribute' elements. - girwriter: Report error on secondary top-level namespace. + Bindings: - gtk+-3.0: Update to 3.24.9~18177388. - gtk4: Update to 3.96.0+8cfdd6c5.- Update to version 0.44.4: + Various improvements and bug fixes: - vala: No-accessor struct properties in GLib.Object class must be owned. - codegen: . Always use G_TYPE_CHECK_INSTANCE_TYPE for external symbols. . Move GObject property validity checks to SemanticAnalyzer. - parser: Multiple corrections for source-location of code-nodes. - build: Pass some useful G_LOG_DOMAIN definitions. - girwriter: . Mention that this file is generated and not meant to be modified. . Properly resolve GLib.TypeInterface instead of hardcoding it. . Multiple improvements and fixes for e.g. GType classes. - girparser: Add support for string "ctype" metadata. - When freeing local variables don't stop at "switch" on "continue". - compiler: Add OptionFlags.NO_ARG to deprecated "--thread" option. + Bindings: - glib-2.0: Don't annotate dedicated GLib.assert_*() functions with [Assert]. - clutter-1.0: Bind Margin, PaintVolume, Point, Rect and Size as struct. - cogl-1.0: Fix out-params in Cogl.get_modelview_matrix/projection_matrix/bitmasks. - gstreamer: Cherry-pick some fixes from 0.46. - gtk4: Update to 3.96.0+69016825.- Update to version 0.44.3: + Regression and bug fixes: - codegen: Always assign original variable when consuming instance to destroy. - build: Require --with-cgraph configure flag when cross-compiling. + Bindings: - gdk-3.0,gtk+-3.0: Update from 3.24.7+. - gtk4: Update to 3.94.0+2594593d. - gstreamer: Update from 1.15.2+ git master. - pango: Fix StringBuilder parameter of scan_word().- Update to version 0.44.2: + Various improvements and bug fixes: - ccodegen: . Resolve generics in sizeof-expression of parameter initializer. . Move implicit GValue cast for comparison to BinaryExpression. . Use available *_unref functions in G_DEFINE_AUTOPTR_CLEANUP_FUNC. . Move get_type_signature() to DataType. . Move try_cast_variant_to_type() to GVariantModule.visit_cast_expression(). . Don't create special GArray clear-func for non-null structs. . Implement silent-cast for GLib.Variant. - vala: . Variadic parameters are not supported for async methods. . Report error for unsupported operator instead of assertion. - girparser: Create correct output in get_default_lower_case_suffix(). - libvaladoc: . Handle missing Content.List.Bullet.ORDERED in switch. . Handle missing Run.Style.NONE in switch. - Add explicit "default: break;" statements for coverage of enum-typed switch. + Bindings: - glib-2.0: Don't annotate dedicated GLib.assert_*() with [Assert]. - gio-2.0: Revert enum-typed flags parameters in Socket API. - gobject-introspection-1.0: Fix TypeInfo and TypeTag method references. - gstreamer: Update from 1.15.2+ git master. - gstreamer-1.0: Fix TypeFind and TypeFindFactory method references. - gtk4: Update to 3.94.0+f273eca7. - vapi: Update GIR-based bindings.- Update to version 0.44.1: + Various improvements and bug fixes: - Codegen: . Use unsigned default value for flags-enum. . Use guint to represent flags-enum in custom GMarshalFunc. - Move disconnect error from signal-module to semantic-analyzer pass. - Mark defined constructors of abstract classes as protected. - parser: Implicit creation method of abstract classes must be protected. - vala: Allow assignment of 0U to enum types. - libvaladoc: Don't try to create a Content.ListItem when there is none. + Bindings: - gio-2.0: SocketAddress.from_native() is a factory method not a constructor. - glib-2.0: Add string.validate_len() since 2.60. - gstreamer: Update from 1.15.2+ git master. - gtk4: Update to 3.94.0+f14d998c. - libgvc: Some additions and ownership/return-type fixes. - vte-2.90: Mark as deprecated, it was replaced by vte-2.91. - vapi: Update GIR-based bindings.- Update to version 0.44.0: + Various improvements and bug fixes: - parser: Adjust various source references. - vala: More regular invocations of check() on inferred Expression.value_type. + Bindings: - gstreamer: Update from 1.15.2+ git master. - gtk4: Update to 3.94.0+eacbeb9e. - vapi: Update GIR-based bindings.- Update to version 0.43.92: + Various improvements and bug fixes: - codegen: . Allow to associate CCodeFile to actual SourceFile. . Only emit declaration of *_register_type if needed. . Add get_variable_array_length_cname() and use as possible. . Respect array_length_cname attribute for global fields. . Replace gvaluecollector_h_needed with dedidated add_include() calls. . Respect finish[_vfunc]_name attributes defined in vala sources. . Include "glib-object.h" for typeof expression. - vala: . Correctly perform compatibility check of array length-type. . Don't ignore qualified parent when inferring type of enum member. - girwriter: . Support transfer-ownership="container" for arrays. . Always use get_gir_name() for TypeSymbols. - testrunner: Add support for Genie source files (.gs). - tests: Add some Genie tests to increase coverage. - genie: Allow main function "init" to return integer as exit status. + Bindings: - gobject-2.0: Add SignalHandler.disconnect_by_data(). - poppler-glib: Update to 0.74. - gtk4: Update to 3.94.0+b4ae491b. - vapi: Update GIR-based bindings.- Update to version 0.43.91: + Various improvements and bug fixes: - Revert "valadoc: Drop duplicated code to add source files and use CodeContext API" and "valadoc: Update API tests". - valadoc: Report warning if resources for doclet could not be copied. - libvaladoc: Properly support the output of async constructors. - girparser: Correctly set array_length_type for delegates returning an array. - Revert "vala: Don't replace assignments for local variables with non-null simple-types". + Bindings: - Follow GTK upstream rename to gtk4 and gtk4-unix-print. - gtk4,gtk4-unix-printer: Update to 3.94.0+02e856f6. - gtk+-unix-print-*.0: Fix PrintJob.get_page_ranges(), Printer.get_hard_margins(). - atk-1.0: Adjust for upstream revert of Implementor using G_DEFINE_INTERFACE. - clutter-1.0: Drop deprecated from Actor.pick(). - glib-2.0: Add "delegate_target = false" to Log.writer_journald/_standard_streams/_default. - gio-unix-2.0: Add DesktopAppInfo.get_string_list() since 2.60. - gstreamer: Update from 1.15.1+ git master. - webkit2gtk-4.0: Update to 2.23.91. - vapi: Update GIR-based bindings.- Update to version 0.43.90: + Various improvements and bug fixes: - codegen: . Replace some unfortunate asserts with internal error reports. . Properly handle and catch inner-error of finally-block. . Pass lambda expression of variable initializer to signal connect. - vala: . Check inferred variable_type of LocalVariables. . Parser doesn't ensure "protected" to be applied on TypeSymbol members. - libvaladoc: Don't change the size of an array in-parameter. - g-i: Fix return value on error in start_discriminator(). + Bindings: - Add goocanvas-2.0 bindings. - gdk-3.0: Update to 3.24.4+a0129f55. - glib-2.0: Bind g_log_writer_journald/_standard_streams/_default as LogWriterFunc. - goocanvas: Update from 1.0.0+af07af5d. - gstreamer: Update from 1.15.1+. - gtk+-4.0: Update to 3.94.0+a7fa1cf6. - vapi: Update GIR-based bindings.- Update to version 0.43.6: + Various improvements and bug fixes: - codegen: Don't apply address-of operator on literals when casting to array. - vala: Don't tweak closure on static lambdas. - Revert "codegen: Use copies of error_variable of catch-clauses for nested usage" and add asynchronous "catch-error-scope" regression test. - libvaladoc: Build backing Vala.SourceFile for GIRs processed by importer. - libvaladoc/girimporter: Skip "source-position" elements. - genie: Support "protected" accessibility and allow explicit "public". + Bindings: - gst-editing-services-1.0: Fix some construtors and (un)hide symbols. - javascriptcoregtk-4.0: Fix GLib.Callback parameters which can't hold target.- Update to version 0.43.5: + Various improvements and bug fixes: - vala: . Use dedicated error message for assignments to literals . Async methods don't allow out-parameters before in-parameters . Allow direct access to the integer constants of an error-domain . Multiple lamdba arguments in method call should all use same scope - codegen: . Use a parameter-map for creation of delegate declaration . Add "error_pos" CCode attribute and use it as needed . Emit struct declaration typedef before resolving its fields . Add "destroy_notify_cname" CCode attribute . Use get_ccode_*name/get_parameter_cexpression() for Parameters . Set owner for ValaDestroyNotify (POSIX) [#730] . Include "stddef.h" in CCodeBaseModule.destroy_value() (POSIX) - girparser: Recognize error parameter before delegate target parameter - compiler: Report deprecated command-line option "--thread" - valadoc: Specify that the "--driver" option is deprecated + Bindings: - atk: Don't use a custom SignalEmissionHook while it is part of gobject-2.0 - gdk-pixbuf-2.0: Make PixbufSaveFunc usable - gio-2.0: Make DBusInterface[GS]etPropertyFunc usable - gio-2.0: Add CancellableSource ctor and update PollableSource ctors - glib-2.0: Add Queue.clear_full() since 2.60 - gstreamer: Update from 1.15+ git master - gdk-3.0,gtk+-3.0: Update to 3.24.3+9c8f1478 - gtk+-4.0: Update to 3.94.0+9b15c690 - libsoup-2.4: Fix Message.add_*_handler() - vapi: Update GIR-based bindings- Update to version 0.43.4: + Various improvements and bug fixes: - vala: . Array with fixed length don't require explicit instantiation. . Add GenericType.get_actual_type(). . Allow get_actual_type() to be used for expected failures. . Add Method.compatible_no_error(). . Don't just guess and check for a matching base_interface_method. . Search in all interfaces for an implementation match. . Allow explicit interface methods to be virtual. . Report invalid instance member access to property. - codegen: . Use properly checked implicit interface implementations. . Use temp-var for MethodCall with out/ref arguments. . Use temp-vars for ellipsis out-arguments to fix memory management. . Add default_value for CType to initialize variables if needed. . Cast instance parameter for property access in object-initializer . Don't check boolean values for (in)equality in GTask API. . Add missing data parameter to GTypeInfo callbacks. . Properly set annotations field of GDBus*Info struct to NULL. . Cast instance and result of g_async_initable_new_finish() call. - valadoc: Drop duplicated code to add source files and use CodeContext API. - libvaladoc: Skip empty Version.replacement attribute to avoid critical. - build: Don't leak libvalaccode symbols to libvaladoc. - Add a basic CONTRIBUTING.md file that links to the relevant Wiki page. - tests: . Fix try_parse() tests to not compare to already free'd memory. . Warnings and criticals should be fatal on compile time too. + Bindings: - glib-2.0: Use correct array-length-type for returned arrays. - glib-2.0: Add RecMutexLocker since 2.60. - gio-2.0: Fix File.replace_contents_bytes_async(). - gobject-2.0: Use correct array-length-type for returned arrays. - poppler-glib: Update to 0.71. - gstreamer: Update from 1.15+ git master. - gtk+-3.0: Update to 3.24.2+a8e07254. - gtk+-4.0: Update to 3.94.0+4404afc9. - sqlite3: Correct return C type of Statement.column_text & Value.to_text. - webkitgtk-4.0: Update to 2.23.1. - vapi: Update GIR-based bindings.- Update to version 0.43.2: + Various improvements and bug fixes: - codegen: . GType classes and interfaces require including "glib-object.h". . Handle non-default AsyncResult parameter position and regenerate GIR-based bindings to fix non-standard async methods. . Always emit constants with initializer-list. . Emit delegate/enum typedefs to type-declaration section. . Break possible endless loop in SymbolResolver.get_type_for_struct(). + Bindings: gobject-introspection-1.0: Pick up version attribute fixes. - Changes from version 0.43.1: + Highlights: - Emit G_DEFINE_AUTOPTR_CLEANUP_FUNC() for classes (requires glib 2.44). - Enforce "return yield ..." syntax to be expected. - Drop deprecated syntax support of += and -= for signals. - Drop deprecated syntax support of # modifier and operator. - Allow disabling the build of valadoc. - Add support for SingleInstance attribute for GObject classes. - Don't allow to declare array parameters with "type array[]". - Collect error_types on demand to allow transformations. - Check for matching ownership of type-arguments. - Add profile specific delegate target/destroy types. - Don't explicitly add glib headers, the use of symbols will do that. - Add --enable-debug configure option. - Move setting of default defines for VALA_0_XX and GLIB_2_XX to CodeContext. - Add support for delegate parameters in signals. - Admit that structs are emtpy even with a static property. + Various improvements and bug fixes: - codegen: . Fix method pointer cast if instance isn't at first position. . Transfer ownership of compact class to DestroysInstance method. . Add destroy function for GLib.Array. . Fix canonical string for quark of error domains. . Make sure to include declarations for delegate typed parameters. . Don't emit type_id for enum in non GOBJECT profile. . Don't emit unused temp variable for element access assignments. . Actually create method cast for base interface method as needed. . Mark needle parameter of internal array-contains methods as const. . Emit initializer for enum-value into wanted declaration space. . Add void to delegate typedef declarations without parameters. . Deprecate "finish_function" and "ctype" ccode-attribute. . Fix get_ccode_name() for properties. . Add ccode getters for GType functions of Classes and Interfaces. . Don't allow more than one consecutive empty lines in generated code. - vala: . Copy instance_pos argument from virtual/abstract base methods. . Compact classes don't allow private/class fields and to lock fields. . Use comment which was already retrieved in parse_declaration(). . Add missing re-check guards for Do/For/WhileStatement and SwitchLabel. . Type check for errors require an error expression. . Make check_arguments() more verbose and don't bail on first error. . Don't emit member access of assignments on static properties. . Use clearer error message for automatic properties in interfaces. . Admit that structs are emtpy even with a static property. . Let UsingDirective hold reference to UnresolvedSymbol instances only. . Add ArrayType.length_type and ArrayCreationExpression.length_type. . Remove hardcoded "int" length type and use ArrayType.length_type. . Use is_weak() for type-arguments in DataType.to_qualified_string(). - girwriter: Write glib-type attributes for Enums/Structs with type_id. - girparser: Skip "source-position" elements and docs in transparent union. - valadoc: . Match property signature with vala's codewriter. . Sort symbols and members where possible. . Actually assign type_id of Api.Structs. . Add type_id to Api.Enum/Interface. . Skip package dependency if target directory already exists. . Fix a few errors and warnings in stylesheet. . Adjust stylesheet to unbreak Epiphany. . Several API clean ups. . Add --fatal-warnings command line option. - docs: Use Markdown for README and include build instructions. - testrunner: Compile and run tests separately and pass buildsystem's CC through to valac, add various -Werror=* build cflags. + Bindings: - gio-2.0: Add missing File.new_build_filename(). - glib-2.0: Add missing Array.set_clear_func() binding. - glib-2.0: Avoid double-free in GLib.Array if clear_func is set. - glib-2.0: Drop g_object_unref which is part of gobject-2.0. - gobject-2.0: Attribute all symbols with cheader_filename = "glib-object.h". - gdk-x11-3.0,gtk+-3.0: Update to 3.24.1+356f1f59. - gtk+-3.0: Treat Gtk.IconInfo as GLib.Object which it is since 3.8. - gtk+-4.0: Update to 3.94.0+8de1ba2c. - gstreamer: Update from 1.15+ git master. - posix: Add CommandPipe as a sub-type of FILE. - Bump defines vala_version to 0.44 and vala_libversion to 0_44 following upstreams soversion bumps.- Update to version 0.42.6: + Various improvements and bug fixes: - codegen: . Replace some unfortunate asserts with internal error reports. . Properly handle and catch inner-error of finally-block. . Pass lambda expression of variable initializer to signal connect. . Respect array_length_cname attribute for global fields. - vala: . Check inferred variable_type of LocalVariables. . Parser doesn't ensure "protected" to be applied on TypeSymbol members. - girparser: Correctly set array_length_type for delegates returning an array. - girwriter: . Support transfer-ownership="container" for arrays. . Always use get_gir_name() for TypeSymbols. - libvaladoc: . Don't change the size of an array in-parameter. . Properly support the output of async constructors. - valadoc: Report warning if resources for doclet could not be copied. - g-i: Fix return value on error in start_discriminator(). + Bindings: - atk-1.0: Adjust for upstream revert of Implementor using G_DEFINE_INTERFACE - clutter-1.0: Drop deprecated from Actor.pick(). - gdk-3.0: Update to 3.24.4+a0129f55. - gtk+-unix-print-*.0: Fix PrintJob.get_page_ranges(), Printer.get_hard_margins(). - gobject-2.0: Add SignalHandler.disconnect_by_data(). - poppler-glib: Update to 0.74.- Update to version 0.42.5: + Various improvements and bug fixes: - codegen: . Use temp-var for MethodCall with out/ref arguments . Use temp-vars for ellipsis out-arguments to fix memory management . Add default_value for CType to initialize variables if needed . Cast instance parameter for property access in object-initializer . Don't check boolean values for (in)equality in GTask API . Properly set annotations field of GDBus*Info struct to NULL . Cast instance and result of g_async_initable_new_finish() call . Use a parameter-map for creation of delegate declaration . Emit struct declaration typedef before resolving its fields . Don't apply address-of operator on literals when casting to array - vala: Report invalid instance member access to property - girparser: Async methods don't allow out-parameters before in-parameters - libvaladoc: Build backing Vala.SourceFile for GIRs processed by importer - libvaladoc/girimporter: Skip "source-position" elements - valadoc: Specify that the "--driver" option is deprecated - compiler: Report deprecated command-line option "--thread" - build: Don't leak libvalaccode symbols to libvaladoc - Add a basic CONTRIBUTING.md file that links to the relevant Wiki page - tests: Fix try_parse() tests to not compare to already free'd memory + Bindings: - clutter-1.0: Fix BindingPool.override_action() - gdk-3.0,gtk+-3.0: Update to 3.24.3+9c8f1478 - glib-2.0: Use correct array-length-type for returned arrays - gio-2.0: Fix File.replace_contents_bytes_async() - gobject-2.0: Minor syncing from GIR - gobject-2.0: Use correct array-length-type for returned arrays - gstreamer: Update from 1.15+ git master - gtk+-4.0: Update to 3.94.0+9b15c690 - javascriptcoregtk-4.0: Fix GLib.Callback parameters which can't hold target - libsoup-2.4: Fix Message.add_*_handler() - sqlite3: Correct return C type of Statement.column_text & Value.to_text- Update to version 0.42.4: + Various improvements and bug fixes: - codegen: . Fix method pointer cast if instance isn't at first position . Transfer ownership of compact class to DestroysInstance method . Add destroy function for GLib.Array . Fix canonical string for quark of error domains . Make sure to include declarations for delegate typed parameters . Don't emit type_id for enum in non GOBJECT profile . Don't emit unused temp variable for element access assignments . Actually create method cast for base interface method as needed . Mark needle parameter of internal array-contains methods as const . Emit initializer for enum-value into wanted declaration space . Add void to delegate typedef declarations without parameters . Emit delegate/enum typedefs to type-declaration section . Always emit constants with initializer-list . Handle non-default AsyncResult parameter position - vala: . Copy instance_pos argument from virtual/abstract base methods . Compact classes don't allow private/class fields and to lock fields . Use comment which was already retrieved in parse_declaration() . Add missing re-check guards for Do/For/WhileStatement and SwitchLabel . Type check for errors require an error expression . Make check_arguments() more verbose and don't bail on first error . Don't emit member access of assignments on static properties . Use clearer error message for automatic properties in interfaces . Break possible endless loop in SymbolResolver.get_type_for_struct() - girwriter: Write glib-type attributes for Enums/Structs with type_id - girparser: Skip "source-position" elements and docs in transparent union - valadoc: . Match property signature with vala's codewriter . Sort symbols and members where possible . Actually assign type_id of Api.Structs . Add type_id to Api.Enum/Interface . Skip package dependency if target directory already exists . Fix a few errors and warnings in stylesheet . Adjust stylesheet to unbreak Epiphany - docs: Use Markdown for README and include build instructions - testrunner: Pass buildsystem's CC through to valac + Bindings: - gio-2.0: Add missing File.new_build_filename() - glib-2.0: Add missing Array.set_clear_func() binding - glib-2.0: Avoid double-free in GLib.Array if clear_func is set - glib-2.0: Add GLib.pointer aka gpointer binding - gobject-2.0: Attribute all symbols with cheader_filename = "glib-object.h" - gobject-introspection-1.0: Pick up version attribute fixes - gdk-x11-3.0,gtk+-3.0: Update to 3.24.2+eb821cb8 - gtk+-4.0: Update to 3.94.0+a99bd2a4 - gstreamer: Update from 1.15+ git master - poppler-glib: Update to 0.71- Update to version 0.42.3: + Various improvements and bug fixes: - codegen: . Initialize internal temp-variables used as reference parameter. . Improve ccode for fixed-length array parameters. . Fix regex literal compile flags. . Add prototype for *_register_type() function. . Don't emit *_free() of derived compact classes. . Add prototype for *_new() of abstact compact classes. - girwriter: Fix ctype of out/ref and array parameters. - ccode: Fix typo and actually check "end_decls". - abstract syntax tree: . Always analyze nodes after they are inserted into the AST. . Add source_reference to local variable of catch-clause. . Add missing replace_expression() implementations. . Fix several construction/parenting issues. . DataType for GLib.Error should be should resolved as ErrorType. - libvaladoc: Add "unlock" to keywords in Highligher. - posix: . Add replacement for G_(BEGIN|END)_DECLS. . Don't check for GLib.Variant casting. - testrunner: Reset $run_prefix before generating next test script. - build: Unconditionally add conditional VALAFLAGS to make bootstrap. - doc: Fix build of internal-api-docs. - manual: Update from wiki.gnome.org. + Bindings: - glib-2.0: Computing length once is enough in string.to_utf8()/splice(). - glib-2.0: Add binding for g_test_add(). - glib-2.0: Add array length to string.skip. - gio-2.0: Result of DBusMessage.get_header() is unowned. - gobject-2.0,gtk+-*.0: Fix some GLib.Value out/ref parameters. - gstreamer: Update from 1.15+ git master. - gtk+-4.0: Update to 3.94.0+b4b30b49.- Update to version 0.42.2: + Various improvements and bug fixes: - codewriter: Prepend "yield" if is_yield_expression is set on MethodCall and ObjectCreationExpression. - codegen: Fix typo in is_pure_ccode_expression(). - gobject-introspection: Fix use after free in scanner. - vala: Check if ArrayType supports its given element-type in analyzer pass. - valadoc: Fix some string escaping which gettext complains about. + Bindings: - Update GIDL-based bindings to fix unsupported type-arguments. - glib-2.0: Add feature_test_macro details for Time struct's methods. - glib-2.0: Set DateTime.now () to use local time zone as the default. - gstreamer: Update from 1.15+ git master. - gtk+-4.0: Update to 3.94.0+d90e2733. - libxml-2.0: Add missing context parameter in OutputWriteCallback. - x11: Add binding for XCreateSimpleWindow. - Changes from version 0.42.1: + Various improvements and bug fixes: vapigen: Warn if the library argument doesn't match any package attribute. + Bindings: - glib-2.0: Add some 2.58 symbols. - gtk+-4.0: Update to 3.94.0+f3e6d00d. - Add gnome-desktop-3.0 bindings. - Remove libgda-4.0, libgda-report-4.0 bindings. - Update GIR-based bindings.- Update to version 0.42.0: + Bindings: - gstreamer: Update from 1.15+ git master. - webkit2gtk-4.0: Update to 2.21.92. - Update GIR-based bindings.- Update to version 0.41.92: + Various improvements and bug fixes: - codegen: . Fix floating reference regression with Variants. . Call ref_sink on Object.new_valist/new_with_properties if needed. - build: Correctly quote square brackets in regular expression - vala: Don't bail early on property with not supported default value. - manual: Update from wiki.gnome.org. + Bindings: - glib-2.0: . Add return-type of Queue.remove*(), add HashTable.foreach_steal(). . Add float.parse/try_parse(). - gstreamer: Update from 1.15+ git master. - webkit2gtk-4.0: Update to 2.21.91.- Update to version 0.41.91: + Various bug fixes: - codegen: . Call ref_sink on objects passed to generic type. . Free errors after returning them on GDBusMethodInvocation. - girparser: Actually resolve type-arguments to be able to box them if needed. - vala: Add consts/methods to retrieve and check library version. + Bindings: - glib-2.0: Add Array.remove*() wrapper to avoid leaking generic elements. - glib-2.0: Add (u)long.parse/try_parse(). - gstreamer: Update from 1.15+ git master. - gtk+-3.0: Update to 3.23.2+6b6e53fd. - gtk+-4.0: Update to 3.94.0+4e868584.- Update to version 0.41.90: + Highlights: - Reintroduce POSIX profile - parser: Add support for explicit "unlock" syntax. - vala: Support anonymous definitions of delegates in bindings. - codegen: . Support automatic properties as GtkChild. . Apply G_PARAM_EXPLICIT_NOTIFY on properties with "notify = false". . Drop support for non-auto property initializer in gobjects. . Avoid using deprecated "g_type_class_add_private". + Various bug fixes: - analyzer: Break cyclic references of BasicBlock. - codegen: . Don't apply ref_sink_function if target_type is floating_reference. . Fix invocation of abstract/virtual methods with NoWrapper in compact classes. . Don't include the full absolute path in line directives. . Add source_reference to unsupported floating reference error. - libvaladoc: Replace void* with corresponding Vala API - vala: . Constants and signals are not lockable. . Treat floating method-return-type as nullable if error may be thrown. . Transfer floating-reference attribute while casting . Break reference chain between DataType and Symbol if possible. . Report error for invalid base access in method/property of compact class. + Bindings: - gobject-2.0: Make GLib.Signal a struct of uint and bind g_signal_new*. - clutter-1.0: Change type of Clutter.Key.* constants to uint. - gdk-3.0: Change type of Gdk.Key.* constants to uint. - gtk+-4.0: Change type of Gdk.Key.* constants to uint. - gstreamer: Update from 1.15+ git master. - webkit2gtk-4.0: Add JSC namespace to javascriptcoregtk-4.0 and fix depends. - Remove clutter-gst-1.0, GStreamer 0.10, rest-0.6, tracker-indexer-module-1.0, libsoup-2.2, gdu and gdu-gtk, twitter-glib-1.0, mx-1.0. - Remove vala-specific deprecations <= vala-0.22. - Bump define vala_version to 0.42 and define vala_libversion to 0_42 as well as vala_priority to 42, following upstreams changes.- Update to version 0.40.9: + Various improvements and bug fixes: - girparser: . Actually resolve type-arguments to be able to box them if needed. . Handle unsupported aliases which could not be fully processed. - codegen: . Free errors after returning them on GDBusMethodInvocation. . Fix invocation of abstract/virtual methods with NoWrapper in compact classes. - vala: Allow read-only properties. - manual: Update from wiki.gnome.org. + Bindings: - glib-2.0: . Add Array.remove*() wrapper to avoid leaking generic elements. . Add (u)long.parse/try_parse() and float.parse/try_parse(). . Add return-type of Queue.remove*(), add HashTable.foreach_steal(). - gtk+-3.0: Update to 3.23.2+6b6e53fd. - gtk+-4.0: Update to 3.94.0+4e868584. - webkit2gtk-4.0: Update to 2.20.5.- Update to version 0.40.8: + Various improvements and bug fixes: - Fix links in the Manual. - libvaladoc: Change link to Valadoc wiki page for HTML doclet. - valadoc: Use HTML5 doctype in HTML doclet. - codegen: Let methods return -1 on error by default if possible. - Allow TypeModule subclasses as parameter-type in module-init-method. - girparser: Allow changing the type of constants using metadata. - girwriter: Add boolean GIR visible attribute to allow skipping symbols. - vala: Report error for error-domains without any code. - parser: Accept "empty" enums/error-domains. - codewriter: Output bodies of code-blocks if in VAPIGEN mode. + Bindings: - gobject-2.0: Add lower_case_csuffix attributes to Type* symbols. - gdk-3.0,gtk+-3.0: Update to 3.23.0+df045423. - gio-2.0: Add custom IOError.from_errno() to make it work as expected. - gtk+-4.0: Update to 3.94.0+bf5f27c6. - gstreamer-rtsp-server-1.0: Update from 1.14+ git master.- Update to version 0.40.7: + Various improvements and bug fixes: - Update bugtracker links to https://gitlab.gnome.org/GNOME/vala/issues. - codegen: . Handle delegate_target attribute of fields. . Free generic elements of glib collections. . Fix warning for source_funcs parameter of g_source_new(). . Actually treat GLib.Source as compact class. . Custom abstract methods of GLib.Source are handled differently. . Consistently use gpointer for delegate targets. . Unify some delegate-type check patterns. . Use default_init instead of base_init when registering interfaces. - girparser: Add support for bool delegate_target. - girwriter: . Output deprecated="1". . Construct-only properties don't have a setter method. . Don't write any custom attributes. - valadoc: Fix TreeBuilder.create_array() for stacked Arrays. + Bindings: - glib-2.0: . Do not mark simple-type out-parameters as nullable. . Make Source.attach() use the default MainContext by default. . Make Bytes.slice() use the memory-efficient Bytes.from_bytes(). . Fix Bytes.with_free_func(). - gio-2.0: . Mark ActionEntry.parameter_type/state fields as nullable. . Delegate fields of DBus*VTable do not have implicit target fields. . Apply delegate_target = false on ActionEntry callbacks and make them weak. - Add default to all io_priority parameters. - gstreamer: Cherry-pick some fixes from 0.42, add gst-editing-services-1.0. - gtk+-3.0: Update to 3.22.30+9ac7f906. - gtk+-4.0: Update to 3.93.0+29fee2e8. - webkit2gtk-4.0: Update to 2.21.4. - Update GIR-based bindings.- Update to version 0.40.6: + Regression fix: - codegen: Avoid critical for array in-parameters with custom length-type. - tests: Drop assert which is failing on big-endian archs. - Changes from version 0.40.5: + Various improvements and bug fixes: - Warn if --gir is used without --library (bgo#708693). - Report an error if rank attribute is required but was not found (bgo#660991). - scanner: . Accept \R and \N escape sequences in regex literals (bgo#749576). . Accept backreferences \1 through \99 in regex literals (bgo#728574). - codegen: . Avoid critical in get_basic_type_info() when there is no signature (bgo#729517). . Fix serializing multidimensional arrays (bgo#735437). . Guard get_default_ref_sink_function() against null base-class. . Respect cname ccode-attribute of lockable fields. . Fix casting of length for "ref" array parameters. - codewriter: Add 'new' to symbols if needed to match the original source (bgo#614686). - girparser: Deal with missing "name" attribute by falling back on "c:type". - girwriter: . Drop errornous indent. . Properly output variadic methods and use introspectable="0". - genie: . Add support for the \v escape character (bgo#664689). . Add support for the \uXXXX escape sequence. + Bindings: - glib-2.0: Fix IConv.iconv() (bgo#634753). - gobject-2.0: Make constructor of ParamSpecBoxed public. - gstreamer: Cherry-pick some fixes from 0.42. - gtk+-3.0: Update to 3.22.30+21fddc39. - gtk+-4.0: Update to 3.93.0+3a860719. - javascriptcoregtk-4.0: buffer of String.get_utf8_cstring() is not "ref" (bgo#788113). - posix: Add missing cname = "int" to Posix.Signal enum. - sqlite3: Add additional constants for flags of Database.open_v2() (bgo#795627). - webkit2gtk-4.0: Cherry-pick some fixes from 0.42.- Update to version 0.40.4: + Various improvements and bug fixes: girparser: Add support for NoAccessorMethod metadata. + Bindings: - glib-2.0: Mark str parameter of Variant.take_string() as owned. - gstreamer: Update from 1.15+ git master. - gtk+-*.0: Set NoAccessorMethod on Gtk.Radio*.group properties (Regression in gtk+-3.0). - gtk+-4.0: Update to 3.93.0+fc6018f1. - json-glib-1.0: Mark return-type of gvariant_deserialize*() as nullable. - webkit2gtk-4.0: Update to 2.20.1.- Update to version 0.40.3: + Various bug fixes: vala: Fix return-type of BasicBlock.get_successors(). + Bindings: - gstreamer: Update from 1.15+ git master. - gtk+-3.0: Fix regression of StatusIcon.position_menu() (bgo#891629). - gtk+-4.0: Update to 3.93.0+ff738269 - libgsf-1: Update to 1.14.42+ (bgo#794777).- Update to version 0.40.2: + Various bug fixes: gdbus: Fix missing declaration of _fd_list for async methods (bgo#794566). + Bindings: - glib-2.0: Use g_value_*et_schar instead of deprecated g_value_*et_char - gobject-2.0: Add ParamSpecGType. - gtk+-*.0: Hide dedicated constructors of compact classes bound as structs (bgo#794733).- Update to version 0.40.1: + Various bug fixes: - codegen: . Don't add target fields for captured delegates without target. . Don't add length fields for captured fixed-length array variables. - valadoc: Bump VALA_0_xx defines and glib_minor to match 0.40 series. + Bindings: - Add libgeoclue-2.0 bindings (bgo#794376). - gobject-2.0: Cherry-pick some changes from 0.42. - gdk-3.0,gtk+-3.0: Update to 3.22.29. - gtk+-4.0: Update to 3.93.0+433517fd. - gtk+-*.0: Fix iter parameter of TextView.backward*/forward*/move_visually() (bgo#794345). - gstreamer-1.0: Update to 1.13.91 and add gstreamer-webrtc-1.0 bindings. - libgsf-1: Switch to GIR and update to 1.14.42. - linux: Add various symbols. - posix: . Add various symbols. . Include sys/sysmacros.h for major(), minor() and makedev() (bgo#794651). - webkit-1.0: Update to 2.4.11. - webkit2gtk-4.0: Update to 2.20.0. - Update GIR-based bindings.- Update to version 0.40.0: + Bug fix: compiler: Fix critical when vala is called without run args (bgo#793657). + Bindings: - alsa: Add the major part of the ALSA Sequencer API (bgo#763127); - gstreamer-1.0: Update to 1.13.90; - gtk+-4.0: Update to 3.93.0+527d265b; - linux: Add various symbols; - posix: Add various symbols (bgo#663633); - Update GIR-based bindings.- Modernize spec-file by calling spec-cleaner- Update to version 0.39.92: + Highlights: Add support for feature test macros (bgol#793444). + Various bug fixes: - codegen: . Use pointers when accessing constant multi-dimensional arrays (bgo#604371). . Add valid support for const multi-dimensional arrays (bgo#604371). . Don't append fixed-length of array fields in initializers. . Add source_reference to some store_local/_field() calls. - Properly handle array-initializers inside struct-initializers (bgo#622178). - The rank of an array-initializer should match the target's rank (bgo#744923). - Make SemanticAnalyzer.check_arguments() independent of context. - Check with same rules for dbus compatibility as in GBusModule (bgo#793859). - Fix recursive declaration in generic base type (bgo#688732). - Prevent WITH_CGRAPH conditional having an impact on generated sources. - Update manual from wiki.gnome.org. + Bindings: - glib-2.0, posix: Add feature test macro _GNU_SOURCE for pow10(3), pow10f(3), exp10(3) and exp10f(3) (bgo#614788). - gstreamer-1.0: Update from 1.13.1+ git master. - linux: Add dup3 (bgo#729803).. - linux: Add feature_test_macros to non-POSIX file control constants and dup3. - posix: Fix sig*set and sigprocmask parameters to be out/ref (bgo#727425). - posix: Add feature_test_macro _GNU_SOURCE to sighandler_t (bgo#761975). - libgnome-menu-3.0: Add deps file. - Update GIR-based bindings.- Update to version 0.39.91: + Various bug fixes: - Fix GDestroyNotify of delegate parameters in delegate declaration (bgo#639059). - Avoid critical when connecting dynamic signals. - valac: Always use the given "pkg-config" and respect PKG_CONFIG envar. - compiler: Prefix headers for set_cheader_override() if includedir is given (bgo#793299). - vala: Issue a warning on DBus methods which are not throwing an Error. - Don't warn about unused internal methods which are meant to be visible on DBus (bgo#593902). - Don't install vapicheck (bgo#793370). + Bindings: - glib-2.0: Add KeyFile.get_locale_for_key(). - gstreamer-1.0: Update from 1.13+ git master. - gtk+-4.0: Update to 3.93.0+d07b14f4. - purple: Update to 2.12.0. - Update GIR-based bindings.- Update to version 0.39.7: + Regression fix: codegen: Don't try to infer error argument on async begin methods (bgo#793158). This was a regression introduced by bgo#614294. - Changes from version 0.39.6: + Add --abi-stability option for ABI stability of libraries (bgo#789069). + Various bug fixes: - girparser: . Set NoAccessorMethod for non-readable and construct-only properties. . Ignore conflicting closure/destroy indexes. . Don't accept methods as property-accessor which throw errors (bgo#792998). - codegen: . Infer error parameter from abstract/virtual base methods (bgo#614294). . Internally generated delegates don't require a typedef (bgo#787521). . Fix return-type for cancelled async creation methods of classes (bgo#792942). . Use G_PARAM_STATIC_STRINGS. - vala: Variadic constructors without a real first parameter are not allowed. - libvaladoc: Keep bootstrap-support with valac >= 0.16.1. + Bindings: - gtk+-3.0: Fix cheader_filename of Plug and Socket. - gtk+-4.0: Update to 3.93.0+4d36a0bf. - gtk+-4.0: Only override type of "event" parameters. - posix: Add ctime(3) and fix binding of struct hostent and gethostbyname(3).- Update to version 0.39.5: + Various bug fixes: - libvaladoc: . Allow @link tags to be split over multiple lines (bgo#646982); . Add support for single line documentation comments (bgo#736483). - Girparser: Improve instance method detection (bgo#732460). - Codegen: Add support for abstract/virtual methods and properties in compact classes (bgo#741465). - Vala: Fix parameter type inference of overridden async methods (bgo#792660). - Codewriter: Don't use string.replace() to apply header_to_override (bgo#731322). + Bindings: - gio-unix-2.0: Update to 2.55.1; - gtk+-4.0: Update to 3.93.0+60d3378d; - libwnck-3.0: Update to 3.24.1; - webkit2gtk-4.0: Update to 2.19.5; - webkit2gtk-web-extension-4.0: Fix DOM.EventTarget interface. - Drop enable-vapigen configure option since it is no longer available. - Replace LPGL-2.0 License tag with LPGL-2.1+ as pointed by the source code and COPYING file.- Update to version 0.39.4: + Various improvements and bug fixes: - codegen . Only add property-enum and GParamSpec-array for GObject classes. . Use g_enum/flags_to_string while targeting glib >= 2.54. . Add destroy param when invoking delegate returned by delegate (bgo#792077). - Don't write trailing space in function declarations/ definitions (bgo#688447). - vala: Add pkgdatadir and pkglibdir to pkg-config file. - gidlparser: Update type qualifiers. + Bindings: - gtk+-2.0/3.0: Don't hide user_data in Clipboard.set_with_data() (bgo#792237). - gtk+-3.0: Update to 3.22.26+6f26d0dc. - gtk+-4.0: Update to 3.93.0+6aeae2c8.- Update to version 0.39.3: + Various bug fixes: - Fix chain-up regression with real non-null struct parameters (bgo#791785); - Release taken references to CodeContext after using it (bgo#712694) and keep custom invocations of parse_file() possible bgo#791936; - Parser: Accept comma-separated list in case-statements of switchs (bgo#614015). + Bindings: - Remove bindings which are shipped upstream for some years: gedit 3 (bgo#776021), libgnome-keyring (bgo#776022), gtksourceview-3.0 (bgo#776023), libgdata (bgo#776024), librsvg-2.0 (bgo#776025); - glib-2.0: Add GLib.OPTION_REMAINING and GLib.OptionFlags.NONE; - gstreamer-1.0: Update from 1.13+ git master; - gtk+-2.0: Mark MessageDialog constructor parameter, message_format, as nullable (bgo#791570); - gtk+-4.0: Update to 3.93.0+6aeae2c8; - webkit2gtk-4.0: Update to 2.19.3. - Adopt the use of %make_build macro rather than raw make command, following the best practices.- Update to version 0.39.2: + Various bug fixes: - vala: Don't transform an explicit "null" into valid format-string (bgo#791215). - codegen: Don't create null-safe destroy-wrapper for GenericType (bgo#791283). - Improve error message for missing type-parameter on enclosing type (bgo#587905). + GIR parser: - Allow change of parameter names. - Handle metadata for fields inside a transparent union. - Accept setters with boolean return-type as valid property-accessor. - Don't mark simple-type out-parameters with '?' as nullable. + Valadoc: libvaladoc: Actually resolve "percnt;" to '%'. + Bindings: - glib-2.0: Fix potential null pointer dereference in string.joinv() (bgo#791257). - gobject-2.0: Add missing GType constants for fundamentals (bgo#791023). - gstreamer-1.0: Update from 1.13+ git master. - gtk+-3.0: Switch to GIR (bgo#730746). - gtk+-4.0: Update to 3.93.0+6af4947e. - posix: Move signal constants to an enum and add few missing ones (bgo#790958). - Drop vala-fix-MessageDialog-constructor-parameter.patch: Fixed upstream. - Following the above, drop libtool BuildRequires and no longer pass autoreconf.- Update to version 0.39.1: + Report warning if property-type is not compatible with GLib.Object (bgo#693932). + Allow to pass compatible delegates to signal.connect() (bgo#787521). + Allow unscoped enum values where possible. + Avoid use of temp-var for some callables returning ValueType and to access in/ref parameters (bgo#789071). + Reformat generated source declarations and definitions for better readability (bgo#688447). + Fixes: - Improve handling of unowned/owned keyword occurrences. - Methods need to throw compatible error if target delegate throws one. - Improve error output of mismatching overriding methods. + Bug fixes: bgo#784691, bgo#663070, bgo#764041, bgo#587905, bgo#750840, bgo#790903, bgo#784705, bgo#790266, bgo#693932, bgo#774124, bgo#750840, bgo#785215.- Update to version 0.38.8: + Various bug fixes: - Fix GDestroyNotify of delegate parameters in delegate declaration (bgo#639059). - Avoid critical when connecting dynamic signals. - compiler: Prefix headers for set_cheader_override() if includedir is given (bgo#793299). - Don't warn about unused internal methods which are meant to be visible on DBus (bgo#593902). - libvaladoc: Prevent WITH_CGRAPH conditional having an impact on generated sources. + Bindings: - gio-2.0: Cherry-pick some DBusProxy fixes from 0.40. - gstreamer-1.0: Update from 1.13+ git master. - gdk-3.0,gtk+-3.0: Update to 3.22.27. - Update vala_priority define to 38, something we should have done when stable 0.38.0 was released.- Update to version 0.38.7: + Regression fix: codegen: Don't try to infer error argument on async begin methods (bgo#793158). This was a regression introduced by (bgo#614294).- Update to version 0.38.6: + Various bug fixes: - girparser: . Set NoAccessorMethod for non-readable and construct-only properties. . Ignore conflicting closure/destroy indexes. . Don't accept methods as property-accessor which throw errors (bgo#792998). - codegen: . Infer error parameter from abstract/virtual base methods (bgo#614294). . Fix return-type for cancelled async creation methods of classes (bgo#792942). - vala: Variadic constructors without a real first parameter are not allowed. - libvaladoc: Keep bootstrap-support with valac >= 0.16.1. + Bindings: - gstreamer-1.0: Update from 1.13+ git master. - gtk+-4.0: Only override type of "event" parameters.- Update to version 0.38.5: + Various improvements and bug fixes: - codegen: . Only add property-enum and GParamSpec-array for GObject classes . Add destroy param when invoking delegate returned by delegate (bgo#792077). - vala: . Add pkgdatadir and pkglibdir to pkg-config file. . Fix parameter type inference of overridden async methods (bgo#792660). - gidlparser: Update type qualifiers. - libvaladoc: . Allow @link tags to be split over multiple lines (bgo#646982). . Add support for single line documentation comments (bgo#736483). - codewriter: Don't use string.replace() to apply header_to_override (bgo#731322). + Bindings: - glib-2.0: Add GLib.OPTION_REMAINING and GLib.OptionFlags.NONE. - gstreamer-1.0: Update from 1.13+ git master. - gtk+-2.0: Mark MessageDialog constructor parameter, message_format, as nullable (bgo#791570). - gtk+-2.0/3.0: Don't hide user_data in Clipboard.set_with_data() (bgo#792237). - gtk+-3.0: Update to 3.22.26+6f26d0dc. - gtk+-4.0: Update to 3.93.0 and split Gsk.RenderNode into several classes. - libwnck-3.0: Update to 3.24.1. - posix: Add ctime(3) and fix binding of struct hostent and gethostbyname(3). - webkit2gtk-4.0: Update to 2.19.5. - webkit2gtk-web-extension-4.0: Fix DOM.EventTarget interface. - Drop vala-fix-MessageDialog-constructor-parameter.patch: Fixed upstream. - Following the above, drop libtool BuildRequires and autoreconf call, no longer needed as we do not carry any patches anymore.- Update to version 0.38.4: + Various bug fixes: - Enforce name-length >= 3 for structs using GType (bgo#764041). - Report error for missing type-parameter on enclosing type (bgo#587905). - Discover invalid member access to instance field (bgo#790903). - Improve error output of mismatching overriding methods. - vala: Don't transform an explicit "null" into valid format-string (bgo#791215). - codegen: Don't create null-safe destroy-wrapper for GenericType (bgo#791283). - Improve error message for missing type-parameter on enclosing type (bgo#587905). + GIR parser: - Allow change of parameter names. - Handle metadata for fields inside a transparent union. - Accept setters with boolean return-type as valid property-accessor. - Don't mark simple-type out-parameters with '?' as nullable. + Valadoc: - Acknowledge possible properties in structs (bgo#784705). - Fix fatal typo in GtkdocRenderer.visit_symbol_link() (bgo#790266). - libvaladoc: Actually resolve "percnt;" to '%'. + Bindings: - gobject-2.0: Add some missing symbols. - gstreamer-1.0: Bind GST_DEBUG_BIN_TO_DOT_FILE/*_WITH_TS (bgo#785215). - gstreamer-1.0: Update from 1.13+ git master. - gtk+-3.0: Update to 3.22.26+9ce824d3. - webkit2gtk-4.0: Update to 2.19.2. - glib-2.0: Fix potential null pointer dereference in string.joinv() (bgo#791257). - gobject-2.0: Add missing GType constants for fundamentals (bgo#791023). - Add vala-fix-MessageDialog-constructor-parameter.patch: Mark MessageDialog constructor parameter, message_format, as nullable (bgo#791570). - Following the above, add libtool BuildRequires and pass autoreconf, make sure vapi deps get regenerated after patch is applied.- Update to version 0.38.3: + Various bug fixes: - codegen: Prioritize "array_length=true" over "array_null_terminated=true" (bgo#788775). - codegen: Avoid possible conflicts with internal property/signal defines (bgo#788964). + Bindings: - gio-2.0: Expose g_task_get_source_object as Task.get_unowned_source_object. - gstreamer-1.0: Update from 1.13+ git master. - gtk+-4.0: Update to 3.92.1. - libxml-2.0: Add DTD methods (bgo#789442).- Update to version 0.38.2: + Various bindings updates: - gstreamer-1.0, gtk+-3.0, gtk+-4.0: Update from git master. - gnutls: Fix free_function ccode-attribute of Certificate (bgo#788181). - Update Url to https://wiki.gnome.org/Projects/Vala: current Vala project's web page.- Update to version 0.38.1: + Various bug fixes: - valadoc: Don't use 'stderr' as variable name (bgo#787305). - codegen: Try to use a more unique internal define for properties (bgo#787436). - vala: Update list of used attributes. - method: Use prototype-string for error-reports of return-type mismatches. + Bindings: glib-2.0: Fix MainContext.check(), OptionEntry[] params are null-terminated, Bind g_convert_with_fallback() and g_convert_with_iconv()- Correct RPM groups and package descriptions. - Remove --with-pic which is for static libs only.- Update to version 0.38.0: + Various bug fixes: - Improve error output for incompatible method signatures (Add CallableType as base for DelegateType, MethodType, SignalType). - codegen: . Initialize temp-variable for fixed-size arrays to zero first (bgo#787152). . Add support for "type-func" in ui-files (bgo#787033). + Bindings: - gtk+-3.0,gtk+-4.0: Update. - libxml-2.0: Bind xmlLastElementChild and xmlPreviousElementSibling - pangocairo: CairoFontMap.set_default() is not an instance method. - gio-2.0: Application.set_default() is not an instance method.- Update to version 0.37.91: + Various bug fixes: - codegen: . Actually write declaration for GNodeTraverseFunc wrapper (bgo#786845). . Don't transfer ownership of variable if target-type is unknown (bgo#736774). . Adjust format-index for printf/scanf-methods which throw errors (bgo#781061). . Use given dup_function for structs. - libvaladoc: Fix some -Wincompatible-pointer-types warnings. - tests: Fix some syntax issues [#786652] - Add .editorconfig file [#786620] + GIR parser: - Better support of "cprefix" argument in metadata. - Support "cname" argument in metadata. + Bindings: - Add javascriptcoregtk-4.0 and avoid skips in webkit2gtk*-4.0. - Update GIR-based bindings. - gtk+-3.0: Update to 3.22.19.- Update to version 0.37.90: + Various bug fixes: - Fix some build-system problem: . valadoc/tests: Add the source vapi directory to driver-test (bgo#786505). . Add ./vala/.libs rather than ./gee/.libs to LD_LIBRARY_PATH. . Explicitly link doclets against libvala-*.la (bgo#786534). . Add missing include of Makefile.common. - vapigen: Mark given source-files as such and force girparser to handle them. - codegen: Include glib-object.h for Enums/Structs with type_id. + Bindings: gtk+-4.0: Make Gsk.Texturer.for_*() static factory methods.- Update to version 0.37.2: + Various bug fixes: - libvaladoc: Keep bootstrap-support with valac >= 0.16.1. - valadoc: Fix tests while bootstapping with valac < 0.31/32. + Bindings: - glib-2.0: Update Unicode symbols. - gobject-2.0: Add required type_id attributes to all ParamSpec subclasses. - libgdata: Make Authorizer.reauth_* methods virtual (bgo#779229). - libxml-2.0: Update Xml.ParserOption (bgo#785585). - gtk+-4.0: Update to 3.91.2. - webkit2gtk-4.0: Update to 2.17.90. - Drop vala-no-nullable-enum.patch: Fixed upstream, following this drop vala BuildRequires, no longer needed.- Update to version 0.37.1: + Highlights: - Don't warn about deprecated symbols if installed_version is older. - Add --gresourcesdir option (bgo#783133). - Install libvala-0.xx.vapi to "global" vapi directory. - Require and target GLib >= 2.40. - build: Make ccode and codegen private API. - build: Use --use-header for vala's libraries. - compiler: Add --color=WHEN option. - codegen: Use g_object_notify_by_pspec() to notify property-changes. - codegen: Use *_free_full to free GLib.List, GLib.SList and GLib.Queue. - codegen: Support renamed signals (bgo#731547). - Optimize (de)serialization of arrays with type-signature "ay" (bgo#772426). - Merge valadoc - Consider valadoc a part of vala's toolchain and therefore let it live in the main repository (adds graphviz to the build-requirements) + Various bug fixes: - Fix finally blocks with async yields (bgo#741929). - Handle non-null in coalescing expression (bgo#611223). - Make the task_complete flag for < 2.44 more similar to >= 2.44 (bgo#783543). - Nullable ValueType requires POINTER as marshaller signature (bgo#783897). - NoAccessorMethod attribute is allowed for gobject-properties only. - girparser: Fix parsing of delegate-alias without target. - compiler: Use API_VERSION instead of stripping PACKAGE_SUFFIX. - girwriter: Write length-parameters of arrays with rank > 1 (bgo#758019). - gdbus: Don't leak nested HashTable on deserialization (bgo#782719). - codewriter: Update timestamps of generated c-files if needed (bgo#683286). - tests: Use dbus-run-session instead of dbus-launch (bgo#771455). - codegenerator: Add source_reference parameter to CodeGenerator.store_*(). - Don't allow assigning delegate if no target/closure is available (bgo#598869). - gee: Add some useful symbols from gee-0.8. + Bindings: - gio-2.0: . Add DBusConnection 'closed' signal as 'on_closed' (bgo#684358). . Use default 'length = null' for DataInputStream.read_line_utf8* (bgo#783351). - glib-2.0,gobject-2.0: Updates from 2.53.x. - poppler-glib: Update to 0.54.0. - webkit2gtk-4.0: Update to 2.17.4. - gstreamer-1.0: Update to 1.13.0+. - libgvc: Add WITH_CGRAPH conditionals. - Add pkgconfig(libgvc) BuildRequires: new dependency. - split out new packages: valadoc, valadoc-docklet-{devhelp,gtkdoc,html}, libvaladoc-0_38-0 and libvaladoc-0_38-devel. - Add vala-no-nullable-enum.patch: Fix 64bit portability issues (bgo#784927). - Add vala BuildRequires: as above patch touches the source .vala files, we need to bootstrap.- Update to version 0.36.4: + Highlights: - Don't warn about deprecated symbols if installed_version is older. - Add --gresourcesdir option (bgo#783133). + Various bug fixes: - gdbus: Don't leak nested HashTable on deserialization (bgo#782719). - Fix finally blocks with async yields (bgo#741929). - Handle non-null in coalescing expression (bgo#611223). - Make the task_complete flag for < 2.44 more similar to >= 2.44 (bgo#783543). - Nullable ValueType requires POINTER as marshaller signature (bgo#783897). - NoAccessorMethod attribute is allowed for gobject-properties only. - girparser: Fix parsing of delegate-alias without target. - compiler: Use API_VERSION instead of stripping PACKAGE_SUFFIX. - girwriter: Write length-parameters of arrays with rank > 1 (bgo#758019). + Bindings: - gio-2.0: Use default 'length = null' for DataInputStream.read_line_utf8* (bgo#783351). - gobject-2.0: Add GLib.ParamSpecPointer. - poppler-glib: Update to 0.54.0. - gstreamer-1.0: Various binding fixes.- Update to version 0.36.3: + Various bug fixes: - scanner: Fix calculation of column value for tokens after multiline comment (bgo#652899). - codegen: Unref GLib.AsyncResult on uncaught errors in coroutines (bgo#641171). - Keep initializing result-variable for struct constructors (bgo[#782056).- Update to version 0.36.2: + Enums require at least one value otherwise report an error. + Bindings: - gstreamer-1.0: Update to 1.11.90+. - gio-2.0: Fix GLib.Task constructor and report_error/report_new_error() - glib-2.0: . Add quark() functions to errordomains. . Add missing version macro and constants.- Update to version 0.36.1: + Various bug fixes: - Always consider a method compatible with itself (bgo#773135). - Perform arguments-check against actual .end() method-signature (bgo#684208). - Slightly improve lamdba-expression error on target-type mismatch. - Fix delegate initializer for instance fields (bgo#683925). - Don't leak target-reference when casting/assigning owned delegates (bgo#780426). + GIR parser and writer: - girparser: Add destroy argument for metadata (bgo#750838). - vapigen: Add --nostdpkg option like in valac. + Bindings: - gstreamer-1.0: Fix Pad.set_*_function() bindings (bgo#750838). - glib-2.0: Add missing version macro and constants, unichar .to_string doesn't return null. - gtk+-2.0,gtk+-3.0: Mark "intersection" param of Widget.intersect() as out. - gtk+-4.0: Update to 3.90.0.- Update to version 0.36.0: + Bugs fixed: bgo#740303, bgo#758816, bgo#779968, bgo#780050.- Update to version 0.35.90: + Bug fixes and binding updates.- Update to version 0.35.7: + Bug fixes and binding updates. + Add libgrss binding. + Introduce [CCode (finish_instance = ...)] attribute. + Update manpages.- Update to version 0.35.6: + Bug fixes and binding updates.- Update to version 0.35.5: + Fix regression. - Changes from version 0.35.4: + Bug fixes and binding updates.- Update to version 0.35.3: + Bug fixes and binding updates. + Add gtk+-unix-print-{2,3,4}.0 bindings.- Update to version 0.35.2: + Bug fixes and binding updates.- Update to version 0.35.1: + Ignore --thread command-line option which is obsolete. + Fix type checking when using generics. + Use g_signal_emit where possible. + Introduce [FormatArg] attribute for parameters. + Use GTask API for async implementations with target-gLib >= 2.36. - Bump vala_version to 0.36, vala_libversion to 0_36 (following upstream) and vala_priority to 36 (following the vala packaging convention).- Fix descriptions so they actually describe subpackages. - Have the -devel package provide libvala-devel: this allows consumers to require libvala without version constraints. They will still have to follow the API changes though.- Update to version 0.34.4: + Bug fixes.- Update to version 0.34.3: + Bug fixes and binding updates.- Update to version 0.34.2: + Bug fixes and binding updates.- Update to version 0.34.1: + Add support for the \v escape character. + Bug fixes and binding updates.- Update to version 0.34.0: + Bug fixes and binding updates. - Update update alternatives due to moved location of vapigen.pc- Update to version 0.33.1: + Bug fixes and binding updates. - Bump vala_version to 0.34, vala_libversion to 0_34 (following upstream) and vala_priority to 34 (following the vala packaging convention).- Update to version 0.32.1: + Bug fixes and binding updates.- Update to version 0.32.0: + Bug fixes and binding updates.- Update to version 0.31.1: + Introduce [Version] attribute. + Require and target GLib >= 2.32. + Bug fixes and binding updates. - Bump vala_version to 0.32, vala_libversion to 0_32 (following upstream) and vala_priority to 32 (following the vala packaging convention).- Update to version 0.30.1: + Bug fixes and binding updates.- Update to version 0.30.0: + Binding updates. + Bugs fixed: bgo#752031. - Bump vala_priority to 30.- Update to version 0.29.3: + Add --shared-library option for GIR files. + Bug fixes and binding updates.- Update to version 0.29.2: + Bug fixes and binding updates.- Update to version 0.29.1: + Binding updates.- Update to version 0.28.1: + Bug fixes and binding updates.- Update to version 0.28.0: + Binding updates.- Update to version 0.27.2: + Bug fixes and binding updates.- Update to version 0.27.1: + Print compiler messages in color. + Add clutter-gdk-1.0 bindings. + Add clutter-gst-3.0 bindings. + Add clutter-x11-1.0 bindings. + Add rest-extras-0.7 bindings. + Bug fix and binding updates. - Bump vala_version to 0.28, vala_libversion to 0_28 and vala_priority to 28, following upstreams changes.- Update to version 0.26.2: + Bug fixes and binding updates.- Add attr to ghost entries in file list to fix build in SLE_11- Update to version 0.26.1: + Bug fixes and binding updates./bin/sh/bin/shvala-develsheep70 1667802092  !"#$%&'()*+,+.+0+2+456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ5\]^_`abcdefghijklmnopqrqtuvwqyz{|}~5v77757q5qq5    5qq !"#$%&'()*+,+.+01234567q9:;<=>=@ABCDEFGH0.54.80.54.80.54.8-150400.3.3.10.54.8-150400.3.3.10.54.80.54.8 valavala-gen-introspectvala-gen-introspect.1.gzvalacvalac.1.gzvapigenvapigen.1.gzvapigen.pcvalavala-0.54vala-gen-introspectvala-gen-introspect-0.54valacvalac-0.54vapigenvapigen-0.54vapigen-0.54.pcvapigen.pcvala-0.54gen-introspect-0.54libvalaccodegen.sovala.m4vapigen.m4valaAUTHORSChangeLogChangeLog.pre-0-4ChangeLog.pre-0-5-7NEWSREADMETHANKSvalaCOPYINGvala-gen-introspect-0.54.1.gzvala-gen-introspect.1.gzvalac-0.54.1.gzvalac.1.gzvapigen-0.54.1.gzvapigen.1.gzvalavala-0.54vapiSDL2_gfx.depsSDL2_gfx.vapiSDL2_image.depsSDL2_image.vapiSDL2_mixer.depsSDL2_mixer.vapiSDL2_net.depsSDL2_net.vapiSDL2_ttf.depsSDL2_ttf.vapialsa.depsalsa.vapiatk.depsatk.vapiatspi-2.depsatspi-2.vapiavahi-client.vapiavahi-gobject.depsavahi-gobject.vapibzlib.vapicairo-gobject.depscairo-gobject.vapicairo-xcb.depscairo-xcb.vapicairo.vapiccss-1.vapiclutter-1.0.depsclutter-1.0.vapiclutter-gdk-1.0.depsclutter-gdk-1.0.vapiclutter-gst-2.0.depsclutter-gst-2.0.vapiclutter-gst-3.0.depsclutter-gst-3.0.vapiclutter-gtk-0.10.depsclutter-gtk-0.10.vapiclutter-gtk-1.0.depsclutter-gtk-1.0.vapiclutter-x11-1.0.depsclutter-x11-1.0.vapicogl-1.0.depscogl-1.0.vapicogl-pango-1.0.depscogl-pango-1.0.vapicurses.vapidbus-glib-1.vapienchant-2.vapienchant.vapifuse.depsfuse.vapigconf-2.0.vapigdesktopenums-3.0.vapigdk-2.0.depsgdk-2.0.vapigdk-3.0.depsgdk-3.0.vapigdk-pixbuf-2.0.depsgdk-pixbuf-2.0.vapigdk-x11-2.0.depsgdk-x11-2.0.vapigdk-x11-3.0.depsgdk-x11-3.0.vapigdl-1.0.depsgdl-1.0.vapigdl-3.0.depsgdl-3.0.vapigeocode-glib-1.0.depsgeocode-glib-1.0.vapigio-2.0.depsgio-2.0.vapigio-unix-2.0.depsgio-unix-2.0.vapigio-windows-2.0.depsgio-windows-2.0.vapiglib-2.0.vapigmodule-2.0.depsgmodule-2.0.vapignet-2.0.depsgnet-2.0.vapignome-desktop-2.0.depsgnome-desktop-2.0.vapignome-desktop-3.0.depsgnome-desktop-3.0.vapignome-vfs-2.0.vapignu.depsgnu.vapignutls.vapigobject-2.0.depsgobject-2.0.vapigobject-introspection-1.0.depsgobject-introspection-1.0.vapigoocanvas-2.0.depsgoocanvas-2.0.vapigoocanvas.depsgoocanvas.vapigraphene-1.0.depsgraphene-1.0.vapigraphene-gobject-1.0.depsgraphene-gobject-1.0.vapigsl.vapigst-editing-services-1.0.depsgst-editing-services-1.0.vapigstreamer-1.0.depsgstreamer-1.0.vapigstreamer-allocators-1.0.depsgstreamer-allocators-1.0.vapigstreamer-app-1.0.depsgstreamer-app-1.0.vapigstreamer-audio-1.0.depsgstreamer-audio-1.0.vapigstreamer-bad-allocators-1.0.depsgstreamer-bad-allocators-1.0.vapigstreamer-base-1.0.depsgstreamer-base-1.0.vapigstreamer-check-1.0.depsgstreamer-check-1.0.vapigstreamer-controller-1.0.depsgstreamer-controller-1.0.vapigstreamer-fft-1.0.depsgstreamer-fft-1.0.vapigstreamer-net-1.0.depsgstreamer-net-1.0.vapigstreamer-pbutils-1.0.depsgstreamer-pbutils-1.0.vapigstreamer-play-1.0.depsgstreamer-play-1.0.vapigstreamer-player-1.0.depsgstreamer-player-1.0.vapigstreamer-riff-1.0.depsgstreamer-riff-1.0.vapigstreamer-rtp-1.0.depsgstreamer-rtp-1.0.vapigstreamer-rtsp-1.0.depsgstreamer-rtsp-1.0.vapigstreamer-rtsp-server-1.0.depsgstreamer-rtsp-server-1.0.vapigstreamer-sdp-1.0.depsgstreamer-sdp-1.0.vapigstreamer-tag-1.0.depsgstreamer-tag-1.0.vapigstreamer-video-1.0.depsgstreamer-video-1.0.vapigstreamer-webrtc-1.0.depsgstreamer-webrtc-1.0.vapigtk+-2.0.depsgtk+-2.0.vapigtk+-3.0.depsgtk+-3.0.vapigtk+-unix-print-2.0.depsgtk+-unix-print-2.0.vapigtk+-unix-print-3.0.depsgtk+-unix-print-3.0.vapigtk4-unix-print.depsgtk4-unix-print.vapigtk4.depsgtk4.vapigtkmozembed.depsgtkmozembed.vapigtksourceview-2.0.depsgtksourceview-2.0.vapigudev-1.0.depsgudev-1.0.vapihal.depshal.vapiharfbuzz-gobject.depsharfbuzz-gobject.vapihildon-1.depshildon-1.vapihildon-fm-2.depshildon-fm-2.vapijavascriptcoregtk-4.0.vapijson-glib-1.0.depsjson-glib-1.0.vapilibarchive.depslibarchive.vapilibbonoboui-2.0.vapilibdaemon.vapilibepc-1.0.vapilibesmtp.vapilibftdi.depslibftdi.vapilibgeoclue-2.0.depslibgeoclue-2.0.vapilibglade-2.0.depslibglade-2.0.vapilibgnome-2.0.vapilibgnome-menu-3.0.depslibgnome-menu-3.0.vapilibgnome-menu.vapilibgnomeui-2.0.depslibgnomeui-2.0.vapilibgrss.depslibgrss.vapilibgsf-1.depslibgsf-1.vapilibgvc.vapilibmagic.vapilibnl-1.vapilibnl-2.0.depslibnl-2.0.vapilibnl-3.0.depslibnl-3.0.vapilibnotify.depslibnotify.vapiliboobs-1.vapilibosso.vapilibpanelapplet-2.0.depslibpanelapplet-2.0.vapilibpeas-1.0.depslibpeas-1.0.vapilibpeas-gtk-1.0.depslibpeas-gtk-1.0.vapilibpq.vapilibsexy.depslibsexy.vapilibsoup-2.4.depslibsoup-2.4.vapilibunwind-generic.vapilibusb-1.0.depslibusb-1.0.vapilibusb.vapilibwnck-1.0.depslibwnck-1.0.vapilibwnck-3.0.depslibwnck-3.0.vapilibxml-2.0.vapilinux.depslinux.vapiloudmouth-1.0.vapilua.vapimysql.vapiorc-0.4.vapipackagekit-glib2.depspackagekit-glib2.vapipango.depspango.vapipangocairo.depspangocairo.vapipixman-1.vapipolkit-agent-1.depspolkit-agent-1.vapipolkit-gobject-1.depspolkit-gobject-1.vapipoppler-glib.depspoppler-glib.vapiposix.vapipurple.depspurple.vapiraptor.vapirasqal.depsrasqal.vapireadline.vapirest-0.7.depsrest-0.7.vapirest-extras-0.7.depsrest-extras-0.7.vapisdl2-android.depssdl2-android.vapisdl2-ios.depssdl2-ios.vapisdl2-windows.depssdl2-windows.vapisdl2-winrt.depssdl2-winrt.vapisdl2.vapisqlite3.vapitaglib_c.vapitiff.vapitokyocabinet.vapiudisks2.depsudisks2.vapiunique-1.0.depsunique-1.0.vapiv4l2.vapiwebkit2gtk-4.0.depswebkit2gtk-4.0.vapiwebkit2gtk-web-extension-4.0.depswebkit2gtk-web-extension-4.0.vapix11.vapixcb-icccm.depsxcb-icccm.vapixcb.vapixtst.depsxtst.vapizlib.vapiMakefile.vapigen/etc/alternatives//usr/bin//usr/lib64/pkgconfig//usr/lib64//usr/lib64/vala-0.54//usr/share/aclocal//usr/share/doc/packages//usr/share/doc/packages/vala//usr/share/licenses//usr/share/licenses/vala//usr/share/man/man1//usr/share//usr/share//usr/share/vala-0.54//usr/share/vala-0.54/vapi//usr/share/vala/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:26665/SUSE_SLE-15-SP4_Update/11262d4ee18292f3930789c4c870dcbb-vala.SUSE_SLE-15-SP4_Updatedrpmxz5x86_64-suse-linux       cannot open `/home/abuild/rpmbuild/BUILDROOT/vala-0.54.8-150400.3.3.1.x86_64/etc/alternatives/vala' (No such file or directory)cannot open `/home/abuild/rpmbuild/BUILDROOT/vala-0.54.8-150400.3.3.1.x86_64/etc/alternatives/vala-gen-introspect' (No such file or directory)cannot open `/home/abuild/rpmbuild/BUILDROOT/vala-0.54.8-150400.3.3.1.x86_64/etc/alternatives/vala-gen-introspect.1.gz' (No such file or directory)cannot open `/home/abuild/rpmbuild/BUILDROOT/vala-0.54.8-150400.3.3.1.x86_64/etc/alternatives/valac' (No such file or directory)cannot open `/home/abuild/rpmbuild/BUILDROOT/vala-0.54.8-150400.3.3.1.x86_64/etc/alternatives/valac.1.gz' (No such file or directory)cannot open `/home/abuild/rpmbuild/BUILDROOT/vala-0.54.8-150400.3.3.1.x86_64/etc/alternatives/vapigen' (No such file or directory)cannot open `/home/abuild/rpmbuild/BUILDROOT/vala-0.54.8-150400.3.3.1.x86_64/etc/alternatives/vapigen.1.gz' (No such file or directory)pkgconfig filePOSIX shell script, ASCII text executableELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=a3e970dbbbe776eaaf08684ebc50dfa07e297251, for GNU/Linux 3.2.0, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=f4908fd3e9c159f8c328ca959a8a4c691fbbab00, for GNU/Linux 3.2.0, strippeddirectoryELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=5d729028073f0ad2a32e116fac267020ba8c8b9c, for GNU/Linux 3.2.0, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=c2205d2520583eac1516d0d9fe5faeebc8176122, strippedM4 macro processor script, ASCII textUTF-8 Unicode textASCII texttroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)C++ source, ASCII textC++ source, UTF-8 Unicode textC++ source, ASCII text, with very long linesC++ source, UTF-8 Unicode text, with very long linesC source, UTF-8 Unicode text, with very long linesASCII text, with no line terminators %  RRRR RRR R RRRRRR RRRR R R RRPRRRRRR RR RR R R RRPRR RRR R RR<qy}87b+E-utf-8ff9c264ca21b27daecb79820310aefda63847ac80ba0f16a15995bf426b6aa48?7zXZ !t/0]"k%fFS@j޳2J e_g F5nh F,3d;'D0aUĄϑ=3X1c|v& !RG&@\I,z8?%JuS(!.DETNxBC;;X%2Pݖ>O_[ZH>'^ς)Xθ6y)gfUj߿p+HTRAy9GD?WRدo ][#M %_fsW:I̘K?-Y'Ru3$I,OmtMvz%]ȀpRQ?`2tKy{Ex KE.k4&^ :BAH1\m(6H50mkiQVRHfx~j@.mrTMz+?K 'Є4_cJ0*DqP-*}Nqب1G+K}(:P@b? %{S6Jut14e՟P^HgP8Y AV:.*|J> WuG)83$!L_@ ۇĸ(b |ڬb-"ƒ=l 9cCWL%deqxTI*x-oƞ | Lɟ&5C.OY)vP6ۛN6_*/Ԍb {6s9$5 [o˦4_~!B(B(SÒ- 㙟%!ڠ}_ʼ'\|hzÚU׍;+@IODVj:9p~ eVU=+` m8ꢠD)UȮB&fH["}u4%̍$Β."@N`O5nSNhʺ#@W!,s9-F1}#wMm{a)V^  }fETħ-+Jmj޶`L;`>^;l ~}^M_+kjwIܧ"N܅ioyPlZ"ЫpJǘcmMG]GsU|O] h7B9n CzoF>Rߺ;Nu!V Vd3c~ X.iʗ>`,X h$R.NJ{XFa%#SF\j^V2IsU2_ЬoUKՒ9:uzpN-vx_ra(a.T1Cy$JjC}Dw\Uݚp~;{dt08hq4rNFZSxF3;{M6Pq ,GƣN.j-ivlΕ%e3({Z~sR {oŽք#WmTC謠\&^W[+9jbU!^紐רݔj"xPwqyGi&cnKMi͜2̨˄r凉hy s-v-V7a226yzhh3n6SހCM\U2/(d.(N_d*%qguI_d5f^u2}ۤCjWBAeI%f  o+NC&XG5x?񠱛)*KJLGo+*lݐ/Sb 6ژF6a69C ס3zS's{qjvāA_zE(R#X[=#*5;9?(W?%r.̐L%<+X|J)]晶C[&u/`.o]TFn)sNQגV&!,g DTyn$#4HCY siuPmq" J $ó SWBN(l+wǗBO6/t5 1B&^OKRӝB f}tui=Ma;cBuJ:KNg C}thT]@c_!)PAm&ds+AFڠtfv},Ӗ_jo0Y<(bB.3&GD^ݹءZmHwٌ'~rN"oۢr*3 _Ҁ\1Yy|{>s|b]ᐤ~8{i.7fP|ш $#Egp]G5QI-#g-r FU+?vyC>>AjM^@ޖ=+,g:mWzdZi_xH*ГxB$x[4)h?ͯ.D1"tFYŰa=h*ӗIy~.T I#Dm1+Թrû) VrVaJh ;RJEqL1㴅}EGVrTLjZ$2ε!5}[ ٰIuV.AXN2/ \i/-yU@(uBU%(晳v+*7GeDz֕͆}%3 ֥^g O`Lv@hRv^Y9o}uhҘ1aQ'V u-@Jb]+sG#঻yۼl|p %qIuƨ{4/<#t+UKձu{b>IpjTd.V6DXlnFt;P'KV'^Xn_ Z"<B]ya9E^<84xP^wb!ͥZlW ma(3` ņ98c郄Kb`4 0F.2/BVAi⇒uW-&n5% \6SkG.zM߈>lM&!goa /CH /Ev+.G/J>M aE1FMUDȯ/QhGbr]"#pdE&|2{8)Ս"Z`_!5bvpI`'&5HX]DvC&lDđ#Bb2'jCΌSU^wHK! g43xײ䳑c1W9#[0`۩8KyLs=0O5ιOZ tJƣrmvl8NscpcEh8'A#z9ĽBok{1RYV+ nSKC7o0;y,=S膃JXdXY{ ~m2y\)|9eFapz'-|t_$oL.1wau$^Qˣ D] t vzx/hR X!mLl0 TJ겿o[5eh0h9f ~ Z IYJ ?{0h]BԆna6'>W`ЋX1~[@Ad.p`qȘ=;(` U=CQX^)ߖB<% G6T3,Y:g?qBoǟ#qs]B+JQ8`V"H=ܡIUZ1zTߪ?y[TioHTԝRp{Jf8HhS8/iy*.4Q9IȆpwh'w4C`l=+]uKWPU3b[$pKF|t=fu<4zҖ/>7 ,;Ha$,uf`FMjmuFH(.K !ڛh+& ` 5fwp>,邈}[sp)P(n;{{\3@g{9{Gp-ш~bjTcuڭ|F x9Ä Ƨq 7+kt#> r\ i5֋b:NarM4fgeĚ1wR`8*$m<2I ] qwH85*+5kg# }8؏ گBqߋƹ[.Sp^Pu+&0N(/bFG*]Cclː[$H$ ~tp-~ EMR']O{v#C9yEV%Ez[zG. \۳Pf'PY(R@B8Jz`6s=on@368a[%aް-$=?j*.TQ7fnM^'ky>wEð g1 ܯ7\MY7C|ٶ⃖pٔ 0L,PYSB\-hb |v b o͕rw?o:_ÑbLLCdTWƇ zHΆB!9֛xoL{H%N\M3:Züߑr=7 ;9QPq9vY>La{?&[.B]*Gn!F; w*N9i3T U&ay 9&o6t#(wɴ<=A@$vi]P̫Ϗ{ z\K5R _0{_?O}TIC\9RdF?#Q(Qhb{\;+.HP2#,&%VERP!NNnG20@p Vo֌E 4󭯹u㮡X!ޑ#]W*<o_es$fV6*t4#ZEEx)]nZ 99,Yw5WSH\D–rŭ0xfVcM{Zkv묫"21ۂP~2dlD#k"ǫzJ .xI=! 5FK9F0)& KpX=zNȮ >{T+%uB\3k|7ɅMY}EQ@֣GͪUHvn2ORK:V-W;. kv 2Y̌f*sk r=D VHqh/;Mh\J7(}N7RվQzӉ70ٺo$?m/LV-/;%^݂`CQK# u3+Ht.U= ; |JVS1S藵 ٦U;䗠՛RO7TD)܃z[(ғ Dqy]TCqF& ⩐J){ێJ,4F=gcp3HOy--T#) lrgFvW5|K`G c}/Ң4Bn"]%?"%WF2XCUv:%254 =0_|Nl }T]A8mubF@Jćt(ԋ/bPL&&Jqx&L#1Ci5IF̭Rh/zѭExד4!$=}3!C!G:7 1YI!~ϭ!Q*h*Y&+| t)zzT$t{=d$T޵hp3qrt!0S/[.SmCIWeKHo!n_WĒXӔaDDYfY~X9֋; B`-7fjkAN2U.uAD=#U ^yLQnĔL3в3L$S?'ҕ-Mz*y^V뽤-r/#KV e|+Hۅ'~v,jaۤ.b޲,D]qHmb{)>broG@GhZ@\kM~oPjB TnJ' (XJo ܥhX֠. , ۵?n4!3EO}'qw3=l?}Y\rB {dE3bA3̀->r'?[@/ ɖ5~tnbi#"}-_j[v`sND}moF׹^s0Abn`0pIE'g!B;S ݿ: e k|2ƾH5kq_oT@y\4QfU|O;E97Ģ)D)W&bL{)7`}v4ƾyiq Eme VAw6NN+elY]j3-AZe]FP LS5l^1RX42tosVUrnhnrš$߼0(Tr+Z!'H2pjQqXq}F/a*8SZEo|f6֍ptQ+ʪ1ҎMC?R_^j{00YxoU;JB|GBah)c._?^ ~c2B0-yqF0gN}EGybE>:֧ #."5Y&zV!qC"lƅp;<4OyY:!Ek<}Lh w)`ǿ)}lv?؝{{~)J_E,RR0N !` Ug^]3Bjn6>l 6.N'խ83&G#'e*do'?^)jRlQNw, vj^~=o(@Q1"ۙqSӧtMuv-k[:PP 5Neܼjos ,fo@{ >| wЭyȆD9DqQj:ڢG'mõ!TWCkq/,!-'acֱO$NB,j1HsJbxsQO[1kUa aB{&0ܣrsKo\JB-9TKW{\UdT :L|,uJȠOax8<ŷvu8kh 9 R:5fPҙVԞYDD>Qi魁9Y6;~f̬u<:EơOt[oV2W6E+Q+C> RW't(B#`Lɘ:e4*qt ?>h)z`3[;a}eZ5[Fy*=5LBV*[Z4x7>r ᢍ?D'?L/=2/̫hm5AD2'ۄJ˗$S2)HIkU|vUh6| v wX4V¯O,l;oe&pKur/R:50&J@Fڭl06 *4aQK_ &dz\݆]k| 4t->I[ѳkUǺ\_q>ـ9Bt49s&HRkMǟ|(1 g!/w$UKKLw|p ROS&"BSm -=D SD"C؝́8ٓ:)g峦܃ c>D$1'U(I¢h9ݜLOg)SYEMBN8^0 ^ sflRkur;=iC(Ǯ8틼gi+Ѹ-evs&r?AxCoH;TzaY|X߬ZxPh5:bt sWx_ ˾LG 0oUEV qJT$-/'vWOA] v[i ? {XE=n>lEDJOO^Q>Nk/ Ԥߩn> b~.z6'dᩑN n9JCQ~6hIpB ;y_DputC`37 1|vT/&xc}ycpbO:+Ҡw'b&Xig t() 3|yݐ$ZT2y'P6;> Y@X9m Nz=bm"JqL=–@!#ˣSmՎʞgcumB"kn m\Baayyhep<ͺD4d,ΰ"F#ɠuer/^'EDQ ;gՐ$MyPpDE-m|jQ~@_h0#lҞzx ΕT/r16PQVoCiE 9:7y0"ы2["Ő #F@߿sDZ.򚲂 _ܛW!HE1OiIi4-.sYRтZQŞR #hm#3Q։$]N3{hG5ⶁ0pՠ}`^nVn{ѩY%abo%PGx65CDtd2v*@Qʉ/~w%`>e?4[$>6^Uιo˔r7t 5l{kPqI\=Z0(G58|{Lؘ(hĩM.h,08g3VLi m1K!XMakob;/7x1,f*1 Xئx'ZUUo TڼP%h63wO)Ht.P^@s]@PBxv^}G[KҐEl_98IIŴ)EZEB_>H} 5%y. ,Z^ݞC8 :~W: &f:TQ3+OQ `-~;j'&Faoi͌/P$IrHxf]k#1^sD¶B}o ]p,v)NC'q94:㞛̰{$m͚˰/VbҚw L}nO@{{_ТC {M+>{bu&_$%r{=iUWp#bÿr& G^oz]1PM= ml9Ӭ'V=܍?Ůcx^Õc4:M(.V amo̘M}q v 7xŒH] u~jCZ_t"wjM*M 4۠{ a2?V b~UYkԿُ[KQdF;\$Yñ'6V[6"©}mjY(Z}jo"h朕Dq|і( =0;lET}|TǍerlϦːsHiP/۸V%zCBnOx`)95 f &Ḭ̌ؿtr7gl(L5nJˬiUqMJC楡QvǞukBYV콄>eKƟhK_W&d{N!ďoͨ1N.ngѕl@8QEՍ% V`/WDKZTfT6ȎiG߭6]{-9ht dL8fy8#NG|#\Q~hhDbx/+! oeA{Ǘ(h_aWKNX>!-p\!7N֏:Z Ԗr2u>J%J!2P^ UL0CZj[h `)ex+jEx4o6×p@m5(oE9[;q#9h?||$ؕolKWXvaaH A'&A:&9r(E]b!xƐ}e A5 5 0sJU 8w_ x_3%Dw,N a@xhdZ)ǜ2t bޘHKJ+Tא[jHM~S) ,rE;.[:n{QsxYdL3%V%_jUM1thލ&™Zef-FE0$g"up Jj_'JG\?K5|~#}UCrgl(wbxt`Qn\Y=q7~ 0?[qNVi%i2~ 6 %_J$.vaǜa_sPP, ["'s-C$A"u D$.ָcW-G;lkʻcrסI *~&O!pR` pHr!PQgRvM6"ÁHa+˨[CTAu.Z(R3 92z,1,{QՓ]nϜL[Pٚqo1RIQMD(֪M@ d `Ug I_V?v u|VIYq;9O+(\dIw6mͻmoA7jPNL:qE [7\D jf~G;Y-^QH5; Q31и0 hYAV1~1v,_%tjN1S w/fF>[4DbjS+d";"-V(JB>Ք>]>P)e\ʗN]u{U, CɊŽ<幋QHHtТx^F0ĚZ\J!G$kA,İø9<n׷ɶpNA07z/x^N\tI1/ƸKR33@N"nEh1pn,^ vGܙXi6g-Lh[CՠB R.04ûa_~ ?F=g59#N;Pi*SpRO^JsI#d!.XsEK_rt'VںؠmGֻК`0(4_7" bTG`(VamO6^cFBbfA_!a3F*a)>F~_&|mlſ5LM6˒DRkckQ*}) KC` .o۽B,EW)>(_0689O fU$^|Ԑ!TvfЇ1bp3X:K FNųj]) c ׷ZD,q3A'ؑ[/t@@ ԎKae$jfD!$ ̇FW@WŒnEpM lI; J& mP -_4̟qu}FV= Ygޚ=y¨(fAĥTl({ѭeo\ޭڃp\g]a;#;k{@&ND<皱df,KtTOr-Ȥ .+6z{e(kgCZE)|`57虠!4yO䟭͝8{?!Cv|rG (*k5`v0K~)С8c7Ws>H{-,,y{aGI/u>Th1~)RIMSccJ%uӐZxEjq[GAh%PoGցCS[k ܔ(6 E J@Ӑˆ(9t;wW`[,*gn_s9?Tl=Wh<kW68)"KKl`\SթwQMdt[]w34ebUMVZq/O'_pq;6jO;A*~Hs 5yjO)ѕX٨#U.atM _Z2r>\g@?K.y_ORҢ%Y^ T帣,9%'+nTKV)surUȒ)'Z%ﯟ*Vow/`kU@GDŽ@.*Wmyl_7$UUےiNjդY{ތ{f8ӣWي'p#,̻z6r%jϫ4`䫫dQ]XFжMb\{Wn(ߤn<{,-"2P܍KI =B@%rI.aa+ y`iвxˡP[쩿 o8mY{$,e+_-y#D'TC-RpGnaHH*sD\u0fbނt0跜]/*ױaX28pʄGEGhX?cH9 RD.V҈;iNyc{c@RĪ964 ECXlK˓c\[NsWT ӡ٭Fk_$)-TiĘd@vMvRB69!fw*=8BRk \z`n@ (fuHG8CdCD Q_e;с~2w#0JvѸjЫ\®w4+OO)(/2M<%i:0Í#WAHsB  ;wtU}~tKi fÚnL#ҭy> }n̶^NZިT 8e׿UC >[Y}ނKҪjk"0q rȲpT !MvNh}t:O-ȅ Kݽuk_ ^9]q0Di E;fJfo v8+cS4(; 8PSmajmԼy}dP-][%.joE"z(V3@%ĪFc/f7/p,il.|KZ5;+Fz >* Uj(dP ry|kA r,-XbcTXiGWI,uԿfЍ[Z/0.ec8`V<*(B`A@Q#88%!b(kc C Ĭ7fV~Zh𚼙HH6Jz\61zTGb7ޢxp'Dtu$-u~ͳ,m܊߉|,c3Ҟ]+ %nMqUR4lGX;ҋ3tBVuI cR;RD G,yZn:Bߚ@Z%={UnAYfs^ˑ~dP}&X_Vj#z e&Xy:ڤ:/M(,L dl@qTMbXč#@cSSPߏBZ@b^jY“:m ezl`OѺ 76l$yǷhYn^ŇDӟ `ǭv܇MR)'qћ%`J (Dǁ ?LU50\&y|@isr 73qfƺ>>U LemG:nU>TK:+YOɌLcqȹ. Wu3]ey?Y G[UU8VP1l0g[΂hQFL*Cn"[e( N_onT v͸k#x:KD@ti4dž6<*'fGJ!zS^Z6X: 9yL'|sEF$+-}zή  ב֞F 7$á{W&.< I{`@KUǭ{Cg t򵬴e[$u[mnU86##Q "诃7bL_|HVE}' PrHI1Bsـ`_W"6^#08$?r$«y Aatc eJF+uxA,mH"=':N-Ma(+'"Ef @nY{ ҏ~r )Zu;a#:(}u a&@2Ʉθ}Q؎uMo[  tPh\Bk 0H ISbF6Լk[b'pGϺ a}T]buKc 1=#y8iC+Q:Pۑ/:뷭u CaH]C;0r4y3Z0dz?ma}=G7 hkδg,!lB!mf`)}|Ff^Wwyg0HN|Uu5XoY:15P޳UL CdT#9crH./Tui" %6An7|*M3S$ekDn_m9f?^TȨd|9DxN]8.490X_/㖱7'vZ/[%t.3%$ixۗ65|B]ӭ9#ĨHot#Cq$Re WEѧ;"PO_:F6? >g+.'FX:I-C1(zg [7i`$śhK* ]+EXG4;hkՄ&=+!Bp Q3|QLƲ-l7BGer"㗤"82ǖb+|*;\CC2AOuv쇞7{.dM5kB5h|5]'_IX d&hcyfb]-PrH EEE8z9 +K6R"Pf17=çL׎$,-̛[r=1'_LpbڳuyCɱ8aqNxni>pv' z[ K%ZNo(j;~on ,>yn8)!h/ :uWŠfyFd.sح#0TBn:P(NaI)3A]mBF˳^f[$rpȖs'=[!&1>P^aK/4 )ey)oWa?":ټtV t2GY0h\)}(P޸ˉ|qky^`‡)B6v/.Qm M`2r_m$[q7#5*3J&d |Cʺ:Xy ;*D;|X,tCٙ1RyZƥ_dn[ymE#/$̩zce'؜+CH0A.!*7OqwJ^/EKP-.x0? VqLf\ir/ 6=Iֹ=^Vgxg'c;t/fb>Hҷdp``;Sek#lOb"/{K ^V!kbYa/A1 9/VpvȵE4['eFtRBо;D~}if@p2 n bedQb?ҲAG[Tȴ©Ujm]L񍙼>gP;`2.82 >X j+nËt9ݛvݶ>lGcuwEI %pRw/]W:Ԇ?4 zvJqn2[3`ILb4rmO ş4jKFŘV!x֮ҼV-#^Ti18mKTQLb%RN{IpeΔq[mŞ \X qY=Ȥ69y>yG6~_VKlhLJE˨AR4 &ň/M.Az5s%1N< U]c7mw͓OVkSrF!?]r2 7Y:t43*ԘrCK(' VƷu~pBž!I4/nJ)h>Z,_T8lfu/u^^5[(HkYE>m (qoH_".Cǰo=,lGT vҰƲg`nb-DO%Ů>`܈ 33DՓ<5v,x5`f $Z!B1lBqĉ>gOLQޛj rwzuI҉N j c= |fSH>MF<9AjD iԣ.QO]r5dQ)!P;&Pʻn(4kݑ&P񡧿mn Ţ6Dz^;KT.G/g?(1_}I3p³h3G_+x!,"+)D?l }{bٍc{ޅε`ˇfTl%j/>V{~qFvDZs1J)j0݉L?UOάzJ${[-(m:v}C!oderdWXZA+ޝ'uQulA̕U$N$yjw h1X:B0]z$󎸪b\":ER\]7ҭd:.JFޕFmsl|m)'rdžl0ErA_ IGΏ+B cn|L=d85^aZ/ !}s-wH6#jEe=h7cAWe|xPzn &{ /5+L4QC`']EP?] w(#5lOiZ%{%cܔ,RAn}{qLYqChtڸ WWa\b{e:Ġ'>I=+@h\kkO dL@y۔DvoceOMJL̀(;qHoda9=DǮRώbl?h_{ g`A WL?2MJsQudϒk\7,}p*}՟`jZJ [C ,fNDb"y^/.(Fkh2udzm9[&QgTP[Ga܊+jxdc6-7`JW${$.?$e7[d͵ |\>.NlnIsaQ OHd;Ù;2o1xtLNMv?Ծ4S4Ĵ~ h,ֻ'4Xdbȯ2K=d8g ݳz`jR Jz|(ZCkbJ`B06ǃ~n.Y?èaZ]҆lOȔj=G{ -,( >="zV05W mKԬZ^a&0H4{ҋsnj=y-!`\uҪћm[#ߣB1&\y|VMj3/Q^>%*>B;KAά sJ欦VYhڅRyz[:`ەT -%1";d 3 ᬖ7fur\TOB惠d lVmnkRirW-ׅ!r';[9K5-E;* ܼfli{% +ˮʷ0Doq+d(Z.PgʷRi?fJOP:.W-ܶ>ML6 digSQ6L DIoc)s0=PoRGZ$(zֳʃ }}*nTקۘ BL҈L2f{ d&Tf4YǠHH8R2X@Koy{W8E<$UMQ/UW#o«[? &M%e0x'ȃ[;/eP2.}ZXH[XI`W:6b+dVVlo_i>v8vkP.4H=Dqӑ| r0T#_ʆy"@FGjMQ;Eߵ2!e8#V>J (ϠClʙf&u҉W>c]1!&?H]RϏBtӃC=]=Lvg5sĖv Z3^k54$6V /nѣ bR7/URBIqv{eٕŸ`,`ĉ\5v#g lU, b4^7Mô&**5J's}OsH6rGB]NK|N28E,n)J or;#>LLZ!D4H1L8{C a X1=Ξ<ӒcX!>BG4@Lj54!9i4J~[(MOtit|)kNd^ i6 `=[&=r{N0໫OGOY]SI4G^:1,Z5=BˏAɥbM51Lc 4 f4 ޝyr0#u|/Ù]x֓X}V>4_mNVzn8u-\ /}UZW76ZHUزc(52GEi~Qor'ȪI,l 9'n'?ۋHzyD-d8wfHQ2 8 }} N"tQUU2tJT'2PflϽ浩O[ J:"(<L犦Jѩ$6K`:J~60 aU3uu aufƟ lO;')+^` 9Ck|f קjiX$"YQ:Ѫ&K,Briy 1N"Ġ~bZn2s9Q${#.W69LV'mbfۃt|1dZJX9RM]oxQ "UUpLԆrlۤlʷZe:Gr_E]z\+:x_S68,›%r+^Tb=*$>D3d(VQmȢ 1o;T"\}wc6ш!b FAӚH=EH4k^2#hȜ8% $+aTIT=CӉ~ר&?&wE FDmݏi2%02 aXlt5Eiv)$ dWАd*'WEߗF! {#s4.OU:a(ȍݏ Zh_fEC$֙MC4 nxglVԹ/b4>Xh*b",M7- ţcqh/k҃-#eeۿhC5As6Vdkn޺n:@*{ b2f'ak*ѳvsRRW_`>J,9CϲTjWңn᧋_-rbY2a-F i|V T8 qF Q)x~D M1d SqFB;d<6t h@us|gbW=**q2Z,71` b[ę;7ؕ+066qJA%ּCɩK1MhkbC+Fջ-|Vş~ƍ(Z}[.y N%iyK0&{fr G4#{Ox#(|Ƿa窤$Ϧ iD3K˪geMQJ!j[=t{1xxF_e*ؑ̆}og?2|3EРӂҞ`/J'*`d4ZH_#9t@dY5{/$Lk9j&.fXFxU{F.a1xtl}ퟜxix;:Y$Ɔg0+=$ g]S!VE;~pž&::zF7%,Gr9>|ˤXy2 mL85Y=j{K5&V6]xm{^Hq S(U~J\Ke~R9l,>1e):*wДz}C6aa vh*>M/Gay%(mA]G{>wY/thS-WF(Z! qBsQDmf4N ͑ܶS峲\3lLuؾ5`1v o?_s\y:7'*/~[Bc_ӽj9Co窣7:^y>Wwy f^+nFXy>ztW\Uh$2[o_VFIlHכeY<*ܛhJ㴫40b"=@D^W{^o BT/R*X0E(G6 Uݝ/\nvEP%BBP6cR8*bh >Ll-tDZ^Fǚ,)MzA'OkݲWZɛsQtB\3ro7Ì@QTٕ !~?h^),ol Y U"r)L@ZQ6 إ~_[h%A`ae _u'ė0%ATnY&m\LcB^TM%'HWtRijlv5rT$V':Esx7նHzoUmMS.cغ,YːJ#aA+d|r/E~_ G @4v$S'P‹y2gRy.unZpE;b;+O#5ǽ6-7-[,#dfy' NU>d[^uNQ,Ŧ%Id.nʌw$[?|Mt4>r݂w\BἁT1O[& q+*8ŝ~ϦZϼ 7k 3A S3Rա;Y ΃GeA75ȯvu{Ұզ[05k ^ 8 _~L,T#Gfd&la~YD&~/)_h3 +m4aK.D"mgk̊hA,g;\pv" 'u ^ޱ 4o-GyTk~#,.xsC]W>Q?Nw;!4{)?@u> b":{%q':pKg#X݂|<`aNd1-kZa[cNk*ӧ^_b"o\.KܒVчͭ=\aVg 釷e`;9ZYl.|~9K s~)Q8!⌊Cصac*lsIDB-׫׹i6.|{Ν1}m@R |zaI,c/_ھ@ɀS6fdQ&)aƧK(6s(itI/pg|I#װcΧ);iSBW%JCUm0`gcWG6}wUfvqIq$B/q =ΌѤJҽ! v^U}YzʅSUn;=2@&|%>+Clq5 lfR9Rg+dƣ+eMJ uiFե%62 65 ;̊* 1 حMaڑ†Y_DeDl1ik3Y~4NA* &gn4@XoOCB_&q)JVD@E`vc?7}hKEV]<q٠2Z?b6s-c8kNv+QFsflkQwhX(j< }ܰx1 ZBJw8*n М!_ K՝?9zIY/Eʇ"`8Ebޝ~/ }Z$v( t CCET܁*f3ы@4xb'^I#l.VEp.2$\]p_RuO=hi[r|0˸k:M#G'WZKҸVHo4&^TV8>Chz?pUw"|/PKRN(9?PRVԼ)n{MwK˂H8jo)m;rӏOUkz^Xhmp~M ڶA MFaN礶`g6&DGU0Qo4Kޮku51Zf8(?qLHm-P/>yd<q[w_knjW}kdIOqرB2Q @&@){hn9b`mEi hD/sF+|ٰɚ XyV}uZ̏/ʴKh2 r* a5S c m9V-N S:^^W#فglh G!c)<4pLS~  zkX/ Ad :WsqcTJyOϧwj@cN>SS~i!, jcSˤs!S\6}}ANюhpiLgROp6I2eG< aw|\hMVI﹋ v?e 7%]iYv;ob! r_(c1=6[/k<dlv\izMc2o@Q;A^ D~hE6Ce\f 8z{r [pONQ/=~ʣGA忐O1#VGm<`y?-:/߹)GzK@V|:(P˳is`>VtDF1a*$lϙ(̗PWD+Xlb^HөK6iA? 鍌#ãݝLw&_]%v^8t ŎTs9w㟝_&4 WV3Qԅ%@z[Nhn", X ђn&ەfHc;,MV-afXbVL{eNrb43܅)g vRڑv;tJN'7boWj!-b6S ".M:џα+hJKWn|tNTʉIV,yt;A c3((?$}f3xOuoCU7 gCCyJ4pQ9rxX@"t?^TYޙcG8k}7N,B|tC(?- fo\ueAAjnݺZ"pU_s8qenDSY@,<=zA,]2ӣ:H XΕ C"A].D}^Ghjw}peҲ.(Ŝ rwk6/_2=PgG"T&rY&Y^F&TCd}2{T:W~k|Z[ȁ֛LGT8VNޡwLɯpTTus3^p&Z49?Y3tVuܻqPQ#_E=crZlgk$"k60ky~]u [ Rew3Wi;d 0yH#:kaճ-e%wu (ڿ2;hZ\iIEbcH|ocN2W1UѨ^)h3iQ,T 0MM^C@s~: NNUer-rNIq)0~faуE49QTaZt!K !| Pvž]qc@3Ď諚}V3c"%b)Eą <!|ͥ5aC2ݸ&6!%t0͏\ě'X<#NQ,i8(}V_<cw_bERbcaAv;EP5y$4:ij,Sx{uR0%gKw <k92c|򂜊XWXw^s95rC-XaT%V_vޞ wI2JzDFa}k/!KXhbx2C<+8(?šfBd{śWR섥22y[ˊtCR^yPI[7vnD'1 xC~S[~<XOSrAfHu {Q:fmoy-V[-lɴwL;jzj,Uڑi壘 [ 2Іu4>p%!F 'u5ĮWǂ6Q?t+ W4> 򲋗T>'ohޑzʶU"MOTmQb'!422UFXqewjJl%gbTVGm9wQ%QdfbL 5!6sN9uZoJd 77ܾkM# â\L+LN5܍VC9bn k>x|K9%pi2KVsbK]fOn9IYZX=c*З&hQHx~%:11VT>`+bd?ip}( qСPŎpg LXS.* <%prjEOPTUVZH\ j$TIW*) %^DV}>@pm+QS+}s&ĸ )5SdMd`y}+uXڊSBf®w)Y!vJꊚV!ܦf &(if +0XXE'fD0$zS1vT#/஢|׺?&<2F<.ӛ.ɇGIf7Q DAgf,K`rFly X bsmN)^(L <^k [dj9QRv"8r6[PrQcTK\GQIQU|*_Y;.xg> ?9U,O%} F8`&9a&!աo@Aw/BťlVy9qXPJF6`ŤVak9LZxwƘ(5p*Qeb- Ïd Sgؚ}peDDp+PۃXjH{S,N>S3l C=y"& LD:6d-гH$|] sR_5WAʚc nNӚo<;$xAl5`juu2y.Gy1\)(鳈 pT֯$H y^Jeh~iL  $rcJ3^rqlv^ؚ|tO\˷!0ȥ%Nva܋TYne#^ht~. 9>[TB&hӍ`rDNȿбX}qS_buvETӸ;v)m oǚ_`jU7|X (˙-'0Oq(_1"bT 3bz޳t{+G5sLҦǺ!({DKFo\kI]p7`H!4'IG5.BVHɹB٩Ā&?"Ykr]τg}xۼ.`pt]_|DhV:ݓ=vWܮ ݅u#KLptdkV\#fQL%(X4r)&~l>gp(asx4T@ݽ좉v@ i:| eW}0pMPb]Fva!>Jf=u:s~k/f|1R<{$)'iźV479b^IWXDGr' v#AvֆVL&l5GN2y ģ4Bp]VDꑋ#ϜTWT x.8“&YcsU9?C䓑ƅ'Eq* |bSERnJ) y&$e6ER4Y]ek&r yQk]P.m@.yCqnD2Q)A5#tDR[NCU#j9;d;®V%3)NB9Dg?| ӹ< $ V"k=/H]a@@w hzK-!<ϲEJ+_vf7_,9% VlpdcոaJ"IY~nwL" lHF֙8tcn[_ +IR*jHB跁UI xPQY.ΑPI!th'wϫS ͉sS+fo=VD(0s8&cO &cHӰ7q 3\ χڷ".'Oɘr)+taPU0З_y[0g(hC#TioFօ(жLHT F-+ߛ?zH҉jv¢^LΖ`&ƗDY3)WM-tRN!? \_ټr3DNE[(py#92nA>bT ]߷Ȕ,Xt FqZf\Q *xTM)vn}H5j=Ol9kmfN, .!Xj rty!~zSi> 73+yŷA,D^OSQyJ]d3ΣRa~wCP=nn ω#BިnıE`*vֳV&g?+MQ kfN$+2v LE:c8V]6t7^nh|1|w*&:O"8dMp`:!úӉ ipnD$=φMuԂl¶yy ?6pmm&W8a~j,ZA -rfp#?Dt?_U.P9c/G5b {KNjˬlUtsXih~41\Z'HL^z)&G|%7 M!H|6.l0/^]9N f|pCE Eu:`UHhSY w/1sD_:W~[÷%dwLF=_<_4 Y|Agԃs{Jph9%H$`]aj{!QɵbE>oӲM^(KX d0+^1WQ)|,x59exSÄw_YZ'"zN,m_4'%xzSRx+:4g]#Vȴp}ʧLcmzց_gʇu~A^6QIf"wW-sM qvR32G##n鷷k錉VJ-0h# '6w|*onV0-p.\xJ㖆ۅڪ<~|ƴ1ݫJ<{_Ad?>+nƸ<`?`9vb& mqC#eTN:~~KZpÞF3XiJ>Qy$vGjbura Q΄mh]+!īU+UBpe (\"՝mNІI心GX2r\SAW(ьVj^t|$8g9(s$_j*]`w+l:T"xHJf}Ӛr1ydtO< 2¹}9c!+Nа/Qη;Ǯ.`)M09 OC˫pbjO<|^>tH?3xUwJ|2{7b(HEL92v|cmPRNsexZu<9*EdJ b{&1w96E C0lӈkHQWgZ-b+x!!܋fZx85Nu⽛aJ- zᮆ_\f ex.tmhVoI&qC4v2fOB>͝, ǺU:wx%OD}ᛜC՟-` `qB!|ש\\$sJ找Im4+iv JF\Z%*P@ t󋌘ipoN11YLl)N ?iW5ds_U{CӴb rz"=`|4<ި0wyhO QsѴ`k7 ٭q:;tҙ`FM%R+szhڷ6mDqK n\rbq蕫'!+̷YhM_J1TɈg8ޙB, ;J{̂2}d{H6&ڀbbkȻ9`n>X2.fz F05fХ.NתeߵX)>@A].esfhUv['|ȲM1TK O.a#\$Q.A43PC4EctO-NIQu3!dުz^ATV {}p: wsח-\(Qգ9Y)s}|AUN %>7eea*Ω^\v<;H4rK;sA ZS&7Gv/?5gfM)^# jcDP`+ ֑ta~5Ћ* SCGm4 &T"=ErΓ-@zx<ۇA,%5/!`FA}ɤow-`4aE봵53=R"ypl1Ŝ!'%~UcȬƺ.9Y9]Sk2a:,e6I pc I{t"$ Rʮ]5FY4=!([*_=wqB^/&/gL&³UujS"R~pjY-oPH@Z *Dpp&fX$iVqUv5oWkҀbr, 8=Z#mnG+2=uf2~ʎj,OFug#, |6̚*mmw65r#Fv."=a>Ap,}Yː/]/HmScsIJY15~85 bܔN2 8N ?dw*mb~'bM;b|W&OF82yǒ(O;t?X\p䂼xsKG̗YjPԀxC4Utz OYa֏GʖW" e51)|Fmr;>qgoް9`mCa *-$$xrZ͒H- 'cEcĭxcK8_&H͛Ud|p~C.CZ!ׯAFYJڞI/WR84n?ApX("k8H#W*IQJ6x/~xb}*%>&K4ƻ~sB"ZP\W]*ױÿػU iѤ8bnva#g#^aYT4Ue^7WjBtPt%'[6zݛDivnؠLiU%Y-\ `pےM/zQw։O2 ?GGEݸ]ǹ 1We}ܢbWXI-tFh6X84[^:&] ;8q9ܶÉU;wTnJQ EK8*ڻLTh8'sjt+LO6)3m4"YSY__%#|:$ fua9p!`*Z'kEu6,$ƄEAz$fcȎ?D?=2QuH͍d hz +^jy:gVT|}{Cd,* d~+Q?hfкzV@4mPٮ}ミU.IT3,QP2ٔmHeLuavG0B莸zFWT});ΎF_]h 528 r+:5?9[ n)0s p4AM'9ndG0:c}^DeB?Ԇ cB‡[S͌.cNd#slO©X:{ry&=<ΛX0c,y$A5SkBN_-B?$ 8cw&b)Z7FKNNQd ڵeS>Cik ;Kj@8 deAȗ ^pWҸ^ܨBS>% <,UO%Fo,)tENL8[9|C2<_]Z$nmD2zgԬ&ӮkSznoa}`^o׾4/rv"i=7 ͇5k r(̯dYR  ArfIST.VR]:}dY%`F*_V$M9bq"ԊE4ȱF@.Ձ>;sfuǘuO`Ae}cjQMŸs7TUܿ}RHFh R[.>!9_HW@]_F53k,F(u"Pwg`bx=1:;37DG4T'm _:v-Tgbg-XhBzxΉffYJ F7#vadJ`NfKٳlތyU,p`Rj.6HE@{rM8!O[yzXp#Dk 'h|`Ul%R?nMs& ?oHl {J/0ӯ9)tu8n>Oy5rpeő|4Kl!2_Zpj$U v4˩343S}$Ň@#qq v Sd W0Wu.[G{`~E]h3bWX{>Eylͪ&UډQrJ*ݙgmK1/TFӺ>2ޘsJnJ`U1nQ6 DVHńw#vdnM:bJ@íe}H* &LFY^YF0 ps ኰ,VNzHqm`xD\B%@ v{3wu3 x`U4 N͜EX:Nj#ΠGfrGQ ĉKc ?һ gxpK< W QKݑl;"}/: w!3հDEWza[^zm e:k Zw;'$$Ċ7jt23E KqĕT{䤳{pL 6 o6 +U Vxݰs\3{+ CSީ8sD`mO{`[*c<ʝ {EEniK=ɷdn$"^ӊlVd^\]ḓ#>j&N%v*w'Y)i;šOuEZ^Dncb+Tv R:avvjJ<3_AHnZ eKkbА=@=DE'Oz9F҅O$/衃ZSWNb4YҬ/Pu W"t%4G;"zoL잠bn cw'KY[~H1(&$wRa?nvIv͕6}nI* z;_7sha4zFZkPKj,ggi+ >1FhнA%2[ʠ6%p5wm 7,3QT{is$.`=5a +: .lb⩍Vd Z˶BYoM?'J9K, o渔w ׎maKeQ:߬W#Gs4m+2qX˒T]j8EJA]6iQC=R8<Yk HYZT^K_y!jyWT)/@REX#[ VcW?euNw5o3V P5ܺNJ wh.ʫ~W,WlR1N*܋E>@Wk$n[kDd=f.`e%V)>} !;/_ӕtq$IkLQqvX˻\R\1fE7@O"KE*d<:W:rtGȭ.Di*:"%Zd$%'] l5 7w!jYi55ہ1;6s+n!kQBO9Pfkx5YV֠uRib&s1v3el]?v'sۋLPLRde >SwS!6$> OO`r*אy&0"YcK~rڙ[)]5)֬2=glB/]l(lJ{/<[aIz0B$ U@G>u?ToAy;mXw / Sf;^ʙ%u!ȺivyݝCԍiX6rE0a!RbT[w݅:)JBFi_ v W2{9xy#b0oӾcV`i()QA{Ai}ܪv WlP/)@쳮ìL/n~*7low;e`,VDpܷbxb$-uyA aaEB[1*_DGF%q]ZagNTKN5ew'ẼO1iT>OڎOxh*HZx;mOTD&%n-.~wcb@gu@I@(dN4,,cZW,MU}1 *\V=6D&[^0JԶ1.*Ɍ\chvI_+znvbU6K`*SM4Z, 52ϸyj`g^M -_zVdF}9j͉B`Zvn.IW1%'3b4R<ϫ6߱W`9[ t,14YS!>TJQk8`jfᎏl?'$>%wUu򑲸 4+IcT(yѳQqPiF;mwV S}eQޭq> uY&J-fdm6mwY?A trv;$7SPҼKwӶe-A -bG'ސ0H'X%Ws]٪X#2t+dʽ>(Ntn!TA7[.ث|KO).u%͋A/9i~"}׷o,\g҄تwX"͐nl<,GYaٜ5)X wZEf EJrl\=)ʁ^=:b õ+y06`$BE/)D[>muZ_]d#wq%#^@l}v܌0_AnoBqAЄ.^ƾ!S̈́5 ꬞d0hq$c?v[SáL!!톸hO#V>X$F56;*cDߙ<[uJ;T'~zVI̠i1O6~0Mf&!&"+)=*uE+ _3ҟSVdznJPVqXDCܦ:6v%EUhYd5@3ȑp2-6J%KHbW!b/Wy lI(}]A2iB\zI> ?~eJ/ݚK%2 ⏨DX8 E{,ylgXޔJKb:]ONf/|0ugN6ȃHsrO'%5N 4!l*dR[ 2'_Bv&PҶ}CTgj֨rI8ϲހW[g/wU~iHHu7ab)j}|Oa#*Өy f#}CҊaÑ/g:yx6G( Dcg+oE+"Џ5]U\"9svW@(4Ce%t)~=flIߍvuS|~r"QN32J|Z{+\LoeQW<ؘ;FG ;l2VNw= Cu~צa*!(>rA奋S{?p^7 Op._KyJLJmZ7A@)vpe,4z< 9Pq H@lnnd6XNT_\^ x0iڈkjLfdory;ԑ ~ q;b߳QJ J?2_NSct UȞ`KBhSndv[j !PNkGh]VK 3δ~!m 6]jГĘwÊj0|cw%19.cਊJvܪT;G"cj##CzDrqv)(^uq0;p%eAl䰨Yjxlң2TB)0O/ʔZqP̻7f5,]bs{&^DQnbE4h\/pEɫ*70Hi]FX95N9}LDUGƬC10%h_RE:W 5dc\AY$T *dB=dNj\X-o:RlV_™#"Da3+ [φmd}>͠ }ԢG^#-ߍP߷+nBn.c&9{R>bxW}7)tnW?ޒ&F -H{JIxm $^ Y~CBqZoҲ`YJv\,mwnqLCܥ:l4;BM?K4}!kUȢ,eUy vh5Vk)/\W# zVa|=SZ@MPza޸&͇xC?!] MGȕnr*huk^ m $Yj&!k"b̢TSZ«?Yt |dMnD2N0jckE/yStx*{_}øKHpte6)=kpւ-]խi`j4 bNĶemͥ鶄 # SH j1㟽'b_($0LV71xüDAyS=jK b{ǝٔ 0R,^jsRGB`\I:T#Rz }G}R2 4{퇼1Nm0*i faՔ1I|E+ {sĘ$0F2AsB%&2>7ZKM >a*4}𫓠ˑx:|(Bk?- 7 F2|B|)$N&ύ| :g%d.aߨ# &h8g@hL+F^pD6CƚiI .\v07`a`o \K;]^>Ԃԧ.4J|I'T0q> =k]rDTo6QNq~(8LG )F rΖvH46)43"gSؘ{!j1?GHXw">ϧHӫCj3z;v5ण]#;C}ЃEZj.z@#/U4B.`~n`o)et x\+9y$52w(ŸvqحW90X@p6|w!,р u”3iquo1.roPz~H"P,ûd?Q*06+,/W7#.tB۲iOs'}e"&=~0uz,Tk} \?DSeS@O' m4'-> +vL2U&_D=cAkn'N[YOe&}e炥 +d*IkZ顣6m=lJM6$pur0%H^.wb+VP6A,ܔfcT&zIßQƘzb9x-ׯn3(>~ƿcIJn&ۘ(ΚI(Scc/!SM r>@jS!6}r"Cm 3b 'Ӟsx`-}N䶜ã;뼇g KҸ@iDSM}~bꉾ3oM/$5)-V%#p*Fu$hccDsv .Xp>o}7E}+p]7:V<@z=#7bQwj ۥʹoRK|I&PP^*] /S.ZJE.@eyD /OFA³i @-ν=*vUP$^O V~㝋4tAuDv{SF6snXd{y%w'x_Ľ~/-v|fcW{!s &{nW!X/^p=ʬ$hjAvп(ԀR0H &KLl(`C t[K/X>B'L"#q9̽K3VQmq~,e^gG` ܈WlBKatV~^&5؉Hft2{)/Ƞρ}$n`ը{8Nbctah{WQ7ʸ*ΜMFXj rLfLh1s=d m KHYfw.:zMK|ΞItˆcD X`D`= tʤ\P57/ ڔ_Ȼ5c#ЗIgxf*mcxo%f81* ­A`т>/veqx 5.1|6ԙkÙ0!6<3ݕ_fIR!Z2xm07xH4J"3 ڱYT | h$!Cij;imd%:Of"Nցs^Qy}^ɱԁ^ǟg5v=GDix㢲pd/a^KMޮdqZso'gnW(^vy+K=(#A8kohz{tW\ҫcv-p8c9#3`0NQe ros Z&(͕uh8AV @lN1(a?b]/ Pbp~EVL?g⣔ߝC4k^ ]L;^囯aR-IRfFϗyFO۾׹݅o ZXd;bnyqkGrL1@MӔGۋb5ߓ:5ݑ&)ITMkPyKu-_ng i. 9i^no7ӝ# ޝ(D? Lp&V-HK}rpc du,4ڧrnBDZ#z*l.wHi 28N}7l| HA悯wE]RMn(aY)=TMQvƃjэ9_ǽJ R֭+=© #И+A1j3ogcYfQPUIY=Pi V\Frz- l$"^0R@{Ou`x^L=(TAHuM#K?dyy?f'hyȃl||7C>26ug9twőИ ~{xI3؏"eMoU?q\!e~Ǖ"`֠~rJH~x:}_*:}CD[i)Bv:I] ~k_U>Pr6 U^_,*t0Suɼ̥u<*gŹo,jet26B  l1aQ|K{6úܜ[}{״KK#DY_1b%mFM7ɡ')G@!ɿWE|0g! >`,YZv11`m!+o}C;HJ(Nϴ4,{cJ-*3]:Nym#* S,c7)v)O?ZV|"mMѬc]v:>#+igw52uV u4p:ȶ },픕a/5(H0JI?>Ylrs=s|1 ~FSC9a99 W3^7CmN]< " *qNFN8J~_)Ř(wa!'P7=@GjܦZhwHGO9PV=Hb^掩azퟸJ+>inoj7o>-)Gf3>}cL'e[DaIn&V=0>fx؟ENpbTp Q"}kE%`+=>ƥ7<;$cHZס %MH EOa;o+U_~Ƽ@*t,swIZ3J mlCyVIʷ7·,&GElθcgcopW4[6;S:U T.N6x0&e| pĀq=<].\Ppga$Ȟ4!`C.)RobaZNh,V`;'UÍфbi0ԇ\;֠y<}Ȉ>&5t:\^@eK2gT(_bכ"gx>кmWUġgΣO C7]%9`'#U(6K BN9eRffX[1Iݥ\N&d f*vBp-J$m" p7jΛ\`4hQBCzBV:x)%pEܬb&w'RHOgx;kE@}v ~3wl9Fs+6rJMPrґۼqҞccgVm!X jvf|/$5ɡ0FU61fQ O*]$kQ٤>:ƺ}asaJ[2&eΦbr xI.8OmZ'Z"t9Trs`KIمmE0[M4WXÕϔr=<~ (Q6rELFx9YY%:#XP^JѬ&CؐⵧH/G_ZbD>.teʆ4׾ 0bUFO",[~}o|J[^ҵ|sKd X@lNnpkс4hV2`u355XI6fz6hmPKnmn)8r/eσ/I})@9YcV,zlƖ rܥz+]ey 2XNZ|& p"+@GHbxd+!Dk>7䥡~@;lx{@Ŏ5IdH:C=E7}:$c+̪5o .Ct6הй@v{E:O"`mV?$[S6+rSY9"S-.3=L<\IBg F# 3^3o;=˦A^_'{#W%`O({2Z;ʱanLWx< 9:NCa $(}zٮh՜o{_(,yF?}]_'[0'0ql엠c64NT!cwdbc"R>hoj2`0(@OU|"pDlgۉ} I_n9'[ KZC+gn0Dt /ӚgQ֙ ΋1krCcu{㞈hd,:ĵS_]c4&9c,tX8}tG1beF0y/<welr(oWYuHM!3 }X  tr^#%Afj"YEV QI\ap3,H9(ͭΚrVX!/L24 |#n߇ 7?.aIdm69ȑME&w$UWJ=Z%5pk@GEyԐ3ݝTocMgFߊt>~cJX3X^XS֎!mANcGv~Zn\?t%c垉N({Œ]yRGOw?A|\k?a¯Lyg`Z })!T =K!pXF)WW/72az!] ⱳmo!ύh=b5c-HE/X>i1bΑp:xygʪi~j0Mq_,$f@35O18͈tCC]+ÝKJ8d!jV}S&0c;H"`l{zEP1L@s +ܺ/gN2w^x`w >} !1l.'L>qq$C`q`3O7%%0O ƐQyEx*r`D#:9zN PLX ͜tq(#"n?b@OĈERp$=?t\@ڣCxAKg *4Š+L^942=^FFs%89#1]UzMtCOomI|'lME'G 100,[cC}`+mWjrkZoVjθ*Dz5(Hkn>?#>"!U?|%=wdGs0GS*?n֨( . %F C+Wdٗ|{ IZ)žI*ABѡ 䟉itÊR&e*B6I5#8-D#A( :CsdzYfiA1_.k\eFOG~AMۃcLivh( S.1`sywl_O)u[;,9! NL]U|h|1ZD;vՊv)}Bm8:Y$,uL5o =1! #i?OK]dO~)Ly?qw.7JZa{$,ezJ_*Ct=5~կNݦҭ"6%e{Q@Ϥϳ,{-{O?H%@t`ZUHTx2ذ`uf  8p|fekwxa L9-b`aљ\%L(aE1w``ml,$hژ8shp0bl{;6%?^e- [Fz9Tu!;o<>4i [ z"VM= -pK}`vry0{ǤYWY|v6lef,w\l\U,u(B&2}RSi+]Uѽ f) XC)Mb_QMg-޺ k_uXQzZI7Xܯd mI ,1̍.}~Q.2l2v< Ncu[X U&o㦝3gh#$2Fg0xԶg &uW!r3^X' |9<}nAWzuOKO ethkR]v"]<ПqFI S73InK|Hn2 G}딤;5 |0t&UfkKO9-E9h%EΣ`liq[~k"ff) .Fd#LJ`16>T/>pw_'䲂q6;]~wi<("G* ׽'ϋVU5O^B$`GϤy iwN*.fω0H& ak^,6G[e&q@vý7YRjYYcs\w(+CUYGP/SY'H4qCNÇ4Zf1(Y-PQ6ĩ~= lg.@eVE@. &*m -jpA]]1sĕBЁD!`6!caڗת+j S8%tH7XMpcst̋_5B0O8Zzkeڞ(t..:hbq ̈gSQI̯m[(RwUMVrla}3;XAߓuܶ%D,4 goeރTdì"J\ >Bm7IQ vT\Hqm!]+ӆ`r ̡ۋG`6G>!է\,C\e(\oT({Rt1'QasϡfHkaAK/c@si-U WTBe[- 0\LE';~c+@Yt_WrV/IS T=~iRd<L⺁N&c`&:e`R۪MŃg8Zi>v>CN4J;Fk"#5ĊPVq>ETP2RJI]nnߛr盛|nɛ)z_\N;u!y=J,g e\N։Ca'M\"( hό002QOUK筰.)JjL8ddblǝѨ\XlA/ڗ/e}~~v{y*-'6]"$^=*4@#-;LoС i\u]-Q6oZWPې4iJYt^Bq< QIHFۧؾp>yaH]x?,mg&M)/H jT^SF̳ըʠ">uiv̵F,)>O=Hbn'bpRX/fDߤ[TRD\BWC^pÿ2ef?AZPyIDMٻJ:+XV >4x#"kZ0+1scDL$ =T|\YsfyIs֊UDՓ/+K6Н;0esqѨBg6vzIڪ5HjUJ]9 #.Y| frvE-V=`( w4:p^h1տԔZH`JE:)T(6W&Ks0vKMi:e x$gK8nyTgP;ޢvz!e:;b%&^~@2ݽ R_T v ;).]#Rm{΅OW\V'iwlin2#UX81F;Ji95#_|Gd,+񫜉 PSg_G5Jp'%L q6ǘQ"{8 j21$TֳH5،oLs8ؚH3@֝v}KآVLPJzTdpl5%zk0KsY[DB⛿.u؊ޔi~$DUGpG>ýKO"7AϡOpլR BA_ZԄ1X9 F̸h8:8 o4c_u:`ukZ_Üb)o4[Yn=Rm }h,i,>5H_"cDRN6v:2]=2YjђڠM1h0w9un|w,|&WKRȫL<_~ QBIT`iӖ܎8QRFk8ĠR8n:* s6sXړT2wSTx&=L^I :; HCrЈ r8-n 5:/@2F[T#1m jX|y/r8{#xG*B`[;5abQ3wRyěGzlfqJɷo ev1MGSz ;_/cO,ˉM&X~!.Dԛ0:&V,bQ@;XZ).'2tq"G1ζsa!$7v y عvIM4޶x`a!پw%ɩ4Neg\(m XY#cΫ+[H']LK}nm^° bX+CLL[QnX=>+?G h !=6;s9IDZIzDrl?զ};# |*v@U~ĽDŸP;6\U$p'=ܟ(稐F̞(vZ9sq;5nOdE ˟ǀ2jYٗ*VSnNo_z{{H}h/$`?)b'3%-W!dk4Y0Hϰ-ufoy(xg֭TL ]p"{hʗ dxJb\WT >3(T)|zA8v.ƒ+GY6˳B`QhU9wVT?3n˱ 7_: ]<[+"^1Z=MHjn:lu$R@ԐϧR޹a2kkixĬ<ƿQ:G š)G{33Ki,0Vn}leRD^%Fn`:`$1kGb J+ՕP!}tnv2cc Lm]3ƞ4 S-8&N0o6k:N)՛F0Wͣ< 73Ccr&Jy.R}N' UEdkHNe+2|ާh$ْPiӲoS v>}Zr1a&ɨuZ2'SXh;zOSkk$yz$`^\T'P:i8L]ŭQK++Q8l'J&46?tXF?9|.78ݑ11͞j;u5!p7xב@߿V%BTe!O[7*VEDebM tB6ubJ}ź:bylTu[(lyڗGe'{4̠9NP|ҞTj8v.ݥu64^k'^UzVͻh9 Px%fn <6#n<>࿉3>n`EaP"{)| =(W%jLFٖ3pK/VXrG=>81Ic1L@!`Fw):P.I}܌ٮy^  ~RTjiN¶7,Q(nAY3qI$hچtSNN)^٥T^R  ?VhC aST&^a_Z@E))pl8kT8l' s1||"p[ ˉiTdm$, YڂatUB [1CE(.EWT9͋{~V IBAaoí諄฽" #}jƥȯ !Ij,Ė.+$ mA#DS!yѹ\3. F0F#ͤҪ]n1Yrڿ'D,ogK)Sd-: P#P l{VKBùzw)gZIʚs5}ʹnDMJMl=.`.֥LE e5Ựj&j/dz2b(4F(p(mJ}<m¾ \_˱Kec8M/km Y xe-Qm w4cؾw MZw4I|\ZԆ~ QQ{≈c{5{k]#!37|_[;(z^}-IBtN!JBv'7AHY2c}{wnu"eu+ҺۑݦxCcK~JR (닎Xk'r-j3ȜٴG͙]lu# l6ru@ aRnhw׮יbjvrF12Ce J^ ׽ȗq}w>b:Ԧ|2)E_o ގ-)\8?|ᠣңE~+U|F6_=gQE`_Lanz^Hުn^8 _MsDD4b8`*,h^oێtuKz$D,+]da <$!.`4;M*08ONPf\iz!d}T b4? "A\@(]+J cuEֿ6^־d,rx!0'2+)zF {G%p}] ?%^ ?۴g +]JSpQa2rc]T>j(Е:`YÐ&ACt)a:l>6,&A}Z. &4DyicohhS䩎pmIž+3}[Wβᐓw;1$X*h'E0 ^|-W.+Clóqmz6e + ݚɽmUGk|"~a ?@mI ϧa6sԌ֕4.guv)AUqO7,s!J{&N-&LVh|]3DAIJ2cD-!;IșbX>z~8q;&g.⼚Ԭ#'IVtr&#NL](q ?\>B~XP=ʑqItaEȚo:+ vP<Ud_ry׻}*R.^k&v{)b [ϔu[]زBBHܔِbpkzt"~5 jq&˨{xQVZIZ5?g0Vdimeܱ :a?8fhB `:>;}U meޔ}osҎS%`Gɕ ;W1 &;F `o~¿xllsÂ&W&NϴK[em 9v+~NM/<'>֥Ռ5< FU\Z`Ču]Z`#E*+^C))Ntr\@$[WYZ9A?-ӵ;lB}&A˒6\-aKF/R.fjH, p+T5y8~ںmV!#mQӎkEuِfNc?3qkADlYƳlł䑶+[vсݸ=K2͊t^&\[bܦ{.;jXSJښAGFRMW [ b$Tkx CB!^-ӰFYභ֭? t2d䦦d!W**ԺIU3Ȓ8] LQOz(312H.rJƝ *BPa"ӻzaj? QI~݈԰W"KBzi!Rb6Y<_R4)lNS9wC2BaF5g>\6s +t׺@ߌ! n<[*t {pcbJd$!.`t %o #{B;+@lAX?AQ̀|h{Q7!# NizR9p* bx)?_xX/}rb=j˅d9T9VWAtp E6P0Z]#pPi 'QsSiQҩ WUz]UmoɄOfǦÉs}׌,}R-IF9O럪 ]ih,ZQC_츻w?{@C1=t8)uI4cbc81;4.\6RtK/IB! I?O0v َ)ϰ^/hnS&U3nd>2#== 0Et9EnaAKUB]Y}dؕ.OxEɗg"wmdЕu0nS|lD4=kdIVYrV' !o@lU>bWF }_nqvڈ@;?.'KOh /CP~P@A e 2ǚ|Ejq}47G|?*|"76*Ɓ5iܛGg,0]aI6\%@yy1j Ф3$ƌEJ O)ހ?M$@ސl*7 `'NOgA%kt{>拵T4ZxgFNES|cvJvQiӫ^wM "Gy.(`.;e;n f0p3=(k3 = >ΐ^K0YP$X r bűv$fU476}Wy5p4@&0~mp}AC+ b/lMɄ߈K?A'm?]hp>襠yڔ- 5Ai%9U5zIky k ag)Q닗raP8Q=gs )?2 1p6t a$DS4_t/7襎LSAs]/8NJFr'H{xԦ\ גc 9BXd`Iz28 M|)"1F\Qzr/f.¾Idz{fi,if0YT2>R:!Nf*R͊Ua2翼&@A,~l˪XUq4Oe(6ݷy4}8:R[Xv>Y+H^xaO*'U[re6gi~;l8&-Jb0Ǚ& T(+f rFl54 #i  `ҝ K%CtEY~Kc-uVQд{-1ߝ&m"NS\?%y*Y(gEE7cPa!pUdÏx͇vKF++*c&3k7#~tJ LJ:Wΐ=$IŠ${|H村߅g@e/ $aK K^5Gt>XLQ{(;BVE'_A 0|Ғg:]_i[֪QN%@q.5k pNGor#Sǻ4 {ՑSޥbc/Zb_٫R/,͛m#GfUfA˝"" yh%]ZQƭ{P8zogsAԩ؎fsŀ e(.^ss{.>J1+ B٢GWC#ͬLݺ*x/q' p0CKzZBzZO˲rǟa Fvmzq(S |jtXIu`Lq8:*dHV_əuA;vdBnш9،.;!Ԫ&[,/j aNt7~4o7,L0rjsxPzsK{PoٓJn+ mDg9r\eE>=b{Se/0exjn|ǧ_X4ZQNpA eЇk~@F :}~\OhKﲂR#OƻHQmP 2 mEkDBJJ:nw_t?DЩNjI20a šd1^100CeVv蚯04M!ms 㫁|Q9=^W;ծr_V ~f2\[IUB6 y(5]T۳tigdr:vį_.w py wSȷod'7vw)dV Y|;u-ֱpz×BqlQvZ \ G(Wh2 G%XLw4 AFv^EEH>gm2= UhCq,?|3aT vpS_QҾDw M_Wn EµF~l* YVi5ڃ>Dp%!8¼ <5ۆŦFekHojf5ad@GQb=pk|:f,@ł+A%p ]Uj܍LK_|1M?R3&V!*aM_޶nYxrC"Gæ]Bn鳋V&b#؉r?? QoataY+24(V.N a/Ѧ=XJ ͏m[1RU]1?;]b0ZSlu˽{X=+#Pþ}F vwjGI9W"HW%5ZBYN!'%,}!>x=c~A -˦ۚCDײcEfE,C\0p<:-|j2a.o!OMh2V}=Y_a8Wbo9?OrN&鏗y͈l~O8gcQwNm&Bե(v6ֺm0k` jE[S/͋,V2FQYQo%~@ ԂF5 QoBV|H^N)1_Wb5 ׮>Փ'_{{Q# d릊iotA끇=d-mKsbK6K7Z$ 0:Rq_~=./Ń=%,.7ޗ2cvPUK|zh׻Z2yrra:Hs"WKsgTM;E+Iϊ=K :}g_hhI8m/(ڳ zIac$)!K3fTV!:!?Z΀0MhЁyybR_  뜉 b 7NvcRW@y[rnck'uƖ˨oDG4wqֲOQ<Δu(+ WܘS|R"Dpi!N{CRܻ1^GZc9ҏ St %ˢm|h .yNH{}K׶bC`:O+JPɶ%aY0DApL|%!e9םYW*=T0w?uc3r02x'TN¶ǿ w 75CnS.Х (*~VJ5wIGQV rWsSN{7-=4>nT#>'mv4 hHGI_!ͮM~+FFp3XL.葎2\ds,,l b8.K|,.$$T+ !q(t$"&Mz3>Os;q^--tC;gwk9p_F ~ӳ4.DЩC0z A:$? I?bvbhLJ<=+mL #vEQ@a5`G6S$ pn;=Vv!K(nnξP/'E$Zf]v"S1J:>!q&%٢Hܱ>.+!shbo2̅8kɂs *ch1S4B3mA˄/+719&^|EHqCXB'V3oi?1H0CVj(@ja@c /|c7]nnĄ1-wܱ8tJ.}_pcUg6萱C)+-CpT9I mMᑦ0lslv;J H#]29dp4oة 0DN&=vcU#~3;#KɽXzEwB0je]l!uc-r~ ߡi0ǚw eG! TtsE'ݣ .u=[ͭ VߎqFꃿ A6J'V/a8&m6)[µ9?M 6lR ,JejY]{e1"h&;v { SVE }͆| q{E H4R^M兀Ap$oJ21 w|׆`B|(ж%MKIhB7 _Z>J B0+s6)w}t >mjW{_ͷSx M{zUtJ;j+v0᧰،s]H)$c* 0"KkזCc)}^s*ȴa̺KEVc7|bGV}N:$m"|2zA"J2|;,Imʝ &`OoEg"GrƛMqҘKySq }pt1<:ԤuvVlfJ% zR93] jaj% grik_ 3ŇH<5-#_!VWgf,Ԁc x)kIڣ @6$Fx"fx ?6bveV>˵[E$:gΣA!iܫ2ݨ]^lk\Pϫ̫ۯek-x\Ez 1Dr;'װjE\wd@`8QYv -kDoV,Hxvi,M[`v{/Wt -m{ЦG## ıVD1HPy$f#6J \XT@`A";zXD3@mHsˊUPj˴6By߆7S+#jbz$:Cc.Y 5E)jO֔Y4D qWzx8gt..I@\Ѯ8zM'}9#NC}É 5 PĞkCС3Xqɭ@#va|՗Pr%Cǩ`8 $7xVaȽn@i[2B30Js& 9ED&ADQL q}/̤& j2ŸĦO`˰0!N&zCSﶆFP&L"u31a1b8#8=E4~Ae 5fr|QoICmS i1$3DyApKc7%:n{FkߚFYyVhZy?Wٷ 3-o.d\cHv«BZOzLɝ\M&D]2GZPEA%>aYFa.oWa 29yXHE܌J^  Rѽ"zX2"Y 4ߚ,!ϒ=UbܫL"So͙BcRNo&g1no[m{g(n# 45"Bϣ!Y؊9~cr8~8ַCCvkha xB/']Ld3=C՚cFn8. PY!~*}+`"lř($l|NzCPI*-ccNj(>!t U`_6l}M2o$/^F胃+Tٰ0.ZG@JOD3=¡C0 V҈Tt{RKΟAx,#pLҫjgSI?|6eḭ/c^]Uy*P粳&!Q{ |֖Sfp΋2QhaR|ȉqx@GZ)dw*L2RGdD:NH2=!}2HE _:n:Wѝ(,&(K`fqS)faZL+>=&d @cS r7HʇPq(AJ >`y}r?6l %$[U\q^mwWF H_jqN;o|FC cG"k LCB ~gbLJOqK$ٝ}u)FϠm\̹ݣ4ѦdIA՟;T>X^`?Μ 3M!MZY(ه%gJ6}؃= yrE}k(y)SX#>/m} v uw\y_OWk$Rs,EF4H;,x[={3lxT&qosj8/\g~28 ؼc.5 AVnwtM/Mw) մ ;5h^XlY mtY :uOfr;6TA*3Gf? :jCn|̴lu#9\YM?9̫S &Ć'gpAErSd۫X74W$˨^Di9gt }պ1Cӟ+دŴ9ѡC|L;@6+)k~փ4PQgM '&5RV?"w`v&V{dg-dƮH1KET`'0А^4)y, a6INaY;f&epV֘2?i5& W,Rb7OsRq}N3.G$+-y4c$ C|PPEoZ%q@3"9y>n!"a!9S>%F/`ogM0@i[YN@Y8@Tuw7[>hpۿЦ. W\jwQ c^W{ t(sÛ LpD'yUF*! `ltܵZM]Mob$㬇97ܯ&i Z_c\jI*HE$y;3W/d4"`\bhHaWC N-ed&\Hpm%tρH/]2>riM‹U(sOm1ɽ CkYS^~6&- TGc$;\Lun3[92aM[Zlo>FpVIO冷w@_e2 D`5zR?4ޱ  x=wZ€ON`RNit` ?ϳ!֖yH>;tX©# SB*@j@~RXVIWlULo߄q){{q4|~,ߒZH}vHˍAh-Pc'3M/90[xZJFwNkoP|`@[>VKbK}y (Yvw/]V*It3\K٦FIsR*ǞFպ/ӷb:*ȫW;:.#>(.dcMOPwBW^+#6jDD/4n,u:"D7Mgl=cmZhpզ=^N%Tvohw> +G'5A_<hUh`YQХSp)ϑ-Phאay8܋vgXߛ׬#LLF؇3v\`pOAc}sO4h=lRx]<ٗy8 HSYM~ AxAp!ud5Q~wDYeň͓֤e>-I8 枷Tkw\Ջ/N2HkSBT(? ."jů܄3U Jܐ7b iUՇ3&SR$(H+FO|W~2>/"/Ke:iK_\[0n6DR.}0F^z2H˫8|(7ே3W>h ~M^y)O٬f˶QT3.1w95(NJՍGhgEA3v}%\9sr!픙ЯQU]wrU ,G!AL3:?U{yNo*rp̨DWNu3+pm! ÇX%.:Z"_+qv*m1^f'L!.b숄S̘aw9 q1<5>} |̚&#zqq:'!唽nIu$Kf+bxM :r#4dβ>@ +h?=EI{OcCFЉ'D3Mԫmr[n0b!08}" ͊y$U4=x=4Io|䱩>ůT6~<6e 60['=Wy $L!&xʾb$a)ɩGUZ{WVRV:p&Xuei}}(V^56Cv/$sqR9paX+uÎx6 xY`OzUNu(<Gv\ѧ߶7}7|cǣU)zK:U_12kL:#'Gw<A q0}tx"m[~K(!_uё(jB;RضA#F< E4Y`z1hX`cYFksi$V!\b26Tv&h26*Ƅړ-w-*Lm29`e5}ՃkeLV AFEX y^ %̶~ոtqq i*=yYV u ksڦh !<&1֋@l8,ßk`2j'h~AvE6y;G.|)oϊN5X Txo&<\k'F[\G6#~d—<  {Y\8~P0iuP8*^,&^ $@Ug3Ė/! o |'ԈH3>(Yq~=ao)I{O040yM2+kIͲ#mB"G,nX4+u;c9q?d~ϸ+CT7Kjl%51}mg0͖Pk6Ka+dnB^=#k3T@̏o{$?~cQy?ƐQȧ)G98`@RsH%pskE^"[͠Q)taWYDΰDjz<_9t),!W"n< ú\ԍ|ڲQe`N6~Mk^ؙ]M{ )![&ODXj(M+zص_;F9 ^ 8hWD$;NJd>i,&+ hIu=ϞcQ B|ñ.V)dn^m-IEB&#}u;s(Ό:'Cγ׫9ya2G֯ CKNg7+3q'ߡmf>q|y/X$WZO{%N RfHow1u[J/C-d]Z{+%-|t8џXnmz];Ҍ5%H0*"bbj6 .o~ xjV9kIܶ-Zt}{ͲWD7~H܀$=.3w`k >=^]cqY{)ސ&;6_CT(s9 OU^q v9$NO0 }D]໙GrPnQ%T2MyCcj8`Y4QeNÐb6ЋN볧GC'z#-. ֊WvpA=%#*i^E wqTsT7㪲& 7>^Y;3hbdUJ&W9ֵ kn~YKŶhiBex]?EzIՎ9eSlFP\7 ɕS#NŌ_!o_u{^<:KUb8e7[즊UIՍ1,"*kT, KWU K;BZcS)]_zfw41˯x [Ɨ0cxy4Gr> G{lRs}&@+it30;|+] [[-xz^чMɮq:BUw&){„ZU݌~3&Rۣ65h^=z^S1YWfCo~< R,ÁP3Zyf @BoK8R7.t/8cpn_)}"͸.oO>tݎrGwxm1Sf1m|p|)|I( Iv ׋Ft,,'X&,-se||9B n߷Dob( {гPzr{f@ VO*Ϳ|+{r6ΐokSjPJEZO'jہs||G(KZی{* (+rDvN~,1c;>{],l1_Dè+\]Ԕ Ǐ\\ivZbubo ֻ?ȓdSwP GcÕY^J?bt?-d Ӹ|B,5O_Do ){2Lh\Bd((kbG҇CB ]]N0)Ѐ%2}Ba?~ Wmdv{["x4Ԕj?$57xԉlG i9rc7]5~KD~[%t&U(g|^j˜ ]?[tt)\b8XEN;B\tMTLHdoM૴@ln*15RnI4;#k@frb% P˥БxJ9Fi<xaeK#U^$_厠((;&>aFڮk,媵wO UO Q1-v?^@2]ŨF M6EO*3̂d hem@hf=XͰF/dK_v)P?³ORaFVt+pX%/w$'nZlnȶJm_^a#Hj{%ez&7j5(3e u\A˺:%^w1FR?UtXjO>E $u/ F\ô?̌VXDɭxlyhrRhѤR"5`svqE&OЯJ DP#dۭ_*P=h&I@-v<_rjг-_i{cG.g5mqRN1 7qXꡎT߲#No}rm$vNo`5t̏\ES]Oe݀_zz|׀hߕ#Q cB}uܦiNSIi){z򆢺e 0ASeRrT9 ;!:|>h40vp0íUccq @ f~r(BE%nSU%BpY'E6[x!>u[)ad Cfݹxe1j!]ΒÑ!lpƁqYN7[R./דWbl}xW#ZB gپY7'rm5nf&.uU@%P@w449\7軗A'/1k0zO܅ߜCF\fʯj?tccOm .*9=6B,451eI﫨żH2u ['9Q@Y OY7*N#35JS@Ǭ Q{tP31c&9&/'\%Z%R&kȵ]L$$e9EI>R- 0foI[' ,.NRaߍZe4{p߀vb6[x\i?|hm*jC#LVd#&B)+@7CN$͠N$ε\tm(IfgO.,բq7!*xq'5Dˣ06&!Nw Pf-ҔQ.wIhѼ*0g`'Y!+Ɣ T:e4Qoon:,hF|vcD*6!`n>2`1y9e*I4W+0{ExҤv9SW1m.\X5 3li 5 a{񺟎\ZE:Yl$Dq3Q0q_b@[T6bs VА?hO_~V"礗hy;o\#aI)+r/ڙ 93v*k njKJL[{DEw9 lu+_ %4ug@q JT|wT;LTSG.uϣcH\"gٕ 27{/3-5)Q&luK (t5oa06N "v^UKͥsiaryVk:0v7FCkga @$`\SeYd>}Ǟ'1 ƹX+@FxUS1MVwf~Lv Qnyɯנ/%7VO}v>(pkP~UFwHߛYL}DҦ?ա( B=O' [ns\ BTM<84)5PhZ b`D0Ը(vBR,PK# \w=os;XqxHv@ÈцnI~04s@)S}3^8COcPtL`23ݪ78)vENŽ͟d{ &R迕,NhkՎݜl\4ujetvo*KJi=\KHrkKps:Px1=-|PvTp4Ƹau1\IHVhWUbUӊ$Or/YgM/Fc &\}'o+C$?w[R1;zDhMNzSoL fŇkM_x`8FM `-7ژZn|7 ƾU+ɬgm3'Ö^,ںLӐބKxߺI\s9%m yem{jaW?f+7y3D+g8yR{iuc!ހp.D3L! _Td=E}XD-xCJ-!F õr$=?Vn9j(ٟl6Yҵ1Xesj 9`S糶E-k%Q7SH-NR!%KK%sN2}gd&[m_sѭ"XH̺L#gF#I,!53Сh;.@dŁU=$V"tECrԟT]>mD LJ 6F<]o<DK!UXo"#s;Ddʮ[ˇ st# 3JDC&s"$z> lZn9DI-<>^eN\j,݄<3Qж|x:]8_g^R2tT@/@qP(>C\S zMb6]Og^I&:πHY(-E 4}?{Ȥ7Q]oULiJ P r'~\Uz 8o:Q 6$nn xT2S:X$z?Dvy ]ל\Me*0v4_0R -wN<譼npɎO;\xI8"+93S"g84aD}z83FH|ϐ_&x-5?[\ $_WtϧT3R68?8u;@Jnϴ~ ^5j 0 HFĖFm)2814qVU1mGrt$1GVjqy$лhWQSz>huxpTz 2u3h7.XF;9#CÓ^$8ݲ_(JkbQ~tE49&i()@(UdSJS$R |ɩc9[ QqR4{n?HfP#Mn!=H(Up; l)|&dcafzb%f8$CTo/)]֖Lgs:ka$"< ?@C8j3k lɨȑ"BjͭIlO%90#= Hkl Mld Sk/,#g-P sc:G[u {'mL2=!3O#}qF9]FgOjL3q"*t@DF7=kp0߰mFNrVEeYQZ;&)r2I0F0h@C\soW4?^ SH* '(H%R ew2$@|_AN1}lߓ]c\G䲶W՚sqξ sNGЧTF1֐$(+3N=IjD!;\ }b">j"5Z Xt|+h`(#R*ޗ!ÑnJ̃;]gHJj G O໰6QMz5 vc7ؾ鼇]o3/cAgrZo#H]8eC@*b`ˬğ).VI7ClI^= U3&6ci"L t3eAet lF{wΓZS6l|>~F/"b6-wL+s*^T7ׄTqSy߾hhϡtN)$@N/ы|jp%S@L䝹n,#WMB L8v K?B#GrD8\y.2NvҫxڪoPH^LQ) Ddc8Wٚpf?2J^@o%'M80V snt5}L8YmӅgk(6$=GlP{MO nHA˶OU c2chLZbQLA8dvYØ͕kVʵ 8'ƌyꇹUIİ;]1|iW[ 1(.pfyᇓzʈYmi \' R;fpҶCͳnpBeA.+^xm?m3՟6.60/Ym;}.圃pɭ0_Bw*hNԩ6ۑ7K"ji\sZ,tkɃ@YLs֢&`VIm0QP"ǂsWxجUio3;볙2cʍ[| XBDhBn6:u< A|=S䅙,54sVIq5IwٺmJ?PcQg3e8܎(kj4$֕_m_߶?jd::&x#X/*]gjaXrg:' `ůdͬ%I.P {RC^c42 M1WkU? ʴ͓cm%pjQIY_3+YNrT}wgb˔}M~+y45 v0ıs%l|Wyӓf/9Qg[4E>TR^ ;H C-G"h]a UuXUDgf+}:X 5m+8ּQ* 38~;ZF8u}m.uXQn)P z؆ 6Ҟy򢷭 \Ut kgEj/Su4B0L=άkɝ up6"_-gͦL-MN+軗gnH@f% #Ύao*lZ2 | jy;:88;ƍOPȵZRa? $_,238L~phێ4n.\))xߨŧ; G!u~#tv x8I@u387dbQX۾Kk3a|H%L&[rɳ3<;AS5\3-uE$obdӚY(.K{]+]*ZבT4܇ތx D^$`VS@ցY:"~oꝬKn~ Z+Fpк$$xL=Ci@J˧Dr-Y1-uQ(oT(ofI 4#aLu/:pS\0h K+G22KD/b "ciKǍɨ`Zu5c,VflX8x<!׬zg\?]X ʑ\-냡?W~!/' kO7RoJEiD^CcT %TKAoK+0xxZP6k8#3j7$ ^V쵽km ؎)-+ﺿM.m-ӯ`S& 16$zn7 yȖ1Z򦶧%`, c6sO"}; ]j|1xv+,_NQvΩF pE;S`"E#0@_m@4ZU43 ܎P⩎ _2^G2E0sPH$ ` 8)(JPg[ZEf8RӍv-BTNFUl^գnOlY4m,#n }CEe;?y&a)h8 fp]G-9 v}%ׇ߯ҵCk.ӸA&/Ě%mǓsjQzYq@KJz'*8vS@i[x"\_3;bX>,nY%loͪkL@c/^w׫u ҢN&Nf'!"C FːL0w$.X`r18 mՔCĭCp W|(Ӷɟ(MG% W Ӯ=zu4ΦbzUo]=3wD]pڭ չo)( m<ͮQz!p؍ xP&Ϩ8华,=GK]~H0%<`Hgďr~r.DT bP( =yA'U8By2P n~85k7BP.TB!4KbzCƢc0 f->忔L3fՈZM#6IJ!>x(2x[I􈜪YVqr%*֠U>7TVm<{ u(|vPo_Yc5ء*w`#!VEl~oe˛+P8ğ`axa@0ǥV/JqE}aw8viRl&,cpƄ,9quϏl_+F%*> -o7Zp' .TQm5=Ȓ.r~!7d "љBQP͆ 5)/'N3''c00ۍɮ/ uo2u?Wu1 C_G0F&HEb$B]k_ ti$,(I]< 4fF:DWB` m0I&P(>etp7e gyj\4Z՟{.'W+Q95Q20 P+W;9E]Ccѯ)cӞu.*FW[b0,Nly /\뾓lt S a7#EdZCJ܉q)k7bp+6C29Pԟg \ K;S [[G1CR_3lwB:S͍ Btluᒈa/h@sϵlc T9KjV*U:dڮ9kF~6"N7/[P|+*KGRVbHt]eT|z]BUa {f0j&bȶ(6&Iậ1걘,6 RP( dxj9koF_T!g m}}_!|^\YLP[92=Go75w7 iL ILvZ8dhށ&Ti[0su׆iSkx`3rX r|GB>X6b}c-99,=Gݫ3y=QYFPrN% /G,@6|= 0NoM>&ɣ EaqV&X}bi@EC#ɂP."`}]4 Oy_~d?@*<71@*;Lf5'Rl:yIo6N Ş:F{(YtVm\ ~p$Kkϳ/Uv/Yt l~#IM[MlF}8U[Fc菷 +'^IJA;TNn2g]] zG_c ]_^ٴGbv L@xUY~QuDYZ/X4M'f;Qzx$ ͲeTj|4̊cV}#SA׻>r? *&4wT}ϳWr[, =o) SГQ'u" &c:g:2t)N ri8{sӂ#h&;,y-UA, wa_:A FGJ,v7xf^mqFxԥ!rH1Ӟ /Rzzm]7)m[qw`5ˬO30R0dC:i$%: s񂵆mPԿ/JoLWHqEFS.!>BMCC>[P՝:4Id_#H ~5N&΋DEl^ u]+bi Y^0 :ԝҝJQoJ)B@=(+JըhzuZc4XnDxh<>38+\M@&Y+~ӳٰ WDiGƀ ǸSB2ʡnRjH/k^y/h1 >K93EUBbz_y Fo >{UPF:g!ea5KhDfmXѷ߲/3l#d\B,U7O)`QD/ZK!eۙ13L?̸ X__E_BكL-,'4j:j}cW|}vKSJڴ"*A^i2 랊{3r::JVA9:.6Ĕq(kۨgm.|& `H)CK6}!l_a˩l\Af U{FDoo;"x¶a) SH nUa "E3T12,%uw 6 |C']L=Zk ':yHOfOL!&=]{yv&@뎙&-9X>-N0'Y1nhdxgWMK*}@6~q$XcbJCSx( bv;ӨWTI0~ I;Қj_c03w!Zr yccDyd'tGJ"3'\%L+j DGyb]zhXf" l4) Y?BʐSO`tcg\LλM'־Zw5 BnQ_T@2~(IUDY]8YNw0hY ]oJWpwy~淟xңXwsBJ@R((d'JqΩJdOc;Li[N<_Ii iV$8ς")iW:8R[Fotᙟ,›BIJh18<ʬNV̒R‰EqXs#1=iR ǃ>"snighv^+9Ǒ)(z6Qdh[z D 3!KIim{096OeV,57pl|P!fJ[ܱ֒RXMhYNl$ׅޥzr:=GؕLªEtG\;^*wA<|XHO=聈SA:6v\O'fF\9j~,*lm,’<\@fln+HH8.6C~\zOPWe4oHMl:\n 5b K'D[wQhCP:x=<.Gy$ZRrqy#pZ(?Ƭ#"x`%3<fo$4F#ɩإe+zUP6d0;RVwy|yIi; մ(, dT_4V"&gq8ڦb&kOaCΐ9*j+cU' >5azi ֪~?.()*5;6XWjlz )&9F>׸?W_)ƱG RLˌʝz/r * K{w$KqqӓLH*ܲ>&ؐl="qC nŬ ՟m4zz#fE]"&n/]g6m>iQ$7GȎMEXˀyۭ(orYҚa6,-zS#FDBϯe\Wc0ϕ&( 7R>ЖH`Y^~B`kvO D1wG{#/:8IeЊfFaؚhֈ~9cK7FOK{>g)S3? ;1ٶnnp^q< ՌHzVyֶ jm0CCOuUX (anKIr碻ghw稂,`Q$$ آ]<K}ɶȊ>6F@rø&aKf@:X0:i0 8sCH84.UOmطv: "\6"E; ]ΒRpy *84CXuzW#-N'4TZ%?!4<0>EZm 2|cN.3 (ΨjFQTLgVHC1ңHJ$5'uIhU:_Es]P OC*em~N+hAi8 rnn(L/rJ`&U7 2;?K1$uS,2VX_P/XetX: $SqRGQϸFoe]2m!k#5!͡T8`# !hR{7\1&fh9)X[/(LNF,e9$zL1KG?఼dl?UH5EHxqCefa80UqrU}aC0ܹÄXvbj[se/5w(>1t(sZ!V.E|/0ovr&adW]Kպ2pf]"(DӦpҜÌֺh&"p4: CE;kΒS 'd:EfuJxq>AJ-0(+VQ>9aNRtP+i1(BBo/YߒY';`?Q5>tƱ>[m,NHA6RFHJy9arǏ2kYPG÷o84ςr;9l}Z 8RiR5]̰waMF0@IߊT$b &]G{4ik0^?eHjM 0LAQ[,\  `z&JjPCbժN 2>vs%N?*AKMX%{ Kz |liQER[c9. 'z!x^d9CÀ FB@fPUlj釚82 ʷvюaD PX&pCѓwo>ՍkLL$B罽)H'{1yzj.ˌZH;(kP ya(YEIVϱH{|*CL O,)DH%ȄdT?ՏeaP`(7Ӣ.X"go(r-WB2!NX:nNa<~9:ָnӃy;vVNFP<L7M;&,KÂʓ۩=1UW !9( WZ&b5;/k̯> nlGYm/A:D?DR>Y>hC%h#'/)OBS,șLwnхpV_=g%ʇ*=]Rv`rչ>ͼ#5I_e\XHJp(="F2ܲ|H<ڕ*=UB'(lv ,=M419P<\Ѣgt~#^$~Λr R66?e.æ\X[B-z54 :[_8_}_T22n-eGuf(eERHQP݉9 P@VƷto%Aʌq"ʖ#>1v1LZCTݙTѥ6hKg'2xBTF^6f_^^x6a#DD΀4fA2nIŠ<\DŽ3- -gl/Xu7ӝ\(eVwacꛌsΰ ] Eh뢱 aN+-Ҩ1m1.->`nYfi(}H7NIaH(DLv쵣ewvYۙh2qdJR1+,Y 訦m %L2/M3Cmfkhܛ]+U܁ZEFaKV`?ā+1M E=)˅U W,,[W%2:Fi)zᆧ|F R0RX6vqFr-R"Rnɠn* 0C2eF <POtjaĶ'燸gHhBT_|ٗX T7Q#{oэ7.{|hʩhuOe^V<$erKOC .rMP-@G~ݭܯ5ū {$^ U}!$}q -WJND8{lɅN5>8xD fzO-5"+0lZ^O8K:zF hlzBr7u1`\kJkD(uhEё̗^G{P9f=hS#N3jiMYܦ|DrANx.U}H<\r&ck6i8X?V7= (ItFk~}E ,k9wwt%x,͔o`{h' XJy=(OWrR:[#WS=twWM&g%wClog;&dO[7*I.wKo}:s{]AիY:h|'RW\-ϸV31 Wd}7Z@+N^ ]}R+/<"w.hͩK5</uD>Ne ?FKqV;bM$? cVOrp$qo@U 7J,F6%8ϋ%ag "T1cF[!/rc#SyYƳu)i܉+dZwM Vٴ+zQ,ٛdPcC۪n;vǚH\6/$1+O5yCz+M%VCw [RQ lE HJY.m/qKLh'=04STqY=kcIV?9(%͚<&Vc' 72ӥ %^qX~p=?QVJgY,)Ule)ςyAqcXFrz -K=Y¹;?5T`ھ/9BH u .2ꓡo7A b|l+B8vMM=-u{Lg8Yݗ/)Sr%flUɈb"D+q?(0jλ/Ja<ݓyz5nj4 hFEߛ fLue*ѷJdmrD_&KSFsNmRTCO:^ޞ <9UXhPA~#^Mt`mM-Bc~G".[FJj11Hڂ鸥=.}5\V֣s`e?N Pb<0FB'5>C: Mndi͏w6Nv? M.&xdhׁҨ/WkKN"L"y1^ǽۺ =@`x!H0Է+G1Ь)% w bn8Z6jks]lB眥f@1٭ .|jZJfķca^I'tX4C"F ۜi hʲJD*]i nl3 ?QX{5fdcc/xp5k̥&k7dы5]lf 7lwZFGFu]f53I3(P[6v~i)l!S_+b#5I;C90MnMLF ?? 5: ~WGt~ XM貜4>Jxdǖi1 ţy7x\zP+I$ՊȋI=֋znYMz荔3"A[ s4]MeO IRRPW/ a$KT fWx<tڵ:{/d%D~@(녣a0!G9gJm*!d߶MͶSWsiu:C҉8Hٸ&}j ˛Ψh~ESjcy0Tzz5dףGqh9΃j6\7>O)Oy8jF:5h ߍQ`X?,:-ݒ[P.@yO$ΐ1!Na#;{/emFlw1XωL_3\ylOP=v^F6Z!Q_ 2DPlЖ?ơÜ[Y-u8kP'K[/! ,r!np!p;t P7R<[ĉtěe/E$ǬAѽ m wW"s_ 3SjQWqO_4R*U%b#8,Ѻ2pak'D[99.Kg.{9 ou {БID6r.\pG L0 Oއs7 ,! l4d))c &@#,m }drw<6>Cjd|.4$+aXUny~\O|ҍf;A8.]lET(m%HV"VDj&Wdu~ N28,0yX*rQijǏu iLF?8*j6."JS1.'Mı0(fVy3p^ XMaWrM4smg'4k"틸aQz@T'H 7h7- Om߱xZUPsLJ-7Ǘk͞6>2b#=pUϼ%#C)x+S$ f2)pecl|OYU$w3@+5lVd|*oz!D"XT )o+߄Ř,X_6[jO~gO^GKKX |'IDQُvLMxΈ嫫9%U$=npkx~nl,vTsMmS];XDedH|R¦a=֭4#"@9J[o:6^c囜V#:h$a-F+\k8$hUQD' N𘵡Nנ\qJ{r. y(} ET8ߒw?B_t=8^SHn1X3d{3Y-MIH.@,;1j8#:rcLRY!/Dɧ#'<(QvSnEHSɤS]O 7 si=KM]2|3D!if.G~(!X$7pQE QDѬV=aӊDb͌&] s4!myaZ#]+7zBbɾ*Oj<as@E?OLc΁ Zx4c<̧CN)P:#w#7Ϟwl0D4YJ mo,Qxh< 7qXyÞ'#샿9r In5Frtc" KיAqb4qqBZ!L?MZa؎ 8G 4SU ECAuo"u.Ɛ Z% ѮxO-صFEGޚwy/2s{:~Ay9c$$I@sX[ҿ)?8\[{7)\srOjiu^7o5rLbS#mڅpZz%h$}} 8?IFF0/ֲ<I/Oqܦr{e"!0BLxy&8[{UUې=Ti`][,${e װ&2zݴ;3D > PEyl_vQ=0RvTtJtoa2:JbD:jmb_Nդ+?0wCEfr ,eYIՃcJ^x.w+X+A;ɗ1%uȦ<ԡqßSȔ Ji42yzꓰ$& X #MDe پX`v]*[#]]t<-}T3KDEpb3\2[e[7ɹaͣgfeԩ֪AHb^iLzHF|6/c$Dbw0 bgK  촒6C`KmZ.P^_YKlπh *܇n!zǵcb|~ahewԾϦ2W{ J:NK׽ 4dNj\F/wd^;HD S6ga$_6-s_mͭ ~'&.{y6D!ek(Ouƻi ?:yVtNP1S| 8r愧mϔOha;z"YήHHI -}Tc!{8aWE;HXSfwT.4~r FZ߹TzmKkU)Oxz WF <֒0;;vZhX~r?WdOXd)߂Zʵ bi ?!$PtLk* &ڽP.A꾰MTz :0L^sI}:v.#_:l/|5赌ZOhd_`9W.d ޒE9UB ]oS_Vb@zpxO -[y2IA(LPeSV|e'U{t\"ov2ƧDzu{΁C̀ca)^Y&-7c$۠7ҬEQg%1BtӃ< "Pu>r6xDïYXi|QwY5שhԺ SX7:ebdTMAk#H;񒑷l9D~ǭCiP){-}<]yE*OXjjVN!$w,#qLqg{$01`v`ryH9 GEeMW>j00&cm/4d ];\z>{cXTz40ՁO cPH}V4cRDOښ=ǣecs=Uyh+6Ёg?]I?dymm@67]f.$yw9 `D*;"4ѳL8 !J,9O#XOF_fu%$!c!Ű1) ] "Rz7sD(!6Rj(>%S(‡+mLi[ ,zZ꧟m*GFdzPC8Ōt#:?W}0!} f]Q=^ >dɀμgp'YCI+3)+~{=_W#{m`ҡv| S'sχD&켨~Тde1]AO/Vy_tǷ4DDF ǧ3j e9O Nm8;`ޡIl/"ax[ |[:=Pkb)ʸ@k{qQ,ZWgUP @hIz]!C^!F|qa<1i?NU+:;OI)N919:oq7*m4Pux& TϹZ ,?Mt%a9|4 [c@oSuZyd+V9?dtO0RjF]cZ}z2rUޑb:#U|(]# Cۖm#'֏V]9@?ss8f_M>l]<̚`ҚR޴D( #1|&!}ʖ>3ZMk oW(7EV(J 'TmUɲwSůRjf ~-!wM-VMDsO'đ:GoJGQ>'bGb##!(Ďn "D-4sʮ{9O&|Y#7̐Wv1CX`2:-d>?ӌƍ0_[*Pa ǗaDI;Otq1?&ԿeTh-;S3-3C2HCOG#v҈ k_"waƻDd+CQO5ɘRkk 5 @MiUfZ?b.(>gO !͐jf0Vy6'aJ̱{2@r/ nk;Wrߜj? bWǠg`Kk8(V}'.XlQ^Zդe^6*nlu['mrtwRizp3IQzw;gu{#K cąȚĥ@X۩)Ǟ)J<*LzЮ{s) &Ş0~i6`Lno 0x}LBjl0R2cxp\ryUKf3:3Ψ \.ت.',m$[z$:k l_勍O?زZO6ks^ bE8YK D z~7/C |f?$CÿWa]9>4:uz`Fu1G$JtWl0֛ "[n(6`S 4RզvyƷò;-gd$R57ES<9S72gA6nP,5h9Gum#õ;n6H2h=PDUh@ɽz$QyS431+}1Y(d _d^ȧG(,wwOnKf8vp" Ad_y/pXpxnI=SAb1R)|+d>E`Rj)5 Dɿ쫷@[;N=)dic{CFH" uqd+6cɮg48U䵱z >- $/QYH^0D:c7Y2@T%<' COY8®,-Z4֠6;E&Dbb~$ѳKUw\aH@iZfdqSz]&EaSR5j _<JT]&R KoFfԹ"u`jq0?;Kd'`+UBqQxb4FќsNшXb3NgB:JiEAKUU9!FRGC̞f*k;qUww3~7*>5ڟ$u ?f+90Stz+ОJgǍ6Ye a vrbhօ_CFòM`Bp侅0 zÅDM]L KFY.x | +OlsrgiC"JvnNc,$x1dTBD7 1J8/~+Q*n:տ3 BJj5@\*Ԯ$2^_fm2C؄D?.!9G4W1zբSJ\'.5ŲSe1^[dƆ8Ԕ/A8YJt\h%炰\]4WkYtGKHEIG|w7`sL@R_BDH ntCGHu|άQ7 U&Dߗk_JBrm6?|8!b@Sҩљ.?Oĥpڧ }{O #Gwj)%c@H+ao};5)J\Zvyt;i( gb7 f=jEZ EiIz8&W5㮧$/W ?äNǙ=/1GmhKcq=fp#[& V:3 s[Wm ^M*.6ϵ(bKG]h)&ATR(`z3&b#I1$|P"HG[r0Tu|J)w7*خJ~MO«ZEvXh]R* Қ<V]!- Ozmf]Y|g:kh_$Ql!k[BTJafY4@]3z9dV1^C!L&xӺS7PaҮe$ kb-rܞ(_)vF\@)缪~}Rh7:hf9Ni@1WK(P$@Mś6C? -#;S7s Rt <3>X$+.[*tJWyY}6אhUm&Vpsټ-X H?HlY7f!eԀ[dMJcckb9_Yٹ/#qJo9SE ̣]85YmH ߩ=h FU KY9lԷ0:ҩ4H͙!E!8kGo).r P[heeu:/Iֱ .f/hq0iG[?+Y=gz.? E,#SWơKT>I.,n|0m݁lcMVoՅw`sZa* nz~%@>;n 92»YmdaXnD qKV (3, I8`w?܀d/T'fg3^W)إ4b9bl(bD)eb0kA(=uOr`ZP[m*8N[6wOw/Աk|7 OCVKV9Ir(ŷR u)j  c$xR}YwºZp0su`D&*/l&*nW얠!MF6"+txEגhp$NէŌ&r?|wݖdxZ$6|YNB4ӽ11(97'vӱڠi` oy#[_+3x ! "-ݙ.y{@ P`E)ri ^)).ppx5FqTL]+GI-0I+l7e4'F?Ѵy^0䄣 O؜G)rQ:.g K0 Nb[~5 5ϜWN67%H[H)QF̅e3]4{x}|;6z6+@X{:OODu*k\<޻D(u4d$$\m)aW *lM1x&,@!Ȣ6/l.^S.J~{?!Z ~,!^UIίK|N`΍`NTyC ;뽨? I܂ۉ PhV8!]bu7뽗 1;n%Uy jbDׇw7rߞ- n|#3:H$e(ML˟Va >\+P-&1Rzwf Jט*V8KgF+/ [B.G\e h+Ǿ0ӈ]`k(5aS`v!]_SdU©_?` -adޡq3o:ni6@-qʐTf5#u2T[6t]~:|́Ә2|@G`?:ӮB7׷`+V0~պdZB@A־ꅥ NX+c(S<+>]Ky2!amm.]^5q C ߀Ƒ]Yyn&& <!XJZN~J.>̳\,c  WAQm.B:+ysU%rsD ,}^~l{@`Qsj.TM.(|K@Je!*D<_]xdRZ6d^f Z盤I LJ~iH3TUrsԷlUT ŔkhɀqDm1RE9aߐؓ %P!}g`8R|ZB:%5qn:ELُ?H 7%RUUF oulzd=aF$@" ,qRznh[@{NLQ& 6QҴ)iۄ i(\y{ ^:PT;Uvm433>HT͡fF{Y|+^I& \1!m]uc~|kAa$А8Ӵ9Xy^z-@]Mt,4Vv'DeA~',*kUzsN"a՚KZ'3^/.)i xQXc_}TVe( 4 X'nzMf X%%-#lr'*ǭjXKurX2W"v+PJ,]O ̎FV8`jLXeNp Pu<"9i-- GIK#"u]}"_\$\vE(8a1}kR;/8+=°A~DF U[̐\EE&ڰV0lWK5eU'@ rkg"o{vU5'ՔH)$#'|x,̜)y5#k. 6gkS ӌeK7?hi+{&/Ra9,R#9s!7ꯡL67~3&p'ySPqÉ4wVoU6>@. V8C*9%a`/d03`(eE}[w6#b8q BLL3`iFz0cI0L;~=>mgBlJ(h;r=tJmnGjU+"$BWfΈޘ5R8!\g7{BuǼCt˷( ^嗏S&cRDVA8Zq`ߚbm}/ aK?=<3Y/W<$@)9G"aK喜@Kx9ݹFE$ax;0!Q[9L}J(K6Z@8%˺0VU;yUZ{׶p4"+Zae).-y̐e>CW\o_@0ϯ8$կ*iK Ϯ-4^wxf-1k|AQ#gy~6xb5T m_H~C!8ch5{ '}Hh_RQ☖9q<WL֢')K32ܩ#19]2,sfF gW4moUпuՒډQcL%b ;M5>W6S(y%J}af?@񔍟7y쵻*ѓt',޾s\Pn 켞Jx 4KQh8TߧHk>?7FGlF,s"Q@E.7 IB?w 3l\D21y(swJ݋1q4_eݞ ILE67gK7mDtA>(ՀdI9ιW# x[/$4RN3m&[d" Qt?<xxHCʔܛ=atntҏU]vtZOmt+VOpn@~ٚ-O@'pWGYj5|b~>_6kH:P-d bcZ? eZ8n}Q&Uw|6"8v3vsgݰ- CM:`NÙMA.e ^r0jnЯ1-ckYg ﷈X ,eǥ~/aڗ.@E4}q+Y`U5)jM!j:evu.YlX %"žtLYX!I ~nLY`>Irw~J,[+U uϏԴNՠ+H#wCG,v$[ +9Op K&sۄL-`VQ@ydpHQa 0 cĽ}W*(TmܡدՌ ؕjt_DИq[}]kX'DD'/IO%:\ Uy>۱d1{V[ciaҨo5V&u'\c_N'KKSHOY7fu3@>9WNSP+M,|Ge5T^D丕S:2s4ljf=rT;9R#6a'"1$$׺ @4 &qrLVķdRZSRy?Dǩ2\G]ԇ|=KsVӻF K7J͚)|߿9@[;'#JDF5*zVp`M)[*JJ/wh?܍Л`A(%ydI8g˕3rxTщHNj;sr VDV'l8U;\z<-]5p@0IA)qG12~GWBQqUU(+ٟ9-EY1no=+`OQ_=> ۫ :ŰޠP4 оЋOdRX(Җd-&[8 :R!s|NQz ɢj}(lKwc~EY1>mF sw-M 82m_NB[?~-~"W8d#rpoJ+<)|u!(y ҁhb ?z ʯLÌȑ n0JPNWK~h(\c˔ CR<AAu2H]\v &P[Sģ pxfr϶u4HϙU GxDhƼHD+6xŝ(B%,65N vS?KlKtхOIj`<}KF1jijU#u BT QeY>l(﹙#Cfv˰2OvT˧(hyP K,<כ=ru hZtwdN2;R{}|Sڮ6,ԮlAЍ@2Nl3\KBɲ~j+3:[Pw@Dzҫ9 j-0 Vl#R̚aoD 2l3?D=CTDi턼ZڒjkN$<.*qm}-[nSeѱcaWӷ-lvC,Lͣ!-R~CS&^V8.<ޒec+lr8yY;꯴(rsR? ʇ>\"*G 3:)/+ hAKqMל3fîoayKLs{_CE"3 ]E6'}wT8x% ZMm?h"\*դ 5TKypD}ܹ!fcfp,d=!=7ZCqX-5Qȗ)UAUs MDIViy^|;mOR0ҌzoE'[U{~Ƭ1DX'yq} zeߟp<<$yqWpepN "!'Re޸}=^C̣/l\%) I,#K0IzH^ରB>o@-*֥6f& ~@rhn{'g1ߑ$eu1_ls$\Ck#a8~Ji&SbP6wLa\2iЌ9_)KwGVrR#АYppC`)}0S >:B[w%곹F?zY},p'^+FRvXҙT !mo^]ic vL!oyEqjG|4-0br?fSܺ(-f9 f@.WB%oPe'iIݮ66),el!Wt{Cʚ#ϰ,[=.IcGiiCC2pB.{yIJ@)׷>[h X!yq.yKe6bSڶ/2UTޖTNeiTB3Ӂbeǝg8dB"n3h۵/OY'@N2c7$0+ŜL-a3VCI<&AfYi r{Nep*g*`g`?teR[9.7[GpកAO|.C "Nr,rok֙; ~yca(SIczuنZ "+Ct3(e:x_6D"3k2Ƣnq+B>X p;tO6:y˧+Q4ӏ90ϙU;`" },S O+M:Pi*ȟ^\ئXkXzf'ѷ3K)]0ZT^iw n:ђ) m8ysoM/+a(7\,_ZEus<,5U0Sʞx,&NfgR`Ymؐ-g;=́yn;`; p|_盞kDĤ4j]l6@PK ܃S~Wo,z+cwwmʮ|Kfopx,x@}ba;d)ߘOXLo;<*K&v^doefhfr(rbx=*C^x,Hc (# whlY|qwbڨH]2[3V΅C0lM Ni1pnʄ7j4D:b5.|غ9GIx}ooiAJ+ksj!ۋ )AƱdn51Tٶ)t M~31R%o .k{_: O4%2~Ee0֢b'w=$j]ɯCOjdz)R@ˊ>^|?R]TYX+I"1 LR{<""͋gTb':0-t'*`>r9q;Hwe g2Vx<)6KƮYzSIWN756B.9{>phl]&x%󔅢x? I}DmÅ5.*0&;UlignC6NBtcr'ҽIN?r$8&/.jS}?iO7)ؘBT zm<< Gz߬\2.MB+*8VSf&-miJ%x7Ms/۷=]^0gVdBf+k=qKXc;z%jf؍a;jP{ؕ̕쫺U0oaeu|%8JQT 3nvT9|ӕ;[u0q-@)BO1zqCٱ&'BN}'lbESus'oꓜa$b_do  /xD(V{"ul8izPn QC}G϶Ã7iXM8nsm7# Y`Dyۡ\ JrkŖzɻҿ