type: CreationInfo
spec version: 3.0.1
created by: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd2
created using: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/additionalToolSPDXRef-gnrtd3
created: 2026-07-11T18:44:12Z

type: CreationInfo
spec version: 3.0.1
created by: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd0
created using: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/additionalToolSPDXRef-gnrtd1
created: 2026-07-11T18:44:12Z

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8517
type: Relationship
relationship type: hasConcludedLicense
to: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8518
from: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8512
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd117
type: Relationship
relationship type: hasDeclaredLicense
to: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd118
from: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd113
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd128
type: Relationship
relationship type: hasDeclaredLicense
to: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd129
from: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd122
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8520
type: Relationship
relationship type: hasDeclaredLicense
to: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8521
from: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8512
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd43
type: Relationship
relationship type: hasConcludedLicense
to: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd44
from: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd17
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd91
type: Relationship
relationship type: hasDeclaredLicense
to: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd92
from: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd86
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd88
type: Relationship
relationship type: hasConcludedLicense
to: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd89
from: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd86
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd114
type: Relationship
relationship type: hasConcludedLicense
to: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd115
from: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd113
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd46
type: Relationship
relationship type: hasDeclaredLicense
to: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd47
from: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd17
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd125
type: Relationship
relationship type: hasConcludedLicense
to: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd126
from: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd122
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8516
type: LifecycleScopedRelationship
relationship type: dependsOn
scope: build
completeness: noAssertion
to: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd86
from: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8512
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8514
type: LifecycleScopedRelationship
relationship type: dependsOn
scope: build
completeness: noAssertion
to: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd122
from: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8512
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8515
type: LifecycleScopedRelationship
relationship type: dependsOn
scope: build
completeness: noAssertion
to: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd113
from: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8512
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8513
type: LifecycleScopedRelationship
relationship type: dependsOn
scope: build
completeness: noAssertion
to: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd17
from: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8512
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd115
type: simplelicensing_LicenseExpression
simplelicensing license expression: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd89
type: simplelicensing_LicenseExpression
simplelicensing license expression: zlib and Boost
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd92
type: simplelicensing_LicenseExpression
simplelicensing license expression: zlib and Boost
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8521
type: simplelicensing_LicenseExpression
simplelicensing license expression: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd47
type: simplelicensing_LicenseExpression
simplelicensing license expression: LGPLv2+ and LGPLv2+ with exceptions and GPLv2+ and GPLv2+ with exceptions and BSD and Inner-Net-2.0 and ISC and Public Domain and GFDL-1.3-only
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd44
type: simplelicensing_LicenseExpression
simplelicensing license expression: LGPLv2+ and LGPLv2+ with exceptions and GPLv2+ and GPLv2+ with exceptions and BSD and Inner-Net-2.0 and ISC and Public Domain and GFDL-1.3-only
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8518
type: simplelicensing_LicenseExpression
simplelicensing license expression: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd126
type: simplelicensing_LicenseExpression
simplelicensing license expression: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd129
type: simplelicensing_LicenseExpression
simplelicensing license expression: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd118
type: simplelicensing_LicenseExpression
simplelicensing license expression: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd127
type: Organization
name: http://openeuler.org
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd45
type: Organization
name: http://openeuler.org
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd116
type: Organization
name: http://openeuler.org
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd90
type: Organization
name: http://openeuler.org
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8519
type: Organization
name: http://openeuler.org
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd86
type: software_Package
supplied by: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd90
software download location: NOASSERTION
summary: A lossless data-compression library
software package version: 0:1.2.13-5.oe2403sp1
software home page: http://www.zlib.net
description: Zlib is a free, general-purpose, not covered by any patents, lossless data-compression library for use on virtually any computer hardware and operating system. The zlib data format is itself portable across platforms.
name: zlib
software source info: acquired package info from repodata DB: repodata/21886cccbebfef01fd8c9ffbdf136561ce8b50eb1d8516669acd0fe126920766-primary.sqlite.bz2
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd113
type: software_Package
supplied by: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd116
software download location: NOASSERTION
summary: GCC version 12 shared support library
software package version: 0:12.3.1-64.oe2403sp1
software home page: https://gcc.gnu.org
description: This package contains GCC shared support library which is needed e.g. for exception handling support.
name: libgcc
software source info: acquired package info from repodata DB: repodata/21886cccbebfef01fd8c9ffbdf136561ce8b50eb1d8516669acd0fe126920766-primary.sqlite.bz2
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8512
type: software_Package
supplied by: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd8519
software download location: NOASSERTION
summary: The C Preprocessor
software package version: 0:12.3.1-64.oe2403sp1
software home page: https://gcc.gnu.org
description: Cpp is the GNU C-Compatible Compiler Preprocessor. Cpp is a macro processor which is used automatically by the C compiler to transform your program before actual compilation. It is called a macro processor because it allows you to define macros, abbreviations for longer constructs. The C preprocessor provides four separate functionalities: the inclusion of header files (files of declarations that can be substituted into your program); macro expansion (you can define macros, and the C preprocessor will replace the macros with their definitions throughout the program); conditional compilation (using special preprocessing directives, you can include or exclude parts of the program according to various conditions); and line control (if you use a program to combine or rearrange source files into an intermediate file which is then compiled, you can use line control to inform the compiler about where each source line originated). You should install this package if you are a C programmer and you use macros.
name: cpp
software source info: acquired package info from repodata DB: repodata/21886cccbebfef01fd8c9ffbdf136561ce8b50eb1d8516669acd0fe126920766-primary.sqlite.bz2
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd17
type: software_Package
supplied by: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd45
software download location: NOASSERTION
summary: The GNU libc libraries
software package version: 0:2.38-101.oe2403sp1
software home page: http://www.gnu.org/software/glibc/
description: The GNU C Library project provides the core libraries for the GNU system and GNU/Linux systems, as well as many other systems that use Linux as the kernel. These libraries provide critical APIs including ISO C11, POSIX.1-2008, BSD, OS-specific APIs and more. These APIs include such foundational facilities as open, read, write, malloc, printf, getaddrinfo, dlopen, pthread_create, crypt, login, exit and more.
name: glibc
software source info: acquired package info from repodata DB: repodata/21886cccbebfef01fd8c9ffbdf136561ce8b50eb1d8516669acd0fe126920766-primary.sqlite.bz2
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd122
type: software_Package
supplied by: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/SPDXRef-gnrtd127
software download location: NOASSERTION
summary: GNU Standard C++ Library
software package version: 0:12.3.1-64.oe2403sp1
software home page: https://gcc.gnu.org
description: The libstdc++ package contains a rewritten standard compliant GCC Standard C++ Library.
name: libstdc++
software source info: acquired package info from repodata DB: repodata/21886cccbebfef01fd8c9ffbdf136561ce8b50eb1d8516669acd0fe126920766-primary.sqlite.bz2
creation info: _:creationInfo_0

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/additionalToolSPDXRef-gnrtd3
type: Tool
name: syft-[not provided]
creation info: _:creationInfo_1

spdx id: https://anchore.com/syft/dir/repo/openeuler/openEuler-24.03-LTS-SP1/update/aarch64-88bcf336-2e01-4eb7-9a45-e1bd23fffe33-specv3/additionalToolSPDXRef-gnrtd1
type: Tool
name: syft-[not provided]
creation info: _:creationInfo_0