libvala-0_54-0-0.54.8-150400.3.3.1<>,t0chp9|,߶ɜHp!3uF3"Y2wڙ5v x/TӶ<"QV ld *4OJLZi-18D7)4KU>Mz[rۣԙ$\ѤЈU=l[j-u\Or>itۆu1@?d % G|  06@H L P X  @|(,849l:>@FGH IXY$\P]X^bc5defluvwpxxy zClibvala-0_54-00.54.8150400.3.3.1Vala programming language runtimeRuntime library for the Vala programming language.chibs-lx2160ardb-1@SUSE Linux Enterprise 15SUSE LLC LGPL-2.1-or-laterhttps://www.suse.com/System/Librarieshttps://wiki.gnome.org/Projects/Valalinuxaarch64@chch26e7e921ecce9f7bb4f3ee7af0d197fd4977f25ea45dc8bef3b24c971bb53bdelibvala-0.54.so.0.0.0rootrootrootrootvala-0.54.8-150400.3.3.1.src.rpmlibvala-0.54.so.0()(64bit)libvala-0_54-0libvala-0_54-0(aarch-64)@@@@@@@@@    /sbin/ldconfig/sbin/ldconfigld-linux-aarch64.so.1()(64bit)ld-linux-aarch64.so.1(GLIBC_2.17)(64bit)libc.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)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-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./sbin/ldconfig/sbin/ldconfigibs-lx2160ardb-1 16678025640.54.8-150400.3.3.10.54.8-150400.3.3.1libvala-0.54.so.0libvala-0.54.so.0.0.0/usr/lib64/-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_Updatedrpmxz5aarch64-suse-linuxELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=67a947037a53caedd5c6c8f7234b64a115f4b64f, stripped PR RRRRRR RRsa9Q8ӖeglB8utf-8b1aa26ba98ba79ce514e82803b66dc93c0cd34b0405e34addae32f3ee7452851?7zXZ !t/ ]"k%{B{TfkvO"O[}~ qߩly2 Ge{; R՛? |Ɏ^'y \̯| 7)/xf߿r.OSeo/rIy{u]ȡڂ/ڌ#~6IgW1Ey3~u!'Gd˯GF3+ƺ[Wql}UU DCWW=ݲ&ʼrI*?,])'ҢN̪&$9VH(\e,ލm&@ƍo`.{zATz{)hOjeHl.c (HIw cȋplʼnAtSjC$?蹡Jee'aB:%6ej& #2whɲ9~L+ka d$JƒQEZ~6F_vBfU8xa㙷d6yufGݲm2%yd͖Hq .TEuQC Nŏ #6G"4\jWl "uÜAE4 k{m"-r 8 ˲D "~TlɋN'Yf,u ]3ؔJc{;C%f1bN:3uOj ք! .~wesvx46HaܜF eVK꘱]&E `VZ{9OHr 8i}ZE7"ı`QxEchְhkUr|;WWT1M<; Usj^ASxH*rr^=y$=^o` )f졫6,\aXp#t:,Wޱ&z8LxCH=enx~w!<;([sDØ$ǃ%Q dQc'A ]' I<|1_tp, coG=9l@1돲^_Dt@Ýd.BzjǐlymO$#H $ bhxlkin,BL& d̓웂=/>a⩞gUe#}Sr?Zc}*Q!|`cu!?eQ@tk}5I9]an"ܤBRN %NNofs!acUx<alIP]fK-A3"gZ (ڑNCr7c"47hqnP+OPyz+l5OkS ]!9Iu{UV Eqw.c<#8o*ɩ19$|KNJHq|"kǑD2lN2W b|~> i%qcG9!_eddr{0Q]*SFYתc~m=$R瑧Bn[]=$0#%r|MⓠoۥQ#|D[1QYL+dIc{P0GDmXX>ϊ =C Ց7j\xlnp89Wm/(eR∱Ay2S_6)_ҮCZ2Ti.2 _j[2tUV3xL_yih `Y ul6\Ei_H݄hVzo3z}f?REE#D=ECeQeqg_Zی>ڱց4R̮F01z&SW&+6P oP.XZKR?Mj2`nJi2$x!(!w{ B’~9V#~ET˩ͮ?]}]|1GZh"βBY#vx'PҫE &) zgڳ6Qp0bwܪ\fk!"L4@N *^pmUBN{ 3^GKʮ:aL {7ό1:)jxCg i^U"]͘@KaSnn"8VQV^izJTCVOxLȜ=[B~/C91 K LFv6*QeDaF 5VOW.y:}R[D(FO#)@mK]"@LRL^y=nM}//u觸LgE*-•衉=I/-R F 4e8[(2ʩAfw" ~ЈҔZi3~|BT"zˮu&Ĥfc4RA9̍wT׊@Œcqd֓$D1%GqЬxngT]~| }j,kD7@~yZ6l)K= ȔKZ nNIHyvSDpv)_!]R!p6}o%+;ႂ-U/^Lo^^"42#/da>B 7P<Gt6{v6V _2MWx_Qk MFWKLk] W7NGRGpq܌چk&bw׬I}>p;5,a*03ZZ=FVqNGY G} 1-p??"u )5 6biQ:U)xqWaK>v` YJIJYV'r0qGr rwqrgE%$yvE /MIH*-[&"qĔ6܋3/odSWk9UtӳV,|3O`/gAk@ߨ! aZ(EM!*h @qnqhh S5k#0&)ے;rf"]Wô1tXE᧻qöbǡPrC^q5`H(iޢq 6J`{חy98&7բ{Q%xm*UhL3 Sl(~`qpDL5_ԐN~JΨw)}[,=2"g`Mǽ,%k~ r(4U'n" u:z}Oa:o-{MBVr4ƃA**~f6=)w}x+,(֝3ncl A/7AosLĿ -wNg& /5d4qMds>vDY)j-56C~ZWj-V_Rf;CŔ(A=kil@>*޾\6vzsn&=Eȉ LN)~SE&rSaG'q|ӞOy긺_nߙʱ&hUO3I>R(>>'&qb1ŋ,W{AV͇N0z {r*ָY mҐoav0."ߤRVf7_v_bq{W :u!C>/|4i4ԗ4Z¶(8 }JI-L*|3IXZU8dw 0n1m44T<WBOO|"b%(FaL9dK ƔPG~կ] u9Caiu^F iR^|tlG$Mrb*xx4A')}Bb&E>oS68˔D4̈ \|iU|B^RGF "}6K$B$?%e[P?Ehx~oť5d'-{XR:jX|Vm ?⋂*Eac?ni %Ɲ^=:63 sOvٿ(2N^eٺjNe\H z%V=I5pE8C6Yw2-l[k4/ڹR,)Kh5,D[CĪ 3dMD {;1{D\b.2d6A"ѷwvQtO?1Ӯf)JaJHz ~;l 00hzhQTEʾ&&h멜պ"YƉI tRFv=b~J9ǫbPhrM]%CbUb5md7d͌G{^@`Z;II:YnY$Z!Ѭ=5Mޞ o xFvTϪGˢ$g~r q^{ˡP= nf勇MuZZYYu;-Z#z9+ߒyu;rnn۱:c;ݐ*ῼ!Blۜu}}^1AεPB\`T=CP8^uT'(4I"ѭvv0Vv6_b吀G nQpUI҃9dUG}cCH q6@:.T*$XOI3d)ffD@t;v#ċe1"ͥo”vD:&&+Уfk zi2Q:r/pfZ^65rΓ njU~ KY^[ kI VϠ"x2_5`:_Up;c7!dgbWK NŜ_0+9?_0╈5|X"DF0dsve^ޙLT}o(&O7j71-LBE?RU]QmgMd{<;ϕ,&Bj8%Gtf:N?[+KML:uL VYHzBAONxO: y}8;o"?wO׎o&[3?:ݐhpL;t_HJZ)*ilwK y]K#6)s(}_)d‰m`pLl}\I ID*4yX ?:BD~NnTp5"?*"@ޮjF]q8nnGb?5*·T ̔ ׳THW.F[ws.l"J%?Cdԁ:VSjZ )-uRZ[1q? 0o 9ך&Yo'9^c.F͓O7\o/xZHViA7rD.H\y(A:ypqvG'ڗH3/o{î9l `B jEY \mLikFF&ܮ&?0i`f_e_O2]B[ b}` d=jQ[gFF(q 5IѳwŸrI5V|"~Āl]mF%2esO$Tm3l8}Q'~t ʆ ݂ܳ(Gܫ*d踟-<! xZ C_\7S#RpNج%f! l%S`k3D{9{zim.]k׷Hތ s1AiZ X33*30.!sL&D1H LRg&E +*S{_ 7GA화䁰QI nrbntNɸ0=>\-&ZZʘ4JN_4!d.ʦ |e=T>g9`ܷ?sHVT14w״`>vL#8SaC2O  =z/(S;cٚ|Og'jGg 6 oЈc|g]G;fgGrKDgi1\I76ԞމsOd&pTƀ+$dPEy@KD)]:J$9 $`HzUQ^)#-A{ig\Vr5wF!e_\aq?Ḿ[=GdnaN5|KR1{B5Vrl*p ̼Z6p+,Xt sܪ |G S$2Z¡j;7㕹,MK|⌊Fv vݐnUi*}&)2W>zsJ*By^d xА-4[ !F>NvB_K73HxIƥyqPET˧fax*zqܐj:զYxA&#xNqr-eĮ,f v]EDE SGUyɰS;LB4?.( [zպPΩ `xcҟok :S +pj̱M~s%E2 .tou5dV? H`>BQ=]xdhPke}w52yR"<[zF q7Bʷ7}nbmp2h2U/w3:*|U/i.K-EW`Y|]*@=~>E2:Y uNdp7׍"tNkb]}1K>Lh5!y.^R5`I麕Kz ]RR5`ᒲW)F{d璄%qUrsF2Ѕ!`*G].aRZ~Yzҋ_aF2^>7lߨ5p_N Cě犋"iob*k\.1ba Er̚3ݑ) XS(\M:J.({g|j5ӀK<ǫAw3⵫cE9zʭ/]M%+UԄڷk~.9v089l&]+ =+ M,Bz*rl^rvߧͨg|N.jLCӏT.&PYҋoF6lg(:Aa0 _N`_B7F(@3abghl sAkQ=EN`vM4W_MrNWyZ갽:3*bL^Ed.ofA^ sg{i)O. )[irM.ǠTIԎ=fzB2D|_K^@0BW'CZ]=+hB(NT t{~ 0lB1tVG6zc샘mF=X[?oyh¡\j0ޙ? 0XĴ]>_*#)kll٩N; /W!$78Kl ԉ债:e2#!5_zvI`Wn^kfZ֯80U77PS;S_ѻxX02MWfIB  \}<~#b eGͣe6xS棙5riX_s|#4>_+2!V *8Y 4[+V8@|xU-*8 ,\rzGԌ>WK@aƁ zSOnNٌ fuI'EOYan.'.[L6:̒8-N6 =hcjog 96eaCdQ]=#|L8, @eJhQപO"7Rj9>{O*2?l2װ>B\aI,0 h"sv\u:4 w?2>s(J]RQ ^iӦAO^R!KH5YAr.AZ4/=!1 !`rdǔw5Vb<-CV r\p)j+Q'(kn"5M&j \ǣ7-*Ppۓj 2iEY` 0Uop=k]( jQ1n>b7ȞFʁ5bd*fc* q['dFPo@r 4} p0OۡP #0@햑ecu$N1;VjMK0 Xm5WE{Ć+ J0ƾKK/0OuyP@Z)Bkml;,1Ư*?Dztu,)w]f&/ |] {:F`-*sRk3+p(B='";{#yghA2? r2{դgW\/:,mdO')%DGP&h#KuZ^sƍyxݥ|[/Vu~- ˜yIC>:nRVrC.ѽ+r򍂰![L0gixCPK.W9}+ 9bY5DsYNo_ ? 5>6Ķ6^Bӵ@a\+^rq ĵY!r.t ( KEzڋ6aoDQ\~a? ԏ`X:-9NUg3౐R$Ze"&H7[|ǃy(c_k>8,7f;SȢhp.NwA;6~?i?Fk' h0Lb8U{[\ "2e(%'m_Zf3 Vs[0_'ikn5)E~{r꽂C:ޥ ˺DX5pɭ'#fr!ҙzSD?zc;h4x2.d]@o rE\X%4xaNMlܭ';v5@-wvG&+VzE+d}q|a 1-]tDuXcQ $B{~W`qm!Jغ99Bg@OˬPvٞژy_P14ͫ5I6@L=qӮkH%DzSWbJt 3AkH2DvrŽ c5@^*0)rPFZ|v[ ˸: *5u{/C֚w#8 1sȗDXU>h4L5[v VuoxO9 Qxn'fcWq0t+F.Y8Ka?-Sv{$!O#N:#Y."~!YcM62Մi- $96'ܛћó{HL>yhi"$o)^YTB&&Ah"`bO{(Vf3 |WW"j b"R2KG-\.>it:=n|A)Av~gТŇvejᰗ87Hd۔^;mqW t˯6mjCSP* [lE } E=}*ϱь` wJOıTG7Q21QDtZFkD8ly!]t*AX+*`@ IJ9 =O>;PGO+SHI3cw3+VpViXx 5gۘ5.z;jV;g:6bUd3FW0)ip3-BSG!8ES~1f01Z x^ʼn0k忉M?[%O-jwByCK[-b =Rb12y`PGR%9i*Mq֬.0("MX=Jiz5*zOh7N7݁:is*~v'Hʥ-0#;C XA+Vc3CJ烖@C+jeLZom+qz$KSZ3A&Y3Eپn7@/\u,8i!s}R@]1qg^!8B dc݅/62 JL]cV&(KyW=pVjgsMϾ9az%| Ua0.)Z-Oc?T>^Β8>wՍ42Ѯ4ڲ1s岑GL!)@u_13=  u YVm垨͓_u۵>=Àztdu*ca[QҪ㫼uc/pW?cUm/8ɴ^AClOh,9C>rq{l*xOh|4[R 5Y%'j^PeF&LvSWLD-%®F)_{m(4yZ53}Ճ!Ӥ:]}d*odW|/Eѫ/SG2-8ܞ:UCVua2+x@ |,f[xn{iF*WpXw6> jhb&'| i}ב*:^Ղ 3zfCbHWzɮfS)#mn*}vÁ|a}J p0ԐY#J=(?1BfL(ᑍϠB ftcJ[J?3S\Ga=_ \ #z78I՘,9Sѳa>^†1v|`N9vTq{uRě] d$[|KGU7P^MA V ; v 1'@:ײcf쳀a:κ0ߑD7##Dt:Җ`ݡX!K^yhͬ6AA n`2֛7tP˺YFVN=>x4G18۶ΠW.9WkeU*ۭ\/4At" <љ)Mf Ƌk2|U /_m%6^+E\vVlK ;3@+PsLS8D~ũskGPz<LtّMz Ν{ۊd >+4&}j&xŋ(KDP{(,Ւ%8O= p}#o "k-ק/IQ9iLiOV-z9>dS;$+ B |~?o=}6hyf ?Q)\/fyZ<Ɋ/D fT#*krGw$CniA"G6;ޯܤ[ h,@,洘?tl )zo}xŬn"m0Y=j=iVNqT "i쥅Gf5foۚ3 9^|ȤYV{ ?GoHr X.N+ f (">jYJX*0'gQh™$FC i*:7ñ Cs0C,B|+"a1@(>κh%͜z/mSR[ȰQT(gG4sgjdMmW^GSCc%2/jk^n%Ƣ7*U"9cɈ7*N#nǣׅ[~V #XGu1eHjff3&퐆 mvMjI8#zZ 1hGT Zz  ?lji^NEF֚d#)ˎϮ79=&'l%MtH\:'uiau16t,y2ܤߦ6,VZ)$ʙȂ4 4xU>:&QRgjU_s۾+%}5/Z T@>}C~uU^esd izm(.^*m̔J079O( ֏M+u+LA;­#Bړ{B]Y L dܱyHn𤤎FwkT>/CY|VF01njxx]~*/_\:ez_\=Q;+FCK&ߣ~ K88=nm=]ONN+pAbg*{:)rCX!a*`XK^.4BA bf5SĜ:bǐu+Ob]?y:\+y{[-QRtߐĩ" J0Oq$̨s^2q#s.ڞe 긞CGPk\&)YS @< t/ךߡbai|o0k }5e ?fDE# ;be-uD2ɩ 6 FDFM>I79;y?7aMFޓx|FOӜ*ӻEb6-^v?./=4@dEutTSc;E{yڸnr,Erv9aB3X7[̦}Mt3ɫ N6NФ\7;S3-¹0,Tk{~iP=,npQ|kWGe0;r808a;f|Iq|qDB v2ys80@olq-Oɩt7P]r_` `] ATAʖGr1Kt 8I:IvH`CDžǓc`Qv2 ˙-(cM5X MgY2s?SVY.?E}-A!;x0>q4fr/ Ё\Q㛰(>Ѕ|2%{]idHb-I94/*k߮ z9{-xQDBL^`P} ُU-IAQ9c]^/j-jcc('ݓNOOn4w;Q  G{:fw12wȡVuGCBi4[My-4jQGlybaƴ\[v@=kǡKJzWfᨼ;· ]R΄X2§ʨ@"u owLt M;[Ǘ[X'YZVЧ/Q/"Xe >p/PDH():ZSe4(_ܻ"g&I"lo9ܗ]MNֳ~|!}Ya+xTDb`uзo߰hE_HP_x[ 1u,pߤ`j\CtLuX Y0{YhR_d I{w2A`Yp`M'Y9u*}s}tlqʸ5|٬|f XX9WOjinU7>˟$ܲ$"qE`Xzr(ihsk|~&2Yقmρ[e5ăŭnh-v{*겡i@aȍ蟉8NRz>hm[vHu<; 5Wևf4/ Y;}غ_b9e GqtVx!eJMI=vAwQ#xg5û i,~|K[FmAhKd;գXkywg2 ^ߔ4;"1O@M?@Ѝ:+E7Pd.T@뽗_qt-" .dBBSd0O.z@ie~&L& wȋ<2NcŻo<9cZixBr|hHIrΆj̴ 'd6xšjr00ǔ(;44C Ɂ*_JB\swJOaV0+ROG[oD<\~kmuf&2OBЅܽ+T6Kπ1-^&ݓ0WXF c4˽ۜf@rGb{#d+Ԝ~z}/g}/ I(rAC'H)9h[$'&3:  5A+mv'G->#![!oB+q㛣k#k͠B1(wѲfhRK ^0Ʈ'.J3s;f:I œa>{/ܴ%/Wi0 qa6ge8ٿVogv0AM\aCYR;9 &GMb^4 r/d+kF*kZ.v Gl`!iw.ٖ1"9gA8hT{ޱM^D46+k\ඥr>j"0앃dJ->5&SE'Zoo h|M^讂~+dPIH|~{SմW g>rRow(naD¬sAo vg*CKHn7/3P2WS-|YNtO2dZN7V*̌ze"'؆4^ $uLfg`2PbQb·߾ R֌$o9$fTlv2}biT" *Z?p+nR&z8 Ti0~ȖRDN tG pAIRBܔO`ijbd$ȗ"uFжdn4=J_q<]IY2 BSiv(!Nq!TF-P<ĉЁ$v)bj=fd$ rV'}M.NCy¥æsC lƂ1oEwKylU7 ]4[Fk^z‚1j5wUGwPUCuOr5`%?+1FWj8yM#-q#1`=>kpwBdu)V!6,7I5(Nuhw{Q4t:MTYP%8HRQ6S^> Џ,\N2- |s ΘjTo.&mE88zƽ{=DuF9Gdă6U(-DۊjP* };nI; qݺjn5o PȤh syZ.-aֶGd\59=:5hRuqm&qփv#V_\!Qw(t8%HF3A1¸,,52DkNs34( bw>x܂X̄Y"ީI.EHbGcHl ݛ#L`v$V!O,ϑCwNtxbBCYTrRь ,Fݱ@gLg>Q[_e{͉],6-{\y쨢H(#PU_v& @O`X搁UkP}v9K%âu!aVѫ@NB62~T>7r=k.w-Al-r?x՚CYjkPP]ޅgP4vٽeyfpt5}i[I15nOkV@'~.>mn?52@j h]]ZtZ#[qix`^e܉DAY!)]55{{tHoIS lıuҚ. fE62Ʉjz SHkU9bE'̜l+E&oB0w{)neYei(J|{fD~P) ͘ȔMPp4M@܇ά2O9춴?mUvNL)ゕUZ@2c~kgP"ˏW{s\ܿc3ˑ7ؙK873wkO3VM1ծEQD{:y~d@n{AF<Ǜ:Cު(\`ݧo}Ѭ"E P  qQ _a1 ]m}qהnnVQ^҅H7cU0-}ivaMd4q7l_L4(趣7:=tr/tVF.WL 2@iTŽݳdDΰhrQK88+UrSQU&YziH %n. 8\Ujy-ه33°h}{7Y~(0E&w}"{b4E}" DDጞ Ҿ@S߹eJG(!R~NEc|e#`5.*Mޙ!IrjᇩU~!sRIн7E{[qԣ$IZfx8Zߵciԟ3Ax1E,md`<єA9)jY"~v>eeHSyY3g͆p WMGADz,bISd/y.g#)Ju..Lzn]&:>| ($.s\"sZ| uLFʪ*E^5/Kˢf8?( (s"oSG8aXkJ.5I, /Fߥh=ԩ+.2bs_kC?8#P+!`QAS'=]I%Z: f2 T#=ζ/YV ]0JH#BWՁ^ <f(r7ѡcS(Sc.)~g[$xנ'[.s>ME[^y@2{ʊ8ʌ^f?fذ4n#>Pg ܂T!ڍͳ6fQSPԽN.T9epكh: o\\W !kI ˢZ4l9 ;E8XK3M>1d_XNY%v=f@yG 5,QLM@p\ =ocD 9= gIbQUK_ָxc Rfyn["5~it_{1iVuc|Q_09ƒ.ޱ[ʶy$Fr^jջhw)޺Ya*Vˠ 3 =}o0).ZvxN[]?S{JUd-!멕m,+(flڂѹ+y3JDjqj1MsLа1 8zū1QԞs1(TJ>~D/?-lLUUPT ^.* 9 [NRa:WL}NK-\;MuDu~~_oN8oqr=e5ttՙUUފ,{yc i(H?KV1s[H%Necs],_L݅r ?QY,Rq$1*];pZ &TQ1e`foÐxmF.::0Nz>P$յ8shI'_iSA>a?vrSN#Z_{W^EM6O('R9kS:Eڼ9"٠QH7e$iFf5@>|h 'GcTfj _!䋓nHg,˼iL69u(ww-2.s*)>1^sS5K!҈m>\&-#amYPIfg?#+> 6-.MkmM%y845!7E߰V餗gn78Ms8VS:wQK3H\iKp67V#͠)F"7CT Q}|0.w[3&^sYމ}WI6q9$!v0lAKKfqu8s"Zr{ǿ 0q|-r% cMzvb5zsݸg}iY6]f nyw 49CiݹTqEUVY)DNUTgeNZqKz#^RͿL|,̍!>%li4ν9M()AW7mT ?2Q~e/2-Ёs¤4zk#k4Ct#UypHͶCh!x[m$\U[#5LF/gq@&=e@WOABjt3c2Pf waU$LH gV̇#|f/z hY֊z:'_'+UD>:\zNx}߮rabߍOCg,AG0G|LclHFbȮ_^3 -ɢ je_6#GęOX|D cRo#V;NSJkzQ?\BF5QI#N=FGg(W$aϙA̜dR{V5F]V+$sQTˬf_zJE4,Q<936L$^bOO A?}~bhY%#u8TekChw3.=v(Gxr\J&P"b}TS< 쪰&,O'@Sk.3N S/ $uT[N6r\=]@40-Ah+ii{&q*6o]_kX`w d ua]_ 2/K Pw7iG I6%}Jinc[,w>>v96"lucqtiY(y4{ˆ_h&ƹ6+<1`}p>6kR֢ &dQ5|IDFvi?:UbNNG~Nk#vkE;>v5TG~fdSvo݊@*iYvO~G=$+3x9̝SHm#g orqWHoH[x݋$_265;\# YU~W /mT03RϟfR۔{;nW4ؗaV[H5tad쾝8ѠySt賗!;Żf\B17(ky0WahnבIǶnmb1,WO5=bk4Ê?HO佽Jlk bY վIY1RC:/GVS߮W}mKZ˶ m@sDM"VĢe: >oq7tV,' Ꮛ+J~<89?O .1pb3"|YO2<PP-}SD!g35 s"zrƠq{ΪhjexE~@s<ņ HBv=5g,*`&ę;pRlAA`S_IQUP̰'F:$Un2G3^[\%.Bl G17EghʣZ]*g_*/ܵ}CR`Ό䞊OKPF]h wfU^GM̵e(fA Ss2m0_Mpn,ߑkr -W4jQ}/d$O e/L2R J azd$Fk~#T'qx5|N]G ޭ7YoBdm$Y#pms2+!i 7!])xz-o⻭5j\~ V5()d gwa}A[8P{,̅_0!,nY+QpBsTug6 ~cwQ~~* us<Ea_pR_ Nؘ]$*dxߏ^ӝÿq#!mT`qgP *AA+.Suή5%3.`@]` =dEF82lnhCw}ipR8v-CVTB L?WAB  S/K+u4gHzNw!#ǯ71,eUC#pUHaֱfv*-;C6ĵnli*PZ*X&E_ť=#zpĪiޘ[) gE^ M[oAe-c%"cL2yVhab.$ϗR(z`OK,9}ߕmv/8/ޮ5R T$l\^ !Θ``Ö-/ Bw>R-g󤉮0%9f=-+#An'zYmӽ,@ QImJ-.P#s=t s_x1}bl/@A3}T16V-qW4]gkpXI%?[X#MAН^0Z<CI'g.{]v,3\(Nw A_Dyp u)ADudB.KdZQUNU]xSX2crmf2$*jd՛GT{q8 İe(A :XKdck˔lPR-R<$]alSHսsb ! jIz.O)`' .>ޛ#AJBPBR3ͩ&MW?]~kC !]Lθ 5Eq*RYqYC".QGcFnE򣨚vڋ"r \3u2vȚǠ Ki{S0^"#xL4<m]VIUw.$bPI+%6 \'l`&o6 Lۧ] B,7fzVʔ0q#OA"iQQLռLrupdihYȆ$Px-ʤ/ՠ3*E,{V&t-%]qJ2)KY|ap)) MKp#q @ oE. O| d:n%mв#?:D EIv~D] @R#D1iߞ/U㕮cr mLvx}Ihn1vK;Ӌ ¡R 9kLrsX0yD%oaa*/o0kafvv`u9]lD|%bb46is ' Rr#SH"Y&S J*n!\JFRbo'QGU'xSts[cZх?=t"PH&cKI"~H|?UkߝA9ܓv-a g.O>`Mj&a"”l^Px ULb1u&l>\a" ̽%W)Pr 5,wjvG/'MZ6;WceƢj$V~ ܂rnagg6Fmnw%!{eVݿm<BW(RAle%ڑ9ct9,XqMF4Н╪H$oΛWŤGIMv+ƃ=[Qk;S/oG}NPF:kI4υYfD.S<@mjᕍd_]'RGraeSw pʁmJL?d?U2r-^`N=]y/-o 1N8ݴr3Ӗ=^@X.( ( ]_ e2gvLG!P$G '6N0{Ns3T]Q@ۅnE *ET;DOMUxfV&S*A7 Sb`!+)[Mp|.HC~>eBPUަʾ٭(PR"{tGPIzϝC勳(E6gG#Pz# f[fߤL]/:hɖ>r+&ӼK~:0&z<)F BQV>W 8yCۮ;vaXs~BzY_߉ŰH,q /ϵ]{I䬨'ȟ ;H46`T@Fc&yz]gQ TFt5Ē VnXwZ:s +ܤXp1OW|[?isDN62cӗ+R: b?ʇ;7!(G_E9ou/zSNXfsӐc>GޓZGeؙ!I7˱ҁM!򦕛c~!wHa'c'np &QKl\ L'},A@cyRJ\^3!?J< Aݫ\+B9vGh }\y:qOHa-ljMy.k F 4ݛf8YY:2D+Sth9Z mYEe?/JAoƛ:)SG^1F_[vY(VGEo߫7ѭN:w]}X5lZwV'!kTw[~&'$-e#=a7xK}o_ɘ|LrQX[!1Pzcy5VXRt0{~~٤kC||'|U3swD] ,Nk4Faktݜˁ&(/m*q菱Q8TW%KH a\jTY|`ԝPLg%~GDM1tSf:ǴRs p" ̿IbAE2zvwܹ}f{,hz݊@Q䑑6HVݜL:[4u.1#~3}/oW6\zx͑bݐM^V]&0[diAK ?At] 3]vIkIZ Gc*MeK%`6,qeZq&צCLG8Vo()I H_h1/hKc<-rf1:PG;H` ;tZ넝g[O~q=6Y'Deo^'N6Xf&ZZuAvuB7L;P{ohّԖGfF14cd[gdMX7V+G⍘@4(p\D>nRv 94Šد5_R,n1db ^ 7#~:>CJB'Uȴ\*Xp]ab=/|1F&Ra'IW`H,6 nEoӨytdJ<K1bDT2LABw}TG='&h '6f,LK*SIeAcyuwr ;Yr"ڢIٿ?POF9"ßUf6CMONx*ŋHS˰٧t02|* !32ݍ,zr95=0 08!WϜ!e@~$AwE 2fE,aZ|!v$a[OUFP n睹#l-E9$x%nP |#o>! *{ܰt}9eG"֝M1ƳD SM6{8Ԝ R!}9~3,z u:p$BRR:nD(U(9h|0"pַpBkB%3ffO ny/ftk p2)r pȯ+lIOMظ4 #fحl& rIJpōsց!fMez1oI'SI,GW`]:Y^;HnZLֱoUÊ-kCgLo0ִW$fq2j2J{w[Qg<*s&,:?H`a2N`d\G"N+ԞCûJȐ݉⭾mЪ[*35򲍢L{wE2?S~THƍîkGπn$p Z,R duMҐҝv-zIֆ.BYjBzjN_3&(B+H-(azX{ϏEZdW4 b!5 wxK]Q.J{x%ȼ2=Ue,haa*ҖzW d }*I ._N`s-J 𗈠XqSù&m:j9nc6,*!_'st k $nڣ}I>[\+0XG4`b~K&tX^ń( :hPACn\t7{WC|4ʋӞjuOj0ZT&_Ej\u=b+G;1bց|ā?2MNwAcz4r5 mRMuuјT s3E%P@ nE[8; ItRuN?(H7 0H7OLyUUHo.}xC9o1_Wbb6@MEBg>mXǎB -+C/6 bI*}-VJz3'i(ģ^3vdh!D҇ kP\1 ,v+&'a-xnD]S߬m6s2@x\gl@\b7j euơ>"anԆ xԭ{%P25 T}9#WqJXʌEs5yƷ͔Fì  i <:x$i^u!-dj}5`qr݄1&Z 'e, /)SUF6({ɪ$^UEx%!drd޳Rƴmvn@tolJItR̵ DhЮ[5Cn%ec|31Fߗv%OȘ ﶠf2y/>W2gPx7INûM?MI^9E *֭v]+3M&p琔owvAeO{?|TyiOHoWDc7;=nd^<6-~u3O=ؽ YV?pظCЧ>tdJZvGҁO.@ kyH4w[Y/GvO)\8_s] EW,5#XMc5KI ݈|({g3.oȳ/Fw'NW$%ObYrO{¸W%,_*lCm>͇{Pp!|,R%}W~[wf!׎DC!mkX@.;N Sj>hF?k}8lLk )gCŕ WRSTu\l}a@ |p6 D9wSk)kx~]4;ՔOV` OK#!dw#UO+|o` XEeOk 2Ճa`tyj}y@&]o)4>W= {j EdA@gߝXf4ajK5["xl.e"'F\;QZĸWhAS}btdÔ)劫$Ѿ Ԗ@p M[5Y}YNtgg_CN Y4)tSԽ޾:8uA#J{'Fjqؘ?EY_bk2R{Hl?4&sсX̖Aݏ=.oE~3%'H{hkT@g1K|ͻyĈn*n!dJ&v骥?3 gh;䱔5D狝n!]LpՔ:A_~fXgDJKy҅B{{l$}ںOUy߲sR"[&Z%P3h 5 >oGC575f/\۪,z+6[ BVy-$.9W"& (mr[+KD&P_B]RA%uOi|*B\7e ys&NwXaJim%|3B<&Pj]u *u![I-+ֳ'c}LyMEՉRQE0fL:M$ _HicG~{\gX\RO_?  5&CRe2E5$y`L(4HR35tC4=W yaL*}Oi^*kǵrv:G/8=U@1^Lg +0:$zTddD%ЫF0%*v ;&_Jηq68B嬼/ _?K['dbQw *P%8tUdn{TR#y +א HԟVV?#^ NJTX֘0ZFo9|*UA1\d^uU^eszz xAuƃDŽ}'ɚep;]ďx̢mw\˔PQ]BlY8];Ee>!kzFD ;>E--P:8{6Gm銾Nva5k{Vc1( )vEF`kG&kY+$B86')o=K$"W$L1Zqc-a. WΏٱ< *P$ՃMrMC"0|z=5ES4b%3 ژBc 8B:ŇZ&SZۑ͊xYHt]LXv@E3 fTERs#pY ;} (" wTKktרQ~%-zg|݌ CssSFo?sþ׈ O1ɍVڤu)+K+!1`dWG_4ŇƤ_x{t>W %>`x" kGwef&p|[I~Iz:4E-Kg 8ucR̴赟㯷~N:qeنz"6T鵧شMh*u0~>}z-qûch_X'keoKYMJۮ36AyYk sC1!/TBqo{ !J[=}~C5^E}7A, _~1%<xÄ1ժ XB$o觨^1\n5zZ# ~ F"CxE[ .-T@k!mRJ~ddE6Oawň&Ĺ㺾H& ө|QԢiK E/ }»Eotxh\Ed!!m\6k|+P,: W,RcghpD:6A('-W m_9́+llcj@6pІoЈoÁK{ܝPtsu$^E|Dbx9.mGjl%m_ZH@7AO~R؟OxAgoҮ1f~Q"]F3ı_*䱽F@6rfƹg 5K+v|rc_,hI9\< *e>%(jH "/@aٝ;#?Ehp2;] }FI(У/> [ &Q='b{Y.f+Jheu7I7(e/+)rX:$~ɞHw)hJq &,IOQ9`m 7yC`0Jah*'^&(Ɋi&s=>jp9;ğr+)@v5V{:Lo@\e&n">u/z_1;"@|$tԆa@c艄U- 4.N5x !d=Hb ̥LMu| 0$b8249Mœ^ ͛HHc0>,F$"ux(LSr|{c~tvC1 FK`(2_{=n?{aaƆqE$6ĩ:T̎c9-9`q!sG҄D,MUth{' 0,|$!L;܆&II1@ui}g*ԞCSG2< (S_fv%E$ ?]z;WŅv(g.$7s2MXm@5ՐMߚyG6Bw%:Hc;5 lRY:x\M`7z2_<|zhI8h|qO m6X8 Q# 1Q'#:]&H6b7BDI:[yTzez:Y> miH=(\%G$-5gQ#DHY)vqJX(~(ΦcrQ_Ftmhl:PJA{%L_^EԎhaC}A J'Hk@FШ30<Lt/ ;bu0 w:Ÿ-SqTĕAIaF6jl$|~ V<5fUj! {DGڨTdjj;8]E.De D|ȃsQ;7G\P02I5vx +mypayC(yVgoW%5Th&I1N-*mRz RsE<5gcl2r Zp/qWoC-8RxG\1C\2!+AeʜL}pxAG(,Ҝз4飧G ?iBtł8 `"lkI^?:K8có?𷦩x@Q,8.#O?uXd|G L!?^ko -;}pr}BD[,z s9T] 2a˶yus. =cʦ}lXÜUL]-/]T-\n3k%ɚ<*_ c (7Jtڳ t ՛Z gMzlD% 8ϙ|4!©FenM?c`E }D4S^Cp 'x gya;; φ'YWJ7224ġوưyIRZPn8optVΝzֿ|;g M I#-%ݻEuB G.utL|πYTE p#(bPyp\!^kAN󷋾f2/ܴJJTBO%d\:j[2 =ׂպ$eW_bbO^|&cpm[|a ݼ%~&m6u&&4v?a91h驼L&?uz-p"@1Y=!?Z+bR3E\*Hg/諿肚L+Eۡɞe>7Nm耝#B|BꤩA2r^+0]wH~wq d {+qn|0etSNW=S KB_ikƦP`]*&Lfosi(ꣽ$py`fQtW.L/ k*5? Ug ߾"^1Ҹl%nͫg#퍚3 ojz:Je=Q"d $uxw7H6ThLY?KI:аC•ëU ;1M+y ÑeN/l璷^ǖtQ9x ɴ/Ki%A#(_Һ̵*KT=b_{tY4AHdTF$c9PhSzo_AvRxi^72$S2дә$g_o|2&v}~&$?|05 )W +qr۫~J9 .0$ILrCGUofawCGxpf3ɗځDpK IxɌ\ u&IKKti#V-f.|VyzO|U9Vg6h2NOeе_8G-ĶR'8sc#[U~8SDK2ѓқ5׏Bq_yj!䢓X,_0fKX*7c +7>FGpv(RڱF *>Ĕꗆ+`]Y+joxh<]mcnfXEz&CI.{w'DjGn1)L䢸n W%p&q+@y!Bӈ],yrtXU5W$vCWۨY @wgaY,}sU+V0/ GNcC!d/~)G&ai5 3`T8m/8|8a6+{=dU9l! ˢVkpJy;o-g~MrBv{DJ`9yeYu[nB!]D{rD7tldl:e8x6U%vj?njeBv`+EJQx rIK"2_r's7NjRƚzK/z}6ե/BU7ww)`m1ԺЉ) +j.)gUWƿ* l'Ԛ0CNqŰ\0z~&nx*UC,#S7QO ), -(Mw7}:&Z鿡T0\> '^?4EƠ^Yzg^)$+YlTAwv` 8ܧs(vLx ;I+poqrp4[^>?qC$ͺLj~HWn'"Z-)oV^%}@~;ac/׾ bŮgơax]s}DOK&+ˡe| , x4gKjs ,U鬧)趟jz&g5 %co,nX:5)aY`d-^ =h}1HfgEO#ju fGatuM19PC_ېa.n_!3!JAq:xBCcYo4=:L#CS,/я$H4uAv| Ɩ9chXX /p9"W( 78| ԉ  (MX'q5SljnB1ҰYi~եFY#Uf*0 ? XXhB+8N =}l'"眦r: )RLܭ74uZ6kr 1domgy9iOjQu}..rQe",; -̿rwv=weP` m$ qZrjQ|+I&{dA'<͸wtr/SduJl~]иRYQ}k0š~ _v =.?ި|'0/pmMݜGw 9kˎIJ~c;G٢ĕ0ey\4Oj.,eFH/͓V֪#0X~"7ϚF$% H呇d+\]"z~{%J0#{ < Ko1sN6(꟭śVhNjZ\{q&I~:1P)=Kll0%;<'n~ALY@<0Zg ?r`!_`A7! o v 6Q>2)xYBw0!{hbVⶊ>D)tg]oH?%㛪=l~k@O뽅JIiBj|%ەe.? cr~/3Pp3X/gR&˾/".;,Jz]4 Ci&hP)3`lgonܦCFR >$p҅i_:+GKA-F-vˮ1Ye?ceUOÀm{lM>w& ~`/޳y(l!zkM1,k!{u$8.d\^QU~]EcbTjU C8L뵿o<[ gϰ$/eW`d~.ȶk5[>HgFqjPؽj8&Djb[0؏ӔJ3߽3iyw]!A|cpP`=GfXr&Xy/ɹ^Wd E1;LJ4F][hT|L^LdR*!/҉}Y9j͐B0ҦNpY:f*щQ5Χ`f滖u҆gKNz#k_aOno٘h>5|8ᐫ<2́<"_|#'aq7t¼YԣΑ\#3P魩v*{^?9`QS67 UX)_P0 K3mxK aàX;dn,͸#|z4Lnzj\҅1U4 D]`ps0pQ㼱k$(su/n=#pH:{!(1P`e`pu}^pKpS8`dqqR?n$q#O}1tff~Ed08-!5s=Ne5-حKI O;;іim3 y@" D`.xw +8D,B?Ȭzӷ)$8\z-G`O7 *hg0}"y9[w?DojnQ/auwYg4~8L7%tEA_ldxgj. G̽z&4^9eQ u*}ZK@ ґ^5Va U_7t@࿄p`x J$Q:q}̕Le}' 3ㇶ ene iGNy_oc 9֢jV5j瞯MtS֭ٝIcrN7kR(tiS=B&0HO,IvHcxEa5wg'^c 7 ,ZI:{&딖Y'Qc֩B߷61ʡ Fj+1C{S5͟h,bX N։+>pv>ctn ]ei|p_sTei5HR鶭lh{Õs7"fq.`M{\]{Đ$GQbUp5cdy.@v!ZLחL**Uho A R]1h4%{G=IOB'eONpH eo_E_ !UMC拖 A3XJv8f}P=W vGUh@ˏ{N5Z1l@+.V!f.HiFJlK"E㤝ZB .rLhMIwÃ/Ew$K/JߝmC7_ >dsoSSpN0i@\[_GӃ.Ye.'3P\,~B=Tf|\*|~yN&_i$k+s rDWP~k9F;'$ Acew7MP~,G/rA.YŻDA~Ƣ?}`ѽ$[Ԥes{:;W7$8nsX8@ˀ.} ,i+2H\ZhԒ{Խ b{R+n*-FY]Μjqlw+L񦟚S&I9%p}Dq:R Tq&ۓE&1"-ozwNȓh h7$ȚB%FgB?i'nFkGዯkl ڶ~$'x+T<TY*Qz fBD4Jww鈃ASOwQg `KD^آ6<&=^KA>t=4TuJh{yԤJG}҈ObMoBex3`XטJxLrԻ:օE9!Rvk} R!9;0%:;\bԏE>:|a̎1X4h"@Ī,H :&Jȍr`9FUt7sbbm䲇{hڨ׮u:5-'9Ew>`sLg+;&>2L֑T\T ǾW +`Mb7mOf.ET˔.A_$ PRM?XwR@d﷿t"/ON؁~&Z2vydWl|3ՌZ$ PԟJl+u9Ѐn䙢\4d_Ùvb$(&.z0<eT UO\!KMzDS"r9ܨirF fv N@{5.YZ}qۇWܕ#9zz UuQ*ۿ=@'38N_Et- "?*& <8tj ,dH\T.Ji 7.Wb6ZxMFKl\FkrY fY6XH0&G@ B҂:Uߠ~Qmqvb ܾ0I+򍜲Fy#vl}GfmѪQbwcIQE1y_փm=k1 쁧!ұ(WʳPH\wR ,\8=jxx j@ @~Rj/EBeΙ* 1=phVj=eWg9'DaVajG0u\$e9[b}fp&M ~|:;Nrr^P3Ne錅4nOtgeVsCOMEzښ,Ԯs0LD|XAE.X">#@@*䤎rD{İfKѣ᪸jdڠ]s㜦kg|߸ǒC2bZagSD\ΘgF)t̳Z=j4>Z,[LI1m? TDLT%$Y Nj m )Ffˣغb!1O3=@ Ϙ[RADYFME(3N&?4wBa_3zeu''IğܝJwLz)ʡܶ}NoFhil{ʷ]wy`w2"OMZpVRae2/"5`YҚLCs !5Rl!5p7VMVbxPa=oaca#pR&"r x#!JvM{-YTeuFNh*rh{P<iɳdzm,@;VY'5rZqrhng}c12R/ю5f|scdD]36VC#Ejw=&a2qCbGr]c72R&eԜyjWOyŒ F|h- 0vF$СM6&D?7Mm^aBʍH(X3p<>*4C\cj 9 MCjWo&bZ#c6 D@9YkHy#h8li\$Sp 6@ kb6 @I)JH?vr2EKWhu+J6(@1 Pz.N:^IX!l>.))itA/[eq%iC;=6e[u39Fh ؀[-?q3XIdS"8KUNChDG~h,u ;NBIvhd1{4g*D"hYҒΧĨdmqUVj;_8 x]*ԏ.}`HF6#C%H@Ћq,{Θm{(2&8(u{{P,p&35LCb$}/Ek XjV(u][(ž*CQ?dY|8<36t.poor5_*t{*٪WZJ1=ߐ?֓?m&džW qvmaJ0~LV '=ÌhyAwcL*h{{EUica-ӉJ 5r%[IFʩ+OQ_|0vw ky$q=qC;u?OLF_pY͎xҾ& 48g"sGj)<_IK^&"t>ȃϘZػɮx"\kwR&: ?4vfU\B~J?-onՠxe$8EɆ饕GV!Tމ@U+~ Sĩnmj!Z7?eWc&.QàKUb c~p+|1":q1k]u{ŏAvCV>'`IUkQ~#Y{Ha7  3Y`߂+Epr!#`ۻhH@ VB<'X=Y[(q~Ohۀ d:}%vlcJ&lOd U-0>I7 fw,sՒ [b&Xà'ZWVz/ 7EVг] 6!I{o*3? 0=* +2㜥:qʯ=ŀ1 J?+K(!?{]KI|G.C +%/..q0O mlVcǏl\?O vs^OS$:Ìn;"뙆@f&1g8^ݟ-$6B+HRW e E+ב[}ޓ×[nLْ^g癢N$U % r_G:@%;8%`^\gl.0LdYSNt@\%&&yR0ƮKtU[@A,'v+r0B^X٤~`F矆d鬉c39Gc}Ӗ;g\sz9^z{,@K2&0m598}pO@qP~{Y)JEZ&`ޓzNPuI@*b"*U9:S+MvcӇ-+ J}g ]c9k9+.8#jb=O`t TNn]Xhz#<%t_7ؾMͱoE!_bc)~s $U\ &wIUX||XO# 6QGDh1)Ƀ,8P6ceqKWc&pNoB7 y^W|{" 7N0B\+1HZ%T46r>\k+~ Ljwnn71dҵJ _ÜvYw#dm\+N(?pjF:ka[ڽ9ls6$_e5M{dUy/zM'r4.o= 1l -E|y=]ٵ'h8G٭;a+t&̯vrEE}#z(Vb&} #%yGc:5AUl w6ĝk6IwY[ _Ҭ9SW>$k||lI9dgʻ۰9`vQeyN1ĉ"aRU+`1qqo!ݗ"(#uM^49jelAg6 ffO:̱*$ok,2N/9EE5dR(5kX!$It`o'p@!(]Ph831]s##64uƫpqɠFT`z.9>i]d|"1F!cA(Uf=Y:Y}3r/-Ȥ1L3*Eju$ִzűY̫y@FiOz.3æ;a4;V:(7-|'; 0aX7 e:^$c}2ZPCu3żX<)7ڮPl!}Hp\|4ƥeFd%%8/9 ^0Az{^ef~'bWC;)SQI2\: # Ve;d]@E:?S\qFkwC*&&jS)FPo]EiNk,ƍtNRZ~,~u$eVAjbH So٢HU9NOVt%yiz*o]'p߷AnBi&/]>;.nsIc̵ %U;΅هwDt|L^})](#Pփød ǾcT{}&-2q:e0Xy0dpxvQ@+@rO@Â@a2n0Ǝ iŌ?6HȤ[kA X*~ !\a - $*{GnX"1®1~Ҍ  g։/V5lI(*?JrrrL%3@%Wӆ9t&"jITRu\ _1NDa5$}^qaѡru!tQN@bG3u <񄔼FNN~&*3_=eQ@o~~0L }CT:w=D]ϼqTJ!XI4H0v&_7?ֱ8* BcrX2B1wcڂzv Wˇzo\wiv9Fʖ TKtnv;/ ZaN`y%-s l29gFr,Yt^dyߴ 4TsQ.F .,0Ql%uW[&sBRȠ='+7$+Hw(baZ\{ DbZSY2boQ9\O!3Uƿ( $IhC'GcvB{XUِn3#4-(>e"*@u.;|>BG8&.i  TaO{kb{Qf?MȆd[.2%i.)I}>=d̒ 6h;G^V?!QJEܴ/ȕmZlpqX P8<[҃;V].솙8aMw-HHGAzJ D!޼LcNo¼`KGZgd;n|?bt^/,A{ei]Ia!@>}+睔*{:=5bvE0&;` ZFO 2K ]hfrPd%։$mƞUǪ=du-U6.ޕ;iPW)bz_?aݎ Ecrx$r4m_HQ\Ƕ6my$\FU 0pgmԝΠo_,;Xk< X.$ =Y.%Fb|}(t nW8J"c5h1HHALw]7bSr-1F̓,<rjlC'N7JjVr8bHZS ݽlĤ3@tjDz&3bM toۯy̱8GYs|EqNDtH-L4zw&U\'#: n`MDN۶xyBnwKÐΖ;?c{Sw*/'l6S!oY|b2Z;Mtݩ3iUųƋjD}[ 2{ՖGs%gRd W/gdc)RDX7o}KR."m"pN ,U3vhdl I/#ھѥ7k\EUREq_zbӇQ1]#tBD7LjҘ>K*S͏-a2S+I6LZ9fLdFNu'ˠsO򞤆)? CF*%#6?"qE}_U;>( 5)VH0H/JF )#])P\M`ND Nl4=:$k.9p蕓:xWԧs7)&Kk.P"ҿ}tvf@&~Ɓ-p?!!ThµN9w::Biq|z/Ma!P݌VR A鲺PAdAZĪz8SA PUmϪo~1erU\&H9^8Y:m`R@ 1Lf{}AbB$.^^\E߶l8›sqSOm+Ϋwϟ>[|<gm7:2b=b):Ae=gf١& kՃHlP7d#FU+}z|&t,#]l",Hx%{iwbc6K<]%w#4 }/myp&WhII fz-<<*NZ 1@.ЍxgHy>10fTYt8۠ ѥVJmy@dU}|1aC\LgSL[t1)5XI ۊtw:kO}ꖝ89&HX,Or_MsQa[,NN{ùVa\oǃ6-< JIlGh:pPeyچJ ˊfI@ՅD*g35'ԀuTGxF@>(jZ,=Z?G|@l\㒩u7;ҵDŽE|Ak#$NK`{6o^s^@ݸ1+{88o,w޻uj>GӗhM1$"c H 0i s܍3}sʠ6~SwZީ:.Іy!dwtwg`SQ ~EVltSHFӯ ʍ@d2 ?ܛp@FG Dyi[;FUq<>,ՓfH$@壇d%uRh\V%!w#5ʺS{s1`YtZYH4k>D}Dc pۯpI*m?s;|^qz')ګxŧd|᎔Lș">RTvdL,SR H 2C\zOk6u?"Oѡ[HhPY[2?ԩ ]ۙ$q438"4Ufo62@)tFS/ ^DbO._3EFCW70~𐰕2w'#o2ƫs>ݶ]g ~9GR$Jx wu}tX*MiEl0tqs(mNzOltc+kk{?!7Dk DŘ%)&u>Y̝3d+= }{gu!JsX7y]9 {@ 'B2:p]p9}}XD%)Ng`bx9 E.{=~( BnVa]L^lɯ&4l֎ol;Ṻ8W.uD_)bdgpf$zo4;v:H7oJ8@G/ܷhʸ#,=#G$ݿ6L}m 2{$AP 0x} . j*tϜ)e! ~ .X2wwQǰ*P2,oq K=*(mcv>ݎL|LlaDeͱ&o_޹3>x$Ti's tnm;K`;W]>ck5л`igY+eS ~i%~-3 [e,=PG%ra%ϸH4c}朆 ;4v'ːD; lDҭo3~xUlơw@نɾvK!jn-]$>N^[䋍xYT JqT5Qkn KZB`{zd7"HL҄S~ޑ"{QCŞ3= p0,yqhqF:]$<' ?EPQjVy OCuZ];6Elq.BىuC+Xv XNq`>3ݴ2qvw,TXZ"eo[.6b>\^qtN%Q+rn@Sp&ױdY~0.[Zں38Bъ~K_s`'JY\+Df? ~ZC3+NGA``Aʦjb -*AVܸ]6z뮀'p{R]hOc&g`` &T~ 6M\:yI}#PbkQv;@ 8E5?=9@@Cy;,I{.Fz(CpjÝ8/{7 l ͖z#nbFlhyk-Ŵ(@,s5bϪp`1!NIU43ayTQ0ˋ l'OIʯzmj1s쐸xT-.s0?,WV <TA7V*^[eu0q+#S/Z2!x^a::U8}bdjB[Y֗.iп!XQZYW0]ڑ7g|  'KA Uۙ]nUFrj*4(!yQzm \]1g(Tu=)\0Vlj;wa"Ŋv:j 4nG2_$^0Y㳱}e3ħXRb؊[N"*,#{rBk;fS]Fua *1"/5OT4ҹp])Apu.IddVkPc!LU똟uy pbE S?0]2tN7Xty2Ž$DFhK*ʹʢP.~9H*` v^ݗ? S*E`o<1 7[+Z(eXM&zҫ0 S"N$NB]q3 LQ.~ Uv|`bQ~( =J)Oa߇Jqmnm_ڥ?P]Niyd+hҬ"gZK{a-/Co'U,Iq*zjfwJWkb"`Ėւ7 ƣ*,q'ǎ8΃LχPQ ZDOx|Eb"lÁ5F5wϰjf:9@E *Ybpi|GF _cC *`52/CIAnJJSfG&6&0e`(fAC_bQ^ boKЭ8=\ %>͢Aq]Kv==>T gך zuL?Hx9&O?&l>6Nk՝^{?(v2V4lS0,-AM'4S9qR'BnRb^Zհĭbr'7_R2 LiP(β*,XmzfXэ!bkLMwژ)V9$e}er%{c cѷBor\<C:>/p\sF}$С$/Ov\0euP TG15XuKk?1 hj݊6BȄV*Ӵv"hU/:(B[+En#I_Ft\+RL+0e%?e7#\=gmf0%o |$u.7c3G^)c𶲧Bԗ 1hCLN\_xpXKm6B\yN}i1i*tqy" ʙ#7qd 9@gżpPm L?߭A oC͉ͧf#t"P!~L;L*]!^Nc)m?OvYD uELՊVJ 7qCrg]M Ym@}Jo̐RZ_se}P2Ep1!fpbb2ѽ_3vU.#g? =( ɟ~(/p$h^QشɳA,1X]w/7RξQ#_Sx>Mafi,c Z(qximNS\_^-@ gm("ًc:S Jr4vz)Ou-OcƚIѿ~w)˲gK>T6QbA7dz/PYPCaFr6 o1,po<9O{XsHDf.o~ƿ{=nm>C<9ׁdR'3 EG;T^dXz ą'"·_Smo~uT'j;حd'O6ʎ¸G8>!5\cnB4tU/oҟ-Bc{5-J,}=ڛBOp`< Q&Ć92/՛Wa}wf xs>9{X (Xo+/߱Xpv|9B#V!['IfG \z~<`-H5;J7olP{>ol//DvK}I 1lHgv 7G_͙{;+SA\O]5φ vI$~f ry|u*&9rԫ$5͊h NCxRzYc/1 4SVUf#6_xn5▙.b!"!R6"1dOAxv,M-@-]aWm b^!I6 oQHtPe$@Ik{P{3BEm% l!)RqY?%c Z_wfYΜGtn+^yGIlEyDajp&dfZ1$X8 ^iIL>>er~IVN~꒺:auG}EϘ{%7Cp,mT"(V^[t)&>qs wuΉ-6e:ÆJ] Px]% A S4'i>oBJ6Ԉ[>V.߃+ZOtҞqlJfM?4JSloUʜ7e/g&JsqlBnzcz&kjh-\.o7dl2 #D1:( ̋Cu ڳ7"1艃|? Һ=ZFNg^{ xs`7T(h-߮ڟIn5im=~|/M#1zUXf'Onl3y76 ]y"d^*PXc_Pʜm-VHzGqTe\lnkf#IR㜆]VG&Q*Fa3;7뉏ȴ`p< xnn7T L/;^!0-@hl֮8?F+A|or^\$ 'E(euS(Y1ꮮGvAG[-g@kud;3Wf<~Z7oBU WģjJVj tfJEO &f}ckQٷ6+Pogyn6-qYC Ђ:8 V]q%g>cgGzQ8l;s='&djw 27f&0iMp  /EkNjz-}ۤH pQ7n;o..F癊R.2ҙ,G}h0#@ٗQq]Sʱu.@)O vt/ؚy vU@YrDB@"|wjbL_pѯ{`pLip.=UktmK 4[)>HԯOC¨啻a*j/n*$@7]X07Jh:d^(_*=𷤩{P#ayn!瞴xC'GiYy f]4Q]μ8PA  ܊"uνFpׄJѫ 4[ORDKN3 £ui",f{6z{C.[8Jg \4dU!@:1DStז:0ȌRcPgGIJ&vJz #gx1r+WY9Zs u nճ|A@wm):sjSs"*gHh\fg%Q~A7@\I^#:-ӹ.6]}pd]:^|Ѫ-=vNap2Y{iwD&!EDQ}zPQ>)}pte̡=Xf}S:S9;ׅ&uJkBᰈUj/*ڐl Ѧ1h €Mt ^T ,s4$,i!У&B iODLW/ϩBKm v # b\3f& έ9Z@4,/^o O*eE`$R_$oɒB%AJKͼ GMGi+K;c!wh#xCY]wn!H8CC Gcx?a7c#cMϠjvoVV5$ޫ}xV|9UQEiX[ˑdT D_I!}DW3T+FmmHpfb {{B Z4LߏM:+-9 P,;orL"*&gNe `W<[5 Ejq3#VTV|:hh&{Nz>Gdc Kk~`+FJ G;k?ThGCMp.ȑ0))2Nh-k}yBQ}G]JCpb`DZV˜-/,C7T3^L.5GɶJI~uGt8zshУ*g4Ϝ[w0Yϲp|RR*ӳ@X=PT#é!JQ \rB09~b?fj]Lk Uʕsf61k1dB}<;9ר%"PT̃u1a0-IKH3-XqVBcW~+`'\X?A[oIZ\ySn^y1e/'W>PjT43Dl)"$0lhSF?6i a3p6X$,AM)]Qb6"lH8;v C7x2Lu}.^ IWo\qxG e;֢{& @A(:4i6?bT𡖀]VtAƄPl{qHvǍR1sj2:1R-6']L/1g}lQr>qbf)Zif T?,o_s3疼dYI~#B)A蠛S 7 ''"|gBtWU" }W4"%NfKP뜴YkM?\MŁ%[ T{~UDwSUL.@:)iSѶ)glqJ% %`&i!VBT1uN3, >@O&̌|%^-Z,l9 kshJ-٫ ͋;/'x.w|w`!޲?wf3XW2$pqwd]\g="Z)Ȇy]QL{}_zRzhZYL)q6yKq:]G5W.,[^NS>sc\}gWRUϿV,Y;խi]~bVrg쌧|Eۂ#]_1?ءΊGBf7% )Q|mv^8HA.`6Y2wBEt:KX bro&iHstRjw"02$OU?KJx`q7 d`5E`"%qv"G688UUޣX~g$\܏ϓ.Q/mW'Ҕ L)XY,:aXloe,Btc QL''`;o]wKlnUxnyp4U/`Ẍt1u@% |`-cϙ986&6{-9RnvEۋbuD!}ӢE&dwJhR)sED쫙od5OnΪJW8cD Aѩ8"O9j|uAc)!&]g3C=Rq5x@(BXßܵB^;eƵݚ EgU8i^jvͲf2,(Oev]^䊁Z"dZ"j-bJh3*ij;m˅3YQQMJ-[wʅ8gGD&sxُ>Ҋݨ|[o!ǐJ.ɕT8ED[&$Ԓޘy3N>zp T@YlZR< \B^SÈBa{FOatKbGLj6^'0yw_%J流,Gb]R|oQ FÜoJ&7z`SˣA\v7<zj-MWT<̱IͲ5&~w4o|jXS-7K6m9CUZ8Ig-:6 .FY]yPmFw32ޒcA-62L,knw/|GZ/ǻfT"e LW]1V Gf}UY̔Ӯ~n+5'WQC ckMN,h3fզyCשT?dlz|'7 _WOSgmC6sf,"=(*bMU;lH鯦iQTKF.w_eA5N!9ݔG {,$~Ksaû~NeOrq̱+Ut >] KRb*lW( 5a Zր$c:]6i,E\םvȴĎδM98grJ$l7ł&HRzR d =Zg:eqxds91oe;i䵀}0V_坍m26g:; &6kfT.{6{oąIx1> 7֋Ag W ~6;7^VN{^hfg f{\XGiK5٢Zڍ6S5x5 HN+gLÓYp%H\뇌Pl!OjR5oV;u"Z;MsecdE1YCy h ,'C\4T`>%6ǟbm>( ͈7+0>K(T&;״ 0ZG<мSib?l9U߆<#g :ֶ{1`E$j>9-*~]?Αl f/e ҉@:O;F1D[hF@ "7Tpf1)fWʞa,Wp᧵\R(E_*ƣ# t(aNٓڴ[1g -\ . ޥ'xEbp)p؇*%ʟ iy&KDJeՏػ m@C-gJOn;'mf1_0g{xm)xc I4v=gJmԼQ=4t}Oe@S!:1{&[QKR%\#0<{;iV<>f0Z9>wPՄ㴼߽}j‡'@ 1:f4oGhڃ> q$bd}?ӶQQբi$8vsI''eS\O5V4?#pX{ )ffy ۂqȫQl^q2*7م;x3qʋ-tP/T~+jt)WwFxQӗ 95O}8XM >4&58yE#WH7V ^\P EE釳/5m dܼYszf9r7Ҙ9T6.zl2(kZsG4D8*]Ã9٨7ՅjF_tn>ˣ]L9<[\,(rm"xf诤yfeS윩͓fܩ9ňk@t"=O #;ÃL%S0f-XMbQYUe,+Q4{I`m 5NK -E1#[CvZΰqjӎRYNђ;LxI"X7.928eQ[צۊMY"2lx2zKCO50b=.P]Ž|"Y*jkB 3Qb.2㰵@Z jh*ȘEJzN|cL1bXwK #=.(+llɲp@'lh19)l~r azZ ữDZ@gڼ*fVK֙ۻз,@84FCwyew[TR-~ccC]n CN\T:|#s/OOgtD ̆j Bq$h=V C񖎋$H* @`K`s]zp{!Dq/Ĥ/X;|Hr iL-}>8>xiIJ`b+N;HS?L#VwgC2#w+`J](WA4Zr'͸pfw1R||B̛98' aū ~^5mC&-X_Qw+m =E=Y BIH*@l!&AjN7 pS6j:7.@i;'w=r%:11BA"ߏ܋1Q }tN:ƅyu(× ~ͯg.!x q]1kÒ#}dHD* E;vC4Eg/6aP;FYÒX΅4;DgL@05`^[W|SI *ĤtTD.<.F4ZFw(5}Q4X$2`9~TƟ+vnȣKpfK1| =2Vh8x6_M>m|GB]P=c)~c6#]ʮKxZDP?\1E݁EG+r'vwl's!s 6?W'C4`Kj8Z];b4dYI/bo3ƻ$Ƈ{Bxr`z6s5׷owgo5f> EZmMmCsپHC9Kv! FلdixZTA\v^ ͗L>0bIW>Q"K6JbW[r't&%iELABds(`p"kznX([gB"{>P묔 hsLKH5B5yKXP,Oٜuv.&g,Ua4մ̺JkYf_n@o{G}xM˩85NUdW|D-;X'rZ~*usu\],];_xIS+'ۓ+x=hÌvlW 1Cο; 4r3\-x }8^9Ӂ-Y.cEPÞN܂zX)Yck,I+v'z3/m˶ФsC*PYK 7Hlݤ`o$ԦQ?_p#u.ǽ@"v{}4g9&HgX8)`jX +)D_1TtR7Oiw)`^Eٓ-/bg*q6$VƐHsMWS{| E>!FaǾưe'l.0P1rmo #?QQzmU:ݟ٥`$pL\nL*m0txo+'w2iő)!%VDjx[G@7F7hQ`av~#Ķq^8_RB3T]hJ~b _!XSj~a#n%} U>biH6D{-^pT+m^Q<¹uW0(hPʪ})Ӌm".f-"v{lqkrANJPw.(݌s1 ,|eڛ'd&u $YJhC rbo<j(uGp?^c?VdŰkbh趐IF/M`F&˿>%%?iv̳%Er.8|+<Ïtky?KƲamd wz#% )sNK`2bԊu"h o³Rݿ9jvnOn`l܉U":r\@ úi r۰]hmȸ!o"]BCx U{Yiy~FI]#et[6G5l/ m @"2b64IfItSXyfD/?lOҴTKX w@fS vkז5'O#ԏAp20Ѻ-_nؗzH\-0K6U' T"2nx;O!a6x{,F}/dƕ (B&om`,/"rÛpik(-7'[Ʀ  X"FtQȗy .M̈V}hRܵ j8#y9,-D ?[b5w=; s*{{e |` \>R%'3ny:zBw+؇hdl~f.C fF%5*+/~\涎DX~[VSO<=B^%EZEadxeBLk% 7hhU$pXUوvLvRix!/Z|*` $3&XR ;E+`.VqKf˺pk1Fk|a=yNkԻ{Y̪sEJF`d~Xrb|>! %6L7f8:,[Hj7!Xkϳ#O.]7{' |~>" GSl5`L6?rnv'"%dstr'YeJDFjL_ GelLBXQ ! ݅JcҸ:vW%3fJ5Ƞ;RhN*[&p#pWu`Hy j>.<>|۳//5:BВZϲtB+fDO(]u!ej%vWGvl|YG7;=bfC1{ʱ˴ 5G ,D0>y0,x0jHUl t6 d#dZϓtFRV\$tdut<|~oC5Ġ)#_ S<ϫ7j $"|T1faq#Y׮j [.6V!#kp4`QrR4+u/`'\jͬH:R21wdޞ`6$E д"C@T@NC0 5׼(771M.Ŵ[MQ2o[w,w1U$kv*~ѧm6N=$'*1fZ@B>M#]G ߶QtL[ y}NBjRUus`o--UnN&eSUSƐ W+U=  4?4e:j(ΔMX"ۍ .c< HogB.^{1v2,YNVOuίSWk{K|7mJ qZQ)E僆$wލ"A5ZѼd!kTw2gU5 Tw:< 8wcؤ Qt~*CwvTH[Q(>@K)pF%iˁ)U|sZڧ Xs>ךS8=su/AmFCsQ n)UgkBQWΦqH]6kڎ6= Qވ.g0UH3kY"nڟAє86ULJgv(0i©}&݄zYI"ub& ĶRPJFd^0#paə2g?GT5H#! ZϦP5_Vg5cOmyKɔcJ57:~Λtg[ P*@~*%5yO6Vo#z2 ޒ yXa$kFwYM--$vv]L|CɕN<8Ѿ`iE|̘}"Cm4u RɡC}',4{"HZ|/d:p4R.{JX4Z#8l#אjtktG*F%Ҹ`%)kξ*=pQL8aY9şwu`Vh,ؑIe7n}c{%| 6/ifH̻1Joi 6nIixwy CCd tĕg l)%ӳ_D>o^(㮇H9GSkCR0n"Uu2ź )~D2:ڊ*ޏ7>5 OvWj8mG$A0'vL6wQr PWCn@`pX}yo *`va P$bp`jA+{2Ph!>ݥD54jx =&0b@ Ju0fCuM# XBiꟁB̗.D k<4V`UOF\m7b✂h_y~+UW49sI+`@/ F5 $'`n[jnnGrY8ˇJ6co)kWr*}17mĆ?'g ы+g1Vr|hkUm槜n~r UOJ"F4 #>>އ5STMf,hBk6jRA6juL7X'Q a!a$"e4HExRQ)$cvkш:,1tΒ^Tn&.7XZl|O%zi#%oXG{^F^nv J}J,dS\AvDUY6.L) :O8߯ij0}@k$G3ܒ nG1L|,Ǐ˿I9|_K^;Vi7&ii.0uE/OI(2J" AmI=? rlr湺7R8kDsƟM;%†c x^G_PP }jT䃬ccN˝Ĩw{L[nii{h]f4>Cu^7U\I K5?cz 8EJf:O{ƸJdl650[fԁjxE?R}+e;XLm7׊.0~_MH/rMҠ9"u 8^|^a'NEhHzmb$&qє@EqtN151R@w@)Kqg9rL֪Su]Uq¯MڨZ>p0@ZUD_ݣet {jw!6+%&D{^}k-BO4PLr^_wK}?s0(6#Ǥ x={bxQ"F!9 ~8n ÿ Mp$Nv#-_1 >Mh]f4ucpCst!K2 :bJ|LxB5 >ᗤH`&P'ń8~R%`bLȲl!P d-yEPNÛ@]_3k*F qA|xn>?h׷TRi P;y=i<rI_]%SȹUΏZ3$O'4HEGs'Xdѵ])r #6+QtQmxGN[byGaz؝Xs7-W!EPiHRMۈk._8=+iU c0eւA3,_94 D83 U8Rdę =.&"qr@$ mgsxunJQ=B <Ǟ:l >͑xI%k2F1*waqLWJR&QKnӯ "3k<9xUKC;aޣ(#^Utݯ%8Q?$&Es4/k7/:0?;ËE6zM=n)k?ߓ0N^Μ?:o9FBuHF Qox'i!8jrET(1{h`<9 LY /DS)]a4kMHp=POv)uwvv6u8&_2}WAȐZ a40T)Q%U)Uz1އt~JyJ`1L9}m)pxyuoS]b߀`~Q2%;ż:["7LSRk/-Sј7ܺ >m7a_"JUqYDϝJ1ǮS#\ɨ &8Xp`mJQ.8F(pgxv:`++]/}O$8B1o jVA:a(("])8: XۀS N=f卜[7)?l輪6A\UDpר A($I+KG=uD,_޶0w)^Yٓ*PMSGq;r>/[JM{^8qCcFJ(}197>On0,ӓ]aPk;+\ɆS\ދ$OiKXN47@@pӴ6*V]ᚕH-ÉnT=pOѝ![k.ńR]s^TV$xgEb#[\;䱖]1|Jɯ1hʼ[I ?ޛ4ΤHwꚯhzϒ 9>EI`}a9] #W>WO,cVPa8!o)0Z%鲋k0|dI^$fu`;ɭuR,mzusw#ľv=]3h2.ŤO=:)7̂(B+##n}άU/X#݊{ըӱ;jqn YV]'S]qI D{Y1%&[U6}.+;P{'dn"2)ߕÄHvoAkcYYA( 6lB+JrY"kF KsG|9O0(p8# Wk!Fd鿿Z[H|1.7pl\UAu^!>Te :o ļ r#L{e*ٵ/?'-ne{O1v򲗕 lg"N?(VuQSË*="8-8D(@pI{r$:!, Ie.TGIDP2HF nϜ'+^o}H0WI' PH'͍[rڤw^VNP<%  _E`z0߹-5fXBJ3LJ޸ + {^91có\wm± v̪wped;wE1::.ȯ g08R0pF%RNF% 34ߠ1)iPGm a!s<ϟd'p#+sVjMEK|"-? XS9E^Pϵ^2cza/39Х>deq{~![KD/f?R^+Xƿ`Š˞.2ϜdU*@\ĤU;o[DwLY5^ \gˀ/M;Ucc>&A=.c֋Áv"Ik9TtLvZցq3z.3(*IMZph]C[DwuD2n9 [dY7IXGup{<_8p%|oFO[tsIf)Tg&yxk],τkMD0C8cMZAX a= ƵYӛgICKBX^m>k"}x~\!ńieS#%R!!;@wE|M_}(9t:d˪5-TD2Pba+꼸,Q 9ހllK[By|7CcJKb-]4׿x@ԊeP~o?-/T*n5?Ժ 0k=c)c'ɣ &;r$ E0 v v `KW=Fƣ?3r! 4Ju38 ,`"iqQY:ٽ/U7-O7?_MU7.z߻6^j0۞M<) e9u)p3p:[d bK̀h4xypz-rW5'^x*3 ip h:;1]-<>VZ=4 ] q6d ϓ*6& _3tuR,@U۴<^PB72`eM2"Q6l2fƒ5>'""Svw}Tݾնm]RZ3 Wl V‚Ti-tc' 2\YQ py)J4/ *m(@H0Բ[iUniH3svF~ɇ}L^i̐ {}py,]ط#A~?;:BV7IZf77iS G#7Aw qOߦ aM tȠǐj`_j3tN EM,]GcEr";u?\#k\ 5ز-QYiց>}N,`&Xy.smzaEߠo UUOi6?Z؂C= pT-`8' l㍼7BC?> w iJR ywMnO+S 7.1w0Tڇ3jqH \q9 1"+ m(AD- yy8QNU881K}`症)TiQ1͹]w"}Sh)T 6@F RUH"'@.Ofs9꒾"My%jbp]3E~7Xygj7ZLÝm[7?*es"#JdhXBԺY RN߹k ږ4^,CDzmK`q31"1g7s^"x> 4 j?.oI,xf`['1{p.'擁;bmh+kߴy)N_mXdBCd^xUPH?X5(,a*m&>k,ڒ!S:x 7>͈qg#@o9lmogKR*W[S36,wV^n4FYe~m))l⃮pH%墈?N*u)i g+PS4v7L})%؞#puT4:䮓{ڕAvC=9y}UTC{pyɞ<90*3웵p~'G>k $#':>PzR+J63A:ΥFǃ+\PoOM;Ϋ T&TshdyZ4#7le&Rް$]:y#bw Z<"wCpusV*l_3Kȴ#I"U4i TvL ۻ\-TVZ._OHPb +5RN.Rx+יE Y+I(hw/Uk RƶL7Qwyvaw@Qyz{NEM}ܫ(":9񫝳bviPr)֬z!i(f`U#^yFq=u4[Lum3]"d˛FB0z[h(04[>,*5U$xLZkp<1ۡq6UMBʴPK<^1gke0GlLtT~=Gg|7Y$Rj_^^ȡ~^p2n0ܮ" OH -Σի”/d\`Mv->Qȶ,c;\WhT:`W}Mg@2gL//~l#UANŒ4C-'`P"(K&ꈋ;U"T\L߸8B9zud;cTDqC\\3KgEEHtzl$SؾC ({m$ bhl#pdơh-29pG"'K:2׃BTøD f6S:D oc91iKVI󪨘OYuxAc-é@j!&ޖ_ % xp==  sL"c\mmJmI 6)]QȕA$$]| |TAȓ_w F Kk7wE540#_EE'<[R ?kN!ٜ`ϯžK(%'BVM?;L̥$:wu:w#b'ԴSBU=V>EOۙVݛsۚQZ (^A(d똤 /3&)Ÿg_~gRLkx =h)=8{: ~%%{NiKR_0I^>%r\qڎ]#Mrœ[3r %- Z#{Fa_o%@`νN2‘hj|1׬.W|5{^Hy#|@e&UmlDs=—gY+o=oGmi\_C73;G;xo#"4~d- zt%Zx#ݶ#j 55XhMI 9+QbPiLj61BLͣ)7d20#PLZ[)jyL=倜(İ$Q0o;mY W'Oj͊[&ID<%'(eq{-T?t[w,n*GA]?z<""\)ZlW,6|ŭκ}rDK鯨[*&?rRƘ7j60 k"ךUB{ʺ@ qpU ;f75ы0EpsB&n σ\3sz.2qayV1Md@ aB%0JΑ摽+1N,P0$uq\x;՞p0zr-ǖ(1͞3'W鰰.v4ir_`Fr0ɢ~0lhHG|U$ݵhJ^_XNUA{7\s$*XAQ 3Bufp](wrZ24o;YDuz3n, hfk,AW%}ssZdSm0fv0\ ɖOG>]CaO`_,@!_y qruٮʓX qJ݌84c8JјO8'd3;$7D@  =x^ T6"L$=C&AGqjE }j%9lA`_ iOlR H5@lI} l JwCb,_uY5.H?}'l # JF|[G`½p^:weK5g\0ZA/~aAMOfhw4{2ۥl g7!YEbY.-7]}2\nY7r }cX+ߓA" ܃Ebq aJ>' IN%8t\8$s!4̓Gr[}b_o9zp/5TV+o5_j