gegl-devel-0.4.34-150400.3.5.2<>,7܉e|tp9|Ly[KԌANԭۖ #h"̟&!a-ؤD{|iiQj :H%MooGLv#FgLL&k*JӺ.UaQZ$qNa8 >n!ȴAZF:je* Ń*?`rZ.9 0޹jj[+XE.s>g睿g9Ā q褏O!Q"y3.8d昃lq hL>>|?ld  ! [@DPTm `` H` ` ` ` X`` `""`$<$$&(&d8&l,9',:*,FG`H`I`XpY\`]8`^: b<cddeifllnu`v w`x@`yz  &hCgegl-devel0.4.34150400.3.5.2Development files for the GEGL "Generic Graphics Library"GEGL provides infratructure to do demand based cached non destructive image editing on larger than RAM buffers. Through babl, it provides support for a wide range of color models and pixel storage formats for input and output.e|ts390zl32SUSE Linux Enterprise 15SUSE LLC GPL-3.0-or-later AND LGPL-3.0-or-laterhttps://www.suse.com/Development/Libraries/C and C++http://gegl.org/linuxs390x  D)x& - U 1W`d^9CO I +O y! >T :f|E }C&  pM! M   P  X 3 06 = ` ]A큤A큤A큤A큤A큤AA큤e|sasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasasase|sOase|sasasasasasasasase|sasasasasasasasasasasasase|sasasasasasasasasasasasasasasasasasase|sasasasase|se|sQe|sPe|sme|se|se|sPe|snc96016188f1aec01b387735b817dd4de1a26e1215d1ff155b23754b5973646550dc2e28a1dd72b24990044c08939b55a97996d745bc1471720808252b67c607dbf8265e01da9a2ecf3e628aa72941865032bbe6cd67370fddafb853baeb52fd75e853608c3ba761cc6d12f926a41b7a115b792156d8ec7750f2ac5e079dd8802427f2ca8918ea67d04b9e9bfa74ffafdba6ccbd2c5c6af49da55291361e6802231bf78d982b468d5272ae2f29aeeca772952947e5a0b591f84d5071f97c568af4a82d6ecdb07970b7f11e66b360b6fbd1829d6a3dbd8507d391ddc2ffeb7e42d97c38ad9a390e0bbe700341c225f76b30030ac9cf31c130a77558d52fde3ce8d043546869a5f5df387d628c6a340eb3a23d3df7d9eb0f8ad9fa5001a0f241de29f9bbb5495a91821a1a60822daf4e435363016d24229824417d1facc6ecbd1a021fcdc067c26cefa3e0bd3c76bb69f90cc1ff8c66a6bd3b1b0897ab50ff511200fbd68937f25d02fcea113931bb1c03d07f58a0f845c3ff83e511c7639cc2dbb66a17fb82b5022b5dc6c08259094385496dfc2c54705065a56ca02fface0b68f2ce802ce3421a72b0dd6b8f783f4e15976805c79ac9a351080029557a025cf0d4e3634cc58bbc9976ba916821ecf4301d0d30e635060986000f5b39fa421a495528b556679e6518592221419b571746af13e8b9e4424c69944fc488cba35f1645c88ab76de90d41f0c2d3411696cb09da14a14aba016f9c32c8e03fa418f365f2cd1526b34af337e915599243af293537323ac679301834c1013459dade8e73daba3bcd981eb285a7681dd609c1de82904075d6493c3c2ee7bb8ea3400eded9b5f3623e1402a56cee09575e26716141f0ee45bbb0990b8efd8d157da919ef82ef79d76e88964c3ffee59e96605ec4184ef34867396851b71065eab9db897157a3f28540bb82dbccf55fdd1ca0876963c9082d9a6c774b4f8a09fa183754566cdcf8eaa5e6d0fc74c85b705c9da8ab87fed53dd4dfbdcf9a47b751e623f655c20a47638324446ff2efc4a372cc857fc80fa5cc058e07711af70b717ed9bcd3c2f6df41730f6d67f6ff9897433a8e56f143747b18c7eb801b8cc46a87124308613948ccce19d1017c403fed3344efa4a353b398f605d3457c99c6ce7bacbd863a4451ae8f43477d671556135eadd4e609081bcbac7b6d1ce5eee2020cd70060937e8eeba936f2d14da5f36609eeebeecc0c264191168846cf94ff10fba506dbc185de98f8af13b2e3e9526e421e0b9487b7f119a3a4f118e4be69d8ce07dad7e0525b877b9b697e71a8e89db9991c2722741b7683b471d4509f1877bafc4f5cfd4e92060d7f276b6d88454485d907ec03cdf6cc7e61902f9526f6eb6a2791852a99d4f7d8cf34cf7e670e5400b58350d7ade0098878fee3b3af51473b781610236cb51f68b71650440c3a74a4b68189a674aa9a304a634ac06c1edbfc75ddfca4af50ac90f63ac14b07368c0b3618ab7c1c1622c0f6992e5cf03362442cc4ac0b524fe72c37553d5444df37ca4ab0fcc9e62c17bdf3889bef0dc8710afd431b4925b26da9b1ed09212c193715c8c6e413c772a79019625e5858e0ef5a5fae491f2f8ee1828966fb0240a14723c48444a3130037f169a4630d63c082f2802c4e9cc7ba937c0fcdc25b45653781dc2506b897aecfb720c6f8f75b1d89bbfa5a69ab64317664da716fc330f31a9d0176dc4f7bf65fb2b2b97e9f59ec6bd1daa70046e4006755fe5268e64a7aabf16050cb800846bdfd1783562c8794bb777bdd4e0721e5929e57bb690b053c26e2ccfc2efa48967b967dbf37885eb50ae115695073ee0352ebb15eb671409c0b55d3847155ec110a16a01bb229bf93cdbbe3f38fb9bdf05ca63a95197db6d98133de9f660c5f79f1d12cac98e8578a49362e52117ff63b54629b0fb5f918de7ea5a23ba86649ad5309ff2e53449b17c9b4a2fac0fea50a7f4c0938328987e4f26e3842e9a8eb34b05ad3af4f5edf6b98059ce02afe0c755f2f0b6d9aebbf435ee7e937d43f93e618ee89a620a60845ce2e06d215120e53dd61ae683b8d974281ada1d21e1955ba87f701bb3c7c5bf728de780fa5ad87295451231f2e8a18b36d7a665e36f27e11e7d1f6a21301871cd5c3cbcb4f1573e2bffce0bad7f9e602ab06a6b64ae21a094ababdd62ad997ac4993dee3f8be5d8bbe833fad189d674dc6c7d41185ff5b7c4d7855aa1288a4a76d653291ef7ce92d1fb5ddfc298a11aae0d348859a2322574f7f634d716cfc6c97e0b3d994ac88837e2850fe0366eb15a6ce4503d07c487ef86039814e5bf8f0c8a8fd9004e53adb4adef2e40fb79338bb80b0a1971ed80af09f574eb2a0bbd29fdec095a77c124efa667d903ebcf633f397cb9ef401c1e7488ab4ab1c8fca1be4e680c16a7719f44744c3caaf34857eead2a49977887ca8e7393a10ccbf40646710d4cdb0d0e02aa12fa26f047484ea79808a9247f77f86980ce120aae719f6d192e464fd1bbf631c6e439e674a3d8dbac8d61f09cb2de9eef5bdebceb8b845964f38c7abc9dce2bcdaa07c24ecf700321322e17cf0cbb5cb62f277aa968e39ae9722ce2e6e4a03b14fe616bbd8e643491fd87c8a87321c82586d54bbdb665a00c6dc466f57a98dc4939fc2423ff17ecb4f0698e8d5c73d906e7d32e07b3b7144fe253eb0b107410e2a40a64908f853b6f5786c48c07add851a408da3c279dc0bbbdffeeddf92d535a687fb5b89c061d6da57c80f6c5393cdddd53bb3ff969295b2eb703b97fb0dfd867a454bf0ca20e69d728e576c96471d567f037b25d69908fe680f134f2d752502ed4c91f70fcd4f329338998dab2111c3be9b9e659ae59a8d4690f33aee2457031e1f911b18713e79f7612f6de6968d8744f5f3ca5cb03fb69e39d08383cb7e59e8cfe0ff3298117dcb1465474c6c6d1078e4788a07079e19e45ea170831d7ccf9221117836f155418758d158452b5b6df2e4e1f434f62d6be2e65d43e99c72305b2951b4d13f1fc309c9775ed80d29c3606998af97381b67c491ea205b55efd61bc92ba3f5e67505c5faad5eacdcb36b1c9cada9b747118570f110049b372afbba3868d0123aef1df477174e0094e478a11281e34f8f9250c35c4d28178d05ef9f4dbe8468863f7513b903944aa4cc1fd77f4eace605a9055751e17369f5840aa032f0909489713fd8e07f44edce2c5e6f5803bb1458e5559dec293d0a9e9f2f912fe359d934b5bfe353bcde71aaa5fbdd336e9d4253e972642aaf42e089ce486a664e369cd4c35bc627c3d6135df7bca4e914b22c1628e18f34a6c55169546f7d9157b134fb2a144e9de932db4e50a5c7a5ff6a385c6b3351e844d777735bd7e807e084dbb1c4c9b507e7b6fa0a8ba016d661bac8763b1c0fde3d95dcfd0f475e133b10cb413ac58d6255220d9d9dfca947117ab485a871c0ec3d117c52a4827897c0026c4fb7c6ecf19bc9372481315e700927e66028733ba0f2e148af8386407d80c039ecd3e2b40c943cd986be129c1889ae1265c40ec02173df04e3d9d31058e0a47440cc95b6692bed8d05dd7296153659bf77ced806bebb6e43e4f7f834f7612f93885225108c2c226c894a9b12f098a0b551dcc127f1aae1ac8885dc3d8443db6cdb5c19c53985b4461a5c00bd0a8c723addaf776e938f10a9d6c6d54ec94505658ff133f990917896a08045a3c3a755c9a609cf3b45ac5bc8d8116e010f3fcc71c23e513f47c7a6fb1cc11982f5322b2aff1ef7fbd9b0d5ad1c0a05f585f00bb02c36169ff661608c24cb63dbda266e87205675b9e22d022908f947495ebef671dce53e01b43a7ca33dc792673e64153f04769934c401e30144521ed3150d9654ca5e09cd7568b53d0119d2b322339aac389a7b94a649ed3331a21e929a43a321421f8a1513e34fb52be7ea95c81eb1acf999e2043734780libgegl-0.4.so.0rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootgegl-0.4.34-150400.3.5.2.src.rpmgegl-develgegl-devel(s390-64)pkgconfig(gegl-0.4)pkgconfig(gegl-sc-0.4)@@ @@ @ @ @ @ @     /usr/bin/pkg-configlibgegl-0_4-0pkgconfig(babl)pkgconfig(gegl-0.4)pkgconfig(gio-2.0)pkgconfig(gio-unix-2.0)pkgconfig(glib-2.0)pkgconfig(gmodule-2.0)pkgconfig(gobject-2.0)pkgconfig(json-glib-1.0)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)typelib-1_0-Gegl-0_40.4.340.1.782.44.02.44.02.44.02.44.02.44.01.0.03.0.4-14.6.0-14.0-15.2-10.4.344.14.3e@aay?@aY@aUaE`v@`a@`]_@_i@_16^^S^9\]@]@]@]v>]F]Ew@\@\+@[<@[~[>@Z@ZZ@ZZ@Zy@Z3@ZZ@Z@Z@ZZhu@ZX@XW)@V_TKpgajdos@suse.commrueckert@suse.demgorse@suse.commrueckert@suse.demgorse@suse.commrueckert@suse.depgajdos@suse.cominfo@paolostivanin.comdimstar@opensuse.orgbjorn.lie@gmail.comguillaume.gardet@opensuse.orgbjorn.lie@gmail.cominfo@paolostivanin.cominfo@paolostivanin.combjorn.lie@gmail.comecsos@opensuse.orgbjorn.lie@gmail.commrueckert@suse.demvetter@suse.comstefan.bruens@rwth-aachen.destefan.bruens@rwth-aachen.debjorn.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.comfcrozat@suse.combjorn.lie@gmail.combjorn.lie@gmail.comluc14n0@linuxmail.orgplinnell@opensuse.orgbjorn.lie@gmail.comjengelh@inai.dedimstar@opensuse.orgpgajdos@suse.comdimstar@opensuse.orgzaitor@opensuse.orgolaf@aepfle.deidonmez@suse.comi@marguerite.su- added patches [jsc#PED-6351] build with new libraw + gegl-new-libraw.patch- Update to version 0.4.34: + Operations: - magick-load: use g_spawn_async instead of system to run the image magick convert fallback - preventing shell expansion on non-escaped/filtered paths in constructed commandline. - ripple: avoid a possible division by zero. + Build: - Explicit dependency specification in meson for generated CL files. - ctx has been moved to be part of gegl-common.so nearer to the operations using it avoiding polluting the GEGL library symbol table with the ctx symbols.- Re-enable luajit for ppc64, ppc64le, and s390x. We now have support on those platforms, for now at least.- disable docs until the upstream bug is solved https://gitlab.gnome.org/GNOME/gegl/-/issues/294#note_1281553- Also disable luajit on ppc64le and s390x. Package is unavailable.- Update to version 0.4.32: + Docs/testing: - Fixes and improvements to the test system ands it integration for comparing/keeping track of hashes of operation output by John Marshall including and overhaul of reference compositions and hashes, improving development as well as documentation. + Operations: - distance-transform: - openexr: fix build with newer OpenEXR 3 - negative-darkroom: contrast boost and illuminant adjustment parameter, reworked emulsion dye model, UI improvements, more black and white paper presets. - fill-path: 32bit float RGB and CMYK color processing, using ctx as renderer. + Core: - Fixing of leaks and dead code removal in json op handling, branch hints in buffer tile handling. - drop patch gegl-openexr3.patch: Fix upstream- added patches fix https://gitlab.gnome.org/GNOME/gegl/-/issues/284 + gegl-openexr3.patch- Update to version 0.4.30: + New Operations: - negative-darkroom: This operation is for artists who use hybrid workflow technique of analog photography. After scanning a developed negative, this operation is used to invert the scan to create a positive image by simulating the light behaviour of darkroom enlarger and common photographic papers. + Operations: - jpg-load,png-load,tiff-load: show ICC relatd problems as warnings. - rgbe-load : fix handling of exponent=0 in RLE encoded files. - color-reduction : Added blue-noise modes, the patents are expired for some years already, also added fix to levels parameters; enabling bi-level. - fattal02 : ensure gaussian pyramid has at least one level. - paint-select (in workshop): multi-level banded graphcut, sub-region rather than full buffer rcomputations and other improvements. - Drop 93.patch- Add 93.patch: fix build with glib 2.67.3.- Update to version 0.4.28: + Core: Infrastructure to opt out of listing ops with unmet runtime dependencies. + Build: Set vapi metadata better under meson. Make graphviz' dot library is a run-time not build time dependency. + Operations: - gegl:convert-space and gegl:cast-space operations fixed, and added to build. - icc:load new operation that treats .icc files as images, permitting loading a space into the graph from file. + Workshop: New operation paint-select for an foreground select tool in development. - Add disabled pkgconfig(maxflow) BuildRequires: New dependency.- Fix build on aarch64 by pre-loading libgomp.so.1 to avoid: "load error: /usr/lib64/libgomp.so.1: cannot allocate memory in static TLS block"- Update to version 0.4.26: + Core: Allow unsetting of property keys on paramspecs. + Operations: - perlin-noise: use a local random generator, avoiding resetting the global one. - transform: decrease epsilon for affine-detection, and round some affine matrices to be exact.- Update to version 0.4.24 + Build: - CI creation and caching of container images for build + Buffer: - Fixed integer overflow in u32 bilinear blit scaler. - Changed cubic interpolation to be a bit softer, reducing induced moire seen in issue #167 - Gracefully fail when running out of swap space + Operations: - Meta-operations now have an additional vfunc, update(), which gets invoked on property changes - crop: with no parameters set, infer rectangle to crop from graph. - crop: cropping rectangle can be implied from graph. - hue-chroma: avoid modifying hue/chroma of neutrals - dropshadow: added option for shadow growing - median-blur: accept negative radius values - rgb-clip: add parameters for specifying clipping ranges - vignette: new shapes, horizontal and vertical. - imgcmp: make max-diff property conform to gobject standard. - save-pixbuf: use a GObject for consumer read instead of pointer property. - gegl-graph: add a gegl-chain tutorial as default script. - border-align: place a buffer within the borders of another one. - pack: joins two buffers into one, with optional gap. - bloom: adds a glow around highlights. - piecewise-blend: uses a grayscale map as index into array of buffers used as LUT. - variable-blur: uses piecewise-blend piecewise-blend and gaussian blur to approximate blurs with per-pixel blur radius. - focus-blur: a vignetting blur, using variable-blur. - reset-origin: moves upper left of extent to 0,0 - band-tune: parametric band equalizer for tuning frequency bands of image.- Update to version 0.4.22: + Build: - Updates to python gobject introspection tests, and made them able to look up babl typelib. - Build pdf:load again; missing since meson migration. - Fix OpenCL include file generation to work in non-utf8 locales. + Operations: matting-{global,levin}: fix crash when bounding boxes of input and aux differ.- Update to version 0.4.20: + Build: Improvements and refinements of meson builds and CI. Fixing major issues for OSX and win32. + Buffer: - Pass O_BINARY where relevant on windows, fixing crashes occuring when swap is used. - Avoid 32bit overflows in computations for gegl_buffer_set and gegl_buffer_get. + Core: - Avoid running more thread jobs than there are pixels to process. - Faster teardown of buffer caches when bounding box shrinks. - Only do in-place processing if ROI fits in input abyss. + Operations: - Improved edge handling for gegl:distance-transform. - gegl:crop removed workaround for incorrect in-place handling. - Drop gegl-0.4.18_allow_unknown_arch.patch: Fixed upstream. - No longer recommend -lang: supplements are in use.- Add BuildRequires: pkgconfig(libavutil) >= 55.92.100- Drop unneeded libtool BuildRequires. - Drop optional cmake BuildRequires. - Add pkgconfig(pygobject-3.0) BuildRequires: Build python-gobject bindings support.- Update to version 0.4.18 + Build - Drop autotools, GEGL is now using meson, most things are working again now - documentation/website build is a work in progress, many issues have been fixed, more a sure to surface with this first meson only release following the babl one. + Core - Support ui labels and descriptions for aux pads of ops. - Guard against uint32_t overflows in memory computations, improved memory usage stat on FreeBSD. - Added support for hygon dhyana architecture. - Added gegl_try_malloc and use it to allocate storage for tiles. - gegl-stats gained active- and assigned-threads members. + Buffer - New API for aligning to regular tile grid, gegl_rectangle_align[_to_buffer] - added gegl_rectangle_xor - gegl_buffer_create_sub_bufer now always returns a new object. - Improved tile compression, more accurate accounting and avoidiance when it is determinetal. - gegl_buffer_save : store BablSpace - take into consideration concurrent use of different tile sizes in gegl_tile_alloc - Fast path for gegl_buffer_copy is entirely in abyss. - Improved api misuse handling in gegl_buffer_set|get - Improved consistency of results when doing COW of abyss. - Improved Gobject Intospection annotations. - Use a binary tree for tile swap, improving tile removal speed. - Avoid gegl_buffer_set avoid set_pixel fast path if level>0 + Operations - Dynamic computation of per-operation thread cost, making GEGL fully use available cores on more operations. - new operations: bayer-matrix, linear-sinusoid, color-assimilation-grid, normal-map. - new operations in workshop: boxblur, alpha-inpaint - pass-through for infinite planes for: apply-lens, polar-coordinates, whirl-pinch, convolution-matrix, maze, cartoon, waterpixels, tile, distance-transform, spherize, tile-paper, dither, mantiuk06, reinhard05, fattal02, fractal-trace, motion-blur-zoom, motion-blur-circular, wind, little-planet, mirrors, cubism and long-shdow. - improved property ranges/meta-data or copyright for: motion-blur-zoom, edge-neon, cartoon, photocopy, softglow, oilify, bump-map, remap, - convolution: fix source-buffer offsets of filtered-out components, avoiding excessive shifting. - jpg-save: force grayscale if incoming buffer is grayscale - sdl-display: port to SDL2 - gamma: handle negative input values - apply-lens; enable auto threading - matting-global: disable auto threading, allocate less temporay memory. - maze: reimplemented without recursion - newsprint: added black pullout and per colorant pattern and period parameters, enable threading. - saturation: add a colormodel property which permits operating in RGB instead of CIE Lab, enabling hue preserving saturation changes. - exr-load/exr-save: only use associated alpha with EXR files - ff-load: fix audio track decoding for pure audio files - c2g: fixed initialization data race and out of bounds array access when threaded. - color-enhance: fixed a buffer leak - perlin-noise: fix initialization race - domain-transform: faster nop for edge-preservation=1.0, support BablSpace - oilify: support specifying mask-radius with aux buffer - linear-gradient, readial-gradient: use colors in correct order. - pixelize: avoid potential glitches - weighted-blend: harmonize opencl implementation with C - edge-neon: performane improvements + GEGL UI - gcut video editor ui has been removed, all its functionality is latent in the new media browser/manipulator/viewer UI. - Permit start/end times for playlist items, enabling use of folder as EDL. - Add ability loop currently shown media element. - Nearest neighbor decoding; for realtime playback of HD video content. - Frame-cache for rendered video frames (with associated PCM data) - Drag and drop from file-managers to collection view. - switch to meson based build - add buildrequires for tools to build documentation: asciidocs, gtk-doc, ruby - switch from lua to luajit - no lua support anymore on ppc64 due to missing luajit - enable workshop modules - new BuildRequires pkgconfig(lensfun) - added gegl-0.4.18_allow_unknown_arch.patch: the old code in the configure.ac also did fallthrough. restore that behavior. - drop patches no longer needed: 0001-Extend-configure-checks-with-checks-for-SDL2.patch 0002-Port-sdl-display-to-SDL2.patch 0003-Port-sdl-draw-example-to-SDL2.patch fix_doc_installation.patch- bsc#1144344: Remove JPEG2000 support due to planned removal of jasper, drop pkgconfig(jasper) BuildRequires.- Port sdl-display operation to SDL2: glgo#GNOME/gegl!184. + 0001-Extend-configure-checks-with-checks-for-SDL2.patch + 0002-Port-sdl-display-to-SDL2.patch + 0003-Port-sdl-draw-example-to-SDL2.patch - Add autoconf BuildRequires and pass autogen.sh call. - Replace SDL-devel with libSDL2-devel BuildRequires: Build SDL2 support.- Remove unused build dependencies: - graphviz-gd is checked for, but unused: glgo#GNOME/gegl!182. - gtk-doc generation is disabled, i.e. unused. - enscript just regenerates bundled files, add fix_doc_installation.patch to avoid the need for this.- Update to version 0.4.16: + Buffer: - Swapped behavior of cubic interpolation from cubic to mithcell coefficients, leading to crisper results in all uses of the cubic sampler. - Use a custom allocator for tile data which aligns data and groups allocations in blocks - improving performance on windows by keeping more slack allocation memory in-process. On linux the opposite was needed and is achieved by using the GNU extension malloc_trim which permits forcing invokation of the glibc malloc/free allocators garbage collection function. - Permit tiles to be unreffed after GEGL shut-down without crash, which is likely when using bindings to dynamic languages. - Improved deadlock prevention in gegl_buffer_copy() when using copy on write. + Core: - Platform specific build fixes for both win32 and OSX. - Avoid in-place processing for cached nodes. - Indentation consitency improvements. - Permit more detailed specifying/overriding of OpenCL device through the GEGL_USE_OPENCL environment variable. - New call gegl_update_anim_time for applying the animation curves of properties. + Build: Added gitlab continuous integration. + Operations: - Use indirect buffer inputs on main thread during multi-processed processing for point-filters/composers and tranform base classes. - Smaller required/invalided ROI for map-absolute/relative when using nearest neighbor. - tiff-save and jpg-save fixed dimensions when buffer saved has non-zero origin. - Added missing descriptions of properties for cubism, mosaic, tile-paper, color, mantiuk06 and vignette operations. - ff-load fix some of the deprecation warnings. - ff-save avoid crashing if audio or video codec fails to initialize. - cache, parent class changed - it is no longer a point operations, also speed up processing and permit copy on write handling of tiles. - opacity and invert - crash for 8bpc buffers, reimplemented logic for (non-)associated alpha OpenCL kernel selection. + Tools: Drop direct dependency on exiv2 - we now only transiently depend on it through the gexiv2 abstraction. + commandline tool/gui: - Store per image editing chains in .gegl folder instead of sidecars. - Set window title, permit interaction with opened .lui documents, fixed playback of audio for opened videos - it now works; if the video is decoding, scaling and display is fast enough to leave spare cycles. - Support for nearest neighbor scaling of imagry; aiding video playback without dropping audio frames. - Custom collection order and per-file key-value metadata. - Drop explicit pkgconfig(exiv2) BuildRequires following upstream changes.- Update to version 0.4.14: + Core: - New Scratch allocator for short lived buffers. - Removed unneeded buffer copies in some processing code paths in GeglNode and GeglProcessor. - Add gegl_babl_variant API for getting variations on an existing pixel-format/encoding. - Expose gegl_node_is_graph(). + GeglBuffer: - Compression of tile data. - Handle dynamically changing swap dir. - Improvements to mipmap damage propagation. - Fixes to threading race conditions. - Low-level tile handling more adapted to buffers creating from existing linear data. - New iterator API is now the default, GEGL_BUFFER_ITERATOR2_API is no longer needed. - CMYK/grayscale handling for scaled blits, code paths in samplers, serialization. - New default tile-cache size, 50% of RAM. - Initialize the first OpenCL device with IMAGE support. - Added gegl_parallell_ from gimp_parallell_ API to distribute processing for multiple cores. + Operations: - crop, added aux-pad - if connected the incoming bounding box determines the crop size. - Input-format specific processing for performance in watershed-transform and invert ops. CMYK handling in jpg-load/save, tiff-load/save, gaussian-blur, opacity, most composing and blending operations, text, vector-stroke, path, and transform operations. - Improved or fixed mipmap preview rendering of emboss, linear-gradient and radial-gradient. - Better ui strings/range/defaults for: distort/waves and dropshadow, value-propagate. - gaussian-blur: fix mistake in implementation of IIR Young blur 1d, which caused non circular halos. - New operation: pdf-load with build dependency on poppler-glib. - Added offset properties to pixelize filter. - New ops in workshop: voroni diagram, Grey Color Removal, spyrograph. - Handle mipmap rendering for linear-gradient and radial-gradient. + UI: - The existing microraptor-gui (immediate mode touch UI+CSS with cairo) image viewer that can be built as part of the gegl binary has been revisted, a graph/property editor has been added, and migration/extension to lua has begun for parts of the code. - WARNING: many parts of the UI is of exploratory proof of concept/alpha quality but are released since the code is part of the GEGL repository and important development tools both for creating and testing new GEGL operations as well as GEGL itself. - Some screenshots showing some the process towards the state and capabilties of the UI in this release can be seen at https://www.patreon.com/posts/24123574 - To build with this UI the following dependencies also need to be satisifed, for now this is not intended to be packaged by distributions yet. . libluajit-dev . lua-lgi (debian package name) upstream: . mmm https://github.com/hodefoting/mmm . mrg https://github.com/hodefoting/mrg + Features: - folder view. - resolution independent UI. - touch oriented navigation. - GIF / video playback. - PDF pagination. - goats that expose performance and capabilty issues in GEGL. - efficient (though not sandboxed) thumbnailing. - embedded simple commandline. - graph editor. - zoomable. - automatic, consistent graph layout. - autogenerated property-inspector ui. - visualization of color model/bitdepth through styling of edges. - live-extendable with lua code for per-operation canvas UI. - Add pkgconfig(poppler-glib) BuildRequires: New dependency.- Update to version 0.4.12: + GeglBuffer: Fix fix of scaled blitting, the fix from last release introduced scaling artifacts for all formats that are non-8bit. - Changes from version 0.4.10: + GeglBuffer: - Fix integer overflow issues for u32 blit scaling code paths. - Reduced memory clearing overhead for temporary buffers during blit. - Round alpha component during u8 bilinear/box filtering. - gegl_buffer_dup now matches source buffer abyss, shift and tile-size more closely. - Added GEGL_TILE_COPY command for backends, for more efficient buffer duplication/copies. - New GeglBufferIterator API. - Move type-generic scaling algorithms to GeglBuffer folder, move opencl integration bits out of buffer. + Operations: - gif-load: new operation for decoding GIF images/animations, with frame delay exposed as an out-property. - exr-save: do not hard-code a version name space. - long-shadow: add 'Fading (fixed length)' style with a new user-defined 'Midpoint' parameter. - maniuk06: use double precision, permitting to work on larger images. - watershed-transform: improved description. - unsharp-mask: permit std-dev radius of up to 1500px (from 300). - Updated all operations to use new iterator API.- Update to version 0.4.8: + Core/GeglBuffer: Fixes to races during buffer/tile storage destruction, improve swap usage for stored empty tiles. + Operations - motion-blur-circular - improve/clarify property ui - median-blur - added abyss-policy property - long-shadow - new operation - little-planet - adapt reference composition - Changes from version 0.4.6: + Up until now GEGL has been using a color space corresponding to scRGB as an unbounded device independent/possibly scene-referred HDR color space - with a similar approach to to how ACEScg works but with a worse set of RGB primaries. babl formats, represented by a pointer and a corresponding encoding/format string have been used to specify the specific encoding of pixel values. The encoding including component order, data type and TRC encoding. Where "RGBA float" means 32bit float data and "R'G'B' u8" the ' indicates non-linear, and thus this is sRGB. "RaGaBaA half" gives premultiplied linear half data. Other encodings and conversions are also provided through these formats including "CIE Lab float" and "HSV float". + As a color management workflow for scene-referred imaging the above could be sufficient, but GIMP needs data in the 0.0-1.0 range for some display referred blending modes to work properly. As a consequence of this recognized short-coming GIMP has been passing the pixels of for instance ProPhoto "R'G'B'A float" off as "R'G'B'A float" and linear ProPhoto "RGBA float" as "RGBA float" this works for single operations, but falls apart when the colors are converted to CIE Lab. This is the good enough state where the other benefits of having a stable release powered by GEGL outweighed not being entirely correct. + Since babl 0.1.32 of october 2017, all babl formats have an associated unchangable space associated with them, and since then GeglBuffer has worked correctly with it - since GeglBuffers use of babl API did not change. GIMP is already using these parts of babl for ICC matrix based conversions since using babl for ICC profile transforms is an order of magnitude faster than using the lcms2 library. It took time to come up with the above scheme of integrating arbitrary primaries and curves for spaces with babl in a maintainable manner, and it has taken until the last month to come up with a full plan for the rest of GEGL to be aware of and handling arbirary parametric ICC v2/v4 based color spaces for operations; without limiting the ability to extend and use the code for a wide range of scenarios. + A space can be constructed from a preferenced name/specification, loaded/saved from ICC matrix profiles or constructed and serialized to whitepoint + rgb chromaticities / xyz matrix. More recently an additional trc mark has been added '~', giving this vocabulary for RGB formats, in addition to variants with alpha and pre-multiplied alpha variants of the same: - "RGB" linear primaries from space, linear data - "R'G'B'" non-linear primaries from space, TRCs from space - "R~G~B~" perceptual primaries from space, sRGB TRC + When creating device independent CIE based spaces they also get passed a space, this means that we can convert CIE Lab to RGB float, keeping track of which space / ICC profile the data correspond to. + GEGL operations now construct their desired encodings of formats by taking the space of buffers on input pads into account. By default, for composers "input" wins over "aux" to determine ops space. If an operation is not ported, data will be converted to sRGB on input and sRGB will come out of the node. + Buffer loaders PNG, JPG, TIFF and EXR generate custom spaces based on ICC profiles/primaries. The corresponding savers saves color space information. A new save handler for the .icc extension, acts like an image storer but only saves the ICC profile of the buffer it gets on input. + With no additional operations inserted, this now means that GEGL graphs operate on linear / non-linear variants of the color space used in the input images without conversion. The new operations gegl:cast-space and gegl:convert-space provide means of overriding this behavior, see the new section about color management in the gegl-chain syntax documentation at http://gegl.org/gegl-chain.html + Initial work has started on making GIMP also use of and propagate color space information along with encoding in babl formats, changes which also will be integrated in the 2.10 branch. + Other changes to operations: vignette: fixes to gamma property + New operations: - cast-space: assign/override color space - convert-space: convert to a different color space - litte-planet: stereographic-mapping split out of the panorama-projection + New operation in workshop: acrs-rrt: ACES RRT based HDR to SDR proof/preview point-filter tonemapping op.- Update to version 0.4.4: + Core: - Point filters with need for format conversion of input are now parallel. - Added swap-reading, swap-writing, swap-read-total and swap-write-total properties to GeglStats. + Buffer: - Trim tile-cache when shrinking. - Added reading locks to tiles further improving concurrent access tolerance of GeglBuffer. + Operations: - threshold: operating format changed from linear to perceptual. - unsharp-mask: add rename standard-deviation and scale properties to 'Radius' and 'Amount', add 'Threshold' property. - recursive-transform now supports applying multiple transformations simultanously. - Fixed integer overflow due to logic error in pixelize. - New operation: gegl:abs which negates negative values. - New operation in workshop: selective-hue-saturation.- Update to version 0.4.2: + Build: Abort early if autoreconf fails, remove unused bits, default to -Ofast as CFLAGS. + GeglBuffer: - Improve concurrency for trimming and destruction of tile caches. Improve cache invalidation during partial mipmap regeneration. - Do new cheap clones of buffers with new internal gegl-buffer backed tile-backend. - Do not keep cached sampler in buffer it makes cache invalidation hard, and for performance/threading it is better to create ones own samplers anyways. The old API still exists, though parts of it is now deprecated. The single special case where gegl_buffer_sample remains somewhat performant is with the NEAREST sampler, for all other samplers creating a caching sampler is better. + Operations: - operation: add GeglOperationAreaFilter::get_abyss_policy() vfunc Copyright notice improvements to spherize, color-overlay. ff-save: implement defines handling compilation with ffmpeg 2.3-2.7, 4.0 compat. - Improved multi-threaded performance of panorama-projection and other transformation operations through optimizations in buffer and base-classes. - Drop gegl-port-ffmpeg4.patch: Fixed upstream.- Add gegl-port-ffmpeg4.patch: Fix build with ffmpeg4 (bgo#795625).- Add baselibs.conf, build 32-bit support.- Update to version 0.4.0: + GEGL 0.4.x is a stable release series of GEGL to have a stable API and ABI to go with GIMP-2.10. When the need arises to break API or ABI compatibility the 0.4.x series will get its own branch and unstable API experiments and development, 0.5.x will happen in master. For now though master will track the 0.4.x series. + Core: Change GeglParamSpecSeed from int to uint to match the value range of GeglRandom's seed. + Operations: - Ripple fixed remaining issues needed to remove legacy GIMP plug-in in GIMP. - Spherize, requrise transform and color-overlay moved out of workshop. - Ppm-load ported to GIO. - Rename subpackages following upstreams soname bump.- Do not buildrequires lensfun-devel, it would be only used when building workshop, if Makefile was really compiling relevant code.- Explicitly version pkgconfig(libavcodec), pkgconfig(libavformat) and pkgconfig(libswscale) BuildRequires to less than the symbol versions provided by ffmpeg4 branch until upstream catches up. Currently provided by new ffmpeg3 compatability package.- Update to version 0.3.34 (CVE-2018-10114): + Core: Change GeglParamSpecSeed from int to uint to match the value range of GeglRandom's seed. + Operations: Limit allocations in ppm-load to 2GB (CVE-2018-10114). - Changes from version 0.3.32: + Operations: - panorama-projection: added reverse transform, which permits using GIMP for retouching zenith, nadir or other arbitrary gaze directions in equirectangular, also known as 360x180 panoramas. - Added abyss-policy to base class for scale ops, making it possible to achieve hard edges on rescaled buffers. + GeglBuffer: - Improved performance and correctness, avoid incorrectly gamma/ungamma correcting alpha in u8 formats, for a tiny 2-3% performance boost. - Keep track of valid/invalid areas on smaller granularity than tiles in mipmap. - Various micro-optimizations in display paths, with minuscle performance impact.- Add cairo and glib-2.0 BuildRequires to avoid implicit dependencies.- Update to version 0.3.30: + GeglBuffer: - gegl_buffer_get now treats the final argument; - All scaling is now done on linear data, making future results of mipmap computations more valid as well as providing correct results for scaled down thumbnails in user interfaces; - The scaling code paths has also been instrumented and optimized for performance; - Improvements to logic switching to boxfiltering behavior and improve cubic samplers box filtering by using a linear sampler and a nearest sampler for the boxfiltering for the linear sampler; - gegl_buffer_copy gegl_buffer_clear and gegl_buffer_set color now only emit a single changed signal on the buffer. + Operations: - c2g and stress have gained the ability to toggle the influence of the shadow neighborhood or not, the new default is to not improve shadow detail; yielding a bit more natural renditions; - color-to-alpha now contains improvements from experiment in workshop which is gone; - Fixed crashes in median-blur. + Transform ops: Only rasterize inside the transformed polygon, saving cpu; + New ops: Mean-curvature blur. + News ops in workshop: color-overlay, enlarge, inpaint, domain-\ transform, recursive=transform. - Now minimum build requirement for GIMP 2.10.0- Update to version 0.3.28: + New stable branch, long packaged as gegl-unstable in openSUSE, changes far to many to list, please see NEWS packaged in docs sub-package. - Lots of BuildRequires, Requires and sub-package changes. - Drop upstream fixed patches: + gegl-UF_long.patch. + gegl-lua52.patch. + gegl-0.2.0-CVE-2012-4433.patch. + gegl-ruby19.patch. + gegl-0.2.0-linker-flags.patch- Fix SRPM group. Update descriptions. Remove idempotent %if..%endif around %package.- Modernize spec-file by calling spec-cleaner- require liberation-fonts instead of liberation2-fonts, it is dead [bsc#1077375] [rh#856239]- Replace liberation-fonts BuildRequires with liberation2-fonts: the new set works as well.- Fix CVE-2012-4433 (bsc#789835): + Add gegl-0.2.0-CVE-2012-4433.patch: Fix buffer overflow in and add plausibility checks to ppm-load op.- Use pkgconfig instead of libffmpeg-devel- Add gegl-0.2.0-linker-flags.patch to add -lm to linker flags.- fix build for factory * add patch: gegl-UF_long.patch * newer suitesparse abandoned UF_long in favor for SuiteSparse_long - fix build for graphics repo * ugly fix, multiple provides of gd by gd and gd-tools from libgd2s390zl32 1702654976  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`0.4.34-150400.3.5.20.4.34-150400.3.5.20.4.340.4.34 gegl-0.4gegl-apply.hgegl-audio-fragment.hgegl-buffer-backend.hgegl-buffer-enums.hgegl-buffer-iterator.hgegl-buffer-matrix2.hgegl-buffer-swap.hgegl-buffer.hgegl-color.hgegl-cpuaccel.hgegl-curve.hgegl-debug.hgegl-enums.hgegl-graph-debug.hgegl-init.hgegl-lookup.hgegl-math.hgegl-matrix.hgegl-memory.hgegl-metadata.hgegl-metadatahash.hgegl-metadatastore.hgegl-node.hgegl-op.hgegl-operations-util.hgegl-parallel.hgegl-paramspecs.hgegl-path.hgegl-plugin.hgegl-processor.hgegl-random.hgegl-rectangle.hgegl-scratch.hgegl-tile-backend.hgegl-tile-handler.hgegl-tile-source.hgegl-tile.hgegl-types.hgegl-utils.hgegl-version.hgegl.hnpddeformation.hgraphics.hlattice_cut.hnpd.hnpd_common.hnpd_debug.hnpd_gegl.hnpd_math.hopenclcl.hcl_d3d10.hcl_ext.hcl_gl.hcl_gl_ext.hcl_platform.hgegl-cl-color.hgegl-cl-init.hgegl-cl-random.hgegl-cl-types.hgegl-cl.hopencl.hoperationgegl-extension-handler.hgegl-operation-area-filter.hgegl-operation-composer.hgegl-operation-composer3.hgegl-operation-context.hgegl-operation-filter.hgegl-operation-handlers.hgegl-operation-meta-json.hgegl-operation-meta.hgegl-operation-point-composer.hgegl-operation-point-composer3.hgegl-operation-point-filter.hgegl-operation-point-render.hgegl-operation-property-keys.hgegl-operation-sink.hgegl-operation-source.hgegl-operation-temporal.hgegl-operation.hscsc-common.hsc-context.hsc-outline.hsc-sample.hlibgegl-0.4.sogegl-0.4.pcgegl-sc-0.4.pcGegl-0.4.girvalavapigegl-0.4.depsgegl-0.4.vapi/usr/include//usr/include/gegl-0.4//usr/include/gegl-0.4/npd//usr/include/gegl-0.4/opencl//usr/include/gegl-0.4/operation//usr/include/gegl-0.4/sc//usr/lib64//usr/lib64/pkgconfig//usr/share/gir-1.0//usr/share//usr/share/vala//usr/share/vala/vapi/-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:30992/SUSE_SLE-15-SP4_Update/70c68127cb588db9a0d9533646716b86-gegl.SUSE_SLE-15-SP4_Updatedrpmxz5s390x-suse-linuxdirectoryC source, UTF-8 Unicode textC source, ASCII textC++ source, ASCII textC source, ASCII text, with very long linespkgconfig fileXML 1.0 document, UTF-8 Unicode textASCII text PRRRRR RRRPRRRRR RRRR)2x:" utf-895fba0c913ada07f20cf40242977c79a83040799e709652748ad7d4b118713ae? 7zXZ !t/z]"k%j`lOLĥMI$_ϋiXFxč̓^,XO &z#º4ae4lߩ bK6MQobh]px쥚Vdi,/pL=2 d:TEV"̋feI6>f7t}j?>ռNF s l~} ╞6i!҉w+p@|adL"cJ,?h CSUglhuY ryY}YtC|Q ~gV=Ũ%Ty+Oϙaḡ؉&#Y ;baMxcLU0#PJ0[S@ dtըur ~ZG̬yBGĐxTdx袢>^5,ܧ<9@MbDԿ0OdxږU{[K);nKq]+xY2=/hTyXW.;V!vp'0VwE@t]Nouغ*;fB!#qO?{ =d$ioFRf[9 _:C1K$W!E6/(މW|0zyfr*v$ըk;(ڇ_/#-A XnbVOf t! 7E}-6:<}EŔٺ떓)a$Ln*}?ޜb&!VB]_e7y9mL-ǰnP3DN|  J>XU;/<;*'=O{m'ik]SthTiT!k2R*=7et %@%P%JrTYԻJ$JOkX3diVQgJIA~|!g=j`^IBV X>(?jslVdPrŗRu@=߉ՕKdV\*Z|1Ǫ_KctSZt ϡ5b- /HSͼou;9jBd%N)7("?)zw6ZQ} 4ƫ ~HPyB܃Dn &C $X{(t ;u]i}i-mƊyLU"v&n[!CXq B2(tNQ]nbA.&t+"дt}! iHPȺ?Tv545+7j$͛4`H^ Ns$!\o|EpTY\5\4J3qX0=+$h%&Y>4 zg/gT`K '-woE U=0j5w 3X0+׵VԖJf!fGOS NGڐy%ۋE@Hʒ3YQ,z6eO M*7ft#|XO\ޜ:7NYrhg7֝7,p+?ʃv}WxUh]+HK,N,PQ1TjXbG&,@2UY(s4fkW_ z,.iWhKQs4DAg9Z`ڂ3x}$iS S(#rַƐA%cP{9@ Hę|AYb7q1 kӈ cqc7rcۏL1(p IiaxzUiҋ:T*WU"%!ATEȖ k(ȫ槹q6UF3bϚ#&ڴP(pCЖ?EG; ACZ ;7j$=WDʢ?͟34^A1`I+K^R͉+&8=,rrEh@npC q oag(J>?֌w z9BL::]Ű9b4zL䳡Q-(:IO;GmXGCLwX3m8* ̫y1t <3̦Ӳb*81M1O;|㷫@j1d.EBf%^o!Ǽm\E̾߸!'ͶsC0NuGe9vӐr`5}[)o[Pw hy:\U&?h06$:u*T]d-6$u JBDi7fCIBSln͆YShH(&kO`{b|GrJ7cz:>M}g]p`#me9?9q'P5Zzu/{y&HkMv4i`SBA1i<-~UϜP)Ӆ&Oc-LA'oc*h;YmiNV`=w] m0AeqyxσӅ\q| \Xv˯]87 bAE.3Z8"` F(VZ0NN\u'ח8Q !i+nI &b̎\-\$;ۂ7bVw4d^Vt-Ƹt(Fng+XPakIAY@Ʀcq;wa\HY}⵺ц?!qՁ]c2^QvV{]Q!` Y :IK[ #Q/ÞXϻ=R|H7Si1?ּGɤ{5P)i_>tr͚]-׽k~U<ԧS"9YZGS54K.[&އ,&Pn?Xك7y E7gɑÒ[nz 1{u4D eQiiP7Lf5t;a-O = '5j.sP85VWX<`LhDŽ֌,ns$rGƙs0KӇ4ϴ( PM!6Ó5LÇ'ʯ0 z\H $Ci:)v~M;] qF#:&" Gz6zNښ}bVkdmBU9d9@a4YoN<ąTG/ ,0.dj'ѝWV璮W=h`ʯ!yF39<vbveD*e2QCwUwTN{#MA>Q@4_&^wci]e|>L>q{?nףH5>d(ܨlTL%I:H-%T?BU\a(2`^q!z1؆ٕ@n>o&jSQэdcG-!3>q2_ Za_ѹSr80qtǮii >:z$]61,AXQcw ql=U unb<{'ELpwTuW&C(-TM|v<9..gTwU U-` x[4MSE$dXYvް:r Zmr-w9GZ؏a 堫|] 1rt5[Mh㤯6-x\x 򼼞DU}bzlkB~ #4dv|bEhfrӧ,6 EEP{crK[XGF/mN \y*T/(s(p .knԝ_'Fc{aK0—^.k0'u0͎eͮ}jXUoRF(F">@4HDTk.p>. W/P 2.J+4-HG>"Hڻ[c R>c }MZ!ְMw 6~Jh5ՀM <ObLb#$W98%fk6oFgGS꾗̀܅[Dl~o8˪&I"nI'h"7$my#FYσi/5*vVꇯTzq kEw7cqd"y/YwWx4~jAm@L֨GKӣo@2>!U!% s =Mo[a;]6hc8acLJ0Qey3v>tPR\]=o)uqج<^L[YExWjb;,80'.X3 %'㜳밎bzm7_t{t|njqE?gVs)>Mʔu4$":(CóW\d9l8}}A֚Ԙ و'T)? OLrN H=%533%ǭ%2UL˼+S #SޮC˳b}OD<>j[)6$G%Y4!"c(^B&z=Izwl[҅i!IC}g^%&Gˈx~+Enz16K[)Z)wV~;&ĎdD:@ a%R,l~A~7CEc.3@bLENQ3 oOiI|Q[NtL~My@\6Zs(#jQ8JTAD{\z(F#1ϴua sZh4v 쒰S$jSVB{8h?ZaQn1=ҀX^Jo R%a.r@d;5Wf!EݭtM|O.&œ`l.;ޖ@s 8t~7)"uE~ Uz^esKy?*?0GN2p`P%hf 1Ƀ ,(۶dd! p(>Ѷ_h@JM1=f2ɭ]1S'Аl$fxCĐcuYO=$tHaߒhJ3Drb?/Vw|\ڃ5mؽJhN|TU.[[c⼕Y) L:pe:nSP޶(6-mpv PHw+h"L:#K#tY NG%Y٭i=D @X6vP $ ǁj#2 4k86M' 4Ie2XtHIXi)TK%Kyڏ*OV92P&`mڋ #ݤ+[LӬ:)C𞁟g|Yjw˃B-x;eB:pL 0Y4!8὆m6"BM!8RXڒRQA@2l $;A~SK~,Oaٖ eg0| VcT05A0fX >ejY?r?6$wUh?`m6RXq΂ ^B'(-uV77.f}*$m7J쳲+|VOv< ϖ9Zꌠ0)g߉x<,`a- ) tlﭠTXaFbLxv{8ێp0`@i%лH1nM"4HWn۹U3nvHYx-b'j7v~/gW199~NI?sks&}EME%c-9MW3\ROI 4}`l3bpSv FM-3q3[^L)zv~CxX&hZJN+Ñ!q' Nj'CJC쿧dYMn:^A HϣjWȯ!x`.ik:Ggikɽo ,w/?E3uĢ駽I:'2&(q%t*USR9 %0–HP9l:496 kM jך7)>X 9.̏M%kUBe,vOb6뜢4;pTOTOE4-#/,+m°6 nT)X\^쎗L^ UWY(FUlPL۵5a=y Ki0F<j0@ZJF] hwiR*顳T]9ʿP\::3p6XQBixO߱F}*J[pH uԽ'2m=KfZ2l7w)H]<0EiI+a/ٛ(.H+'OáXKfI C ݜE .Iwme`Jv7fVHBR:;gMZXՉdHt0kQzPerl#[jسoh5?;Of_ ;)X[oLl)t'Z Y\(1[YJ䯹L[:N>HRug~QNer{]CѨ=OZ{[~lW緭<’gPopC5cyX1}!ͨ][=aq*cDOS 62k|{@g3)j6Lipfx%)!I~_LH+?[lVύZD h/7UnH8v@͟F%nH%Xۺ-WgZi *clуhLڑ-Je VIDJ܁/2wȥ| <>TOXJȻŮB[Z/)*dMnz*:}ȱÛ #ɲuѣR`QLݚcj5}q8_,Q%Jp Zh1>q_*q#5> f;rYGPGnS͕ 0L6rMI}~ )<eaJ] +eZ#IWLգ};s/HW7@Ieǁ }[%p[[muml^1f`߮OOt' ҁ 6Mi Wu5(ji\aEGJ6z ]~\Y~bhVu[m19q~ح<Lꤱ$\9_ 9;tH 7tnc9[esl]Q[|YzyWkdGflC3.6XE~08? km,TkϤx@ռG DC@a(uZwMʑ֡a kPr'ԙT: I}:=&|0Ή+5;y,&Ǜ~bi|{?9)cR*fg9yPM6{ eoTq!)2B7A]شyy?ۣN?LЂRέ.+ˑvDkaVZVCAWD}Rd37m$L|3u/?SmI[CHbfcT9OlHqc>80. ;vg,q:Qr2 sMF cׁ8L<cYIKqo^ -7T ~<ѼFRE.}iY*zN7w3B)qiXYzZqSEes/%fAH7&WxϞ.K|~q2UM&u+bB^ y!Qau]BYJJuVA\\\MrH5egwZ)dN/^P#Nx a^A4݃$+:BIAKPAcS2BuՖSHR%oo;)C=c`л{Q4׆bP~y1n_R;&7XZ5 /ھЀ$/yҋwGr # ky4%te̝$@_ i WM.~fh1CJ"k5[sbN-d>PZ3KqJm Ѕ'iI}`B= !ܩnț~$QDӛ&/o3L])g#`" 'Z1d(w 3{h'nn6͗h8~8vl_ ]'E`Rxmʽ6^ӗLuY*gPxXIDvŢj(G̙z8cI3O)Ö׺[+̠a魗YQ˴T<5#8ّh"4ZU|3,v:q"P)a;]~+ֆGa]ʭãGTOU~SC8em'bi7S"fHICe52r"Sb/)☣ӷVG 0疪mvU>a$F=cm):"=f,zTBf\wq톼pNxq>\ b* w|y:Z6[RЁ?~%Y+|,A+Bp.갃L42.P)K*5qвpjO:?I'>O.R= GwΤ*4hTL`qgT{hBMb+iH4w\b~BW6m ^\ia%)=öp]M!)O}Iwբ%^2Έ۽Q4{8luiH~RQi28VYpT;TFWh=Xe~R3wbq$V|lF<$鲵$һ5i6 V!|^2*>ׂm ݨ'`-+]d\Ws9).\Af9[^(޲ Z=ga 1ӟ4QXh/H Iv=BC+NUYp1? մDDK 0C%C0v*;յs ^BCqѼjŶ\##⤊*M  t2IUPǡ~OY 2aM-ߐ/Ko$kUxk$HoC4fP]AC}wJqpK?| b&/NmG#5!W-sO=Kj; d }G_$BM/ w }qRB$k:(eB=MF#`u/N(7(-N`Mૣ~^h.0j5dsw/Iq!;Kܞ-Oy̩XteSwPTEb &U4[u"O^u?bI1#6L8Ϭ \N:14W w|lHPBuשCW('zBM7G8pJRhz;}]/r^=ج QEr @S =Ṕ #D3aѨNvOL_`-F2ra:bngΛq>D.o.!mq95.MV*=ݘ{JNF04y:Đ u Q `O4Z[ ;HQQTn(5/~"kP0lm.VTuSQ5lMb{M z*sKm|ux[Ylރ[@´yS^d.yJ?aB7bo?h,ǀdk,R_lj܉+?m%Mnïۭ;ɛe$i! S͇[}+#;?PeUpHűiЕ|F/gE &f|EnO_B8neOUl!y&h\=' c/Re[1` %Kp] |Pk?- M;94Vq#yQZ΍!䈖mRhθ JiLp%PICTRy`aA$#9\;aW5\^KRzn#˵P*oLd~H'hKokU5eꇲԧ'ug /AO> ڱ h8"htB"0aX//oSq*sh/+meq[=|`P@kVu4ϫID)*nB-Kldumyey{6=1@CcwRƬz`0Hk\QLX RWK9O;ahJpͲ%$l4`#+_0 5|UpA B1r +05$UZ]zKgZ 7lVHVM#':rg-p#|փ'%1ʹxnSس09@[?@/E0AT־cŽpJ;+bx>B>gkٌtWN j@dBؾZE*2`!/[~Ϧ^4`-ƶaCoQv:9xVXosgA}r* pJ},AX@>ux "ߧO2 ;f|8Lݑ$pb5qlGܾ`89-\[0j ىW 眴Ⱦ i㉷'<1 #7#n̶̮%.N|ÌG3])=D4agku͔ 4Q㽊n^d\< 6tg%=G4Yf:\Dn̤5esq+-o ieeӴK蝧a_VqP*|,\V= 6O(mE3rp42JM͜o՘ \xBpR21clRp!Ȕ¶Fe&%? ̵]Д)e N,~#Cԗ-&TK޹O7I:q j-y fz!GG(pfmCN6һgjī2PvzXAQ#ΩWneIZL2iĹ6Y<){ b1[(R[?IVsϺ]E%^S=1 X`K-*XP%+jBی[oZ(e{:7U9vز> LDX6ɱV  c_Pd\0蹆{`%a{Zh[kpNe'=" /y%Ĝ]dA3|򾳦PC\o 8ԓiD$݈WNUu!7(nu:ls=Cɂz==X?,PQL 7mG:Mfm2mONkOnE{Uض9A-#bȱn&Eƿ&}E;?z&ԡf6)S,k#0K`!ʅR{V7? <6+T@*ڋAe$xt[*&LAtZt_)*>w 5vK^cP}:37CPlR!M5|_vA jsHf) 46_DuS0#=X$<2X3=.6O>r杶kUٛ hU;"|pVVb<R+xgwNe 0kCN!R$-_U}Z#D2{T>/'1Bx22_u 1)Hng4/oL if7Yͅ>o4e;HGG@fnG9 пӣA`a2B]Y}F۲23{7 )zKE}0MF){9IVL~" ՙ{.LV߷/vN:V7x&^]uBJyiy-d~.}+㾯=S B>iZ`V9TYMKd~4RV9h/E+g҉n&BJH̙ V0yֳթb(ܤ]tRt9ؓ}. QQ{2Sئ ]J%. 3uMP!ˀ1ȹUt^ӈ)gdH Q@' LWAl_޼g3O &rL:P7%w `IY!pOUo+^=u"U*bN0NǬ_fhn 9>AY6\lxws˛m ][B0=`O fE`sB蛈vs^ȃ2wXYz,ҫB{_}pwwĮi*6Dx7jVXtȆ9ۛFbڹM'g '~o t%#13`9q ?wFU}Paj0VY=/O%w¥0|,*j+٢SB -fǓ(o/KA0^&`TpTxp*jo" <7p3D>ځ iH0``>vB+{ K[Sj$cx0wʑf >vǻ4bs7+jN[#Qnմ:8ӍAF. d>}*Tn]U#2G+ޫmf&rֳݗ2SꂂAGh~׆b@qnt̔QE]X<2 RA VE4h(,jpGw4oϱ.fM 7| ̢ݙ'PM0K;Abk#"[P1h>D +{!8EvHpHT,ggT& =ϋ;C9o!0_O2. P¨Z0%#(}M8}?8um?h5CUd4׾+whY-xmJo5.ʗܡNs@)pē:k?x 'JB k/ϼ %e&?6i^2aWX' P/[.i]czVc}ʬ'\t 4>@bQA>V^ghb=g-6U~(,'Doq{/VX:y~UrS,i)Ěޤe3?l ѿ98V_;&&Gj`ċM$w't}ZjLm]k'_HfInJH1@pkok,k %oT%D[\_J0كQ`kdl{i,S0WDJ:o&S,Ƥ=H2K-B xv2iZaT\ )&NMfWx*y+c&W4eiz>6K7"F܆wd[-*Mwۥuذ:LZz91+6R6Xp֕%KW o2CJ$7~MΊS O~`q{ͭx;+Yeva_FU*{E^S]ٱ7%fo$ɨjUֻ3zVxL7d-Qy_밷 ,E\cpSA$,3pl;f#V/ɉ%A;NΓIC_>}P%{acx"uw0BUEf v33 0o}{yeǮ?4u Stƾ O d'W0p 47~<;f0Sr ټ)-f2ƶ/m@0PZۤ"{urf9~ R!L\VI0e|;Uem]gBGSy'yzIm8 {+"-OaXsu!O, ]B0W@Hu[E0#C[X2"꼅Rĸ/X,9sJ# DX>C$uMj6-_L>s"4x(J! &6 TR"e}ZN]P;y#E PU(NZ; "[ MwU;r:Ų o[mEj\GMW11qKzKl? DiZnG8Ԕ&ilQy#joѭ=, g02uPހ{n-R'΁!kY kpRV'`sͲ0jn'4F:ʬ#n`j5C4"s|}.Gw4޳9ǚ8>咙>7hJ`8] +p+ T#sx6Jt۱bO5XI1pNL.θ?C2F)d:1(n<&d>x]yO!/baQZ 4E;v%Q Q ic}}+ 3z[CK}Fp?AauB$'u-Z?<}pA6qG~j_Q- (.BbaY8hdж#}ZTR hc|׾e^JJN4=@S6rXpUth-xa\VD} L.f#N\)֮JQmPn;d )τOOT'Ds=^_oM3he9b~V"IMx(`FtrOҍ*ޱҍqZ|AFln0ѕ ;RQЖ"H8&ca t.-2`'Y'u(M9i|BOQ-t([0-.Oe #jƙ+ ='X}A)7cX&6 Ua$@ֶ܉V/neLmD Uަq29*Af"5n30g+Z#_ {4ڮ)kYHj1 bo$0Tf%!(÷rvăeISbX_gk[p\-ILȫRyxESfgE\ RLK| [S4 ɥ~$93R]"UОH<49Lv3Fӻew=ރayI% դ Hvol:)>+"ѹ[ĈEqKjG[}aUA݃avc^.8]G2a26-4njvpwf T"0*C .y_"38lGZԗI|a2 PB*foug4.(0P~Mn[0}٦'Gfy>u(o7q7_j@ PH[uc;꺿`Ko1Z&V0n`P0^35[:.c#3_1d#=ԥٴ\1HGV#xöh,99vܰf#Z'i8k lqm I|`'X|2GҠɲXe xdOX֎>^礙*{/&&eOdη imT`G؛?rᰧBۢi>uUÛ|ZY /YؚNt}A(% qۍufzq\oVI "59*{O0E^ eqws ʙ<N>ֆ4c>4A.S* Xe .ܲbH9@kf+X |}SU5䨶؜~90fP\;'k7<ӲUǏ5dūſ+ц1 |g$ = d1a/\y1 e#P ;X. \6#v(B+ba'՛ki̶?onjwEW;$!a[fNc >5"!G@ >cRӳ.0pD߯_V'{̥'Nu]DMe>}`̡FʾU+m\t0| !*) b1j#UJ-J:#11J#Q$&G!aKjsŽxL{<}ʿ?K$aTcpaEk5D.PJS#}`D8iH+n>G̉vI)fܴ\ugC"B,cc ŭbJɫZ]3{+tÂ;bo`l r^%Sk&.yI. ʝ9*LjZYd~;52趹ݡ'#:@@Tˠb?ShMjZ{G ;Un[kKwrsmhy!&K6 f_ !D/cVj%'c%I6tiOv} Kkt*4Sr2G55v=P6YEkH=] =Dp<&JXi1I&v 1-܄Z;_A&&Es}f.flI Y~N6TT폥pIN/t;Ndtq:@ݲ;Pp3* wdcdVY^75~"2OdT3&8I4X&(`8fE<2X1*%z._crZa1f%:ȞHP; ~pXx3<)q|k3m9?`AdJ쎘܎ȡt2UUJ5C>,eIe|o +_D2[}q ڄ`L-UqeBfT4K*K&,DACم}~O:hb:/cI41շ9ܛ)BrP2Q3ߪEhDlJKr>G}(`8|QF B,hP U<3חqi G i3%5cOF9#fLU|%r+l;RN8ꍀaibg%ߠ?SP%/;b\SqBQ3NTKabcA`p_ŕ2SˍG#-?. qRF5?fr$aLmջkG ~[=dbhcФAǯ݆9Jq] h_SO/k16!k}mcQy9Hce897N>snAx5bƠnt)0 (`Vaڗ(St#f5""PCGhg4.ym?CA]_[¢R[n``)dR #vEkGRN\ȓǴ]uyA;~/ `+L5vu?=]> ~aX'o} u ڌ+լ-DUEH~Wy!O}ZCCuHpliRUתbtf0'n1cnR)w*/L H>JYJA7Swvֶj2uN~ q R . F@T,g&#bR8D#2E@;t@h m6 kg=ɵ"q$a@ ?لaDKc/)s.3BƧdkr̎ml2 >%$)o%O^PK/MڂnCO @3Gohf&,5QjI H}®܄܊4_-l6x=X.nv!#`Hʸt37;9SNeJ^njPE鷩w1g=bSgp4J8` QAe]Q1Ϭ x=X;]yG`Rv|)Z6jC*paˆR%8gF4 drax/4@_X)3[,;:\a$bqB)HFF?P$Lj0\bu)9u' gJzoD#Q hQry(9߫\lI(gHiutcV=Ґxr/3\OZKlzTp#BkB5{%:# 9]9xUm{ˑĴn<s'G"BDWOm:9:F~9`/8$љ')l 7GjsO3QAxkMsxP.zRtZAѿX:Pcd7tb()p:֎kDн:U[dBPnnI0З`5;bl!՞<%͝'{1eVЦ!o/l?ݥ~>ФEf"ۚ_ DFDh(& 9[~gО[ʰk /:Kb~{88B!@)vD9NzhNwӁcn\lcS$F:-onX^.1FԆ?N:ϖB[C^޻(ԕO7ywW2 &p}3s$?>Jig_"}Jm]u$|lV}dP4LV)yM%ͽi$N!dp \ލn'[\`Θ0K -wIՁ^=ҐZIC\ ]^\ r.7R#Bg_g{> n*2(P% aqCB BԈ(7ĉ&#\fTO`֗wcEEZ;U$*XbA"*vZ/ɷgR.qU dmKnOۚ3+-s9X#XB 0q` oT_,+e$O5fma!Kt>UaES<—4OQ'f[ qs5[ʼnOA3ɂ'`46%vgε}nWF@5$1߻tlf6]#eڰG ?Bdw\k3<ltNi%"-,=W'|Eo ċ@W-@_B)Js~w-h wbڦct rQ/oCd--up?|b+n8d$KSXZlڣ E090KC'1/N zR$ @vIe o (9{5_j!>GEvC,PvÊCrSߦm]=7bC1Espdoxs*=3N6JbvsIkOh!]H1u ߗ,yfo_J#rz+ lCOxרBSƩRL31[R7?`"402z9Ojg@Ft_- KWmC|Gf͐?N!,V طdU;n8l+5}S5j1T\)=w+< CX+ްsE6NI2Beośԁ3qI+N:h~=LBF,U=A'ц:=WJ~v}ypuC%Xg:(ѫ[Mb؀Ch3_?T0sY ї|K B]=Kq݅Lf%҂R%$ѱ 9h`}2#|29Wrx>ziZ?#YgJ$tiB _Tx/S ݄Jpq /%CK8yC鏸2?X +aW^nъ  :T qx+«ΠWT74b&tR/dOnjS9 ~aRG@jj2N=Jh bʾoCC(}Zi4'tkLV늱[. ?PĞhi;rVa:y,D,`PkU-0!z~Ҏs۝/l9,-8&NA&u$U Wx7>"G jv:Yl;Q5}~BL 檔~Mp'Gɕ@..wz|>FOu=%t,2`4쵗Θc<)Xr΁`  qP;uIxO[޴շhrֿ& SV6'OT3wa{UuKKb/ b q]m ?z%q{%kJ &n*3C ɩ=TMކ:(TTAF)MDCb-4{^V+9/Ξ'E Fh+'#E8;|c';DF$Ze:} {*hiĉJlԴˇSvn8J!庤/`MW>/K@?듶 H;^q%Ȁl~&wM;Xj݌PS'XhqT(.DX} v*Yv]@5%[ف }D{r߉IqraJ>?BKmmsUUsx}7Pމ\FoyTt&֭2(QE'uc<黻IȃB9ĭY}T6cq]qNhMU25,O) iSHD1ás#)// u܌t? EfגFoeLay:ЯTt4k4Vq}z&UcB)Tslǭbe\D}0"ef]pMdŶ?@J&|{$vY̥>hE \Ցwh~5+.ROd}pmN^ijN/E/>*H"Q(&&V6u2 5x:2Ɉݜ_ZGN)eq57b= 9g'\Jf|7:]e;h4ُ V2bt/o5juJ 0t YZ