--
3dbb096e4662311f81df1017a8e0975e903936cf by Derek Mauro <dmauro@google.com>:
Document and workaround a known MSVC bug doing constexpr pointer arithmetic
PiperOrigin-RevId: 262604652
--
b5fa7f1a0c776f6ba20d52772a1679ec42ad21fd by Derek Mauro <dmauro@google.com>:
Fix typo in macos_xcode_bazel.sh
PiperOrigin-RevId: 262591285
--
89dd77ab5bb44d76b6cb6b2f288e21536e16a85a by Derek Mauro <dmauro@google.com>:
Internal change
PiperOrigin-RevId: 262582747
--
32295ed9a0c6c8ab143a912194040eede05d3ea3 by Abseil Team <absl-team@google.com>:
Internal change
PiperOrigin-RevId: 262569140
--
7f0f5b94197369228024529022d727439d2c894f by Abseil Team <absl-team@google.com>:
Internal change
PiperOrigin-RevId: 262563554
--
314aed043639abbd221074125c57b7c68616de7e by Derek Mauro <dmauro@google.com>:
Release absl::btree
PiperOrigin-RevId: 262553526
--
72b44056c6ce9000c4a6cd9aec58b82067c82a13 by CJ Johnson <johnsoncj@google.com>:
Internal change
PiperOrigin-RevId: 262421185
--
4e2c12151edf534f929e8e810f1334073f90489a by Abseil Team <absl-team@google.com>:
Update documentation to make it less likely for users to write `Hours(24)` without considering using civil dates instead.
PiperOrigin-RevId: 262420758
--
92b85b9573e800bd96b019408eefbc5ce4f68780 by Derek Mauro <dmauro@google.com>:
Add the ability to override the bazel version in the macos_xcode_bazel.sh
test script.
PiperOrigin-RevId: 262412063
GitOrigin-RevId: 3dbb096e4662311f81df1017a8e0975e903936cf
Change-Id: I423b2b829dc0c5f814e37bec4d68c7470f43f041
--
f51743aa96e19aa3dda96d09d313b4390f1d61e7 by CJ Johnson <johnsoncj@google.com>:
Minor touchup on the InlinedVector/Storage internal header file
PiperOrigin-RevId: 262389640
--
e2f54c1f7142e40d30ff0fda43bef050625821a5 by Abseil Team <absl-team@google.com>:
Update the absl codebase to use proper marketing names for macOS and Xcode
PiperOrigin-RevId: 262389450
--
f29aae774edd0d00e2daa1fb96694a6dc3565a55 by CJ Johnson <johnsoncj@google.com>:
Blocks code generator script from being affected by LTS inline namespaces
PiperOrigin-RevId: 262376791
GitOrigin-RevId: f51743aa96e19aa3dda96d09d313b4390f1d61e7
Change-Id: I33be7f5a708ce8a2b7111b00151e43d73c5e0009
--
a874475e842d2adeb31bb7bd37bdd6eb15a2aeb9 by Mark Barolak <mbar@google.com>:
Import of CCTZ from GitHub.
PiperOrigin-RevId: 256414250
--
c95e6c21944c59c9b9b9e7eb9dc79cfb9ae5ef8d by CJ Johnson <johnsoncj@google.com>:
Update the license year + run clang-format for the FixedArray and InlinedVector test files
PiperOrigin-RevId: 256376285
--
f430b04f332d6b89cb8447b07217e391e1c38000 by Derek Mauro <dmauro@google.com>:
Migrate the Linux CMake tests from GCC 4.8 to the GCC latest
version. This will allow us to delete the GCC 4.8 test since that is
currently our only CMake coverage. This also means that we don't have
to update the script every time we move to a new minumum GCC version.
This change includes a fix for a -Wstringops-truncation warning in
symbolize_test.cc that triggers when it is built in release mode with
the latest GCC.
PiperOrigin-RevId: 256370092
GitOrigin-RevId: a874475e842d2adeb31bb7bd37bdd6eb15a2aeb9
Change-Id: Ia2ec58f9b9dfc382d043344e346cb397b802270a
--
c2e2e2b21c3fe59b63279e7418c93c7289ee3e27 by Mark Barolak <mbar@google.com>:
Import of CCTZ from GitHub.
PiperOrigin-RevId: 256220326
--
3996b01f0c3eb60f72825b154dce8019b6215f1d by Derek Mauro <dmauro@google.com>:
Add GCC 4.9 test script. This will become our new minumum version and
GCC 4.8 will be removed soon.
PiperOrigin-RevId: 256160891
--
2c13aa44bc8e497ebae9abe8b8adf73c2152622d by Abseil Team <absl-team@google.com>:
[Trivial] tweak flat_hash_map.h doc comment
The comment is probably right both ways, but the lack of an "if" here seemed jarring to me.
PiperOrigin-RevId: 256089069
--
16bc03b9b30fbf08d7dc61025fa8ec4b57077be8 by Abseil Team <absl-team@google.com>:
Fix symbolization for elf files whose SYMTAB section is stripped, but have a DYNSYM section.
Previously, if we did not find a SYMTAB section, we would bail out of symbolization early, rather than checking the DYNSYM section.
PiperOrigin-RevId: 256061954
--
4c60ee329b1eeb0b0d10c4f76f282e5fbae2c5b2 by Derek Mauro <dmauro@google.com>:
Update to LLVM r363242 and Bazel 0.27.0
PiperOrigin-RevId: 256024405
--
18e1ba970d33f122026803d8ca90035b9088949d by Eric Fiselier <ericwf@google.com>:
Disable variant tests that break with P0608R3
PiperOrigin-RevId: 255975764
--
0a89858464977e86096b62476faa3b64eb94aa1d by Abseil Team <absl-team@google.com>:
Internal change
PiperOrigin-RevId: 255891019
--
9b7424cac66f5407f0ed74ed288bf3099a4fa330 by CJ Johnson <johnsoncj@google.com>:
Updates the implementation of InlinedVector::insert(...) to be exception safe and adds an exception safety tests for insert(...)
PiperOrigin-RevId: 255881809
--
1288f4ba3883c510d92b09437fb8b051c19aa241 by CJ Johnson <johnsoncj@google.com>:
Updates the implementation of InlinedVector::insert(...) to be exception safe and adds an exception safety tests for insert(...)
PiperOrigin-RevId: 255875277
--
39c04f3621491eaff9e2eda619718d5b5f20fbd9 by Abseil Team <absl-team@google.com>:
Use a typedef to allow building with NVCC
Without this change NVCC fails to compile compressed_tuple.h. NVCC is relevant
because TensorFlow uses NVCC on Ubuntu and inclues abseil.
PiperOrigin-RevId: 255850176
--
e23f0309ccad69eb508ca02c9034cd4cdd740da0 by Abseil Team <absl-team@google.com>:
Internal change
PiperOrigin-RevId: 255787167
--
054aafcebf595077054164f1da3703124ab209b4 by Abseil Team <absl-team@google.com>:
Updates the ScopedAllocatorWorks test for InlinedVector to not rely on the byte count allocated by the standard library
In doing so, removes LegacyNextCapacityFrom(...) impl function from InlinedVector
Also applies clang-format to the test file
PiperOrigin-RevId: 255760356
--
eb05fc9f78e3a163c93f1866e9fe9a8ad0d01622 by Abseil Team <absl-team@google.com>:
Internal change
PiperOrigin-RevId: 255706834
--
97abb824417604c45d9fcbb3e4ff1aa3000836f2 by Jorg Brown <jorg@google.com>:
Enhance compatibility of abseil's strings package with nvcc.
PiperOrigin-RevId: 255688500
--
efc5b9c221ee31e15d10b35d31c8f3ae6eddaa8c by Abseil Team <absl-team@google.com>:
Follow CCTZ's lead and allow GetWeekday() and GetYearDay() to be
called with any civil-time type. A CivilSecond, for example, has
a weekday just as much as a CivilDay does.
PiperOrigin-RevId: 255659840
--
a75acbe954457919d8c6c8f4c2339b543760b375 by Derek Mauro <dmauro@google.com>:
Increase the timeout of randen_engine_test.
It seems to timeout under TSAN often enough to justify the increase.
PiperOrigin-RevId: 255628086
--
160976ba47c7c6eb57af08e21f8eb640aa51e91b by Derek Mauro <dmauro@google.com>:
Update CMake documentation
Fixes https://github.com/abseil/abseil-cpp/issues/332
PiperOrigin-RevId: 255607313
GitOrigin-RevId: c2e2e2b21c3fe59b63279e7418c93c7289ee3e27
Change-Id: Iba4ac7ed23cbcdb22965b4958601f689be92cda4
--
fc61fc3822d414a1abda906a81208d2667195de3 by Abseil Team <absl-team@google.com>:
Clarify documentation relating to the output of the various
printing functions.
PiperOrigin-RevId: 253041344
--
06cb414d1006cd89e38b381d52763b048909d69a by Jorg Brown <jorg@google.com>:
Change absl::container_internal::CompressedTuple to instantiate its
internal Storage class with the name of the type it's holding, rather
than the name of the Tuple. This is not an externally-visible change,
other than less compiler memory is used and less debug information is
generated.
PiperOrigin-RevId: 252940185
--
33b3f3ed6037eac7d1b7989a3641370e92beaeb9 by Jorg Brown <jorg@google.com>:
Change absl::container_internal::CompressedTuple to instantiate its
internal Storage class with the name of the type it's holding, rather
than the name of the Tuple. This is not an externally-visible change,
other than less compiler memory is used and less debug information is
generated.
PiperOrigin-RevId: 252902091
--
88595f4e7d6ac57bebdc9811045867f5d7477b5b by Abseil Team <absl-team@google.com>:
Unset thread_local/__thread support for Emscripten.
PiperOrigin-RevId: 252706297
--
cabd1715d873dc457271940335c764e62defb952 by Derek Mauro <dmauro@google.com>:
Rollback LLVM and Bazel version due to
intermittent network failures downloading from GitHub
PiperOrigin-RevId: 252661245
GitOrigin-RevId: fc61fc3822d414a1abda906a81208d2667195de3
Change-Id: I4c30995a2db7acef19415ad519259131584db261
--
ab1a58c85a462884413ec0022dc1fff19ccb8602 by Abseil Team <absl-team@google.com>:
Clarified the documentation in str_format.h to say that use of absl::FormatSpec
is ok for wrapper functions. Added tests that express this.
PiperOrigin-RevId: 247657991
--
fef9481e58d579f1514babcb960ca60a51883fd8 by CJ Johnson <johnsoncj@google.com>:
Adds exception safety tests for InlinedVector::InlinedVector() and InlinedVector::InlinedVector(const allocator_type&).
PiperOrigin-RevId: 247617048
--
ef3217e1cd1e9a6ff5f2025e061b8ce3735af78f by Abseil Team <absl-team@google.com>:
Internal change.
PiperOrigin-RevId: 247614063
--
ed4c3345c4a04d8ec5c9e627058f17fce55925b1 by CJ Johnson <johnsoncj@google.com>:
Update InlinedVector::clear()
Introduces inlined_vector_exception_safety_test with the first test (clear), adds new benchmarks (for clear), and updates the implementation of clear.
PiperOrigin-RevId: 247496049
--
144a3a77c93bc8b2226da6f4b56166ee3d9868de by Derek Mauro <dmauro@google.com>:
Internal change
PiperOrigin-RevId: 247482532
--
286bbb89e154d5424955b644edad5fe04be487f8 by Derek Mauro <dmauro@google.com>:
Add scripts to run ASAN and TSAN on CI.
PiperOrigin-RevId: 247479658
GitOrigin-RevId: ab1a58c85a462884413ec0022dc1fff19ccb8602
Change-Id: Ief4c5a62587d0c59d405735df469d498aa6bf101
--
9fa04b5fb4b6aeb47226b9095b3bc36a53669c39 by Abseil Team <absl-team@google.com>:
Release types/compare.h, which contains stand ins for three-way comparison result types from C++20. Use absl::weak_ordering for a three-way comparator in test-instance-tracker.h.
PiperOrigin-RevId: 247290078
--
70a762f4eb35ea1d5a5fcb3274a8086824a0b82c by Derek Mauro <dmauro@google.com>:
Upgrade linux_clang-latest builds to LLVM r356814 and Bazel 0.25.0
PiperOrigin-RevId: 247250176
--
f305cd5c36561e4dbb69eb87568553ae5badcb15 by CJ Johnson <johnsoncj@google.com>:
Remove argument deduction based on template template argument in InlinedVector/Storage
PiperOrigin-RevId: 247232334
--
2cab8e426838baceb7d08edb313416480d26aa5b by Eric Fiselier <ericwf@google.com>:
Import of CCTZ from GitHub.
PiperOrigin-RevId: 247140132
GitOrigin-RevId: 9fa04b5fb4b6aeb47226b9095b3bc36a53669c39
Change-Id: I373a7d9bc90befa2a9f06555cb8703610c0313b9
--
7c43cf69f00a02d8ed1e669cad12105de667a5ec by Abseil Team <absl-team@google.com>:
tagging benchmark tests as benchmarks
PiperOrigin-RevId: 242480880
--
3d8d518cde58cddc3d651ea6394ac0722f1f3149 by Samuel Benzaquen <sbenza@google.com>:
Implement %f natively for any input.
It evaluates the input at runtime and allocates stack space accordingly.
This removes a potential fallback into snprintf, improves performance, and removes all memory allocations in this formatting path.
PiperOrigin-RevId: 242474325
--
de2dc59909cd6c61960f46e647d297c17cb784b5 by Derek Mauro <dmauro@google.com>:
Add a script to test MacOS/Xcode/CMake
PiperOrigin-RevId: 242283929
--
dbc90e3dec22939d99397cd8894760bfe62480ec by Derek Mauro <dmauro@google.com>:
Release macos_xcode_bazel.sh
PiperOrigin-RevId: 242153782
--
92cda8a7ff7b4b974b0ae6a185cc449476336609 by Derek Mauro <dmauro@google.com>:
Add a script to test MacOS/Xcode/Bazel
PiperOrigin-RevId: 242144494
GitOrigin-RevId: 7c43cf69f00a02d8ed1e669cad12105de667a5ec
Change-Id: I3ae1f144a25a968cd4da0b2da0a3b268c81fd3bb
--
855576faf9556573fd74c2874b290d8feb6565d5 by Gennadiy Rozental <rogeeff@google.com>:
Import of CCTZ from GitHub.
PiperOrigin-RevId: 241395451
--
b93bfd43eb2a992258f131e10f503526cfec6d48 by CJ Johnson <johnsoncj@google.com>:
Fixes comment over AbslHashValue for InlinedVector
PiperOrigin-RevId: 241368320
--
75f58dafcac7d78c28d92a61ec7e53c5b3b86697 by Matt Kulukundis <kfm@google.com>:
Do not call sampling logic for tables with custom allocators.
PiperOrigin-RevId: 241356451
--
09f1b4889476ff707a54189aff540e2fe1edcf61 by Derek Mauro <dmauro@google.com>:
Re-enable optionalTest.InPlaceTSFINAEBug after libc++ update
PiperOrigin-RevId: 241222673
--
01a8bb5a8cb1e13e88ddb92f9c0160beb6e126be by Derek Mauro <dmauro@google.com>:
Update Clang on Kokoro to r356196.
This includes a workaround for a -Wgnu-include-next warning fixed by
https://reviews.llvm.org/rG0706e144d57305782988dd4367530ae04986116f
PiperOrigin-RevId: 241222395
--
1de66bb669a7ec1494d6064677687f761ee2d369 by Abseil Team <absl-team@google.com>:
Remove identical test and fix char to string per comment
PiperOrigin-RevId: 240855512
GitOrigin-RevId: 855576faf9556573fd74c2874b290d8feb6565d5
Change-Id: Ie155b209ef5567e6597da6ef1844db7e2ad72586
--
f6c627ce4470a814adc377947b58346eef69a4c9 by Jon Cohen <cohenjon@google.com>:
Don't create install rules when Abseil is used as a subdirectory.
Fix#287
PiperOrigin-RevId: 240559825
--
a5d9b06fe736143068997988b654b5f66ec3266a by Matt Calabrese <calabrese@google.com>:
Make absl::nullopt an inline constexpr variable, as specified in the standard (with a workaround for pre-c++17 compilers).
PiperOrigin-RevId: 240552286
--
d7bee50cff745fbb8d1cdf56a200d9073d311c80 by Abseil Team <absl-team@google.com>:
Internal Change
PiperOrigin-RevId: 240425622
--
828dd49d392d83dbeecd9d3e9cb14551ab265905 by Jon Cohen <cohenjon@google.com>:
Add default link options to absl builds.
Currently all this does is add -ignore:4221 to Abseil msvc builds, but the structure is all in place to add more link options when necessary
Fix#277
Note: This CL changes tact for us in that it puts the default options in the helper function as opposed to the invocations of absl_cc_blah. The original intent of keeping these out of the helper functions was to make generating the CMakeLists.txt files have a smaller diff, but looking now that is a problem for the future, and small compared to making maintenance and use of our CMake buildsystem easier
PiperOrigin-RevId: 240409463
--
4aa120e9dcf76d29e9ca0008d0f6d4d9fa8abe8c by Matt Kulukundis <kfm@google.com>:
Reduce flake rate for non-determistic test to < 1/10,000
PiperOrigin-RevId: 240370938
--
bc30e219531827bfbf90915b2067c7fb8160bb6d by Derek Mauro <dmauro@google.com>:
Add Bazel caching on Kokoro for new linux targets.
PiperOrigin-RevId: 240356556
--
c4e06d79a50d7bb211312b7845c4bd92c0761747 by Jon Cohen <cohenjon@google.com>:
include AbseilInstallDirs instead of GNUInstallDirs. It worked before because global_CMakeLists.txt also included AbseilInstallDirs
PiperOrigin-RevId: 240206409
--
c254dc6cade8a263f3f97fb1417d92fe5235ff32 by Jon Cohen <cohenjon@google.com>:
Fix logic for when we create the variant_exception_safety_test in CMake. Currently we are only running in on gcc > 4.9, when we want it run on every compiler except gcc <= 4.8
PiperOrigin-RevId: 240194174
--
01518006b351d3670ba1d349cfbcb7dd6f3a8b84 by CJ Johnson <johnsoncj@google.com>:
Removes old implementation warning comment now that InlinedVector has an implementation detail file
PiperOrigin-RevId: 240167265
--
eb05355ae8c7397752ab7a65afc9e0a99472ba9d by Jon Cohen <cohenjon@google.com>:
Remove the forward declaration of Span
PiperOrigin-RevId: 240156660
--
b7e75aa3933d6e79dd086821cf58d15e72f476f4 by Jon Cohen <cohenjon@google.com>:
Prepare CMake install rule for LTS releases:
* Remove the warning against installing in system install locations
* Insert versioning to keep different LTS installs from colliding. Headers are installed in <prefix>/absl_$version/include, .a files in <prefix>/absl_$version/lib, and config files in <prefix>/absl_$version/lib/cmake
PiperOrigin-RevId: 240153986
--
de63488ab6236e041f08260794b0b634a2b8ed16 by CJ Johnson <johnsoncj@google.com>:
Reduce reader confusion by using std::addressof(...) even when the type is known to not overload operator&(...)
PiperOrigin-RevId: 240131902
GitOrigin-RevId: f6c627ce4470a814adc377947b58346eef69a4c9
Change-Id: I95dbbacaaf65aceeeca9e9bee5fd9ea456225f62
--
61a5128b3b3db9db7df219b7ef737b78f7743e54 by Abseil Team <absl-team@google.com>:
Internal change
PiperOrigin-RevId: 239413069
--
fd47ba5c2243523cc579239a220254cbc47376af by Jon Cohen <cohenjon@google.com>:
Internal change.
PiperOrigin-RevId: 239404848
--
bece0ae2b391351feb27547a4693f4e654b1b4ab by Eric Fiselier <ericwf@google.com>:
Unconditionally include memory.h in optional.
PiperOrigin-RevId: 239298731
GitOrigin-RevId: 61a5128b3b3db9db7df219b7ef737b78f7743e54
Change-Id: I09c1268154f1c8ea2b653d3e907f709e09025817
--
bdce7e57e9e886eff1114d0266781b443f7ec639 by Derek Mauro <dmauro@google.com>:
Change {Get|Set}EnvironmentVariable to {Get|Set}EnvironmentVariableA for
compatibility with /DUNICODE.
PiperOrigin-RevId: 239229514
--
2276ed502326a044a84060d34eb19d499e3a3be2 by Derek Mauro <dmauro@google.com>:
Import of CCTZ from GitHub.
PiperOrigin-RevId: 239228622
--
a462efb970ff43b08a362ef2343fb75ac1295a50 by Derek Mauro <dmauro@google.com>:
Adding linking of CoreFoundation to CMakeLists in absl/time.
Import https://github.com/abseil/abseil-cpp/pull/280.
Fix#283
PiperOrigin-RevId: 239220785
--
fc23327b97f940c682aae1956cf7a1bf87f88c06 by Derek Mauro <dmauro@google.com>:
Add hermetic test script that uses Docker to build with a very recent
version of gcc (8.3.0 today) with libstdc++ and bazel.
PiperOrigin-RevId: 239220448
--
418c08a8f6a53e63b84e39473035774417ca3aa7 by Derek Mauro <dmauro@google.com>:
Disable part of the variant exeception safety test on move assignment
when using versions of libstd++ that contain a bug.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87431#c7
PiperOrigin-RevId: 239062455
--
799722217aeda79679577843c91d5be62cbcbb42 by Matt Calabrese <calabrese@google.com>:
Add internal-only IsSwappable traits corresponding to std::is_swappable and std::is_nothrow_swappable, which are used with the swap implementations of optional and variant.
PiperOrigin-RevId: 239049448
--
aa46a036038a3de5c68ac5e5d3b4bf76f818d2ea by CJ Johnson <johnsoncj@google.com>:
Make InlinedVectorStorage constructor explicit
PiperOrigin-RevId: 239044361
--
17949715b3aa21c794701f69f2154e91b6acabc3 by CJ Johnson <johnsoncj@google.com>:
Add absl namesapce to internal/inlined_vector.h
PiperOrigin-RevId: 239030789
--
834628325953078cc08ed10d23bb8890e5bec897 by Derek Mauro <dmauro@google.com>:
Add test script that uses Docker to build Abseil with gcc-4.8,
libstdc++, and cmake.
PiperOrigin-RevId: 239028433
--
80fe24149ed73ed2ced995ad1e372fb060c60427 by CJ Johnson <johnsoncj@google.com>:
Factors data members of InlinedVector into an impl type called InlinedVectorStorage so that (in future changes) the contents of a vector can be grouped together with a single pointer.
PiperOrigin-RevId: 239021086
--
585331436d5d4d79f845e45dcf79d918a0dc6169 by Derek Mauro <dmauro@google.com>:
Add -Wno-missing-field-initializers to gcc compiler flags.
gcc-4.x has spurious missing field initializer warnings.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=36750
PiperOrigin-RevId: 239017217
--
94602fe4e33ee3a552a7f2939c0f57a992f55075 by Abseil Team <absl-team@google.com>:
Formatting fixes.
PiperOrigin-RevId: 238983038
--
a1c1b63c08505574e0a8c491561840cecb2bb93e by Derek Mauro <dmauro@google.com>:
Add hermetic test script that uses Docker to build with a very recent
version of clang with libc++ and bazel.
PiperOrigin-RevId: 238669118
--
e525f8d20bc2f79a0d69336b902f63858f3bff9d by Derek Mauro <dmauro@google.com>:
Disable the test optionalTest.InPlaceTSFINAEBug until libc++ is updated.
PiperOrigin-RevId: 238661703
--
f99a2a0b5ec424a059678f7f226600f137b4c74e by Derek Mauro <dmauro@google.com>:
Correct the check for the FlatHashMap-Any test bug (list conditions
instead of platforms when possible)
PiperOrigin-RevId: 238653344
--
777928035dbcbf39f361eb7d10dc3696822f692f by Jon Cohen <cohenjon@google.com>:
Add install rules for Abseil CMake.
These are attempted to be limited to in-project installation. This serves two purposes -- first it's morally the same as using Abseil in-source, except you don't have to rebuild us every time. Second, the presence of an install rule makes life massively simpler for package manager maintainers.
Currently this doesn't install absl tests or testonly libraries. This can be added in a follow-up patch.
Fixes#38, Fixes#80, Closes#182
PiperOrigin-RevId: 238645836
--
ded1c6ce697c191b7a6ff14572b3e6d183117b2c by Derek Mauro <dmauro@google.com>:
Add hermetic test script that uses Docker to build with a very recent
version of clang with libstdc++ and bazel.
PiperOrigin-RevId: 238517815
GitOrigin-RevId: bdce7e57e9e886eff1114d0266781b443f7ec639
Change-Id: I6f745869cb8ef63851891ccac05ae9a7dd241c4f