vala-0.54.8-150400.3.3.1<>,ĉch)p9|At[L#E{ޓrf =rڵiZ `nP(Q@NAs, ɴ =fi)VE8@\w0=m) ʑ+˷ҙXƷoD( mڹ5X0=\& ۂzƣ۬8 bؽφ8>z2ӉpN[AB0>! "C9 >E<?,d  :  2Nsy)H H  H H 8H bH dHiHp`HvvH| |p|~(~8~9:'>dY@daBdiFdtGdHHiHInHXpYp,Zpl[pp\pxH]uH^bcd eflu,HvLwHx$HyD"z(Cvala0.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.ch)xinomavroSUSE Linux Enterprise 15SUSE LLC LGPL-2.1-or-laterhttps://www.suse.com/Development/Languages/Otherhttps://wiki.gnome.org/Projects/Valalinuxppc64leupdate-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 % hX.7 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큤ch%ch%ch%ch%ch%ch%ch%ch%ch chch chch ch$ch ch$chch ch!ch$ch$ch chch%b!!b6X__b6Mab!!ch%Sߢchch$chch$chch$chchch chchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchchch54e0478949b68233d78b0e5421feb2956d2c9859709327e49dcd5c16393bd2df8d46d314cc6c9070a1fd9703e13df75aaddab2414464b44f378d09226a7411967e17de2357832eb142c0ab52e612f7b571f42e5efab007a298e2db8e42c48fc604f7e9a436faff765f04fc595f7073dd66348bd38da0bd5353b15ed7fce861b33e1152451748b397f136838c44bb233275bef1da3b5a2fffbd84f94e86772668c30866c8f4e8ea1d0a0ea39de882921a97d1826526c6eeb38ee5c1871d59b2a89e528c2b4a897d2f46a69137d6b68908a4adeadb46ed44cef279c900f5887ad9d4fa595e0c639077d2e1bbdce9224c04cf56b9f705ac4cf9a8fa6f871942a8f6fdd2b1a69524bb7c5379cfa139278a9eb4ccc4a77a4342f6a1becee33338a3955af0e237f94beb8ab7a50829b6dd61538493bd24b31e5f1983ad2ae2b0055505fb8284b6057300466698dba88f4e80ed191654f5ed3df3e40b78908deb1c11e468f0c9813ed63bd6ae41fd98f8f2ea8a763ca8f20490d9df1a194ddd0faee40f3fe87e4303632f44a624340498c2931034f66a0f6b9a37f3593b0183aa7ac9e33debe734c777df09c3c762cadd0fea1bebdb857c55243d605dc5b09211895bf3174606e06322236a4bb85553222e7ee1106e9eb0d361e9f499b1f66bb21b5f555df07007198989c622f5d41de8d703e7bef3d0e79d62e24332ee739a452af62a4b6b8bcf0ee0d9eef8018cdae3d94f3350344112ee7ffb38e7a7d084c9d75720a6b38ca31332a837af658f44b117ceaab4bac4a246c644f4d6e48321b9737519661ea07eb91191da917256458919296ba9a69a9536193345f62f645ad99f6a449e94f1baa6932b6ed9757b5013fa1e5f4a365134bf7d56b5edaae377eb7cd41a5af996d6c7ba0fc309cb7d3080a5c431cf5cf24ce81500dc8484705269e28cea9e94f1baa6932b6ed9757b5013fa1e5f4a365134bf7d56b5edaae377eb7cd41a44d578a36a1a3987f8deb7a0bc482e68cef02a3de73164bf58632d97e3574e2f9e94f1baa6932b6ed9757b5013fa1e5f4a365134bf7d56b5edaae377eb7cd41af5eb1635f16ba574de434c73004beb7736c0cbfe3c689df623be5ae981f4bf599e94f1baa6932b6ed9757b5013fa1e5f4a365134bf7d56b5edaae377eb7cd41ad773a7675b295c4f1e6172ba2d2328d1226ae81fb55d618f01f52bd2c40c44559e94f1baa6932b6ed9757b5013fa1e5f4a365134bf7d56b5edaae377eb7cd41a3a0e9c3eb788e62a9268c7ad9b0dc28280774ec03681c9ad067c36567d4d6edaceb1effbcc434e5f31864d2ddab4e0b1ae49862085522b1481fc859771f466de684bef0b263f54aac48a8c07f04f1ceec33aca7898c0d48201c98e7ad39f494fe8959bdf36a303571cf7daa944ecdce9f4f398b777d390753fee34ab8b92984be8feaf51386c5c80d7f435e369cc04ff35236efe5db65a73275c12c0c6f5b15c6e875c1ed1189f3ccd3e373ea29b28113cca7862174e22ab67c1b99b14409ab0fbb82de069dd00c89c228f08c71471dbf828a52816bcc440ed14b9323f8453b58f3b22b8bd824f616618c75a02d9cea3a503e0b3dcf3a543841a1c02f144de5f37beaca43d1bc83bbd949e634e14063d2e9a6eeb2bc03c6bbc25dd19089b9e4ec9307486597e069af46b62f70e35cfbf6903d30777557f694efe409a43de2bed5f1e6ef1e45c5705e9400f405f4d0b97441848c005a690b360996455224887421d91abcca3da8bd19a6b3ed454b651cd159f569b5ee814f191618ccd225312921c7bd3887e51c3bc3825a5278d931582a10c041504e6204537b5785013af81a249ee2231fdd7f88954fa5e1908f3920e88ceb5c0f800d46b93cda4651c0e9844936b36f3ffe4c53868175a59370327b1f1e23e4a6cf584e49f72c02cd5d6fafd8af5566ff5fc63d8c1dec679149987aff89d1eda6d07920c9f07821ae77bd9ce4e20eb7fcc5e235c989c6661cadd976823e3ccaebd23f2a207acdf08eefa7935233fa1134948ee33557a25861e6e743fee101c98cb4f5698cc0acb0651c0584208e37c3bb6d910b945dd5b443331fcf4c7f75884e80d17604c54587dbd1fe9901f94ee635485015b1a115f6591cf14abfa57030edf5ae8b6bd41b5df7e94230d00ad9ce4357b8e9e20616fcc6ac6b59602b9e8def1f78fa2169892493606f48965b53428edf9e6e33a6832b3cc61624d8611aed47dae38ebedc777af6b85943315afaa385d32061125928be0ecdc96a61e803d6979d350a22bb99b347a38fe9d220a49fdfe128ec55b1c062b3992781e66009a1e83838a35730a77bb5d762b530d08c8d7a51ea1d315e0a13164255b27fd1db56599afbe9f44186d72de8ed8ca8545f9f2177ab3eba4edb1d4a98125304c61777980512818aeeda40bb0091693ff93d647ce52cada0e078d75a1b7894f5648c0276d17c3c22c2d7b922a69ea029938594c5f3e530625a02517bc6424af2e36aa3436d13568ad56c2080bc314186a765c6fe5ea1b89e09333e0105a082c078af22e5c5d1ff5a6e10309ee339658f1018bdabd3d757326e5451020a19d5dad43ce4fe344e996093e830b15440ff3bb065853b357e7f2581063529ba327dfb342fdd12fa6e5f35b31b03f1544d810f5e3d13b05ad7692bfa2b38ecdb4c6c8e9d634078b0706c10fa0136079f3bcb13efbe7039add806caf1bb7ca08dbde2215d4c24eff661f43295d871e19ca5370f592506a1d64654e25b1ee105936e83949ebaea0181031f31401148a9fd58dd302532ce2ecffd54cbbcccb778dac273743c340e71406bc09fe3a6e5690f4edd01e3f90d725c3a39bd8ed2d8b0267f9c7b71b02432f08b3154ba07924e4aeed939d60cf13badfe9f95012dc23cd51425e1004fabc97e4650aee5f026db357220eb311a52000646551380cd5766e700244694601f4ad730741c99d0b2697166ab7a556514c90af9fe1a6597b500f80844610ecde81e6860922c2882d589ef42fedceb1effbcc434e5f31864d2ddab4e0b1ae49862085522b1481fc859771f466de45a5740457ce3977e0faf7d71615b9a2e9304a7db8b7a2c720fed384ac487ef7432a7e16fdcb8f1ed38fce7d3056f522e1162116719ba45a54b0956df595ed4734ea0563814bb1f55df4b1eb417d400c826e3e88172295ad73a1cb69b880538728c34b9c76c6ef88ed6221e006f03fd80659760e6fb8f1fae43297df805767e5d15309e44aa45c57684d5d4c3137be68621b2f96e0442bc4b25a469133f27312c64d59c1f180f2392038c7a479185112d943ec8678ddff074d975ad5f45b1eb83192b53b47c88ed0ee185b0baee1485cba1093e2484948940e99dcd767a7ce0c704c020e168cb60944921a4f14b6f2ff522c6a4224bffe6903ef2d1ec7aaa923364ab582526834ef2237d488e11180c57abf405912286ef0ae41b21e9d68eeb9a0a923f6a07995849a074b8dead644248b5943c976b2156c97a827ad1d2f9f331b2d677f713f11f6f4c090e01644ffbf50d6db1330ef104482b21a91192c458e9ca41c89b7ef114b983b8b0254f29e50c01e229a8fa4d39d2e59ec014b9a1e61aee8f161111573c9c5b0c58e9443661f0f24a236c20908fcf6ddb5d2c679755b4322ee5513f98d8d5219229746b614f00e2758be43a21172c15079cd92392c63ac7e647ea5e9a7099a0c0bb5ccbf61d714a819b062b9a38268f0278f8f6c1428b6f5d97a71077ff62d1df17b1eaa91f12c21ff79b3e5fc2d542119b2b109d5afec0c92af5dce2a1fd3368609b3e64b365c249972c933a931313012f998a903eb47c0bd006d00bcaffc1ad857e015a8003e9389968163b5bcbcc02bca9079651531e590d0d50755e912435020f71c3406ae102bd674ade268bf8437d427af648cb4650a8ae1750790ac4452bda393bbc99f17b20b0dcd8a453aedc4ea3c8dd108432e190e857aa09a5bf5170e672a876d03a3f05b3b08b177f8245c3cb1c5441201887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd18887203f447af48e1ab744b6e7935c28599e99456b0f9a7336596a5209a288cf057852701887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd18887203de8109e09f9b88882f8908df6d31a9608d24fb670a7cac7ccb086a563e841b88e83facad3ea4890ad24e0b130f30809201a1225f05442acb563b62d2700fff2cc0e126bc61b28818513e7aaa990fe63d9e0bc05dc04239ce697f41f36cacad7e46b8fcca647ea504afb7e37ada35774bcd6c7e0c6117d5b02677182f1d77ab1c01887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd1888720371b4467f19135c8fe1f7db12e816ff1a972acb067524884225fa0c1b1a0822d8935f581d55784a5ea0858acdd98c19320e0cdce441fdad902055f038597c8545dd37f338af1ef71bda929a4274ce982ecaa8b92df9ec7881d6e3f17b6f2b7ff767bba1ee6b2f125167ef8db68bbfb2c4bd8f3c2e2f75cacf94075218f0b08864c119b4a604af418832691c0b6dfdeeac22bb83e747083bf356b453f9b6632d103717eb8f8daec90d9de87af85a40aa84383554c08b5fc522044316f08c13b433ceb1effbcc434e5f31864d2ddab4e0b1ae49862085522b1481fc859771f466de47d34c322d941918cfe2ff265dbcf3789b781c81c78f59c95b049c635200c70b1c43da6cde4298fb5da213b78530fdace179a8f9c6e2b44d2404c7ef757fd9cec0e126bc61b28818513e7aaa990fe63d9e0bc05dc04239ce697f41f36cacad7ea1647cdf4baf9a895a75a1b5bb8c54feacef2a1d860c5bb844320c7e5dae31c2e8959bdf36a303571cf7daa944ecdce9f4f398b777d390753fee34ab8b92984bc00bb26076fd6beb508fac7d25d6bf0fc71a0f5ce7b47db760dff4dc9e488ae174f3ec23b0f3dbb5ac699968c69cba9898cefa5f758b868aed84544cf79257b4cd7c696f19845887d4e50e5b84c43404f321092d25e6240754d387878200197c0612a7eb41d89c5f8334212677dfa774dd86c33138ebdb8b32769d7764a95760df5f1e7640ece4ddc5fe68a9ffbc1513ff65017234cf795385c098da39688a499a60596ac1abd13bee5c269f68ab6a6e42978d956c4947039eaccf3a0150f8de064aa57951542e3f0cc334bcf2b0c501efc84ed514df6672da54721373e53cd7e8959bdf36a303571cf7daa944ecdce9f4f398b777d390753fee34ab8b92984b7537c572dbb5d38c9a22bc36a1d9fe5365521de39ec02766a657cd750aea4b9ae06a33a3bc47642260106358af1f856c7a9e2ff7432c57751e90501f8f239995ed77a6a904a198db94638873b21de23212e32071b000988e553959128797a12e8cf14112a1a2bedf366db42e3c4b7692a175f09064fdb94303b50f100f4875cce8959bdf36a303571cf7daa944ecdce9f4f398b777d390753fee34ab8b92984bfd50a35765bc467f28e6b22c43ff9feab745bc4cf67b5d030a7eef3e3d6ca9a9e2bf6986cc78cf01a499f5db4abacb7577578509ed7a331d2062fbc6a6a4d7f5d3fd7c06a8e3c59a5af4a7a3434f92936d416def4b04278d4a57161c16698a52ca0029f82854f265dee64f783a2990300a5ad00a4d96e7863709482f33b104868148fd05479833b24f844434733272c4dcf63c9aa56039806f645955a66c25fabd6bb7a82aac473b169744c781a1cc3763c34372fd8b32ac65ba4250db24ec6dcb7692026f3be1e608b5e4ec1f268d2f8dae3b5537af54b58d5c0dfe519abbd8e2bf6986cc78cf01a499f5db4abacb7577578509ed7a331d2062fbc6a6a4d7f5999d0649deaf3d79740efc4d55f84ed844e98b4a021418985457c7413a9e17f0e2bf6986cc78cf01a499f5db4abacb7577578509ed7a331d2062fbc6a6a4d7f50e28c2c09a0a35175321c635e03643404722bb58f1b702c80aac04ac8bd53e03e2bf6986cc78cf01a499f5db4abacb7577578509ed7a331d2062fbc6a6a4d7f56528a80153ad2d0658471f567c36f9ad336531647d246058640aeb16ded80d3ae2bf6986cc78cf01a499f5db4abacb7577578509ed7a331d2062fbc6a6a4d7f5404d29847bd9d5f18867a854128c6172af4ef9b536d58f8d9861270152c06fcce2bf6986cc78cf01a499f5db4abacb7577578509ed7a331d2062fbc6a6a4d7f52ebfbf6e1ec60e68244df235a1619d500e2ba5018eadc3251e8c64b8fdd3f09a2c1264f9b8e442f7921f20680410012f6dbcca1734b8e27ef4736040fb2e27ee3986806018b00980cfece28239e6872448706b1ff4fcea17b658577d7004939418cf3af2e667054499565fe4adcbf24164c6c5ce69f05c4cfc69e59fe6d71552c59b638b15b41e4cefcb0c3eb973da16a5f0fab67d5397a77faf9f9f96867f781b0eea7f4edb2569d68897e0b6a1dcde7bb7c0ee66b12a076e146577ff7782dcc03f187e948ac5ac3c5f9f0aa80060698d79c48a0f40d7fe3beb3f7f2febe413f63db73315e2865fbf9e8732b0b7d8c2d4de29346d03443ee20e1d634465c55c32f7f678fe3ccdb6a025c4118b9d58161a572b6f14083926db056c30cb550cf43c48dc1f67e2f7769d623376500c0eba1749d14466029566c86bfdeaf8bd09d3ec3ad6281fcb4f56d68bfb17d16afd6eee10db087eb5fb98e575ead739fc47b5ca0029f82854f265dee64f783a2990300a5ad00a4d96e7863709482f33b10486b8af06f8d821358f6cf05a1a115b86f1dcc0c4fe723978c7f63734efcd962fb0d83c96f9bf5e1e5afe802143e24ea63b338a81704433205755898c8a701439f3185df4d519070ebaa54b042166eb1a81c1542e304efdeebff863db0bc05310f2987ec290dbfe6c3a64d4cf5d5e8d89af4d649ec396ed51842f5b7914fac54c121934cf11f8dde98cb92ff51620d23518cae191d7feefebf103bbe83a4dbf67e1e2bf6986cc78cf01a499f5db4abacb7577578509ed7a331d2062fbc6a6a4d7f553f34a895f927a70eed31f66c6bf534399277d4a9a74a8378553a88f3598f66cca0029f82854f265dee64f783a2990300a5ad00a4d96e7863709482f33b10486e47bfe6a6033db1af0c6bf6aceb08cca8ca1f0b24b2ae5086c76939b8a66da42ca0029f82854f265dee64f783a2990300a5ad00a4d96e7863709482f33b10486c094730bb81c394707ee383546c7a8e6d5accbc35f0d42afb37542d6e004b1fed3bf31f04a150eca5cc32debe2464944daae0ac1ccc4e4e88aa0cb4ed61f4a5e9eb5be5d3071afc33b1b95f500870c73f5b7f0b94163ce660d04ed7c63b36d43902ffe3f940a62e7b3e4919bdc0b35e9d3ad1a04f0a0e01a71f2c4080c09e528a0d4ff3729643f93e1cc29214afe12bd342d809a441c323d86d040daf641e9d21c6c03b985157cb29efd55a9f1a0e834a0a1be336209da3d994da9106b2aa44035b88adbec86e02f4aeba5ea8ca2648f250208a2f0788ba43e609850cd967d56ca664028f2a9917b959cc629c0e00db19cdd220be2e7d145f47d1775121a69a9b72b3be1a18d842d2a44f7d2f7d25f30998bfa26d15b35e4f481b259b0a28910c59c3b7afd6a7595747737aa578c328c00cfb375ae438c84ab887dfa1935000b077152f32fa8c1437d2798df4d957c1c68c7b424f5b7e5e580006c57679ea9af2d14163070adda4da9af0d8fe0aab69cf85d2fa9ed165165248f1fc861ecd40765406bef493ff6430606cfac826a0584b2bdbeebf43b935c5e0eaab5b9dd377d2eeb65edc470f5b3752b82c7971aa6aeeb7083dd4b8bec3e38669a582e39a5873069789a2f5327b8940e7d19c314a900a23ed52aa09e36f4725f78d6b3faf34bf7a2ccbda34e0f7c54103bbb40abbb41cc5325f9b5f6d24fa8efbb409a0b1eb1700146e9bb09c38b01025306190161e8cf636913f77ccb1ac5cb39e123cd40ef1b131f3f8254d7fc123f06aceaf30ef886b370414e505e2449058200c7f09657c46f5a8ed5aff4396c9d231863aef1d6db49af2f6e6e5c1e2725b8d3458b7db7ceb1effbcc434e5f31864d2ddab4e0b1ae49862085522b1481fc859771f466de72473f4b06e88c7923595a6d35aac92ffb3197094fa47a625e314cc9dc2589e732ca3449a1997d24017a87754a8c878301f4e93d47256695b5988e6101af37b9dfbe51c9daaf8667de5bd86c86993b7c880abb17aa8321ca4126c3b91ed9d3bee8959bdf36a303571cf7daa944ecdce9f4f398b777d390753fee34ab8b92984b8e05f6b0d239588e9a836dc395e03d4dce193157295320406a1afcb4bff072a09887103885b66fe47ebda53f0da210163e192ae621bc0e395e41e1d2d6e55b38a2e614c95a7a0be57b181bb2195ef146e08213480b6e4b60e46d16faf45f1dcd0860fb5278b063458f444ee69f8117a0e4b72d09c8100eb13e7f733d1f9c5b731ef625d70c232956128ea7ae3ab663e90e8edcae1c8af583926a0659f8ad17f405434246bbf68f9468dc1e7dd267e89f0f5b8e249497ed666b927b4a10b15ee901887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd18887203a1d3b2c9286fb448893e078f838eda48f91eeea3a0ffc664cc17095b31e24327ceb1effbcc434e5f31864d2ddab4e0b1ae49862085522b1481fc859771f466dec75a53009f611a6da442f159759a47cab4df0cb8ced51938cadd6a5aa4371adb47b9d07eb7e4501b4cdef11d2a47bc5855aa8c557a2a31079d3e5358b614b39f522a760d7f83fc71304cdb2da855c550d21d2e5576b304357727709bcff0d5c9921d74678564394647558e00bd8843caf881151e4196d6912c85616fc79ec67a948ecb61c868a4822c5a8100f5cbc413f9de773a15996650d8af18b9ccc4e0f354748f5d475ce5d66dbf52ee4a06b40bf5cabc353b8254bae911d13dad63963fdfd9a02940d1150380d8c7ebec0904a06e6ecc5e2990012f10e84bff5eb0708001887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd18887203f90e3e83200d65cb34358f2a1523b4b2a5d33a64c98a73e4f165e7d32a8421811b131f3f8254d7fc123f06aceaf30ef886b370414e505e2449058200c7f096571dd007dc0e4d7f2c42df0d70d403934a6f6eda2de9866cfa337b73d236ea7c4388bbf2a69ff68ae6e9baa1cd351c2c12932f8ef429ace7c98f523fe1c288c80214af99a1cc77d79ca0aa091a62fd9dbbd04c144ecb167d6a723eed0a16801f0276cc02b30b354ff5cc7cc5f3d78be7c75631f18e66050c268395798f896f2a6e5538bda32ed1810ee704b7e882697d83dd277c35e208a8822e03f4a78afd0ed8558d69b02b41cb1619d1fd5b3c31bbc3db31eff1e246824072d037c2294e86f22aace4e50a615db046012d4971aa1de0d1ead2af4aba4be9d7cdcb16804e28c50ae7e5448e73e2e5dd2f050817710181dc7647f95d37dbc541d3d01ff700ac50c9d992094c1c19516c93450af3f9beb3b580c9adb619d8d8cc2a91c038a89f9cb1b38528fb0b0b2952d2f795d8f78f545afa9c2207e60e30db6abf832468a876afcbb0549c8d92f1209107aa5e2a748ea982ac6c58f6e222c1f596eadea3ae6672baff1f11ba92ac4e325402eb1097ef90bbe245e0c01f0e54646153fbd9c0d8ab3957afe381937beff2a1c85d0bf2dc9b3d2cd378f71bdae98613522814ae24d17a7d45c18a8b33563600070285a7b0a2ec3bb68491243942fce08b35d14c11d745fba1cb70ab9dc02a80eeba8a1864a0f32b2941e008c0af389be7b56ba83060245d54240a077690e55a9b0622abc3fa0661ff53ec5eddf81e9f10bee536fed745fba1cb70ab9dc02a80eeba8a1864a0f32b2941e008c0af389be7b56ba8302e4e8f345aec3602fbc99af94ba29075b9f8c1c9667c3923503f0d8487f2006593aa8671e7c229b74633d51539e4c39c8a0354d9efc1379f8ee8fe47d51b5bf091ce9b75a872ae21990927cb1f10a554e6e361dc5f6d265c7164020b007781030bd249e45bd0ebd21188babf12fd8173c3f62b0316df2a862d2d5f48d4082e7fb10d0b6d67e213015f3b883aadc1a4325c595beedc158ae53a3e47fe99472c5484bd9b3243b1f3874a66bf537e57df93d20191123257cceb796a51ca4deb9c99044dd6f1de1d4ce5f2b2cd8d2caf4a8aaa80981f87ab9829e54cca91ffe341a620489f95f8c39008780cdb4f27ebd6964d31fd4e9e23497479e9df6f28c929a2d2494889cd29f3557af27ce6405af2f46e7ea7ccea0514e2246de36e74ce5a26c60b03767d6b154ded8d877a6bb482395eaef82eba01720dfe1dbd85cd22512cd5078f909d15fc03fd438799530446636097c419e51f7b8118c1daf435ef330eaa08af7a83d1406e32c34b7c267a30bdd3492fc1158b4184f1502b41979b5a6a90e21c03636e9d09ca9b66575cb16a5b006fc6bf90e6b7971309146384a1d8d34b8aba586391346545248bf68dc89f748374d7540154fb1984717eff22141a2d01887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd18887203df984915bbd2452a6c7b6a0613f4d852723e382809e91f3a3cfec612f73f84147186efaed8c540465e903ddce31187dddc1e2be7773a320e629939b0ed85eb46ceb1effbcc434e5f31864d2ddab4e0b1ae49862085522b1481fc859771f466de1654a4603e9892a10d4fc54f4e455cb6019c941d8aa17ec6a266fe5d1a95d90acb9b532a8588e8840e8c9f209b16b62491b3ad529147d93933a5e9f5e0b53db01b131f3f8254d7fc123f06aceaf30ef886b370414e505e2449058200c7f09657bb3e6d3e5c479e9ad1c2b02c7e75d3e943b75f8b1ab43139299188d1687b28325273e7a0ce5de3876676de2f7cf30d7e34a3fb0b70ee8477d3f84ad9ccca0040e69fbb2b965a2b3b335c0eea090b3516ef22421655a2ac92e97aa88bbbeca0342f88037c6d27c59af54a653a432e34de944a35cbefc1db744614ab65cd4aa338ceb1effbcc434e5f31864d2ddab4e0b1ae49862085522b1481fc859771f466debd3934f608ee781f96311776f5ad7b7487f6c0161a0c186b69443f0cd5344f8e37293cf29468740d4f36e3025fb0cfc89a23a7d15c0d9be50f4eb5977edab5a038881475d937dd4c6688bb461f2379234c7ddbf20e9dc466672f8f2b788b4bc4c182efb4f093394e026b316f99e9b54d2f5944bd52a35a9a4343c02790c789a3efe1575347c05018e326142b4835228d1e3294c105211d8e7a90c2d70bca7c4401887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd188872032f87de5b0170dec1359e0bdfab1e88e77ae610fabadbdb19f98bed6180516e8f87ad96236fafaaa1791a92b2d0a71b1898a6c3e7d05efac0940b3aae337fa717bbb9cda87ce78d43eb7c809427070830e5a49d67a01c09c9207ccae1d42f53cabcbc131cd731b693772e13170304d30400b12e53aa2fc64e004d2141fceee3fdcb1d7bea89b084c7bba92c7b296751b94f8e626def898b716ec6e5d42388c2333ee67326ebe10ac23bc7cf5ce4ac38434d7d0edd0648f485e7ab5c2c3cea092080e28aa778c3be3be445f169a5f0d8545a9078f75c2a86004d01afa893373ff737f99e013d1fc10b5c52d5da3c81924b0b2da0c4f3984992100fb8909bac271c01887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd1888720364be11e9904296bfe3c05bb4f07505f90ad66275e72aaf6a47d0e64b9425c71ffb74d9397d69ccac62d75a953f100f103c302d9dfe9dc7eaf677ab5a24a7c10e2b92aff685c604da890d5b0531bf479a6ac407ee190afad6d95aa725268f6cb5b9c9de0893852aaba1fa3250ea845968905f7ff0390555762e7683fb6c159fbd33a7b522f1515a108265853ce869ad61e670666e16cf69a839d22790af6ce07bde743a6df3f1d089c937e77e49942c4448872ebc1a2a9a284dbf097d5a13e7755762fe55cf9c649e5c516cb304eb12554c8854baf7d324e65a18db7448ce0cb1b65f813c87649d699db336a514a758ff4dc1e85906ce681f8830798020bf75bd00fcbfe3bb18ce501fd89a1a7b4656d70b6718c6dba349cf4347219cae363406bffbec5665b6dd839024e23274e3d4cc8760ab77b7e95f85cac2f2d343f4e4d69d3a8727207598148668bf5c463f7f6ae3573c538bc8ce6c2095089c96f8381e44f6713a5d35d86d4b08b0e3773f4dd7eda12cfc4e993e33f80215a9accad6daaf398a73bf47e12a525c38b2a6bba6b00246b12f536961c3deb2ba99fa25c6fd2edac20f44132c8a9f1abb386184132a38b1e638743a4f46aefba60f5e3f59329e94f1baa6932b6ed9757b5013fa1e5f4a365134bf7d56b5edaae377eb7cd41a1512c55e16375d6d5bfb4d3056ac84a0b8649279a693378573e5bc4387af18dd9e94f1baa6932b6ed9757b5013fa1e5f4a365134bf7d56b5edaae377eb7cd41ac664d2101744b5a53637e67665ed559be449c053a39a7aced513eecbc29584989e94f1baa6932b6ed9757b5013fa1e5f4a365134bf7d56b5edaae377eb7cd41af5637fca759515c984044a0c535b1fd074be1c6206410d83bc1c73c238ec3f0fee281db965e9253cba305e6c5274f09a30f24a1abca28555a0e7cb5e8f68f3c4525332b2462befe439414df8c6f451ef4b96d724af4add27b814f26251bcf4dc3e4cc94ad5b7f684e6fd5f532289488a1a17443f196d051be80b0ec62c6b145f2ec3ea3aa78649d1ed170d71ff3fd3169aa861f73c2121521bec1171d32fedbae7e078298ee253f3a56b26a0d17b3f30ebefcee913ef86002e423739d8777c65865a23cc1ff2f378caba60e1d48c16033eeb48088dc9dc3c1d3671bbf0bc30362e48f77900b4af77a6d46f20ad10bf6d0ed3e9e85dd36f62ec2caa5ba2e7c37c01887c0839ca68498a12c20f91817feb1dee5355a185271afd0a0abd1888720320984bea5c53620253f7c28fc3f34c7e4710da8f2be4ee9c5175614b5f2cc3451b2bdd7a0f6c514f0c6d01ff83f6a657cb0afba5c2cf8231d66b50642becb7eeb4451862da63e9800965215ccfeea0bd06fb50d2b3689228ee671e1b3d508952aaf895afa923b75f0f4ed9bb69ff9fb23752f945461cd5e7d14f48aaf1236f1a3adb6276ad108a346fe9cd2afcab11b037595a97ea0c2abbeee0e26aa01ec7c38c4c80c1130b82bdd7ec23cb2c7303d84fce6ac8656f2280d9e997d0be0fe2be3adb6276ad108a346fe9cd2afcab11b037595a97ea0c2abbeee0e26aa01ec7c3f8d8db2441630a9e92cbd087406bde6e87795fc60b98bcc389dfeb40c49ace1b6f447552c60affd50bf470cfa7c1fdd6d6196ba0d6a04c5af36e02c059ebb233982a2b6904893af6415240c38983f3de7a440ee225e2fa6ffb63bbc8a69cb4a967628bc679fe8711e446cc50859903c525d99bb89013b3ea7728b29f16bf408fd9df86be6f587db22ea1bc2ccdf2be1ab103939a6c4a1e75c0db1251ac7019adfc411187f79fe568d872e71ce46140ea3c966fdf4336267541477156283deef39bb89075a7aa6acac83a5be5b76db35e5885b2c490b1c84cdda710c332047e9f32df88f8f1fbb0564ee3583eb74c47cb3a355280007617bb5d8db4aebdc81f4aea3ba300e1b6508e3b2f49357141223182499ec69e362a904a214179a40bd912/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(ppc-64)vala-devel@@@@@@@@@@@     /bin/sh/bin/sh/bin/sh/usr/bin/pkg-configlibc.so.6()(64bit)libc.so.6(GLIBC_2.17)(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.17)(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-develxinomavro 1667802153  !"#$%&'()*+,+.+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_Updatedrpmxz5ppc64le-suse-linux       cannot open `/home/abuild/rpmbuild/BUILDROOT/vala-0.54.8-150400.3.3.1.ppc64le/etc/alternatives/vala' (No such file or directory)cannot open `/home/abuild/rpmbuild/BUILDROOT/vala-0.54.8-150400.3.3.1.ppc64le/etc/alternatives/vala-gen-introspect' (No such file or directory)cannot open `/home/abuild/rpmbuild/BUILDROOT/vala-0.54.8-150400.3.3.1.ppc64le/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.ppc64le/etc/alternatives/valac' (No such file or directory)cannot open `/home/abuild/rpmbuild/BUILDROOT/vala-0.54.8-150400.3.3.1.ppc64le/etc/alternatives/valac.1.gz' (No such file or directory)cannot open `/home/abuild/rpmbuild/BUILDROOT/vala-0.54.8-150400.3.3.1.ppc64le/etc/alternatives/vapigen' (No such file or directory)cannot open `/home/abuild/rpmbuild/BUILDROOT/vala-0.54.8-150400.3.3.1.ppc64le/etc/alternatives/vapigen.1.gz' (No such file or directory)pkgconfig filePOSIX shell script, ASCII text executableELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, BuildID[sha1]=cd6020304ce72cd0b7e493d9af5b23b44be2e623, for GNU/Linux 3.10.0, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, BuildID[sha1]=89407eb1ccecd1187f184c9674dd21c8c0caa3d6, for GNU/Linux 3.10.0, strippeddirectoryELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, BuildID[sha1]=8c5d0657fc195f3e35aadb031047ea5e18325e52, for GNU/Linux 3.10.0, strippedELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, BuildID[sha1]=e9fa61dbe4af26bb03c40e13e5c5435cf0f42ed6, 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 RR RR RRR R RR RR RRRR RPRRR RRRRR RPRR RRR R򟤹k~K<;Zutf-8405a958550669630d7cb15495feb00b28becee9e9a5bf60306604e499a43c9bd?7zXZ !t/']"k%fFS@j޳2J e_g F '1 Z6sF |Њ}hZz =0~a##( zv>CyڌfQ;cOƒhaqiLmTJ~jATA~2v{^ƹu2nvDuR!8iwAhl͜KUc'y\@Os<ԸQ i,m-a"_gC_:F gQn9ZC,hkiV_4yT_VPelegpJc>S[^ TN4G˴ꬅ,ς}ÆrovEZyHvt4z?"lpi69{TyW?j@o#NfLV8vz9X(t-aDQzy=&@Pgq1逌00ĜoܜL,q,).n[ 4gXkr@4`,8dK gm\K̅HE=iDCG7uDm; ui,pr"بG 'c&Kow#o<-A,^ڮI^\n=QhMY&S y€TNޭye Pɰ9 X#V*U$Win30Nԁ>abe@-y~ j׬>ر!gZ $'A+hI=k QWbrY[:9A幃!Lz|mLC>aOxig?~T O/䠛ąSeqP*ǎ8#`m1FڡLNʰdMi1.GLՍYKu~h;"&cnel5O/*Onu:ڰҧGU%?f30ģjN 7V14ǡ 3=q`]  CS-QEˏM+̣GKtK9I z}o;EfWXP(jy*iĈ{g߫ 0MvlZMav,BR1ȝPl j8i@^5"?IEI:=֗'P!7 ^h(z8l |7BBqcRO?/vSoRT5%gZ"I)˻iiVglŠNg͉ɰk-ˁ=ȴ N{ծn@>e6 1|ѧG W'b J.C :@mXɴ[Tf]D? ?|ьN VcdKt;*C>}iMyvsy^OR,o7>I"gre\axR%{@冯,Gt{G'w0Bžgn55?Vs9#Яĭ>dHZy@%@N6,Hϒs޲ F#>]n$Ӟ&IЕ5^I׷ar 2bV OO1qxl'9es Vumڶ?NZzސm`(9cNKܙ1y+'fyڒ[JLT(lseobQ H*>/Mؖy{?/$v 8Ps`֍`-n $* nNZ0E?Ԙ99L!}V~ ' 6N4V4džo. ᒓ"4 AwۻNݎ |ev@\_%݉o^,|~0i+K< &.#?*|A {BB@ضx %1^?a+)<6-xeݨ)Ǝl~ ȭE9W- H/G%V-NL' Cd1^t3N>e XBV۬qv),^uU#r>0\"@FaZĩcWN6 "l&CR)u%%F76S𴧡eL OݹG-+B5J5n)φk|U7p}$x^B].]@cbmLHkq'ԝOJ9Z [3 yW?01A6v˰8=d́/г\_]EQi{j !cqظߛc;a{dвXGU'Uۉ{I6AڔnZY&%]L92-paw@3^5'd֓Zz"6 'Lw]H#\Ve۪ {Y-It!+zZ gEMtX޷Du0,EͧDv81J:"(6/n;1(jKSEiҤ+kiHcAsBnւ@*9< J֠%x[ɣ]^վG;s״+ltFJi{3;2 n+d)` \Ha"AЃ?Q0FYⅺ\b\$pXsъ8D_J[ -h+o/x<͟n(?u;*n5\`߲VH><%E kd0nf-qf)%(BPϝ%fp˂4`:( Ba'>): ռ7v C4Fѭ©٬RhLdX`q|u鐽)>F0hF&[7϶9MD4ƠlF8^;lR!J!!oaQ鳳*fB1b{2iV0 wf_0#DWg8.,3/TJUU}dn){7Kt@-˔ӺΌ8Q l l(/,Ju~!|pgH۝;%<_L_S<{\98,MF0l5Q jxKUV#IࣉDĢ gpO{w@SF:2*~$Te_@ hU:woj+-ICLw 4 va1^V sJ˅KůƑKjlruijl9x\X7n{N\KcPQhKcnjxV-չ-V#4M~ b֍ML[ 6xK0^7URHpmBtaL!|Ĵ_V#Nc juZCޛ1~4?_K`aoP;o wGdH|H2/uZk:lR# "e6AmTo=gJ5+"Cy70ْ-y("Jz| #x{%Y*;t {&ϜU%<&<qFok/`=l={9 5E3D=졁ƓjŽBfebժcL>/XxNtO7)9:;E.0` ]=(*~ 8ݝGoծN\xKGGEi)IoS*7A:Δjwdd|3i"=?Q"m6pNRg@97MAtNӬ2(J4)n`\]ƲSpmSM7ԬX<'_X?ZnOwjSlr(JixƠ[v1)Nۃꍪ ۋY&=xTtO~1;&dž)zl4%>N ]W*UA N,\'Ɍx>ERU[Q}ק:V2JyY-ǟ^NvgѐAP(P:t4)BcVΓp|MQ{{݈ޡ Ϫg7\'CxЎDESTqLYƤU>^"=JwMs:΄fA:R6Yp7('p{, dA=q&<Q~v i%_J8笒oV D T)sU1`}>i#.p~јb*JmnAI[@B$ؼACMW?-98Chf*΅Cc&m p0;G#lYmnQW5n5OPPZ n fwJ?Tv8jg<OP0GwRӿ[G.P[l9G8Vlw,,f| Nt'Pj҈8aL0'.tݚF[H!?Q@|GF`0Cr.Ә1$M:$Doqm2o9('lښy}E[ k[S _14wR`20>#:畣j1Q, .ntk5 ,F8e=eۀv_]{Q.Dwק'll߷C?Im_X@ٷVH9Tő!% ;Jh?t:vUhiZ Yzj:ɴN/C"`LwfHbBt9,y>^T>As!DUs_21 ck.yoDi}f_nM#ZQ컩$RDim Ec?ֹ{VLxB55F`đ]o"$V͝q]tp,J(ĊͮKK68ݮNGB>ӷTPc"jy(f.ѩU sE`Z"U<ZV1a:MgIo\NmkID{Duri=`s7} VTUa7|1Fk6 Yڧ^*9z2ɔQ~s޷ =_Ȱ;]&g@jbhַ5m|Y,D&e=pي­b"a)%q,E>YMw_ufTi" Ls#pf=,`vN}l52ǛIFl/Qvn/S’YKsbj<LijȞbW;G?ݧ U]RO]!p[eW)(L$$E|-w7es;!ZMKDzK/3ү# _;Ma ;-]4/6;R [!o!l6Yok߶Fs5p(WkIY;H`$^U|p!4kE"raF_B,j?44*ECPIF]y! ^b0M$ L@eBƸ|rXWZ Ui\g|&Gbz'yp]^>hX#tmtS8(܆'3^h0Z`|2": ǀCNl#L&H nˠ.2~t|D%1c(?]4]m!)ݕa`<"(upQ ^ۋ e;Q^dIK$浑fq+Llsmo+(RZ[ULBE##;x4)Ж O1H.meB$ݏ#uq|uLqgM,ŏ܁}،1e6 ǣ/c4OCu(o]]YՍ֏5ao6u Z&K9`i;I Mie9LY'q[귧[Foف |b( zG4|h}v!Ag# Devc2^zy5VmkRn+ ~sؗ(e7l܈5鮁B%6<RR%$Bi7Uud`%Rx1`?|S˟jCic N_dApn5q_{itV'eTV*1D^ L"U(I$DRov" 8E) >7L5ّGa䞢q&=|~>UF)UeKlm8P4[9 :L:=wE?908y_v(p!5;aڕ˹}wJ2u7Ӝ&J68n}uA!##_> Xk{#5Bslu8yw;7,Vɂ(j :!5U5\6ˀOwyCkZtT]qs?߸rAi|B((+ʹ>p_(|됵Y}e uv7Qx*$:Slʜ,,(LęcjbMɠB/Lez~nw#:nhY:eH 8&B}J@00m]a@+^fA[ab9eBҕhPhذmNiO= iV%El˦%M;BgDн֫QY |=aڔ=*PT;炝: Ϯ rNTˇNRv6MՃp-7PHݒԈHmZɜ1] 4Hq{ܕ[ k`ܖE04Q85kww"Z( Yb]Ykd0ٍ5&,Eodf3 B U |+P P临giT1ѳJLF?%Fƾ,[d:el4'nKi4Z$}j32+3\a~A2'X~8Ь5bS`I7029fx&f]-Z0n a.CکJpQ>BYe*Lum?!{̭dJ{4nӬ=/Ob++2xxeҵ3I)x5ģPU*5yMU$]T61snq, 2kWd4UG#VOuφaWieHA!H<ࣾd=gF̕Of5b0(EG@\// 8y$L{(*a]ͣb9BL OKdl(ZXXT~Rz]NC"vP-5=:EINUt10fy™ v*E(X]#O9mH̓Z:AƜ1Y׫˺-&ď`$$R(rN FeL!6rz$yIU7AUm1 sragaHtlO^,rq\%$5PXa ZpL2'9*ɺwߋ&׆+7(FkVȌPq2Uݤ!d ̌s+= vB&|$dqOt1<`Y%XWZX.4$u}[T!1Ȇ IAIAEՓNƺ+/*lJ1=\AQmU-߮Y v0 )>Q<N5?UPB)gA$+\f'm>N];XDL [Y./no@ e nl89TE~h.TYmq}?."斂I)$:@4Ԡ`AD\Y|7|~n0;D~ uxA['!A8|-hNvT/W\8F(R8ʧ|SM̙#+!i9mEqʤacl8r t.$XԨp @R7G|w,1':}.hxѠa?{X7[vȞ ^f=|ʀ$OjrLL6# *7LTdwo̺!.7J,9ˤh88?">M9mIs^t}r m>يMuFbx` CʹcaPRbbQ #=eJ~;!%/8jQݐߌс;B.I]`tbju`\Ce6ʽ ́υ15v1[]rvUQiΠ"I uhscވO)o՛)c)oirP*2>GmӸD_JQa(k qxvz5Zȥ@>TmȂ@6Sj1 rjuzAu5*}K6%^߷m%'QTخZiq (q`i^^F26LdrD.TFwqwe'{[_TM]=6 /`xb7ї%Xp@G/뺂!R}{Y @yG5{F4k_yр? zw3 Nk K3WN90qnW֥wڋŠ~b=; )+Z3[MK5*3a)O<',&Lo\ڙ(ߏ/`'[&A1@>7ܭװʆ0ܳ :J^=yj_ !ʼ"li?pPl}VY_:Ty i9&P|jG,90BR06(2(!d)ܖlFlp*z?<&ҭz@Zf:F$T[qaǡY-}WЙ[lb朁efnU,{K}30[h "a3VC<8,m1QƑiFǕ|hg W@0cͷ2LQ,<KjUa)MC%& oO>hS@:7~*)$5$:j`(D5N:牐)ooeoޜzQs=T#jsT맊 /F#S 4Q Ϙ1Vv8DžXYw{@aGH ){ vE/ $W+\yI$T ]z iTWg@`qoG49qC2xCiyh#)Ku}aNhă`}G㢗:7 }y{Jkq%]==,{I.TB- r8h*,#qq-Yt)^uO/&hߪ][El5lHN~F:.mIlJbNwy]HL*|Tb}o'mUUE "74[ל}Y>~8[bD~vCK6*:ps%>WPk8I3~n @W\*/aDAiˤB7܍2ţ'X\p8΍V`0,sJ(4nZ=5NYPyŽ&+PjJCīKFj.n\?\gu .0Bv[xPjd(hr<+n laPϢR+yB}Td>d*(.?mBÔ $'vF!K>vP5/au9 Vޝ6o8ueI75[Q|oߙ urM@P#m퀆UM=!dyوu کRh`\ `Y@i0u=笙h.Eȥ|K~UbFbQ{gX/\(T3< nSGR;͒~1s o;ıކ U^ȷU3Ip`̕Gs;ܓh2R pvږ2v9 bhR!:Co,vT͍˭%vhxÐcM~jx ݁0aſ |Te Dr}YJ2*_0;VM]%L &WX.qW}V9qHP=fڨY U3vm9Pbi/ͰO LV GLKHJBT.#s#7f&pA !()bs ]8iQ|#E0=m>>S2H9(C?(0wؕJr hKNLa,~1jU!,FXo-3!o/p>G2~&y9kHA+uA{;V%sAyun+ ji͏{ϖPL͉=6 e6C zWl膇2iݡVn҈ `Ի ӠeP>Kɼ0 C[t(jxeJ3-$wk,!nG/vx:)R"|@ӏ (LIK}`LK}s\d+bMyֳ\() \1)ea0 Vp9(ZU"@ts5x%f`j7PO](1Fna:~`-y)/כ p -ivg*bK $`2r>;Iń ԕп@ϢmaEjE7cMo~@Mӫ 렺+O &δm-ЧY`H^ݻdfYFƇKBFPDV^ FVc m⧏2/eSo@rԏfELDwk;05c:N|ѱo9o;b8:JS]#(۔|u\Cǃt$SrK {ܠUmDEkUL8 CWEG4!W S0A?nflܷ?Y vC3= ;n*74}7I w0M㚚K_FRof^m'ߍ.IS9PS1/+_1m#t}A t'ee\f'@^a#z2QS)=f.(A|Ʋ{6U_{ۯ-}p憣&i%w\f)5VURRкF)OmW0AW-A`dȢ#n8L@f(k ei60Yam헫MCa4D ٸ门ȌNpEA kMm϶lⳅeY~u8[TJP(/hOTVzH9fT,.+]w_DuV} |Kz,:cqR|rXz6݀&;sl-)FlLc8h;J/b5'rB%5G,AſlJDu%k>-1j}y:t(%L]~i%%QS`>8pqI(PwRgZzo6od5>.`PP@<"Q !}2l'0o.RFV['3o%{GSN +9vy'n.^P@9Z"@/k}ǽ<4)^;2?Uhdw#c5,+;?t/+ /[=R.@<F0Y iQln p&S+.VP>ЪWZt׆0 ٓhfLK(Ro׳'Ҡy1z:$vßw]df N;o OV  hHJ4x9)4[e_(5Өa/AnkEA=RU!hxgɸxd߰( ~v)˗g΁RLJ1^NGQĴHXZUJhA>HpoIp{: _ 94W_*=7A1i= stЪ1P BmQ Q ɇ}W%SdX_Q όIa.nJ.Q1Yw!@&/+bg v xt&ڪ/JSyFl ?<_7@"!uׄF%#c)SG{LмΒsį#ѕ1ToAE,d™pdXN3TK›w̛ޖQu2 `5Oz1-OơT D(4Ņ&Wπ5ζ kZYrT\CWܲsrʌ3؆~9!0"ZEm>K#G r..C xP7㷚 ީ* 1H_RH?w+ Q]1}8+! Q0gNU$sEVoݶh9ƅSƮ'MZq_20Ix]\wS0g;t רS]~s~oaĂ)5Nd'{(kSsk*8U=BX>wgܤrzߠ}3k4mx{oYFJ yf1Vw F 4/dyj:Kjjڬ{Rh-K˻ۍ<Ǹb/mTRpe뤱np0Z6?JϿs Q=hK"99>T C[2x R"tkb8!_ c/zgcX}Wq"Yq @A/x'@ Ko.O9܈!m*PƧ{јZ(Zh8>_FH]>g_Fqf6fi}#zT C`s6?iv"rd4 ^p@޸^gaۥ-ڻR9y/'K[]z`sn ްlg !{A6bϊQ&R^1;6@ANQn6s( IsB yd/ftz u'6rXJMAeG/d;E&ɡ%Ow7KW#f5B{_@(jx1/;8HJ-`&B՛|e6zx2s1OqрeŴ naɟ\L]0ٙofi:D8sD] TTႪ\6OuU=W*0ĨA2FT6i-傱[j$X++^)TCBT幾+E3@8 RIUv9 in<4 z>'A3 9c_?ҙAw j#Rϋ[0qvoE?>i%k35PNJ ދuGHAʹ4{;pS8VBmr<} n]dޗ}Th8k,n޴Ii1.l}o(ϝi#1^j{UVw WN1ϲ&ghQ9"ql/ gV/GI*uG}!6Ne#wUMeݝO]9aqd_?l Qo d]Jl 6^I <xX _X$2s\_{ZF_v-r lx؃Z  rPb}Ed c/ CW#j>o`[=-8Ēm-e`'Mx$IhШlCEUR۳;kR\t?A+z|]Isz׋l<ϭ3Cٍ;9.*CECZf, |za, ,\s-^4 8l㽳Φr9/\EzfMvy$ʥ G܍te#E&$|VCP+6G0Uv?>V3|Py/tpF.^KvӍj4˭ǸcȑTDmc԰z+%6ot8WKV}W=KmD)Wq7E*IecnP漖6 j :.M@ nR'n^Jۿ;=fW1FE]lO.O^2 F*SHe1KMZ R|G PK(d [0GؘB .h!^OAO^?3fSnYǓEqrxxc'[P̜=,7 IK}qvMN󣲉ǵP %OVi n8#E,v G hgKS n@ƳWU.Ԁ8E(mcM|EAm:n"7S*"$fL80ox^qvʰzB*+jb"9 È\nYpP] 8uebzh?}Ca@HXܘY ng%B@Μ삉U) .ֆaSA=-w82J?ab3(g bU&]zGB01T"bsWU.l⎥W&DoEUGQ+4ǃS4NA"X板7?;~Hbb{1Eg*F8Ǝ%pfRfWP7ܮ$&D  85TK0Nɋ9h[_f[K EEz؉1^ib0gf~[5 (·T,NrrXS],Ik~Wtgʧ@!EP|:eo#;Ō ;hdR c0NA O%0m'|3'R8&WwN8XGN"p6On&7 -،7C*aO5Sڟޥn},#\ @\QJhEwW֔/1SvӆLbN*צNQ%B/AQaܯ2MBFHAC"Gxv8l4P\np,Vࠓlga ]/+g-,WGyaF1S@ݧYc;i`*Qj9Oi6&Gu!zax6.3,͉״A3h6 rG<(Ud2 ̈́~&9gRbj_gӮGɤ\1q9YDki w:>v[z?S꤫g#ՕD$±6o%ϛtRAI7d}pwj E!hiG^:i9DVmp(f*gGKg#2&nuz:(wkϲkT]@;oh^ uN_`CATbGVRF;4Z {ugq&TmOce_ 9|CwK)z*b;#QO=D64_wuby(-ROLM֥޶Dw"2 i `D!fͺ["z5_obym1T}R=_;_d+p&.ϫ:u6qT oN!>(G:`rFy캉BWƔ=Bָ}#fk+=iFLDɂqh*$m=APF5Y?^67B߃6o>e?c޸$Cs x\l.>(>ȃQOv<'4,LoA<oς.pO]LˍL^y)~rzk-h0vF; ׽P$:̏ŭ?$,ml-aGeuR"Kvu[UdVy+c\}|]a.K*)dԹDӖL5xٱOi2jwLfp N~jP>|LxP4g) -D%MKkD]Y[R\Qڜs]oQYͼnqEp,`ҽ8#g8<='[âi4L^DD,##-RD^H8_>^iXԟ/TM@gad < k'5ܺ }#ҕOL^wCqFVT ,/>wNmMؿTؚumк+NpջrIRtr$> ˨o&8ss$ ^aP'Bd6)M0?e|ϊi)L*y$]eNӆ G[^:eo$.d-~365_lQIEگuzk(*W2B3DµU_gld@EbX55˵<E+yxK]w(R/(> oMqA4TЏ)LcWu}XTJX |ߎgƠ| kIV!Yj,{[*9ZS$քG!IQ!=Am ,TH)2.3mB1bɴI 0I>W6D0O\47UɖI=/I׫B|g2ÚYݐdYިMu!TT^HLaD=_q6-{`(VDФ/01'jID6if+ҿ5Fo,=%_Ѣ8R(qԍ3 C^m3 0\] X'P*yV4^gUL= K"+HSc]ySOQSX|FdKLE_Z'TeDh@†5vcYEE!'O`C_#B 9(2-h)I90_fp!넾!t 5sg 9^JTPC܌kRtxSu0 ov2; @AB"b' s}ESETRgq /t]3= 5&zҍPT- _mi`P($aMy5֪|!S2Huag[>bw|Ǭi|~lUg/`JZ4G!JDU4J ;= @Ļɒ)^ƚ{f\v;TbRǠb(zB]wWo< h Bs`brp  1˕`!p`i[*Z nR bǩ#EslpI\0qAx dԕw{|Fi% %%oN҃*QIllroQCK4rfr p4wx%L}jJGfzO0HPpmᤋh:lOCBy:'p@Rhxo†zw +(DU% tT4W&r4HQ9H~/ Ϧ 1U mxEƢ4I h#\aGvQϴu %|PfU4(HmQPX< r 6pDc!tȁPٚՐW4 _D<2b8=^4EvC9* J10/vD w TA3 T|k" ё)%jg^,=Z_{gnI6de]elI~#;k*.^Vk?M& ڧ?{A=O9$y`&wT`*Ι6V56~R>570/4.\{ɐqD+nwdUdC3 Š*z`6y P Ox$kuԽCƥ ;5)Q1-%'p!;pkØ 'cյhN3{U3  s~1 J;Hֿg+H<ɫCPPnR>BAυb"p\llM1C. 85~1|5}mȩ͡wy͓k Ø-׿Jk:LS?qJ4g<R=~\!x'M)pW)~:cX~ .wJX*qI<( .8^5JI"(V)ehf)6w UCX6gvءoE B>q!s m7vHOD#oXUL@AyQsHF؄މ&eĥ0=LѨ|eƷAL|󔣩]KHs;lT\ʣ )Г [a{N%7,=6$X⌳m~y07E-#9%/@+nBVSlq2ʧgavPN`+lu#JiPQDlRfY:ld C'TT"rܞQ1cBdqqr# =xaO_"IBZlA Ef*/~vb8ƃle_q xb aADܠf $AC1?D"Ty _ONÈdunV1FgiAjKʜ_Gf!K)$w4>u YʇM# M]8GlLJ#M۩JH*#[VGc7Mj`!lݨ [ۮs͝(Mr/4ei)w4!@tb㵧؍ dk2!cd0?s a0Iҥ {xea(+\ס= M8,nӉ>tƐe^}EԹ:ZRqȲBNKac5w#_XՇ"df)kX<9]:jsx́%"sAAos+N l>L%{+^IXr * Qg+gN9͠^@s_XAu[PGq&= +K| Ûudf4gVhճ3:< L]LG[[:AgvabҢiCPW+ueGl/Z_N0L@IlC̫2uK} pW vqmJ,Ƶy R ecq jZ&`bn 0nKS|0`~3b|z8 o?}Y`3umtn&^s!>k*ZHIzRRB6~xr%f)˘}R]S$BT%G|bJ`՘9:N'=C;Be Kz'"5iM~|pRu6#ciXxսIsD**$wG@GSCJ TAؑ=DJ^C!ۘ&pPKz$[b(.bk9(xj$VCxB*jƤ#uQ4zKޟ羅mG-Tfbw%oNs1B#L5C99:jqF+dmdY/Ս~IY; vޅ,.4:mcJJ (s34vC<洙nzAfOJnQb)Uxq_YR:M2I…WTGjR vBW{&< iW"1_}M%d>.(;L͏Y1OW4mer+3P @@\0~Ԟ^ٌ65@x H^M4 COM4`AF`>')#j1.pk̐l'ϣLB/|J`laXCv^ӐI堫C;0Ih5YKSig{=Pe'v}E]`#DCZZÐG|-_k8F@vu1м;1){/ |W@'NZt=0&y+Pŀ pQG2c"Rt lʩۛ<%ӤQl(C}}П4͑9sX om8tGi=2hyV`р͔!ÚxbɶI`BoLnވ ?.6ρqılևV܌a H֞ta9 ٫i C/E;RI 9[c0y}|5(~ߐ._p̗U+Gm9 Z徃$^acxre~jY_x:NbzJ_b`*œjϫO"i9ςV'K8q8%fCD9e >[4m8PV ;i]U1ffOa jRil.J'p9 B]'SJP3OJ2F */~Pn?PgȊe׫]"/I<ҬӋp_4CeQ;C p=o8C+nNrۖ8k#!)}$X&Õ>ܦ@L x_۫7{gdSs' $(1Vٵw8 Fm}1u;Ra.hñN{< ;X4FqQ7L cK)%>!98ec*'cr#[SEVn©'YFCF0.Ž ҽS)Ei{lmQN[H/WV+\ZԚLT`t_4jT[d*$1YnZuv!0,n>)dLyaAa1K.'t@)GMzh_!ޥ@B`iq4wsCc.+\I3gLjTgppŐhC s\F ,5ݖ B _ 83m6uwZ[.{r="+%}1SB&=@q=CږQcBID߼L눵"H{vƜ <3׭Y2nJ޸(tz0wT܆>Q{5U yNA,m3X>{AuZWbI)J r)1tIAOQ]z^ԇbw3(_+s|pp.(1sH#bl<7#vq(C %zOɀNr#q%SO=icCtczFO{7ڜevAo}gw`DBؚ[b]5|yK`W:a9X0WHˑœcOS3Ao>龔ГTQϪ+:eyn(H%Mj}/UR+0RMy=W݉og=]JT WƑЮMPPr-] ۅ5E z6ztiJɧ'kjFFaVe_ [Q3\0[zԋfRѬ*ϙ`߶-?T3J\jfZr;+G\ )4rX'Zt4\YZ!#N y ػ!=F؉q,NZ8 餑ːt/,/ZLU)XS)b ͙k6fPnP"V̮߯+X( : -5z3yA-Эױ<3A09\> ;ykN# '13%K+iByF|xw<OKI˅ 5"z#IzŒroiW0LBS%dfQkDl6UXR8t7;^Tf1)0rд#9KkCseFQMho1:#8ch:2$$ YF;Oi.%CуjNW6Ϭ\{tP!ALׇ(4";vmc2oJzZ:)Fp*k շZn0D%&. i 5y)J3mdMo1O_] UnI$YTʴg( >L;5<ߥQ.«)P/-Dԗm$;aoQ0m$}*~iDŽ2O8jEN(%A o>&5"x vD>M6w; k)}G݄2XɰBZFGr`#Z?k6.wbkY?Z"oJ`̌%h"}7P4m00n7"cjiKxqBV,^S&NlH \ҔTl(LF~ 3njYy KHx@_gƧ,B=hxQB 3i%IӴv+f[\z3nG**9~_GIGy!b~S[vdȉgVYZCz/Nh;Syn܊jw>8fMU$,_i@|' DIp~GHƻ/!<B 0L_̣Dm!*ﷄmc+FDR9߯A|xwD7*vk`9AO<@}z#}xS;7,ۻ+g@ic<{XLw5t;?AdR_.#ҠƦ_bv6`p&Jj呚O-rVbֺd*Sc47xϛIV9B.]xWCH$$\N ~l\$`F,aYY8熙3>Slgh#a\qCӃ9~ie'V@zb(v7#s<}5 L4Vjs=CT LWI"V$۠ۉ3e{-a'ecZA-r0 -ZǴҫa# 6`Y.}H0enPGV~>^u'[Q*B$ 0~yq8P1\xqDcDю^cL̉mhω/v-m0&߂g;ޯ` ' k H7R0S)qr,~ h@U_4#1\E=RVΡr6 ]KQB Kp˞њ|[8~U87iAqt%cSW/dwL 8}Np"a l u_<ڇ`d|!Pf jJR*'S?i$F&BW_^^遦ZVCǯM3BBDڌ3=7CNng<04 )fQ`tcjbqO3IE iߛ%bE g91,")w εII РdxrSư>uXz׾ kCXl p <(M%@Tl HSuB&#QMHhu |Ӟ];^?ߥ)9z$Z"G\`^X_Qsob:q,~ǕKOtكfXzLMQ )-560U^^!`%`ҴI8luLr?8k J3s.G':Պ wKj@ϴY8"1[r-l3w &%owgΊU,g%F }>@fˉV&1';/芬:Xu lO:Ye>DƢYZS SVHpo-7~tJ+~ <3Ř3DVuM Gvx^W7ҙ@쉭07L+8XBWs*3f9&N J龜GY`o?D>W`g2EcؕXD Z],ٖ0_0C.iۍu< ҶktAc+MYA ËDĩ7JH+'\lơ m5'k՛ĨxT׎Gswc}֧̠mCfR+Oa^ 퉞7[ШKN/VBs^0x$SR,92/z[fXi&1h]H5'5  Ϻ%ɺ4p}](tO+pYYENxe!fw(`CX1")d*Iv].X!LgD۽IGP8]슚NQa9rE iw8?C|9tD >8빑DJW>|x7M<^*b1*7튂faJ$#JE{&[LV2Q|itf 'd7jc3}!D S6zA`= ݉ݪ!]AGF4$C;x.)FҬ fO RPeʂojhm_X|yJEp 7MRyf 4\=j@bk_0 2wŀS!}ʛ0u@ IEͪwܮr![K<)qNvD"(XwR353'_]YP9o/U -:S"ï?:d,tq0256WTV lr&yYa$?UН] =(W??hP(]1}zTڠҀ*|NU{Igg+|Aݼ6?ﺷVy;2˵Va3bMQG\#D!ǧeOd IV(ft&6ֱjրmBl_YK r.ʽqKbLn{*F ,(r@F~[yÐ#yMXK@zեg#ݦTN]MEIAoU*1=B @;aimP}#\s(;Qoҏ'~SǾHV3kikCwDtq@k9.$x,?U~Cx&0& OX qiK|\;am/ -ۊ=ˈYecĜwѴ6pY`Ⱦ$@lԉ74cusW߼ѿq԰x.Ʈ_D4ہijkbP>.a^pm '6D<)W҅i30-F&)i+xmEMmP*sE')9D?vG6(gzwsUJoS:ǁET~)Ǽ~@+.7@ z(3!34w:m:0D %mJx͡ɧ[2}9ŖSx>@oZNs4ICܨG%X\3Ԥ B:O|!?oMፑSFLF2u n9uiDSVu{&>_U&?gAeE|0faM_wS,ʾtn˳Pɭ C*xk`FP.`b v,ԅO#>#epI}KQus{?hsċHum5IFȀX W4|g>gPt0q|j^ޱփe:"ޜ5#d β<} w4ER"5JjkQ%Up@(9y *1?E)`|"z1]aaÍcU ,QW9X~)< mhP?Cr3'? ahy I7@F-z9f+__1`~GŮ0"*3vu\6653?qB8@iX[rIr0v-|Xd$%nН|ɀ_- _A&=Z;|O-QzɉBy t-r<@,*jw-Ps}f X|7O5Mdt>cFOXO˽"(B8IԐ?h>!@sfߴF|>iVDgd4,WO֖݉zmYLȗ^*٤RJqy%^!da.u,Z~)Ac\i:Y>,J|}/h!]AĪy th/Hg7 ͑ڑ Y\ qjz.Ј k^r(F$EZnx~1fW]/]WMÙZ/Rw$ØCw]x{܉e,Kt>*Ĝ]=hqiW%(j=ɏRʕn|-?P"Yf`A0M<DEv\Ed3Z^jEt\9ᐂ\D^`,< HxFw."Qז7ChWb˸_߳k9. ` FLki\9& mEٻ:547p/)1$HrW#XC۹& bv"I~^^?R\ZT5b\,r7VӣH6tٖOel=슝SbFf6fD25תs|ۗ$ȩ2NZf< &\'ʕS86ƥͦEČc 7ޏes'pk=s#mhS15g!?F:GALlTfޜc{c;H@!u :mgR]B=UӨgt)xIpg}ߥ*rݴlfK1xqVi|=]ƨe7{0Hcfi SfЍnO-% %j- T#'gR[iٴ%b%tĦ!yF2c" U/0`p܏V21h$=r'-k:Wۚu( ?zT礼w6ͤ`_9P+4xA@ >;4dHw-my}+`,<~ 8NiżgN 6xNǣAM {Gޢodo ]>U&8%)lyx]kzUmf(amT K=^ gų$YSe\Z@lRу*Fcj\)j9:(9JIXqLB5R~0}tAo+ ZvѬadiZ׵gd]@{M0G)iG8"ǥǪ!`, `Ӫ 9ys23|p2MG@g#} ҈q&kWH^WBW'ݧWtح AMۉ0_$ Bp׹J AO0 x  Iy^N.WHbCH;%=L\|sH( YKUۖ7wl8Tr c]ŐIG6X@c$[?~nld0)'D-@E.kx7>~4g覊 v[5wX&'=D7POHҟ&=C!-؝3[Z~uSkrzJ?9)KhCgbT”[:Ɨ«T~1/ r4*m2qsg@T^q_-j 6)v`\0E=̠ oʹd57O@1Өۨtqài-8t^]mB]CUo{2+Z9~a٧škv:pjpv sB;-[(_05D ﹍N;=wkRnAٟWmuac;iPgtf[&r6\)s7TQa9&r b;3D>R~1P{X;'ahZ^K 8`sj^+pBϯ$Y /Vl'{K+0]0:nK7276oLX 7꾂(-Nw>(2nA8oJ9,:_Y=Qlh7>xW U4rF3=HtI7@u~7&Uդ&,f?DpPWV.|ņC-bc#E͊:ŨK2jy%zt/BMm]}) djs݂خǁWN!GIL*̨zQ4͸|yO>qل*WKm>R;!OM/ԜKCXovacPOKik:k$- sp~^gSd TgC~_w99Kwf>"aͰ>,BIњ8e=o]%UPC`SKv~*zWu%Ncq'G(\iE&3sTuU?_gkr|=+2ڀ\hfM,a>yL„l0/@陭Nޫ @yO̠ū@Od[8[ԁ1l8Vf% ƒ"t,gD46(DbpzF(FFOJ(X,Qěd0W[+^Oc걶J 5N vbשX] g8cN!(6҇50jZdžɞtڝ|gzYesV-$Tmҏl_g q\FF4sȕ7!sEԃ(yV mTq|`滀\n%9,1 bS)ܴ۰zGSGh4dVWso[O.o]m2j0Sø,;̈́F0nz'^CNnؑ6{h{6OGP^"t }F\nmi~( =O©$mg*AxwQJQiUV@ `7Bg4`ݺm[׈{KqCZ7ٜ(`eTj=$,O,sIйuvW.t[]˿/4=نjon6J uEtj`]?[ѶYEIr{c %+3g6:j d=#J l@jRyB)ꩠr@zĜdo˘s\5Qρߵ]OD _9ͮ!|ZJ*XB߽W`n-kظ<5=$_6M+F:A #J_ԝm=#׶SzŤ#ΡBƈY{;T#-bv" o؃-'xT:ރ6#pn<$R\=VXGĤҢ<{lQS5 H?jJ(.6Or?RrEk71˂K<eyߐױEGau \a^IVjhյk090eifxz݈L גJoVxUL7 >p㝽?L`yr--^JEe8,\56XB yk 0c ^%^g>TRU- ;"Ք}* 㞃qy7q11Xq( K'`}Cfi C5[gjB\%WX%^(X/Hc@o,&4,?d܊6r`JFXq@#4QgG/?2j^A IzTI}Z7Rd!c}Z+(`Zt0x >8OoE3vhT2P| 3k? /!\qԟ-.ܠeU6;R8Ǎ;Q0%#?' M5W*A V4 F0)e}.Y|m%{P}&$xTn4Ah5YkDl[y.ߋ%χƩ*[nPӽoBc[=>yZZ=_gE3MhaAd8>1:ASp!^O%osYH<FUGmxpR%}!q36qzfT F׳t2++wO$O/g{#rvUIZ ||]ϗS\MD՝S'\|^_MK]xƄDAgPcHa,X(unZi㊠iΖ=V{wfr '1楒ĘX87`KQUwaL_y%@;6ף[I ͥ::,_.qmF N#CyFCcz$;vqx$++T[ '+1j tEȞ4XC;k.E2 SmӔQ~{9m#F:%Q껑,"!8Η@g84OIEĥu.$=j.L]_MmJH&&kAR6L'6.̈rea"}tDEdH] A|@bz5bh1^JHVIA!](T6#.&D7;rt/ emG!ݳC9>,j(W4AOqCNbYD F#8ԤU)SrmI fe>Ȑ DF4:Z|({AhD3m[C$1fIoʨ޸)j7&#bD?/wҐEo' H;j楚Q'f+@5ԏΒ)o䜲e [OzTy:C6ӀH -9VHl%|&.)ƥC: QmXIrt~/۳ m$)>(~ͭWs؜Zߺm˃Asݮ*NqcIEt*}YC4(D'k{Bv]5i:P 5nțP\ஙr(  [M$$Q!MKk4IY<0-YC9Mʀv"NWm>y!j($Dģ/Oڕ15UQn"?^aC$o AJ*:i(/Zjvx)}Pݯd!JUm*q@ra)"kFY%NY O¡b֭=ah>n4-Ts".gWɗ|^"oɭjBELJ 0qꡯ&bQExxaLMAi(${0|HK::gb@g(n fEOėbt T]|G׌Sb~?4SڔFwn"v>n5cxR@qĦ@?k9CLcUztz & _I o~b" 0'쓗ZMjq-.jut)Cf@ɮ> S-4!%r# nqo}j6G0' p-KSY΋z\XD}oÎ[0(X-|E<W{LCW2um0w/Q9[ lz,{TFy4n([1VrqtgHYi )P\+v+($fYC?s.TtӜjVm8\)`޲iug0j3UGhfn1>WuLg-z[t@x-n4•d--qc)״wM-;@S. 6+H9{ pFiwflŒF89vzeBtwLXh!#X5j;KގW5Dtjm'DQ)P^DUIv؁~b+|7R7Դ~$OS#zMѷxϹIV֓PS e9XU ug-OQ]&Q 'dd`a}:ӡ #xly?0O7R<3/sπ =pz#rK0<]&QПs×"O \13fa|W e^N |i>).?3"f-.lx0:0\C҂v1IuO't6w{d@'52'3L^9{2~/!(EVbX>`,L)ƺG2kэjRϨݑ] ^̹|w\[q.LnrOv*4vʩjHosps7Zu;?sH?69T#W[1Љ4WrػE>~ԏ3/U\k]R2G^*9"VVRo#̎`4Sʌ4($LuI@bו ZџU^&p'|mT׃G?PeU:>3G@g1= O,=FؾFYMQ0Vh ZdoyU'Í0gTLlKr*?ay=zf`vQ'$~Y24.+D2r6CJ kl7΀Usޡwp?0} +OL? Ȱ9st쓼Ǔf9*E?M xkK ZCtkfM=-Ad{SmjT4\Zݎ)p=Iez$g|C 0*t&xh}O TZooԍZQ:i*تku)iiL̊/zϼlG/5ې8ovq7_^gY ^&0!ꨯ5֢z$TPf)8+ Ԡ&&{_gA6ϨfWL(t;q,k䨮Km/5|ˋ娌7GgAMj#a1-~"pm<*Ra4j":@f1 ]L2 @4dz(00{s{;!ρ8XcE##[q&6< дA Hxy>Wދڣ`U4&T\oJ-j 5㢨Fl ǿHWhb8~䧥S̼24+gUHb@sx~Z~mgwS-;,|SQ!3$%_H rsϴGҜ=>HpI_ yVL ̀8O P9eFQ*s9>הNǏOֳkIJC4fX0IoJpr >+HI"gFZ[֑YU5% w;1}j+©nU04y Q.pc+_mm&z]Gi][!эym} uEqh./o6ÑS[+h*Q8w:$CXZ0I$W~&FEW_oP&N:ʕ^@wRvXz 1;/VNh]FpM4:&bXʎ^\TNY k:(VQZiH-BBx$$.Eal%2K.Ēg*b-l#z'vP+XcT?ۋԗIĴM텒Nv+vǓvb.=" 8wL %Q[ CvƼixYlUfV4adoSqISza6HY(\|~ҩmAhǢE?y[2yt ƝrH3, )3xi4@t"$t]^4#\>Ѡ}۟})@P[/ o/mpw Y XF֋DkP.oNR2*aϵFu찔:Ӗ4Q2!90E7]5$ e 1ձgҝ bDO}D-6haP꾨gB3ZY_p8=@ ҺAFĄa#o[l8YW<-2DneƯ.qVX;$pES d#+H{ {yܸy^ֲ6-&C-"CЖBN%[F[jgV}X .V;i}ߴ77LB=itEe젬$  j4VG"/uEۗ> -wk:ie-hEZjLF.zţ-]Sipղ EM\Y3>b,'fv:ĥDsZ1[￟N$3۽DÜ``_VMi=o$=_g*Z]C>v{h=_┿k1vmSc42TVZb2_z3I1䂖QUrhZsjHnz,Mobili1{S_xQTٲY2ɜκ#ړ_k5h-@]t'^ߤ$r"uȩw1n-jȲ(7Bț5z9"VFncS@ 6n`x\H_`wCٴqgV'ݨJ{CR 48{&Jo.}VȶB{y )J-b샄On|{x% 1*OA3GV$6FP }-|3bH$]?cS}j8AMq/V &xVdORO1]R0bUkpPQK[2c3o܀2TMʧ ޮQ>2/ .:g_`^aۜkzׯYc{*AM-zU-ՃѴ񫰹Ra[I5NA?p!GT\+| oڒ]*BV]v5E&7zjT06f%oGxHJaHS_4)EQ̪<}dF˭Ŋ%6 @>҅P ^ l4 a-`hwPErukY4^_ wjp"g҂$dyGaKۗb3å}NB >Og6-~(CaHLWۑΩv:mJM+u%Ó*3leծrtjmVun?\lxJWe^{kKf٫]L0Y?P[j8)í+n{2?:647&#{9N_4tMiR76|*SYj3RUySY٥VQ"ծ>@wTl0PmfrUJ)a 2b 9 N/l߹:#^aZS 6C&IN_Qgv'7=gfJ a=\gTWhaN@E (0܎sL/\kxPf7ƕ.*vC8ӛ%ͅ!Y#uGjX@2rWPV0 =jtceNcC.Wd!e Š5) ;T CρWhO0Q2Q{p%ZARjl-SDvmeaf"Ka301 ;_jq効]HNb<ǖ*cm_w%GG+y`5@E|ueE'qӐOA~fkF@d&cGmQ2xyٴ=au@Y|A؁{eIyTXAU~)}kg \KY [oF澃l &>S\z؇p^̐g5Hɜٱ[ tNlCCN{CLJ.DeikliHN$Ѣ~uFO*! q14'hFûJ -@BF-H3ůXur%Q0 kDڢS}Yl}mYbg| NC(WsL-sscBsb>KgZMPg 8Zo :0CBm2arXuu]M9 :ⷺ !qS8ZBaOB|zu/hheƘ&pz),MezN0ok:kݿ)jumx)G547RsUՔLva4BOzbHT܍EIDYC-h@$]~4r+c6`v=bޕ%%O߅@23v`]!FrIQg4i7+%jXQR :/1baGUe,F:pMé{wx47.-GhlhAf}Sdwp(E?&~Yl}[ ɦQ̩@ VƬ=PH,Q OX!fsYYu87¾&+7&/D]d:z*kv-I7ݤ0λ-]ҷl#n;%ڕw}j1;iQKSd3 l{û)1>_Mܗ |֚åq>ѷUsn1;zǮ}R~VWx>lLI_d)3^@Bvi'$w &vLpuUWZa3(!I@J+u j! aУ, K_x&2h={OkzR֡ov37Z +Ȼ8Q4φ ]|i=>bGv#V.5!3mNw=oE' C+j'5K 9aO",)茷Osvq=xVEm(Y\1?zQQo>{ h%[m,Oi1N^3jT6ޝGar=ڬkƬ]3[5q~P9vJ%+sXFZ9%ҜcОhUo ^ܟX1⠻aI%ΛQ sh͢sP&ɓW=,.C~0 6a?s08P*-"ڛ(7UIfҋbab5Jݧ^/.03ܔvMGd!,_x9ngkK2XϪ0 wMVf8W:ZS؍i  s::ߔ&JJiF>؟ c<sTPIwx~vzURg Tϕ 'p,R&'9#b V}PuBYb=(ݮ:Gk9+`^נTpYoDO6*X tҥTAEYo`ZU'OCaW@4j\ʶs +y0 >DϯA+M ļe>N1sިrC䇦I'BcxN #*Z(M]M%!FJK\-xӘpHq"r87j>&|{v^ľjAqsf?yl݊EpN{kձ4W+KPCB OmJ:Beι w].caZ'ӳ pVRW=BO9 [TW}'E]g 1:6e%1$0MH>Y)7 uD,I^ o\vCѲA"t<npӰ˳/| zq^ʹfa^ϴ \ '^әiy}y%$)u5!]@kHgsQy؅>%?X$ּKS/:60—>)h-,LyƆ^%aN_0Zik7%]zg;Mn|^j(]tk@^Dcf(MoB b1o`!$QгöKljel( U&e!E I=y.ԟ">xtX;Wr"l9ajSx9+3? RqN >$ u1=]s%+O}]ϫC,bvjfjYf t߶5gbˀ~! M{gchiNKVa_n~ޱ P#6Na6'7R:<8mݯb6@'ʢKږVIh)"@4:(켭@L6@g_d-XE yzIK:|@%JW TJf"sŘEB^I)j{9I[VE2zs(]nvB06Yo6(^%ʾ+M\!0K;vK/,/?D7zju]bC_9PKeOny:"$ Qbŭv }*.0%׍h[xگa'ЊrXI~v9(6һ2zw(}0'o,.Ԉr֣XET'\P `^';"(R _icxc`ȥa*W-0$Z\"K$62уߘhvO CLDio4T|{ "2U+⩨_%|kUoBܠRmsO3d1g=|?q9[JɃ X2>NEq&H5d;P`o!uXLj7.&|BXg RI"2[+@>I@7(&Bg6'+R~&+EdiSd_7Q?~L 1JI[s}rEټA33n toa`5yɅPD oh}>_UL;%$׆Y `qk&\n $6m)$ݿ#3#h@M y WPLO0qb ΀Bfn [͎Cz?:)ܾ BN#OW-k#nU)PSr!bX>w̸'!휞 /1ţɺZ?4FR+'yՔd-E s,rO aP#М ġ Wutml)(̌r7Jd4tk>drs$&zIh|g}&C6Y8SX#Y֯~߀:?oBIw%K 7?pDݹmcf"4/rc&3TܮKAQP&YIIPaY c1+lV5JI12SsAr|Mlio4l/| sΪ7Y:XG=`~+ W}bN`E&~tfE JpmC'T=0rP:rm;,Mn}Z4;`cO%IOw D6r28ɋfH)>-5^)Q'-}.3Ӽ<秲`IK&fhQbwS4SF8oyݼj@VxJ+ 6wƊ {jܹ ƌ]>B~\h0覰Kd(NBNA (v, neS@ :yi: Le#IIcZ$&U6 tXוA./Qe,-Pv勅jJ-JJ[*`ö4p]:[v\ ;IBP)ܞ{DLt ňOUt=*_YajxƫF0]߾%l u|kfq ܢ^Nr L`m\%y uIl驮 EY6. Q\ۋgHg1F\Lp`8cS[}*˻ |Z؉TfBD0ӫ#[6ּwVXA@6v-oHzIÛAJm@JӬBDK&Vj#Rr,xOsvKo{t5%KjʳP8w6d25uN *$2d_/Xfg$#03[幕WKE<H29f8K K)v.06NB=0qo$eMTu/v_6v~ExE|obm]7>2qzNn3_a4|PȻ"vg)ع~Mzu Ʀ]1ī⽡mpuXu$k4EOeRӴ b+Z(1 \I; bt@S#*ϭ>#t7H|3nޟYxrc럓Yj_w,|MN9n@ף dL1}ia+N̓jfA3e& ?1u^Bi0#ib@|Z(&y#ڬVA2{uwv]c|7 vzq~}͐ E "vli,04=W_$0WTS mg}ֶk vyH%P-^lϔcD9g߯d0$R+9nUUb3ɔk**{A_qAAB!$ V{*?;b~J,bMD Df{3хǦeZf\>j[, ?h%YQ/2>S<3vy!8[qRCub+FHb[{**Jx82 a"~ϒ8z~_fq6֖Fth̷!H(sE!*=Z@H|3)]P½M|kNbڇ4[V1Y4ؼS+ DQV}YR06ڬBZvw@c5aa ޗ%b ̕pܖ! #u> @$/rY-F_Eg-5I_) ߶M <G9Y2YH r)HIܻq1J OJɓ.Q9NumMH4k.[4]E^r5Q"! LMJl]N[3_Q {I^>(Y][[x+nCDQ8ߋW7/j[s8cScȻ> ݭF WRyAoZۘ!C`qi,8\M$E""ⴷ 7źa?3 2x?/(fz"x0U@RDROX\݅Pi*2HIA  >-Dݟ) PQ}w sҟ6/]3!8)JvonzuokRk8.e 6sD=qA0D G4`f6UZ6(D('CjH.[hSP)-4 ,U- f8bRt9 .Vpe!p恾V.rwkZgʍ+ف!o+Zx0$d"9~Dw>C@Ji")̠\}~'ii;#{A 7 {){EťáLyAd^4 /2zfO!밎q*!01Rah7iyKW1V<55D٘;7%[tk;]HB=Cݲ<yhҵp>f=*V-5O`䮳rUt97'QS|GFZ@Xd^q8//drv}M968N30:d{b$ˑ'}cŠoE /Z 64/u$=VH] 0o\۵x#!Jy!B[vqR;^#Il +ga6WyG[=͉Bvkb@+CMåLaR>z|qE ndx\8ALqtV~@՝;t|g|:RMD ;+=rrqhͷEd$f2^fRul wĜ-zdV'{Pô"K),c%̳$"4߶ Bd]8)2::-0wӇ8F6Z-s.tb!QD>Hj%ߘsG$J꥽AE/b/KrF@ 3;61gS f3I:\#NgM2CBCsӹ/ ,3R܇MQ5[2FAHPMg۾^e54:.1<93wx&*:b1al;q ]oeos2_]'N 1[y+  M|YMY+i{%Z%5\s xCl XoH“g\k }#_Fs[mVjG/X{ ğ:`w[?LjI0/@Qr2dЪQœ^=xu9f'2,%ƹt4e8ǂ^ɼmƾZ$;\D~(u$cH^rO`pn$,)wАpBm(ʩ.Wn˫x̺jœ5b` 1HՖV8'{qgr [CmW^wEΟ"wʦ5 MP-fF"*c=.{FMcinO< 44UɡbA"zL-Fuay;䕛GOEPlz#Lh E^06QeRL[ Ad{%zi 9*94M;GFtGYwߦ}c\&{Ydm,.l5O*:HnT8ZANe [)7{;I# ߔ2(1{hkeoffx\j i!s/X0vהT#E$z{AXot薊KnN"x%R7CJ׹_o'^[X8LIF:w?FCvV7XhP$UDh! ` ?D-qpEpSމ9%7V3T~/ %\RD+#)먙KmN6(O~!LbW=KJ{4QT 7 ^A;22%p8h'lV"@IosjP' #Yo*lvv w/[>1~Ftݥ468ߏM#Of'z C/a0L&'sxU$6y`P{p?tUwri9aU"1YEWkXL&x[J.dXD@F聵lyʯgN , uY OZI]ik-5FŶ 5_ k(ŢlޔX)>*Cu$ 7ªaBAvpUx5!LuӑL(b$пn8TYd%A9d@FMԍ FlbMxݝ 3h32FHgŐX; Xv̹ڇ;bzwfzĚXBy06j~}1cGRw y ,YE<#'z茽煟-z`XQ2sFw1q@9r_RԸ/vaJ xa!JKY%4%%ؗ'UYUq+2vގTcEs .ϵU|;h2GmR(OQ3{}U+"׹`j P`dbZ<<ҥԭ e#iD?gF̀B/fN,'yԇBuaO[!XbTv?L'RZǪ aF>w}Www}^}RlS4?Y' l+]=%W'+^2Yqe0$l_[w WQۈK,mY[tXJсk+FF!5Bq-1\x[)#۝ ^[Q*@pf4hP˅@[\"@_!w& |JG4;%8ɤ_&cv^<1pN6!6RXCƶ9NrBLft.0/4Kc$T$dWFDnȲSLkuG%*m"JgpI}12<4& Kيϒ,s0"]V߄E},,8zlTN'A*-cg+J-9׃<6ĤHl3#dHPOma.9}> ?jöA~  y p) Nz\%9\PJ/@F0 X V5g{O,,E/*8qI mW`h5 #[=!i<#.Tf\snRӢŮhs ӟ}%xlCt&مK@HfQǮk^2@ zwrYլ n̠crNp]AItM3)g "51`49ހFXG6`WREMr7 f^ J  4[N,E<<$5-Ry8ةXgFB!f}oNY!̢SKm5.`lCVG:g=_|{cŸI ٽ?iS1hy1 &ݟ2ET9d)k;=D,Dž4]}:vuhX1nRͼ]sK6-Z)E62/m"v[قP҂~nH N̂;p2Gbq 1_m#z UgA_#&W#/q}y|?nr1 WX^ʘa$o*B :xߤ⹹pFw)_"e7_w[_ڍdVET V "VJS0&\$GT}+k@ޏC .v];"dZ?83gk@pH8Rdqui8DT2(*`%'@ ZG;:ꗒ07kD gxuD) %g4~Ћ 'AT?hpT{wf#",ةZOs+|u t$D{!*xdI&;ȗaxhc=`LYUCbo!(@C0]r*<~kx'r]4Y.2;<ZBZ뤬=Y8kRq[U{[#F2WEzQharAu})EGMt6(4[\LO-fwWl=~@iIʖ`PP2nJђ=2}v>r;|%#QhoC\I<oKxb{- 1ml3\ܗ*:c0l5ޭ*C3޾e*qIi$D]f3O 2Z>[etD_s yW%έx(- / d~>Z_tAq뮹GfnQ+9auheEb7/=ժfJy'$[&Ճ '̘S no4`-ȦPvԹ9w ,^¾:jYT|ᛒ4zo<=PjدZ-D`Y;f j**%joGUåF#3kɧ$H7ЍQU45V0uXψ6s)BIr2cVvn%~,#82w͝1Xr[;몶`VLJ .9/Әw *cy/A_IL~LImPtAVW#Qx}D,rBZ|Eq1<Ġ,[9cLO<2OVϗYW#azHIwU"̰4(rIq/ d ӫw=8lgm$&7W3lw}˳$+(SjȸgY''5'pݖ"x_GJIcuU|F.0EU b8\ܽL+a%0THvXf +Vh΅,yG hf g= {zHu r.Ng?U=&5~ r 9ƫdyx(JJfr~]gj͍?'$HބQ:hkroOȔ"DEV↊n]z 6AϻLBݎhޓO% lM?J81V<[#=GUζ>F0VYcRvBI@F%bw.<˾Tb݄V'FupO:<5T~C U.4){md%I._/뛥)~<{ v:CpDW~SxL_݈͡isiG+6Z:Ą<.0CV&8Ql04B/8;8ǞǓ$`.|3]trHĈIAקiu{y-EZf3wya?Xr496;=Џ-s1oeYqU:gT{!F5нS}pL)q0of|^{0"OBgNzK O4Ot)yw!ױ4\P]{^\sLUj,g2Nؐ0={#QK?/@@rw9WXAMcvpˏ}48T}5!Ϭ!.NLwwh%uG0WI'r*}ë)$-wZQYD+-\Z 2gNr5LRAgI Mwvmu1"V3ne"J(_W&K5bb{̗Dy0:Pij9V$ C9CVzB8W/YՅnM1i@$8!a-t6s3iao5 RѼ{e 埈<,jdON6K q`'":׈:}>zT^Kpyh[`\t}Vy”oʆl-3ӯH1a\`)$o¦卒 x|,4+)M8|Ue}fcP:ן-d=(0S`T=׹ )o464x?Nn, Ҏ逹aZG\ĀCC~,3ot]$ '8XS>U,_OUS5[\<C=$ =I!Ę`<SvnB|ehۆpN>3^ U@&ΎMj,s bpMތV bfR@hK-pZKCw3K,WHѡ K%0rv}' !D9a"Wr=Xl)#t< tCFd4fu0v~}y0!7-@L Է+u[_23]=VvZʢ?[+o4'gg<z/daLl@ T;9yݩYlӋ (P0RThɍj*.!y]mv#$,D< F)Huy^7( +gLC׮X<( :%i;Q"KD^%9hp%!Y_K[U(x;{}Q"0Al陂0bX1K%یVHųTdloژ|ǯ4FgSi],c~4#'l2٩DMl4Z2Qn1'g1zR Ǟ50"t- '8u1 Svyd)F 998̺M4.S;ԑ|A~oX+sgb&qV_",_?xvp&Ek 9J9h)ыƉabkSNzH7a'6^&CPy͵hkVlWa5 z{6{ Lr!8y*XgB/TsPKUN<A]e[eq41Yan^pGZRl[ֆda]"ϸJQ0ȁ1H$ {8Vs0hb<(ϝX yy\oE7j!|Gfz֥E8TyPۛM>13n=1nDP'AcVmjhcI"|]p(ݛUofФu<ޤxIoLȘ`u##@ %:Ԡ厚p,4Z%]%%ѓ_tx֟ÀСƣ^*VJ:TJf??E\]\?fXY“VPv寓Eţ@>*&hV1\|1g-Ă7#urN`4G`%<̀eO,C28Ũ*HV++/+h1:OzA F|=)G_^; ɧSGK?A R[)51ՍlӒ_1p&Oĕ޹S.viɁ/ˆs(MFը<3G=xg.5,'`]g`~TwC>Lm)=g5-G9dQp ^,ܶ!|ð?uDppkv@Ru)rx?eTe:Ǽnh/K>!$I@mݰU0Yfd8XM1Kuu</h+LZFVӽ޳~S~o/Lkߐz'chmξ){B;凟MPMTI`4ne@B1)@i`hK5&jns HG#^͢tts0σwZp΋e`l$:(\ Ü6X7*2?i*ofoCd!~hhҚlyLm;^#7_}*LS#2ura&ƕ"ar01^"дa$,̍`3c/jj.~P絎V:2+VF\rlQu#oucsp5;CdͬU\2%F3:G]gR,`w|a:.to~Kؑc컵r;j B '{4.a]b)z6dd+B;~z:1b4BG nJ6Iqgǹ'^~7 آ w.tFӷ}s懶Wvڸi8ĺY$Y9(ucc|)6{ҏV_A{֜.Q{,.gF3 *6cOk1>;#w,>XDsuo4_r(TD(m"aEB_ųE{Dx2_:#\~5-Sr:CLK \+Ham"MӌqU% W?K\M}Mr->VEdYDZuL TUTH4~+0ԌȔclUocP.S(eu% ۽vE] wʵcO*RE,&hiS+볦 z-1mk\ʅ6"_ާq=./+|laŌ@lܖD$b#ll'+xGs+jJ8}ySٰLE ;ؑƉU g1 7OЏ !!? 8ޒg%!^k]boE`>ڏ['k[nn *@Т5o -aoPg$|)3G ;e~BЍJsPР{H^tqȏuV]CBc})h.i;z\V FtժW胒ARԩq)-֡zU`/M q_y# &C* KP@m'E$ ΏaC1DRT`iXA; mq8qCk>eH8" <`\7JWРXHv@¦  ̟|xI]`X̟rmpDxW\Up{Xl`hh#Jɪx5bى}lWWW~?L×YAm?o-svidT(aR_q 8WpFˌlYH{$%8!jϢ ?hՐMZ4&67d&f=`Ru`6vw(Zd޾ʼnNʛ̦w YZDʽoK_|52vhh w-Dcۇ2x ~Oɝr#˕l/>PAy!Hsb!ۄl(8L'V̙+U$sn*p[<[켗Ȥj5hN'$[ ߄,{U[(^M?ivq[\Tr!ET2uH2CLkAz7ԓޠŲ 1֧-ַH`f5Bh+<9W [])mxy!춧 Pĭ,5h{OILVY[ ^^EEsX:If i ̺VqYtUmyX2)m2<.v9wi{Ea@#2qg]@jbI]90I,F6\g"kK@jNid'%@8Ci}3Gؖ.Kw#dL?~wP%Aò>#8,U<|^|4{ۯKnR c"$&wO0{TN:. ^34.bT䷧׸8 aw"eUqzRnY8k7r(S!0ªB($I❦7@xBBAI_TP(7K6ڒA^"YOX, hzhPz!ލ!C3Anb 'LVAxxVny%V#dYswˎa:7 55 ~0Y8mD1 61KKD8 EA/x JT/7ipm!*mo8?n5Je>a-;'J<#/4iڟQ9 /[v9JRJ0'bnO>zH$ bHT #sD*!)CJo^!F^1gKiH| F~i$™$#v{Q)9?6-84똍Լp؞a 6/|Gڈgqm3XYԴ7@IG-`}ҪnB>1%_Rd7ٞ<ϙ 7=\+ڄm+ƴNv x>wN.UFhYkF@ V"\h>Y"9 yz*Yix/- kb;*V|ű̒b9`Q.0>?QUtɮir˝ +̟Gһs|C.+n$i4(V^Ve:*~VBnrkוqCl\y~:s9R`&^ڻƍ( \PfZGX2cA[ݰ!fHI|O~TKE `"wJShGZ7{qz]-h702e deL"b6N*uDNLAx;J njvDn 'ZrzW$s_,t/*,dbS߼^qJv !uKo*4)][ f8 $|I߼#oj`9fQ%Y<-ʯ Zm(zOO33ڻoi_u'{X6Ҽ!b[h+ G;%k3c$uM20#{WW \) ]eER2U\:{*^q~u:,ґL n/8'I`-7Nd,1 i4ƿ~HXAqKa^0-K#3$1'Y}ɆRgk4DlEXT2Ej!6(R?!˷ߕzkJ]^*%% +ٿ(87K8Eљp肔+ s}G^?xNeZ9h-f- :y8$Q6~RUz|_m,}cĕye r`T$C3c< d!s G%a,N֠ڨ-4Z('ȭ M\?*6 *??}9] }[W8 -ӽݫP1.u^QW7Ngjfzs WRU^Sc]OnGs@5ylG=(FW%6wH<ΏԲd%ݜti/ E`nLb9b9כe r !o)K1vz/c)Ǯ^if̓m0 1\HLn> Bڅ ϾLlvp^] ,8<,U{$ݴG=ޥ| ~{5uçA*ۆ#ϕ~gL6anXL,2NG n#r8ZG nt>>ڡ {pWjjlJoK WU^k:\ѽz)Pzr튲 -!<# V/rJ߅qCJ=bER-|ugZ(I4"ɃHО3 iD"в(NA#:QA-G囿GH هZώꬺu; f;ID\ܰ^H,芀 g{L^ 00`kFī8e@s`#O=Zpr/WPmg<& ~/3<ӕhV]d 2MhCMnqVgaX&̪SP-ǀE'Δpv(aIKQAC)6KsIb}SٰQ҅.s0!RO{tʜ]F=rۻhX Rt"X(dC΀t(Vo|gϻ#MY!؊cZ݊P`e~SY݆n|WF8C:bDj[nd(Ҧ[i41u~mW=a`SAV=yɥ;-UieO2|zAq8Q1+~L[n{Q]I,H>\ä\isFve>op4s{xNKNi,6Gqj}O w'&ݦ?,B;hLԱ],O Y"0FzEqn5_ݽGr Oxd d?b2Q,(SWi9PDI~pg KQVm>:d!JazGKdIڽ]F=5n`-b=x׽U##ZTIΰCtF/ bO@Xh.|ҞQ(F JT(DPA0S ڍ6ţSuRp IҺ.?yWQ[>xB_>/>/kЃt>+Yn6~m읳Pk ( }H Li9~(tNcWCd΅15/zxA;'\b"\BNyDǪl+YW<ޣ5@jId\Y4`Qso~A""|C2Xq]j#x4 ,0٪ɦQLgҪn%U6}wN-;$::4gf0 pna p srIbe!%2<ʤR{ IkU x(4Z=?31o,ظP$HbJ<zk{?Ym1$opq?ۚuS(O1h}=n[@Vbz-"ABib wKmhj} ?A"}# sp03^g=b'\Q/ZvcN9WJй>P|yT!`]> i50?DBL϶ƉSGtH0-h!ޣlv;vU]A'$j +q*X+QVGDlj%`ҘA3.M<-^Ȥş=R~] ]Srg]:'k{Vpv/]bǘu濵&..r\$<.kŴYcρ׹_A{4D}YQ=1g]@gcU(f5rg:9 ? ^;p짅,vR lJf+kXb;!vNȣ>k*"f`PS}񏣶Pb-aaUZI V]\a9o r34kaT6>Zg(`nKmV}巳$~V N>kw?lof,Vp`09@F4nXg"oS<^34j*S8 21nWtj֜@/$5gT06VH;?8}{vguЏ=XhAG_LroN FOŃ2-N=Sv˽oqx*E\8v(辈֋7ߜ#s:2_*+K`?G(Y=cAep'-m~?$Ɛ/sɘso'g37ieUZ+\z+l|4D|%G,[vXWmoOiv^ ו !VsxYs[B$ΟkAwcP[̞C1z'^YLZe?MaܔTtT{Oo]N!*w{q1&+l<~[*,mQᅈ;s2<hwvt:4SY(OU0v QIcgcp2G jeJ(hHk'Z'+# 'Czf~Up^bB ^(X6̳+ Du'ԅ4J{D٘HcHDN۔89B^JV{cP Z ԓ0g_3ƮQVg69Wde]qqgxt0@c"8xG3/,ZACQ<\;3kmQ`)(@7 }*أl{6xLs$?,}۝}7wfۥ~UǞ2t3 +%׼5\_ҥ<ϱE5e6֬1T`S/)~ҢA>ڽo!z^&w]TERӝ٨b$c~`1"T#7/+KӞ_5ofdV+LyrN/iԽoޕO-n2ddya'NR-p3A _WaPF1 \mxomH >mW|_t!-]HE#G|+ 9f6_E13F+L2@J,niĂOnx )魗ZzXTu7K9 3=1/IRN+Ľ?O" R7,p|OV1_?³s]wD&[}*OLeO׍`t ƞcf#cтE{=eǨ7Lvrhm~.Wށ !&_0xoە8G,owq4K3d/LՃ5zTi g ^/ VRV{ߜU=P|A HFK~yiMCF`c! o[ n13 sJ sYJ`0b6mEiNZlI,!eIf6ήD;`vy*Ium) GYQnę\v)c2`{Moc<QT"opa^KYC37]mPcDQ$2Y3^?e8W$*|?v4B@%t->,]J nFˋ#kLµBl!4ht_p@^e*;$Z O2fX>,=mA*Յ7%ZδEjزb0Ul3C!- d@lNllsM 64{j8k>xc0ؘ"y殍܁3+f"SbJHˁt+t|^q 8\5zC ^%,>n6ӿ2Dd7u# nh. _{  QCH0@<(yr "l .W6}RŹ S +,!Q[ʌOJLEM xEg5MVO`2v!$epA-.6E q;.9=#+Z~x z O%is%KD̆`68)ޡj_iU :;pR-6Թ/yHõ ss V6\T'1 T__"-O$|PvkaBqIߪLzXKWeW~))<"VT%6s@y dRF3?KT[l @'JЩe )N8Tnf{DR}fig]_*̄6|GYĵbEװ 6̙ n26d"rƱ꺛H{gRZQR^0 m]7*%$ ^&M# Y 1iuMm'JY{m=OU-eyW! 2j X93ܱ;]gٝO 2o_{A B]C5"ؗz>Dđ!?rbktۧ2 "~ ?FCϙ1"Zd~06M,Z>SǃʫIoa+ `btъؓmBwwas޶G+m}*Rj,()Ȥ]N[%4MUTc(`UgC$/d}& 'mg8Y$Xe9C^eRh\XKs|^EvsprJ촆':|iE$~=֓X}F#t63v53"j{u怳B4#\^# ,7?*iдtbFDPj|D&޸Eb *YyJ׃:g "L~jgI.zR,<3cI-ې_mfzȈw?y2ǞT>MMN2(S!S)<W `f*ŦzDʃvL:]C1)=%F86bPx{Wugjn '=~ZȾ5gd鿇 ]<Ќ2xsT- ȳЬ'm MbٴFWUsSrW7mpDљ$fe|'IiXQg58N%7`Ɓk[fط2Ɗf %wF۾ľv!NB_ )U)CI^xFxC2,e $g(2ݺ٤%8 f6)#wy<8k$]9iW>8xyNAl6*f/iT, =sP<)e[!'ug1RG7N%"}!"0e8ՊpFAL|vӡ '0 ѢyC {Ÿ5,#7҃26`-4JipuA~"w GY1uu_"y=<5JKr=Yn W%k,(iMoW,pc)\?H;?I*?f)A`+^X\E| a f2#h-4/X 9e fIkNh"4?l ZHxpck@MSl_kszBڇb<i2VySA⭀fŋԙ76fJ1:I Xe/ 8p=ȃ%~V=C9)GؔWJKYZ>ڀyhh è|+ E9dcf'R _dVbfR|zW!A&<,+qsBqA-S3K-XK£Rz U*Nq}^)‘2XFG T+\b)FأU ģ6"KC0jAxN+ie뉪̥=busF[P%BDod-JH`)& [ط2OF՝*缪 Se lC{Qh] h3e Q>[t~7m'Um;PTmqݡZ!o-#=M{9Q.hXAKnc|,+8=԰; I1WEN]>}Icc UbbAI˯Il]xR< _-u,ꚳ !2? 5x$4 jl_-}ddCE=d~⣛޹% _gua5g[{֦XT!1K]#,.Ȳc8cL ,~jB-EtW,89r7雟SV|k V5Ȅ,0]`lyQQ YqڂA\IЉ}C5+t1 l)Q Rԛ^{MP}sl(EsxYݏ !!$J8ܑ^'s7$^:{^tHCݲw@}(|Iiטz`XUG~MB!6(%F(_!rqoĊBb+{ !WvNjS%vXbB U ji'0 ^j(z43D/̓z[-PvI`c) c&֯d9D_k_/MyuXZcZq0'ag7۱e^]qT\Pl!Qk*4X$TC el#ESlj,q[yQ chK 4s6Kj|V?R)g{0i1yvy}@QՙbbGQ0z9X شyћK$m(=ۜ!pf]ȿd` 5HUt14 +[1b+TP);jЄa`zr#0O%?g颠 %_ \}qILulE墿zw bqTˆ^sdP_1l|(Ki0{9m3#eax3T7T'-AaBfv?[ Rߡ=؇5M6;Y"~5Zč&`FNy+?zJLpo=#8#՞ʤQMttЗYoQņ()1GN92`^ρO#=';]4[l$ F97 .m+m*W46 5EjA ?Dž,TaL<ӝgGh ]̴AF:xn'Pt4U ELM{ݷLM@ӿmRDvآMG?= {ʖ ׆ pxQO3YNJ#*cn?zjT h*Ni$4ul4~:N+^;yCy#O@NI1:Hm'q1CZb)~}MW(~LαOA$( MAs9jp,!(<5=F\-sx+;^QW YUUK&-S^.+mhs2+TGrA"IQ6?"aUORY>Tu#>dk0 0Miiv2%.Vrʒb/%/Ͻ sJđqlÛDGrV A̾6UeSfX’kwи] b+N2a&ttt>jk+FH}ᒹb ȵtPbdL~3!b 8!' n%p622}2Z)E>ܬIytyAi=XGX0/eȱ҆^RLfK*ǻې휉Gƛ7 =13_I9_A16/n  c_¬J8XkM-âgRRIEg -!g?23O.,#A7kXKk)blc-O¬Yw|';E*|| ?)y fP?@v8R~/k jRH?.BWY9%}8*[K~ 0=pӀ|N_1:59"g̰\Bay*zޠf#pa--3A^3}L9@5X+`,ziVB)RA>2F׸!o>9o$kۅ^^I֓։Upx|*Bg4*ƛ80Wu * V~+^N@8CZ6Xz)v-1fug%p66.!0֕R~!J>͍"VʑfCOR>6K7iPK_QZ[Gm[FdWQgQZӍfWWUoLVwO_sij]}C($UؔUc͌+)Y7gȮOxw&i St{Zbz(RpOOᶣ$@וs.-b އoU^ ςoYG9M.VIW2e'ґBy)WC^m3GT9p_cU$,ٺs R3sLUp6yCrV7ax},`C[0b&@vp$gpnb֔  D2u/tq7/G)`K/@e~5Cƺ-z,[BVFj D%pjAėt 4wvAP NzQJe_5aӣ$ۏNFAcc칑+,ܹjMׯso8H%p֧XH*IM5/EJI"((E(w1B&݆"fU_V4JjZ/c蕦|ZeFo>ƀ խb6J{[Q,ϡϹ\LMV-cMn1Wb~xe=\)]+2I Q~#d\/j=(/VMza(U ~)4ˆx)BH^H#)C5s~v 0,=.nrm0cCM֨R-+klGpMAx2UbOD^t> ~JaUޟiȋf0Bf%wuZ4G{_Ė ٭AJ,&Ǐ0iW~! \dGġV|X(cgEQiI/h;Bʿ `izhqCf$zN;p^[ &ux&uz ӑ0;Kf/b K\bU/MǻN0m6b&2%H0p,P>2"ӗC.y2ƯQ%yT 4;t`ouލh]c7lklb\u32'4p^d\gpVspu89v﫫O Johu4“ʜ[{:S#Q+,r=W65/% 9SY TE=-{fka`4TbLAHVT^6Sna98.K[~AY859t%ko[\H496z(a JzCv͢BQ*Lw3uXg'm=Aa  ˝6nQ_V1TnP >b[Z1_Xfh5m<_#I(q=PוS%x`$TDUuc jtg궘"0F_Z1'hP\xk02cкLw=G4geTp0&}Soto4!-:&W)V(s)54"NBX.gލU| Z&%Bv 2!8:r ƵbgCqT٢G2;QpkQg "b^~ ?Ȅ>:4 E+QF%1n3( <߾r=5DrjSTJ؋0mcڀKLQ\2aJja͟tY9˦ /ӸNR\0 ܍:0L(SEp߻bpg;5%]S1!|`FBY7#t2P"%ZgQJ,B6shD8AD"KJ#Au +&zt&)G5HsߊXwNZKjvJ;HQV7B#'ݣ7g erz]x#LatX8K 1?a Cslj])fjŔ C?O<NѿA{i^@(u*_ӒA-BV"*C4C ]Bn\{#":C+ |ͺz2 ox<J~{W1ׂKG}6Y/0 sVH)q>(\X5j.%2 22hDamB?s?Csw~Χ2/7 i9ȩ\Sj=YF3J;EEǾJ&M|֓Lbծ𚨷˕f4sɅN{S籔,H3*eR1FmB nNN5ƩU;i?p8Ojq`gHP&e,:Vw/-#V8ccv̔J7Q4^)_xǸx0F>@@%Bs,+k^V%u=3 tlU+B+JR 0Qc^3ڧ"?a3FsRW`Z2+^J$ne I†@s}NLeB`t%4@L Nz& pHu}jz%!ͮ~=L|JR cn!H(1>2gtE&hM`%Cq%a Kg[lЭt~J,LePQVtܫS66W|fjb9̓PtӒ(V?L $Ěk&4-1Fq! \M2JgK%E XJ !DTC(o s,] vMpfx]XMeOFآqzu_>Mq?2]E=+UO K\ ,mKh.leۃOvS.]Qub@ai𲆭s9| ѕ.sv<Qԙ:;6>8>+r1dFtw,xzvG<: zg R25WagZY" ܊0XrSU[za4yUgŮ{~6 y(a \BҠXԢ`#;adx/k!')c C> rJ1.RABeq1X%;a K` #4іt-EazFڗc,ΠZFwa]] *L_+ IM}}=zEN:?I|'i8~(܅'<Ņ\7Qѧ J;&AJqD#e*הyp+Eߤ0vىyGq[yK{N&ᧂy ĹS͡'ov"~pFi5c>"}Rnż6(^D%^#.2+J<r#PS{\D{ lw7@q$9 XCa jDY3ٹ}r81Fӛ;@j!^&B9Z/r]2t*,/FDáq:NEVIZ]@\pu/ bv6ߙv<Lp9 +skk\5o%"##*B!l@t$2lũ/ 8- 3֒"0.Z?ߓ#k\o1$?(qLG~ʻCCN:)W2lg~]-IJz,IC\sê8p)ggx{mfUӹMlYHE;3o? CGPm][D9Z%j4g@ .!/$͑C֠ɬrAh4[D -g US-9@AÎmH$LE&fxKou"4Ex޻Zb}S ^](KJҞ ގ^Ltj s P+YmUQH HAGj!Ԯ);dya.>KҲ)Sp'u% ,\ Jd~}̈́`0#=]j&C1*+_t\ k~UN7ywy(^ăx@_ T|8/7Q7T74rҁ||@:vH|pݬc8F]*ҊVe)\}1#xI5YfrХ~ [)2$ū1@""˵z>, XfWf_sr A+#,k[+r Nid\)o!ׯF^3sqDΝx7xKgl&A/ : 8h^a F2)= BWRǿyRYgξGh5.B*8æX0u^h$cHߢzvV#H SMT5 i6]zWf xGatP 4&16 ~7806۝Mxql>,7B42 {<1F;7ekJN&ԩWknr}cٽt2'=u2prks"3jwugUF F7~?$H8cmW{62VšQÃBҔL)1s۴8u ApwW;@!մ܌W-NȆY2-egPTa0N /2pZxvOWV 9KAD*4&*KPPGBӰT"Д΃M,IsL6[OBj(M[銀, @g6ǣsJt1jhJ-66Mݼ/C5DR\XֹfFC{ FvUJM AR{#aJE8+},+42]]ܱػg$Bz䓮xOˈ)k\} Ue,s}0kX/]#w9%yYZ "Kr0,ZLbF $~{,qOt3rB(;Q湶/9mȹu)2\H鬕pGw?3V≴*]PT"$׿P}oѺA K^d#1DjhN1v vꦥ^ ,~QaCCõDA}:Ctgi",}hd`kڀ*a+2I (q`=Ѯ,H&_iuhb,t_i,Ga·}:]=}>]] <N}@Ї$¸c5Yor'Fʻ_AON&)Nl2;dXhP? I^h(4[mnzmݷykS.֒#b0aX^r]fHTeh\ͷa4ոj (K`eǕV<`dhk/iٺ \uZOR]=Gne6.p*+`SNR1N # 4&Ky`]ףf {=qBۮ AasZNčəhV; 0ȀA=5jЄw Q4vs;2;cH2_L^ &ϓq2oWhYbDT\:D2{qyQ:,sa 22!9\8II7جOrqʷ2bJ$B|jC*F )=ߛDę4@l?۔ <% y 6h|Hh) Iz]ٟ\=!\9FoJ_kڰ/*M)O+ojDK4g-M,k ҧ#P#?5+wbn%İ 1Mgdϸ˻/,>gJ q'I;8X h 5: sĝ-BpEC.FpEtB{Kǿma'X٩>AzdKSnjLj8A8Al7ά){$&ϛ;Uhz2Z}j6e(+qʈe=^9K7t97%_"p_Q7Str"$B{!YH)NtZX5 , Qm.jLi~W$mnI9c6d=x؇*&`JsMF3 u&ě')C9qvXM`+N}gVJ*H̹FV_p=CI{- :ht@~O fܨ}2FwZ*egP$gII)L1c)<-c]5 j%.f\PbÃz{JM_Ԃ1 EWM#J O٭x֡jZUf ncH ch98ܴɇp,prϽ(y@7b(jpQ'ԃ c 7)INs, #mcAO u">PVcP]%wTi)8 ^MchKo11O)o.VٲȊ70QJ8ÊagK"RaZj9:<{XhU# NqZy#ND{ /i7Ц!-b*q3 eha5yjvz=Bp4ձJB.<xXrr RL5>C?j&r9U\CTV:&Tlhff ZP; Њ Vpi  &XJiӣ 9I BjQRIܷCF@|.݀0whYWk4'GhBP'CYBE#R x Й* 0j#ۍur%`Ks*A]s䂏?{7+X1=t*f_"GU =_#D᎐ Ƀ;҆M$ϗ,з6/ZSP۱3uNԥd NۈuS|+z3nުǣ oe dxڼŽ߶'$w#d(^Xg42eW׀iX8y&B. mڍ=/&=|gkʉQ3gU{$OO"C0gWJ^]}+|"GknWO_YAhRyD:'W%.A㽬l&-x@$';Gqc=KfHg%t7S%>$ Y?k'앢j5V5/V7Fa6 0oRZ*+ {JڊbQM4M?2Ǘ )֖Z3uj>I\*>|bV%j;*,jISJCnx@5CAuP ٰ?>)9ڳѽQy4% 46G&hu O ޶ԹLxl**ͨ eP PթPkkrU6$eZ̗"#nTdhۓ&/?2xy$aΗ}+Yܽlgi K~ڌ3@i0.Y1ܸ{WTkHA1G s:2܄:|pNUڢX0qlQIԯ c~jjAm9ja]jꏏСki¼9"-Tgt!GFgHmLdeX!KpqmwX|ӫ+RHK*i8siW5Ҿ_HԟE DFܦ=q-0_B;}bSMVnk_x"GTd=쓶M"iy=C%7=n_#щ_;+S-@2B\V7;}<'DX4MF{+}TlYT]W)*a8't$.joeq)lBi dAuU\Y yH*Ah (!wFe_7#Q6#[aHLVB,6nN;&)C%h}fF Z}}cT8crC ݲ2o/7Jыܛ1o&.Dkekwdqd6۲\Sc~GwVs>8e5HaaTcZw5kp {j ^zp{=ݏJc0hfr;>UPH X\gᨷx `FiB=L/0a ۀ6PQ$/`Ep'Uk wHz'-( @>M~X$o*,A3knmXUld5Q^Hq=X34zpu-";m(FB?!"--47>, 9&r9$N{3OSsEw0ORlM<2C3&-dt$dhft9d\d"@[kO"BrӔDᷲq9 ItX)Mg,akԍZrtBZd'ES9Po`x)'v)?)Z5A,3 Bh$D )ہ%zcڷKނLˌ- Nπ^E[y$`9 _]d4i?:pM4Z3lm (Ԁ 7?iʂ;ݜ'VR2TaCCk>H_%oø9'~F<5M4HwyJ0n6F8"ƑYe3(ǖ:MVưjW p2#nJ7l*'by?e 34lxk 89Ӓ H(._8GHm'"RCUm Qr"0'"]pZAjK|c 4 чH!*J#PUD{a;7X& CsU6F/)zӒQmgP+{w%j$D$M'y ]!\p[v S4a(2#C}ce]%ijB-bF9D1ۯnh= ~(͕X%}er?WyG2c2izH)(%=TɛA.H=uKXk0W}߆cΉ3UUBNytZg|Ы.{T[!h{L| fwbYF%yzbEMȾL!֟ϧBmXV![88ޖ6:?}t~=%/|u=!YY9:FWy#!c fDZe 5U@fVJHq-쪑0E=zn`>&8E.l+,qXY'=ɯ~4$b^~W_P=>]s'3f~SΤzUs`GߦַfLyp<7 bHk9lka'Ϡ})AHiJ?v|=ɡݪn}ʻ6W##w) r~ m 06H*ȒYAʛ;ܥV|;ZU4_zK|H,GwuϞw7cko}M#pQ7ױFVԶ6K~ey7[Jj_ P _FnlII|[sY΀piű @>ȯN];izN$Ҫ^y_g.kaN$O03 wFNTg?/™r Oި$V& % '҇uvo_a7gL2ݭPb?I]}7x:.o?#Hv\gwf;ã8p5-U= "B_4|Us ,#\~UӏHcg3QVؕwѸ=]'ZhDž]#1⽚op*|F=E*֔r#]x m*RӢ}hĬlC;eIqRB~cRg$*rsԯmRT|j M#$|<:#9b3?E9HN_z1XP)6f =92adtR꠩dD"[oĕSRT1J/kLw 5j3p:O Đ1X# &$`YDkx:z N")?ȯtg6&TGtwۏ _9sZ0{2 ~`1Nz~?Z79[XL˄sTrZnI+Q L.3yTIF5x9 ԙK^%Ӝ MZ1 cꎏt%/AO8'K1'a(Nj ke3tDw>k2VъLZov'V=64y~'2SU;?xTe>w1?^FKr\nM*hM*xz_j]JH;6q#xlX?O!^tBXE9yR-Otka2}߯NxaoߤCbo(ڣYWF@&6cT$YԆ(/Ǣ@,Z]zJ {ı%Ol *8^e_~Y>)&y\׀Xw(>/g~rz1]hE jȗ:cCTaɉyFD" N//}A1 F2hmLXp/1IJ7]ʼnuSIDA"D?5xPS([^4_#w``Qxz>S׎FeLj;Qw p˷.&0.1$u ?"kWH8:;bVmF{d$H98&>u dds98g.؏ dpI=$? |6ɧߺb~^S G.(r=j\R'e(8ab$H}*nF荔K $/9}ֵPJ7N:꯫Z#w=I[Rq\B%L!ϖMC"Mw[P7 "o#j%4S?G@]5W_HGM 8ONPEUݦEBSF!!:wʵ<;WFzSBJ- > {c3ԝ]g\z:=ێwy=$4ec!JH,rp*À?8=4LKȂ֓bVPYH-VE?<"N ʈk1>_tη^\I9HaYNe4OV(*W!}+O0!Ti!K{jDBB[k #תZ2v~銽h(5:WR(:;Gv3eώƃPsih ":c9#nm Sf餁 D kԨ(Rgd"3 7 +yٞae1'3ZQfƈ&Tl yMۉϔUTIBC2|׶X~$SvUU5D댥8>51fvnoX$Zqф)JczSK!Ӷ ŮY K|0P?^闽_g(ՁNԬ?\hJ1v,SNXWAbroZ8a=Tf`W̦ BJwKHԹV;pt7pO˰\ .qgdGX8cFGuiePFNS'8C ke~ΤsmHЌLJȧ ?yS n:G8:w"yJ_B4GߡT~P)NuH5AZRpme+*΁)E.&l G(Fdr.!kF ͯ[F4|vև) ^i]W 'OÖ{T0=%ӀztyW:"us 49Yc%% +SKN2#eD)f 95oLC.y6YFM0tvlBur:0"KScθut/q<{R/1*r͙aDuI1Ep Ad"7{_8Aqt7%9B-z *LhG/ZLQCgBl/~:dfM) "s?٥|,[!DT9 i\9iN_|~syf1*"@qU<|R1%v.e=s蘽Y6seލw_9:'߷I]~VZ-|=sl]aRaV?xB+W z5~d0a1U,R0ύLk0J_ˆrIǓ^S\Im@~.R<*.+j$I '/u6Cn)=18Zl;V&p /'lRtVa %GmuE tMKĪSnF?>}!oM;B[a붴c\FQ|Cw*mO*(N~Kuu rSJu>ʊW Hy#Z[7C54g<ւ2[ga!^uC0-u/e=UGd@- Myo5 Mϙ :̾ P&oK?PM;=%4eKf(G/>5h3w~kMJ,Ɲ4;cy9[~T,S`+AC|SjMB;U{s7IZ# [_E ؕ9$ U|9浕kş Q6n3p| ۊ="*ojgڤRļWxNE3@cI:ωJIryjwȞcҥq7WQI[];JJF>^U{BUHg/y˗FMh5]< oF* M ^k Ha CGʬ+! .YcEښpXoŸjnR5Z.&+ۭVq,GآG.Xl3jEb?(Jhv"`J6a|~= k^q dX}8A/81T!.;8H 21V̻\䫇(bxܭdy 7TnԼӌ[QBPlbn)22wDԖl *yE^ EZ;ƒ>| fQFRI4R1ʍ4|1{}ޙ iIw>~*;Xӓc?\& ZV=+j8`w`.7gXF5d7s3sQ4uƢ19>SUl gA]!L~Uj1y.[M[hc=O*s.X Io&dcik 88-މXSillHnzzxCmr$cd^}aIjOhawzW;uF/]F4.ȹfo<%݇ D `̸;̈́nթ 뷍%#mŕlN?,`]yvm&cq 2}Ny Y#Azjj5bq؁)05H'UO֑u.a ^B"Ck]o j*}g=͖7Vt0 -]fQ,Rۃ=0m֐n뜧;-SzŰU]a_uYyLO}hXeywRJMo 7x^߇Tl`7T>bd^릷8<4">_K?r@<ӬJM.P{~T̈vׅyr,ǔ3:RW1C!,V젣Κ;aӿtr MWEZp[BC"}A 'R[lê2ۑSHfvrFxޤfA'rl{7 1T5%mB ekgsSTc, Ι? $#rpmH)9avgkC]އ) DlǼ)[BbNY%Y0QA~]FBOp Obyt{yZ\C6*G` 8q,*@ke'>3?2T n,3)3yQwXz̑! yu:>sȶ'8hVQ$QbΦSMeh I+cuV16\Θjƙx3nb!i_,E8N8dv!$B0HL Xԧι+(AS"GKJr]AXS\-;}mC5ow$2VE} #xQN>Iac\p^$I;4֓o@AgAl!c ^HhpsNaꧢ U(՞ԤF+T!+vE޺y59'!}>?XT:6cm<2$Θ"^^ oqk8y$ef*&iY#>q<uY|OT7tL^ƣś$ݮ 9B9vmJrGw>wBt."=O| H3`Q]0~DX_ҿo.<ݾ+IB d!;QQm@y/l\qϮ{+L<ωŴk*3TQM[s/Au_1[O;]4C{Q+s"NG-=\@s11GKY(-kq6))Z[T7pf7|%e喝ڱ ˓ TuX!ZR7 zヌ+ANvP{B =-vkER#w8H73C#ĠV-l 0V8mh|IzK%16%ǥeĜ>3@xNEtD4*!g6\gCg D[?2@$Wذ4 A,Gsm>:3~Y ]%ظmjI: 3$XlT&Z‹j_qPA*Oȑd=*$!='k.=! hA:]Z<'!C˭UQs@o>i?zJx(a!~B D&sQ̞ ۦN77=8IX_,h v[ D B'qP؜!Rytzlr˷hbT>'U+H-qi5sD]RBu=xHhw~%i.PܬF/SBr6f#n[h _v:䋘1WӪI"w"L'*`l4[k8/>h[w!sn6 Kure.C Z*>M0J'1Xlg1w8p0z%m}SNm= z %Ε޸~zϩ(g5ZU?0e`j?)J|^"+Hݼ`:#żCӴ;2F8f$ˌ&Xtu10/NxŘ ]E&dxhj&1d&I|Ň"4imvZ<r qO``Nؕ+n̺V:){m\3d8L;/_!X{:tn!B"N[ʀ@i]Q Khq8h0@n^WN*;bM5 #l|%rtNk㯑!-3|<i;7e}B-)/hvbB#oSmk cP ၐo$MW@|oj/zEayEPpٚK 6$5l\Lv>M 8.)}`X8O'Ѹ~^U}iH uP9syt~O+z)?dMdCa&ofz(3+u2s;z'Ռ\{/9l5r@3`m>lIYBܭ2QJii"˼Mxij۔*u7!]MɧM˨q5`'k9fTkC A6BMMMDw-jPj긅=} !п1 pkY꣐^b Q^|r:9LGf# nʬS2Z3K44XvϽA0a3eمϩlHb!?r†װǓ(l- fIϡ@N1:@BHjj i u'[ynhz5N@f<E,?uqxMؐLeᩗGw>naáxGz3GL_Eg_OЁg1"kՁ}ldR*2G4n 4Q5y8Eȩ<_n0ޘbX&NE/-;p[7ֻ6vjwo/Id_Rdi5MRL4a|^uTqr"ғBv!|'W>Sr J)02Vs#ǴJ=OL.?Cc){8p=s߂$$c c{UT`sbA} /S?*vAGsirA.57D\ИJq$=pNnF2qp` ֒=%xRˤfy,?TQw^9:8,YZh[|5./1$khՕ?E ײH4޲IQz԰JAǨJv6"g-rIƫcmQ &vh!>F:tG! 8 G&0KaWˌV(vgAYuPQMp ̲_AM/n߫Ϩ v#!zw!Dg;iFpn ٤gK<xtWx~t:{Å\H>0L,LMVI[BYxvZ Hw5f"8ݥl .FPIM@c Ne]b)y(-M,8ɹ*IiDxÊ &[T" Ts~]L~ ӮHIbNӯkfK6_uBAkUn(v^B\gmz2_"eMw`!cc6?нvP@Z }%8{ؒ@}Kh ^c %KYfBul[2ƨDK:33$C miyS' qAxW75 ~HAbXcIH?{\}[cꋽ2?Y'Y hw"SIZ,@go*GHRN}gɍ-;(+yw d>=f6ivm1-5Biڥ ͬx;&Kz!A"|R4j'9AP J>2[:)r7 0wp=&'I\0N}[+;3e3Jn DPE'J)#W^6ja\wRǼI ۄ(f8:qs|C1נlđ9(_*WK.6!0r Oh]hHdبnŒ?ݳ/1Z5ly Z$lNxk/hD1$hR@dTqڡв?=m@XE.WWZvO`I;QXAASdw­\< ǽ SkܶAzcDndf ]S$]@38}#vv-{D2[é9~~ Q0oS OwyF(8~',VuvҸEAR*>V7 wwp5$KlA66 ?ccZILr7ͳryW~T$Г=բ{sLSd@?dheU g_'?U. Y9itUY 6M4V+fН ̶IBB:͋g50KξI+Ł<*vO)?yzJ)qH 7ѣH %L eY_h2 āR=.~lH[ j`]=2qXmnN?iJRJ(Wc3TC ^_tW.=fM`A)NmcܯJچ4EùVdz[m*jD , 噟gS<6A] ᲇ6gXHJ:gг,i_q(褡܍悭ٺT]'s$M)5Qt6utCN )'-Q^0@KyV-:M]k\X; J$בOaKW_) ~M ?+1`HUX ǰoX&5OvKjtѵ=}&}yp5xEVٻ狓£I2IxiSQ-<>Sa(SxA %gK9J}P~¬Pևz%tAMJDueMb!sİfvo>ݼ]7Vߒ>)|ϓdqu]~bF.EkW f7ZmxjieȀL#s!oC?*o'pX̔02%= K3d@>V^ɜBC~^b]ᐿ?[JJ! 8pbdbw.MXϥ_C՚l.ˌ_ρ+X{᩽*?c/Zgq'aVF.mPue䁺=D x?ﱠ[&YHnr eA.[mD8-sx?|\;9l†W4"$6/;9헴6Vzga>5c.iMw>j){:mbX?]}Z5<H(m470RqlmW^A-5$BaVIFrr_ ;8NGJAڧx38Ń[qH Pzwt#[ ZHD%`{MW$̒Z4j,jw28kg2>,>d \FgQ(Js߲zZ*T6^ sE?oB!-i|ٻ8Va\\w xw-䂷_ ^c5CbM%Po|FIeA@=ʲ4; !kdԶUpKG>m[ڭMj ï|9/6{0%HIat4|LEpH?}ZYPx,)=T7LhCL+pB m4<"GlgEYxLSz*PBK`鸨ㅺE{0%&f'jo@ZBY͠ ╌'Yy$>)Dn|5/zS´a+z/dEۓ0N]Q/@d~gI@d2m}J QbSKn( kLueҀBh7Ho4\$ݠ,!Mqnņ_5LnG 䡔aҜ1GL t,GaPpV%A?m|*pPߵzS^+w[dqF^Cy9@N֫1B< 5X@P? 7C!bQy2 bM6 [Y54 OUMLe켡- gG;q&Y3ZSE0ਮͫ0m#x) !l~}2 ŴR >}ɭar:SW`jsHj* %RopC튄`J >V֤Bq~հ}z˄Jׇ5_?6XNb^D9U>:HRL}nDyg\ǻ6,c{SWسKK#JQtK-cu6XIpr}CSe9!Tپ= Xru 5‹A:}Z-.r_NvyɓwmT)'OLDOaE܆':Nw۪XE\UNbæ@Tӻ0 Elfk*qs ;uV4#е/E4D-mf5RM"tZl>hca( H&=؎wQ uF%~m5IUxbپٷ &}AF]럫Rʸ 1uly{c1VX-F"4;?F ~YjO1w7[zN5K i+ds@vC ̍Ha z%vYΒd8 aVXQ˔bmObՀ _ҝB>oXIG +# Ǯ0NK({x$ f^32eÿe}zפ0J̴+i]=̙yl2 }S}|ZJ< ׷g&=ɲis1[7Ra$HdEͥk'r1D߼/_duRRy0=QR[ WeWN'昐GiN/'<)yL6eK6&[l+tI3"`FhGrb2|uV~3&DtihsP+C礤";$ԈEvg`%DA|kDbm;2;䓓'Z< 2:2l!O/#nMPfڱʪ-/U\#1V3GQ@xf%cnly,Y6U1fSйp9zy T8W2޴f],Q CΆfU,a)nͼ>YT\@;YA$7rw+! $%%eVZkkL=)n5`ZC߲,ґKS&kxɠmФ>|։A rfm \ 9XX+e,̞[ jk/3#oSJ8O3xvX>-u XS P57r'p"'u%5,E/7}ٟu33QeNpĬdnTݙ Rp>eEy Lx ]R3&f-ˤڇcBVg2/qd~+԰~x}\aR%ٲfk.c׉@(88.8;FmǟĆs=Ld \q?if Wa`p.j[V ; 6~M).[=af㶀-@7'puF~)˭F(t>+iĒא UW<&q*:TafqHrMC畒*~9" Rl[ZE L" 9Ztpt\²|* p2`;0@QLd' ~5o&8f B!W$Oxi e`_O&[AQ`ιr*&NDs {Xo@bPX@-,O2UqiX/B&)fy@{̈C`Y蟕>߈>5|K1'bJcs-q)jE@'x";"rZb$u38.Q "{Ƽ=E]A擼cXS^Q`ƕ2'9!rZfjsquQTeIim1ItGiT~ RM0{M{,JV& 4%feffU .4AɅ юnӈy" Jt4^T ZLtƘp-pȌ "Q_sE|#F_fEOk Mr;2FWFȗs'cOx^wi#-s($`w2y- m^GcZ 鸍96pSZx|t֬e|ǟ XQo9I(q=ۡŻV5q⬳,"$dؼhoGvJ$}'a29k+ zlTJ@ !T&VtTJ/=^U|sqIl[{Ezs-| |R嶓xiߛy$9Ԓ/&, XΎ4a]74בwn h:!j͏5Y٫uxdEA,eۀ>(|JЫ؃~]D+8̅L BU  YZ