Compare commits

..

14 commits

Author SHA1 Message Date
Nick Clifton
a1a26f78cd Annocheck: Add support for Fortran binaries. 2024-06-26 13:30:54 +01:00
Nick Clifton
57b946d142 Annocheck: Add tweaks for mixed Rust/C binaries. (#2284605) - Annocheck: Add more glibc source file names. 2024-06-04 13:12:24 +01:00
Nick Clifton
cab90fd2c3 Annocheck: Skip GAPS test for GO binaries. (RHEL-36308) 2024-05-20 17:28:59 +01:00
Nick Clifton
7393f9abbf Spec File: Add annobin plugin document directory to the files section. (#2279779) 2024-05-20 11:01:54 +01:00
Nick Clifton
a19fc37513 Annocheck: Remove some false positives for Rust binaries. (#2280239) 2024-05-14 13:25:08 +01:00
Nick Clifton
27988edef0 Spec File: Add the annobin source directory to the files section. (#2279779) 2024-05-09 14:59:17 +01:00
Nick Clifton
5491830fe2 Annocheck: Defer passing the branch protection test until all notes have been checked. - GCC Plugin: Add extra code for detecting the branch protection setting. (RHEL-35958) 2024-05-09 14:15:11 +01:00
Nick Clifton
3efb8016d7 Fix typo in test for RiscV-64 architecture. 2024-04-23 17:07:00 +01:00
Nick Clifton
189faa0d94 Annocheck: Test for gaps even when only one note is present. 2024-04-23 14:16:49 +01:00
Nick Clifton
b4d0bca3b5 Annocheck: Skip AArch64 branch protection test for GO binaries. 2024-04-22 10:13:43 +01:00
Nick Clifton
df38c5938d GCC Plugin: Disable active check for -Wimplicit-int for non-C sources. (#2275884) 2024-04-18 15:16:34 +01:00
Nick Clifton
581106ec06 improved detection of -mbranch-protection 2024-03-25 18:27:12 +00:00
Nick Clifton
c1f9047e75 GCC Plugin: Fix bug extracing the value of target specific command line options. 2024-03-21 14:22:00 +00:00
Nick Clifton
050025b76b Annocheck: Improve heuristics for locating debug info files.
Resolves: #2267097
2024-03-01 13:52:40 +00:00
2 changed files with 31 additions and 205 deletions

View file

@ -1,8 +1,8 @@
Name: annobin
Summary: Annotate and examine compiled binary files
Version: 13.05
Release: 2%{?dist}
Version: 12.60
Release: 1%{?dist}
License: GPL-3.0-or-later AND LGPL-2.0-or-later AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (LGPL-2.0-or-later WITH GCC-exception-2.0) AND GFDL-1.3-or-later
URL: https://sourceware.org/annobin/
# Maintainer: nickc@redhat.com
@ -324,10 +324,6 @@ touch configure */configure Makefile.in */Makefile.in
# Similarly we do not want to rebuild the documentation.
touch doc/annobin.info
# Generate a source tarball for installation later with all the patches
# applied. This must be the last step in the prep section.
tar -C ../ -cJf ../latest-annobin.tar.xz %{name}-%{version}
#---------------------------------------------------------------------------------
%build
@ -423,13 +419,13 @@ rm %{_tmppath}/tmp_annobin.so
%if %{with clangplugin}
cp clang-plugin/annobin-for-clang.so %{_tmppath}/tmp_annobin.so
# To enable verbose more in the plugin append the following: ANNOBIN="verbose"
make -C clang-plugin clean all CLANG_TARGET_OPTIONS="$CLANG_TARGET_OPTIONS $BUILD_FLAGS" PLUGIN_INSTALL_DIR=%{clang_plugin_dir}
make -C clang-plugin clean all CLANG_TARGET_OPTIONS="$CLANG_TARGET_OPTIONS $BUILD_FLAGS"
%endif
%if %{with llvmplugin}
cp llvm-plugin/annobin-for-llvm.so %{_tmppath}/tmp_annobin.so
# To enable verbose more in the plugin append the following: ANNOBIN_VERBOSE="true"
make -C llvm-plugin clean all CLANG_TARGET_OPTIONS="$CLANG_TARGET_OPTIONS $BUILD_FLAGS" PLUGIN_INSTALL_DIR=%{llvm_plugin_dir}
make -C llvm-plugin clean all CLANG_TARGET_OPTIONS="$CLANG_TARGET_OPTIONS $BUILD_FLAGS"
%endif
# endif for %%if {with_plugin_rebuild}
@ -457,7 +453,7 @@ cat `gcc --print-file-name=rpmver` > %{buildroot}/%{ANNOBIN_GCC_PLUGIN_DIR}/%{av
# Also install a copy of the sources into the build tree.
mkdir -p %{buildroot}%{annobin_source_dir}
cp ../latest-annobin.tar.xz %{buildroot}%{annobin_source_dir}/latest-annobin.tar.xz
cp %{_sourcedir}/%{annobin_sources} %{buildroot}%{annobin_source_dir}/latest-annobin.tar.xz
%endif
rm -f %{buildroot}%{_infodir}/dir
@ -536,166 +532,9 @@ make check
#---------------------------------------------------------------------------------
%changelog
* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 13.05-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Thu Jan 15 2026 Nick Clifton <nickc@redhat.com> - 13.05-1
- Annocheck: Add .fc44 to list of known rpm file extensions.
* Sat Dec 20 2025 Jakub Jelinek <jakub@redhat.com> - 13.04-3
- NVR bump to allow rebuild for new GCC in a side-tag.
* Sat Dec 20 2025 Jakub Jelinek <jakub@redhat.com> - 13.04-2
- NVR bump to allow rebuild for new GCC in a side-tag.
* Thu Dec 18 2025 Nick Clifton <nickc@redhat.com> - 13.04-1
- Annocheck: Fix compile time warnings from GCC-15 re: strchr returning a const char *.
* Wed Nov 05 2025 Nick Clifton <nickc@redhat.com> - 13.03-1
- Annocheck: Skip production test for gcc libraries. (RHEL-123175)
* Fri Oct 31 2025 Nick Clifton <nickc@redhat.com> - 13.02-1
- Annocheck: Update heuristic to detect gcc libraries. (RHEL-124869)
* Thu Oct 23 2025 Nick Clifton <nickc@redhat.com> - 13.01-1
- Annocheck: Change FAIL for binaries built by a cross compiler to a MAYBE. (RHEL-123175)
* Wed Aug 06 2025 Nick Clifton <nickc@redhat.com> - 12.99-1
- Annocheck: Improve detection of glibc static maths libraries. (RHEL-107470)
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 12.98-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Fri Jul 04 2025 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 12.98-1
- Improve configure and meson files for consistent builds.
* Thu Jun 19 2025 Nick Clifton <nickc@redhat.com> - 12.97-1
- Annocheck: Delete the temporary debug info directory after the tests have finished.
* Wed Jun 04 2025 Nick Clifton <nickc@redhat.com> - 12.96-1
- Annocheck: Fix bugs in debug rpm location code. Add more glibc exceptions. (RHEL-95216)
* Thu May 15 2025 Nick Clifton <nickc@redhat.com> - 12.95-1
- Annocheck: Improve performance with multiple debug info files and multiple files to scan. (#2366180)
* Tue May 13 2025 Nick Clifton <nickc@redhat.com> - 12.94-1
- Annocheck: Update heuristic for detecting gcc files to cope with gcc 15. (#2365824)
* Mon Mar 17 2025 Nick Clifton <nickc@redhat.com> - 12.93-1
- Annocheck: Fix test for GO revision. (RHEL-56031)
* Fri Feb 14 2025 Nick Clifton <nickc@redhat.com> - 12.92-1
- Annocheck: Do not rely upon libelf's ability to detect links to separate debuginfo files. (RHEL-79264)
* Thu Feb 13 2025 Nick Clifton <nickc@redhat.com> - 12.91-1
- Annocheck: Fix resource leak. (RHEL-79253)
* Wed Feb 12 2025 Nick Clifton <nickc@redhat.com> - 12.90-1
- Annocheck: Fix double free. Add special handling for COMBOOT modules.
* Tue Feb 11 2025 Nick Clifton <nickc@redhat.com> - 12.89-1
- Annocheck: Improve diagnostics when a separate debug info file cannot be found.
* Mon Feb 03 2025 Nick Clifton <nickc@redhat.com> - 12.88-1
- Annocheck: Look for -fstack-clash-protection in DW_AT_producer string. (RHEL-77328)
* Tue Jan 28 2025 Nick Clifton <nickc@redhat.com> - 12.87-1
- Annocheck: Fix locating string notes (again). Add exception for glibc benchmark tests. (RHEL-76456)
* Mon Jan 27 2025 Nick Clifton <nickc@redhat.com> - 12.86-1
- Annocheck: Add crtoffloadtableS.o to list of known gcc binaries. (RHEL-760404)
* Mon Jan 27 2025 Nick Clifton <nickc@redhat.com> - 12.85-1
- Annocheck: Fix the --debug-dir option.
* Thu Jan 23 2025 Nick Clifton <nickc@redhat.com> - 12.84-1
- Annocheck: Fix corrupt warning message when unable to locate separate debug info files.
* Wed Jan 22 2025 Nick Clifton <nickc@redhat.com> - 12.83-1
- Annocheck: Remove spurious debugging messages.
* Wed Jan 22 2025 Nick Clifton <nickc@redhat.com> - 12.82-1
- Annocheck: Always look for annobin notes in separate debug info files. (RHEL-75778)
* Thu Jan 16 2025 Nick Clifton <nickc@redhat.com> - 12.81-1
- Annocheck: Support multiple --debug-rpm and --debug-file options. (RHEL-73349)
* Sat Jan 11 2025 Jakub Jelinek <jakub@redhat.com> - 12.80-2
- NVR bump to allow rebuild for new GCC in a side-tag.
* Fri Dec 13 2024 Nick Clifton <nickc@redhat.com> - 12.80-1
- Annocheck: Add support for sys-root'ed glibc packages. (RHEL-71296)
* Tue Dec 10 2024 Nick Clifton <nickc@redhat.com> - 12.79-1
- GCC Plugin: Tidy up use of gcc's diagnoatic headers. (#32429)
- Testsuite: Use configured compiler when running tests.
* Mon Dec 09 2024 Nick Clifton <nickc@redhat.com> - 12.78-1
- GCC Plugin: Fix building with gcc 15. (#32429)
* Fri Nov 15 2024 Nick Clifton <nickc@redhat.com> - 12.77-1
- Annocheck: Fix overly long debug messages.
* Fri Nov 15 2024 Nick Clifton <nickc@redhat.com> - 12.76-1
- Annocheck: Rename rwx-seg test to load-segments. Add more checks. Add check for gaps as a future fail.
- Annocheck: Add --no-allow-excpetions to disable exceptions for known special binaries.
- Annocheck: Add --enable-future to enable future fail components in normal tests.
- Annocheck: Fix bug preventing the inclusion of the rpm name in reports.
* Tue Nov 12 2024 Nick Clifton <nickc@redhat.com> - 12.75-1
- Annocheck: Add more exceptions for gcc binaries. (RHEL-33365)
- Annocheck: Add --skip-passes option.
* Wed Nov 06 2024 Nick Clifton <nickc@redhat.com> - 12.74-1
- Annocheck: Add exceptions for gcc binaries. (RHEL-33365)
* Tue Nov 05 2024 Nick Clifton <nickc@redhat.com> - 12.73-1
- Annocheck: Skip property note test for i386 binaries created by LLVM. (#2323797)
* Fri Nov 01 2024 Nick Clifton <nickc@redhat.com> - 12.72-1
- Annocheck: Skip FORTIFY and GLIBC_ASSERTIONS tests for LLVM produced binaries with unparseable DW_AT_producer attributes in their DWARF debug info. (RHEL-65411)
* Mon Oct 14 2024 Nick Clifton <nickc@redhat.com> - 12.71-1
- GCC Plugin: Change type of the .annobin.notes section from SHT_STRTAB to SHT_PROGBITS.
* Tue Aug 13 2024 Nick Clifton <nickc@redhat.com> - 12.70-1
- Clang & LLVM Plugins: Include install directory in binary. (RHEL-54069)
* Mon Aug 12 2024 Nick Clifton <nickc@redhat.com> - 12.69-1
- BuiltBy: Fix seg-fault when comparing language version strings. (RHEL-53497)
* Wed Aug 07 2024 Nick Clifton <nickc@redhat.com> - 12.67-1
- Annocheck: Stop spurious assembler warnings. (RHEL-53213)
- Annocheck: Stop warnings about known gaps. (RHEL-53218)
* Fri Aug 02 2024 Nick Clifton <nickc@redhat.com> - 12.66-1
- Annocheck: Fix stack realign test. (#2302427)
* Mon Jul 29 2024 Nick Clifton <nickc@redhat.com> - 12.65-1
- Annocheck: Fix recording arguments for later re-use. (RHEL-50802)
* Fri Jul 26 2024 Nick Clifton <nickc@redhat.com> - 12.64-1
- GCC Plugin: Fix building AArch64 components with gcc earlier than 11.3.
* Mon Jul 22 2024 Nick Clifton <nickc@redhat.com> - 12.63-1
- Annocheck: Add improvements to the builtby utility.
* Wed Jul 17 2024 Fedora Release Engineering <releng@fedoraproject.org> - 12.62-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Mon Jul 08 2024 Nick Clifton <nickc@redhat.com> - 12.62-1
- Annocheck: Add support for ADA binaries.
- Annocheck: Add support for binaries built from more than two high level source languages.
- Annocheck: Add support for object files containing no executable code.
- Annocheck: Do not FAIL LLVM compiled binaries that have not been built with sanitize-cfi and/or sanitize-safe-stack.
* Wed Jun 26 2024 Nick Clifton <nickc@redhat.com> - 12.60-1
- Annocheck: Add support for Fortran binaries.
* Tue Jun 11 2024 Nick Clifton <nickc@redhat.com> - 12.59-1
- Annocheck: Add heuristic for detecting parts of the CGO runtime library.
* Mon Jun 10 2024 Nick Clifton <nickc@redhat.com> - 12.58-1
- Annocheck: Add improvements for handling Clang runtime binaries.
* Tue Jun 04 2024 Nick Clifton <nickc@redhat.com> - 12.57-1
@ -718,9 +557,6 @@ make check
- Annocheck: Defer passing the branch protection test until all notes have been checked.
- GCC Plugin: Add extra code for detecting the branch protection setting. (RHEL-35958)
* Thu Apr 25 2024 Nick Clifton <nickc@redhat.com> - 12.52-1
- Annocheck: Add OpenSSL Engine test. (PTG-319)
* Tue Apr 23 2024 Nick Clifton <nickc@redhat.com> - 12.51-1
- Annocheck: Test for gaps even when only one note is present.
@ -732,11 +568,7 @@ make check
- Annocheck: Ignore stack checks for AMD GPU binaries.
- Annocheck: Do not produce FAIL result for i686 binaries in the RHEL-10 profile.
- Annocheck: Test for __stack_chk_guard being writeable.
* Tue Apr 02 2024 Nick Clifton <nickc@redhat.com> - 12.48-1
- Annocheck: Update heuristics for detecting glibc code in executables. (RHEL-30579)
* Wed Mar 27 2024 Nick Clifton <nickc@redhat.com> - 12.47-1
- Clang & LLVM Plugins: Allow environment to override fortification level. (RHEL-30579)
- Spec File: Override fortification level and set it to 3.
@ -745,15 +577,12 @@ make check
- Clang Plugin: Add global-file-syms option.
- LLVM Plugin: Add global-file-syms option.
- Plugins: Add support for ANNOBIN environment variable.
- Built By: Add more lang types.
* Thu Mar 21 2024 Nick Clifton <nickc@redhat.com> - 12.45-1
- GCC Plugin: Fix bug extracing the value of target specific command line options.
* Wed Mar 06 2024 Nick Clifton <nickc@redhat.com> - 12.44-1
- Configure: Remove check for FrontendPluginRegistry.h header as it is stored in a non-standard location on Debian systems.
- Debuginfod test: Allow for the libdwfl library silently contacting the debuginfod server.
* Tue Mar 05 2024 Nick Clifton <nickc@redhat.com> - 12.43-1
- LLVM Plugin: Use llvm-config to get the correct paths and options for building executables.
- Clang Plugin: Likewise.
- Enable silent rules for most building.
@ -768,16 +597,13 @@ make check
- GCC Plugin: Add support for MIPS specific target functions.
- GCC Plugin: Use .dc.a for address expressions in 64-bit ELF format notes.
* Tue Feb 20 2024 Tulio Magno Quites Machado Filho <tuliom@redhat.com> - 12.40-2
- Spec File: Remove a workaround for ppc64le.
* Tue Feb 13 2024 Nick Clifton <nickc@redhat.com> - 12.40-1
* Tue Feb 13 2024 Nick Clifron <nickc@redhat.com> - 12.40-1
- Annocheck: Improve heuristic for skipping LTO and FORTIFY tests. (#2264000)
* Fri Feb 09 2024 Nick Clifton <nickc@redhat.com> - 12.39-1
* Fri Feb 09 2024 Nick Clifron <nickc@redhat.com> - 12.39-1
- Annocheck: Also skip property note test for i686 binaries. (#2258571)
* Tue Jan 23 2024 Nick Clifton <nickc@redhat.com> - 12.38-1
* Tue Jan 23 2024 Nick Clifron <nickc@redhat.com> - 12.38-1
- Annocheck: Also skip the entry point test for i686 binaries. (#2258571)
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 12.37-3
@ -786,67 +612,67 @@ make check
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 12.37-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Jan 17 2024 Nick Clifton <nickc@redhat.com> - 12.37-1
- GCC Plugin: Do not use section groups with string format notes.
* Wed Jan 17 2024 Nick Clifron <nickc@redhat.com> - 12.37-1
- GCC Plugin: DO not use section groups with string format notes.
* Tue Jan 16 2024 Nick Clifton <nickc@redhat.com> - 12.36-2
* Tue Jan 16 2024 Nick Clifron <nickc@redhat.com> - 12.36-2
- Spec File: NVR bump in order to allow building in side tag.
* Tue Jan 16 2024 Nick Clifton <nickc@redhat.com> - 12.36-1
* Tue Jan 16 2024 Nick Clifron <nickc@redhat.com> - 12.36-1
- Annocheck: Disable cf-protection test for i686 architecture. (#2258571)
* Mon Jan 15 2024 Nick Clifton <nickc@redhat.com> - 12.35-4
* Mon Jan 15 2024 Nick Clifron <nickc@redhat.com> - 12.35-4
- Spec File: NVR bump in order to allow building in side tag.
* Mon Jan 15 2024 Nick Clifton <nickc@redhat.com> - 12.35-3
* Mon Jan 15 2024 Nick Clifron <nickc@redhat.com> - 12.35-3
- Spec File: Disable hard gcc check in order to allow builds with new version of gcc.
* Thu Jan 11 2024 Songsong Zhang <U2FsdGVkX1@gmail.com> - 12.35-2
- Spec File: Do not install annocheck.1.gz when annocheck is disabled.
* Thu Jan 04 2024 Nick Clifton <nickc@redhat.com> - 12.35-1
* Thu Jan 04 2024 Nick Clifron <nickc@redhat.com> - 12.35-1
- Annocheck: Improve detection of FIPS compliant GO binaries.
* Fri Dec 15 2023 Nick Clifton <nickc@redhat.com> - 12.34-1
* Fri Dec 15 2023 Nick Clifron <nickc@redhat.com> - 12.34-1
- GCC Plugin: Fix recording of the -Wimplicit-int and -Wimplicit-function-declaration warnings. Add active checks for when they are deliberately disabled.
* Mon Dec 11 2023 Nick Clifton <nickc@redhat.com> - 12.33-1
* Mon Dec 11 2023 Nick Clifron <nickc@redhat.com> - 12.33-1
- Tests: Fix implicit-values test so that it will compile with gcc 14+.
* Fri Nov 24 2023 Nick Clifton <nickc@redhat.com> - 12.32-1
* Fri Nov 24 2023 Nick Clifron <nickc@redhat.com> - 12.32-1
- GCC Plugin: Add support for -fhardended.
* Wed Nov 15 2023 Nick Clifton <nickc@redhat.com> - 12.31-1
* Wed Nov 15 2023 Nick Clifron <nickc@redhat.com> - 12.31-1
- Update glibc detection heuristics for PPC64. (RHEL-16453)
* Wed Nov 01 2023 Nick Clifton <nickc@redhat.com> - 12.30-1
* Wed Nov 01 2023 Nick Clifron <nickc@redhat.com> - 12.30-1
- Fix another atexit test failure. (#2247481)
* Mon Oct 30 2023 Nick Clifton <nickc@redhat.com> - 12.29-1
* Mon Oct 30 2023 Nick Clifron <nickc@redhat.com> - 12.29-1
- Fix atexit test failure.
- Notes: Add support for string format notes.
* Fri Oct 06 2023 Nick Clifton <nickc@redhat.com> - 12.28-1
* Fri Oct 06 2023 Nick Clifron <nickc@redhat.com> - 12.28-1
- GCC Plugin: Record settings of -Wstrict-flex-arrays and -fstrict-flex-arrays
- Annobin: Add future test of these options.
* Tue Sep 26 2023 Nick Clifton <nickc@redhat.com> - 12.27-1
* Tue Sep 26 2023 Nick Clifron <nickc@redhat.com> - 12.27-1
- GCC Plugin: Record settings of -Wimplicit-int and -Wimplicit-function-declaration.
- Annobin: Add test for these warnings.
* Wed Sep 06 2023 Nick Clifton <nickc@redhat.com> - 12.26-1
* Wed Sep 06 2023 Nick Clifron <nickc@redhat.com> - 12.26-1
- LLVM Plugin: Fix building with LLVM version 17.
* Wed Aug 30 2023 Nick Clifton <nickc@redhat.com> - 12.25-1
* Wed Aug 30 2023 Nick Clifron <nickc@redhat.com> - 12.25-1
- GCC Plugin: Enable string note format by default.
* Fri Aug 04 2023 Nick Clifton <nickc@redhat.com> - 12.24-1
* Fri Aug 04 2023 Nick Clifron <nickc@redhat.com> - 12.24-1
- Annocheck: Change GO FIPS test to look for CGO_ENABLED markers.
* Mon Jul 31 2023 Nick Clifton <nickc@redhat.com> - 12.23-1
* Mon Jul 31 2023 Nick Clifron <nickc@redhat.com> - 12.23-1
- Annocheck: Add test for FIPS compliant GO binaries.
* Wed Jul 26 2023 Nick Clifton <nickc@redhat.com> - 12.22-1
* Wed Jul 26 2023 Nick Clifron <nickc@redhat.com> - 12.22-1
- Annocheck: Fix double free. (#2226749)
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 12.21-2
@ -1248,7 +1074,7 @@ make check
* Fri Dec 17 2021 Nick Clifton <nickc@redhat.com> - 10.39-1
- Annocheck: Add /usr/lib/ld-linux-aarch64.so.1 to the list of known glibc binaries. (#2033255)
- Doc: Note that ENDBR is only needed as the landing pad for indirect branches/calls. (#28705)
- Spec File: Store full gcc version release string in plugin info file. (#2030671)
- Spec File: Store full gcc version release string in plugin info file. (#2030671)
* Tue Dec 14 2021 Nick Clifton <nickc@redhat.com> - 10.38-1
- Annocheck: Add special case for x86_64 RHEL-7 gaps. (#2031133)

View file

@ -1 +1 @@
SHA512 (annobin-13.05.tar.xz) = 07bc023018e3f456fae470b271915bde2e1ff367ee8bb58adb74255023ae59e8c45ced8e4bd2130bf8a496966d986bca9866e054019f6ca4660d78c129b6532f
SHA512 (annobin-12.60.tar.xz) = 811393c5278773ab6bea45271e0495a21c518c591cfa25baf29fc160b3d782d74889276772a6123795bb165d6b5e04764cda939585b243371d07d36b5650c81f