Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

libvips

A fast image processing library with low memory needs
Collective - Host: opensource - https://opencollective.com/libvips - Website: https://libvips.github.io/libvips/ - Code: https://github.com/libvips/libvips

Bump version to 8.16 for the next release cycle (#3753)

github.com/libvips/libvips - d65ddd7b28b515b83a467f5fb60cfabb408a3914 authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
small threading improvements

github.com/libvips/libvips - bb77210f2447f864a36275a63a0921f771a23861 authored about 1 year ago by John Cupitt <[email protected]>
allow offsets for PDF detection

PDF v2 allows the "%PDF" magic string to be offset from the start of the
file. In practice, this...

github.com/libvips/libvips - e98873cb9b3b5888d3536b09c023ff582cab934c authored about 1 year ago by John Cupitt <[email protected]>
Release v8.15.0 (#3752)

github.com/libvips/libvips - 64ee84f842dceb77cfa862d57271672d85ebe3a7 authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
cplusplus: update Doxyfile.in (#3751)

- Remove default values and comments.
- Remove `TAB_SIZE` option.
- Ensure markdown mainpage c...

github.com/libvips/libvips - 2f2fdd073504c8f1fafa96fa017d75699ab74a5a authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
composite: ensure compilation on i386 (#3750)

Resolves: #3749.

github.com/libvips/libvips - 5631b2ed7ca9e5456526b96670c7e92160af0aff authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Release v8.15.0-rc2 (#3745)

github.com/libvips/libvips - 19eba89148695a2780f49b43bc70c426f21fdec1 authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Merge branch 'master' of github.com:libvips/libvips

github.com/libvips/libvips - 66ee9f1c0db83e121374e3cfdd5c75be14f173e2 authored about 1 year ago by John Cupitt <[email protected]>
fix a compiler warning

github.com/libvips/libvips - 54e125ce0b3f43561e7390312ef1c2a79f1db1b6 authored about 1 year ago by John Cupitt <[email protected]>
Improve scRGB/16-bit support in `find_trim` and `embed` (#3631)

github.com/libvips/libvips - 07a9ae04930db78d1067e6d582b59e8077b4fa2f authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
magick: prefer use of `GetMagicInfo()` (#3735)

This makes our magick sniffer aware of the various magic signatures
defined with the `MagickCod...

github.com/libvips/libvips - 001a22b1895b252ce16a5f893231f9d1ccfa0736 authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
fix dzsave onepixel google mode

... by forcing it to onetile instead, see
https://github.com/libvips/libvips/issues/3718#issueco...

github.com/libvips/libvips - 12c2100154d51e0a025ee320a9939811753b568b authored about 1 year ago by John Cupitt <[email protected]>
fix some argument priorities

github.com/libvips/libvips - 8811026819c3797b597241ff62ec4a4431a6a219 authored about 1 year ago by John Cupitt <[email protected]>
dzsave: fix a couple of minor bugs (#3726)

- Avoid writing files with `[options]`.
- Honor `--imagename` option.
- Fix `--skip_blanks` op...

github.com/libvips/libvips - df8b8e247ed410138fcacec2f43f0c5c16aecc37 authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Merge branch '8.15' of github.com:libvips/libvips into 8.15

github.com/libvips/libvips - 0c1e687bf43a7f109016258c9cdb4d574a79c97f authored about 1 year ago by John Cupitt <[email protected]>
don't allocate HEIC profiles relative to out

this is a forward port of https://github.com/libvips/libvips/pull/3725
plus some minor formattin...

github.com/libvips/libvips - c9396bb101262d9862e7b286b50433214f7ff2aa authored about 1 year ago by John Cupitt <[email protected]>
heifsave: errors must have a message in libheif 1.17.0+ (#3724)

github.com/libvips/libvips - dda2df2081b48300954900d23082d19195e4356d authored about 1 year ago by Lovell Fuller <[email protected]>
Revert "raise librsvg minver to 2.48 (#3574)" (#3722)

This reverts commit da5cb2206ad25edd5d6f5a6ffa9352f7ae807f5f.

github.com/libvips/libvips - 9075ed9681c11e95ee0924524ab657ddc7a49764 authored about 1 year ago by Remi Collet <[email protected]>
Release v8.15.0-rc1 (#3719)

github.com/libvips/libvips - 7cf13082a18b11d6a5327294396ea459965ebb2a authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Fix saving EXIF strings with invalid UTF8 encoding (#3720)

github.com/libvips/libvips - 1e12591f7b5701d6f2eb9ddf4be716fbe50d537b authored about 1 year ago by Sergey Alexandrovich <[email protected]>
Ensure libheif symbols are found when built statically (#3715)

libheif is a C++ library that exposes a C API. When it's built
statically, the linker must also...

github.com/libvips/libvips - c1e4d031fba77b76d4ce5a104ac8608ffa8f1f18 authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Improve scRGB support (#3623)

github.com/libvips/libvips - 1130557489b75d39dad13a6f727b6d437a093641 authored about 1 year ago by John Cupitt <[email protected]>
OSS-Fuzz: adapt sed replacement for libheif (#3713)

libheif removed `-lstdc++` from their pkg-config file with commit:
https://github.com/struktura...

github.com/libvips/libvips - 27e8688554c104da72e27300df2f0da00985523f authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Revise docs for Highway (#3711)

github.com/libvips/libvips - 2f9ce1f10a71b3814e6a31a3e313f0dc56044b59 authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Regenerate POTFILES.in and C++ binding (#3710)

github.com/libvips/libvips - 74adb395b2ab3a15f4ec8dd734bcbd40811516fd authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
reduce{h,v}: remove rounding from the double paths (#3532)

github.com/libvips/libvips - c463811fa3a8bb2bb0a4d2edc75437a85ec0455b authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
reduce{h,v}: simplify coefficients handling (#3553)

- De-duplicate `n_points` calculations.
- Extract the various filters in inline functions.
- M...

github.com/libvips/libvips - c09d14433fc1906fff0f311611df73a405de67d3 authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Guard against `NULL`-blobs during `*_add_custom_icc` (#3702)

github.com/libvips/libvips - 2f1e550d56809b24640f6674f632b5c900313f07 authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Add "keep" flag to savers (#3585)

This commit introduces a "keep" flag option for all savers, allowing
more control over which me...

github.com/libvips/libvips - 32ddfe702de0617eaaf390ac240e1caf40ba7217 authored about 1 year ago by Dmitry <[email protected]>
add `vips_thread_execute()` to the public API (#3695)

Allowing clients to schedule jobs on the libvips threadset.

github.com/libvips/libvips - aed2980fd04f5e0f4452aa6f79b39606a1f96948 authored about 1 year ago by John Cupitt <[email protected]>
Mention imgproxy in README (#3698)

github.com/libvips/libvips - a73507992099646c24b0439dccb4dc49f76e5379 authored about 1 year ago by Sergey Alexandrovich <[email protected]>
archive: ensure files are written in binary mode (#3694)

On POSIX-compliant operating systems (e.g. Linux, macOS), there is
no difference between binary...

github.com/libvips/libvips - ba2712b59c0423ccd7bb7ce9bd1b6701f86a0a6d authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Fix typos (#3693)

Found by codespell v2.2.6.

github.com/libvips/libvips - 5169dd94a67b1acd0e34ef4bdc5bdcc605182f69 authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
openslideload oops

github.com/libvips/libvips - 93aeb4e16d408383c69393d76f2b2086ad255a75 authored about 1 year ago by John Cupitt <[email protected]>
add openslide4 icc profile support

github.com/libvips/libvips - 3b48a7c3e6e94bdb0803067099dda1ad86cd2e1d authored about 1 year ago by John Cupitt <[email protected]>
vips2tiff: fix function pointer cast issue (#3690)

`g_slist_sort()` uses the same implementation as
`g_slist_sort_with_data()` within GLib; hence,...

github.com/libvips/libvips - b4f4b0414697c73e744debc36a1fd7f5d657a629 authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
archive: avoid creating entries for each directory (#3687)

This is not necessary; the ZIP format maintains a hierarchical
structure.

github.com/libvips/libvips - 0819eccda6abe097c5da16edf8d028c7c0e6b595 authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Move tiff JPEG compression outside the lock and thread it (#3679)

github.com/libvips/libvips - 1131b7dc4ffa97a71031529b2628d519f471f7f4 authored about 1 year ago by John Cupitt <[email protected]>
SIMD optimizations with Highway (#3618)

github.com/libvips/libvips - b32cb5ec4dce696672218a3aeca9292c08ca23e7 authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Remove a couple of redundant GLib version guards (#3680)

The minimum required GLib version was raised to 2.52, making these
guards unnecessary.

github.com/libvips/libvips - 57b7b9e2337006659cea479e55287ee4320a90f1 authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Fix invalid UTF-8 strings instead of ignoring them (#3674)

github.com/libvips/libvips - 07896142ad8a3e1a21fa9367d0557c3cf9009caf authored about 1 year ago by Sergey Alexandrovich <[email protected]>
openexr2vips: use alpha range of 0.0 - 1.0 (#3673)

This reverts commit f4250ab7ab47a02dc57b3c28df38148c56f4ec8d.

github.com/libvips/libvips - 5dda56ddfcdf2d5683be9ade07ca4f6acc71c3f3 authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
revise icc_import docs

see https://github.com/libvips/pyvips/issues/426

github.com/libvips/libvips - efed966147d0effa41510ea83c85b2c8fa18e857 authored about 1 year ago by John Cupitt <[email protected]>
Modernize code to C++11 (#3612)

github.com/libvips/libvips - 5482ead701b29cbfd3eeab6e91603d972b3b8850 authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Add direct mode to dzsave (#3557)

Rather than making a pipeline for each tile, call directly into
vips2jpeg. For small (eg. 256x2...

github.com/libvips/libvips - 7ac29928123a276e126c803147db75966afb49c4 authored about 1 year ago by John Cupitt <[email protected]>
Regenerate DocBook files (#3672)

These files are being used when Pandoc is not available.

github.com/libvips/libvips - 6c8247674a96d635a367e0518ec831bbdfc85e87 authored about 1 year ago by Kleis Auke Wolthuizen <[email protected]>
magickload: add support for cursor images (#3643)

github.com/libvips/libvips - f99d845be777327825e86c8a5ba02e9ae64b0b34 authored about 1 year ago by Marcos Casagrande <[email protected]>
tiffload: add 16-bit float support (#3626)

github.com/libvips/libvips - 8dfee776738ff5aa7990ccd904cac452668823f3 authored about 1 year ago by Sergey Alexandrovich <[email protected]>
Use alpha range of 0.0 - 1.0 for scRGB (#3627)

github.com/libvips/libvips - e9c5a3155272b7328f5a0f1a21d0afcfbd1d7490 authored over 1 year ago by Sergey Alexandrovich <[email protected]>
Merge branch '8.14'

github.com/libvips/libvips - a9f6793cf2a2319fbf7bf283c29997a88edc1b11 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Release v8.14.5 (#3663)

github.com/libvips/libvips - 4b3df69556a7083d1f89fecff49386258a405e69 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Fix a crash in jxlsave (#3620)

Some versions of GraphicsMagick can report rgb colourspace for some mono
BMPs. In turn, this can...

github.com/libvips/libvips - 52a872c6b18d5c4eeaf04e030815146b9b1b3acb authored over 1 year ago by John Cupitt <[email protected]>
find_trim: fix a crash when enabling `line_art` mode (#3630)

github.com/libvips/libvips - d9a2a04ee531e3e126951bf892e6a9207c0b6b64 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
call heif_init on heif startup (#3651)

a little safer, and makes libvips work with the libheif on ubuntu 23.04

github.com/libvips/libvips - 52f9efad97188b6d98a0eb11621a68422188ede4 authored over 1 year ago by John Cupitt <[email protected]>
fix crash with alpha handling for icc import and export (#3647)

The ICC import and export line process functions were using `SIZEOF_PEL`
on the input and outpu...

github.com/libvips/libvips - 48f75f696e57bcffbc4524a452d33d131b600ec5 authored over 1 year ago by John Cupitt <[email protected]>
Merge branch 'add-openslide-icc-profile-support'

github.com/libvips/libvips - a25782dd296ae5192842e1ef06ca748b83e7697a authored over 1 year ago by John Cupitt <[email protected]>
update refs to PHP in the binding docs

see https://github.com/libvips/libvips/discussions/3649

github.com/libvips/libvips - 888e7f07cf7bc0e8cf6afada61c4c1069cb3a0eb authored over 1 year ago by John Cupitt <[email protected]>
fix memleak in im_dif_std()

see https://github.com/libvips/libvips/issues/3642

github.com/libvips/libvips - fadccd6dcda320c68d79781c8b82c57aa67674be authored over 1 year ago by John Cupitt <[email protected]>
OSS-Fuzz: remove redundant sed replacement (#3622)

This became redundant after strukturag/libheif#891.

github.com/libvips/libvips - 8ae3e5eb9a8075b4951cb2d928b5a455bfe96fc8 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Fix a crash in jxlsave (#3620)

Some versions of GraphicsMagick can report rgb colourspace for some mono
BMPs. In turn, this ca...

github.com/libvips/libvips - 4e1bf32ab7cca9b02b3d123844c83e7e5c8a3c1c authored over 1 year ago by John Cupitt <[email protected]>
Fix a crash in jxlsave (#3620)

Some versions of GraphicsMagick can report rgb colourspace for some mono
BMPs. In turn, this ca...

github.com/libvips/libvips - 029708693002f35bcaa7ce9dd5e43b454b9f839a authored over 1 year ago by John Cupitt <[email protected]>
Merge branch '8.14'

github.com/libvips/libvips - 5fb9f6182ca9d396536f87bbd4ca08a993791c30 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Release v8.14.4 (#3615)

github.com/libvips/libvips - f049dcdfc434d643e3155bb990192d489ae5ff1a authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
cplusplus: ensure `operator-` is not no-op (#3611)

Regressed since commit 873ae7305f07a3a1493249148c1d0f0a0407f797.

github.com/libvips/libvips - 9f106790a4d8f65b231077d0c639ba7eec9ee97e authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Prefer use of `G_VALUE_INIT` / `G_PRIVATE_INIT` (#3610)

These macros are available since GLib v2.30 and v2.32, respectively.

github.com/libvips/libvips - 8483bc2bb480390bc0b047e1ecf6c318756adf27 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
pdfiumload: fix forms rendering (#3613)

github.com/libvips/libvips - 45386a8e2cbf9d6cf01f53983f5ae085a217f460 authored over 1 year ago by Sergey Alexandrovich <[email protected]>
Merge branch '8.14'

github.com/libvips/libvips - d59e8b93c1406bc43b8dde6aefe66ab979449bec authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
pdfiumload: fix rendering of pages with different sizes (#3594)

github.com/libvips/libvips - 422c3b8451034c3164e175ebc81691bfca21502a authored over 1 year ago by Sergey Alexandrovich <[email protected]>
heif{load,save}: guard against `NULL` strings (#3608)

Ensures that a `NULL` string is never passed to `vsnprintf`,
avoiding the occurrence of undefin...

github.com/libvips/libvips - 7784143caac3d55992a080be86f606e4c585f311 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Better shrinkv chunking (#3603)

* fix text test

On some systems, the default font is so small the maxval in text
never hits ...

github.com/libvips/libvips - da53d0e12bbdea61ccb32761db28b977ba168344 authored over 1 year ago by John Cupitt <[email protected]>
Merge branch '8.14'

github.com/libvips/libvips - acf8ed3e0b16ed732a72a51d15bba17798f72e14 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
svgload: fix null-pointer dereference (#3604)

`g_utf8_find_next_char()` might return NULL when called with a
non-NULL second argument, indica...

github.com/libvips/libvips - e091d65835966ef56d53a4105a7362cafdb1582b authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Bump version to 8.14.4 (#3602)

github.com/libvips/libvips - b91ebf2989dcbd3c263e4568656277de5469f283 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
fix a race in tilecache

Under very heavy load, tilecache could fail an assert with eg.:

Bail out! VIPS:ERROR:../libvip...

github.com/libvips/libvips - 8d5f33174c956623c1b7eb82c43c828c0511cc22 authored over 1 year ago by John Cupitt <[email protected]>
raise librsvg minver to 2.48 (#3574)

Earlier librsvg versions relied on libcroco for CSS parsing, an
unmaintained library.

github.com/libvips/libvips - da5cb2206ad25edd5d6f5a6ffa9352f7ae807f5f authored over 1 year ago by John Cupitt <[email protected]>
magick: distinguish ISOBMFF formats from TGAs (#3555)

github.com/libvips/libvips - 4aadb90e4a2a637075510269d5bb812293eca404 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Add a magick sniffer for CR2 (#3460)

This image format uses the standard TIFF header, so a special
sniffer is needed to prevent *mag...

github.com/libvips/libvips - 32f65a89392719c71bc498755888e618004b791d authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Merge branch '8.14'

github.com/libvips/libvips - 6801d3938bb58c72a06ba4add7e2c803bd5f1c91 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Release v8.14.3 (#3569)

github.com/libvips/libvips - cc6e9a5035481c0605e63b6d44cfef791b6e06bc authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
expand thumbnail docs

see https://github.com/libvips/php-vips/discussions/210

github.com/libvips/libvips - ce99675cc75a4f74658e746d241f938a388cba73 authored over 1 year ago by John Cupitt <[email protected]>
colour: improve ICC compatibility check for CMYK images (#3565)

github.com/libvips/libvips - ee74035152798cc7403a0593976aaee170f05c76 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
subsample should not change xres/yres

No other resize operations change the resolution.

github.com/libvips/libvips - 0028e804f276e5d1e433e07a91ae74ad42290431 authored over 1 year ago by John Cupitt <[email protected]>
Add codespell integration (#3563)

And fix existing spelling errors.

github.com/libvips/libvips - 5e3fc248d22610dcced960a5a98e94d9d63e53b2 authored over 1 year ago by John Cupitt <[email protected]>
Add .git-blame-ignore-revs file (#3566)

github.com/libvips/libvips - 9a8bf09d0a80b46bd39a12702feaf86986939ba9 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Enforce code consistency with clang-format (#3125)

github.com/libvips/libvips - 873ae7305f07a3a1493249148c1d0f0a0407f797 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
release build by default (#3559)

github.com/libvips/libvips - 914e09d553d82e3c739d1a949cdfd317c5cc7e65 authored over 1 year ago by John Cupitt <[email protected]>
Update FUNDING.yml

github.com/libvips/libvips - ca52065ada754899dcd58fbf2218c9994c88156d authored over 1 year ago by John Cupitt <[email protected]>
update for revised icc profile API

github.com/libvips/libvips - fba4762d913d6492c50cc3d59c55453cb1cf18be authored over 1 year ago by John Cupitt <[email protected]>
add ICC profile support to openslideload

see https://github.com/openslide/openslide/pull/469

github.com/libvips/libvips - a1277e7dc88c812f072edc8ea5c3fef746cb80af authored over 1 year ago by John Cupitt <[email protected]>
make icc_transform autoset depth (#3558)

default to 16 output for a 16-bit source image

github.com/libvips/libvips - f807d7b1aaa09d10e4b38583fb417fb7f74b5e3c authored over 1 year ago by John Cupitt <[email protected]>
Use `.dylib` as dynamic module extension on macOS (#3554)

Should be safe, we no longer depend on `G_MODULE_SUFFIX`.

github.com/libvips/libvips - 4c1abc266c5c770db20e47a67aed764b26df00ef authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Fix clang warnings (#3550)

github.com/libvips/libvips - c264c54b351c8faac8e6f2db42413226a8428e16 authored over 1 year ago by John Cupitt <[email protected]>
dzsave: remove libgsf in favor of libarchive (#3476)

See: #3354

Co-authored-by: John Cupitt <[email protected]>

github.com/libvips/libvips - 00e4047ff9a223132adfdf874f723139e399c6f2 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
type: prefer use of `G_DEFINE_*` macros (#3543)

These macros are available since GLib 2.26.

github.com/libvips/libvips - 3a665dac85acba202d8dc476556de0bb11689487 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
jpeg2vips: simplify (#3542)

Non-functional change.

github.com/libvips/libvips - db1eec430c124d3b0573ee2208246565022e1c36 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
jpeg2vips: avoid copying data for mappable sources (#3520)

github.com/libvips/libvips - e08190f7efa1c510a3e774af2c1dd277076fd152 authored over 1 year ago by Sergey Alexandrovich <[email protected]>
tsan: update suppressions (#3531)

github.com/libvips/libvips - 783f531c188ce0c91b334c4abfdb8eefd3392925 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
Optimize vips_foreign_save_cgif_set_transparent (#3511)

github.com/libvips/libvips - ffa234c9b12985e1a7e0a98e548dbc8b2b463b92 authored over 1 year ago by Sergey Alexandrovich <[email protected]>
scRGB2XYZ: re-sync with `vips_col_scRGB2XYZ` (#3527)

See commit 2f9d49c.

github.com/libvips/libvips - af0c9c8e415cad32ed9946b23b46313b4f1841b5 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>
reduce{h,v}: ensure rounding for the uint/int paths (#3514)

github.com/libvips/libvips - 8550ae110ba61e69648d9c5313e1686114cb1b06 authored over 1 year ago by Kleis Auke Wolthuizen <[email protected]>