diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..52c492b --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,9 @@ +# Changelog + +## [v1.4.0] - 2023-08-03 +- **First Release** + +## [v1.4.1] - 2023-08-30 +- **Console Buffer**: In addition to passively intercepting the output of console appenders through console callbacks, it is also possible to cache the output of console appenders through a console buffer and actively retrieve it via API. +- **Bug fix**: Fix the compiling issue with C++ 20. +- **Bug fix**: Fix the issue where JNI_Onload sometimes is not called. \ No newline at end of file diff --git a/README.md b/README.md index c6f8b12..dffc761 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ -# BqLog(扁鹊日志)(V 1.4.0) +# BqLog(扁鹊日志)(V 1.4.1) [![license](https://img.shields.io/badge/license-APACHE2.0-brightgreen.svg?style=flat)](https://github.com/Tencent/BqLog/blob/main/LICENSE.txt) -[![Release Version](https://img.shields.io/badge/release-1.4.0-red.svg)](https://github.com/Tencent/BqLog/releases) +[![Release Version](https://img.shields.io/badge/release-1.4.1-red.svg)](https://github.com/Tencent/BqLog/releases) > [中文文档](./README_CHS.md) > BqLog is a lightweight, high-performance logging system used in projects such as "Honor of Kings," and it has been successfully deployed and is running smoothly. @@ -367,7 +367,35 @@ Since bqLog uses asynchronous logging by default, there are times when you might /// static void unregister_console_callback(bq::type_func_ptr_console_callback callback); ``` -The output of[ConsoleAppender](#consoleappender) goes to the console or ADB Logcat logs on Android, but this may not cover all situations. For instance, in custom game engines or custom IDEs, a mechanism is provided to call a callback function for each console log output. This allows you to reprocess and output the console log anywhere in your program. +The output of[ConsoleAppender](#consoleappender) goes to the console or ADB Logcat logs on Android, but this may not cover all situations. For instance, in custom game engines or custom IDEs, a mechanism is provided to call a callback function for each console log output. This allows you to reprocess and output the console log anywhere in your program. +**Additional Caution:** Do not output any synchronized BQ logs within the console callback as it may easily lead to deadlocks. + + +#### Actively Fetching Console Output +```cpp + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + /// + static void set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + static bool fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback); +``` +In addition to intercepting console output through a console callback, you can actively fetch console log outputs. Sometimes, we may not want the console log output to come through a callback because you do not know which thread the callback will come from (for example, in some C# virtual machines, or JVMs, the VM might be performing garbage collection when the console callback is called, which could potentially lead to hangs or crashes). + +The method used here involves enabling the console buffer through `set_console_buffer_enable`. This causes every console log output to be stored in memory until we actively call `fetch_and_remove_console_buffer` to retrieve it. Therefore, if you choose to use this method, remember to promptly fetch and clear logs to avoid unreleased memory. +**Additional Caution:** Do not output any synchronized BQ logs within the console callback as it may easily lead to deadlocks. + #### Modifying Log Configuration ```cpp diff --git a/README_CHS.md b/README_CHS.md index 9879e6a..77c2454 100644 --- a/README_CHS.md +++ b/README_CHS.md @@ -1,6 +1,6 @@ -# BqLog(扁鹊日志)(V 1.4.0) +# BqLog(扁鹊日志)(V 1.4.1) [![license](https://img.shields.io/badge/license-APACHE2.0-brightgreen.svg?style=flat)](https://github.com/Tencent/BqLog/blob/main/LICENSE.txt) -[![Release Version](https://img.shields.io/badge/release-1.4.0-red.svg)](https://github.com/Tencent/BqLog/releases) +[![Release Version](https://img.shields.io/badge/release-1.4.1-red.svg)](https://github.com/Tencent/BqLog/releases) > BqLog是一个轻量级,高性能日志系统,应用于《Honor Of Kings》等项目,已经上线并良好运行 ## 支持平台 @@ -369,6 +369,32 @@ STR参数类似于printf的第一个参数,其类型是各种常用类型的 static void unregister_console_callback(bq::type_func_ptr_console_callback callback); ``` [ConsoleAppender](#consoleappender)的输出是控制台,在android是ADB Logcat日志,但是这些无法涵盖所有的情况。比如自研游戏引擎,自研IDE等,这里提供了一种机制,可以让每一条console日志输出都调用一次参数里的回调,你可以在自己的程序里任意地方重新处理和输出这个控制台日志。 +***注意:*** 不要在console callback中再去输出任何同步的扁鹊日志,不然很容易造成死锁 + +#### 主动获取console的输出 +```cpp + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + /// + static void set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + static bool fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback); +``` +除了用console callback去拦截console的输出之外,还可以通过主动调用去获取日志的console输出。有的时候,我们并不希望这个console的日志输出是通过callback调用过来的,因为你并不知道callback会通过什么线程过来(比如在C#的一些虚拟机,或者JVM中,console callback调用过来的时候,VM正在做GC,可能会发生卡死或者crash)。 +这里采用的方法是通过`set_console_buffer_enable`先启用console的缓冲功能,每一条console日志输出都会被留在内存中,直到我们主动调用`fetch_and_remove_console_buffer`将它取出来。所以如果使用这种方法,请一定记得及时去获取和清理日志,不然内存会无法释放。 +***注意:*** 不要在console callback中再去输出任何同步的扁鹊日志,不然很容易造成死锁 + #### 修改log的配置 ```cpp diff --git a/dist/dynamic_lib/android/arm64-v8a/Debug/libBqLog.so b/dist/dynamic_lib/android/arm64-v8a/Debug/libBqLog.so index eac314c..a4065d2 100644 Binary files a/dist/dynamic_lib/android/arm64-v8a/Debug/libBqLog.so and b/dist/dynamic_lib/android/arm64-v8a/Debug/libBqLog.so differ diff --git a/dist/dynamic_lib/android/arm64-v8a/Debug/libBqLog_Symbol.so b/dist/dynamic_lib/android/arm64-v8a/Debug/libBqLog_Symbol.so index 601c815..8ef88d4 100644 Binary files a/dist/dynamic_lib/android/arm64-v8a/Debug/libBqLog_Symbol.so and b/dist/dynamic_lib/android/arm64-v8a/Debug/libBqLog_Symbol.so differ diff --git a/dist/dynamic_lib/android/arm64-v8a/MinSizeRel/libBqLog.so b/dist/dynamic_lib/android/arm64-v8a/MinSizeRel/libBqLog.so index f884665..5f64f2d 100644 Binary files a/dist/dynamic_lib/android/arm64-v8a/MinSizeRel/libBqLog.so and b/dist/dynamic_lib/android/arm64-v8a/MinSizeRel/libBqLog.so differ diff --git a/dist/dynamic_lib/android/arm64-v8a/MinSizeRel/libBqLog_Symbol.so b/dist/dynamic_lib/android/arm64-v8a/MinSizeRel/libBqLog_Symbol.so index 06d8ecc..6bcc8d2 100644 Binary files a/dist/dynamic_lib/android/arm64-v8a/MinSizeRel/libBqLog_Symbol.so and b/dist/dynamic_lib/android/arm64-v8a/MinSizeRel/libBqLog_Symbol.so differ diff --git a/dist/dynamic_lib/android/armeabi-v7a/Debug/libBqLog.so b/dist/dynamic_lib/android/armeabi-v7a/Debug/libBqLog.so index 8f4b45e..763a03d 100644 Binary files a/dist/dynamic_lib/android/armeabi-v7a/Debug/libBqLog.so and b/dist/dynamic_lib/android/armeabi-v7a/Debug/libBqLog.so differ diff --git a/dist/dynamic_lib/android/armeabi-v7a/Debug/libBqLog_Symbol.so b/dist/dynamic_lib/android/armeabi-v7a/Debug/libBqLog_Symbol.so index e33af5b..ae81cdd 100644 Binary files a/dist/dynamic_lib/android/armeabi-v7a/Debug/libBqLog_Symbol.so and b/dist/dynamic_lib/android/armeabi-v7a/Debug/libBqLog_Symbol.so differ diff --git a/dist/dynamic_lib/android/armeabi-v7a/MinSizeRel/libBqLog.so b/dist/dynamic_lib/android/armeabi-v7a/MinSizeRel/libBqLog.so index a567ca5..56a6dbc 100644 Binary files a/dist/dynamic_lib/android/armeabi-v7a/MinSizeRel/libBqLog.so and b/dist/dynamic_lib/android/armeabi-v7a/MinSizeRel/libBqLog.so differ diff --git a/dist/dynamic_lib/android/armeabi-v7a/MinSizeRel/libBqLog_Symbol.so b/dist/dynamic_lib/android/armeabi-v7a/MinSizeRel/libBqLog_Symbol.so index 3ba2a2f..e586e93 100644 Binary files a/dist/dynamic_lib/android/armeabi-v7a/MinSizeRel/libBqLog_Symbol.so and b/dist/dynamic_lib/android/armeabi-v7a/MinSizeRel/libBqLog_Symbol.so differ diff --git a/dist/dynamic_lib/android/x86_64/Debug/libBqLog.so b/dist/dynamic_lib/android/x86_64/Debug/libBqLog.so index a6ba2dc..28a88a1 100644 Binary files a/dist/dynamic_lib/android/x86_64/Debug/libBqLog.so and b/dist/dynamic_lib/android/x86_64/Debug/libBqLog.so differ diff --git a/dist/dynamic_lib/android/x86_64/Debug/libBqLog_Symbol.so b/dist/dynamic_lib/android/x86_64/Debug/libBqLog_Symbol.so index d688597..6f98e1f 100644 Binary files a/dist/dynamic_lib/android/x86_64/Debug/libBqLog_Symbol.so and b/dist/dynamic_lib/android/x86_64/Debug/libBqLog_Symbol.so differ diff --git a/dist/dynamic_lib/android/x86_64/MinSizeRel/libBqLog.so b/dist/dynamic_lib/android/x86_64/MinSizeRel/libBqLog.so index 523fac8..b540849 100644 Binary files a/dist/dynamic_lib/android/x86_64/MinSizeRel/libBqLog.so and b/dist/dynamic_lib/android/x86_64/MinSizeRel/libBqLog.so differ diff --git a/dist/dynamic_lib/android/x86_64/MinSizeRel/libBqLog_Symbol.so b/dist/dynamic_lib/android/x86_64/MinSizeRel/libBqLog_Symbol.so index 192bd13..cd02bc4 100644 Binary files a/dist/dynamic_lib/android/x86_64/MinSizeRel/libBqLog_Symbol.so and b/dist/dynamic_lib/android/x86_64/MinSizeRel/libBqLog_Symbol.so differ diff --git a/dist/dynamic_lib/include/bq_common/types/array_def.h b/dist/dynamic_lib/include/bq_common/types/array_def.h index 61fa7c0..22a1893 100644 --- a/dist/dynamic_lib/include/bq_common/types/array_def.h +++ b/dist/dynamic_lib/include/bq_common/types/array_def.h @@ -48,26 +48,20 @@ namespace bq { template BQ_ARRAY_ITER_CLS_NAME& operator=(const BQ_ARRAY_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); BQ_ARRAY_ITER_CLS_NAME& operator++(); BQ_ARRAY_ITER_CLS_NAME operator++(int32_t); @@ -133,11 +127,11 @@ namespace bq { const value_type& operator[](size_type idx) const; - template - bool operator==(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); - template - bool operator!=(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); BQ_ARRAY_CLS_NAME& operator=(const BQ_ARRAY_CLS_NAME& rhs); diff --git a/dist/dynamic_lib/include/bq_common/types/array_impl.h b/dist/dynamic_lib/include/bq_common/types/array_impl.h index 87b5746..d82f47f 100644 --- a/dist/dynamic_lib/include/bq_common/types/array_impl.h +++ b/dist/dynamic_lib/include/bq_common/types/array_impl.h @@ -50,60 +50,53 @@ namespace bq { return *this; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ == rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ == array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ != rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ != array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ < rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ < array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ <= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ <= array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ > rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ > array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ >= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ >= array2.data_; } - template - template - BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type BQ_ARRAY_ITER_CLS_NAME::operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not sub two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ - rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not sub two bq::array_iterator generated from different bq::array"); + return array1.data_ - array2.data_; } template @@ -315,26 +308,24 @@ namespace bq { return data_[idx]; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator==(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - if (size_ != rhs.size_) { + if (array1.size() != array2.size()) { return false; } - for (size_type i = 0; i < size_; ++i) { - if (this->operator[](i) != rhs[i]) { + for (typename BQ_ARRAY_CLS_NAME::size_type i = 0; i < array1.size(); ++i) { + if (array1[i] != array2[i]) { return false; } } return true; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator!=(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - return !operator==(rhs); + return !(array1 == array2); } template diff --git a/dist/dynamic_lib/include/bq_common/types/hash_map_def.h b/dist/dynamic_lib/include/bq_common/types/hash_map_def.h index 1d69fb4..27b1ab4 100644 --- a/dist/dynamic_lib/include/bq_common/types/hash_map_def.h +++ b/dist/dynamic_lib/include/bq_common/types/hash_map_def.h @@ -77,6 +77,7 @@ namespace bq { typedef const pair_type& const_pair_type_ref; private: + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; container_type_ptr parent_; size_type node_index_; size_type bucket_idx_; @@ -103,11 +104,10 @@ namespace bq { template BQ_HASH_MAP_ITER_CLS_NAME& operator=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); + template + friend bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); BQ_HASH_MAP_ITER_CLS_NAME& operator++(); @@ -181,7 +181,7 @@ namespace bq { // we need manually control the destructive behaviour of every node item. bq::array didn't meets our needs because it has its own destructive logic. value_node_buffer_head nodes_; - constexpr static size_type BQ_BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; size_type size_; size_type head_; size_type tail_; diff --git a/dist/dynamic_lib/include/bq_common/types/hash_map_impl.h b/dist/dynamic_lib/include/bq_common/types/hash_map_impl.h index 7d07675..3c0898d 100644 --- a/dist/dynamic_lib/include/bq_common/types/hash_map_impl.h +++ b/dist/dynamic_lib/include/bq_common/types/hash_map_impl.h @@ -34,31 +34,29 @@ namespace bq { return *this; } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - if (rhs.node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX - && node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (map1.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX + && map2.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) { return true; } - return (node_index_ == rhs.node_index_) - && (parent_ == rhs.parent_) - && (bucket_idx_ == rhs.bucket_idx_); + return (map1.node_index_ == map2.node_index_) + && (map1.parent_ == map2.parent_) + && (map1.bucket_idx_ == map2.bucket_idx_); } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - return !(*this == rhs); + return !(map1 == map2); } template BQ_HASH_MAP_INLINE BQ_HASH_MAP_ITER_CLS_NAME& BQ_HASH_MAP_ITER_CLS_NAME::operator++() { node_index_ = parent_->get_next_node_index(node_index_); - bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; + bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; return *this; } @@ -105,9 +103,9 @@ namespace bq { BQ_HASH_MAP_INLINE BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_CLS_NAME(size_type init_bucket_size /* = 0 */) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(init_bucket_size); expand_nodes(buckets_size()); } @@ -124,9 +122,9 @@ namespace bq { , nodes_(decltype(nodes_)()) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(rhs.buckets_size()); expand_nodes(rhs.nodes_size()); for (BQ_HASH_MAP_CLS_NAME::const_iterator iter = rhs.begin(); iter != rhs.end(); ++iter) { @@ -147,9 +145,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -250,9 +248,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -272,12 +270,12 @@ namespace bq { auto& cur_node = nodes_[where_it.node_index_]; size_type prev_index = cur_node.prev; size_type next_index = cur_node.next; - if (prev_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[prev_index].next = cur_node.next; } else { head_ = cur_node.next; } - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[next_index].prev = cur_node.prev; } else { tail_ = cur_node.prev; @@ -286,11 +284,11 @@ namespace bq { // buckets size_type bucket_index = where_it.bucket_idx_; if (where_it.node_index_ == buckets_[bucket_index]) { - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX + if (next_index != BQ_HASH_MAP_INVALID_INDEX && nodes_[next_index].bucket_idx == bucket_index) { buckets_[bucket_index] = next_index; } else { - buckets_[bucket_index] = BQ_BQ_HASH_MAP_INVALID_INDEX; + buckets_[bucket_index] = BQ_HASH_MAP_INVALID_INDEX; } } @@ -316,7 +314,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::begin() { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -325,7 +323,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::begin() const { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return const_iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -334,19 +332,19 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::end() { - return iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::end() const { - return const_iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return const_iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_CLS_NAME::iterator_legal_check(const const_iterator& iter) const { - if (iter.node_index_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (iter.node_index_ == BQ_HASH_MAP_INVALID_INDEX) { return false; } if (iter.parent_ != this) { @@ -385,16 +383,16 @@ namespace bq { if (nodes_size() > 0) { free_ = 0; for (typename decltype(nodes_)::size_type i = 0; i < nodes_.size(); ++i) { - nodes_[i].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[i].prev = BQ_HASH_MAP_INVALID_INDEX; nodes_[i].next = static_cast(i) + 1; } - nodes_[nodes_.size() - 1].next = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[nodes_.size() - 1].next = BQ_HASH_MAP_INVALID_INDEX; } else { - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } size_ = 0; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -414,9 +412,9 @@ namespace bq { nodes_.size_ = 0; } size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -474,8 +472,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_prev_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].prev; } @@ -483,8 +481,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_next_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].next; } @@ -508,7 +506,7 @@ namespace bq { size_type cnt = 0; #endif size_type index = head_; - while (index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (index != BQ_HASH_MAP_INVALID_INDEX) { #ifndef NDEBUG cnt++; #endif @@ -519,7 +517,7 @@ namespace bq { size_type bucket_idx = get_bucket_index_by_key(cur_node.entry.key()); cur_node.bucket_idx = bucket_idx; size_type& bucket_value_ref = buckets_[bucket_idx]; - if (bucket_value_ref == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (bucket_value_ref == BQ_HASH_MAP_INVALID_INDEX) { bucket_value_ref = cur_index; } else if (cur_node.prev != bucket_value_ref) { size_type old_prev = cur_node.prev; @@ -528,34 +526,34 @@ namespace bq { size_type new_prev = bucket_value_ref; size_type new_next = nodes_[new_prev].next; - if (old_prev != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_prev != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_prev].next = old_next; } - if (old_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_next].prev = old_prev; } cur_node.prev = new_prev; cur_node.next = new_next; nodes_[new_prev].next = cur_index; - if (new_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (new_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[new_next].prev = cur_index; } if (tail_ == cur_index) { tail_ = old_prev; } if (cur_node.prev == cur_node.next) { - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; } } } #ifndef NDEBUG assert(buckets_size() == capacity); assert(cnt == this->size()); - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[head_].prev == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[head_].prev == BQ_HASH_MAP_INVALID_INDEX); } - if (tail_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[tail_].next == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (tail_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[tail_].next == BQ_HASH_MAP_INVALID_INDEX); } #endif } @@ -577,7 +575,7 @@ namespace bq { new_data[i].next = nodes_[i].next; } for (size_type i = new_space; i > old_space; --i) { - new_data[i - 1].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + new_data[i - 1].prev = BQ_HASH_MAP_INVALID_INDEX; new_data[i - 1].next = free_; free_ = i - 1; } @@ -596,15 +594,15 @@ namespace bq { template BQ_HASH_MAP_INLINE BQ_HASH_MAP_KV_CLS_NAME::size_type, typename BQ_HASH_MAP_CLS_NAME::size_type> BQ_HASH_MAP_CLS_NAME::find_index_and_bucket_idx_by_key(const_key_type_ref key) const { - size_type index = BQ_BQ_HASH_MAP_INVALID_INDEX; - size_type bucket_idx = BQ_BQ_HASH_MAP_INVALID_INDEX; + size_type index = BQ_HASH_MAP_INVALID_INDEX; + size_type bucket_idx = BQ_HASH_MAP_INVALID_INDEX; if (buckets_size() > 0) { bucket_idx = get_bucket_index_by_key(key); size_type valid_index = buckets_[bucket_idx]; - while (valid_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (valid_index != BQ_HASH_MAP_INVALID_INDEX) { auto& node = nodes_[valid_index]; if (node.bucket_idx != bucket_idx) { - valid_index = BQ_BQ_HASH_MAP_INVALID_INDEX; + valid_index = BQ_HASH_MAP_INVALID_INDEX; break; } if (node.entry.key() == key) { @@ -626,16 +624,16 @@ namespace bq { } // This must be called after expand_buckets because it will reform the buckets and nodes. auto node_bucket_indices_pair = find_index_and_bucket_idx_by_key(key); - assert(node_bucket_indices_pair.key() == BQ_BQ_HASH_MAP_INVALID_INDEX && "key already exist"); + assert(node_bucket_indices_pair.key() == BQ_HASH_MAP_INVALID_INDEX && "key already exist"); auto bucket_idx = node_bucket_indices_pair.value(); - if (free_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (free_ == BQ_HASH_MAP_INVALID_INDEX) { expand_nodes(nodes_size() + 1); } size_type& target_bucket_value = buckets_[bucket_idx]; size_type next_node_index = target_bucket_value; - size_type prev_node_index = (target_bucket_value == BQ_BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; - assert(free_ != BQ_BQ_HASH_MAP_INVALID_INDEX); + size_type prev_node_index = (target_bucket_value == BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; + assert(free_ != BQ_HASH_MAP_INVALID_INDEX); size_type new_index = free_; free_ = nodes_[new_index].next; @@ -644,13 +642,13 @@ namespace bq { new_node.next = next_node_index; new_node.prev = prev_node_index; new_node.bucket_idx = bucket_idx; - if (prev_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& prev_node = nodes_[prev_node_index]; prev_node.next = new_index; } else { head_ = new_index; } - if (next_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& next_node = nodes_[next_node_index]; next_node.prev = new_index; } else { diff --git a/dist/dynamic_lib/include/bq_common/types/string.h b/dist/dynamic_lib/include/bq_common/types/string.h index 5161f36..2ee5d83 100644 --- a/dist/dynamic_lib/include/bq_common/types/string.h +++ b/dist/dynamic_lib/include/bq_common/types/string.h @@ -121,7 +121,7 @@ namespace bq { string_base(string_base&& rhs) noexcept; string_base(const char_type* str); - + string_base(const char_type* str, size_t char_count); template ::value || is_std_string_view_compatible::value) && !bq::is_same>::value, void>> diff --git a/dist/dynamic_lib/include/bq_common/types/string_impl.h b/dist/dynamic_lib/include/bq_common/types/string_impl.h index ed68757..43e6192 100644 --- a/dist/dynamic_lib/include/bq_common/types/string_impl.h +++ b/dist/dynamic_lib/include/bq_common/types/string_impl.h @@ -158,7 +158,6 @@ namespace bq { insert_batch(begin(), const_iterator(str, nullptr), char_count); } - template template inline bq::string_base::string_base(const S& rhs) diff --git a/dist/dynamic_lib/include/bq_log/bq_log.h b/dist/dynamic_lib/include/bq_log/bq_log.h index 503d237..df6db44 100644 --- a/dist/dynamic_lib/include/bq_log/bq_log.h +++ b/dist/dynamic_lib/include/bq_log/bq_log.h @@ -117,27 +117,45 @@ namespace bq { /// static void unregister_console_callback(bq::type_func_ptr_console_callback callback); + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + /// + static void set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + static bool fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback); + /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer. /// /// c style char*(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> console(bq::log_level level, const STR& str); /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer /// /// std::string or bq::string(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> console(bq::log_level level, const STR& str); public: /// diff --git a/dist/dynamic_lib/include/bq_log/misc/bq_log_api.h b/dist/dynamic_lib/include/bq_log/misc/bq_log_api.h index 9d8e276..21266e9 100644 --- a/dist/dynamic_lib/include/bq_log/misc/bq_log_api.h +++ b/dist/dynamic_lib/include/bq_log/misc/bq_log_api.h @@ -198,14 +198,31 @@ namespace bq { /// /// /// - BQ_API void __register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); /// /// Unregister a console callback /// /// /// - BQ_API void __unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + + /// + /// set console appender buffer enable or not + /// + /// + /// + BQ_API void __api_set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// + /// path through parameter that will pass to on_console_callback + /// True if the console appender buffer is not empty, otherwise False is returned. + BQ_API bool __api_fetch_and_remove_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback on_console_callback, const void* pass_through_param); /// /// The snapshot feature is disabled by default, as it consumes some performance overhead. diff --git a/dist/dynamic_lib/include/bq_log/misc/bq_log_def.h b/dist/dynamic_lib/include/bq_log/misc/bq_log_def.h index 3c14649..591dee6 100644 --- a/dist/dynamic_lib/include/bq_log/misc/bq_log_def.h +++ b/dist/dynamic_lib/include/bq_log/misc/bq_log_def.h @@ -166,6 +166,14 @@ namespace bq { failed_io_error }; + /// + /// `content` is a C-style string and end with '\0'; + /// typedef void(BQ_STDCALL* type_func_ptr_console_callback)(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + /// + /// `content` is a C-style string and end with '\0'; + /// + typedef void(BQ_STDCALL* type_func_ptr_console_buffer_fetch_callback)(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + } diff --git a/dist/dynamic_lib/include/bq_log/misc/bq_log_impl.h b/dist/dynamic_lib/include/bq_log/misc/bq_log_impl.h index 8ae928d..168ee72 100644 --- a/dist/dynamic_lib/include/bq_log/misc/bq_log_impl.h +++ b/dist/dynamic_lib/include/bq_log/misc/bq_log_impl.h @@ -155,22 +155,38 @@ namespace bq { inline void log::register_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__register_console_callbacks(callback); + bq::api::__api_register_console_callbacks(callback); } inline void log::unregister_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__unregister_console_callbacks(callback); + bq::api::__api_unregister_console_callbacks(callback); + } + + inline void log::set_console_buffer_enable(bool enable) + { + bq::api::__api_set_console_buffer_enable(enable); + } + + inline void BQ_STDCALL fetch_and_remove_console_buffer_callback_wrapper(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + bq::type_func_ptr_console_callback real_callback = (bq::type_func_ptr_console_callback)pass_through_param; + real_callback(log_id, category_idx, log_level, content, length); + } + + inline bool log::fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback) + { + return bq::api::__api_fetch_and_remove_console_buffer(fetch_and_remove_console_buffer_callback_wrapper, (const void*)on_console_callback); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str.c_str()); } diff --git a/dist/dynamic_lib/ios/Debug/BqLog.framework.dSYM/Contents/Resources/DWARF/BqLog b/dist/dynamic_lib/ios/Debug/BqLog.framework.dSYM/Contents/Resources/DWARF/BqLog index 91933c8..b7079bd 100644 Binary files a/dist/dynamic_lib/ios/Debug/BqLog.framework.dSYM/Contents/Resources/DWARF/BqLog and b/dist/dynamic_lib/ios/Debug/BqLog.framework.dSYM/Contents/Resources/DWARF/BqLog differ diff --git a/dist/dynamic_lib/ios/Debug/BqLog.framework.dSYM/Contents/Resources/Relocations/aarch64/BqLog.yml b/dist/dynamic_lib/ios/Debug/BqLog.framework.dSYM/Contents/Resources/Relocations/aarch64/BqLog.yml index f6fe740..e25082b 100644 --- a/dist/dynamic_lib/ios/Debug/BqLog.framework.dSYM/Contents/Resources/Relocations/aarch64/BqLog.yml +++ b/dist/dynamic_lib/ios/Debug/BqLog.framework.dSYM/Contents/Resources/Relocations/aarch64/BqLog.yml @@ -3,1741 +3,1761 @@ triple: 'arm64-apple-darwin' binary-path: '/Users/yucao/BqLog_Github/artifacts/dynamic_lib/ios/Debug/BqLog.framework/BqLog' relocations: - { offsetInCU: 0x44, offset: 0x44, size: 0x8, addend: 0x0, symName: __ZN2bqL22__memory_map_size_unitE, symObjAddr: 0x6A78, symBinAddr: 0x688E8, symSize: 0x0 } - - { offsetInCU: 0xE4D, offset: 0xE4D, size: 0x8, addend: 0x0, symName: __ZN2bqL24get_memory_map_size_unitEv, symObjAddr: 0x0, symBinAddr: 0x8000, symSize: 0x1C } - - { offsetInCU: 0x18C0, offset: 0x18C0, size: 0x8, addend: 0x0, symName: __ZN2bq10memory_map19is_platform_supportEv, symObjAddr: 0x1C, symBinAddr: 0x801C, symSize: 0xC } - - { offsetInCU: 0x18EE, offset: 0x18EE, size: 0x8, addend: 0x0, symName: __ZN2bq10memory_map17create_memory_mapERKNS_11file_handleEmm, symObjAddr: 0x34, symBinAddr: 0x8028, symSize: 0x2C8 } - - { offsetInCU: 0x19A6, offset: 0x19A6, size: 0x8, addend: 0x0, symName: __ZN2bq17memory_map_handleC1Ev, symObjAddr: 0x2FC, symBinAddr: 0x82F0, symSize: 0x2C } - - { offsetInCU: 0x19D0, offset: 0x19D0, size: 0x8, addend: 0x0, symName: __ZNK2bq11file_handle13abs_file_pathEv, symObjAddr: 0x328, symBinAddr: 0x831C, symSize: 0x18 } - - { offsetInCU: 0x19F4, offset: 0x19F4, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE5c_strEv, symObjAddr: 0x340, symBinAddr: 0x8334, symSize: 0x70 } - - { offsetInCU: 0x1A1B, offset: 0x1A1B, size: 0x8, addend: 0x0, symName: __ZN2bq17memory_map_handleD1Ev, symObjAddr: 0x3B0, symBinAddr: 0x83A4, symSize: 0x2C } - - { offsetInCU: 0x1A45, offset: 0x1A45, size: 0x8, addend: 0x0, symName: __ZNK2bq17memory_map_handle15has_been_mappedEv, symObjAddr: 0x4A0, symBinAddr: 0x83D0, symSize: 0x24 } - - { offsetInCU: 0x1A69, offset: 0x1A69, size: 0x8, addend: 0x0, symName: __ZN2bq10memory_map18release_memory_mapERNS_17memory_map_handleE, symObjAddr: 0x4C4, symBinAddr: 0x83F4, symSize: 0xB8 } - - { offsetInCU: 0x1A8D, offset: 0x1A8D, size: 0x8, addend: 0x0, symName: __ZN2bq17memory_map_handleC2Ev, symObjAddr: 0x57C, symBinAddr: 0x84AC, symSize: 0x60 } - - { offsetInCU: 0x1AB7, offset: 0x1AB7, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleC1Ev, symObjAddr: 0x5DC, symBinAddr: 0x850C, symSize: 0x2C } - - { offsetInCU: 0x1ADF, offset: 0x1ADF, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleC2Ev, symObjAddr: 0x608, symBinAddr: 0x8538, symSize: 0x38 } - - { offsetInCU: 0x1B07, offset: 0x1B07, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC1Ev, symObjAddr: 0x640, symBinAddr: 0x8570, symSize: 0x2C } - - { offsetInCU: 0x1B31, offset: 0x1B31, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handle5clearEv, symObjAddr: 0x66C, symBinAddr: 0x859C, symSize: 0x38 } - - { offsetInCU: 0x1B55, offset: 0x1B55, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC2Ev, symObjAddr: 0x6A4, symBinAddr: 0x85D4, symSize: 0x2C } - - { offsetInCU: 0x1B7F, offset: 0x1B7F, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EEC2Ev, symObjAddr: 0x6D0, symBinAddr: 0x8600, symSize: 0x20 } - - { offsetInCU: 0x1BA9, offset: 0x1BA9, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE5resetIcEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x6F0, symBinAddr: 0x8620, symSize: 0x5C } - - { offsetInCU: 0x1BD9, offset: 0x1BD9, size: 0x8, addend: 0x0, symName: __ZN2bq17memory_map_handleD2Ev, symObjAddr: 0x74C, symBinAddr: 0x867C, symSize: 0x30 } - - { offsetInCU: 0x1C03, offset: 0x1C03, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIcLm1EE4sizeEv, symObjAddr: 0x77C, symBinAddr: 0x86AC, symSize: 0x18 } - - { offsetInCU: 0x1C2A, offset: 0x1C2A, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE9empty_strEv, symObjAddr: 0x794, symBinAddr: 0x86C4, symSize: 0x18 } - - { offsetInCU: 0x1C4E, offset: 0x1C4E, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIcLm1EE5beginEv, symObjAddr: 0x7AC, symBinAddr: 0x86DC, symSize: 0x34 } - - { offsetInCU: 0x1C75, offset: 0x1C75, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIKcNS_5arrayIcLm1EEEEptEv, symObjAddr: 0x7E0, symBinAddr: 0x8710, symSize: 0x18 } - - { offsetInCU: 0x1CA0, offset: 0x1CA0, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKcNS_5arrayIcLm1EEEEC1IcEEPT_PKS3_, symObjAddr: 0x7F8, symBinAddr: 0x8728, symSize: 0x3C } - - { offsetInCU: 0x1CEF, offset: 0x1CEF, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKcNS_5arrayIcLm1EEEEC2IcEEPT_PKS3_, symObjAddr: 0x834, symBinAddr: 0x8764, symSize: 0x70 } - - { offsetInCU: 0x4A, offset: 0x1DB0, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL8base_dirE, symObjAddr: 0xF618, symBinAddr: 0x688F0, symSize: 0x0 } - - { offsetInCU: 0x57, offset: 0x1DBD, size: 0x8, addend: 0x0, symName: __ZN2bq8platform25high_performance_epoch_msEv, symObjAddr: 0x0, symBinAddr: 0x8804, symSize: 0x54 } - - { offsetInCU: 0x91, offset: 0x1DF7, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12get_base_dirEb, symObjAddr: 0xAC, symBinAddr: 0x8884, symSize: 0x108 } - - { offsetInCU: 0xD1, offset: 0x1E37, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9ios_printEPKc, symObjAddr: 0x3D4, symBinAddr: 0x8AAC, symSize: 0x7C } - - { offsetInCU: 0xF9, offset: 0x1E5F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform15get_stack_traceEjRPKcRj, symObjAddr: 0x4A8, symBinAddr: 0x8B80, symSize: 0x3A8 } - - { offsetInCU: 0x19F, offset: 0x1F05, size: 0x8, addend: 0x0, symName: __ZN2bq8platform21get_stack_trace_utf16EjRPKDsRj, symObjAddr: 0xCD0, symBinAddr: 0x9390, symSize: 0x180 } - - { offsetInCU: 0x1A9C, offset: 0x3802, size: 0x8, addend: 0x0, symName: __ZN2bq13___string_lenIcEEmPKT_, symObjAddr: 0x147C, symBinAddr: 0x9A94, symSize: 0x4C } - - { offsetInCU: 0x1B31, offset: 0x3897, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIcEEOT_RNS_16remove_referenceIS1_E4typeE, symObjAddr: 0x1900, symBinAddr: 0x9F18, symSize: 0x14 } - - { offsetInCU: 0x1B66, offset: 0x38CC, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveIcEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0x1D7C, symBinAddr: 0xA394, symSize: 0x38 } - - { offsetInCU: 0x1BBB, offset: 0x3921, size: 0x8, addend: 0x0, symName: __ZN2bq9max_valueImEET_RKS1_S3_, symObjAddr: 0x1E98, symBinAddr: 0xA4B0, symSize: 0x58 } - - { offsetInCU: 0x1BFE, offset: 0x3964, size: 0x8, addend: 0x0, symName: __ZN2bq18roundup_pow_of_twoImEET_S1_, symObjAddr: 0x1EF0, symBinAddr: 0xA508, symSize: 0x84 } - - { offsetInCU: 0x1C42, offset: 0x39A8, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyIcEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0x1F74, symBinAddr: 0xA58C, symSize: 0x40 } - - { offsetInCU: 0x1CFC, offset: 0x3A62, size: 0x8, addend: 0x0, symName: __ZN2bq20_inner_backward_copyIcEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq28is_trivially_copy_assignableIS2_EE5valueEvE4typeEPS2_PKS2_mm, symObjAddr: 0x202C, symBinAddr: 0xA644, symSize: 0x3C } - - { offsetInCU: 0x1DC0, offset: 0x3B26, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyIDsEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0x241C, symBinAddr: 0xAA34, symSize: 0x40 } - - { offsetInCU: 0x1E24, offset: 0x3B8A, size: 0x8, addend: 0x0, symName: __ZN2bq7min_refImEERT_S2_S2_, symObjAddr: 0x2748, symBinAddr: 0xAD60, symSize: 0x50 } - - { offsetInCU: 0x1E67, offset: 0x3BCD, size: 0x8, addend: 0x0, symName: __ZN2bq20_inner_backward_moveIDsEENS_9enable_ifIXaasr2bq28is_trivially_move_assignableIT_EE5valuesr2bq28is_trivially_copy_assignableIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0x2798, symBinAddr: 0xADB0, symSize: 0x3C } - - { offsetInCU: 0x2608, offset: 0x436E, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcED1Ev, symObjAddr: 0x80, symBinAddr: 0x8858, symSize: 0x2C } - - { offsetInCU: 0x2632, offset: 0x4398, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE8is_emptyEv, symObjAddr: 0x1B4, symBinAddr: 0x898C, symSize: 0x30 } - - { offsetInCU: 0x2659, offset: 0x43BF, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEaSEPKc, symObjAddr: 0x1E4, symBinAddr: 0x89BC, symSize: 0xBC } - - { offsetInCU: 0x269B, offset: 0x4401, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC1EPKc, symObjAddr: 0x328, symBinAddr: 0x8A78, symSize: 0x34 } - - { offsetInCU: 0x26D3, offset: 0x4439, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIDsEC1Ev, symObjAddr: 0x450, symBinAddr: 0x8B28, symSize: 0x2C } - - { offsetInCU: 0x26FD, offset: 0x4463, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIDsED1Ev, symObjAddr: 0x47C, symBinAddr: 0x8B54, symSize: 0x2C } - - { offsetInCU: 0x2727, offset: 0x448D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE5clearEv, symObjAddr: 0x874, symBinAddr: 0x8F4C, symSize: 0x78 } - - { offsetInCU: 0x274E, offset: 0x44B4, size: 0x8, addend: 0x0, symName: __Z6strstrB7v160006Ua9enable_ifIXLb1EEEPKcS0_, symObjAddr: 0x8EC, symBinAddr: 0x8FC4, symSize: 0x2C } - - { offsetInCU: 0x2788, offset: 0x44EE, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE9push_backIJcEEEmDpOT_, symObjAddr: 0x918, symBinAddr: 0x8FF0, symSize: 0x58 } - - { offsetInCU: 0x27C8, offset: 0x452E, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE12insert_batchENS_14array_iteratorIcS1_EENS2_IKcS1_EEm, symObjAddr: 0x970, symBinAddr: 0x9048, symSize: 0x284 } - - { offsetInCU: 0x2849, offset: 0x45AF, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE3endEv, symObjAddr: 0xBF4, symBinAddr: 0x92CC, symSize: 0x3C } - - { offsetInCU: 0x2875, offset: 0x45DB, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKcNS_5arrayIcLm1EEEEC1IS1_EEPT_PKS3_, symObjAddr: 0xC30, symBinAddr: 0x9308, symSize: 0x3C } - - { offsetInCU: 0x28C4, offset: 0x462A, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE5beginEv, symObjAddr: 0xC6C, symBinAddr: 0x9344, symSize: 0x34 } - - { offsetInCU: 0x28EB, offset: 0x4651, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIcNS_5arrayIcLm1EEEEcvPcEv, symObjAddr: 0xCA0, symBinAddr: 0x9378, symSize: 0x18 } - - { offsetInCU: 0x2911, offset: 0x4677, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE5clearEv, symObjAddr: 0xE74, symBinAddr: 0x9534, symSize: 0x78 } - - { offsetInCU: 0x2938, offset: 0x469E, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE18fill_uninitializedIDsEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm, symObjAddr: 0xEEC, symBinAddr: 0x95AC, symSize: 0xC4 } - - { offsetInCU: 0x2976, offset: 0x46DC, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE5beginEv, symObjAddr: 0xFB0, symBinAddr: 0x9670, symSize: 0x34 } - - { offsetInCU: 0x299D, offset: 0x4703, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIDsNS_5arrayIDsLm1EEEEcvPDsEv, symObjAddr: 0xFE4, symBinAddr: 0x96A4, symSize: 0x18 } - - { offsetInCU: 0x29C3, offset: 0x4729, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIDsLm1EE4sizeEv, symObjAddr: 0xFFC, symBinAddr: 0x96BC, symSize: 0x18 } - - { offsetInCU: 0x29EA, offset: 0x4750, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE5eraseENS_14array_iteratorIDsS1_EEm, symObjAddr: 0x1014, symBinAddr: 0x96D4, symSize: 0x270 } - - { offsetInCU: 0x2A4D, offset: 0x47B3, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIDsNS_5arrayIDsLm1EEEEplEm, symObjAddr: 0x1284, symBinAddr: 0x9944, symSize: 0x44 } - - { offsetInCU: 0x2A8F, offset: 0x47F5, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcED2Ev, symObjAddr: 0x12C8, symBinAddr: 0x9988, symSize: 0x2C } - - { offsetInCU: 0x2AB9, offset: 0x481F, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EED2Ev, symObjAddr: 0x12F4, symBinAddr: 0x99B4, symSize: 0x2C } - - { offsetInCU: 0x2AE3, offset: 0x4849, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIDsED2Ev, symObjAddr: 0x137C, symBinAddr: 0x99E0, symSize: 0x2C } - - { offsetInCU: 0x2B0D, offset: 0x4873, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EED2Ev, symObjAddr: 0x13A8, symBinAddr: 0x9A0C, symSize: 0x2C } - - { offsetInCU: 0x2B37, offset: 0x489D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE5resetIDsEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x13D4, symBinAddr: 0x9A38, symSize: 0x5C } - - { offsetInCU: 0x2B67, offset: 0x48CD, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC2EPKc, symObjAddr: 0x14C8, symBinAddr: 0x9AE0, symSize: 0x10C } - - { offsetInCU: 0x2BB3, offset: 0x4919, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIDsEC2Ev, symObjAddr: 0x15D4, symBinAddr: 0x9BEC, symSize: 0x2C } - - { offsetInCU: 0x2BDD, offset: 0x4943, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EEC2Ev, symObjAddr: 0x1600, symBinAddr: 0x9C18, symSize: 0x20 } - - { offsetInCU: 0x2C07, offset: 0x496D, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorIcE8destructEPcm, symObjAddr: 0x1620, symBinAddr: 0x9C38, symSize: 0x2C } - - { offsetInCU: 0x2C37, offset: 0x499D, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorIcE15destructor_implIcNS1_23trivial_destructor_typeEE8destructEPcm, symObjAddr: 0x164C, symBinAddr: 0x9C64, symSize: 0x14 } - - { offsetInCU: 0x2C67, offset: 0x49CD, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE6insertIJcEEEvNS_14array_iteratorIcS1_EEDpOT_, symObjAddr: 0x1660, symBinAddr: 0x9C78, symSize: 0x2A0 } - - { offsetInCU: 0x2CFA, offset: 0x4A60, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIcNS_5arrayIcLm1EEEEgeIcS2_EEbRKNS0_IT_T0_EE, symObjAddr: 0x1914, symBinAddr: 0x9F2C, symSize: 0xAC } - - { offsetInCU: 0x2D40, offset: 0x4AA6, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIcNS_5arrayIcLm1EEEEleIcS2_EEbRKNS0_IT_T0_EE, symObjAddr: 0x19C0, symBinAddr: 0x9FD8, symSize: 0xAC } - - { offsetInCU: 0x2D86, offset: 0x4AEC, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIcNS_5arrayIcLm1EEEEmiIcS2_EElRKNS0_IT_T0_EE, symObjAddr: 0x1A6C, symBinAddr: 0xA084, symSize: 0xA4 } - - { offsetInCU: 0x2DCC, offset: 0x4B32, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE12set_capacityEmb, symObjAddr: 0x1B10, symBinAddr: 0xA128, symSize: 0x228 } - - { offsetInCU: 0x2E3B, offset: 0x4BA1, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIcNS_5arrayIcLm1EEEEplEm, symObjAddr: 0x1D38, symBinAddr: 0xA350, symSize: 0x44 } - - { offsetInCU: 0x2E7D, offset: 0x4BE3, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE8destructENS_14array_iteratorIcS1_EE, symObjAddr: 0x1DB4, symBinAddr: 0xA3CC, symSize: 0x34 } - - { offsetInCU: 0x2EB2, offset: 0x4C18, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE9constructIJcEEEvNS_14array_iteratorIcS1_EEDpOT_, symObjAddr: 0x1DE8, symBinAddr: 0xA400, symSize: 0x98 } - - { offsetInCU: 0x2F0F, offset: 0x4C75, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIcNS_5arrayIcLm1EEEEptEv, symObjAddr: 0x1E80, symBinAddr: 0xA498, symSize: 0x18 } - - { offsetInCU: 0x2F35, offset: 0x4C9B, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIcNS_5arrayIcLm1EEEEpLEi, symObjAddr: 0x1FB4, symBinAddr: 0xA5CC, symSize: 0x28 } - - { offsetInCU: 0x2F69, offset: 0x4CCF, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIcE8destructEPc, symObjAddr: 0x1FDC, symBinAddr: 0xA5F4, symSize: 0x24 } - - { offsetInCU: 0x2F8B, offset: 0x4CF1, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIcE15destructor_implIcNS1_23trivial_destructor_typeEE8destructEPc, symObjAddr: 0x2000, symBinAddr: 0xA618, symSize: 0x10 } - - { offsetInCU: 0x2FAD, offset: 0x4D13, size: 0x8, addend: 0x0, symName: __ZnwmPvN2bq14enum_new_dummyE, symObjAddr: 0x2010, symBinAddr: 0xA628, symSize: 0x1C } - - { offsetInCU: 0x2FED, offset: 0x4D53, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIKcNS_5arrayIcLm1EEEEcvPS1_Ev, symObjAddr: 0x2068, symBinAddr: 0xA680, symSize: 0x18 } - - { offsetInCU: 0x3013, offset: 0x4D79, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIcNS_5arrayIcLm1EEEEC1IcEEPT_PKS2_, symObjAddr: 0x2080, symBinAddr: 0xA698, symSize: 0x3C } - - { offsetInCU: 0x3062, offset: 0x4DC8, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIcNS_5arrayIcLm1EEEEC2IcEEPT_PKS2_, symObjAddr: 0x20BC, symBinAddr: 0xA6D4, symSize: 0x70 } - - { offsetInCU: 0x30B1, offset: 0x4E17, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKcNS_5arrayIcLm1EEEEC2IS1_EEPT_PKS3_, symObjAddr: 0x212C, symBinAddr: 0xA744, symSize: 0x70 } - - { offsetInCU: 0x3105, offset: 0x4E6B, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorIDsE8destructEPDsm, symObjAddr: 0x219C, symBinAddr: 0xA7B4, symSize: 0x2C } - - { offsetInCU: 0x3135, offset: 0x4E9B, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorIDsE15destructor_implIDsNS1_23trivial_destructor_typeEE8destructEPDsm, symObjAddr: 0x21C8, symBinAddr: 0xA7E0, symSize: 0x14 } - - { offsetInCU: 0x3165, offset: 0x4ECB, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIDsLm1EE8capacityEv, symObjAddr: 0x21DC, symBinAddr: 0xA7F4, symSize: 0x18 } - - { offsetInCU: 0x318C, offset: 0x4EF2, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE12set_capacityEmb, symObjAddr: 0x21F4, symBinAddr: 0xA80C, symSize: 0x228 } - - { offsetInCU: 0x3200, offset: 0x4F66, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIDsNS_5arrayIDsLm1EEEEC1IDsEEPT_PKS2_, symObjAddr: 0x245C, symBinAddr: 0xAA74, symSize: 0x3C } - - { offsetInCU: 0x324F, offset: 0x4FB5, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIDsNS_5arrayIDsLm1EEEEC2IDsEEPT_PKS2_, symObjAddr: 0x2498, symBinAddr: 0xAAB0, symSize: 0x70 } - - { offsetInCU: 0x32A3, offset: 0x5009, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIDsNS_5arrayIDsLm1EEEEgeIDsS2_EEbRKNS0_IT_T0_EE, symObjAddr: 0x2508, symBinAddr: 0xAB20, symSize: 0xAC } - - { offsetInCU: 0x32E9, offset: 0x504F, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIDsNS_5arrayIDsLm1EEEEltIDsS2_EEbRKNS0_IT_T0_EE, symObjAddr: 0x25B4, symBinAddr: 0xABCC, symSize: 0xAC } - - { offsetInCU: 0x332F, offset: 0x5095, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE3endEv, symObjAddr: 0x2660, symBinAddr: 0xAC78, symSize: 0x3C } - - { offsetInCU: 0x3356, offset: 0x50BC, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIDsNS_5arrayIDsLm1EEEEmiIDsS2_EElRKNS0_IT_T0_EE, symObjAddr: 0x269C, symBinAddr: 0xACB4, symSize: 0xAC } - - { offsetInCU: 0x339C, offset: 0x5102, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIDsNS_5arrayIDsLm1EEEEptEv, symObjAddr: 0x27D4, symBinAddr: 0xADEC, symSize: 0x18 } - - { offsetInCU: 0x33C2, offset: 0x5128, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIDsNS_5arrayIDsLm1EEEEpLEi, symObjAddr: 0x27EC, symBinAddr: 0xAE04, symSize: 0x28 } - - { offsetInCU: 0x33F6, offset: 0x515C, size: 0x8, addend: 0x0, symName: __ZTHN2bq8platformL24stack_trace_current_str_E, symObjAddr: 0x2814, symBinAddr: 0xAE2C, symSize: 0x0 } - - { offsetInCU: 0x6A, offset: 0x5302, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL20file_exclusive_cacheE, symObjAddr: 0x19650, symBinAddr: 0x68908, symSize: 0x0 } - - { offsetInCU: 0xF8, offset: 0x5390, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL20file_exclusive_mutexE, symObjAddr: 0x19688, symBinAddr: 0x68940, symSize: 0x0 } - - { offsetInCU: 0x2A1, offset: 0x5539, size: 0x8, addend: 0x0, symName: __ZN2bq8platform13get_file_sizeEPKcRm, symObjAddr: 0x0, symBinAddr: 0xB030, symSize: 0xA4 } - - { offsetInCU: 0x2F7, offset: 0x558F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform13get_file_sizeERKiRm, symObjAddr: 0xA4, symBinAddr: 0xB0D4, symSize: 0xA8 } - - { offsetInCU: 0x34D, offset: 0x55E5, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6is_dirEPKc, symObjAddr: 0x14C, symBinAddr: 0xB17C, symSize: 0x90 } - - { offsetInCU: 0x395, offset: 0x562D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform15is_regular_fileEPKc, symObjAddr: 0x1DC, symBinAddr: 0xB20C, symSize: 0x90 } - - { offsetInCU: 0x3DD, offset: 0x5675, size: 0x8, addend: 0x0, symName: __ZN2bq8platform8make_dirEPKc, symObjAddr: 0x26C, symBinAddr: 0xB29C, symSize: 0x64 } - - { offsetInCU: 0x425, offset: 0x56BD, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL18make_dir_recursiveEPc, symObjAddr: 0x2D0, symBinAddr: 0xB300, symSize: 0xF4 } - - { offsetInCU: 0x497, offset: 0x572F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform13truncate_fileERKim, symObjAddr: 0x564, symBinAddr: 0xB3F4, symSize: 0x68 } - - { offsetInCU: 0x4DF, offset: 0x5777, size: 0x8, addend: 0x0, symName: __ZN2bq8platform24remove_dir_or_file_innerEPcm, symObjAddr: 0x5CC, symBinAddr: 0xB45C, symSize: 0x234 } - - { offsetInCU: 0x57B, offset: 0x5813, size: 0x8, addend: 0x0, symName: __ZN2bq8platform15__posix_opendirEPKc, symObjAddr: 0x800, symBinAddr: 0xB690, symSize: 0x38 } - - { offsetInCU: 0x5A7, offset: 0x583F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18remove_dir_or_fileEPKc, symObjAddr: 0x8A0, symBinAddr: 0xB730, symSize: 0x13C } - - { offsetInCU: 0x618, offset: 0x58B0, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9open_fileEPKcNS0_19file_open_mode_enumERi, symObjAddr: 0xA3C, symBinAddr: 0xB8CC, symSize: 0x1AC } - - { offsetInCU: 0x750, offset: 0x59E8, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL25add_file_execlusive_checkERKiNS0_19file_open_mode_enumE, symObjAddr: 0xBE8, symBinAddr: 0xBA78, symSize: 0x23C } - - { offsetInCU: 0x866, offset: 0x5AFE, size: 0x8, addend: 0x0, symName: __ZN2bq8platform10close_fileERi, symObjAddr: 0xE24, symBinAddr: 0xBCB4, symSize: 0x70 } - - { offsetInCU: 0x8A3, offset: 0x5B3B, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL28remove_file_execlusive_checkERKi, symObjAddr: 0xE94, symBinAddr: 0xBD24, symSize: 0xB4 } - - { offsetInCU: 0x8FA, offset: 0x5B92, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9read_fileERKiPvmRm, symObjAddr: 0xF48, symBinAddr: 0xBDD8, symSize: 0xFC } - - { offsetInCU: 0x99F, offset: 0x5C37, size: 0x8, addend: 0x0, symName: __ZN2bq8platform10write_fileERKiPKvmRm, symObjAddr: 0x109C, symBinAddr: 0xBF2C, symSize: 0xFC } - - { offsetInCU: 0xA44, offset: 0x5CDC, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9seek_fileERKiNS0_16file_seek_optionEx, symObjAddr: 0x1198, symBinAddr: 0xC028, symSize: 0xD8 } - - { offsetInCU: 0xABC, offset: 0x5D54, size: 0x8, addend: 0x0, symName: __ZN2bq8platform10flush_fileERKi, symObjAddr: 0x1270, symBinAddr: 0xC100, symSize: 0x54 } - - { offsetInCU: 0xAEA, offset: 0x5D82, size: 0x8, addend: 0x0, symName: __ZN2bq8platform17get_all_sub_namesEPKc, symObjAddr: 0x12C4, symBinAddr: 0xC154, symSize: 0x174 } - - { offsetInCU: 0x1DBE, offset: 0x7056, size: 0x8, addend: 0x0, symName: __ZN2bq9min_valueImEET_RKS1_S3_, symObjAddr: 0x1044, symBinAddr: 0xBED4, symSize: 0x58 } - - { offsetInCU: 0x1E01, offset: 0x7099, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRjEEOT_RNS_16remove_referenceIS2_E4typeE, symObjAddr: 0x1D04, symBinAddr: 0xCB94, symSize: 0x14 } - - { offsetInCU: 0x1E36, offset: 0x70CE, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRNS_8platform19file_open_mode_enumEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x20C0, symBinAddr: 0xCF50, symSize: 0x14 } - - { offsetInCU: 0x1E6B, offset: 0x7103, size: 0x8, addend: 0x0, symName: __ZN2bq18roundup_pow_of_twoIjEET_S1_, symObjAddr: 0x29F0, symBinAddr: 0xD880, symSize: 0x84 } - - { offsetInCU: 0x1EAF, offset: 0x7147, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_8platform20posix_file_node_infoEEEONS_16remove_referenceIT_E4typeEOS5_, symObjAddr: 0x2B60, symBinAddr: 0xD9D4, symSize: 0x14 } - - { offsetInCU: 0x1EE4, offset: 0x717C, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_8platform19file_open_mode_enumEEEONS_16remove_referenceIT_E4typeEOS5_, symObjAddr: 0x2BA8, symBinAddr: 0xDA1C, symSize: 0x14 } - - { offsetInCU: 0x1FC5, offset: 0x725D, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRKNS_8platform20posix_file_node_infoEEEOT_RNS_16remove_referenceIS5_E4typeE, symObjAddr: 0x2DAC, symBinAddr: 0xDC20, symSize: 0x14 } - - { offsetInCU: 0x20B0, offset: 0x7348, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRPKcEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x3A20, symBinAddr: 0xE7B4, symSize: 0x14 } - - { offsetInCU: 0x20E5, offset: 0x737D, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveINS_11string_baseIcEEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS4_EE5valueEvE4typeEPS4_S7_m, symObjAddr: 0x3EF8, symBinAddr: 0xEC8C, symSize: 0x140 } - - { offsetInCU: 0x21A0, offset: 0x7438, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyINS_11string_baseIcEEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS4_EE5valueEvE4typeEPS4_S7_m, symObjAddr: 0x4284, symBinAddr: 0xEF3C, symSize: 0xCC } - - { offsetInCU: 0x2212, offset: 0x74AA, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_11string_baseIcEEEEONS_16remove_referenceIT_E4typeEOS5_, symObjAddr: 0x4350, symBinAddr: 0xF008, symSize: 0x14 } - - { offsetInCU: 0x2247, offset: 0x74DF, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_11string_baseIcEEEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0x43D8, symBinAddr: 0xF090, symSize: 0x14 } - - { offsetInCU: 0x25ED, offset: 0x7885, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE12expand_nodesEj, symObjAddr: 0x2580, symBinAddr: 0xD410, symSize: 0x2F0 } - - { offsetInCU: 0x2C9F, offset: 0x7F37, size: 0x8, addend: 0x0, symName: __ZNK2bq8platform22posix_dir_stack_holdercvbEv, symObjAddr: 0x838, symBinAddr: 0xB6C8, symSize: 0x24 } - - { offsetInCU: 0x2CC3, offset: 0x7F5B, size: 0x8, addend: 0x0, symName: __ZN2bq8platform22posix_dir_stack_holderadEv, symObjAddr: 0x85C, symBinAddr: 0xB6EC, symSize: 0x18 } - - { offsetInCU: 0x2CE7, offset: 0x7F7F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform22posix_dir_stack_holderD1Ev, symObjAddr: 0x874, symBinAddr: 0xB704, symSize: 0x2C } - - { offsetInCU: 0x2D0F, offset: 0x7FA7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEEC1Ej, symObjAddr: 0x9DC, symBinAddr: 0xB86C, symSize: 0x34 } - - { offsetInCU: 0x2D47, offset: 0x7FDF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEED1Ev, symObjAddr: 0xA10, symBinAddr: 0xB8A0, symSize: 0x2C } - - { offsetInCU: 0x2D71, offset: 0x8009, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EEC1Ev, symObjAddr: 0x1438, symBinAddr: 0xC2C8, symSize: 0x2C } - - { offsetInCU: 0x2DA0, offset: 0x8038, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9push_backIJRPKcEEEmDpOT_, symObjAddr: 0x1464, symBinAddr: 0xC2F4, symSize: 0x58 } - - { offsetInCU: 0x2DE0, offset: 0x8078, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EED1Ev, symObjAddr: 0x14BC, symBinAddr: 0xC34C, symSize: 0x2C } - - { offsetInCU: 0x2E0A, offset: 0x80A2, size: 0x8, addend: 0x0, symName: __Z7strrchrB7v160006Ua9enable_ifIXLb1EEEPci, symObjAddr: 0x14E8, symBinAddr: 0xC378, symSize: 0x2C } - - { offsetInCU: 0x2E44, offset: 0x80DC, size: 0x8, addend: 0x0, symName: __ZN2bq8platform22posix_dir_stack_holderC1EP3DIR, symObjAddr: 0x1514, symBinAddr: 0xC3A4, symSize: 0x34 } - - { offsetInCU: 0x2E7A, offset: 0x8112, size: 0x8, addend: 0x0, symName: __ZN2bq8platform22posix_dir_stack_holderC2EP3DIR, symObjAddr: 0x1548, symBinAddr: 0xC3D8, symSize: 0x20 } - - { offsetInCU: 0x2EB0, offset: 0x8148, size: 0x8, addend: 0x0, symName: __ZN2bq8platform22posix_dir_stack_holderD2Ev, symObjAddr: 0x1568, symBinAddr: 0xC3F8, symSize: 0x54 } - - { offsetInCU: 0x2EDD, offset: 0x8175, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12scoped_mutexC1ERNS0_5mutexE, symObjAddr: 0x15BC, symBinAddr: 0xC44C, symSize: 0x34 } - - { offsetInCU: 0x2F13, offset: 0x81AB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE4findERKS2_, symObjAddr: 0x15F0, symBinAddr: 0xC480, symSize: 0x74 } - - { offsetInCU: 0x2F5A, offset: 0x81F2, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb0EEeqILb0EEEbRKNS0_IS2_S3_XT_EEE, symObjAddr: 0x1664, symBinAddr: 0xC4F4, symSize: 0xEC } - - { offsetInCU: 0x2F98, offset: 0x8230, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE3endEv, symObjAddr: 0x1750, symBinAddr: 0xC5E0, symSize: 0x38 } - - { offsetInCU: 0x2FBF, offset: 0x8257, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE3addIRS3_EENS_17hash_map_iteratorIS2_S3_Lb0EEERKS2_OT_, symObjAddr: 0x1788, symBinAddr: 0xC618, symSize: 0x74 } - - { offsetInCU: 0x3018, offset: 0x82B0, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb0EEptEv, symObjAddr: 0x17FC, symBinAddr: 0xC68C, symSize: 0x34 } - - { offsetInCU: 0x303E, offset: 0x82D6, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5valueEv, symObjAddr: 0x1830, symBinAddr: 0xC6C0, symSize: 0x18 } - - { offsetInCU: 0x3062, offset: 0x82FA, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12scoped_mutexD1Ev, symObjAddr: 0x1848, symBinAddr: 0xC6D8, symSize: 0x2C } - - { offsetInCU: 0x308A, offset: 0x8322, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12scoped_mutexC2ERNS0_5mutexE, symObjAddr: 0x1874, symBinAddr: 0xC704, symSize: 0x3C } - - { offsetInCU: 0x30C0, offset: 0x8358, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE32find_index_and_bucket_idx_by_keyERKS2_, symObjAddr: 0x18B0, symBinAddr: 0xC740, symSize: 0x114 } - - { offsetInCU: 0x314E, offset: 0x83E6, size: 0x8, addend: 0x0, symName: __ZNK2bq7kv_pairIjjE3keyEv, symObjAddr: 0x19C4, symBinAddr: 0xC854, symSize: 0x14 } - - { offsetInCU: 0x3172, offset: 0x840A, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairIjjE5valueEv, symObjAddr: 0x19D8, symBinAddr: 0xC868, symSize: 0x18 } - - { offsetInCU: 0x3196, offset: 0x842E, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb0EEC1EPNS_8hash_mapIS2_S3_EEjj, symObjAddr: 0x19F0, symBinAddr: 0xC880, symSize: 0x44 } - - { offsetInCU: 0x31E8, offset: 0x8480, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE12buckets_sizeEv, symObjAddr: 0x1A34, symBinAddr: 0xC8C4, symSize: 0x24 } - - { offsetInCU: 0x320E, offset: 0x84A6, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE23get_bucket_index_by_keyERKS2_, symObjAddr: 0x1A58, symBinAddr: 0xC8E8, symSize: 0x44 } - - { offsetInCU: 0x3253, offset: 0x84EB, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headIjEixEj, symObjAddr: 0x1A9C, symBinAddr: 0xC92C, symSize: 0x74 } - - { offsetInCU: 0x3285, offset: 0x851D, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headINS4_10value_nodeEEixEj, symObjAddr: 0x1B10, symBinAddr: 0xC9A0, symSize: 0x7C } - - { offsetInCU: 0x32B7, offset: 0x854F, size: 0x8, addend: 0x0, symName: __ZNK2bq7kv_pairINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE3keyEv, symObjAddr: 0x1B8C, symBinAddr: 0xCA1C, symSize: 0x14 } - - { offsetInCU: 0x32DB, offset: 0x8573, size: 0x8, addend: 0x0, symName: __ZNK2bq8platform20posix_file_node_infoeqERKS1_, symObjAddr: 0x1BA0, symBinAddr: 0xCA30, symSize: 0x30 } - - { offsetInCU: 0x330E, offset: 0x85A6, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairIjjEC1IRjS3_EEOT_OT0_, symObjAddr: 0x1BD0, symBinAddr: 0xCA60, symSize: 0x3C } - - { offsetInCU: 0x3364, offset: 0x85FC, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headIjE4sizeEv, symObjAddr: 0x1C0C, symBinAddr: 0xCA9C, symSize: 0x18 } - - { offsetInCU: 0x3388, offset: 0x8620, size: 0x8, addend: 0x0, symName: __ZN2bq28generic_type_hash_calculatorINS_8platform20posix_file_node_infoEE9hash_codeERKS2_, symObjAddr: 0x1C24, symBinAddr: 0xCAB4, symSize: 0x24 } - - { offsetInCU: 0x33AA, offset: 0x8642, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE24get_bucket_index_by_hashEy, symObjAddr: 0x1C48, symBinAddr: 0xCAD8, symSize: 0x3C } - - { offsetInCU: 0x33E0, offset: 0x8678, size: 0x8, addend: 0x0, symName: __ZNK2bq8platform20posix_file_node_info9hash_codeEv, symObjAddr: 0x1C84, symBinAddr: 0xCB14, symSize: 0x28 } - - { offsetInCU: 0x3404, offset: 0x869C, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairIjjEC2IRjS3_EEOT_OT0_, symObjAddr: 0x1CAC, symBinAddr: 0xCB3C, symSize: 0x58 } - - { offsetInCU: 0x345A, offset: 0x86F2, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb0EEC2EPNS_8hash_mapIS2_S3_EEjj, symObjAddr: 0x1D18, symBinAddr: 0xCBA8, symSize: 0x38 } - - { offsetInCU: 0x34AC, offset: 0x8744, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_, symObjAddr: 0x1D50, symBinAddr: 0xCBE0, symSize: 0x304 } - - { offsetInCU: 0x35A4, offset: 0x883C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE15construct_valueIRS3_EEvRNS_17hash_map_iteratorIS2_S3_Lb0EEEOT_, symObjAddr: 0x2054, symBinAddr: 0xCEE4, symSize: 0x6C } - - { offsetInCU: 0x35F0, offset: 0x8888, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE4sizeEv, symObjAddr: 0x20D4, symBinAddr: 0xCF64, symSize: 0x18 } - - { offsetInCU: 0x3616, offset: 0x88AE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj, symObjAddr: 0x20EC, symBinAddr: 0xCF7C, symSize: 0x494 } - - { offsetInCU: 0x371B, offset: 0x89B3, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE10nodes_sizeEv, symObjAddr: 0x2870, symBinAddr: 0xD700, symSize: 0x28 } - - { offsetInCU: 0x3741, offset: 0x89D9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headIjEixEj, symObjAddr: 0x2898, symBinAddr: 0xD728, symSize: 0x74 } - - { offsetInCU: 0x3773, offset: 0x8A0B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headINS4_10value_nodeEEixEj, symObjAddr: 0x290C, symBinAddr: 0xD79C, symSize: 0x7C } - - { offsetInCU: 0x37A5, offset: 0x8A3D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE13construct_keyIRKS2_EEvRNS_17hash_map_iteratorIS2_S3_Lb0EEEOT_, symObjAddr: 0x2988, symBinAddr: 0xD818, symSize: 0x68 } - - { offsetInCU: 0x37F1, offset: 0x8A89, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headINS4_10value_nodeEE4sizeEv, symObjAddr: 0x2A74, symBinAddr: 0xD904, symSize: 0x18 } - - { offsetInCU: 0x3815, offset: 0x8AAD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5beginEv, symObjAddr: 0x2A8C, symBinAddr: 0xD91C, symSize: 0x84 } - - { offsetInCU: 0x383C, offset: 0x8AD4, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb0EEneILb0EEEbRKNS0_IS2_S3_XT_EEE, symObjAddr: 0x2B10, symBinAddr: 0xD9A0, symSize: 0x34 } - - { offsetInCU: 0x387A, offset: 0x8B12, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb0EEdeEv, symObjAddr: 0x2B74, symBinAddr: 0xD9E8, symSize: 0x34 } - - { offsetInCU: 0x38A0, offset: 0x8B38, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE8destructERNS_17hash_map_iteratorIS2_S3_Lb0EEE, symObjAddr: 0x2BBC, symBinAddr: 0xDA30, symSize: 0x3C } - - { offsetInCU: 0x38D6, offset: 0x8B6E, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb0EEppEv, symObjAddr: 0x2BF8, symBinAddr: 0xDA6C, symSize: 0x88 } - - { offsetInCU: 0x38FC, offset: 0x8B94, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE12destruct_keyERNS_17hash_map_iteratorIS2_S3_Lb0EEE, symObjAddr: 0x2C80, symBinAddr: 0xDAF4, symSize: 0x2C } - - { offsetInCU: 0x3932, offset: 0x8BCA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14destruct_valueERNS_17hash_map_iteratorIS2_S3_Lb0EEE, symObjAddr: 0x2CAC, symBinAddr: 0xDB20, symSize: 0x30 } - - { offsetInCU: 0x396C, offset: 0x8C04, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_8platform20posix_file_node_infoEE8destructEPS2_, symObjAddr: 0x2CDC, symBinAddr: 0xDB50, symSize: 0x24 } - - { offsetInCU: 0x398E, offset: 0x8C26, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_8platform20posix_file_node_infoEE15destructor_implIS2_NS3_23trivial_destructor_typeEE8destructEPS2_, symObjAddr: 0x2D00, symBinAddr: 0xDB74, symSize: 0x10 } - - { offsetInCU: 0x39B5, offset: 0x8C4D, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_8platform19file_open_mode_enumEE8destructEPS2_, symObjAddr: 0x2D10, symBinAddr: 0xDB84, symSize: 0x24 } - - { offsetInCU: 0x39D7, offset: 0x8C6F, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_8platform19file_open_mode_enumEE15destructor_implIS2_NS3_23trivial_destructor_typeEE8destructEPS2_, symObjAddr: 0x2D34, symBinAddr: 0xDBA8, symSize: 0x10 } - - { offsetInCU: 0x39F9, offset: 0x8C91, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE19get_next_node_indexEj, symObjAddr: 0x2D44, symBinAddr: 0xDBB8, symSize: 0x68 } - - { offsetInCU: 0x3A2F, offset: 0x8CC7, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12scoped_mutexD2Ev, symObjAddr: 0x2DC0, symBinAddr: 0xDC34, symSize: 0x30 } - - { offsetInCU: 0x3A57, offset: 0x8CEF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseERKS2_, symObjAddr: 0x2DF0, symBinAddr: 0xDC64, symSize: 0x90 } - - { offsetInCU: 0x3A9B, offset: 0x8D33, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb0EEcvbEv, symObjAddr: 0x2E80, symBinAddr: 0xDCF4, symSize: 0x44 } - - { offsetInCU: 0x3AC1, offset: 0x8D59, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseENS_17hash_map_iteratorIS2_S3_Lb0EEE, symObjAddr: 0x2EC4, symBinAddr: 0xDD38, symSize: 0x228 } - - { offsetInCU: 0x3B32, offset: 0x8DCA, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE20iterator_legal_checkERKNS_17hash_map_iteratorIS2_S3_Lb1EEE, symObjAddr: 0x30EC, symBinAddr: 0xDF60, symSize: 0x124 } - - { offsetInCU: 0x3B67, offset: 0x8DFF, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb1EEC1ILb0EEERKNS0_IS2_S3_XT_EEE, symObjAddr: 0x3210, symBinAddr: 0xE084, symSize: 0x34 } - - { offsetInCU: 0x3BA7, offset: 0x8E3F, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb1EEC2ILb0EEERKNS0_IS2_S3_XT_EEE, symObjAddr: 0x3244, symBinAddr: 0xE0B8, symSize: 0x3C } - - { offsetInCU: 0x3BE7, offset: 0x8E7F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEEC2Ej, symObjAddr: 0x3280, symBinAddr: 0xE0F4, symSize: 0x78 } - - { offsetInCU: 0x3C1F, offset: 0x8EB7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headIjEC1Ev, symObjAddr: 0x32F8, symBinAddr: 0xE16C, symSize: 0x2C } - - { offsetInCU: 0x3C47, offset: 0x8EDF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headINS4_10value_nodeEEC1Ev, symObjAddr: 0x3324, symBinAddr: 0xE198, symSize: 0x2C } - - { offsetInCU: 0x3C6F, offset: 0x8F07, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headIjEC2Ev, symObjAddr: 0x3350, symBinAddr: 0xE1C4, symSize: 0x1C } - - { offsetInCU: 0x3C97, offset: 0x8F2F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headINS4_10value_nodeEEC2Ev, symObjAddr: 0x336C, symBinAddr: 0xE1E0, symSize: 0x1C } - - { offsetInCU: 0x3CBF, offset: 0x8F57, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEED2Ev, symObjAddr: 0x3388, symBinAddr: 0xE1FC, symSize: 0x2C } - - { offsetInCU: 0x3CE9, offset: 0x8F81, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5resetEv, symObjAddr: 0x33B4, symBinAddr: 0xE228, symSize: 0xF8 } - - { offsetInCU: 0x3D2D, offset: 0x8FC5, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EEC2Ev, symObjAddr: 0x34AC, symBinAddr: 0xE320, symSize: 0x20 } - - { offsetInCU: 0x3D57, offset: 0x8FEF, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EED2Ev, symObjAddr: 0x34CC, symBinAddr: 0xE340, symSize: 0x2C } - - { offsetInCU: 0x3D81, offset: 0x9019, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE5resetIS2_EENS_9enable_ifIXntsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x34F8, symBinAddr: 0xE36C, symSize: 0x6C } - - { offsetInCU: 0x3DB6, offset: 0x904E, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_11string_baseIcEEE8destructEPS2_m, symObjAddr: 0x3564, symBinAddr: 0xE3D8, symSize: 0x2C } - - { offsetInCU: 0x3DE6, offset: 0x907E, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_11string_baseIcEEE15destructor_implIS2_NS3_27non_trivial_destructor_typeEE8destructEPS2_m, symObjAddr: 0x3590, symBinAddr: 0xE404, symSize: 0x84 } - - { offsetInCU: 0x3E32, offset: 0x90CA, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_11string_baseIcEEE8destructEPS2_, symObjAddr: 0x3614, symBinAddr: 0xE488, symSize: 0x24 } - - { offsetInCU: 0x3E54, offset: 0x90EC, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_11string_baseIcEEE15destructor_implIS2_NS3_27non_trivial_destructor_typeEE8destructEPS2_, symObjAddr: 0x3638, symBinAddr: 0xE4AC, symSize: 0x3C } - - { offsetInCU: 0x3E76, offset: 0x910E, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRPKcEEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x3754, symBinAddr: 0xE4E8, symSize: 0x288 } - - { offsetInCU: 0x3F04, offset: 0x919C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE3endEv, symObjAddr: 0x39DC, symBinAddr: 0xE770, symSize: 0x44 } - - { offsetInCU: 0x3F30, offset: 0x91C8, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEgeIS2_S4_EEbRKNS0_IT_T0_EE, symObjAddr: 0x3A34, symBinAddr: 0xE7C8, symSize: 0xAC } - - { offsetInCU: 0x3F76, offset: 0x920E, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE5beginEv, symObjAddr: 0x3AE0, symBinAddr: 0xE874, symSize: 0x34 } - - { offsetInCU: 0x3F9D, offset: 0x9235, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEleIS2_S4_EEbRKNS0_IT_T0_EE, symObjAddr: 0x3B14, symBinAddr: 0xE8A8, symSize: 0xAC } - - { offsetInCU: 0x3FE3, offset: 0x927B, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEmiIS2_S4_EElRKNS0_IT_T0_EE, symObjAddr: 0x3BC0, symBinAddr: 0xE954, symSize: 0xAC } - - { offsetInCU: 0x4029, offset: 0x92C1, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE12set_capacityEmb, symObjAddr: 0x3C6C, symBinAddr: 0xEA00, symSize: 0x230 } - - { offsetInCU: 0x4098, offset: 0x9330, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEplEm, symObjAddr: 0x3E9C, symBinAddr: 0xEC30, symSize: 0x44 } - - { offsetInCU: 0x40DA, offset: 0x9372, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEcvPS2_Ev, symObjAddr: 0x3EE0, symBinAddr: 0xEC74, symSize: 0x18 } - - { offsetInCU: 0x4100, offset: 0x9398, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE8destructENS_14array_iteratorIS2_S3_EE, symObjAddr: 0x4038, symBinAddr: 0xEDCC, symSize: 0x34 } - - { offsetInCU: 0x4135, offset: 0x93CD, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9constructIJRPKcEEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x406C, symBinAddr: 0xEE00, symSize: 0x78 } - - { offsetInCU: 0x4192, offset: 0x942A, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEptEv, symObjAddr: 0x40E4, symBinAddr: 0xEE78, symSize: 0x18 } - - { offsetInCU: 0x41BD, offset: 0x9455, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEC1IS2_EEPT_PKS4_, symObjAddr: 0x40FC, symBinAddr: 0xEE90, symSize: 0x3C } - - { offsetInCU: 0x420C, offset: 0x94A4, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEC2IS2_EEPT_PKS4_, symObjAddr: 0x4138, symBinAddr: 0xEECC, symSize: 0x70 } - - { offsetInCU: 0x425B, offset: 0x94F3, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC1EOS1_, symObjAddr: 0x4364, symBinAddr: 0xF01C, symSize: 0x34 } - - { offsetInCU: 0x4293, offset: 0x952B, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC2EOS1_, symObjAddr: 0x4398, symBinAddr: 0xF050, symSize: 0x40 } - - { offsetInCU: 0x42CB, offset: 0x9563, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EEC2EOS1_, symObjAddr: 0x43EC, symBinAddr: 0xF0A4, symSize: 0x6C } - - { offsetInCU: 0x4304, offset: 0x959C, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIcLm1EE8capacityEv, symObjAddr: 0x4458, symBinAddr: 0xF110, symSize: 0x18 } - - { offsetInCU: 0x432B, offset: 0x95C3, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEpLEi, symObjAddr: 0x4470, symBinAddr: 0xF128, symSize: 0x30 } - - { offsetInCU: 0x435F, offset: 0x95F7, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEaSEOS1_, symObjAddr: 0x44A0, symBinAddr: 0xF158, symSize: 0x6C } - - { offsetInCU: 0x26, offset: 0x9928, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variableC2Ev, symObjAddr: 0x0, symBinAddr: 0xF260, symSize: 0x84 } - - { offsetInCU: 0x89A, offset: 0xA19C, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variableC2Ev, symObjAddr: 0x0, symBinAddr: 0xF260, symSize: 0x84 } - - { offsetInCU: 0x8C9, offset: 0xA1CB, size: 0x8, addend: 0x0, symName: __ZN2bq8platform31condition_variable_platform_defC1Ev, symObjAddr: 0xA0, symBinAddr: 0xF2E4, symSize: 0x2C } - - { offsetInCU: 0x8F3, offset: 0xA1F5, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variableC1Ev, symObjAddr: 0xCC, symBinAddr: 0xF310, symSize: 0x2C } - - { offsetInCU: 0x91D, offset: 0xA21F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variableD2Ev, symObjAddr: 0xF8, symBinAddr: 0xF33C, symSize: 0x68 } - - { offsetInCU: 0x947, offset: 0xA249, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variableD1Ev, symObjAddr: 0x160, symBinAddr: 0xF3A4, symSize: 0x2C } - - { offsetInCU: 0x971, offset: 0xA273, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variable8wait_forERNS0_5mutexEy, symObjAddr: 0x208, symBinAddr: 0xF3D0, symSize: 0x154 } - - { offsetInCU: 0x9EB, offset: 0xA2ED, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variable10notify_allEv, symObjAddr: 0x384, symBinAddr: 0xF524, symSize: 0x28 } - - { offsetInCU: 0xA11, offset: 0xA313, size: 0x8, addend: 0x0, symName: __ZN2bq8platform31condition_variable_platform_defC2Ev, symObjAddr: 0x3AC, symBinAddr: 0xF54C, symSize: 0x44 } - - { offsetInCU: 0x26, offset: 0xA368, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC2Ev, symObjAddr: 0x0, symBinAddr: 0xF590, symSize: 0x15C } - - { offsetInCU: 0x74A, offset: 0xAA8C, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC2Ev, symObjAddr: 0x0, symBinAddr: 0xF590, symSize: 0x15C } - - { offsetInCU: 0x79E, offset: 0xAAE0, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC1Ev, symObjAddr: 0x178, symBinAddr: 0xF6EC, symSize: 0x2C } - - { offsetInCU: 0x7C8, offset: 0xAB0A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC2Eb, symObjAddr: 0x1A4, symBinAddr: 0xF718, symSize: 0x188 } - - { offsetInCU: 0x82A, offset: 0xAB6C, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC1Eb, symObjAddr: 0x32C, symBinAddr: 0xF8A0, symSize: 0x40 } - - { offsetInCU: 0x862, offset: 0xABA4, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexD2Ev, symObjAddr: 0x36C, symBinAddr: 0xF8E0, symSize: 0xA0 } - - { offsetInCU: 0x8A8, offset: 0xABEA, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexD1Ev, symObjAddr: 0x40C, symBinAddr: 0xF980, symSize: 0x2C } - - { offsetInCU: 0x8D2, offset: 0xAC14, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex4lockEv, symObjAddr: 0x438, symBinAddr: 0xF9AC, symSize: 0x148 } - - { offsetInCU: 0x906, offset: 0xAC48, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex6unlockEv, symObjAddr: 0x798, symBinAddr: 0xFAF4, symSize: 0x15C } - - { offsetInCU: 0x93A, offset: 0xAC7C, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex19get_platform_handleEv, symObjAddr: 0x8F4, symBinAddr: 0xFC50, symSize: 0x18 } - - { offsetInCU: 0x26, offset: 0xAD11, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9spin_lock5yieldEv, symObjAddr: 0x0, symBinAddr: 0xFC68, symSize: 0x20 } - - { offsetInCU: 0x1BAF, offset: 0xC89A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9spin_lock5yieldEv, symObjAddr: 0x0, symBinAddr: 0xFC68, symSize: 0x20 } - - { offsetInCU: 0x1C48, offset: 0xC933, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18spin_lock_rw_crazy5yieldEv, symObjAddr: 0x20, symBinAddr: 0xFC88, symSize: 0x20 } - - { offsetInCU: 0x26, offset: 0xC989, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread6cancelEv, symObjAddr: 0x0, symBinAddr: 0xFCA8, symSize: 0x6A8 } - - { offsetInCU: 0x1055, offset: 0xD9B8, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread6cancelEv, symObjAddr: 0x0, symBinAddr: 0xFCA8, symSize: 0x6A8 } - - { offsetInCU: 0x1481, offset: 0xDDE4, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread12is_cancelledEv, symObjAddr: 0x6A8, symBinAddr: 0x10350, symSize: 0xD8 } - - { offsetInCU: 0x26, offset: 0xDED9, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadC2ENS0_11thread_attrE, symObjAddr: 0x0, symBinAddr: 0x10428, symSize: 0xB8 } - - { offsetInCU: 0x9B7, offset: 0xE86A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadC2ENS0_11thread_attrE, symObjAddr: 0x0, symBinAddr: 0x10428, symSize: 0xB8 } - - { offsetInCU: 0x9EF, offset: 0xE8A2, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicINS0_18enum_thread_statusEEC1ERKS2_, symObjAddr: 0xE4, symBinAddr: 0x104E0, symSize: 0x34 } - - { offsetInCU: 0xA77, offset: 0xE92A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread15set_thread_nameERKNS_11string_baseIcEE, symObjAddr: 0x134, symBinAddr: 0x10514, symSize: 0x1FC } - - { offsetInCU: 0xB5D, offset: 0xEA10, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEaSERKS1_, symObjAddr: 0x330, symBinAddr: 0x10710, symSize: 0x90 } - - { offsetInCU: 0xB91, offset: 0xEA44, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE6substrEmm, symObjAddr: 0x448, symBinAddr: 0x107A0, symSize: 0x1E0 } - - { offsetInCU: 0xC6E, offset: 0xEB21, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread5startEv, symObjAddr: 0x6C0, symBinAddr: 0x10980, symSize: 0x88C } - - { offsetInCU: 0x10CD, offset: 0xEF80, size: 0x8, addend: 0x0, symName: __ZN2bq8platform25thread_platform_processor14thread_processEPv, symObjAddr: 0xF4C, symBinAddr: 0x1120C, symSize: 0xAC } - - { offsetInCU: 0x10FD, offset: 0xEFB0, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread4joinEv, symObjAddr: 0xFF8, symBinAddr: 0x112B8, symSize: 0xB0 } - - { offsetInCU: 0x1131, offset: 0xEFE4, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread5yieldEv, symObjAddr: 0x10A8, symBinAddr: 0x11368, symSize: 0x18 } - - { offsetInCU: 0x1146, offset: 0xEFF9, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread5sleepEy, symObjAddr: 0x10C0, symBinAddr: 0x11380, symSize: 0x60 } - - { offsetInCU: 0x1178, offset: 0xF02B, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread9cpu_relaxEv, symObjAddr: 0x1120, symBinAddr: 0x113E0, symSize: 0x8 } - - { offsetInCU: 0x118D, offset: 0xF040, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread23get_current_thread_nameEv, symObjAddr: 0x1128, symBinAddr: 0x113E8, symSize: 0xCC } - - { offsetInCU: 0x11BF, offset: 0xF072, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread21get_current_thread_idEv, symObjAddr: 0x1228, symBinAddr: 0x114B4, symSize: 0x70 } - - { offsetInCU: 0x11D4, offset: 0xF087, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadD2Ev, symObjAddr: 0x1298, symBinAddr: 0x11524, symSize: 0x50 } - - { offsetInCU: 0x11FE, offset: 0xF0B1, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadD1Ev, symObjAddr: 0x12E8, symBinAddr: 0x11574, symSize: 0x14 } - - { offsetInCU: 0x1228, offset: 0xF0DB, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadD0Ev, symObjAddr: 0x12FC, symBinAddr: 0x11588, symSize: 0xC } - - { offsetInCU: 0x1252, offset: 0xF105, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread17apply_thread_nameEv, symObjAddr: 0x1308, symBinAddr: 0x11594, symSize: 0x2C } - - { offsetInCU: 0x12CC, offset: 0xF17F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread12internal_runEv, symObjAddr: 0x1334, symBinAddr: 0x115C0, symSize: 0x2E0 } - - { offsetInCU: 0x1628, offset: 0xF4DB, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread11on_finishedEv, symObjAddr: 0x1614, symBinAddr: 0x118A0, symSize: 0x10 } - - { offsetInCU: 0x164C, offset: 0xF4FF, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicINS0_18enum_thread_statusEEC2ERKS2_, symObjAddr: 0x1724, symBinAddr: 0x118B0, symSize: 0x34 } - - { offsetInCU: 0x1682, offset: 0xF535, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12_atomic_baseINS0_18enum_thread_statusELm1EEC2ERKS2_, symObjAddr: 0x1758, symBinAddr: 0x118E4, symSize: 0x24 } - - { offsetInCU: 0x16B8, offset: 0xF56B, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKcNS_5arrayIcLm1EEEEplEm, symObjAddr: 0x234C, symBinAddr: 0x11908, symSize: 0x44 } - - { offsetInCU: 0x16FA, offset: 0xF5AD, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKcNS_5arrayIcLm1EEEEpLEi, symObjAddr: 0x2390, symBinAddr: 0x1194C, symSize: 0x28 } - - { offsetInCU: 0x26, offset: 0xF667, size: 0x8, addend: 0x0, symName: __ZN2bq12file_managerC2Ev, symObjAddr: 0x0, symBinAddr: 0x11974, symSize: 0xC4 } - - { offsetInCU: 0x3E, offset: 0xF67F, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18static_inst_cache_E, symObjAddr: 0x21458, symBinAddr: 0x69A70, symSize: 0x0 } - - { offsetInCU: 0x1989, offset: 0x10FCA, size: 0x8, addend: 0x0, symName: __ZN2bqplIcEENS_11string_baseIT_EEPKNS3_9char_typeERKS3_, symObjAddr: 0x21E0, symBinAddr: 0x133D4, symSize: 0xDC } - - { offsetInCU: 0x19DF, offset: 0x11020, size: 0x8, addend: 0x0, symName: __ZN2bqplIcEENS_11string_baseIT_EEOS3_RKS3_, symObjAddr: 0x2D18, symBinAddr: 0x139F4, symSize: 0x88 } - - { offsetInCU: 0x1B29, offset: 0x1116A, size: 0x8, addend: 0x0, symName: __ZN2bq9___strstrIcEEPKT_S3_S3_, symObjAddr: 0x6974, symBinAddr: 0x16500, symSize: 0x68 } - - { offsetInCU: 0x1B6C, offset: 0x111AD, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRNS_11string_baseIcEEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x75B0, symBinAddr: 0x16974, symSize: 0x14 } - - { offsetInCU: 0x1BA1, offset: 0x111E2, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_12file_manager15file_descriptorEEEONS_16remove_referenceIT_E4typeEOS5_, symObjAddr: 0x7D5C, symBinAddr: 0x16D50, symSize: 0x14 } - - { offsetInCU: 0x1BD6, offset: 0x11217, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_12file_manager15file_descriptorEEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0x803C, symBinAddr: 0x17030, symSize: 0x14 } - - { offsetInCU: 0x1C0B, offset: 0x1124C, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveINS_12file_manager15file_descriptorEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS4_EE5valueEvE4typeEPS4_S7_m, symObjAddr: 0x8514, symBinAddr: 0x17508, symSize: 0x140 } - - { offsetInCU: 0x1CC6, offset: 0x11307, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyINS_12file_manager15file_descriptorEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS4_EE5valueEvE4typeEPS4_S7_m, symObjAddr: 0x87C0, symBinAddr: 0x177B4, symSize: 0xCC } - - { offsetInCU: 0x1D38, offset: 0x11379, size: 0x8, addend: 0x0, symName: __ZN2bq20_inner_backward_moveIcEENS_9enable_ifIXaasr2bq28is_trivially_move_assignableIT_EE5valuesr2bq28is_trivially_copy_assignableIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0x8C98, symBinAddr: 0x17C48, symSize: 0x3C } - - { offsetInCU: 0x1F96, offset: 0x115D7, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager22scoped_static_instanceEv, symObjAddr: 0x3DC, symBinAddr: 0x11CE0, symSize: 0x94 } - - { offsetInCU: 0x1FBA, offset: 0x115FB, size: 0x8, addend: 0x0, symName: __ZZN2bq12file_manager22scoped_static_instanceEvE9instance_, symObjAddr: 0x21468, symBinAddr: 0x68950, symSize: 0x0 } - - { offsetInCU: 0x1FCA, offset: 0x1160B, size: 0x8, addend: 0x0, symName: __ZN2bq12file_managerC2Ev, symObjAddr: 0x0, symBinAddr: 0x11974, symSize: 0xC4 } - - { offsetInCU: 0x1FF4, offset: 0x11635, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EEC1Ev, symObjAddr: 0xC4, symBinAddr: 0x11A38, symSize: 0x2C } - - { offsetInCU: 0x201E, offset: 0x1165F, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12get_base_dirEb, symObjAddr: 0xF0, symBinAddr: 0x11A64, symSize: 0x30 } - - { offsetInCU: 0x2042, offset: 0x11683, size: 0x8, addend: 0x0, symName: __ZN2bq12file_managerC1Ev, symObjAddr: 0x190, symBinAddr: 0x11A94, symSize: 0x2C } - - { offsetInCU: 0x206C, offset: 0x116AD, size: 0x8, addend: 0x0, symName: __ZN2bq12file_managerD2Ev, symObjAddr: 0x1BC, symBinAddr: 0x11AC0, symSize: 0x54 } - - { offsetInCU: 0x2096, offset: 0x116D7, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager22flush_all_opened_filesEv, symObjAddr: 0x210, symBinAddr: 0x11B14, symSize: 0x134 } - - { offsetInCU: 0x2132, offset: 0x11773, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EED1Ev, symObjAddr: 0x344, symBinAddr: 0x11C48, symSize: 0x2C } - - { offsetInCU: 0x215C, offset: 0x1179D, size: 0x8, addend: 0x0, symName: __ZN2bq12file_managerD1Ev, symObjAddr: 0x370, symBinAddr: 0x11C74, symSize: 0x2C } - - { offsetInCU: 0x2186, offset: 0x117C7, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager8instanceEv, symObjAddr: 0x39C, symBinAddr: 0x11CA0, symSize: 0x40 } - - { offsetInCU: 0x219B, offset: 0x117DC, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager44trans_process_relative_path_to_absolute_pathERKNS_11string_baseIcEEb, symObjAddr: 0x470, symBinAddr: 0x11D74, symSize: 0xE4 } - - { offsetInCU: 0x21DC, offset: 0x1181D, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC1ERKS1_, symObjAddr: 0x554, symBinAddr: 0x11E58, symSize: 0x34 } - - { offsetInCU: 0x2214, offset: 0x11855, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager11is_absoluteERKNS_11string_baseIcEE, symObjAddr: 0x588, symBinAddr: 0x11E8C, symSize: 0x98 } - - { offsetInCU: 0x2238, offset: 0x11879, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_, symObjAddr: 0x620, symBinAddr: 0x11F24, symSize: 0x3FC } - - { offsetInCU: 0x235F, offset: 0x119A0, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE, symObjAddr: 0xAB4, symBinAddr: 0x12320, symSize: 0x3D0 } - - { offsetInCU: 0x23E9, offset: 0x11A2A, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE7replaceERKS1_S3_, symObjAddr: 0xFB4, symBinAddr: 0x126F0, symSize: 0x28C } - - { offsetInCU: 0x24A0, offset: 0x11AE1, size: 0x8, addend: 0x0, symName: __ZNK2bq12file_manager15is_handle_validERKNS_11file_handleE, symObjAddr: 0x1274, symBinAddr: 0x1297C, symSize: 0x100 } - - { offsetInCU: 0x2539, offset: 0x11B7A, size: 0x8, addend: 0x0, symName: __ZNK2bq12file_manager35get_file_descriptor_index_by_handleERKNS_11file_handleE, symObjAddr: 0x1374, symBinAddr: 0x12A7C, symSize: 0xE8 } - - { offsetInCU: 0x257E, offset: 0x11BBF, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager16create_directoryERKNS_11string_baseIcEE, symObjAddr: 0x145C, symBinAddr: 0x12B64, symSize: 0xC4 } - - { offsetInCU: 0x25B0, offset: 0x11BF1, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_directory_from_pathERKNS_11string_baseIcEE, symObjAddr: 0x1520, symBinAddr: 0x12C28, symSize: 0x160 } - - { offsetInCU: 0x260F, offset: 0x11C50, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE9find_lastERKS1_, symObjAddr: 0x1680, symBinAddr: 0x12D88, symSize: 0x134 } - - { offsetInCU: 0x2662, offset: 0x11CA3, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_file_name_from_pathERKNS_11string_baseIcEE, symObjAddr: 0x19E4, symBinAddr: 0x12EBC, symSize: 0x13C } - - { offsetInCU: 0x26B1, offset: 0x11CF2, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE5splitERKS1_, symObjAddr: 0x1D8C, symBinAddr: 0x12FF8, symSize: 0x17C } - - { offsetInCU: 0x275D, offset: 0x11D9E, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_11string_baseIcEELm0EE4sizeEv, symObjAddr: 0x1F08, symBinAddr: 0x13174, symSize: 0x18 } - - { offsetInCU: 0x2789, offset: 0x11DCA, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEneIS2_S4_EEbRKNS0_IT_T0_EE, symObjAddr: 0x1F98, symBinAddr: 0x1318C, symSize: 0xAC } - - { offsetInCU: 0x27CF, offset: 0x11E10, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEdeEv, symObjAddr: 0x2044, symBinAddr: 0x13238, symSize: 0x18 } - - { offsetInCU: 0x27F5, offset: 0x11E36, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEpLERKS1_, symObjAddr: 0x205C, symBinAddr: 0x13250, symSize: 0xF0 } - - { offsetInCU: 0x2853, offset: 0x11E94, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEppEv, symObjAddr: 0x214C, symBinAddr: 0x13340, symSize: 0x20 } - - { offsetInCU: 0x2879, offset: 0x11EBA, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIcLm1EEixEm, symObjAddr: 0x216C, symBinAddr: 0x13360, symSize: 0x74 } - - { offsetInCU: 0x28AE, offset: 0x11EEF, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EEixEm, symObjAddr: 0x2544, symBinAddr: 0x134B0, symSize: 0x7C } - - { offsetInCU: 0x28E3, offset: 0x11F24, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE4trimEv, symObjAddr: 0x25C0, symBinAddr: 0x1352C, symSize: 0x14C } - - { offsetInCU: 0x2928, offset: 0x11F69, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcEeqEPKc, symObjAddr: 0x270C, symBinAddr: 0x13678, symSize: 0xBC } - - { offsetInCU: 0x296C, offset: 0x11FAD, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcEneEPKc, symObjAddr: 0x27C8, symBinAddr: 0x13734, symSize: 0x34 } - - { offsetInCU: 0x29A1, offset: 0x11FE2, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE8pop_backEv, symObjAddr: 0x27FC, symBinAddr: 0x13768, symSize: 0x8C } - - { offsetInCU: 0x29C8, offset: 0x12009, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9push_backIJRS2_EEEmDpOT_, symObjAddr: 0x2888, symBinAddr: 0x137F4, symSize: 0x58 } - - { offsetInCU: 0x2A08, offset: 0x12049, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager7is_fileERKNS_11string_baseIcEE, symObjAddr: 0x2A1C, symBinAddr: 0x1384C, symSize: 0x50 } - - { offsetInCU: 0x2A3A, offset: 0x1207B, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18remove_file_or_dirERKNS_11string_baseIcEE, symObjAddr: 0x2A6C, symBinAddr: 0x1389C, symSize: 0x10C } - - { offsetInCU: 0x2A7A, offset: 0x120BB, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager27get_sub_dirs_and_files_nameERKNS_11string_baseIcEE, symObjAddr: 0x2B78, symBinAddr: 0x139A8, symSize: 0x4C } - - { offsetInCU: 0x2AB0, offset: 0x120F1, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcEplEPKc, symObjAddr: 0x2DA0, symBinAddr: 0x13A7C, symSize: 0x184 } - - { offsetInCU: 0x2B1D, offset: 0x1215E, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9push_backIJS2_EEEmDpOT_, symObjAddr: 0x2F24, symBinAddr: 0x13C00, symSize: 0x58 } - - { offsetInCU: 0x2B5D, offset: 0x1219E, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager31get_file_last_modified_epoch_msERKNS_11string_baseIcEE, symObjAddr: 0x2F7C, symBinAddr: 0x13C58, symSize: 0xC8 } - - { offsetInCU: 0x2C03, offset: 0x12244, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager9open_fileERKNS_11string_baseIcEENS_19file_open_mode_enumE, symObjAddr: 0x3140, symBinAddr: 0x13D20, symSize: 0x4EC } - - { offsetInCU: 0x2E19, offset: 0x1245A, size: 0x8, addend: 0x0, symName: __ZNK2bq12file_manager13get_file_sizeERKNS_11file_handleE, symObjAddr: 0x362C, symBinAddr: 0x1420C, symSize: 0x1B0 } - - { offsetInCU: 0x2EA9, offset: 0x124EA, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleD1Ev, symObjAddr: 0x382C, symBinAddr: 0x1440C, symSize: 0x2C } - - { offsetInCU: 0x2ED4, offset: 0x12515, size: 0x8, addend: 0x0, symName: __ZNK2bq11file_handle8is_validEv, symObjAddr: 0x3924, symBinAddr: 0x14438, symSize: 0x34 } - - { offsetInCU: 0x2EFB, offset: 0x1253C, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15append_all_textERKNS_11string_baseIcEES2_, symObjAddr: 0x3AD4, symBinAddr: 0x1446C, symSize: 0x108 } - - { offsetInCU: 0x2F77, offset: 0x125B8, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10write_fileERKNS_11file_handleEPKvmNS0_11seek_optionEx, symObjAddr: 0x3BDC, symBinAddr: 0x14574, symSize: 0x208 } - - { offsetInCU: 0x3065, offset: 0x126A6, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10flush_fileERKNS_11file_handleE, symObjAddr: 0x3E30, symBinAddr: 0x1477C, symSize: 0xB8 } - - { offsetInCU: 0x30C8, offset: 0x12709, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager14write_all_textERKNS_11string_baseIcEES2_, symObjAddr: 0x3EE8, symBinAddr: 0x14834, symSize: 0x11C } - - { offsetInCU: 0x3144, offset: 0x12785, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager13truncate_fileERKNS_11file_handleEm, symObjAddr: 0x4004, symBinAddr: 0x14950, symSize: 0x13C } - - { offsetInCU: 0x321F, offset: 0x12860, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager29get_and_clear_last_file_errorEv, symObjAddr: 0x4140, symBinAddr: 0x14A8C, symSize: 0x3C } - - { offsetInCU: 0x324B, offset: 0x1288C, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_12file_manager15file_descriptorELm0EE4sizeEv, symObjAddr: 0x41DC, symBinAddr: 0x14AC8, symSize: 0x18 } - - { offsetInCU: 0x3272, offset: 0x128B3, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EEixEm, symObjAddr: 0x41F4, symBinAddr: 0x14AE0, symSize: 0x7C } - - { offsetInCU: 0x32A7, offset: 0x128E8, size: 0x8, addend: 0x0, symName: __ZNK2bq12file_manager15file_descriptor8is_emptyEv, symObjAddr: 0x4270, symBinAddr: 0x14B5C, symSize: 0x78 } - - { offsetInCU: 0x32EC, offset: 0x1292D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE12emplace_backIJS2_EEEmDpOT_, symObjAddr: 0x4378, symBinAddr: 0x14BD4, symSize: 0x3C } - - { offsetInCU: 0x332C, offset: 0x1296D, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptorC1Ev, symObjAddr: 0x43B4, symBinAddr: 0x14C10, symSize: 0x2C } - - { offsetInCU: 0x3357, offset: 0x12998, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptorD1Ev, symObjAddr: 0x43E0, symBinAddr: 0x14C3C, symSize: 0x2C } - - { offsetInCU: 0x33DF, offset: 0x12A20, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptor7inc_refEv, symObjAddr: 0x440C, symBinAddr: 0x14C68, symSize: 0x29C } - - { offsetInCU: 0x34E0, offset: 0x12B21, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager4seekERKNS_11file_handleENS0_11seek_optionEx, symObjAddr: 0x46D4, symBinAddr: 0x14F04, symSize: 0x120 } - - { offsetInCU: 0x3561, offset: 0x12BA2, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager9read_fileERKNS_11file_handleEPvmNS0_11seek_optionEx, symObjAddr: 0x47F4, symBinAddr: 0x15024, symSize: 0x1DC } - - { offsetInCU: 0x364E, offset: 0x12C8F, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE18fill_uninitializedIcEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm, symObjAddr: 0x4AF0, symBinAddr: 0x15200, symSize: 0xC4 } - - { offsetInCU: 0x368C, offset: 0x12CCD, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE5eraseENS_14array_iteratorIcS1_EEm, symObjAddr: 0x4BB4, symBinAddr: 0x152C4, symSize: 0x25C } - - { offsetInCU: 0x36EF, offset: 0x12D30, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10close_fileERNS_11file_handleE, symObjAddr: 0x4E54, symBinAddr: 0x15520, symSize: 0x2A0 } - - { offsetInCU: 0x3856, offset: 0x12E97, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptor7dec_refEv, symObjAddr: 0x50F4, symBinAddr: 0x157C0, symSize: 0x49C } - - { offsetInCU: 0x3AA4, offset: 0x130E5, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_12file_manager15file_descriptorELm0EEixEm, symObjAddr: 0x55C8, symBinAddr: 0x15C5C, symSize: 0x7C } - - { offsetInCU: 0x3AD9, offset: 0x1311A, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager7inc_refERKNS_11file_handleE, symObjAddr: 0x5644, symBinAddr: 0x15CD8, symSize: 0x90 } - - { offsetInCU: 0x3BAF, offset: 0x131F0, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptor5clearEv, symObjAddr: 0x56D4, symBinAddr: 0x15D68, symSize: 0x138 } - - { offsetInCU: 0x3D04, offset: 0x13345, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptorC2Ev, symObjAddr: 0x5884, symBinAddr: 0x15EA0, symSize: 0x130 } - - { offsetInCU: 0x3E5D, offset: 0x1349E, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIiEC1Ev, symObjAddr: 0x59B4, symBinAddr: 0x15FD0, symSize: 0x2C } - - { offsetInCU: 0x3E85, offset: 0x134C6, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleD2Ev, symObjAddr: 0x5B54, symBinAddr: 0x15FFC, symSize: 0x40 } - - { offsetInCU: 0x3EB0, offset: 0x134F1, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleaSERKS0_, symObjAddr: 0x5B94, symBinAddr: 0x1603C, symSize: 0x6C } - - { offsetInCU: 0x3EE6, offset: 0x13527, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleaSEOS0_, symObjAddr: 0x5C00, symBinAddr: 0x160A8, symSize: 0x84 } - - { offsetInCU: 0x3F1C, offset: 0x1355D, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handle7invalidEv, symObjAddr: 0x5C84, symBinAddr: 0x1612C, symSize: 0x38 } - - { offsetInCU: 0x3F43, offset: 0x13584, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptorD2Ev, symObjAddr: 0x5DE4, symBinAddr: 0x16164, symSize: 0x30 } - - { offsetInCU: 0x3F6D, offset: 0x135AE, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EEC2Ev, symObjAddr: 0x5E90, symBinAddr: 0x16194, symSize: 0x20 } - - { offsetInCU: 0x3F97, offset: 0x135D8, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EED2Ev, symObjAddr: 0x5EB0, symBinAddr: 0x161B4, symSize: 0x2C } - - { offsetInCU: 0x3FC1, offset: 0x13602, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE5resetIS2_EENS_9enable_ifIXntsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x5EDC, symBinAddr: 0x161E0, symSize: 0x6C } - - { offsetInCU: 0x3FF6, offset: 0x13637, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_12file_manager15file_descriptorEE8destructEPS2_m, symObjAddr: 0x5F48, symBinAddr: 0x1624C, symSize: 0x2C } - - { offsetInCU: 0x4026, offset: 0x13667, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_12file_manager15file_descriptorEE15destructor_implIS2_NS3_27non_trivial_destructor_typeEE8destructEPS2_m, symObjAddr: 0x5F74, symBinAddr: 0x16278, symSize: 0x84 } - - { offsetInCU: 0x4072, offset: 0x136B3, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_12file_manager15file_descriptorEE8destructEPS2_, symObjAddr: 0x5FF8, symBinAddr: 0x162FC, symSize: 0x24 } - - { offsetInCU: 0x4094, offset: 0x136D5, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_12file_manager15file_descriptorEE15destructor_implIS2_NS3_27non_trivial_destructor_typeEE8destructEPS2_, symObjAddr: 0x601C, symBinAddr: 0x16320, symSize: 0x3C } - - { offsetInCU: 0x40C0, offset: 0x13701, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC2ERKS1_, symObjAddr: 0x6168, symBinAddr: 0x1635C, symSize: 0x34 } - - { offsetInCU: 0x40F8, offset: 0x13739, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EEC2ERKS1_, symObjAddr: 0x619C, symBinAddr: 0x16390, symSize: 0x9C } - - { offsetInCU: 0x413D, offset: 0x1377E, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE4findERKS1_m, symObjAddr: 0x685C, symBinAddr: 0x1642C, symSize: 0xD4 } - - { offsetInCU: 0x418F, offset: 0x137D0, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE12emplace_backIJRS2_EEEmDpOT_, symObjAddr: 0x6D08, symBinAddr: 0x16568, symSize: 0x3C } - - { offsetInCU: 0x41D9, offset: 0x1381A, size: 0x8, addend: 0x0, symName: __Z7isspacei, symObjAddr: 0x71AC, symBinAddr: 0x165A4, symSize: 0x28 } - - { offsetInCU: 0x4207, offset: 0x13848, size: 0x8, addend: 0x0, symName: __Z8__istypeim, symObjAddr: 0x71D4, symBinAddr: 0x165CC, symSize: 0x8C } - - { offsetInCU: 0x4241, offset: 0x13882, size: 0x8, addend: 0x0, symName: __Z7isasciii, symObjAddr: 0x7260, symBinAddr: 0x16658, symSize: 0x24 } - - { offsetInCU: 0x426D, offset: 0x138AE, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEmiEi, symObjAddr: 0x72B8, symBinAddr: 0x1667C, symSize: 0x40 } - - { offsetInCU: 0x42AF, offset: 0x138F0, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEmIEi, symObjAddr: 0x72F8, symBinAddr: 0x166BC, symSize: 0x30 } - - { offsetInCU: 0x42E3, offset: 0x13924, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x7328, symBinAddr: 0x166EC, symSize: 0x288 } - - { offsetInCU: 0x4371, offset: 0x139B2, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9constructIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x7964, symBinAddr: 0x16988, symSize: 0x74 } - - { offsetInCU: 0x43CE, offset: 0x13A0F, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x7A08, symBinAddr: 0x169FC, symSize: 0x288 } - - { offsetInCU: 0x445C, offset: 0x13A9D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9constructIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x7C90, symBinAddr: 0x16C84, symSize: 0x74 } - - { offsetInCU: 0x44B9, offset: 0x13AFA, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE9push_backIJS2_EEEmDpOT_, symObjAddr: 0x7D04, symBinAddr: 0x16CF8, symSize: 0x58 } - - { offsetInCU: 0x44F9, offset: 0x13B3A, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x7D70, symBinAddr: 0x16D64, symSize: 0x288 } - - { offsetInCU: 0x4587, offset: 0x13BC8, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE3endEv, symObjAddr: 0x7FF8, symBinAddr: 0x16FEC, symSize: 0x44 } - - { offsetInCU: 0x45B3, offset: 0x13BF4, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_12file_manager15file_descriptorENS_5arrayIS2_Lm0EEEEgeIS2_S4_EEbRKNS0_IT_T0_EE, symObjAddr: 0x8050, symBinAddr: 0x17044, symSize: 0xAC } - - { offsetInCU: 0x45F9, offset: 0x13C3A, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE5beginEv, symObjAddr: 0x80FC, symBinAddr: 0x170F0, symSize: 0x34 } - - { offsetInCU: 0x4620, offset: 0x13C61, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_12file_manager15file_descriptorENS_5arrayIS2_Lm0EEEEleIS2_S4_EEbRKNS0_IT_T0_EE, symObjAddr: 0x8130, symBinAddr: 0x17124, symSize: 0xAC } - - { offsetInCU: 0x4666, offset: 0x13CA7, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_12file_manager15file_descriptorENS_5arrayIS2_Lm0EEEEmiIS2_S4_EElRKNS0_IT_T0_EE, symObjAddr: 0x81DC, symBinAddr: 0x171D0, symSize: 0xAC } - - { offsetInCU: 0x46AC, offset: 0x13CED, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE12set_capacityEmb, symObjAddr: 0x8288, symBinAddr: 0x1727C, symSize: 0x230 } - - { offsetInCU: 0x471B, offset: 0x13D5C, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_12file_manager15file_descriptorENS_5arrayIS2_Lm0EEEEplEm, symObjAddr: 0x84B8, symBinAddr: 0x174AC, symSize: 0x44 } - - { offsetInCU: 0x475D, offset: 0x13D9E, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_12file_manager15file_descriptorENS_5arrayIS2_Lm0EEEEcvPS2_Ev, symObjAddr: 0x84FC, symBinAddr: 0x174F0, symSize: 0x18 } - - { offsetInCU: 0x4783, offset: 0x13DC4, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE8destructENS_14array_iteratorIS2_S3_EE, symObjAddr: 0x8654, symBinAddr: 0x17648, symSize: 0x34 } - - { offsetInCU: 0x47B8, offset: 0x13DF9, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE9constructIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x8688, symBinAddr: 0x1767C, symSize: 0x74 } - - { offsetInCU: 0x4815, offset: 0x13E56, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_12file_manager15file_descriptorENS_5arrayIS2_Lm0EEEEptEv, symObjAddr: 0x86FC, symBinAddr: 0x176F0, symSize: 0x18 } - - { offsetInCU: 0x4840, offset: 0x13E81, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_12file_manager15file_descriptorENS_5arrayIS2_Lm0EEEEC1IS2_EEPT_PKS4_, symObjAddr: 0x8714, symBinAddr: 0x17708, symSize: 0x3C } - - { offsetInCU: 0x488F, offset: 0x13ED0, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_12file_manager15file_descriptorENS_5arrayIS2_Lm0EEEEC2IS2_EEPT_PKS4_, symObjAddr: 0x8750, symBinAddr: 0x17744, symSize: 0x70 } - - { offsetInCU: 0x48DE, offset: 0x13F1F, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptorC1EOS1_, symObjAddr: 0x888C, symBinAddr: 0x17880, symSize: 0x34 } - - { offsetInCU: 0x4911, offset: 0x13F52, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptorC2EOS1_, symObjAddr: 0x88C0, symBinAddr: 0x178B4, symSize: 0x64 } - - { offsetInCU: 0x4944, offset: 0x13F85, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIiEC1ERKS2_, symObjAddr: 0x8924, symBinAddr: 0x17918, symSize: 0x34 } - - { offsetInCU: 0x497A, offset: 0x13FBB, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIiEC2ERKS2_, symObjAddr: 0x8958, symBinAddr: 0x1794C, symSize: 0x24 } - - { offsetInCU: 0x49B0, offset: 0x13FF1, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_12file_manager15file_descriptorENS_5arrayIS2_Lm0EEEEpLEi, symObjAddr: 0x897C, symBinAddr: 0x17970, symSize: 0x30 } - - { offsetInCU: 0x4A08, offset: 0x14049, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptoraSEOS1_, symObjAddr: 0x89AC, symBinAddr: 0x179A0, symSize: 0x1FC } - - { offsetInCU: 0x4C16, offset: 0x14257, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIcNS_5arrayIcLm1EEEEltIcS2_EEbRKNS0_IT_T0_EE, symObjAddr: 0x8BEC, symBinAddr: 0x17B9C, symSize: 0xAC } - - { offsetInCU: 0x4C5C, offset: 0x1429D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIiEC2Ev, symObjAddr: 0x8D3C, symBinAddr: 0x17C84, symSize: 0x2C } - - { offsetInCU: 0x4C84, offset: 0x142C5, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12_atomic_baseIiLm4EEC2Ev, symObjAddr: 0x8D68, symBinAddr: 0x17CB0, symSize: 0x18 } - - { offsetInCU: 0x1B13, offset: 0x15E6C, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm0EJNS_11string_baseIcEES2_EEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERS7_, symObjAddr: 0x974, symBinAddr: 0x18588, symSize: 0x24 } - - { offsetInCU: 0x1B5B, offset: 0x15EB4, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm1EJNS_11string_baseIcEES2_EEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERS7_, symObjAddr: 0x998, symBinAddr: 0x185AC, symSize: 0x28 } - - { offsetInCU: 0x1BA3, offset: 0x15EFC, size: 0x8, addend: 0x0, symName: __ZN2bqL10find_splitERNS_11string_baseIcEERKc, symObjAddr: 0x11BC, symBinAddr: 0x186E4, symSize: 0x16C } - - { offsetInCU: 0x1C07, offset: 0x15F60, size: 0x8, addend: 0x0, symName: __ZN2bq10make_tupleIJRNS_11string_baseIcEES3_EEENS_5tupleIJDpNS_5decayIT_E4typeEEEEDpOS6_, symObjAddr: 0x1700, symBinAddr: 0x18914, symSize: 0x4C } - - { offsetInCU: 0x1C54, offset: 0x15FAD, size: 0x8, addend: 0x0, symName: __ZN2bqplIcEENS_11string_baseIT_EEOS3_PKc, symObjAddr: 0x1A3C, symBinAddr: 0x18AB0, symSize: 0x88 } - - { offsetInCU: 0x1C9A, offset: 0x15FF3, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_5arrayINS_11string_baseIcEELm0EEEEEONS_16remove_referenceIT_E4typeEOS7_, symObjAddr: 0x269C, symBinAddr: 0x18E90, symSize: 0x14 } - - { offsetInCU: 0x1D85, offset: 0x160DE, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_5tupleIJNS_11string_baseIcEES3_EEEEEOT_RNS_16remove_referenceIS5_E4typeE, symObjAddr: 0x4F00, symBinAddr: 0x1975C, symSize: 0x14 } - - { offsetInCU: 0x1DBA, offset: 0x16113, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveINS_5tupleIJNS_11string_baseIcEES3_EEEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS6_EE5valueEvE4typeEPS6_S9_m, symObjAddr: 0x53A4, symBinAddr: 0x19C00, symSize: 0x140 } - - { offsetInCU: 0x1E75, offset: 0x161CE, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyINS_5tupleIJNS_11string_baseIcEES3_EEEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS6_EE5valueEvE4typeEPS6_S9_m, symObjAddr: 0x558C, symBinAddr: 0x19DE8, symSize: 0xCC } - - { offsetInCU: 0x1EE7, offset: 0x16240, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_5tupleIJNS_11string_baseIcEES3_EEEEEONS_16remove_referenceIT_E4typeEOS7_, symObjAddr: 0x5658, symBinAddr: 0x19EB4, symSize: 0x14 } - - { offsetInCU: 0x1F1C, offset: 0x16275, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRKNS_11string_baseIcEEEEOT_RNS_16remove_referenceIS5_E4typeE, symObjAddr: 0x62E0, symBinAddr: 0x1A9F4, symSize: 0x14 } - - { offsetInCU: 0x223E, offset: 0x16597, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj, symObjAddr: 0x6DC8, symBinAddr: 0x1B4DC, symSize: 0x2C0 } - - { offsetInCU: 0x2322, offset: 0x1667B, size: 0x8, addend: 0x0, symName: __ZN2bq8property4loadERKNS_11string_baseIcEE, symObjAddr: 0x88, symBinAddr: 0x17CC8, symSize: 0xD8 } - - { offsetInCU: 0x23B5, offset: 0x1670E, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE, symObjAddr: 0x18C, symBinAddr: 0x17DA0, symSize: 0x608 } - - { offsetInCU: 0x246A, offset: 0x167C3, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE5beginEv, symObjAddr: 0x794, symBinAddr: 0x183A8, symSize: 0x34 } - - { offsetInCU: 0x2491, offset: 0x167EA, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE3endEv, symObjAddr: 0x7C8, symBinAddr: 0x183DC, symSize: 0x44 } - - { offsetInCU: 0x24BD, offset: 0x16816, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEneIS4_S6_EEbRKNS0_IT_T0_EE, symObjAddr: 0x80C, symBinAddr: 0x18420, symSize: 0xAC } - - { offsetInCU: 0x2503, offset: 0x1685C, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEdeEv, symObjAddr: 0x8B8, symBinAddr: 0x184CC, symSize: 0x18 } - - { offsetInCU: 0x2529, offset: 0x16882, size: 0x8, addend: 0x0, symName: __ZN2bq8property3setERKNS_11string_baseIcEES4_, symObjAddr: 0x8D0, symBinAddr: 0x184E4, symSize: 0xA4 } - - { offsetInCU: 0x256B, offset: 0x168C4, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEppEv, symObjAddr: 0x9C0, symBinAddr: 0x185D4, symSize: 0x20 } - - { offsetInCU: 0x2591, offset: 0x168EA, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E8is_emptyEv, symObjAddr: 0x9E0, symBinAddr: 0x185F4, symSize: 0x24 } - - { offsetInCU: 0x25B7, offset: 0x16910, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EED1Ev, symObjAddr: 0xA04, symBinAddr: 0x18618, symSize: 0x2C } - - { offsetInCU: 0x25E1, offset: 0x1693A, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EEC1Ev, symObjAddr: 0xA30, symBinAddr: 0x18644, symSize: 0x2C } - - { offsetInCU: 0x260B, offset: 0x16964, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EEixEm, symObjAddr: 0x1148, symBinAddr: 0x18670, symSize: 0x74 } - - { offsetInCU: 0x2640, offset: 0x16999, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EEaSEOS3_, symObjAddr: 0x1328, symBinAddr: 0x18850, symSize: 0x6C } - - { offsetInCU: 0x2675, offset: 0x169CE, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE9push_backIJS4_EEEmDpOT_, symObjAddr: 0x16A8, symBinAddr: 0x188BC, symSize: 0x58 } - - { offsetInCU: 0x26B5, offset: 0x16A0E, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EED1Ev, symObjAddr: 0x174C, symBinAddr: 0x18960, symSize: 0x2C } - - { offsetInCU: 0x26E0, offset: 0x16A39, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5beginEv, symObjAddr: 0x1918, symBinAddr: 0x1898C, symSize: 0x84 } - - { offsetInCU: 0x2707, offset: 0x16A60, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E3endEv, symObjAddr: 0x199C, symBinAddr: 0x18A10, symSize: 0x38 } - - { offsetInCU: 0x2733, offset: 0x16A8C, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb0EEneILb0EEEbRKNS0_IS2_S2_XT_EEE, symObjAddr: 0x19D4, symBinAddr: 0x18A48, symSize: 0x34 } - - { offsetInCU: 0x2771, offset: 0x16ACA, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb0EEdeEv, symObjAddr: 0x1A08, symBinAddr: 0x18A7C, symSize: 0x34 } - - { offsetInCU: 0x2797, offset: 0x16AF0, size: 0x8, addend: 0x0, symName: __ZNK2bq7kv_pairINS_11string_baseIcEES2_E3keyEv, symObjAddr: 0x1B4C, symBinAddr: 0x18B38, symSize: 0x14 } - - { offsetInCU: 0x27BB, offset: 0x16B14, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairINS_11string_baseIcEES2_E5valueEv, symObjAddr: 0x1CE4, symBinAddr: 0x18B4C, symSize: 0x18 } - - { offsetInCU: 0x27DF, offset: 0x16B38, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb0EEppEv, symObjAddr: 0x1CFC, symBinAddr: 0x18B64, symSize: 0x88 } - - { offsetInCU: 0x2805, offset: 0x16B5E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E4findERKS2_, symObjAddr: 0x1E2C, symBinAddr: 0x18BEC, symSize: 0x74 } - - { offsetInCU: 0x2847, offset: 0x16BA0, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb0EEptEv, symObjAddr: 0x1EA0, symBinAddr: 0x18C60, symSize: 0x34 } - - { offsetInCU: 0x286D, offset: 0x16BC6, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb0EEeqILb0EEEbRKNS0_IS2_S2_XT_EEE, symObjAddr: 0x1ED4, symBinAddr: 0x18C94, symSize: 0xEC } - - { offsetInCU: 0x28AB, offset: 0x16C04, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9push_backIJRKS2_EEEmDpOT_, symObjAddr: 0x1FC0, symBinAddr: 0x18D80, symSize: 0x58 } - - { offsetInCU: 0x28EB, offset: 0x16C44, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_EixERKS2_, symObjAddr: 0x2018, symBinAddr: 0x18DD8, symSize: 0x90 } - - { offsetInCU: 0x2932, offset: 0x16C8B, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm1ENS_11string_baseIcEELb0EE3getEv, symObjAddr: 0x25F0, symBinAddr: 0x18E68, symSize: 0x14 } - - { offsetInCU: 0x2956, offset: 0x16CAF, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_11string_baseIcEELb0EE3getEv, symObjAddr: 0x2604, symBinAddr: 0x18E7C, symSize: 0x14 } - - { offsetInCU: 0x297A, offset: 0x16CD3, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EEC1EOS3_, symObjAddr: 0x26B0, symBinAddr: 0x18EA4, symSize: 0x34 } - - { offsetInCU: 0x29BF, offset: 0x16D18, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EEC2EOS3_, symObjAddr: 0x34B4, symBinAddr: 0x18ED8, symSize: 0x6C } - - { offsetInCU: 0x29F8, offset: 0x16D51, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_11string_baseIcEELm0EE8capacityEv, symObjAddr: 0x3520, symBinAddr: 0x18F44, symSize: 0x18 } - - { offsetInCU: 0x2A1F, offset: 0x16D78, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EED2Ev, symObjAddr: 0x3538, symBinAddr: 0x18F5C, symSize: 0x38 } - - { offsetInCU: 0x2A4A, offset: 0x16DA3, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEEEED2Ev, symObjAddr: 0x3570, symBinAddr: 0x18F94, symSize: 0x2C } - - { offsetInCU: 0x2A75, offset: 0x16DCE, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm1ENS_11string_baseIcEEED2Ev, symObjAddr: 0x359C, symBinAddr: 0x18FC0, symSize: 0x2C } - - { offsetInCU: 0x2AA0, offset: 0x16DF9, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm0ENS_11string_baseIcEEED2Ev, symObjAddr: 0x35C8, symBinAddr: 0x18FEC, symSize: 0x2C } - - { offsetInCU: 0x2ACB, offset: 0x16E24, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_11string_baseIcEELb0EED2Ev, symObjAddr: 0x35F4, symBinAddr: 0x19018, symSize: 0x2C } - - { offsetInCU: 0x2AF6, offset: 0x16E4F, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm1ENS_11string_baseIcEELb0EED2Ev, symObjAddr: 0x3620, symBinAddr: 0x19044, symSize: 0x2C } - - { offsetInCU: 0x2B21, offset: 0x16E7A, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EED2Ev, symObjAddr: 0x3698, symBinAddr: 0x19070, symSize: 0x2C } - - { offsetInCU: 0x2B4B, offset: 0x16EA4, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE5resetIS4_EENS_9enable_ifIXntsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x36C4, symBinAddr: 0x1909C, symSize: 0x6C } - - { offsetInCU: 0x2B80, offset: 0x16ED9, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_5tupleIJNS_11string_baseIcEES3_EEEE8destructEPS4_m, symObjAddr: 0x3730, symBinAddr: 0x19108, symSize: 0x2C } - - { offsetInCU: 0x2BB0, offset: 0x16F09, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_5tupleIJNS_11string_baseIcEES3_EEEE15destructor_implIS4_NS5_27non_trivial_destructor_typeEE8destructEPS4_m, symObjAddr: 0x375C, symBinAddr: 0x19134, symSize: 0x84 } - - { offsetInCU: 0x2BFC, offset: 0x16F55, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_5tupleIJNS_11string_baseIcEES3_EEEE8destructEPS4_, symObjAddr: 0x37E0, symBinAddr: 0x191B8, symSize: 0x24 } - - { offsetInCU: 0x2C1E, offset: 0x16F77, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_5tupleIJNS_11string_baseIcEES3_EEEE15destructor_implIS4_NS5_27non_trivial_destructor_typeEE8destructEPS4_, symObjAddr: 0x3804, symBinAddr: 0x191DC, symSize: 0x3C } - - { offsetInCU: 0x2C45, offset: 0x16F9E, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEC1IS4_EEPT_PKS6_, symObjAddr: 0x3840, symBinAddr: 0x19218, symSize: 0x3C } - - { offsetInCU: 0x2C94, offset: 0x16FED, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEC2IS4_EEPT_PKS6_, symObjAddr: 0x387C, symBinAddr: 0x19254, symSize: 0x70 } - - { offsetInCU: 0x2CE3, offset: 0x1703C, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEptEv, symObjAddr: 0x38EC, symBinAddr: 0x192C4, symSize: 0x18 } - - { offsetInCU: 0x2D09, offset: 0x17062, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EEC2Ev, symObjAddr: 0x44C4, symBinAddr: 0x192DC, symSize: 0x20 } - - { offsetInCU: 0x2D33, offset: 0x1708C, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEC1IRS2_JS5_EEEOT_DpOT0_, symObjAddr: 0x4AA0, symBinAddr: 0x192FC, symSize: 0x3C } - - { offsetInCU: 0x2D8D, offset: 0x170E6, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEC2IRS2_JS5_EEEOT_DpOT0_, symObjAddr: 0x4ADC, symBinAddr: 0x19338, symSize: 0x5C } - - { offsetInCU: 0x2DE7, offset: 0x17140, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm1ENS_11string_baseIcEEEC2IRS2_EEOT_, symObjAddr: 0x4B38, symBinAddr: 0x19394, symSize: 0x40 } - - { offsetInCU: 0x2E27, offset: 0x17180, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEEEEC2IRS2_JEEEOT_DpOT0_, symObjAddr: 0x4B78, symBinAddr: 0x193D4, symSize: 0x40 } - - { offsetInCU: 0x2E6D, offset: 0x171C6, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm1ENS_11string_baseIcEELb0EEC2IRS2_EEOT_, symObjAddr: 0x4BB8, symBinAddr: 0x19414, symSize: 0x40 } - - { offsetInCU: 0x2EAD, offset: 0x17206, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm0ENS_11string_baseIcEEEC2IRS2_EEOT_, symObjAddr: 0x4BF8, symBinAddr: 0x19454, symSize: 0x40 } - - { offsetInCU: 0x2EED, offset: 0x17246, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_11string_baseIcEELb0EEC2IRS2_EEOT_, symObjAddr: 0x4C38, symBinAddr: 0x19494, symSize: 0x40 } - - { offsetInCU: 0x2F2D, offset: 0x17286, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_, symObjAddr: 0x4C78, symBinAddr: 0x194D4, symSize: 0x288 } - - { offsetInCU: 0x2FBB, offset: 0x17314, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEgeIS4_S6_EEbRKNS0_IT_T0_EE, symObjAddr: 0x4F14, symBinAddr: 0x19770, symSize: 0xAC } - - { offsetInCU: 0x3001, offset: 0x1735A, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEleIS4_S6_EEbRKNS0_IT_T0_EE, symObjAddr: 0x4FC0, symBinAddr: 0x1981C, symSize: 0xAC } - - { offsetInCU: 0x3047, offset: 0x173A0, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEmiIS4_S6_EElRKNS0_IT_T0_EE, symObjAddr: 0x506C, symBinAddr: 0x198C8, symSize: 0xAC } - - { offsetInCU: 0x308D, offset: 0x173E6, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE12set_capacityEmb, symObjAddr: 0x5118, symBinAddr: 0x19974, symSize: 0x230 } - - { offsetInCU: 0x30FC, offset: 0x17455, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEplEm, symObjAddr: 0x5348, symBinAddr: 0x19BA4, symSize: 0x44 } - - { offsetInCU: 0x313E, offset: 0x17497, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEcvPS4_Ev, symObjAddr: 0x538C, symBinAddr: 0x19BE8, symSize: 0x18 } - - { offsetInCU: 0x3164, offset: 0x174BD, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE8destructENS_14array_iteratorIS4_S5_EE, symObjAddr: 0x54E4, symBinAddr: 0x19D40, symSize: 0x34 } - - { offsetInCU: 0x3199, offset: 0x174F2, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE9constructIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_, symObjAddr: 0x5518, symBinAddr: 0x19D74, symSize: 0x74 } - - { offsetInCU: 0x31F6, offset: 0x1754F, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEC1EOS3_, symObjAddr: 0x566C, symBinAddr: 0x19EC8, symSize: 0x34 } - - { offsetInCU: 0x322A, offset: 0x17583, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEC2EOS3_, symObjAddr: 0x56A0, symBinAddr: 0x19EFC, symSize: 0x48 } - - { offsetInCU: 0x3263, offset: 0x175BC, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm1ENS_11string_baseIcEEEC2EOS3_, symObjAddr: 0x56E8, symBinAddr: 0x19F44, symSize: 0x34 } - - { offsetInCU: 0x329C, offset: 0x175F5, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEEEEC2EOS3_, symObjAddr: 0x571C, symBinAddr: 0x19F78, symSize: 0x34 } - - { offsetInCU: 0x32D5, offset: 0x1762E, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm1ENS_11string_baseIcEELb0EEC2EOS3_, symObjAddr: 0x5750, symBinAddr: 0x19FAC, symSize: 0x34 } - - { offsetInCU: 0x330E, offset: 0x17667, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm0ENS_11string_baseIcEEEC2EOS3_, symObjAddr: 0x5784, symBinAddr: 0x19FE0, symSize: 0x34 } - - { offsetInCU: 0x3347, offset: 0x176A0, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_11string_baseIcEELb0EEC2EOS3_, symObjAddr: 0x57B8, symBinAddr: 0x1A014, symSize: 0x34 } - - { offsetInCU: 0x337B, offset: 0x176D4, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEpLEi, symObjAddr: 0x57EC, symBinAddr: 0x1A048, symSize: 0x30 } - - { offsetInCU: 0x33B4, offset: 0x1770D, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEaSEOS3_, symObjAddr: 0x581C, symBinAddr: 0x1A078, symSize: 0x48 } - - { offsetInCU: 0x33E9, offset: 0x17742, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm1ENS_11string_baseIcEEEaSEOS3_, symObjAddr: 0x5864, symBinAddr: 0x1A0C0, symSize: 0x34 } - - { offsetInCU: 0x341E, offset: 0x17777, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEEEEaSEOS3_, symObjAddr: 0x5898, symBinAddr: 0x1A0F4, symSize: 0x34 } - - { offsetInCU: 0x3453, offset: 0x177AC, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm1ENS_11string_baseIcEELb0EEaSEOS3_, symObjAddr: 0x58CC, symBinAddr: 0x1A128, symSize: 0x34 } - - { offsetInCU: 0x3488, offset: 0x177E1, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm0ENS_11string_baseIcEEEaSEOS3_, symObjAddr: 0x5900, symBinAddr: 0x1A15C, symSize: 0x34 } - - { offsetInCU: 0x34BD, offset: 0x17816, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_11string_baseIcEELb0EEaSEOS3_, symObjAddr: 0x5934, symBinAddr: 0x1A190, symSize: 0x34 } - - { offsetInCU: 0x34ED, offset: 0x17846, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headINS3_10value_nodeEEixEj, symObjAddr: 0x5968, symBinAddr: 0x1A1C4, symSize: 0x74 } - - { offsetInCU: 0x351F, offset: 0x17878, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb0EEC1EPNS_8hash_mapIS2_S2_EEjj, symObjAddr: 0x59DC, symBinAddr: 0x1A238, symSize: 0x44 } - - { offsetInCU: 0x3571, offset: 0x178CA, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb0EEC2EPNS_8hash_mapIS2_S2_EEjj, symObjAddr: 0x5A20, symBinAddr: 0x1A27C, symSize: 0x38 } - - { offsetInCU: 0x35C3, offset: 0x1791C, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E19get_next_node_indexEj, symObjAddr: 0x5A58, symBinAddr: 0x1A2B4, symSize: 0x68 } - - { offsetInCU: 0x35F9, offset: 0x17952, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headINS3_10value_nodeEEixEj, symObjAddr: 0x5AC0, symBinAddr: 0x1A31C, symSize: 0x74 } - - { offsetInCU: 0x362B, offset: 0x17984, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E32find_index_and_bucket_idx_by_keyERKS2_, symObjAddr: 0x5B34, symBinAddr: 0x1A390, symSize: 0x114 } - - { offsetInCU: 0x36B9, offset: 0x17A12, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E12buckets_sizeEv, symObjAddr: 0x5C74, symBinAddr: 0x1A4A4, symSize: 0x24 } - - { offsetInCU: 0x36DF, offset: 0x17A38, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E23get_bucket_index_by_keyERKS2_, symObjAddr: 0x5C98, symBinAddr: 0x1A4C8, symSize: 0x44 } - - { offsetInCU: 0x3724, offset: 0x17A7D, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headIjEixEj, symObjAddr: 0x5CDC, symBinAddr: 0x1A50C, symSize: 0x74 } - - { offsetInCU: 0x3756, offset: 0x17AAF, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcEeqERKS1_, symObjAddr: 0x5D50, symBinAddr: 0x1A580, symSize: 0xBC } - - { offsetInCU: 0x378B, offset: 0x17AE4, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headIjE4sizeEv, symObjAddr: 0x5E48, symBinAddr: 0x1A63C, symSize: 0x18 } - - { offsetInCU: 0x37AF, offset: 0x17B08, size: 0x8, addend: 0x0, symName: __ZN2bq28generic_type_hash_calculatorINS_11string_baseIcEEE9hash_codeERKS2_, symObjAddr: 0x5E60, symBinAddr: 0x1A654, symSize: 0x24 } - - { offsetInCU: 0x37D1, offset: 0x17B2A, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E24get_bucket_index_by_hashEy, symObjAddr: 0x5E84, symBinAddr: 0x1A678, symSize: 0x3C } - - { offsetInCU: 0x3807, offset: 0x17B60, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE9hash_codeEv, symObjAddr: 0x5EC0, symBinAddr: 0x1A6B4, symSize: 0x24 } - - { offsetInCU: 0x382E, offset: 0x17B87, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcE8get_hashERKS1_, symObjAddr: 0x5EE4, symBinAddr: 0x1A6D8, symSize: 0x94 } - - { offsetInCU: 0x3880, offset: 0x17BD9, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRKS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x6058, symBinAddr: 0x1A76C, symSize: 0x288 } - - { offsetInCU: 0x390E, offset: 0x17C67, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9constructIJRKS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x62F4, symBinAddr: 0x1AA08, symSize: 0x74 } - - { offsetInCU: 0x396B, offset: 0x17CC4, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb0EEcvbEv, symObjAddr: 0x6368, symBinAddr: 0x1AA7C, symSize: 0x44 } - - { offsetInCU: 0x3991, offset: 0x17CEA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E3addERKS2_, symObjAddr: 0x63AC, symBinAddr: 0x1AAC0, symSize: 0x64 } - - { offsetInCU: 0x39D3, offset: 0x17D2C, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E20iterator_legal_checkERKNS_17hash_map_iteratorIS2_S2_Lb1EEE, symObjAddr: 0x6410, symBinAddr: 0x1AB24, symSize: 0x124 } - - { offsetInCU: 0x3A08, offset: 0x17D61, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb1EEC1ILb0EEERKNS0_IS2_S2_XT_EEE, symObjAddr: 0x6534, symBinAddr: 0x1AC48, symSize: 0x34 } - - { offsetInCU: 0x3A48, offset: 0x17DA1, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headINS3_10value_nodeEE4sizeEv, symObjAddr: 0x6568, symBinAddr: 0x1AC7C, symSize: 0x18 } - - { offsetInCU: 0x3A6C, offset: 0x17DC5, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb1EEC2ILb0EEERKNS0_IS2_S2_XT_EEE, symObjAddr: 0x6580, symBinAddr: 0x1AC94, symSize: 0x3C } - - { offsetInCU: 0x3AAC, offset: 0x17E05, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_, symObjAddr: 0x65BC, symBinAddr: 0x1ACD0, symSize: 0x304 } - - { offsetInCU: 0x3BA4, offset: 0x17EFD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E15construct_valueERNS_17hash_map_iteratorIS2_S2_Lb0EEE, symObjAddr: 0x68C0, symBinAddr: 0x1AFD4, symSize: 0x5C } - - { offsetInCU: 0x3BD9, offset: 0x17F32, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E4sizeEv, symObjAddr: 0x691C, symBinAddr: 0x1B030, symSize: 0x18 } - - { offsetInCU: 0x3BFF, offset: 0x17F58, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj, symObjAddr: 0x6934, symBinAddr: 0x1B048, symSize: 0x494 } - - { offsetInCU: 0x3D04, offset: 0x1805D, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E10nodes_sizeEv, symObjAddr: 0x7088, symBinAddr: 0x1B79C, symSize: 0x28 } - - { offsetInCU: 0x3D2A, offset: 0x18083, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headIjEixEj, symObjAddr: 0x70B0, symBinAddr: 0x1B7C4, symSize: 0x74 } - - { offsetInCU: 0x3D5C, offset: 0x180B5, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E13construct_keyIRKS2_EEvRNS_17hash_map_iteratorIS2_S2_Lb0EEEOT_, symObjAddr: 0x7124, symBinAddr: 0x1B838, symSize: 0x68 } - - { offsetInCU: 0x3DA8, offset: 0x18101, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E8destructERNS_17hash_map_iteratorIS2_S2_Lb0EEE, symObjAddr: 0x7210, symBinAddr: 0x1B8A0, symSize: 0x3C } - - { offsetInCU: 0x3DDE, offset: 0x18137, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12destruct_keyERNS_17hash_map_iteratorIS2_S2_Lb0EEE, symObjAddr: 0x724C, symBinAddr: 0x1B8DC, symSize: 0x2C } - - { offsetInCU: 0x3E14, offset: 0x1816D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14destruct_valueERNS_17hash_map_iteratorIS2_S2_Lb0EEE, symObjAddr: 0x7278, symBinAddr: 0x1B908, symSize: 0x30 } - - { offsetInCU: 0x26, offset: 0x18254, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE, symObjAddr: 0x0, symBinAddr: 0x1B938, symSize: 0x130 } - - { offsetInCU: 0x27C2, offset: 0x1A9F0, size: 0x8, addend: 0x0, symName: __ZN2bqL30trans_parson_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_, symObjAddr: 0x2C8, symBinAddr: 0x1BADC, symSize: 0x260 } - - { offsetInCU: 0x2863, offset: 0x1AA91, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRbEEONS_16remove_referenceIT_E4typeEOS3_, symObjAddr: 0x1DA8, symBinAddr: 0x1C840, symSize: 0x14 } - - { offsetInCU: 0x2898, offset: 0x1AAC6, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRdEEONS_16remove_referenceIT_E4typeEOS3_, symObjAddr: 0x1E54, symBinAddr: 0x1C8EC, symSize: 0x14 } - - { offsetInCU: 0x28CD, offset: 0x1AAFB, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRxEEONS_16remove_referenceIT_E4typeEOS3_, symObjAddr: 0x1F00, symBinAddr: 0x1C998, symSize: 0x14 } - - { offsetInCU: 0x2902, offset: 0x1AB30, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_5arrayINS_10unique_ptrINS_14property_valueEEELm0EEEEEONS_16remove_referenceIT_E4typeEOS8_, symObjAddr: 0x1FF4, symBinAddr: 0x1CA44, symSize: 0x14 } - - { offsetInCU: 0x2937, offset: 0x1AB65, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEEEEEONS_16remove_referenceIT_E4typeEOSA_, symObjAddr: 0x203C, symBinAddr: 0x1CA8C, symSize: 0x14 } - - { offsetInCU: 0x296C, offset: 0x1AB9A, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_14property_valueEEEONS_16remove_referenceIT_E4typeEOS4_, symObjAddr: 0x296C, symBinAddr: 0x1D348, symSize: 0x14 } - - { offsetInCU: 0x29A1, offset: 0x1ABCF, size: 0x8, addend: 0x0, symName: __ZN2bq4moveINS_8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEEEEEONS_16remove_referenceIT_E4typeEOS9_, symObjAddr: 0x2C90, symBinAddr: 0x1D66C, symSize: 0x14 } - - { offsetInCU: 0x2A0B, offset: 0x1AC39, size: 0x8, addend: 0x0, symName: __ZN2bq4moveINS_5arrayINS_10unique_ptrINS_14property_valueEEELm0EEEEEONS_16remove_referenceIT_E4typeEOS7_, symObjAddr: 0x36B8, symBinAddr: 0x1D9A0, symSize: 0x14 } - - { offsetInCU: 0x2A40, offset: 0x1AC6E, size: 0x8, addend: 0x0, symName: __ZN2bq4moveINS_14property_valueEEEONS_16remove_referenceIT_E4typeEOS3_, symObjAddr: 0x5088, symBinAddr: 0x1E238, symSize: 0x14 } - - { offsetInCU: 0x2A75, offset: 0x1ACA3, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_, symObjAddr: 0x509C, symBinAddr: 0x1E24C, symSize: 0x4F0 } - - { offsetInCU: 0x2B77, offset: 0x1ADA5, size: 0x8, addend: 0x0, symName: __ZN2bqL15parse_array_keyENS_11string_baseIcEE, symObjAddr: 0x6808, symBinAddr: 0x1E73C, symSize: 0x60 } - - { offsetInCU: 0x2BB0, offset: 0x1ADDE, size: 0x8, addend: 0x0, symName: __ZN2bqL17parse_array_valueENS_11string_baseIcEE, symObjAddr: 0x68AC, symBinAddr: 0x1E7E0, symSize: 0xBC } - - { offsetInCU: 0x2BDD, offset: 0x1AE0B, size: 0x8, addend: 0x0, symName: __ZN2bqL18parse_number_valueERdPKc, symObjAddr: 0x6A4C, symBinAddr: 0x1E89C, symSize: 0x160 } - - { offsetInCU: 0x2C33, offset: 0x1AE61, size: 0x8, addend: 0x0, symName: __ZN2bqL19parse_boolean_valueERbPKc, symObjAddr: 0x6BAC, symBinAddr: 0x1E9FC, symSize: 0xD4 } - - { offsetInCU: 0x2C89, offset: 0x1AEB7, size: 0x8, addend: 0x0, symName: __ZN2bqL16parse_null_valueEPKc, symObjAddr: 0x6C80, symBinAddr: 0x1EAD0, symSize: 0x78 } - - { offsetInCU: 0x2CC3, offset: 0x1AEF1, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_14property_valueEEEOT_RNS_16remove_referenceIS2_E4typeE, symObjAddr: 0x6DBC, symBinAddr: 0x1EC0C, symSize: 0x14 } - - { offsetInCU: 0x2CF8, offset: 0x1AF26, size: 0x8, addend: 0x0, symName: __ZN2bqL10is_decimalEPKcm, symObjAddr: 0x6E44, symBinAddr: 0x1EC20, symSize: 0x158 } - - { offsetInCU: 0x2DE8, offset: 0x1B016, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIPNS_14property_valueEEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0x911C, symBinAddr: 0x1F7DC, symSize: 0x14 } - - { offsetInCU: 0x2E1D, offset: 0x1B04B, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveINS_10unique_ptrINS_14property_valueEEEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS5_EE5valueEvE4typeEPS5_S8_m, symObjAddr: 0x934C, symBinAddr: 0x1FA0C, symSize: 0x11C } - - { offsetInCU: 0x2ED8, offset: 0x1B106, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_10unique_ptrINS_14property_valueEEEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x9514, symBinAddr: 0x1FBD4, symSize: 0x14 } - - { offsetInCU: 0x2F0D, offset: 0x1B13B, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_10unique_ptrINS_14property_valueEEEEEONS_16remove_referenceIT_E4typeEOS6_, symObjAddr: 0xA098, symBinAddr: 0x20758, symSize: 0x14 } - - { offsetInCU: 0x2F98, offset: 0x1B1C6, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEEEEEOT_RNS_16remove_referenceIS8_E4typeE, symObjAddr: 0xADB8, symBinAddr: 0x212D4, symSize: 0x14 } - - { offsetInCU: 0x2FCD, offset: 0x1B1FB, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_5arrayINS_10unique_ptrINS_14property_valueEEELm0EEEEEOT_RNS_16remove_referenceIS6_E4typeE, symObjAddr: 0xB340, symBinAddr: 0x213E4, symSize: 0x14 } - - { offsetInCU: 0x3002, offset: 0x1B230, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyINS_10unique_ptrINS_14property_valueEEEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS5_EE5valueEvE4typeEPS5_S8_m, symObjAddr: 0xB3C0, symBinAddr: 0x21464, symSize: 0xB4 } - - { offsetInCU: 0x3074, offset: 0x1B2A2, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRbEEOT_RNS_16remove_referenceIS2_E4typeE, symObjAddr: 0xB770, symBinAddr: 0x21518, symSize: 0x14 } - - { offsetInCU: 0x30A9, offset: 0x1B2D7, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRdEEOT_RNS_16remove_referenceIS2_E4typeE, symObjAddr: 0xB784, symBinAddr: 0x2152C, symSize: 0x14 } - - { offsetInCU: 0x30DE, offset: 0x1B30C, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRxEEOT_RNS_16remove_referenceIS2_E4typeE, symObjAddr: 0xB798, symBinAddr: 0x21540, symSize: 0x14 } - - { offsetInCU: 0x357E, offset: 0x1B7AC, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14get_null_valueEv, symObjAddr: 0x2174, symBinAddr: 0x1CBC4, symSize: 0x98 } - - { offsetInCU: 0x35A2, offset: 0x1B7D0, size: 0x8, addend: 0x0, symName: __ZZN2bq14property_value14get_null_valueEvE10null_value, symObjAddr: 0x2EDA0, symBinAddr: 0x68988, symSize: 0x0 } - - { offsetInCU: 0x35BC, offset: 0x1B7EA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj, symObjAddr: 0x9BAC, symBinAddr: 0x2026C, symSize: 0x2F0 } - - { offsetInCU: 0x3796, offset: 0x1B9C4, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE, symObjAddr: 0x0, symBinAddr: 0x1B938, symSize: 0x130 } - - { offsetInCU: 0x383A, offset: 0x1BA68, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueC1ENS_24enum_property_value_typeE, symObjAddr: 0x130, symBinAddr: 0x1BA68, symSize: 0x34 } - - { offsetInCU: 0x3888, offset: 0x1BAB6, size: 0x8, addend: 0x0, symName: __ZN2bq8propertyC1Ev, symObjAddr: 0x164, symBinAddr: 0x1BA9C, symSize: 0x2C } - - { offsetInCU: 0x38B2, offset: 0x1BAE0, size: 0x8, addend: 0x0, symName: __ZN2bq8property4mapsEv, symObjAddr: 0x190, symBinAddr: 0x1BAC8, symSize: 0x14 } - - { offsetInCU: 0x38D6, offset: 0x1BB04, size: 0x8, addend: 0x0, symName: __ZN2bq8propertyD1Ev, symObjAddr: 0x63C, symBinAddr: 0x1BD3C, symSize: 0x2C } - - { offsetInCU: 0x3900, offset: 0x1BB2E, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueD1Ev, symObjAddr: 0x668, symBinAddr: 0x1BD68, symSize: 0x2C } - - { offsetInCU: 0x392B, offset: 0x1BB59, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value10clear_dataEv, symObjAddr: 0xE18, symBinAddr: 0x1BD94, symSize: 0xBC } - - { offsetInCU: 0x3951, offset: 0x1BB7F, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value9as_stringEb, symObjAddr: 0xEEC, symBinAddr: 0x1BE68, symSize: 0x98 } - - { offsetInCU: 0x3983, offset: 0x1BBB1, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value8as_arrayEb, symObjAddr: 0xF84, symBinAddr: 0x1BF00, symSize: 0x98 } - - { offsetInCU: 0x39B5, offset: 0x1BBE3, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EED1Ev, symObjAddr: 0x101C, symBinAddr: 0x1BF98, symSize: 0x2C } - - { offsetInCU: 0x39DF, offset: 0x1BC0D, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value9as_objectEb, symObjAddr: 0x1048, symBinAddr: 0x1BFC4, symSize: 0x98 } - - { offsetInCU: 0x3A11, offset: 0x1BC3F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEED1Ev, symObjAddr: 0x10E0, symBinAddr: 0x1C05C, symSize: 0x2C } - - { offsetInCU: 0x3A3B, offset: 0x1BC69, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvbEv, symObjAddr: 0x1420, symBinAddr: 0x1C088, symSize: 0x34 } - - { offsetInCU: 0x3A5F, offset: 0x1BC8D, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueaSEb, symObjAddr: 0x1454, symBinAddr: 0x1C0BC, symSize: 0x64 } - - { offsetInCU: 0x3A95, offset: 0x1BCC3, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueaSEd, symObjAddr: 0x14E8, symBinAddr: 0x1C120, symSize: 0x5C } - - { offsetInCU: 0x3ACB, offset: 0x1BCF9, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvxEv, symObjAddr: 0x1544, symBinAddr: 0x1C17C, symSize: 0x30 } - - { offsetInCU: 0x3AF2, offset: 0x1BD20, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueaSEx, symObjAddr: 0x1574, symBinAddr: 0x1C1AC, symSize: 0x60 } - - { offsetInCU: 0x3B28, offset: 0x1BD56, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvNS_11string_baseIcEEEv, symObjAddr: 0x15D4, symBinAddr: 0x1C20C, symSize: 0x40 } - - { offsetInCU: 0x3B4F, offset: 0x1BD7D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EEC1Ev, symObjAddr: 0x169C, symBinAddr: 0x1C24C, symSize: 0x2C } - - { offsetInCU: 0x3B79, offset: 0x1BDA7, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE5beginEv, symObjAddr: 0x16C8, symBinAddr: 0x1C278, symSize: 0x34 } - - { offsetInCU: 0x3BA0, offset: 0x1BDCE, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE3endEv, symObjAddr: 0x16FC, symBinAddr: 0x1C2AC, symSize: 0x3C } - - { offsetInCU: 0x3BCC, offset: 0x1BDFA, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEEdeEv, symObjAddr: 0x17FC, symBinAddr: 0x1C2E8, symSize: 0x18 } - - { offsetInCU: 0x3BF5, offset: 0x1BE23, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE9push_backIJPS2_EEEmDpOT_, symObjAddr: 0x1814, symBinAddr: 0x1C300, symSize: 0x58 } - - { offsetInCU: 0x3C35, offset: 0x1BE63, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEEC1Ej, symObjAddr: 0x18C0, symBinAddr: 0x1C358, symSize: 0x34 } - - { offsetInCU: 0x3C6D, offset: 0x1BE9B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5beginEv, symObjAddr: 0x18F4, symBinAddr: 0x1C38C, symSize: 0x84 } - - { offsetInCU: 0x3C94, offset: 0x1BEC2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE3endEv, symObjAddr: 0x1978, symBinAddr: 0x1C410, symSize: 0x38 } - - { offsetInCU: 0x3CC0, offset: 0x1BEEE, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb0EEneILb0EEEbRKNS0_IS2_S5_XT_EEE, symObjAddr: 0x19B0, symBinAddr: 0x1C448, symSize: 0x34 } - - { offsetInCU: 0x3CFE, offset: 0x1BF2C, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb0EEdeEv, symObjAddr: 0x19E4, symBinAddr: 0x1C47C, symSize: 0x34 } - - { offsetInCU: 0x3D24, offset: 0x1BF52, size: 0x8, addend: 0x0, symName: __ZNK2bq7kv_pairINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE3keyEv, symObjAddr: 0x1A18, symBinAddr: 0x1C4B0, symSize: 0x14 } - - { offsetInCU: 0x3D48, offset: 0x1BF76, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5valueEv, symObjAddr: 0x1A2C, symBinAddr: 0x1C4C4, symSize: 0x18 } - - { offsetInCU: 0x3D6C, offset: 0x1BF9A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE3addIPS4_EENS_17hash_map_iteratorIS2_S5_Lb0EEERKS2_OT_, symObjAddr: 0x1A44, symBinAddr: 0x1C4DC, symSize: 0x74 } - - { offsetInCU: 0x3DC5, offset: 0x1BFF3, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb0EEppEv, symObjAddr: 0x1AB8, symBinAddr: 0x1C550, symSize: 0x88 } - - { offsetInCU: 0x3DEB, offset: 0x1C019, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14copy_data_fromEOS0_, symObjAddr: 0x1B40, symBinAddr: 0x1C5D8, symSize: 0x250 } - - { offsetInCU: 0x3E21, offset: 0x1C04F, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value7as_boolEb, symObjAddr: 0x1DBC, symBinAddr: 0x1C854, symSize: 0x98 } - - { offsetInCU: 0x3E53, offset: 0x1C081, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value10as_decimalEb, symObjAddr: 0x1E68, symBinAddr: 0x1C900, symSize: 0x98 } - - { offsetInCU: 0x3E85, offset: 0x1C0B3, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value11as_integralEb, symObjAddr: 0x1F14, symBinAddr: 0x1C9AC, symSize: 0x98 } - - { offsetInCU: 0x3EB7, offset: 0x1C0E5, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EEC1EOS4_, symObjAddr: 0x2008, symBinAddr: 0x1CA58, symSize: 0x34 } - - { offsetInCU: 0x3EF0, offset: 0x1C11E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEEC1EOS6_, symObjAddr: 0x2050, symBinAddr: 0x1CAA0, symSize: 0x34 } - - { offsetInCU: 0x3F28, offset: 0x1C156, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value21check_and_switch_typeENS_24enum_property_value_typeEb, symObjAddr: 0x2084, symBinAddr: 0x1CAD4, symSize: 0xF0 } - - { offsetInCU: 0x3F6D, offset: 0x1C19B, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value19add_null_array_itemEv, symObjAddr: 0x220C, symBinAddr: 0x1CC5C, symSize: 0x70 } - - { offsetInCU: 0x3F94, offset: 0x1C1C2, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value8is_arrayEv, symObjAddr: 0x227C, symBinAddr: 0x1CCCC, symSize: 0x30 } - - { offsetInCU: 0x3FB8, offset: 0x1C1E6, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixEm, symObjAddr: 0x22AC, symBinAddr: 0x1CCFC, symSize: 0x154 } - - { offsetInCU: 0x400B, offset: 0x1C239, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE4sizeEv, symObjAddr: 0x2400, symBinAddr: 0x1CE50, symSize: 0x18 } - - { offsetInCU: 0x4032, offset: 0x1C260, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixERKNS_11string_baseIcEE, symObjAddr: 0x2444, symBinAddr: 0x1CE68, symSize: 0x1E0 } - - { offsetInCU: 0x4078, offset: 0x1C2A6, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueC2ENS_24enum_property_value_typeE, symObjAddr: 0x2624, symBinAddr: 0x1D048, symSize: 0x1AC } - - { offsetInCU: 0x40B2, offset: 0x1C2E0, size: 0x8, addend: 0x0, symName: __ZN2bq12aligned_typeIA56_cLj8EEC1Ev, symObjAddr: 0x27E8, symBinAddr: 0x1D20C, symSize: 0x2C } - - { offsetInCU: 0x40DA, offset: 0x1C308, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value15init_debug_ptrsEv, symObjAddr: 0x2814, symBinAddr: 0x1D238, symSize: 0xB4 } - - { offsetInCU: 0x40FE, offset: 0x1C32C, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueC2EOS0_, symObjAddr: 0x2910, symBinAddr: 0x1D2EC, symSize: 0x5C } - - { offsetInCU: 0x4138, offset: 0x1C366, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueC1EOS0_, symObjAddr: 0x2980, symBinAddr: 0x1D35C, symSize: 0x34 } - - { offsetInCU: 0x4172, offset: 0x1C3A0, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueD2Ev, symObjAddr: 0x29B4, symBinAddr: 0x1D390, symSize: 0x38 } - - { offsetInCU: 0x419D, offset: 0x1C3CB, size: 0x8, addend: 0x0, symName: __ZN2bq12aligned_typeIA56_cLj8EED1Ev, symObjAddr: 0x29EC, symBinAddr: 0x1D3C8, symSize: 0x2C } - - { offsetInCU: 0x41C5, offset: 0x1C3F3, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valueixERKNS_11string_baseIcEE, symObjAddr: 0x2A18, symBinAddr: 0x1D3F4, symSize: 0x9C } - - { offsetInCU: 0x420A, offset: 0x1C438, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value9is_objectEv, symObjAddr: 0x2AB4, symBinAddr: 0x1D490, symSize: 0x30 } - - { offsetInCU: 0x422E, offset: 0x1C45C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE4findERKS2_, symObjAddr: 0x2AE4, symBinAddr: 0x1D4C0, symSize: 0x74 } - - { offsetInCU: 0x4270, offset: 0x1C49E, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb0EEcvbEv, symObjAddr: 0x2B58, symBinAddr: 0x1D534, symSize: 0x44 } - - { offsetInCU: 0x4296, offset: 0x1C4C4, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb0EEptEv, symObjAddr: 0x2B9C, symBinAddr: 0x1D578, symSize: 0x34 } - - { offsetInCU: 0x42BC, offset: 0x1C4EA, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEE3getEv, symObjAddr: 0x2BD0, symBinAddr: 0x1D5AC, symSize: 0x18 } - - { offsetInCU: 0x42E0, offset: 0x1C50E, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateINS_8hash_mapINS_11string_baseIcEENS_10unique_ptrIS0_EEEES7_EEvOT_RT0_bNS_24enum_property_value_typeE, symObjAddr: 0x2BE8, symBinAddr: 0x1D5C4, symSize: 0xA8 } - - { offsetInCU: 0x434E, offset: 0x1C57C, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb0EEeqILb0EEEbRKNS0_IS2_S5_XT_EEE, symObjAddr: 0x2CA4, symBinAddr: 0x1D680, symSize: 0xEC } - - { offsetInCU: 0x4391, offset: 0x1C5BF, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_10unique_ptrINS_14property_valueEEENS_5arrayIS3_Lm0EEEEplEm, symObjAddr: 0x3434, symBinAddr: 0x1D76C, symSize: 0x44 } - - { offsetInCU: 0x43D3, offset: 0x1C601, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value7is_nullEv, symObjAddr: 0x34C8, symBinAddr: 0x1D7B0, symSize: 0x30 } - - { offsetInCU: 0x43F7, offset: 0x1C625, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valueixEm, symObjAddr: 0x34F8, symBinAddr: 0x1D7E0, symSize: 0xA4 } - - { offsetInCU: 0x442D, offset: 0x1C65B, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EEixEm, symObjAddr: 0x359C, symBinAddr: 0x1D884, symSize: 0x74 } - - { offsetInCU: 0x4462, offset: 0x1C690, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateINS_5arrayINS_10unique_ptrIS0_EELm0EEES5_EEvOT_RT0_bNS_24enum_property_value_typeE, symObjAddr: 0x3610, symBinAddr: 0x1D8F8, symSize: 0xA8 } - - { offsetInCU: 0x44D0, offset: 0x1C6FE, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE12set_capacityEmb, symObjAddr: 0x36CC, symBinAddr: 0x1D9B4, symSize: 0x224 } - - { offsetInCU: 0x453F, offset: 0x1C76D, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value18get_object_key_setEv, symObjAddr: 0x3968, symBinAddr: 0x1DBD8, symSize: 0x12C } - - { offsetInCU: 0x4585, offset: 0x1C7B3, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value10array_sizeEv, symObjAddr: 0x3B44, symBinAddr: 0x1DD04, symSize: 0x58 } - - { offsetInCU: 0x45AC, offset: 0x1C7DA, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE4sizeEv, symObjAddr: 0x3BF4, symBinAddr: 0x1DD5C, symSize: 0x18 } - - { offsetInCU: 0x45D2, offset: 0x1C800, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueaSEOS0_, symObjAddr: 0x3C48, symBinAddr: 0x1DD74, symSize: 0x44 } - - { offsetInCU: 0x460D, offset: 0x1C83B, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateIRbbEEvOT_RT0_bNS_24enum_property_value_typeE, symObjAddr: 0x3C8C, symBinAddr: 0x1DDB8, symSize: 0xB0 } - - { offsetInCU: 0x4680, offset: 0x1C8AE, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateIRddEEvOT_RT0_bNS_24enum_property_value_typeE, symObjAddr: 0x3D3C, symBinAddr: 0x1DE68, symSize: 0xA8 } - - { offsetInCU: 0x46F3, offset: 0x1C921, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateIRxxEEvOT_RT0_bNS_24enum_property_value_typeE, symObjAddr: 0x3DE4, symBinAddr: 0x1DF10, symSize: 0xA8 } - - { offsetInCU: 0x4761, offset: 0x1C98F, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueaSERKNS_11string_baseIcEE, symObjAddr: 0x3FB8, symBinAddr: 0x1DFB8, symSize: 0x60 } - - { offsetInCU: 0x4797, offset: 0x1C9C5, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateIRKNS_11string_baseIcEES3_EEvOT_RT0_bNS_24enum_property_value_typeE, symObjAddr: 0x4018, symBinAddr: 0x1E018, symSize: 0xA8 } - - { offsetInCU: 0x4805, offset: 0x1CA33, size: 0x8, addend: 0x0, symName: __ZN2bq8propertyC2Ev, symObjAddr: 0x40C0, symBinAddr: 0x1E0C0, symSize: 0x3C } - - { offsetInCU: 0x482F, offset: 0x1CA5D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_EC1Ej, symObjAddr: 0x40FC, symBinAddr: 0x1E0FC, symSize: 0x34 } - - { offsetInCU: 0x4867, offset: 0x1CA95, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_EC2Ej, symObjAddr: 0x4130, symBinAddr: 0x1E130, symSize: 0x78 } - - { offsetInCU: 0x489F, offset: 0x1CACD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headIjEC1Ev, symObjAddr: 0x41A8, symBinAddr: 0x1E1A8, symSize: 0x2C } - - { offsetInCU: 0x48C7, offset: 0x1CAF5, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headINS3_10value_nodeEEC1Ev, symObjAddr: 0x41D4, symBinAddr: 0x1E1D4, symSize: 0x2C } - - { offsetInCU: 0x48EF, offset: 0x1CB1D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headIjEC2Ev, symObjAddr: 0x4978, symBinAddr: 0x1E200, symSize: 0x1C } - - { offsetInCU: 0x4917, offset: 0x1CB45, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headINS3_10value_nodeEEC2Ev, symObjAddr: 0x4994, symBinAddr: 0x1E21C, symSize: 0x1C } - - { offsetInCU: 0x4944, offset: 0x1CB72, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14add_array_itemIS0_EENS_9enable_ifIXsr2bq7is_sameINS_5decayIT_E4typeES0_EE5valueERS0_E4typeEOS4_, symObjAddr: 0x6868, symBinAddr: 0x1E79C, symSize: 0x44 } - - { offsetInCU: 0x498D, offset: 0x1CBBB, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE4findERKS1_, symObjAddr: 0x6CF8, symBinAddr: 0x1EB48, symSize: 0xC4 } - - { offsetInCU: 0x49D1, offset: 0x1CBFF, size: 0x8, addend: 0x0, symName: __Z6strchrB7v160006Ua9enable_ifIXLb1EEEPKci, symObjAddr: 0x6F9C, symBinAddr: 0x1ED78, symSize: 0x2C } - - { offsetInCU: 0x4A0B, offset: 0x1CC39, size: 0x8, addend: 0x0, symName: __ZN2bq8propertyD2Ev, symObjAddr: 0x7A30, symBinAddr: 0x1EDA4, symSize: 0x38 } - - { offsetInCU: 0x4A35, offset: 0x1CC63, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_ED1Ev, symObjAddr: 0x7A68, symBinAddr: 0x1EDDC, symSize: 0x2C } - - { offsetInCU: 0x4A5F, offset: 0x1CC8D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_ED2Ev, symObjAddr: 0x7A94, symBinAddr: 0x1EE08, symSize: 0x2C } - - { offsetInCU: 0x4A89, offset: 0x1CCB7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5resetEv, symObjAddr: 0x7AC0, symBinAddr: 0x1EE34, symSize: 0xF8 } - - { offsetInCU: 0x4ACD, offset: 0x1CCFB, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value7is_boolEv, symObjAddr: 0x7EB4, symBinAddr: 0x1EF2C, symSize: 0x30 } - - { offsetInCU: 0x4AF1, offset: 0x1CD1F, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value11is_integralEv, symObjAddr: 0x7F14, symBinAddr: 0x1EF5C, symSize: 0x30 } - - { offsetInCU: 0x4B15, offset: 0x1CD43, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value9is_stringEv, symObjAddr: 0x7F44, symBinAddr: 0x1EF8C, symSize: 0x30 } - - { offsetInCU: 0x4B39, offset: 0x1CD67, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value8get_typeEv, symObjAddr: 0x82AC, symBinAddr: 0x1EFBC, symSize: 0x18 } - - { offsetInCU: 0x4B5D, offset: 0x1CD8B, size: 0x8, addend: 0x0, symName: __ZNK2bq12aligned_typeIA56_cLj8EE3getEv, symObjAddr: 0x82DC, symBinAddr: 0x1EFD4, symSize: 0x24 } - - { offsetInCU: 0x4B81, offset: 0x1CDAF, size: 0x8, addend: 0x0, symName: __ZNK2bq12aligned_typeIA56_cLj8EE8get_addrEv, symObjAddr: 0x8300, symBinAddr: 0x1EFF8, symSize: 0x3C } - - { offsetInCU: 0x4BA5, offset: 0x1CDD3, size: 0x8, addend: 0x0, symName: __ZNK2bq12aligned_typeIA56_cLj8EE6offsetEv, symObjAddr: 0x833C, symBinAddr: 0x1F034, symSize: 0x1C } - - { offsetInCU: 0x4BC9, offset: 0x1CDF7, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EED2Ev, symObjAddr: 0x8990, symBinAddr: 0x1F050, symSize: 0x2C } - - { offsetInCU: 0x4BF3, offset: 0x1CE21, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE5resetIS3_EENS_9enable_ifIXntsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x89BC, symBinAddr: 0x1F07C, symSize: 0x6C } - - { offsetInCU: 0x4C28, offset: 0x1CE56, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_10unique_ptrINS_14property_valueEEEE8destructEPS3_m, symObjAddr: 0x8A28, symBinAddr: 0x1F0E8, symSize: 0x2C } - - { offsetInCU: 0x4C58, offset: 0x1CE86, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_10unique_ptrINS_14property_valueEEEE15destructor_implIS3_NS4_27non_trivial_destructor_typeEE8destructEPS3_m, symObjAddr: 0x8A54, symBinAddr: 0x1F114, symSize: 0x7C } - - { offsetInCU: 0x4CA4, offset: 0x1CED2, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_10unique_ptrINS_14property_valueEEEE8destructEPS3_, symObjAddr: 0x8AD0, symBinAddr: 0x1F190, symSize: 0x24 } - - { offsetInCU: 0x4CC6, offset: 0x1CEF4, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_10unique_ptrINS_14property_valueEEEE15destructor_implIS3_NS4_27non_trivial_destructor_typeEE8destructEPS3_, symObjAddr: 0x8AF4, symBinAddr: 0x1F1B4, symSize: 0x3C } - - { offsetInCU: 0x4CE8, offset: 0x1CF16, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEED1Ev, symObjAddr: 0x8B30, symBinAddr: 0x1F1F0, symSize: 0x2C } - - { offsetInCU: 0x4D10, offset: 0x1CF3E, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEED2Ev, symObjAddr: 0x8B5C, symBinAddr: 0x1F21C, symSize: 0x2C } - - { offsetInCU: 0x4D38, offset: 0x1CF66, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEE5resetEv, symObjAddr: 0x8B88, symBinAddr: 0x1F248, symSize: 0x6C } - - { offsetInCU: 0x4D5C, offset: 0x1CF8A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEED2Ev, symObjAddr: 0x8BF4, symBinAddr: 0x1F2B4, symSize: 0x2C } - - { offsetInCU: 0x4D86, offset: 0x1CFB4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5resetEv, symObjAddr: 0x8C20, symBinAddr: 0x1F2E0, symSize: 0xF8 } - - { offsetInCU: 0x4DCA, offset: 0x1CFF8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE8destructERNS_17hash_map_iteratorIS2_S5_Lb0EEE, symObjAddr: 0x8D18, symBinAddr: 0x1F3D8, symSize: 0x3C } - - { offsetInCU: 0x4E00, offset: 0x1D02E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12destruct_keyERNS_17hash_map_iteratorIS2_S5_Lb0EEE, symObjAddr: 0x8D54, symBinAddr: 0x1F414, symSize: 0x2C } - - { offsetInCU: 0x4E36, offset: 0x1D064, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14destruct_valueERNS_17hash_map_iteratorIS2_S5_Lb0EEE, symObjAddr: 0x8D80, symBinAddr: 0x1F440, symSize: 0x30 } - - { offsetInCU: 0x4E6B, offset: 0x1D099, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EEC2Ev, symObjAddr: 0x8DB0, symBinAddr: 0x1F470, symSize: 0x20 } - - { offsetInCU: 0x4E9A, offset: 0x1D0C8, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_10unique_ptrINS_14property_valueEEENS_5arrayIS3_Lm0EEEEC1IS3_EEPT_PKS5_, symObjAddr: 0x8DD0, symBinAddr: 0x1F490, symSize: 0x3C } - - { offsetInCU: 0x4EE9, offset: 0x1D117, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_10unique_ptrINS_14property_valueEEENS_5arrayIS3_Lm0EEEEC2IS3_EEPT_PKS5_, symObjAddr: 0x8E0C, symBinAddr: 0x1F4CC, symSize: 0x70 } - - { offsetInCU: 0x4F38, offset: 0x1D166, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_10unique_ptrINS_14property_valueEEENS_5arrayIS3_Lm0EEEEptEv, symObjAddr: 0x8E7C, symBinAddr: 0x1F53C, symSize: 0x18 } - - { offsetInCU: 0x4F5E, offset: 0x1D18C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE6insertIJPS2_EEEvNS_14array_iteratorIS3_S4_EEDpOT_, symObjAddr: 0x8E94, symBinAddr: 0x1F554, symSize: 0x288 } - - { offsetInCU: 0x4FEC, offset: 0x1D21A, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_10unique_ptrINS_14property_valueEEENS_5arrayIS3_Lm0EEEEgeIS3_S5_EEbRKNS0_IT_T0_EE, symObjAddr: 0x9130, symBinAddr: 0x1F7F0, symSize: 0xAC } - - { offsetInCU: 0x5032, offset: 0x1D260, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_10unique_ptrINS_14property_valueEEENS_5arrayIS3_Lm0EEEEleIS3_S5_EEbRKNS0_IT_T0_EE, symObjAddr: 0x91DC, symBinAddr: 0x1F89C, symSize: 0xAC } - - { offsetInCU: 0x5078, offset: 0x1D2A6, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_10unique_ptrINS_14property_valueEEENS_5arrayIS3_Lm0EEEEmiIS3_S5_EElRKNS0_IT_T0_EE, symObjAddr: 0x9288, symBinAddr: 0x1F948, symSize: 0xAC } - - { offsetInCU: 0x50BE, offset: 0x1D2EC, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_10unique_ptrINS_14property_valueEEENS_5arrayIS3_Lm0EEEEcvPS3_Ev, symObjAddr: 0x9334, symBinAddr: 0x1F9F4, symSize: 0x18 } - - { offsetInCU: 0x50E4, offset: 0x1D312, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE8destructENS_14array_iteratorIS3_S4_EE, symObjAddr: 0x9468, symBinAddr: 0x1FB28, symSize: 0x34 } - - { offsetInCU: 0x5119, offset: 0x1D347, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE9constructIJPS2_EEEvNS_14array_iteratorIS3_S4_EEDpOT_, symObjAddr: 0x949C, symBinAddr: 0x1FB5C, symSize: 0x78 } - - { offsetInCU: 0x5176, offset: 0x1D3A4, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEEaSIS1_EERS2_ONS0_IT_EE, symObjAddr: 0x9528, symBinAddr: 0x1FBE8, symSize: 0x6C } - - { offsetInCU: 0x51B2, offset: 0x1D3E0, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEEC1IS1_EEONS0_IT_EE, symObjAddr: 0x9594, symBinAddr: 0x1FC54, symSize: 0x34 } - - { offsetInCU: 0x51F1, offset: 0x1D41F, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEEC2IS1_EEONS0_IT_EE, symObjAddr: 0x95C8, symBinAddr: 0x1FC88, symSize: 0x2C } - - { offsetInCU: 0x5230, offset: 0x1D45E, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEEC1EPS1_, symObjAddr: 0x95F4, symBinAddr: 0x1FCB4, symSize: 0x34 } - - { offsetInCU: 0x5266, offset: 0x1D494, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEEC2EPS1_, symObjAddr: 0x9628, symBinAddr: 0x1FCE8, symSize: 0x20 } - - { offsetInCU: 0x529C, offset: 0x1D4CA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEEC2Ej, symObjAddr: 0x9648, symBinAddr: 0x1FD08, symSize: 0x78 } - - { offsetInCU: 0x52D4, offset: 0x1D502, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headIjEC1Ev, symObjAddr: 0x96C0, symBinAddr: 0x1FD80, symSize: 0x2C } - - { offsetInCU: 0x52FC, offset: 0x1D52A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headINS6_10value_nodeEEC1Ev, symObjAddr: 0x96EC, symBinAddr: 0x1FDAC, symSize: 0x2C } - - { offsetInCU: 0x5324, offset: 0x1D552, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj, symObjAddr: 0x9718, symBinAddr: 0x1FDD8, symSize: 0x494 } - - { offsetInCU: 0x5429, offset: 0x1D657, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12buckets_sizeEv, symObjAddr: 0x9E9C, symBinAddr: 0x2055C, symSize: 0x24 } - - { offsetInCU: 0x544F, offset: 0x1D67D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headIjEC2Ev, symObjAddr: 0x9EC0, symBinAddr: 0x20580, symSize: 0x1C } - - { offsetInCU: 0x5477, offset: 0x1D6A5, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headINS6_10value_nodeEEC2Ev, symObjAddr: 0x9EDC, symBinAddr: 0x2059C, symSize: 0x1C } - - { offsetInCU: 0x549F, offset: 0x1D6CD, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headIjE4sizeEv, symObjAddr: 0x9EF8, symBinAddr: 0x205B8, symSize: 0x18 } - - { offsetInCU: 0x54C3, offset: 0x1D6F1, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headIjEixEj, symObjAddr: 0x9F10, symBinAddr: 0x205D0, symSize: 0x74 } - - { offsetInCU: 0x54F5, offset: 0x1D723, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headINS6_10value_nodeEEixEj, symObjAddr: 0x9F84, symBinAddr: 0x20644, symSize: 0x7C } - - { offsetInCU: 0x5527, offset: 0x1D755, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE23get_bucket_index_by_keyERKS2_, symObjAddr: 0xA000, symBinAddr: 0x206C0, symSize: 0x44 } - - { offsetInCU: 0x556C, offset: 0x1D79A, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE24get_bucket_index_by_hashEy, symObjAddr: 0xA044, symBinAddr: 0x20704, symSize: 0x3C } - - { offsetInCU: 0x55A2, offset: 0x1D7D0, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headINS6_10value_nodeEE4sizeEv, symObjAddr: 0xA080, symBinAddr: 0x20740, symSize: 0x18 } - - { offsetInCU: 0x55C6, offset: 0x1D7F4, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb0EEC1EPNS_8hash_mapIS2_S5_EEjj, symObjAddr: 0xA0AC, symBinAddr: 0x2076C, symSize: 0x44 } - - { offsetInCU: 0x5618, offset: 0x1D846, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb0EEC2EPNS_8hash_mapIS2_S5_EEjj, symObjAddr: 0xA0F0, symBinAddr: 0x207B0, symSize: 0x38 } - - { offsetInCU: 0x566A, offset: 0x1D898, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE19get_next_node_indexEj, symObjAddr: 0xA128, symBinAddr: 0x207E8, symSize: 0x68 } - - { offsetInCU: 0x56A0, offset: 0x1D8CE, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headINS6_10value_nodeEEixEj, symObjAddr: 0xA190, symBinAddr: 0x20850, symSize: 0x7C } - - { offsetInCU: 0x56D2, offset: 0x1D900, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_, symObjAddr: 0xA20C, symBinAddr: 0x208CC, symSize: 0x304 } - - { offsetInCU: 0x57CA, offset: 0x1D9F8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE15construct_valueIPS4_EEvRNS_17hash_map_iteratorIS2_S5_Lb0EEEOT_, symObjAddr: 0xA510, symBinAddr: 0x20BD0, symSize: 0x70 } - - { offsetInCU: 0x5816, offset: 0x1DA44, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE32find_index_and_bucket_idx_by_keyERKS2_, symObjAddr: 0xA580, symBinAddr: 0x20C40, symSize: 0x114 } - - { offsetInCU: 0x58A4, offset: 0x1DAD2, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE10nodes_sizeEv, symObjAddr: 0xA6C0, symBinAddr: 0x20D54, symSize: 0x28 } - - { offsetInCU: 0x58CA, offset: 0x1DAF8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE13construct_keyIRKS2_EEvRNS_17hash_map_iteratorIS2_S5_Lb0EEEOT_, symObjAddr: 0xA6E8, symBinAddr: 0x20D7C, symSize: 0x68 } - - { offsetInCU: 0x5916, offset: 0x1DB44, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headIjEixEj, symObjAddr: 0xA750, symBinAddr: 0x20DE4, symSize: 0x74 } - - { offsetInCU: 0x5948, offset: 0x1DB76, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EEC2EOS4_, symObjAddr: 0xA93C, symBinAddr: 0x20E58, symSize: 0x6C } - - { offsetInCU: 0x5981, offset: 0x1DBAF, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE8capacityEv, symObjAddr: 0xA9A8, symBinAddr: 0x20EC4, symSize: 0x18 } - - { offsetInCU: 0x59A8, offset: 0x1DBD6, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEEC2EOS6_, symObjAddr: 0xA9C0, symBinAddr: 0x20EDC, symSize: 0xE8 } - - { offsetInCU: 0x59E0, offset: 0x1DC0E, size: 0x8, addend: 0x0, symName: __ZN2bq12aligned_typeIA56_cLj8EEC2Ev, symObjAddr: 0xAAA8, symBinAddr: 0x20FC4, symSize: 0x70 } - - { offsetInCU: 0x5A08, offset: 0x1DC36, size: 0x8, addend: 0x0, symName: __ZN2bq12aligned_typeIA56_cLj8EE4initEv, symObjAddr: 0xAB18, symBinAddr: 0x21034, symSize: 0x8C } - - { offsetInCU: 0x5A48, offset: 0x1DC76, size: 0x8, addend: 0x0, symName: __ZnamPvN2bq14enum_new_dummyE, symObjAddr: 0xABA4, symBinAddr: 0x210C0, symSize: 0x1C } - - { offsetInCU: 0x5A88, offset: 0x1DCB6, size: 0x8, addend: 0x0, symName: __ZN2bq12aligned_typeIA56_cLj8EED2Ev, symObjAddr: 0xABC0, symBinAddr: 0x210DC, symSize: 0x30 } - - { offsetInCU: 0x5AB0, offset: 0x1DCDE, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIA56_cE8destructEPS1_, symObjAddr: 0xABF0, symBinAddr: 0x2110C, symSize: 0x24 } - - { offsetInCU: 0x5AD2, offset: 0x1DD00, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIA56_cE15destructor_implIS1_NS2_23trivial_destructor_typeEE8destructEPS1_, symObjAddr: 0xAC14, symBinAddr: 0x21130, symSize: 0x10 } - - { offsetInCU: 0x5AF4, offset: 0x1DD22, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE20iterator_legal_checkERKNS_17hash_map_iteratorIS2_S5_Lb1EEE, symObjAddr: 0xAC24, symBinAddr: 0x21140, symSize: 0x124 } - - { offsetInCU: 0x5B29, offset: 0x1DD57, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb1EEC1ILb0EEERKNS0_IS2_S5_XT_EEE, symObjAddr: 0xAD48, symBinAddr: 0x21264, symSize: 0x34 } - - { offsetInCU: 0x5B69, offset: 0x1DD97, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb1EEC2ILb0EEERKNS0_IS2_S5_XT_EEE, symObjAddr: 0xAD7C, symBinAddr: 0x21298, symSize: 0x3C } - - { offsetInCU: 0x5BA9, offset: 0x1DDD7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEEaSEOS6_, symObjAddr: 0xADCC, symBinAddr: 0x212E8, symSize: 0xD4 } - - { offsetInCU: 0x5BE2, offset: 0x1DE10, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_10unique_ptrINS_14property_valueEEENS_5arrayIS3_Lm0EEEEpLEi, symObjAddr: 0xB318, symBinAddr: 0x213BC, symSize: 0x28 } - - { offsetInCU: 0x5C16, offset: 0x1DE44, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EEaSEOS4_, symObjAddr: 0xB354, symBinAddr: 0x213F8, symSize: 0x6C } - - { offsetInCU: 0x44, offset: 0x1DF71, size: 0x8, addend: 0x0, symName: __ZN2bqL14_assert_mutex_E, symObjAddr: 0x9468, symBinAddr: 0x68A10, symSize: 0x0 } - - { offsetInCU: 0x326, offset: 0x1E253, size: 0x8, addend: 0x0, symName: __ZN2bq4util28get_gmt_time_by_epoch_unsafeEy, symObjAddr: 0x470, symBinAddr: 0x21554, symSize: 0x34 } - - { offsetInCU: 0x358, offset: 0x1E285, size: 0x8, addend: 0x0, symName: __ZN2bq4util30get_local_time_by_epoch_unsafeEy, symObjAddr: 0x5BC, symBinAddr: 0x21588, symSize: 0x34 } - - { offsetInCU: 0x38A, offset: 0x1E2B7, size: 0x8, addend: 0x0, symName: __ZN2bq4util18log_device_consoleENS_9log_levelEPKcz, symObjAddr: 0x5F0, symBinAddr: 0x215BC, symSize: 0x8C } - - { offsetInCU: 0x3DA, offset: 0x1E307, size: 0x8, addend: 0x0, symName: __ZN2bq4util29log_device_console_plain_textENS_9log_levelEPKc, symObjAddr: 0x67C, symBinAddr: 0x21648, symSize: 0x28 } - - { offsetInCU: 0x40C, offset: 0x1E339, size: 0x8, addend: 0x0, symName: __ZN2bq4util11get_hash_64EPKvm, symObjAddr: 0x720, symBinAddr: 0x21670, symSize: 0x80 } - - { offsetInCU: 0x469, offset: 0x1E396, size: 0x8, addend: 0x0, symName: __ZN2bq4util16is_little_endianEv, symObjAddr: 0x7A0, symBinAddr: 0x216F0, symSize: 0x24 } - - { offsetInCU: 0x48E, offset: 0x1E3BB, size: 0x8, addend: 0x0, symName: __ZN2bq4util13utf16_to_utf8EPKDsjPcj, symObjAddr: 0x86C, symBinAddr: 0x21714, symSize: 0x4D4 } - - { offsetInCU: 0x53E, offset: 0x1E46B, size: 0x8, addend: 0x0, symName: __ZN2bq4util13utf8_to_utf16EPKcjPDsj, symObjAddr: 0xD40, symBinAddr: 0x21BE8, symSize: 0x3AC } - - { offsetInCU: 0x5C, offset: 0x1E596, size: 0x8, addend: 0x0, symName: __ZN2bq3apiL19signal_stack_holderE, symObjAddr: 0x28D70, symBinAddr: 0x68A20, symSize: 0x0 } - - { offsetInCU: 0x9F, offset: 0x1E5D9, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE10registeredE, symObjAddr: 0x4210, symBinAddr: 0x68720, symSize: 0x0 } - - { offsetInCU: 0x12F, offset: 0x1E669, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE18original_sigactionE, symObjAddr: 0x4218, symBinAddr: 0x68728, symSize: 0x0 } - - { offsetInCU: 0x146, offset: 0x1E680, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE7handlerE, symObjAddr: 0x4228, symBinAddr: 0x68738, symSize: 0x0 } - - { offsetInCU: 0x15A, offset: 0x1E694, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE10registeredE, symObjAddr: 0x4230, symBinAddr: 0x68740, symSize: 0x0 } - - { offsetInCU: 0x1DF, offset: 0x1E719, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE18original_sigactionE, symObjAddr: 0x4238, symBinAddr: 0x68748, symSize: 0x0 } - - { offsetInCU: 0x1F6, offset: 0x1E730, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE7handlerE, symObjAddr: 0x4248, symBinAddr: 0x68758, symSize: 0x0 } - - { offsetInCU: 0x20A, offset: 0x1E744, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE10registeredE, symObjAddr: 0x4250, symBinAddr: 0x68760, symSize: 0x0 } - - { offsetInCU: 0x28F, offset: 0x1E7C9, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE18original_sigactionE, symObjAddr: 0x4258, symBinAddr: 0x68768, symSize: 0x0 } - - { offsetInCU: 0x2A6, offset: 0x1E7E0, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE7handlerE, symObjAddr: 0x4268, symBinAddr: 0x68778, symSize: 0x0 } - - { offsetInCU: 0x2BA, offset: 0x1E7F4, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE10registeredE, symObjAddr: 0x4270, symBinAddr: 0x68780, symSize: 0x0 } - - { offsetInCU: 0x33F, offset: 0x1E879, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE18original_sigactionE, symObjAddr: 0x4278, symBinAddr: 0x68788, symSize: 0x0 } - - { offsetInCU: 0x356, offset: 0x1E890, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE7handlerE, symObjAddr: 0x4288, symBinAddr: 0x68798, symSize: 0x0 } - - { offsetInCU: 0x36A, offset: 0x1E8A4, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE10registeredE, symObjAddr: 0x4290, symBinAddr: 0x687A0, symSize: 0x0 } - - { offsetInCU: 0x3EF, offset: 0x1E929, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE18original_sigactionE, symObjAddr: 0x4298, symBinAddr: 0x687A8, symSize: 0x0 } - - { offsetInCU: 0x406, offset: 0x1E940, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE7handlerE, symObjAddr: 0x42A8, symBinAddr: 0x687B8, symSize: 0x0 } - - { offsetInCU: 0x41A, offset: 0x1E954, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE10registeredE, symObjAddr: 0x42B0, symBinAddr: 0x687C0, symSize: 0x0 } - - { offsetInCU: 0x49F, offset: 0x1E9D9, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE18original_sigactionE, symObjAddr: 0x42B8, symBinAddr: 0x687C8, symSize: 0x0 } - - { offsetInCU: 0x4B6, offset: 0x1E9F0, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE7handlerE, symObjAddr: 0x42C8, symBinAddr: 0x687D8, symSize: 0x0 } - - { offsetInCU: 0x4C4, offset: 0x1E9FE, size: 0x8, addend: 0x0, symName: __ZN2bq3apiL17log_crash_handlerEiP9__siginfoPv, symObjAddr: 0x1E0, symBinAddr: 0x22190, symSize: 0x4C } - - { offsetInCU: 0x4E6D, offset: 0x233A7, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRA1_KcEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x3C30, symBinAddr: 0x23DE0, symSize: 0x14 } - - { offsetInCU: 0x5C22, offset: 0x2415C, size: 0x8, addend: 0x0, symName: ___api_get_log_version, symObjAddr: 0x38, symBinAddr: 0x21FE8, symSize: 0xC } - - { offsetInCU: 0x5C3C, offset: 0x24176, size: 0x8, addend: 0x0, symName: __ZN2bq3api24signal_stack_holder_typeC1Ev, symObjAddr: 0x44, symBinAddr: 0x21FF4, symSize: 0x2C } - - { offsetInCU: 0x5C64, offset: 0x2419E, size: 0x8, addend: 0x0, symName: __ZN2bq3api24signal_stack_holder_typeD1Ev, symObjAddr: 0x70, symBinAddr: 0x22020, symSize: 0x2C } - - { offsetInCU: 0x5C8C, offset: 0x241C6, size: 0x8, addend: 0x0, symName: ___api_enable_auto_crash_handler, symObjAddr: 0x9C, symBinAddr: 0x2204C, symSize: 0x50 } - - { offsetInCU: 0x5CA2, offset: 0x241DC, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0xEC, symBinAddr: 0x2209C, symSize: 0xF4 } - - { offsetInCU: 0x5D0A, offset: 0x24244, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x22C, symBinAddr: 0x221DC, symSize: 0xF4 } - - { offsetInCU: 0x5D72, offset: 0x242AC, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x320, symBinAddr: 0x222D0, symSize: 0xF4 } - - { offsetInCU: 0x5DDA, offset: 0x24314, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x414, symBinAddr: 0x223C4, symSize: 0xF4 } - - { offsetInCU: 0x5E42, offset: 0x2437C, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x508, symBinAddr: 0x224B8, symSize: 0xF4 } - - { offsetInCU: 0x5EAA, offset: 0x243E4, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x5FC, symBinAddr: 0x225AC, symSize: 0xF4 } - - { offsetInCU: 0x5F12, offset: 0x2444C, size: 0x8, addend: 0x0, symName: ___api_create_log, symObjAddr: 0x6F0, symBinAddr: 0x226A0, symSize: 0x130 } - - { offsetInCU: 0x5FB4, offset: 0x244EE, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9push_backIJRA1_KcEEEmDpOT_, symObjAddr: 0xA7C, symBinAddr: 0x227D0, symSize: 0x58 } - - { offsetInCU: 0x5FF9, offset: 0x24533, size: 0x8, addend: 0x0, symName: ___api_log_reset_config, symObjAddr: 0xBB8, symBinAddr: 0x22828, symSize: 0x78 } - - { offsetInCU: 0x6062, offset: 0x2459C, size: 0x8, addend: 0x0, symName: ___api_log_buffer_alloc, symObjAddr: 0xC30, symBinAddr: 0x228A0, symSize: 0x2D8 } - - { offsetInCU: 0x6182, offset: 0x246BC, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager13get_log_by_idEy, symObjAddr: 0xF08, symBinAddr: 0x22B78, symSize: 0x58 } - - { offsetInCU: 0x61A4, offset: 0x246DE, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp15get_ring_bufferEv, symObjAddr: 0xF60, symBinAddr: 0x22BD0, symSize: 0x18 } - - { offsetInCU: 0x61C8, offset: 0x24702, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp18get_reliable_levelEv, symObjAddr: 0xF78, symBinAddr: 0x22BE8, symSize: 0x18 } - - { offsetInCU: 0x61EC, offset: 0x24726, size: 0x8, addend: 0x0, symName: ___api_log_buffer_commit, symObjAddr: 0xF90, symBinAddr: 0x22C00, symSize: 0x114 } - - { offsetInCU: 0x625C, offset: 0x24796, size: 0x8, addend: 0x0, symName: __ZN2bq24ring_buffer_write_handleC1Ev, symObjAddr: 0x10A4, symBinAddr: 0x22D14, symSize: 0x2C } - - { offsetInCU: 0x6286, offset: 0x247C0, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp15get_thread_modeEv, symObjAddr: 0x10D0, symBinAddr: 0x22D40, symSize: 0x18 } - - { offsetInCU: 0x62AA, offset: 0x247E4, size: 0x8, addend: 0x0, symName: ___api_set_appenders_enable, symObjAddr: 0x10E8, symBinAddr: 0x22D58, symSize: 0x104 } - - { offsetInCU: 0x6366, offset: 0x248A0, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE5beginEv, symObjAddr: 0x11EC, symBinAddr: 0x22E5C, symSize: 0x34 } - - { offsetInCU: 0x638D, offset: 0x248C7, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE3endEv, symObjAddr: 0x1220, symBinAddr: 0x22E90, symSize: 0x3C } - - { offsetInCU: 0x63B9, offset: 0x248F3, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEneIS2_S4_EEbRKNS0_IT_T0_EE, symObjAddr: 0x125C, symBinAddr: 0x22ECC, symSize: 0xAC } - - { offsetInCU: 0x63FF, offset: 0x24939, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEdeEv, symObjAddr: 0x1308, symBinAddr: 0x22F78, symSize: 0x18 } - - { offsetInCU: 0x6425, offset: 0x2495F, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEppEv, symObjAddr: 0x1320, symBinAddr: 0x22F90, symSize: 0x20 } - - { offsetInCU: 0x644B, offset: 0x24985, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EED1Ev, symObjAddr: 0x1340, symBinAddr: 0x22FB0, symSize: 0x2C } - - { offsetInCU: 0x6475, offset: 0x249AF, size: 0x8, addend: 0x0, symName: ___api_get_logs_count, symObjAddr: 0x136C, symBinAddr: 0x22FDC, symSize: 0x18 } - - { offsetInCU: 0x6490, offset: 0x249CA, size: 0x8, addend: 0x0, symName: ___api_get_log_id_by_index, symObjAddr: 0x1384, symBinAddr: 0x22FF4, symSize: 0x5C } - - { offsetInCU: 0x64CA, offset: 0x24A04, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp2idEv, symObjAddr: 0x13E0, symBinAddr: 0x23050, symSize: 0x18 } - - { offsetInCU: 0x64EE, offset: 0x24A28, size: 0x8, addend: 0x0, symName: ___api_get_log_name_by_id, symObjAddr: 0x13F8, symBinAddr: 0x23068, symSize: 0xC8 } - - { offsetInCU: 0x6554, offset: 0x24A8E, size: 0x8, addend: 0x0, symName: ___api_get_log_categories_count, symObjAddr: 0x1548, symBinAddr: 0x23130, symSize: 0x58 } - - { offsetInCU: 0x658E, offset: 0x24AC8, size: 0x8, addend: 0x0, symName: ___api_get_log_category_name_by_index, symObjAddr: 0x15A0, symBinAddr: 0x23188, symSize: 0x108 } - - { offsetInCU: 0x6604, offset: 0x24B3E, size: 0x8, addend: 0x0, symName: ___api_get_log_merged_log_level_bitmap_by_log_id, symObjAddr: 0x16A8, symBinAddr: 0x23290, symSize: 0x5C } - - { offsetInCU: 0x6666, offset: 0x24BA0, size: 0x8, addend: 0x0, symName: ___api_get_log_category_masks_array_by_log_id, symObjAddr: 0x1704, symBinAddr: 0x232EC, symSize: 0xC8 } - - { offsetInCU: 0x66C6, offset: 0x24C00, size: 0x8, addend: 0x0, symName: ___api_get_log_print_stack_level_bitmap_by_log_id, symObjAddr: 0x17CC, symBinAddr: 0x233B4, symSize: 0x5C } - - { offsetInCU: 0x6700, offset: 0x24C3A, size: 0x8, addend: 0x0, symName: ___api_log_device_console, symObjAddr: 0x1828, symBinAddr: 0x23410, symSize: 0x2C } - - { offsetInCU: 0x6736, offset: 0x24C70, size: 0x8, addend: 0x0, symName: ___api_force_flush, symObjAddr: 0x1854, symBinAddr: 0x2343C, symSize: 0x50 } - - { offsetInCU: 0x675D, offset: 0x24C97, size: 0x8, addend: 0x0, symName: ___api_get_file_base_dir, symObjAddr: 0x18A4, symBinAddr: 0x2348C, symSize: 0x34 } - - { offsetInCU: 0x6788, offset: 0x24CC2, size: 0x8, addend: 0x0, symName: ___api_log_decoder_create, symObjAddr: 0x18D8, symBinAddr: 0x234C0, symSize: 0x5C } - - { offsetInCU: 0x67C2, offset: 0x24CFC, size: 0x8, addend: 0x0, symName: ___api_log_decoder_decode, symObjAddr: 0x1934, symBinAddr: 0x2351C, symSize: 0x74 } - - { offsetInCU: 0x681A, offset: 0x24D54, size: 0x8, addend: 0x0, symName: ___api_log_decoder_destroy, symObjAddr: 0x19A8, symBinAddr: 0x23590, symSize: 0x28 } - - { offsetInCU: 0x6841, offset: 0x24D7B, size: 0x8, addend: 0x0, symName: ___api_log_decode, symObjAddr: 0x19D0, symBinAddr: 0x235B8, symSize: 0x6C } - - { offsetInCU: 0x687B, offset: 0x24DB5, size: 0x8, addend: 0x0, symName: ___register_console_callbacks, symObjAddr: 0x1A3C, symBinAddr: 0x23624, symSize: 0x24 } - - { offsetInCU: 0x68A2, offset: 0x24DDC, size: 0x8, addend: 0x0, symName: ___unregister_console_callbacks, symObjAddr: 0x1A60, symBinAddr: 0x23648, symSize: 0x24 } - - { offsetInCU: 0x68C9, offset: 0x24E03, size: 0x8, addend: 0x0, symName: ___api_enable_snapshot, symObjAddr: 0x1A84, symBinAddr: 0x2366C, symSize: 0x50 } - - { offsetInCU: 0x690E, offset: 0x24E48, size: 0x8, addend: 0x0, symName: ___api_take_snapshot_string, symObjAddr: 0x1AD4, symBinAddr: 0x236BC, symSize: 0x98 } - - { offsetInCU: 0x6971, offset: 0x24EAB, size: 0x8, addend: 0x0, symName: ___api_release_snapshot_string, symObjAddr: 0x1B6C, symBinAddr: 0x23754, symSize: 0x60 } - - { offsetInCU: 0x69B6, offset: 0x24EF0, size: 0x8, addend: 0x0, symName: ___api_get_stack_trace, symObjAddr: 0x1BCC, symBinAddr: 0x237B4, symSize: 0x48 } - - { offsetInCU: 0x6A0A, offset: 0x24F44, size: 0x8, addend: 0x0, symName: ___api_get_stack_trace_utf16, symObjAddr: 0x1C14, symBinAddr: 0x237FC, symSize: 0x48 } - - { offsetInCU: 0x6A5E, offset: 0x24F98, size: 0x8, addend: 0x0, symName: __ZN2bq3api24signal_stack_holder_typeC2Ev, symObjAddr: 0x1C5C, symBinAddr: 0x23844, symSize: 0x3C } - - { offsetInCU: 0x6A86, offset: 0x24FC0, size: 0x8, addend: 0x0, symName: __ZN2bq3api24signal_stack_holder_typeD2Ev, symObjAddr: 0x1C98, symBinAddr: 0x23880, symSize: 0x30 } - - { offsetInCU: 0x6AAE, offset: 0x24FE8, size: 0x8, addend: 0x0, symName: __ZN2bq24ring_buffer_write_handleC2Ev, symObjAddr: 0x1D7C, symBinAddr: 0x238B0, symSize: 0x30 } - - { offsetInCU: 0x6ADE, offset: 0x25018, size: 0x8, addend: 0x0, symName: __ZN2bq23ring_buffer_handle_baseC2Ev, symObjAddr: 0x1DAC, symBinAddr: 0x238E0, symSize: 0x20 } - - { offsetInCU: 0x6B07, offset: 0x25041, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE9on_signalEiP9__siginfoPv, symObjAddr: 0x3750, symBinAddr: 0x23900, symSize: 0x64 } - - { offsetInCU: 0x6B53, offset: 0x2508D, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE9on_signalEiP9__siginfoPv, symObjAddr: 0x37B4, symBinAddr: 0x23964, symSize: 0x64 } - - { offsetInCU: 0x6B9F, offset: 0x250D9, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE9on_signalEiP9__siginfoPv, symObjAddr: 0x3818, symBinAddr: 0x239C8, symSize: 0x64 } - - { offsetInCU: 0x6BEB, offset: 0x25125, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE9on_signalEiP9__siginfoPv, symObjAddr: 0x387C, symBinAddr: 0x23A2C, symSize: 0x64 } - - { offsetInCU: 0x6C37, offset: 0x25171, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE9on_signalEiP9__siginfoPv, symObjAddr: 0x38E0, symBinAddr: 0x23A90, symSize: 0x64 } - - { offsetInCU: 0x6C83, offset: 0x251BD, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE9on_signalEiP9__siginfoPv, symObjAddr: 0x3944, symBinAddr: 0x23AF4, symSize: 0x64 } - - { offsetInCU: 0x6CCF, offset: 0x25209, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRA1_KcEEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x39A8, symBinAddr: 0x23B58, symSize: 0x288 } - - { offsetInCU: 0x6D5D, offset: 0x25297, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9constructIJRA1_KcEEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x3C44, symBinAddr: 0x23DF4, symSize: 0x74 } - - { offsetInCU: 0x6DBA, offset: 0x252F4, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EED2Ev, symObjAddr: 0x3CB8, symBinAddr: 0x23E68, symSize: 0x2C } - - { offsetInCU: 0x6DE4, offset: 0x2531E, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE5resetIS2_EENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x3CE4, symBinAddr: 0x23E94, symSize: 0x5C } - - { offsetInCU: 0x6E1E, offset: 0x25358, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEC1IS2_EEPT_PKS4_, symObjAddr: 0x3D40, symBinAddr: 0x23EF0, symSize: 0x3C } - - { offsetInCU: 0x6E6E, offset: 0x253A8, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEC2IS2_EEPT_PKS4_, symObjAddr: 0x3D7C, symBinAddr: 0x23F2C, symSize: 0x70 } - - { offsetInCU: 0x6EBC, offset: 0x253F6, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEptEv, symObjAddr: 0x3DEC, symBinAddr: 0x23F9C, symSize: 0x18 } - - { offsetInCU: 0x2B22, offset: 0x2804D, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRhEEOT_RNS_16remove_referenceIS2_E4typeE, symObjAddr: 0x4374, symBinAddr: 0x25B50, symSize: 0x14 } - - { offsetInCU: 0x2F8B, offset: 0x284B6, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base23get_config_name_by_typeENS0_13appender_typeE, symObjAddr: 0x2B4, symBinAddr: 0x2420C, symSize: 0xEC } - - { offsetInCU: 0x2FAC, offset: 0x284D7, size: 0x8, addend: 0x0, symName: __ZZN2bq13appender_base23get_config_name_by_typeENS0_13appender_typeEE16TYPE_CONFIG_NAME, symObjAddr: 0x27458, symBinAddr: 0x68A28, symSize: 0x0 } - - { offsetInCU: 0x356C, offset: 0x28A97, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_baseC2Ev, symObjAddr: 0x0, symBinAddr: 0x24008, symSize: 0x88 } - - { offsetInCU: 0x35E8, offset: 0x28B13, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base5clearEv, symObjAddr: 0xE0, symBinAddr: 0x24090, symSize: 0xAC } - - { offsetInCU: 0x3682, offset: 0x28BAD, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_baseD2Ev, symObjAddr: 0x18C, symBinAddr: 0x2413C, symSize: 0xB0 } - - { offsetInCU: 0x3703, offset: 0x28C2E, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_baseD1Ev, symObjAddr: 0x294, symBinAddr: 0x241EC, symSize: 0x14 } - - { offsetInCU: 0x372D, offset: 0x28C58, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_baseD0Ev, symObjAddr: 0x2A8, symBinAddr: 0x24200, symSize: 0xC } - - { offsetInCU: 0x3757, offset: 0x28C82, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base10set_enableEb, symObjAddr: 0x3D4, symBinAddr: 0x242F8, symSize: 0x2C } - - { offsetInCU: 0x378B, offset: 0x28CB6, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base10get_enableEv, symObjAddr: 0x400, symBinAddr: 0x24324, symSize: 0x1C } - - { offsetInCU: 0x37B1, offset: 0x28CDC, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE5clearEv, symObjAddr: 0x494, symBinAddr: 0x24340, symSize: 0x6C } - - { offsetInCU: 0x38A6, offset: 0x28DD1, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE, symObjAddr: 0x500, symBinAddr: 0x243AC, symSize: 0x81C } - - { offsetInCU: 0x3B40, offset: 0x2906B, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE18equals_ignore_caseERKS1_, symObjAddr: 0xFC8, symBinAddr: 0x24BC8, symSize: 0x150 } - - { offsetInCU: 0x3BA1, offset: 0x290CC, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_11string_baseIcEELm0EEixEm, symObjAddr: 0x1200, symBinAddr: 0x24D18, symSize: 0x7C } - - { offsetInCU: 0x3BD6, offset: 0x29101, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE10begin_withERKS1_, symObjAddr: 0x1474, symBinAddr: 0x24D94, symSize: 0xB8 } - - { offsetInCU: 0x3C73, offset: 0x2919E, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base3logERKNS_16log_entry_handleE, symObjAddr: 0x1564, symBinAddr: 0x24E4C, symSize: 0x138 } - - { offsetInCU: 0x3D4E, offset: 0x29279, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorIhE8destructEPhm, symObjAddr: 0x27BC, symBinAddr: 0x24F84, symSize: 0x2C } - - { offsetInCU: 0x3D7E, offset: 0x292A9, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorIhE15destructor_implIhNS1_23trivial_destructor_typeEE8destructEPhm, symObjAddr: 0x27E8, symBinAddr: 0x24FB0, symSize: 0x14 } - - { offsetInCU: 0x3DAE, offset: 0x292D9, size: 0x8, addend: 0x0, symName: __Z7toupperi, symObjAddr: 0x2B94, symBinAddr: 0x24FC4, symSize: 0x24 } - - { offsetInCU: 0x3FCC, offset: 0x294F7, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIhLm0EE6insertIJRhEEEvNS_21array_iterator_inlineIhS1_EEDpOT_, symObjAddr: 0x380C, symBinAddr: 0x24FE8, symSize: 0xB68 } - - { offsetInCU: 0x4798, offset: 0x29CC3, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIhE8destructEPh, symObjAddr: 0x4388, symBinAddr: 0x25B64, symSize: 0x24 } - - { offsetInCU: 0x47BA, offset: 0x29CE5, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIhE15destructor_implIhNS1_23trivial_destructor_typeEE8destructEPh, symObjAddr: 0x43AC, symBinAddr: 0x25B88, symSize: 0x10 } - - { offsetInCU: 0x26, offset: 0x29D41, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_consoleC2Ev, symObjAddr: 0x0, symBinAddr: 0x25BF8, symSize: 0x5C } - - { offsetInCU: 0x2D7B, offset: 0x2CA96, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRPFvyiiPKciEEEONS_16remove_referenceIT_E4typeEOS7_, symObjAddr: 0x34E8, symBinAddr: 0x27B34, symSize: 0x14 } - - { offsetInCU: 0x2E5C, offset: 0x2CB77, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRKPFvyiiPKciEEEOT_RNS_16remove_referenceIS7_E4typeE, symObjAddr: 0x367C, symBinAddr: 0x27CB4, symSize: 0x14 } - - { offsetInCU: 0x331B, offset: 0x2D036, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17get_console_mutexEv, symObjAddr: 0x10C, symBinAddr: 0x25CD8, symSize: 0x94 } - - { offsetInCU: 0x333C, offset: 0x2D057, size: 0x8, addend: 0x0, symName: __ZZN2bq16appender_console17get_console_mutexEvE6mutex_, symObjAddr: 0x24A58, symBinAddr: 0x68A90, symSize: 0x0 } - - { offsetInCU: 0x3347, offset: 0x2D062, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console21get_console_callbacksEv, symObjAddr: 0x1D4, symBinAddr: 0x25D6C, symSize: 0x98 } - - { offsetInCU: 0x3368, offset: 0x2D083, size: 0x8, addend: 0x0, symName: __ZZN2bq16appender_console21get_console_callbacksEvE10callbacks_, symObjAddr: 0x24A70, symBinAddr: 0x68AA8, symSize: 0x0 } - - { offsetInCU: 0x3383, offset: 0x2D09E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE12expand_nodesEj, symObjAddr: 0x2DEC, symBinAddr: 0x27580, symSize: 0x2C4 } - - { offsetInCU: 0x39A9, offset: 0x2D6C4, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_consoleC2Ev, symObjAddr: 0x0, symBinAddr: 0x25BF8, symSize: 0x5C } - - { offsetInCU: 0x39D3, offset: 0x2D6EE, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_consoleC1Ev, symObjAddr: 0x88, symBinAddr: 0x25C54, symSize: 0x2C } - - { offsetInCU: 0x39FD, offset: 0x2D718, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console25register_console_callbackEPFvyiiPKciE, symObjAddr: 0xB4, symBinAddr: 0x25C80, symSize: 0x58 } - - { offsetInCU: 0x3A2F, offset: 0x2D74A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbEixERKS4_, symObjAddr: 0x26C, symBinAddr: 0x25E04, symSize: 0x90 } - - { offsetInCU: 0x3A71, offset: 0x2D78C, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console27unregister_console_callbackEPFvyiiPKciE, symObjAddr: 0x328, symBinAddr: 0x25E94, symSize: 0xA0 } - - { offsetInCU: 0x3AB1, offset: 0x2D7CC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE4findERKS4_, symObjAddr: 0x3C8, symBinAddr: 0x25F34, symSize: 0x74 } - - { offsetInCU: 0x3AF8, offset: 0x2D813, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorIPFvyiiPKciEbLb0EEneILb0EEEbRKNS0_IS4_bXT_EEE, symObjAddr: 0x43C, symBinAddr: 0x25FA8, symSize: 0x34 } - - { offsetInCU: 0x3B36, offset: 0x2D851, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE3endEv, symObjAddr: 0x470, symBinAddr: 0x25FDC, symSize: 0x38 } - - { offsetInCU: 0x3B5D, offset: 0x2D878, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5eraseENS_17hash_map_iteratorIS4_bLb0EEE, symObjAddr: 0x4A8, symBinAddr: 0x26014, symSize: 0x228 } - - { offsetInCU: 0x3BCE, offset: 0x2D8E9, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console9init_implERKNS_14property_valueE, symObjAddr: 0x6D0, symBinAddr: 0x2623C, symSize: 0xB4 } - - { offsetInCU: 0x3C57, offset: 0x2D972, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console8log_implERKNS_16log_entry_handleE, symObjAddr: 0x964, symBinAddr: 0x262F0, symSize: 0x2F4 } - - { offsetInCU: 0x3DA8, offset: 0x2DAC3, size: 0x8, addend: 0x0, symName: __ZN2bq6layout16get_formated_strEv, symObjAddr: 0xF44, symBinAddr: 0x265E4, symSize: 0x58 } - - { offsetInCU: 0x3DCC, offset: 0x2DAE7, size: 0x8, addend: 0x0, symName: __ZNK2bq6layout20get_formated_str_lenEv, symObjAddr: 0xF9C, symBinAddr: 0x2663C, symSize: 0x18 } - - { offsetInCU: 0x3DF0, offset: 0x2DB0B, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE4sizeEv, symObjAddr: 0x1320, symBinAddr: 0x26654, symSize: 0x18 } - - { offsetInCU: 0x3E16, offset: 0x2DB31, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5beginEv, symObjAddr: 0x1338, symBinAddr: 0x2666C, symSize: 0x84 } - - { offsetInCU: 0x3E3D, offset: 0x2DB58, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIPFvyiiPKciEbLb0EEptEv, symObjAddr: 0x13BC, symBinAddr: 0x266F0, symSize: 0x34 } - - { offsetInCU: 0x3E63, offset: 0x2DB7E, size: 0x8, addend: 0x0, symName: __ZNK2bq7kv_pairIPFvyiiPKciEbE3keyEv, symObjAddr: 0x13F0, symBinAddr: 0x26724, symSize: 0x14 } - - { offsetInCU: 0x3E87, offset: 0x2DBA2, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIPFvyiiPKciEbLb0EEppEv, symObjAddr: 0x141C, symBinAddr: 0x26738, symSize: 0x88 } - - { offsetInCU: 0x3EAD, offset: 0x2DBC8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbEC1Ej, symObjAddr: 0x14A4, symBinAddr: 0x267C0, symSize: 0x34 } - - { offsetInCU: 0x3EE5, offset: 0x2DC00, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbED1Ev, symObjAddr: 0x14D8, symBinAddr: 0x267F4, symSize: 0x2C } - - { offsetInCU: 0x3F0F, offset: 0x2DC2A, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_consoleD1Ev, symObjAddr: 0x1504, symBinAddr: 0x26820, symSize: 0x2C } - - { offsetInCU: 0x3F39, offset: 0x2DC54, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_consoleD0Ev, symObjAddr: 0x1530, symBinAddr: 0x2684C, symSize: 0x30 } - - { offsetInCU: 0x3F63, offset: 0x2DC7E, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIcLm0EE8is_emptyEv, symObjAddr: 0x1680, symBinAddr: 0x2687C, symSize: 0x24 } - - { offsetInCU: 0x3F8A, offset: 0x2DCA5, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm0EEixEm, symObjAddr: 0x16A4, symBinAddr: 0x268A0, symSize: 0x74 } - - { offsetInCU: 0x3FBF, offset: 0x2DCDA, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_consoleD2Ev, symObjAddr: 0x1718, symBinAddr: 0x26914, symSize: 0x54 } - - { offsetInCU: 0x3FE9, offset: 0x2DD04, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorIPFvyiiPKciEbLb0EEcvbEv, symObjAddr: 0x21A8, symBinAddr: 0x26968, symSize: 0x44 } - - { offsetInCU: 0x400F, offset: 0x2DD2A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE3addERKS4_, symObjAddr: 0x21EC, symBinAddr: 0x269AC, symSize: 0x64 } - - { offsetInCU: 0x4051, offset: 0x2DD6C, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairIPFvyiiPKciEbE5valueEv, symObjAddr: 0x2250, symBinAddr: 0x26A10, symSize: 0x18 } - - { offsetInCU: 0x4075, offset: 0x2DD90, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE20iterator_legal_checkERKNS_17hash_map_iteratorIS4_bLb1EEE, symObjAddr: 0x2268, symBinAddr: 0x26A28, symSize: 0x124 } - - { offsetInCU: 0x40AA, offset: 0x2DDC5, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIPFvyiiPKciEbLb1EEC1ILb0EEERKNS0_IS4_bXT_EEE, symObjAddr: 0x238C, symBinAddr: 0x26B4C, symSize: 0x34 } - - { offsetInCU: 0x40EA, offset: 0x2DE05, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headINS5_10value_nodeEE4sizeEv, symObjAddr: 0x23C0, symBinAddr: 0x26B80, symSize: 0x18 } - - { offsetInCU: 0x410E, offset: 0x2DE29, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headINS5_10value_nodeEEixEj, symObjAddr: 0x23D8, symBinAddr: 0x26B98, symSize: 0x74 } - - { offsetInCU: 0x4140, offset: 0x2DE5B, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIPFvyiiPKciEbLb1EEC2ILb0EEERKNS0_IS4_bXT_EEE, symObjAddr: 0x244C, symBinAddr: 0x26C0C, symSize: 0x3C } - - { offsetInCU: 0x4180, offset: 0x2DE9B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_, symObjAddr: 0x2488, symBinAddr: 0x26C48, symSize: 0x304 } - - { offsetInCU: 0x4278, offset: 0x2DF93, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE15construct_valueERNS_17hash_map_iteratorIS4_bLb0EEE, symObjAddr: 0x278C, symBinAddr: 0x26F4C, symSize: 0x5C } - - { offsetInCU: 0x42AD, offset: 0x2DFC8, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE12buckets_sizeEv, symObjAddr: 0x27E8, symBinAddr: 0x26FA8, symSize: 0x24 } - - { offsetInCU: 0x42D3, offset: 0x2DFEE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj, symObjAddr: 0x280C, symBinAddr: 0x26FCC, symSize: 0x494 } - - { offsetInCU: 0x43D8, offset: 0x2E0F3, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE32find_index_and_bucket_idx_by_keyERKS4_, symObjAddr: 0x2CA0, symBinAddr: 0x27460, symSize: 0x120 } - - { offsetInCU: 0x4466, offset: 0x2E181, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE10nodes_sizeEv, symObjAddr: 0x30B0, symBinAddr: 0x27844, symSize: 0x28 } - - { offsetInCU: 0x448C, offset: 0x2E1A7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headIjEixEj, symObjAddr: 0x30D8, symBinAddr: 0x2786C, symSize: 0x74 } - - { offsetInCU: 0x44BE, offset: 0x2E1D9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headINS5_10value_nodeEEixEj, symObjAddr: 0x314C, symBinAddr: 0x278E0, symSize: 0x74 } - - { offsetInCU: 0x44F0, offset: 0x2E20B, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIPFvyiiPKciEbLb0EEC1EPNS_8hash_mapIS4_bEEjj, symObjAddr: 0x31C0, symBinAddr: 0x27954, symSize: 0x44 } - - { offsetInCU: 0x4542, offset: 0x2E25D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE13construct_keyIRKS4_EEvRNS_17hash_map_iteratorIS4_bLb0EEEOT_, symObjAddr: 0x3204, symBinAddr: 0x27998, symSize: 0x68 } - - { offsetInCU: 0x458E, offset: 0x2E2A9, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headIjE4sizeEv, symObjAddr: 0x326C, symBinAddr: 0x27A00, symSize: 0x18 } - - { offsetInCU: 0x45B2, offset: 0x2E2CD, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE23get_bucket_index_by_keyERKS4_, symObjAddr: 0x3308, symBinAddr: 0x27A18, symSize: 0x44 } - - { offsetInCU: 0x45F7, offset: 0x2E312, size: 0x8, addend: 0x0, symName: __ZN2bq28pointer_type_hash_calculatorIPFvyiiPKciEE9hash_codeERKS4_, symObjAddr: 0x334C, symBinAddr: 0x27A5C, symSize: 0x28 } - - { offsetInCU: 0x4635, offset: 0x2E350, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE24get_bucket_index_by_hashEy, symObjAddr: 0x3374, symBinAddr: 0x27A84, symSize: 0x3C } - - { offsetInCU: 0x466B, offset: 0x2E386, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headIjEixEj, symObjAddr: 0x33B0, symBinAddr: 0x27AC0, symSize: 0x74 } - - { offsetInCU: 0x469D, offset: 0x2E3B8, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIPFvyiiPKciEbLb0EEdeEv, symObjAddr: 0x34FC, symBinAddr: 0x27B48, symSize: 0x34 } - - { offsetInCU: 0x46C3, offset: 0x2E3DE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE8destructERNS_17hash_map_iteratorIS4_bLb0EEE, symObjAddr: 0x3544, symBinAddr: 0x27B7C, symSize: 0x3C } - - { offsetInCU: 0x46F9, offset: 0x2E414, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE12destruct_keyERNS_17hash_map_iteratorIS4_bLb0EEE, symObjAddr: 0x3580, symBinAddr: 0x27BB8, symSize: 0x2C } - - { offsetInCU: 0x472F, offset: 0x2E44A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14destruct_valueERNS_17hash_map_iteratorIS4_bLb0EEE, symObjAddr: 0x35AC, symBinAddr: 0x27BE4, symSize: 0x30 } - - { offsetInCU: 0x4769, offset: 0x2E484, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIPFvyiiPKciEE8destructEPS4_, symObjAddr: 0x35DC, symBinAddr: 0x27C14, symSize: 0x24 } - - { offsetInCU: 0x478B, offset: 0x2E4A6, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIPFvyiiPKciEE15destructor_implIS4_NS5_23trivial_destructor_typeEE8destructEPS4_, symObjAddr: 0x3600, symBinAddr: 0x27C38, symSize: 0x10 } - - { offsetInCU: 0x47AD, offset: 0x2E4C8, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIbE8destructEPb, symObjAddr: 0x3610, symBinAddr: 0x27C48, symSize: 0x24 } - - { offsetInCU: 0x47CF, offset: 0x2E4EA, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIbE15destructor_implIbNS1_23trivial_destructor_typeEE8destructEPb, symObjAddr: 0x3634, symBinAddr: 0x27C6C, symSize: 0x10 } - - { offsetInCU: 0x47F1, offset: 0x2E50C, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIPFvyiiPKciEbLb0EEC2EPNS_8hash_mapIS4_bEEjj, symObjAddr: 0x3644, symBinAddr: 0x27C7C, symSize: 0x38 } - - { offsetInCU: 0x4843, offset: 0x2E55E, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorIPFvyiiPKciEbLb0EEeqILb0EEEbRKNS0_IS4_bXT_EEE, symObjAddr: 0x3690, symBinAddr: 0x27CC8, symSize: 0xEC } - - { offsetInCU: 0x4881, offset: 0x2E59C, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE19get_next_node_indexEj, symObjAddr: 0x38DC, symBinAddr: 0x27DB4, symSize: 0x68 } - - { offsetInCU: 0x48B7, offset: 0x2E5D2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbEC2Ej, symObjAddr: 0x3944, symBinAddr: 0x27E1C, symSize: 0x78 } - - { offsetInCU: 0x48EF, offset: 0x2E60A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headIjEC1Ev, symObjAddr: 0x39BC, symBinAddr: 0x27E94, symSize: 0x2C } - - { offsetInCU: 0x4917, offset: 0x2E632, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headINS5_10value_nodeEEC1Ev, symObjAddr: 0x39E8, symBinAddr: 0x27EC0, symSize: 0x2C } - - { offsetInCU: 0x493F, offset: 0x2E65A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headIjEC2Ev, symObjAddr: 0x3A14, symBinAddr: 0x27EEC, symSize: 0x1C } - - { offsetInCU: 0x4967, offset: 0x2E682, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headINS5_10value_nodeEEC2Ev, symObjAddr: 0x3A30, symBinAddr: 0x27F08, symSize: 0x1C } - - { offsetInCU: 0x498F, offset: 0x2E6AA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbED2Ev, symObjAddr: 0x3A4C, symBinAddr: 0x27F24, symSize: 0x2C } - - { offsetInCU: 0x49B9, offset: 0x2E6D4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5resetEv, symObjAddr: 0x3A78, symBinAddr: 0x27F50, symSize: 0xF8 } - - { offsetInCU: 0x26, offset: 0x2E789, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseD2Ev, symObjAddr: 0x0, symBinAddr: 0x28048, symSize: 0x80 } - - { offsetInCU: 0x35D2, offset: 0x31D35, size: 0x8, addend: 0x0, symName: __ZN2bq10make_tupleIJRyRNS_11string_baseIcEEyEEENS_5tupleIJDpNS_5decayIT_E4typeEEEEDpOS7_, symObjAddr: 0x34E8, symBinAddr: 0x2AA34, symSize: 0x60 } - - { offsetInCU: 0x3633, offset: 0x31D96, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm1EJyNS_11string_baseIcEEyEEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERS7_, symObjAddr: 0x375C, symBinAddr: 0x2ACA8, symSize: 0x28 } - - { offsetInCU: 0x3680, offset: 0x31DE3, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm2EJyNS_11string_baseIcEEyEEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERS7_, symObjAddr: 0x3784, symBinAddr: 0x2ACD0, symSize: 0x28 } - - { offsetInCU: 0x36CD, offset: 0x31E30, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm0EJyNS_11string_baseIcEEyEEERKNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERKS7_, symObjAddr: 0x4860, symBinAddr: 0x2AF48, symSize: 0x24 } - - { offsetInCU: 0x371A, offset: 0x31E7D, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyIhEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0x5034, symBinAddr: 0x2B314, symSize: 0x40 } - - { offsetInCU: 0x377E, offset: 0x31EE1, size: 0x8, addend: 0x0, symName: __ZN2bq20_inner_backward_moveIhEENS_9enable_ifIXaasr2bq28is_trivially_move_assignableIT_EE5valuesr2bq28is_trivially_copy_assignableIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0x5398, symBinAddr: 0x2B550, symSize: 0x3C } - - { offsetInCU: 0x3889, offset: 0x31FEC, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRyEEOT_RNS_16remove_referenceIS2_E4typeE, symObjAddr: 0x585C, symBinAddr: 0x2B76C, symSize: 0x14 } - - { offsetInCU: 0x38BE, offset: 0x32021, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIyEEOT_RNS_16remove_referenceIS1_E4typeE, symObjAddr: 0x5884, symBinAddr: 0x2B780, symSize: 0x14 } - - { offsetInCU: 0x38F3, offset: 0x32056, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_5tupleIJyNS_11string_baseIcEEyEEEEEOT_RNS_16remove_referenceIS5_E4typeE, symObjAddr: 0x5DF0, symBinAddr: 0x2BC6C, symSize: 0x14 } - - { offsetInCU: 0x3928, offset: 0x3208B, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveINS_5tupleIJyNS_11string_baseIcEEyEEEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS6_EE5valueEvE4typeEPS6_S9_m, symObjAddr: 0x6294, symBinAddr: 0x2C110, symSize: 0x140 } - - { offsetInCU: 0x39E3, offset: 0x32146, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyINS_5tupleIJyNS_11string_baseIcEEyEEEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS6_EE5valueEvE4typeEPS6_S9_m, symObjAddr: 0x6494, symBinAddr: 0x2C310, symSize: 0xCC } - - { offsetInCU: 0x3A55, offset: 0x321B8, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_5tupleIJyNS_11string_baseIcEEyEEEEEONS_16remove_referenceIT_E4typeEOS7_, symObjAddr: 0x657C, symBinAddr: 0x2C3DC, symSize: 0x14 } - - { offsetInCU: 0x4577, offset: 0x32CDA, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseD2Ev, symObjAddr: 0x0, symBinAddr: 0x28048, symSize: 0x80 } - - { offsetInCU: 0x45A1, offset: 0x32D04, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EED1Ev, symObjAddr: 0x80, symBinAddr: 0x280C8, symSize: 0x2C } - - { offsetInCU: 0x45CB, offset: 0x32D2E, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseD1Ev, symObjAddr: 0xD8, symBinAddr: 0x280F4, symSize: 0x14 } - - { offsetInCU: 0x45F5, offset: 0x32D58, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseD0Ev, symObjAddr: 0xEC, symBinAddr: 0x28108, symSize: 0xC } - - { offsetInCU: 0x4656, offset: 0x32DB9, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base11flush_cacheEv, symObjAddr: 0x114, symBinAddr: 0x28114, symSize: 0x3F4 } - - { offsetInCU: 0x477F, offset: 0x32EE2, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIhLm0EE4sizeEv, symObjAddr: 0x508, symBinAddr: 0x28508, symSize: 0x18 } - - { offsetInCU: 0x47A6, offset: 0x32F09, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE5beginEv, symObjAddr: 0x520, symBinAddr: 0x28520, symSize: 0x34 } - - { offsetInCU: 0x47CD, offset: 0x32F30, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIhNS_5arrayIhLm0EEEEplEm, symObjAddr: 0x554, symBinAddr: 0x28554, symSize: 0x44 } - - { offsetInCU: 0x480F, offset: 0x32F72, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIhNS_5arrayIhLm0EEEEcvPhEv, symObjAddr: 0x598, symBinAddr: 0x28598, symSize: 0x18 } - - { offsetInCU: 0x4835, offset: 0x32F98, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE5clearEv, symObjAddr: 0x5B0, symBinAddr: 0x285B0, symSize: 0x6C } - - { offsetInCU: 0x485C, offset: 0x32FBF, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIhLm0EE8capacityEv, symObjAddr: 0x61C, symBinAddr: 0x2861C, symSize: 0x18 } - - { offsetInCU: 0x4883, offset: 0x32FE6, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE6shrinkEv, symObjAddr: 0x634, symBinAddr: 0x28634, symSize: 0x30 } - - { offsetInCU: 0x48AA, offset: 0x3300D, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base29open_new_indexed_file_by_nameEv, symObjAddr: 0x698, symBinAddr: 0x28664, symSize: 0x5DC } - - { offsetInCU: 0x4ADD, offset: 0x33240, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8flush_ioEv, symObjAddr: 0xC74, symBinAddr: 0x28C40, symSize: 0x1C8 } - - { offsetInCU: 0x4B9E, offset: 0x33301, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE, symObjAddr: 0xE3C, symBinAddr: 0x28E08, symSize: 0x4F4 } - - { offsetInCU: 0x4C3A, offset: 0x3339D, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvyEv, symObjAddr: 0x161C, symBinAddr: 0x292FC, symSize: 0x30 } - - { offsetInCU: 0x4C5E, offset: 0x333C1, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8log_implERKNS_16log_entry_handleE, symObjAddr: 0x164C, symBinAddr: 0x2932C, symSize: 0x2C } - - { offsetInCU: 0x4CAB, offset: 0x3340E, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base19refresh_file_handleERKNS_16log_entry_handleE, symObjAddr: 0x1678, symBinAddr: 0x29358, symSize: 0x228 } - - { offsetInCU: 0x4DD4, offset: 0x33537, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base12on_file_openEb, symObjAddr: 0x18A0, symBinAddr: 0x29580, symSize: 0x18 } - - { offsetInCU: 0x4E08, offset: 0x3356B, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23seek_read_file_absoluteEm, symObjAddr: 0x18B8, symBinAddr: 0x29598, symSize: 0x48 } - - { offsetInCU: 0x4E3C, offset: 0x3359F, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base16clear_read_cacheEv, symObjAddr: 0x1900, symBinAddr: 0x295E0, symSize: 0x5C } - - { offsetInCU: 0x4E62, offset: 0x335C5, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21seek_read_file_offsetEi, symObjAddr: 0x195C, symBinAddr: 0x2963C, symSize: 0xAC } - - { offsetInCU: 0x4EA4, offset: 0x33607, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base15read_with_cacheEm, symObjAddr: 0x1A08, symBinAddr: 0x296E8, symSize: 0x250 } - - { offsetInCU: 0x4F2F, offset: 0x33692, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE5eraseENS_14array_iteratorIhS1_EEm, symObjAddr: 0x1C58, symBinAddr: 0x29938, symSize: 0x238 } - - { offsetInCU: 0x4F92, offset: 0x336F5, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE18fill_uninitializedIhEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm, symObjAddr: 0x1EE8, symBinAddr: 0x29B70, symSize: 0xBC } - - { offsetInCU: 0x4FD0, offset: 0x33733, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base22write_with_cache_allocEm, symObjAddr: 0x1FFC, symBinAddr: 0x29C2C, symSize: 0xD4 } - - { offsetInCU: 0x5014, offset: 0x33777, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE3endEv, symObjAddr: 0x20D0, symBinAddr: 0x29D00, symSize: 0x3C } - - { offsetInCU: 0x503B, offset: 0x3379E, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23write_with_cache_commitERKNS0_23write_with_cache_handleE, symObjAddr: 0x210C, symBinAddr: 0x29D3C, symSize: 0x184 } - - { offsetInCU: 0x506F, offset: 0x337D2, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE8pop_backEm, symObjAddr: 0x2290, symBinAddr: 0x29EC0, symSize: 0xAC } - - { offsetInCU: 0x50A4, offset: 0x33807, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21get_current_file_sizeEv, symObjAddr: 0x2354, symBinAddr: 0x29F6C, symSize: 0x18 } - - { offsetInCU: 0x50CA, offset: 0x3382D, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base16is_file_oversizeEv, symObjAddr: 0x236C, symBinAddr: 0x29F84, symSize: 0x7C } - - { offsetInCU: 0x50F1, offset: 0x33854, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base30open_file_with_write_exclusiveERKNS_11string_baseIcEE, symObjAddr: 0x23E8, symBinAddr: 0x2A000, symSize: 0x194 } - - { offsetInCU: 0x51DB, offset: 0x3393E, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23clear_all_expired_filesEv, symObjAddr: 0x257C, symBinAddr: 0x2A194, symSize: 0x29C } - - { offsetInCU: 0x52E5, offset: 0x33A48, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21clear_all_limit_filesEv, symObjAddr: 0x2818, symBinAddr: 0x2A430, symSize: 0x438 } - - { offsetInCU: 0x54C1, offset: 0x33C24, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE8end_withERKS1_, symObjAddr: 0x2FC8, symBinAddr: 0x2A868, symSize: 0xE8 } - - { offsetInCU: 0x54F7, offset: 0x33C5A, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base18parse_file_contextC1ERKNS_11string_baseIcEE, symObjAddr: 0x33D8, symBinAddr: 0x2A950, symSize: 0x34 } - - { offsetInCU: 0x552C, offset: 0x33C8F, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base18parse_file_contextD1Ev, symObjAddr: 0x340C, symBinAddr: 0x2A984, symSize: 0x2C } - - { offsetInCU: 0x5556, offset: 0x33CB9, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EEC1Ev, symObjAddr: 0x3464, symBinAddr: 0x2A9B0, symSize: 0x2C } - - { offsetInCU: 0x5580, offset: 0x33CE3, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE9push_backIJS4_EEEmDpOT_, symObjAddr: 0x3490, symBinAddr: 0x2A9DC, symSize: 0x58 } - - { offsetInCU: 0x55C1, offset: 0x33D24, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJyNS_11string_baseIcEEyEED1Ev, symObjAddr: 0x3548, symBinAddr: 0x2AA94, symSize: 0x2C } - - { offsetInCU: 0x55EB, offset: 0x33D4E, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE4sizeEv, symObjAddr: 0x3574, symBinAddr: 0x2AAC0, symSize: 0x18 } - - { offsetInCU: 0x5612, offset: 0x33D75, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EEixEm, symObjAddr: 0x358C, symBinAddr: 0x2AAD8, symSize: 0x7C } - - { offsetInCU: 0x5652, offset: 0x33DB5, size: 0x8, addend: 0x0, symName: '__ZZN2bq18appender_file_base21clear_all_limit_filesEvENK3$_0cvPFiPKvS3_EEv', symObjAddr: 0x3608, symBinAddr: 0x2AB54, symSize: 0x18 } - - { offsetInCU: 0x567D, offset: 0x33DE0, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE5beginEv, symObjAddr: 0x3620, symBinAddr: 0x2AB6C, symSize: 0x34 } - - { offsetInCU: 0x56A4, offset: 0x33E07, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE3endEv, symObjAddr: 0x3654, symBinAddr: 0x2ABA0, symSize: 0x44 } - - { offsetInCU: 0x56D0, offset: 0x33E33, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEneIS4_S6_EEbRKNS0_IT_T0_EE, symObjAddr: 0x3698, symBinAddr: 0x2ABE4, symSize: 0xAC } - - { offsetInCU: 0x5716, offset: 0x33E79, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEdeEv, symObjAddr: 0x3744, symBinAddr: 0x2AC90, symSize: 0x18 } - - { offsetInCU: 0x573C, offset: 0x33E9F, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEppEv, symObjAddr: 0x37AC, symBinAddr: 0x2ACF8, symSize: 0x20 } - - { offsetInCU: 0x5762, offset: 0x33EC5, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EED1Ev, symObjAddr: 0x37CC, symBinAddr: 0x2AD18, symSize: 0x2C } - - { offsetInCU: 0x578C, offset: 0x33EEF, size: 0x8, addend: 0x0, symName: __ZNK2bq18appender_file_base18parse_file_context21log_parse_fail_reasonEPKc, symObjAddr: 0x37F8, symBinAddr: 0x2AD44, symSize: 0x58 } - - { offsetInCU: 0x57C3, offset: 0x33F26, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base18parse_file_contextC2ERKNS_11string_baseIcEE, symObjAddr: 0x3AC8, symBinAddr: 0x2AD9C, symSize: 0x38 } - - { offsetInCU: 0x57F8, offset: 0x33F5B, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base18parse_file_contextD2Ev, symObjAddr: 0x4694, symBinAddr: 0x2ADD4, symSize: 0x2C } - - { offsetInCU: 0x5823, offset: 0x33F86, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJyNS_11string_baseIcEEyEED2Ev, symObjAddr: 0x46C0, symBinAddr: 0x2AE00, symSize: 0x30 } - - { offsetInCU: 0x584E, offset: 0x33FB1, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEEyEED2Ev, symObjAddr: 0x46F0, symBinAddr: 0x2AE30, symSize: 0x2C } - - { offsetInCU: 0x5879, offset: 0x33FDC, size: 0x8, addend: 0x0, symName: '__ZZN2bq18appender_file_base21clear_all_limit_filesEvEN3$_08__invokeEPKvS3_', symObjAddr: 0x4774, symBinAddr: 0x2AE5C, symSize: 0x30 } - - { offsetInCU: 0x58AF, offset: 0x34012, size: 0x8, addend: 0x0, symName: '__ZZN2bq18appender_file_base21clear_all_limit_filesEvENK3$_0clEPKvS3_', symObjAddr: 0x47A4, symBinAddr: 0x2AE8C, symSize: 0xBC } - - { offsetInCU: 0x5912, offset: 0x34075, size: 0x8, addend: 0x0, symName: __ZNK2bq26__tuple_element_value_implILm2EyLb0EE3getEv, symObjAddr: 0x4884, symBinAddr: 0x2AF6C, symSize: 0x14 } - - { offsetInCU: 0x5936, offset: 0x34099, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0EyLb0EE3getEv, symObjAddr: 0x48AC, symBinAddr: 0x2AF80, symSize: 0x14 } - - { offsetInCU: 0x595A, offset: 0x340BD, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EED2Ev, symObjAddr: 0x4C74, symBinAddr: 0x2AF94, symSize: 0x2C } - - { offsetInCU: 0x5984, offset: 0x340E7, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE5resetIhEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x4CA0, symBinAddr: 0x2AFC0, symSize: 0x5C } - - { offsetInCU: 0x59BE, offset: 0x34121, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIhNS_5arrayIhLm0EEEEC1IhEEPT_PKS2_, symObjAddr: 0x4CFC, symBinAddr: 0x2B01C, symSize: 0x3C } - - { offsetInCU: 0x5A0D, offset: 0x34170, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIhNS_5arrayIhLm0EEEEC2IhEEPT_PKS2_, symObjAddr: 0x4D38, symBinAddr: 0x2B058, symSize: 0x70 } - - { offsetInCU: 0x5A5C, offset: 0x341BF, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIhNS_5arrayIhLm0EEEEpLEi, symObjAddr: 0x4DA8, symBinAddr: 0x2B0C8, symSize: 0x28 } - - { offsetInCU: 0x5A90, offset: 0x341F3, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE12set_capacityEmb, symObjAddr: 0x4E10, symBinAddr: 0x2B0F0, symSize: 0x224 } - - { offsetInCU: 0x5B04, offset: 0x34267, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIhNS_5arrayIhLm0EEEEgeIhS2_EEbRKNS0_IT_T0_EE, symObjAddr: 0x514C, symBinAddr: 0x2B354, symSize: 0xAC } - - { offsetInCU: 0x5B4A, offset: 0x342AD, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIhNS_5arrayIhLm0EEEEltIhS2_EEbRKNS0_IT_T0_EE, symObjAddr: 0x51F8, symBinAddr: 0x2B400, symSize: 0xAC } - - { offsetInCU: 0x5B90, offset: 0x342F3, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIhNS_5arrayIhLm0EEEEmiIhS2_EElRKNS0_IT_T0_EE, symObjAddr: 0x52A4, symBinAddr: 0x2B4AC, symSize: 0xA4 } - - { offsetInCU: 0x5BD6, offset: 0x34339, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIhNS_5arrayIhLm0EEEEptEv, symObjAddr: 0x53D4, symBinAddr: 0x2B58C, symSize: 0x18 } - - { offsetInCU: 0x5BFC, offset: 0x3435F, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EEC2Ev, symObjAddr: 0x5694, symBinAddr: 0x2B5A4, symSize: 0x20 } - - { offsetInCU: 0x5C26, offset: 0x34389, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EED2Ev, symObjAddr: 0x56B4, symBinAddr: 0x2B5C4, symSize: 0x2C } - - { offsetInCU: 0x5C50, offset: 0x343B3, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE5resetIS4_EENS_9enable_ifIXntsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x56E0, symBinAddr: 0x2B5F0, symSize: 0x6C } - - { offsetInCU: 0x5C86, offset: 0x343E9, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_5tupleIJyNS_11string_baseIcEEyEEEE8destructEPS4_m, symObjAddr: 0x574C, symBinAddr: 0x2B65C, symSize: 0x2C } - - { offsetInCU: 0x5CB6, offset: 0x34419, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_5tupleIJyNS_11string_baseIcEEyEEEE15destructor_implIS4_NS5_27non_trivial_destructor_typeEE8destructEPS4_m, symObjAddr: 0x5778, symBinAddr: 0x2B688, symSize: 0x84 } - - { offsetInCU: 0x5D02, offset: 0x34465, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_5tupleIJyNS_11string_baseIcEEyEEEE8destructEPS4_, symObjAddr: 0x57FC, symBinAddr: 0x2B70C, symSize: 0x24 } - - { offsetInCU: 0x5D24, offset: 0x34487, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_5tupleIJyNS_11string_baseIcEEyEEEE15destructor_implIS4_NS5_27non_trivial_destructor_typeEE8destructEPS4_, symObjAddr: 0x5820, symBinAddr: 0x2B730, symSize: 0x3C } - - { offsetInCU: 0x5D4B, offset: 0x344AE, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJyNS_11string_baseIcEEyEEC1IRyJRS2_yEEEOT_DpOT0_, symObjAddr: 0x5898, symBinAddr: 0x2B794, symSize: 0x44 } - - { offsetInCU: 0x5DB9, offset: 0x3451C, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJyNS_11string_baseIcEEyEEC2IRyJRS2_yEEEOT_DpOT0_, symObjAddr: 0x58DC, symBinAddr: 0x2B7D8, symSize: 0x70 } - - { offsetInCU: 0x5E27, offset: 0x3458A, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm2EyEC2IRyEEOT_, symObjAddr: 0x594C, symBinAddr: 0x2B848, symSize: 0x40 } - - { offsetInCU: 0x5E67, offset: 0x345CA, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEEyEEC2IRS2_JyEEEOT_DpOT0_, symObjAddr: 0x598C, symBinAddr: 0x2B888, symSize: 0x5C } - - { offsetInCU: 0x5EC1, offset: 0x34624, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm2EyLb0EEC2IRyEEOT_, symObjAddr: 0x59E8, symBinAddr: 0x2B8E4, symSize: 0x40 } - - { offsetInCU: 0x5F01, offset: 0x34664, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJyEEC2IyJEEEOT_DpOT0_, symObjAddr: 0x5A68, symBinAddr: 0x2B924, symSize: 0x40 } - - { offsetInCU: 0x5F47, offset: 0x346AA, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm0EyEC2IyEEOT_, symObjAddr: 0x5AE8, symBinAddr: 0x2B964, symSize: 0x40 } - - { offsetInCU: 0x5F87, offset: 0x346EA, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0EyLb0EEC2IyEEOT_, symObjAddr: 0x5B28, symBinAddr: 0x2B9A4, symSize: 0x40 } - - { offsetInCU: 0x5FC6, offset: 0x34729, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_, symObjAddr: 0x5B68, symBinAddr: 0x2B9E4, symSize: 0x288 } - - { offsetInCU: 0x6054, offset: 0x347B7, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEgeIS4_S6_EEbRKNS0_IT_T0_EE, symObjAddr: 0x5E04, symBinAddr: 0x2BC80, symSize: 0xAC } - - { offsetInCU: 0x609A, offset: 0x347FD, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEleIS4_S6_EEbRKNS0_IT_T0_EE, symObjAddr: 0x5EB0, symBinAddr: 0x2BD2C, symSize: 0xAC } - - { offsetInCU: 0x60E0, offset: 0x34843, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEmiIS4_S6_EElRKNS0_IT_T0_EE, symObjAddr: 0x5F5C, symBinAddr: 0x2BDD8, symSize: 0xAC } - - { offsetInCU: 0x6126, offset: 0x34889, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE12set_capacityEmb, symObjAddr: 0x6008, symBinAddr: 0x2BE84, symSize: 0x230 } - - { offsetInCU: 0x6195, offset: 0x348F8, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEplEm, symObjAddr: 0x6238, symBinAddr: 0x2C0B4, symSize: 0x44 } - - { offsetInCU: 0x61D7, offset: 0x3493A, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEcvPS4_Ev, symObjAddr: 0x627C, symBinAddr: 0x2C0F8, symSize: 0x18 } - - { offsetInCU: 0x61FD, offset: 0x34960, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE8destructENS_14array_iteratorIS4_S5_EE, symObjAddr: 0x63D4, symBinAddr: 0x2C250, symSize: 0x34 } - - { offsetInCU: 0x6232, offset: 0x34995, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE9constructIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_, symObjAddr: 0x6408, symBinAddr: 0x2C284, symSize: 0x74 } - - { offsetInCU: 0x628F, offset: 0x349F2, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEptEv, symObjAddr: 0x647C, symBinAddr: 0x2C2F8, symSize: 0x18 } - - { offsetInCU: 0x62B6, offset: 0x34A19, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJyNS_11string_baseIcEEyEEC1EOS3_, symObjAddr: 0x6590, symBinAddr: 0x2C3F0, symSize: 0x34 } - - { offsetInCU: 0x62EA, offset: 0x34A4D, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJyNS_11string_baseIcEEyEEC2EOS3_, symObjAddr: 0x65C4, symBinAddr: 0x2C424, symSize: 0x48 } - - { offsetInCU: 0x6323, offset: 0x34A86, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEEyEEC2EOS3_, symObjAddr: 0x660C, symBinAddr: 0x2C46C, symSize: 0x40 } - - { offsetInCU: 0x6356, offset: 0x34AB9, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEpLEi, symObjAddr: 0x66B4, symBinAddr: 0x2C4AC, symSize: 0x30 } - - { offsetInCU: 0x638F, offset: 0x34AF2, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJyNS_11string_baseIcEEyEEaSEOS3_, symObjAddr: 0x66E4, symBinAddr: 0x2C4DC, symSize: 0x48 } - - { offsetInCU: 0x63C4, offset: 0x34B27, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEEyEEaSEOS3_, symObjAddr: 0x672C, symBinAddr: 0x2C524, symSize: 0x40 } - - { offsetInCU: 0x63F9, offset: 0x34B5C, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEC1IS4_EEPT_PKS6_, symObjAddr: 0x67D4, symBinAddr: 0x2C564, symSize: 0x3C } - - { offsetInCU: 0x6448, offset: 0x34BAB, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEC2IS4_EEPT_PKS6_, symObjAddr: 0x6810, symBinAddr: 0x2C5A0, symSize: 0x70 } - - { offsetInCU: 0x26, offset: 0x34CD6, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binary20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0x0, symBinAddr: 0x2C610, symSize: 0x44C } - - { offsetInCU: 0x32F8, offset: 0x37FA8, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binary20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0x0, symBinAddr: 0x2C610, symSize: 0x44C } - - { offsetInCU: 0x345F, offset: 0x3810F, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binary12on_file_openEb, symObjAddr: 0x550, symBinAddr: 0x2CA5C, symSize: 0x54 } - - { offsetInCU: 0x3493, offset: 0x38143, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binary17write_file_headerEv, symObjAddr: 0x5A4, symBinAddr: 0x2CAB0, symSize: 0x19C } - - { offsetInCU: 0x351C, offset: 0x381CC, size: 0x8, addend: 0x0, symName: __ZNK2bq18appender_file_base23write_with_cache_handle4dataEv, symObjAddr: 0x740, symBinAddr: 0x2CC4C, symSize: 0x18 } - - { offsetInCU: 0x3540, offset: 0x381F0, size: 0x8, addend: 0x0, symName: __ZNK2bq18appender_file_base23write_with_cache_handle13allcoated_lenEv, symObjAddr: 0x758, symBinAddr: 0x2CC64, symSize: 0x18 } - - { offsetInCU: 0x3564, offset: 0x38214, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binaryD1Ev, symObjAddr: 0x770, symBinAddr: 0x2CC7C, symSize: 0x14 } - - { offsetInCU: 0x358E, offset: 0x3823E, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binaryD0Ev, symObjAddr: 0x784, symBinAddr: 0x2CC90, symSize: 0xC } - - { offsetInCU: 0x57, offset: 0x382C9, size: 0x8, addend: 0x0, symName: __ZN2bqL28log_file_ext_name_compressedE, symObjAddr: 0x49740, symBinAddr: 0x68AE8, symSize: 0x0 } - - { offsetInCU: 0x4330, offset: 0x3C5A2, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm0EJbNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERS9_, symObjAddr: 0x1720, symBinAddr: 0x2E328, symSize: 0x24 } - - { offsetInCU: 0x437D, offset: 0x3C5EF, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm1EJbNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERS9_, symObjAddr: 0x1744, symBinAddr: 0x2E34C, symSize: 0x28 } - - { offsetInCU: 0x43CA, offset: 0x3C63C, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm2EJbNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERS9_, symObjAddr: 0x176C, symBinAddr: 0x2E374, symSize: 0x28 } - - { offsetInCU: 0x4417, offset: 0x3C689, size: 0x8, addend: 0x0, symName: __ZN2bq10make_tupleIJbNS_24appender_file_compressed9item_typeERNS_18appender_file_base22read_with_cache_handleEEEENS_5tupleIJDpNS_5decayIT_E4typeEEEEDpOS8_, symObjAddr: 0x4E78, symBinAddr: 0x31A80, symSize: 0x5C } - - { offsetInCU: 0x4478, offset: 0x3C6EA, size: 0x8, addend: 0x0, symName: __ZN2bq10make_tupleIJbRNS_24appender_file_compressed9item_typeERNS_18appender_file_base22read_with_cache_handleEEEENS_5tupleIJDpNS_5decayIT_E4typeEEEEDpOS9_, symObjAddr: 0x4ED4, symBinAddr: 0x31ADC, symSize: 0x5C } - - { offsetInCU: 0x44D9, offset: 0x3C74B, size: 0x8, addend: 0x0, symName: __ZN2bq41calculate_hash_64_for_compressed_appenderILb0EEEyPKvm, symObjAddr: 0x4F30, symBinAddr: 0x31B38, symSize: 0x1B4 } - - { offsetInCU: 0x4590, offset: 0x3C802, size: 0x8, addend: 0x0, symName: __ZN2bq41calculate_hash_64_for_compressed_appenderILb1EEEyPKvm, symObjAddr: 0xF5BC, symBinAddr: 0x3C09C, symSize: 0x1D8 } - - { offsetInCU: 0x461A, offset: 0x3C88C, size: 0x8, addend: 0x0, symName: __ZN2bq7align_4Em, symObjAddr: 0xF7CC, symBinAddr: 0x3C294, symSize: 0x4C } - - { offsetInCU: 0x46F2, offset: 0x3C964, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIbEEOT_RNS_16remove_referenceIS1_E4typeE, symObjAddr: 0x11228, symBinAddr: 0x3CDB0, symSize: 0x14 } - - { offsetInCU: 0x4727, offset: 0x3C999, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_24appender_file_compressed9item_typeEEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0x1123C, symBinAddr: 0x3CDC4, symSize: 0x14 } - - { offsetInCU: 0x475C, offset: 0x3C9CE, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRNS_18appender_file_base22read_with_cache_handleEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x11250, symBinAddr: 0x3CDD8, symSize: 0x14 } - - { offsetInCU: 0x4791, offset: 0x3CA03, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRNS_24appender_file_compressed9item_typeEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x11538, symBinAddr: 0x3D0C0, symSize: 0x14 } - - { offsetInCU: 0x47C6, offset: 0x3CA38, size: 0x8, addend: 0x0, symName: __ZN2bq17is_addr_8_alignedEPKv, symObjAddr: 0x116DC, symBinAddr: 0x3D264, symSize: 0x28 } - - { offsetInCU: 0x4864, offset: 0x3CAD6, size: 0x8, addend: 0x0, symName: __ZN2bq22__inner_hash_calculateIyyEENS_9enable_ifIXntoosr2bq7is_sameIT_fEE5valuesr2bq7is_sameIS2_dEE5valueET0_E4typeERKS2_, symObjAddr: 0x11C2C, symBinAddr: 0x3D404, symSize: 0x24 } - - { offsetInCU: 0x48D5, offset: 0x3CB47, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRyEEONS_16remove_referenceIT_E4typeEOS3_, symObjAddr: 0x11DA0, symBinAddr: 0x3D548, symSize: 0x14 } - - { offsetInCU: 0x490A, offset: 0x3CB7C, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRjEEONS_16remove_referenceIT_E4typeEOS3_, symObjAddr: 0x11DB4, symBinAddr: 0x3D55C, symSize: 0x14 } - - { offsetInCU: 0x493F, offset: 0x3CBB1, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRKyEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0x11DC8, symBinAddr: 0x3D570, symSize: 0x14 } - - { offsetInCU: 0x5648, offset: 0x3D8BA, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed9init_implERKNS_14property_valueE, symObjAddr: 0x0, symBinAddr: 0x2CC9C, symSize: 0x74 } - - { offsetInCU: 0x56C6, offset: 0x3D938, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed12on_file_openEb, symObjAddr: 0x74, symBinAddr: 0x2CD10, symSize: 0x54 } - - { offsetInCU: 0x58CB, offset: 0x3DB3D, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv, symObjAddr: 0xC8, symBinAddr: 0x2CD64, symSize: 0x928 } - - { offsetInCU: 0x5DD3, offset: 0x3E045, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed17get_file_ext_nameEv, symObjAddr: 0xA50, symBinAddr: 0x2D68C, symSize: 0x3C } - - { offsetInCU: 0x5DF9, offset: 0x3E06B, size: 0x8, addend: 0x0, symName: __ZNK2bq24appender_file_compressed25get_binary_format_versionEv, symObjAddr: 0xAC0, symBinAddr: 0x2D6C8, symSize: 0x14 } - - { offsetInCU: 0x5E68, offset: 0x3E0DA, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0xAD4, symBinAddr: 0x2D6DC, symSize: 0x338 } - - { offsetInCU: 0x5F8B, offset: 0x3E1FD, size: 0x8, addend: 0x0, symName: '__ZN2bq32_st_appender_file_exist_callbackIZNS_24appender_file_compressed20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextEE3$_0EC1ERKS5_', symObjAddr: 0xE0C, symBinAddr: 0x2DA14, symSize: 0x34 } - - { offsetInCU: 0x6040, offset: 0x3E2B2, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed14read_item_dataERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0xE40, symBinAddr: 0x2DA48, symSize: 0x8BC } - - { offsetInCU: 0x6613, offset: 0x3E885, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE, symObjAddr: 0x1794, symBinAddr: 0x2E39C, symSize: 0x2F80 } - - { offsetInCU: 0x7B06, offset: 0x3FD78, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed26parse_thread_info_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE, symObjAddr: 0x4738, symBinAddr: 0x31340, symSize: 0x84 } - - { offsetInCU: 0x7BC0, offset: 0x3FE32, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed15parse_log_entryERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE, symObjAddr: 0x47BC, symBinAddr: 0x313C4, symSize: 0x66C } - - { offsetInCU: 0x7CB2, offset: 0x3FF24, size: 0x8, addend: 0x0, symName: '__ZN2bq32_st_appender_file_exist_callbackIZNS_24appender_file_compressed20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextEE3$_0ED1Ev', symObjAddr: 0x4E4C, symBinAddr: 0x31A54, symSize: 0x2C } - - { offsetInCU: 0x7CDA, offset: 0x3FF4C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed24get_format_template_hashENS_9log_levelEjy, symObjAddr: 0x50E4, symBinAddr: 0x31CEC, symSize: 0x70 } - - { offsetInCU: 0x7D4C, offset: 0x3FFBE, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EEixEm, symObjAddr: 0x5230, symBinAddr: 0x31D5C, symSize: 0x74 } - - { offsetInCU: 0x7F38, offset: 0x401AA, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE, symObjAddr: 0x52F0, symBinAddr: 0x31DD0, symSize: 0xA040 } - - { offsetInCU: 0xA380, offset: 0x425F2, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23write_with_cache_handle14reset_used_lenEm, symObjAddr: 0xF7AC, symBinAddr: 0x3C274, symSize: 0x20 } - - { offsetInCU: 0xA3B1, offset: 0x42623, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD1Ev, symObjAddr: 0xF818, symBinAddr: 0x3C2E0, symSize: 0x2C } - - { offsetInCU: 0xA3DB, offset: 0x4264D, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD0Ev, symObjAddr: 0xF844, symBinAddr: 0x3C30C, symSize: 0x30 } - - { offsetInCU: 0xA406, offset: 0x42678, size: 0x8, addend: 0x0, symName: __ZNK2bq24appender_file_compressed19get_appender_formatEv, symObjAddr: 0xF874, symBinAddr: 0x3C33C, symSize: 0x14 } - - { offsetInCU: 0xA42A, offset: 0x4269C, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm2EbLb0EE3getEv, symObjAddr: 0xF93C, symBinAddr: 0x3C350, symSize: 0x14 } - - { offsetInCU: 0xA44E, offset: 0x426C0, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm1ENS_24appender_file_compressed9item_typeELb0EE3getEv, symObjAddr: 0xF950, symBinAddr: 0x3C364, symSize: 0x14 } - - { offsetInCU: 0xA472, offset: 0x426E4, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_18appender_file_base22read_with_cache_handleELb0EE3getEv, symObjAddr: 0xF964, symBinAddr: 0x3C378, symSize: 0x14 } - - { offsetInCU: 0xA4F3, offset: 0x42765, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD2Ev, symObjAddr: 0xF978, symBinAddr: 0x3C38C, symSize: 0x7B0 } - - { offsetInCU: 0xA98B, offset: 0x42BFD, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binaryD2Ev, symObjAddr: 0x10154, symBinAddr: 0x3CB3C, symSize: 0x2C } - - { offsetInCU: 0xA9B6, offset: 0x42C28, size: 0x8, addend: 0x0, symName: __ZN2bq15hash_map_inlineIyjE22value_node_buffer_headINS1_10value_nodeEEixEj, symObjAddr: 0x10234, symBinAddr: 0x3CB68, symSize: 0x74 } - - { offsetInCU: 0xA9E7, offset: 0x42C59, size: 0x8, addend: 0x0, symName: __ZN2bq24hash_map_iterator_inlineIyjLb0EEC1EPNS_15hash_map_inlineIyjEEjj, symObjAddr: 0x102A8, symBinAddr: 0x3CBDC, symSize: 0x44 } - - { offsetInCU: 0xAA3A, offset: 0x42CAC, size: 0x8, addend: 0x0, symName: __ZN2bq24hash_map_iterator_inlineIyjLb0EEC2EPNS_15hash_map_inlineIyjEEjj, symObjAddr: 0x102EC, symBinAddr: 0x3CC20, symSize: 0x38 } - - { offsetInCU: 0xAA8C, offset: 0x42CFE, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIyE8destructEPy, symObjAddr: 0x10324, symBinAddr: 0x3CC58, symSize: 0x24 } - - { offsetInCU: 0xAAAE, offset: 0x42D20, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIyE15destructor_implIyNS1_23trivial_destructor_typeEE8destructEPy, symObjAddr: 0x10348, symBinAddr: 0x3CC7C, symSize: 0x10 } - - { offsetInCU: 0xAAD0, offset: 0x42D42, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIjE8destructEPj, symObjAddr: 0x10358, symBinAddr: 0x3CC8C, symSize: 0x24 } - - { offsetInCU: 0xAAF2, offset: 0x42D64, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIjE15destructor_implIjNS1_23trivial_destructor_typeEE8destructEPj, symObjAddr: 0x1037C, symBinAddr: 0x3CCB0, symSize: 0x10 } - - { offsetInCU: 0xAB14, offset: 0x42D86, size: 0x8, addend: 0x0, symName: __ZNK2bq15hash_map_inlineIyjE22value_node_buffer_headINS1_10value_nodeEEixEj, symObjAddr: 0x1038C, symBinAddr: 0x3CCC0, symSize: 0x74 } - - { offsetInCU: 0xAB46, offset: 0x42DB8, size: 0x8, addend: 0x0, symName: '__ZN2bq32_st_appender_file_exist_callbackIZNS_24appender_file_compressed20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextEE3$_0EC2ERKS5_', symObjAddr: 0x111AC, symBinAddr: 0x3CD34, symSize: 0x24 } - - { offsetInCU: 0xAB7B, offset: 0x42DED, size: 0x8, addend: 0x0, symName: '__ZN2bq32_st_appender_file_exist_callbackIZNS_24appender_file_compressed20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextEE3$_0ED2Ev', symObjAddr: 0x111D0, symBinAddr: 0x3CD58, symSize: 0x2C } - - { offsetInCU: 0xABA8, offset: 0x42E1A, size: 0x8, addend: 0x0, symName: '__ZZN2bq24appender_file_compressed20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextEENK3$_0clEv', symObjAddr: 0x111FC, symBinAddr: 0x3CD84, symSize: 0x2C } - - { offsetInCU: 0xABDA, offset: 0x42E4C, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJbNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEC1IbJS2_RS4_EEEOT_DpOT0_, symObjAddr: 0x11264, symBinAddr: 0x3CDEC, symSize: 0x44 } - - { offsetInCU: 0xAC48, offset: 0x42EBA, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJbNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEC2IbJS2_RS4_EEEOT_DpOT0_, symObjAddr: 0x112A8, symBinAddr: 0x3CE30, symSize: 0x70 } - - { offsetInCU: 0xACB6, offset: 0x42F28, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm2EbEC2IbEEOT_, symObjAddr: 0x11318, symBinAddr: 0x3CEA0, symSize: 0x40 } - - { offsetInCU: 0xACF6, offset: 0x42F68, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEC2IS2_JRS4_EEEOT_DpOT0_, symObjAddr: 0x11358, symBinAddr: 0x3CEE0, symSize: 0x5C } - - { offsetInCU: 0xAD50, offset: 0x42FC2, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm2EbLb0EEC2IbEEOT_, symObjAddr: 0x113B4, symBinAddr: 0x3CF3C, symSize: 0x44 } - - { offsetInCU: 0xAD90, offset: 0x43002, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm1ENS_24appender_file_compressed9item_typeEEC2IS2_EEOT_, symObjAddr: 0x113F8, symBinAddr: 0x3CF80, symSize: 0x40 } - - { offsetInCU: 0xADD0, offset: 0x43042, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_18appender_file_base22read_with_cache_handleEEEC2IRS2_JEEEOT_DpOT0_, symObjAddr: 0x11438, symBinAddr: 0x3CFC0, symSize: 0x40 } - - { offsetInCU: 0xAE16, offset: 0x43088, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm1ENS_24appender_file_compressed9item_typeELb0EEC2IS2_EEOT_, symObjAddr: 0x11478, symBinAddr: 0x3D000, symSize: 0x40 } - - { offsetInCU: 0xAE56, offset: 0x430C8, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm0ENS_18appender_file_base22read_with_cache_handleEEC2IRS2_EEOT_, symObjAddr: 0x114B8, symBinAddr: 0x3D040, symSize: 0x40 } - - { offsetInCU: 0xAE96, offset: 0x43108, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_18appender_file_base22read_with_cache_handleELb0EEC2IRS2_EEOT_, symObjAddr: 0x114F8, symBinAddr: 0x3D080, symSize: 0x40 } - - { offsetInCU: 0xAED6, offset: 0x43148, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJbNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEC1IbJRS2_RS4_EEEOT_DpOT0_, symObjAddr: 0x1154C, symBinAddr: 0x3D0D4, symSize: 0x44 } - - { offsetInCU: 0xAF44, offset: 0x431B6, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJbNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEC2IbJRS2_RS4_EEEOT_DpOT0_, symObjAddr: 0x11590, symBinAddr: 0x3D118, symSize: 0x70 } - - { offsetInCU: 0xAFB2, offset: 0x43224, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEC2IRS2_JRS4_EEEOT_DpOT0_, symObjAddr: 0x11600, symBinAddr: 0x3D188, symSize: 0x5C } - - { offsetInCU: 0xB00C, offset: 0x4327E, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm1ENS_24appender_file_compressed9item_typeEEC2IRS2_EEOT_, symObjAddr: 0x1165C, symBinAddr: 0x3D1E4, symSize: 0x40 } - - { offsetInCU: 0xB04C, offset: 0x432BE, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm1ENS_24appender_file_compressed9item_typeELb0EEC2IRS2_EEOT_, symObjAddr: 0x1169C, symBinAddr: 0x3D224, symSize: 0x40 } - - { offsetInCU: 0xB08D, offset: 0x432FF, size: 0x8, addend: 0x0, symName: __ZN2bq17data_value_helperIyLb0EE14get_data_valueEPKv, symObjAddr: 0x11704, symBinAddr: 0x3D28C, symSize: 0x20 } - - { offsetInCU: 0xB0BD, offset: 0x4332F, size: 0x8, addend: 0x0, symName: __ZN2bq17data_value_helperIjLb0EE14get_data_valueEPKv, symObjAddr: 0x11724, symBinAddr: 0x3D2AC, symSize: 0x20 } - - { offsetInCU: 0xB0EC, offset: 0x4335E, size: 0x8, addend: 0x0, symName: __ZN2bq24hash_map_iterator_inlineIyjLb1EEC1ILb0EEERKNS0_IyjXT_EEE, symObjAddr: 0x11A70, symBinAddr: 0x3D2CC, symSize: 0x34 } - - { offsetInCU: 0xB12D, offset: 0x4339F, size: 0x8, addend: 0x0, symName: __ZNK2bq15hash_map_inlineIyjE22value_node_buffer_headINS1_10value_nodeEE4sizeEv, symObjAddr: 0x11AA4, symBinAddr: 0x3D300, symSize: 0x18 } - - { offsetInCU: 0xB151, offset: 0x433C3, size: 0x8, addend: 0x0, symName: __ZN2bq24hash_map_iterator_inlineIyjLb1EEC2ILb0EEERKNS0_IyjXT_EEE, symObjAddr: 0x11ABC, symBinAddr: 0x3D318, symSize: 0x3C } - - { offsetInCU: 0xB191, offset: 0x43403, size: 0x8, addend: 0x0, symName: __ZN2bq15hash_map_inlineIyjE22value_node_buffer_headIjEixEj, symObjAddr: 0x11AF8, symBinAddr: 0x3D354, symSize: 0x74 } - - { offsetInCU: 0xB1C3, offset: 0x43435, size: 0x8, addend: 0x0, symName: __ZNK2bq15hash_map_inlineIyjE22value_node_buffer_headIjE4sizeEv, symObjAddr: 0x11B6C, symBinAddr: 0x3D3C8, symSize: 0x18 } - - { offsetInCU: 0xB1E7, offset: 0x43459, size: 0x8, addend: 0x0, symName: __ZN2bq27number_type_hash_calculatorIyE9hash_codeERKy, symObjAddr: 0x11C08, symBinAddr: 0x3D3E0, symSize: 0x24 } - - { offsetInCU: 0xB209, offset: 0x4347B, size: 0x8, addend: 0x0, symName: __ZN2bq28integer_type_hash_calculatorIyE9hash_codeERKy, symObjAddr: 0x11C50, symBinAddr: 0x3D428, symSize: 0x18 } - - { offsetInCU: 0xB22B, offset: 0x4349D, size: 0x8, addend: 0x0, symName: __ZNK2bq15hash_map_inlineIyjE22value_node_buffer_headIjEixEj, symObjAddr: 0x11C68, symBinAddr: 0x3D440, symSize: 0x74 } - - { offsetInCU: 0xB25C, offset: 0x434CE, size: 0x8, addend: 0x0, symName: __ZN2bq14kv_pair_inlineIjjEC1IRjS3_EEOT_OT0_, symObjAddr: 0x11CDC, symBinAddr: 0x3D4B4, symSize: 0x3C } - - { offsetInCU: 0xB2B2, offset: 0x43524, size: 0x8, addend: 0x0, symName: __ZN2bq14kv_pair_inlineIjjEC2IRjS3_EEOT_OT0_, symObjAddr: 0x11D18, symBinAddr: 0x3D4F0, symSize: 0x58 } - - { offsetInCU: 0xB309, offset: 0x4357B, size: 0x8, addend: 0x0, symName: __ZN2bq17data_value_helperIyLb1EE14get_data_valueEPKv, symObjAddr: 0x11DDC, symBinAddr: 0x3D584, symSize: 0x18 } - - { offsetInCU: 0xB32B, offset: 0x4359D, size: 0x8, addend: 0x0, symName: __ZN2bq17data_value_helperIjLb1EE14get_data_valueEPKv, symObjAddr: 0x11DF4, symBinAddr: 0x3D59C, symSize: 0x18 } - - { offsetInCU: 0x57, offset: 0x436BF, size: 0x8, addend: 0x0, symName: __ZN2bqL21log_file_ext_name_rawE, symObjAddr: 0x12EF8, symBinAddr: 0x68B00, symSize: 0x0 } - - { offsetInCU: 0x22F1, offset: 0x45959, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_raw8log_implERKNS_16log_entry_handleE, symObjAddr: 0x0, symBinAddr: 0x3D610, symSize: 0xE0 } - - { offsetInCU: 0x2389, offset: 0x459F1, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_raw17get_file_ext_nameEv, symObjAddr: 0x158, symBinAddr: 0x3D6F0, symSize: 0x3C } - - { offsetInCU: 0x23AF, offset: 0x45A17, size: 0x8, addend: 0x0, symName: __ZNK2bq17appender_file_raw25get_binary_format_versionEv, symObjAddr: 0x1C8, symBinAddr: 0x3D72C, symSize: 0x14 } - - { offsetInCU: 0x23D5, offset: 0x45A3D, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawD1Ev, symObjAddr: 0x1DC, symBinAddr: 0x3D740, symSize: 0x2C } - - { offsetInCU: 0x23FF, offset: 0x45A67, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawD0Ev, symObjAddr: 0x208, symBinAddr: 0x3D76C, symSize: 0x30 } - - { offsetInCU: 0x2429, offset: 0x45A91, size: 0x8, addend: 0x0, symName: __ZNK2bq17appender_file_raw19get_appender_formatEv, symObjAddr: 0x238, symBinAddr: 0x3D79C, symSize: 0x14 } - - { offsetInCU: 0x244D, offset: 0x45AB5, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawD2Ev, symObjAddr: 0x300, symBinAddr: 0x3D7B0, symSize: 0x2C } - - { offsetInCU: 0x57, offset: 0x45B40, size: 0x8, addend: 0x0, symName: __ZN2bqL22log_file_ext_name_textE, symObjAddr: 0x1C480, symBinAddr: 0x68B18, symSize: 0x0 } - - { offsetInCU: 0x328E, offset: 0x48D77, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text8log_implERKNS_16log_entry_handleE, symObjAddr: 0x0, symBinAddr: 0x3D838, symSize: 0x140 } - - { offsetInCU: 0x3317, offset: 0x48E00, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0x1C8, symBinAddr: 0x3D978, symSize: 0x1C } - - { offsetInCU: 0x334B, offset: 0x48E34, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text12on_file_openEb, symObjAddr: 0x1E4, symBinAddr: 0x3D994, symSize: 0x38 } - - { offsetInCU: 0x337F, offset: 0x48E68, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text17get_file_ext_nameEv, symObjAddr: 0x27C, symBinAddr: 0x3D9CC, symSize: 0x3C } - - { offsetInCU: 0x33A5, offset: 0x48E8E, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textD1Ev, symObjAddr: 0x2EC, symBinAddr: 0x3DA08, symSize: 0x2C } - - { offsetInCU: 0x33CF, offset: 0x48EB8, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textD0Ev, symObjAddr: 0x318, symBinAddr: 0x3DA34, symSize: 0x30 } - - { offsetInCU: 0x33F9, offset: 0x48EE2, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textD2Ev, symObjAddr: 0x494, symBinAddr: 0x3DA64, symSize: 0x2C } - - { offsetInCU: 0x26, offset: 0x48F37, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base4initERKNS_11file_handleE, symObjAddr: 0x0, symBinAddr: 0x3DAEC, symSize: 0x34C } - - { offsetInCU: 0x1945, offset: 0x4A856, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base4initERKNS_11file_handleE, symObjAddr: 0x0, symBinAddr: 0x3DAEC, symSize: 0x34C } - - { offsetInCU: 0x1A69, offset: 0x4A97A, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base23seek_read_file_absoluteEm, symObjAddr: 0x34C, symBinAddr: 0x3DE38, symSize: 0x54 } - - { offsetInCU: 0x1A9D, offset: 0x4A9AE, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base15read_with_cacheEm, symObjAddr: 0x3A0, symBinAddr: 0x3DE8C, symSize: 0x260 } - - { offsetInCU: 0x1B28, offset: 0x4AA39, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base6decodeEv, symObjAddr: 0x7FC, symBinAddr: 0x3E0EC, symSize: 0x2C } - - { offsetInCU: 0x1B4E, offset: 0x4AA5F, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base16clear_read_cacheEv, symObjAddr: 0x828, symBinAddr: 0x3E118, symSize: 0x5C } - - { offsetInCU: 0x1B74, offset: 0x4AA85, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base21seek_read_file_offsetEi, symObjAddr: 0x884, symBinAddr: 0x3E174, symSize: 0xC4 } - - { offsetInCU: 0x1BB6, offset: 0x4AAC7, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base29do_decode_by_log_entry_handleERKNS_16log_entry_handleE, symObjAddr: 0xE60, symBinAddr: 0x3E238, symSize: 0x140 } - - { offsetInCU: 0x26, offset: 0x4AB34, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed12init_privateEv, symObjAddr: 0x0, symBinAddr: 0x3E378, symSize: 0x48 } - - { offsetInCU: 0x2D35, offset: 0x4D843, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm0EJNS_22appender_decode_resultENS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERSA_, symObjAddr: 0xC4C, symBinAddr: 0x3EF4C, symSize: 0x24 } - - { offsetInCU: 0x2D82, offset: 0x4D890, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm1EJNS_22appender_decode_resultENS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERSA_, symObjAddr: 0xC70, symBinAddr: 0x3EF70, symSize: 0x28 } - - { offsetInCU: 0x2DCF, offset: 0x4D8DD, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm2EJNS_22appender_decode_resultENS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERSA_, symObjAddr: 0xC98, symBinAddr: 0x3EF98, symSize: 0x28 } - - { offsetInCU: 0x2E1C, offset: 0x4D92A, size: 0x8, addend: 0x0, symName: __ZN2bq10make_tupleIJNS_22appender_decode_resultENS_24appender_file_compressed9item_typeERNS_21appender_decoder_base22read_with_cache_handleEEEENS_5tupleIJDpNS_5decayIT_E4typeEEEEDpOS9_, symObjAddr: 0x5844, symBinAddr: 0x43B44, symSize: 0x5C } - - { offsetInCU: 0x2E7D, offset: 0x4D98B, size: 0x8, addend: 0x0, symName: __ZN2bq10make_tupleIJNS_22appender_decode_resultERNS_24appender_file_compressed9item_typeERNS_21appender_decoder_base22read_with_cache_handleEEEENS_5tupleIJDpNS_5decayIT_E4typeEEEEDpOSA_, symObjAddr: 0x58A0, symBinAddr: 0x43BA0, symSize: 0x5C } - - { offsetInCU: 0x2FEA, offset: 0x4DAF8, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_22appender_decode_resultEEEOT_RNS_16remove_referenceIS2_E4typeE, symObjAddr: 0x81E4, symBinAddr: 0x451E0, symSize: 0x14 } - - { offsetInCU: 0x301F, offset: 0x4DB2D, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRNS_21appender_decoder_base22read_with_cache_handleEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x820C, symBinAddr: 0x451F4, symSize: 0x14 } - - { offsetInCU: 0x3054, offset: 0x4DB62, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_27appender_decoder_compressed20decoder_log_templateEEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0x8960, symBinAddr: 0x45834, symSize: 0x14 } - - { offsetInCU: 0x3089, offset: 0x4DB97, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveINS_27appender_decoder_compressed20decoder_log_templateEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS4_EE5valueEvE4typeEPS4_S7_m, symObjAddr: 0x8E38, symBinAddr: 0x45D0C, symSize: 0x140 } - - { offsetInCU: 0x3144, offset: 0x4DC52, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyINS_27appender_decoder_compressed20decoder_log_templateEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS4_EE5valueEvE4typeEPS4_S7_m, symObjAddr: 0x90E4, symBinAddr: 0x45FB8, symSize: 0xCC } - - { offsetInCU: 0x31B6, offset: 0x4DCC4, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_27appender_decoder_compressed20decoder_log_templateEEEONS_16remove_referenceIT_E4typeEOS5_, symObjAddr: 0x91CC, symBinAddr: 0x46084, symSize: 0x14 } - - { offsetInCU: 0x31EB, offset: 0x4DCF9, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_27appender_decoder_compressed28decoder_thread_info_templateEEEONS_16remove_referenceIT_E4typeEOS5_, symObjAddr: 0xA780, symBinAddr: 0x47284, symSize: 0x14 } - - { offsetInCU: 0x373E, offset: 0x4E24C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12expand_nodesEj, symObjAddr: 0xA098, symBinAddr: 0x46D3C, symSize: 0x2F0 } - - { offsetInCU: 0x3D6B, offset: 0x4E879, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed12init_privateEv, symObjAddr: 0x0, symBinAddr: 0x3E378, symSize: 0x48 } - - { offsetInCU: 0x3D91, offset: 0x4E89F, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE5clearEv, symObjAddr: 0x48, symBinAddr: 0x3E3C0, symSize: 0x6C } - - { offsetInCU: 0x3DB8, offset: 0x4E8C6, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE15set_expand_rateEf, symObjAddr: 0xB4, symBinAddr: 0x3E42C, symSize: 0x20 } - - { offsetInCU: 0x3E36, offset: 0x4E944, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed14decode_privateEv, symObjAddr: 0xD4, symBinAddr: 0x3E44C, symSize: 0x248 } - - { offsetInCU: 0x3F91, offset: 0x4EA9F, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed14read_item_dataEv, symObjAddr: 0x394, symBinAddr: 0x3E694, symSize: 0x894 } - - { offsetInCU: 0x413D, offset: 0x4EC4B, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed22parse_formate_templateERKNS_21appender_decoder_base22read_with_cache_handleE, symObjAddr: 0xCC0, symBinAddr: 0x3EFC0, symSize: 0x82C } - - { offsetInCU: 0x4331, offset: 0x4EE3F, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed26parse_thread_info_templateERKNS_21appender_decoder_base22read_with_cache_handleE, symObjAddr: 0x1510, symBinAddr: 0x3F810, symSize: 0xD84 } - - { offsetInCU: 0x4641, offset: 0x4F14F, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed15parse_log_entryERKNS_21appender_decoder_base22read_with_cache_handleE, symObjAddr: 0x22DC, symBinAddr: 0x405DC, symSize: 0x3410 } - - { offsetInCU: 0x4DF9, offset: 0x4F907, size: 0x8, addend: 0x0, symName: __ZNK2bq27appender_decoder_compressed25get_binary_format_versionEv, symObjAddr: 0x5830, symBinAddr: 0x43B30, symSize: 0x14 } - - { offsetInCU: 0x4E1F, offset: 0x4F92D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE9push_backIJS2_EEEmDpOT_, symObjAddr: 0x58FC, symBinAddr: 0x43BFC, symSize: 0x58 } - - { offsetInCU: 0x4E64, offset: 0x4F972, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed20decoder_log_templateC1Ev, symObjAddr: 0x5954, symBinAddr: 0x43C54, symSize: 0x2C } - - { offsetInCU: 0x4E8E, offset: 0x4F99C, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed20decoder_log_templateD1Ev, symObjAddr: 0x5980, symBinAddr: 0x43C80, symSize: 0x2C } - - { offsetInCU: 0x4EB8, offset: 0x4F9C6, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EEixEm, symObjAddr: 0x59AC, symBinAddr: 0x43CAC, symSize: 0x7C } - - { offsetInCU: 0x4EED, offset: 0x4F9FB, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE4sizeEv, symObjAddr: 0x5A28, symBinAddr: 0x43D28, symSize: 0x18 } - - { offsetInCU: 0x4F14, offset: 0x4FA22, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEixERKy, symObjAddr: 0x5D4C, symBinAddr: 0x43D40, symSize: 0x90 } - - { offsetInCU: 0x4F56, offset: 0x4FA64, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE4findERKy, symObjAddr: 0x5F2C, symBinAddr: 0x43DD0, symSize: 0x74 } - - { offsetInCU: 0x4F9D, offset: 0x4FAAB, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb0EEeqILb0EEEbRKNS0_IyS2_XT_EEE, symObjAddr: 0x5FA0, symBinAddr: 0x43E44, symSize: 0xEC } - - { offsetInCU: 0x4FDB, offset: 0x4FAE9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE3endEv, symObjAddr: 0x608C, symBinAddr: 0x43F30, symSize: 0x38 } - - { offsetInCU: 0x5002, offset: 0x4FB10, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EEixEm, symObjAddr: 0x61EC, symBinAddr: 0x43F68, symSize: 0x74 } - - { offsetInCU: 0x5037, offset: 0x4FB45, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIhNS_5arrayIhLm0EEEEplEi, symObjAddr: 0x63AC, symBinAddr: 0x43FDC, symSize: 0x40 } - - { offsetInCU: 0x5079, offset: 0x4FB87, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb0EEptEv, symObjAddr: 0x63EC, symBinAddr: 0x4401C, symSize: 0x34 } - - { offsetInCU: 0x509F, offset: 0x4FBAD, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE5valueEv, symObjAddr: 0x6420, symBinAddr: 0x44050, symSize: 0x18 } - - { offsetInCU: 0x50C3, offset: 0x4FBD1, size: 0x8, addend: 0x0, symName: __ZN2bq16log_entry_handleC1EPKhj, symObjAddr: 0x6450, symBinAddr: 0x44068, symSize: 0x3C } - - { offsetInCU: 0x5107, offset: 0x4FC15, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressedD1Ev, symObjAddr: 0x648C, symBinAddr: 0x440A4, symSize: 0x2C } - - { offsetInCU: 0x5131, offset: 0x4FC3F, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressedD0Ev, symObjAddr: 0x64B8, symBinAddr: 0x440D0, symSize: 0x30 } - - { offsetInCU: 0x515B, offset: 0x4FC69, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm2ENS_22appender_decode_resultELb0EE3getEv, symObjAddr: 0x64E8, symBinAddr: 0x44100, symSize: 0x14 } - - { offsetInCU: 0x517F, offset: 0x4FC8D, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_21appender_decoder_base22read_with_cache_handleELb0EE3getEv, symObjAddr: 0x6510, symBinAddr: 0x44114, symSize: 0x14 } - - { offsetInCU: 0x51A3, offset: 0x4FCB1, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed20decoder_log_templateC2Ev, symObjAddr: 0x6524, symBinAddr: 0x44128, symSize: 0x48 } - - { offsetInCU: 0x51CD, offset: 0x4FCDB, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed20decoder_log_templateD2Ev, symObjAddr: 0x65E4, symBinAddr: 0x44170, symSize: 0x30 } - - { offsetInCU: 0x51F7, offset: 0x4FD05, size: 0x8, addend: 0x0, symName: __ZN2bq16log_entry_handleC2EPKhj, symObjAddr: 0x66F4, symBinAddr: 0x441A0, symSize: 0x2C } - - { offsetInCU: 0x523B, offset: 0x4FD49, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressedD2Ev, symObjAddr: 0x6720, symBinAddr: 0x441CC, symSize: 0x60 } - - { offsetInCU: 0x5265, offset: 0x4FD73, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEED1Ev, symObjAddr: 0x67AC, symBinAddr: 0x4422C, symSize: 0x2C } - - { offsetInCU: 0x528F, offset: 0x4FD9D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EED1Ev, symObjAddr: 0x67D8, symBinAddr: 0x44258, symSize: 0x2C } - - { offsetInCU: 0x52B9, offset: 0x4FDC7, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_baseD2Ev, symObjAddr: 0x6804, symBinAddr: 0x44284, symSize: 0x70 } - - { offsetInCU: 0x52E1, offset: 0x4FDEF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEED2Ev, symObjAddr: 0x68FC, symBinAddr: 0x442F4, symSize: 0x2C } - - { offsetInCU: 0x530B, offset: 0x4FE19, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE5resetEv, symObjAddr: 0x6928, symBinAddr: 0x44320, symSize: 0xF8 } - - { offsetInCU: 0x534F, offset: 0x4FE5D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE5beginEv, symObjAddr: 0x6A20, symBinAddr: 0x44418, symSize: 0x84 } - - { offsetInCU: 0x5376, offset: 0x4FE84, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb0EEneILb0EEEbRKNS0_IyS2_XT_EEE, symObjAddr: 0x6AA4, symBinAddr: 0x4449C, symSize: 0x34 } - - { offsetInCU: 0x53B4, offset: 0x4FEC2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE8destructERNS_17hash_map_iteratorIyS2_Lb0EEE, symObjAddr: 0x6AD8, symBinAddr: 0x444D0, symSize: 0x3C } - - { offsetInCU: 0x53EA, offset: 0x4FEF8, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb0EEppEv, symObjAddr: 0x6B14, symBinAddr: 0x4450C, symSize: 0x88 } - - { offsetInCU: 0x5410, offset: 0x4FF1E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headINS3_10value_nodeEEixEj, symObjAddr: 0x6B9C, symBinAddr: 0x44594, symSize: 0x7C } - - { offsetInCU: 0x5442, offset: 0x4FF50, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb0EEC1EPNS_8hash_mapIyS2_EEjj, symObjAddr: 0x6C18, symBinAddr: 0x44610, symSize: 0x44 } - - { offsetInCU: 0x5494, offset: 0x4FFA2, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb0EEC2EPNS_8hash_mapIyS2_EEjj, symObjAddr: 0x6C5C, symBinAddr: 0x44654, symSize: 0x38 } - - { offsetInCU: 0x54E6, offset: 0x4FFF4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12destruct_keyERNS_17hash_map_iteratorIyS2_Lb0EEE, symObjAddr: 0x6C94, symBinAddr: 0x4468C, symSize: 0x2C } - - { offsetInCU: 0x551C, offset: 0x5002A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14destruct_valueERNS_17hash_map_iteratorIyS2_Lb0EEE, symObjAddr: 0x6CC0, symBinAddr: 0x446B8, symSize: 0x30 } - - { offsetInCU: 0x5556, offset: 0x50064, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_27appender_decoder_compressed28decoder_thread_info_templateEE8destructEPS2_, symObjAddr: 0x6D24, symBinAddr: 0x446E8, symSize: 0x24 } - - { offsetInCU: 0x5578, offset: 0x50086, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_27appender_decoder_compressed28decoder_thread_info_templateEE15destructor_implIS2_NS3_27non_trivial_destructor_typeEE8destructEPS2_, symObjAddr: 0x6D48, symBinAddr: 0x4470C, symSize: 0x3C } - - { offsetInCU: 0x559F, offset: 0x500AD, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed28decoder_thread_info_templateD1Ev, symObjAddr: 0x6D84, symBinAddr: 0x44748, symSize: 0x2C } - - { offsetInCU: 0x55C9, offset: 0x500D7, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed28decoder_thread_info_templateD2Ev, symObjAddr: 0x6DB0, symBinAddr: 0x44774, symSize: 0x30 } - - { offsetInCU: 0x55F3, offset: 0x50101, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE19get_next_node_indexEj, symObjAddr: 0x6DE0, symBinAddr: 0x447A4, symSize: 0x68 } - - { offsetInCU: 0x5629, offset: 0x50137, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headINS3_10value_nodeEEixEj, symObjAddr: 0x6E48, symBinAddr: 0x4480C, symSize: 0x7C } - - { offsetInCU: 0x565B, offset: 0x50169, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EED2Ev, symObjAddr: 0x6EC4, symBinAddr: 0x44888, symSize: 0x2C } - - { offsetInCU: 0x5685, offset: 0x50193, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE5resetIS2_EENS_9enable_ifIXntsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x6EF0, symBinAddr: 0x448B4, symSize: 0x6C } - - { offsetInCU: 0x56BA, offset: 0x501C8, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_27appender_decoder_compressed20decoder_log_templateEE8destructEPS2_m, symObjAddr: 0x6F5C, symBinAddr: 0x44920, symSize: 0x2C } - - { offsetInCU: 0x56EA, offset: 0x501F8, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_27appender_decoder_compressed20decoder_log_templateEE15destructor_implIS2_NS3_27non_trivial_destructor_typeEE8destructEPS2_m, symObjAddr: 0x6F88, symBinAddr: 0x4494C, symSize: 0x84 } - - { offsetInCU: 0x5736, offset: 0x50244, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_27appender_decoder_compressed20decoder_log_templateEE8destructEPS2_, symObjAddr: 0x700C, symBinAddr: 0x449D0, symSize: 0x24 } - - { offsetInCU: 0x5758, offset: 0x50266, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_27appender_decoder_compressed20decoder_log_templateEE15destructor_implIS2_NS3_27non_trivial_destructor_typeEE8destructEPS2_, symObjAddr: 0x7030, symBinAddr: 0x449F4, symSize: 0x3C } - - { offsetInCU: 0x577A, offset: 0x50288, size: 0x8, addend: 0x0, symName: __ZN2bq6layoutD1Ev, symObjAddr: 0x7098, symBinAddr: 0x44A30, symSize: 0x2C } - - { offsetInCU: 0x57A4, offset: 0x502B2, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_baseD1Ev, symObjAddr: 0x70C4, symBinAddr: 0x44A5C, symSize: 0x14 } - - { offsetInCU: 0x57CC, offset: 0x502DA, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_baseD0Ev, symObjAddr: 0x70D8, symBinAddr: 0x44A70, symSize: 0xC } - - { offsetInCU: 0x57F4, offset: 0x50302, size: 0x8, addend: 0x0, symName: __ZN2bq6layoutD2Ev, symObjAddr: 0x728C, symBinAddr: 0x44A7C, symSize: 0x3C } - - { offsetInCU: 0x581E, offset: 0x5032C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEED1Ev, symObjAddr: 0x72C8, symBinAddr: 0x44AB8, symSize: 0x2C } - - { offsetInCU: 0x5848, offset: 0x50356, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm0EED1Ev, symObjAddr: 0x72F4, symBinAddr: 0x44AE4, symSize: 0x2C } - - { offsetInCU: 0x5872, offset: 0x50380, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEED2Ev, symObjAddr: 0x7320, symBinAddr: 0x44B10, symSize: 0x2C } - - { offsetInCU: 0x589C, offset: 0x503AA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE5resetEv, symObjAddr: 0x734C, symBinAddr: 0x44B3C, symSize: 0xF8 } - - { offsetInCU: 0x58E0, offset: 0x503EE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE5beginEv, symObjAddr: 0x7444, symBinAddr: 0x44C34, symSize: 0x84 } - - { offsetInCU: 0x590C, offset: 0x5041A, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorIyNS_11string_baseIcEELb0EEneILb0EEEbRKNS0_IyS2_XT_EEE, symObjAddr: 0x74C8, symBinAddr: 0x44CB8, symSize: 0x34 } - - { offsetInCU: 0x594A, offset: 0x50458, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE3endEv, symObjAddr: 0x74FC, symBinAddr: 0x44CEC, symSize: 0x38 } - - { offsetInCU: 0x5971, offset: 0x5047F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE8destructERNS_17hash_map_iteratorIyS2_Lb0EEE, symObjAddr: 0x7534, symBinAddr: 0x44D24, symSize: 0x3C } - - { offsetInCU: 0x59A7, offset: 0x504B5, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_11string_baseIcEELb0EEppEv, symObjAddr: 0x7570, symBinAddr: 0x44D60, symSize: 0x88 } - - { offsetInCU: 0x59CD, offset: 0x504DB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headINS3_10value_nodeEEixEj, symObjAddr: 0x75F8, symBinAddr: 0x44DE8, symSize: 0x7C } - - { offsetInCU: 0x59FF, offset: 0x5050D, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_11string_baseIcEELb0EEC1EPNS_8hash_mapIyS2_EEjj, symObjAddr: 0x7674, symBinAddr: 0x44E64, symSize: 0x44 } - - { offsetInCU: 0x5A51, offset: 0x5055F, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_11string_baseIcEELb0EEC2EPNS_8hash_mapIyS2_EEjj, symObjAddr: 0x76B8, symBinAddr: 0x44EA8, symSize: 0x38 } - - { offsetInCU: 0x5AA3, offset: 0x505B1, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorIyNS_11string_baseIcEELb0EEeqILb0EEEbRKNS0_IyS2_XT_EEE, symObjAddr: 0x76F0, symBinAddr: 0x44EE0, symSize: 0xEC } - - { offsetInCU: 0x5AE1, offset: 0x505EF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12destruct_keyERNS_17hash_map_iteratorIyS2_Lb0EEE, symObjAddr: 0x77DC, symBinAddr: 0x44FCC, symSize: 0x2C } - - { offsetInCU: 0x5B17, offset: 0x50625, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14destruct_valueERNS_17hash_map_iteratorIyS2_Lb0EEE, symObjAddr: 0x7808, symBinAddr: 0x44FF8, symSize: 0x30 } - - { offsetInCU: 0x5B4C, offset: 0x5065A, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_11string_baseIcEELb0EEptEv, symObjAddr: 0x7838, symBinAddr: 0x45028, symSize: 0x34 } - - { offsetInCU: 0x5B72, offset: 0x50680, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairIyNS_11string_baseIcEEE5valueEv, symObjAddr: 0x786C, symBinAddr: 0x4505C, symSize: 0x18 } - - { offsetInCU: 0x5B96, offset: 0x506A4, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE19get_next_node_indexEj, symObjAddr: 0x7884, symBinAddr: 0x45074, symSize: 0x68 } - - { offsetInCU: 0x5BCC, offset: 0x506DA, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headINS3_10value_nodeEEixEj, symObjAddr: 0x78EC, symBinAddr: 0x450DC, symSize: 0x7C } - - { offsetInCU: 0x5BFE, offset: 0x5070C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm0EED2Ev, symObjAddr: 0x7968, symBinAddr: 0x45158, symSize: 0x2C } - - { offsetInCU: 0x5C28, offset: 0x50736, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm0EE5resetIcEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x7994, symBinAddr: 0x45184, symSize: 0x5C } - - { offsetInCU: 0x5C62, offset: 0x50770, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_22appender_decode_resultENS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEC1IS1_JS3_RS5_EEEOT_DpOT0_, symObjAddr: 0x8220, symBinAddr: 0x45208, symSize: 0x44 } - - { offsetInCU: 0x5CD0, offset: 0x507DE, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_22appender_decode_resultENS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEC2IS1_JS3_RS5_EEEOT_DpOT0_, symObjAddr: 0x8264, symBinAddr: 0x4524C, symSize: 0x70 } - - { offsetInCU: 0x5D3E, offset: 0x5084C, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm2ENS_22appender_decode_resultEEC2IS1_EEOT_, symObjAddr: 0x82D4, symBinAddr: 0x452BC, symSize: 0x40 } - - { offsetInCU: 0x5D7E, offset: 0x5088C, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEC2IS2_JRS4_EEEOT_DpOT0_, symObjAddr: 0x8314, symBinAddr: 0x452FC, symSize: 0x5C } - - { offsetInCU: 0x5DD8, offset: 0x508E6, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm2ENS_22appender_decode_resultELb0EEC2IS1_EEOT_, symObjAddr: 0x8370, symBinAddr: 0x45358, symSize: 0x40 } - - { offsetInCU: 0x5E18, offset: 0x50926, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_21appender_decoder_base22read_with_cache_handleEEEC2IRS2_JEEEOT_DpOT0_, symObjAddr: 0x83F0, symBinAddr: 0x45398, symSize: 0x40 } - - { offsetInCU: 0x5E5E, offset: 0x5096C, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm0ENS_21appender_decoder_base22read_with_cache_handleEEC2IRS2_EEOT_, symObjAddr: 0x8470, symBinAddr: 0x453D8, symSize: 0x40 } - - { offsetInCU: 0x5E9E, offset: 0x509AC, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_21appender_decoder_base22read_with_cache_handleELb0EEC2IRS2_EEOT_, symObjAddr: 0x84B0, symBinAddr: 0x45418, symSize: 0x40 } - - { offsetInCU: 0x5EDE, offset: 0x509EC, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_22appender_decode_resultENS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEC1IS1_JRS3_RS5_EEEOT_DpOT0_, symObjAddr: 0x8504, symBinAddr: 0x45458, symSize: 0x44 } - - { offsetInCU: 0x5F4C, offset: 0x50A5A, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_22appender_decode_resultENS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEC2IS1_JRS3_RS5_EEEOT_DpOT0_, symObjAddr: 0x8548, symBinAddr: 0x4549C, symSize: 0x70 } - - { offsetInCU: 0x5FBA, offset: 0x50AC8, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEC2IRS2_JRS4_EEEOT_DpOT0_, symObjAddr: 0x85B8, symBinAddr: 0x4550C, symSize: 0x5C } - - { offsetInCU: 0x6014, offset: 0x50B22, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x8694, symBinAddr: 0x45568, symSize: 0x288 } - - { offsetInCU: 0x60A2, offset: 0x50BB0, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE3endEv, symObjAddr: 0x891C, symBinAddr: 0x457F0, symSize: 0x44 } - - { offsetInCU: 0x60CE, offset: 0x50BDC, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_27appender_decoder_compressed20decoder_log_templateENS_5arrayIS2_Lm0EEEEgeIS2_S4_EEbRKNS0_IT_T0_EE, symObjAddr: 0x8974, symBinAddr: 0x45848, symSize: 0xAC } - - { offsetInCU: 0x6114, offset: 0x50C22, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE5beginEv, symObjAddr: 0x8A20, symBinAddr: 0x458F4, symSize: 0x34 } - - { offsetInCU: 0x613B, offset: 0x50C49, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_27appender_decoder_compressed20decoder_log_templateENS_5arrayIS2_Lm0EEEEleIS2_S4_EEbRKNS0_IT_T0_EE, symObjAddr: 0x8A54, symBinAddr: 0x45928, symSize: 0xAC } - - { offsetInCU: 0x6181, offset: 0x50C8F, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_27appender_decoder_compressed20decoder_log_templateENS_5arrayIS2_Lm0EEEEmiIS2_S4_EElRKNS0_IT_T0_EE, symObjAddr: 0x8B00, symBinAddr: 0x459D4, symSize: 0xAC } - - { offsetInCU: 0x61C7, offset: 0x50CD5, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE12set_capacityEmb, symObjAddr: 0x8BAC, symBinAddr: 0x45A80, symSize: 0x230 } - - { offsetInCU: 0x6236, offset: 0x50D44, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_27appender_decoder_compressed20decoder_log_templateENS_5arrayIS2_Lm0EEEEplEm, symObjAddr: 0x8DDC, symBinAddr: 0x45CB0, symSize: 0x44 } - - { offsetInCU: 0x6278, offset: 0x50D86, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_27appender_decoder_compressed20decoder_log_templateENS_5arrayIS2_Lm0EEEEcvPS2_Ev, symObjAddr: 0x8E20, symBinAddr: 0x45CF4, symSize: 0x18 } - - { offsetInCU: 0x629E, offset: 0x50DAC, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE8destructENS_14array_iteratorIS2_S3_EE, symObjAddr: 0x8F78, symBinAddr: 0x45E4C, symSize: 0x34 } - - { offsetInCU: 0x62D3, offset: 0x50DE1, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE9constructIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x8FAC, symBinAddr: 0x45E80, symSize: 0x74 } - - { offsetInCU: 0x6330, offset: 0x50E3E, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_27appender_decoder_compressed20decoder_log_templateENS_5arrayIS2_Lm0EEEEptEv, symObjAddr: 0x9020, symBinAddr: 0x45EF4, symSize: 0x18 } - - { offsetInCU: 0x635B, offset: 0x50E69, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_27appender_decoder_compressed20decoder_log_templateENS_5arrayIS2_Lm0EEEEC1IS2_EEPT_PKS4_, symObjAddr: 0x9038, symBinAddr: 0x45F0C, symSize: 0x3C } - - { offsetInCU: 0x63AA, offset: 0x50EB8, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_27appender_decoder_compressed20decoder_log_templateENS_5arrayIS2_Lm0EEEEC2IS2_EEPT_PKS4_, symObjAddr: 0x9074, symBinAddr: 0x45F48, symSize: 0x70 } - - { offsetInCU: 0x63F9, offset: 0x50F07, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed20decoder_log_templateC1EOS1_, symObjAddr: 0x91E0, symBinAddr: 0x46098, symSize: 0x34 } - - { offsetInCU: 0x642C, offset: 0x50F3A, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed20decoder_log_templateC2EOS1_, symObjAddr: 0x9214, symBinAddr: 0x460CC, symSize: 0x48 } - - { offsetInCU: 0x645F, offset: 0x50F6D, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_27appender_decoder_compressed20decoder_log_templateENS_5arrayIS2_Lm0EEEEpLEi, symObjAddr: 0x9368, symBinAddr: 0x46114, symSize: 0x30 } - - { offsetInCU: 0x6498, offset: 0x50FA6, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed20decoder_log_templateaSEOS1_, symObjAddr: 0x9398, symBinAddr: 0x46144, symSize: 0x48 } - - { offsetInCU: 0x64C7, offset: 0x50FD5, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb0EEcvbEv, symObjAddr: 0x94BC, symBinAddr: 0x4618C, symSize: 0x44 } - - { offsetInCU: 0x64ED, offset: 0x50FFB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE3addERKy, symObjAddr: 0x9500, symBinAddr: 0x461D0, symSize: 0x64 } - - { offsetInCU: 0x652F, offset: 0x5103D, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE20iterator_legal_checkERKNS_17hash_map_iteratorIyS2_Lb1EEE, symObjAddr: 0x9564, symBinAddr: 0x46234, symSize: 0x124 } - - { offsetInCU: 0x6564, offset: 0x51072, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb1EEC1ILb0EEERKNS0_IyS2_XT_EEE, symObjAddr: 0x9688, symBinAddr: 0x46358, symSize: 0x34 } - - { offsetInCU: 0x65A4, offset: 0x510B2, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headINS3_10value_nodeEE4sizeEv, symObjAddr: 0x96BC, symBinAddr: 0x4638C, symSize: 0x18 } - - { offsetInCU: 0x65C8, offset: 0x510D6, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb1EEC2ILb0EEERKNS0_IyS2_XT_EEE, symObjAddr: 0x96D4, symBinAddr: 0x463A4, symSize: 0x3C } - - { offsetInCU: 0x6608, offset: 0x51116, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy, symObjAddr: 0x9710, symBinAddr: 0x463E0, symSize: 0x304 } - - { offsetInCU: 0x6700, offset: 0x5120E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE15construct_valueERNS_17hash_map_iteratorIyS2_Lb0EEE, symObjAddr: 0x9A14, symBinAddr: 0x466E4, symSize: 0x68 } - - { offsetInCU: 0x6735, offset: 0x51243, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE4sizeEv, symObjAddr: 0x9A7C, symBinAddr: 0x4674C, symSize: 0x18 } - - { offsetInCU: 0x675B, offset: 0x51269, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12buckets_sizeEv, symObjAddr: 0x9A94, symBinAddr: 0x46764, symSize: 0x24 } - - { offsetInCU: 0x6781, offset: 0x5128F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj, symObjAddr: 0x9AB8, symBinAddr: 0x46788, symSize: 0x494 } - - { offsetInCU: 0x6886, offset: 0x51394, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE32find_index_and_bucket_idx_by_keyERKy, symObjAddr: 0x9F4C, symBinAddr: 0x46C1C, symSize: 0x120 } - - { offsetInCU: 0x6914, offset: 0x51422, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE10nodes_sizeEv, symObjAddr: 0xA388, symBinAddr: 0x4702C, symSize: 0x28 } - - { offsetInCU: 0x693A, offset: 0x51448, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headIjEixEj, symObjAddr: 0xA3B0, symBinAddr: 0x47054, symSize: 0x74 } - - { offsetInCU: 0x696C, offset: 0x5147A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE13construct_keyIRKyEEvRNS_17hash_map_iteratorIyS2_Lb0EEEOT_, symObjAddr: 0xA424, symBinAddr: 0x470C8, symSize: 0x68 } - - { offsetInCU: 0x69B8, offset: 0x514C6, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headIjE4sizeEv, symObjAddr: 0xA48C, symBinAddr: 0x47130, symSize: 0x18 } - - { offsetInCU: 0x69DC, offset: 0x514EA, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE23get_bucket_index_by_keyERKy, symObjAddr: 0xA528, symBinAddr: 0x47148, symSize: 0x44 } - - { offsetInCU: 0x6A21, offset: 0x5152F, size: 0x8, addend: 0x0, symName: __ZNK2bq7kv_pairIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE3keyEv, symObjAddr: 0xA56C, symBinAddr: 0x4718C, symSize: 0x14 } - - { offsetInCU: 0x6A45, offset: 0x51553, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE24get_bucket_index_by_hashEy, symObjAddr: 0xA5A4, symBinAddr: 0x471A0, symSize: 0x3C } - - { offsetInCU: 0x6A7B, offset: 0x51589, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headIjEixEj, symObjAddr: 0xA61C, symBinAddr: 0x471DC, symSize: 0x74 } - - { offsetInCU: 0x6AAD, offset: 0x515BB, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb0EEdeEv, symObjAddr: 0xA74C, symBinAddr: 0x47250, symSize: 0x34 } - - { offsetInCU: 0x6AD8, offset: 0x515E6, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed28decoder_thread_info_templateC1EOS1_, symObjAddr: 0xA794, symBinAddr: 0x47298, symSize: 0x34 } - - { offsetInCU: 0x6B0B, offset: 0x51619, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed28decoder_thread_info_templateC2EOS1_, symObjAddr: 0xA7C8, symBinAddr: 0x472CC, symSize: 0x48 } - - { offsetInCU: 0x6B3E, offset: 0x5164C, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed28decoder_thread_info_templateC1Ev, symObjAddr: 0xA824, symBinAddr: 0x47314, symSize: 0x2C } - - { offsetInCU: 0x6B68, offset: 0x51676, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed28decoder_thread_info_templateC2Ev, symObjAddr: 0xA850, symBinAddr: 0x47340, symSize: 0x30 } - - { offsetInCU: 0x26, offset: 0x5178E, size: 0x8, addend: 0x0, symName: __ZN2bq23appender_decoder_helper6decodeERKNS_11string_baseIcEES4_, symObjAddr: 0x0, symBinAddr: 0x47370, symSize: 0x420 } - - { offsetInCU: 0xEE6, offset: 0x5264E, size: 0x8, addend: 0x0, symName: __ZN2bq23appender_decoder_helper6decodeERKNS_11string_baseIcEES4_, symObjAddr: 0x0, symBinAddr: 0x47370, symSize: 0x420 } - - { offsetInCU: 0x26, offset: 0x5283F, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_managerC2Ev, symObjAddr: 0x0, symBinAddr: 0x47790, symSize: 0x60 } - - { offsetInCU: 0x26FD, offset: 0x54F16, size: 0x8, addend: 0x0, symName: __ZN2bq11make_uniqueINS_20appender_decoder_rawEJEEENS_10unique_ptrIT_EEDpOT0_, symObjAddr: 0x7C4, symBinAddr: 0x47EE4, symSize: 0x4C } - - { offsetInCU: 0x272B, offset: 0x54F44, size: 0x8, addend: 0x0, symName: __ZN2bq11make_uniqueINS_27appender_decoder_compressedEJEEENS_10unique_ptrIT_EEDpOT0_, symObjAddr: 0x8A8, symBinAddr: 0x47FC8, symSize: 0x4C } - - { offsetInCU: 0x2759, offset: 0x54F72, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_10unique_ptrINS_21appender_decoder_baseEEEEEONS_16remove_referenceIT_E4typeEOS6_, symObjAddr: 0xA4C, symBinAddr: 0x48138, symSize: 0x14 } - - { offsetInCU: 0x278E, offset: 0x54FA7, size: 0x8, addend: 0x0, symName: __ZN2bq22__inner_hash_calculateIjyEENS_9enable_ifIXntoosr2bq7is_sameIT_fEE5valuesr2bq7is_sameIS2_dEE5valueET0_E4typeERKS2_, symObjAddr: 0x1B8C, symBinAddr: 0x48F54, symSize: 0x24 } - - { offsetInCU: 0x2855, offset: 0x5506E, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_10unique_ptrINS_21appender_decoder_baseEEEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x3D84, symBinAddr: 0x49E18, symSize: 0x14 } - - { offsetInCU: 0x288A, offset: 0x550A3, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRKjEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0x4090, symBinAddr: 0x4A050, symSize: 0x14 } - - { offsetInCU: 0x2C3B, offset: 0x55454, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager8instanceEv, symObjAddr: 0x184, symBinAddr: 0x47914, symSize: 0x98 } - - { offsetInCU: 0x2C5C, offset: 0x55475, size: 0x8, addend: 0x0, symName: __ZZN2bq24appender_decoder_manager8instanceEvE4inst, symObjAddr: 0x29898, symBinAddr: 0x68B30, symSize: 0x0 } - - { offsetInCU: 0x2C6C, offset: 0x55485, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE12expand_nodesEj, symObjAddr: 0x161C, symBinAddr: 0x48A68, symSize: 0x2C0 } - - { offsetInCU: 0x335C, offset: 0x55B75, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_managerC2Ev, symObjAddr: 0x0, symBinAddr: 0x47790, symSize: 0x60 } - - { offsetInCU: 0x3386, offset: 0x55B9F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIjEC1ERKj, symObjAddr: 0x60, symBinAddr: 0x477F0, symSize: 0x34 } - - { offsetInCU: 0x33BC, offset: 0x55BD5, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEEC1Ej, symObjAddr: 0x94, symBinAddr: 0x47824, symSize: 0x34 } - - { offsetInCU: 0x33F4, offset: 0x55C0D, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_managerC1Ev, symObjAddr: 0xC8, symBinAddr: 0x47858, symSize: 0x2C } - - { offsetInCU: 0x341E, offset: 0x55C37, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_managerD2Ev, symObjAddr: 0xF4, symBinAddr: 0x47884, symSize: 0x38 } - - { offsetInCU: 0x3448, offset: 0x55C61, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEED1Ev, symObjAddr: 0x12C, symBinAddr: 0x478BC, symSize: 0x2C } - - { offsetInCU: 0x3472, offset: 0x55C8B, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_managerD1Ev, symObjAddr: 0x158, symBinAddr: 0x478E8, symSize: 0x2C } - - { offsetInCU: 0x34FA, offset: 0x55D13, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager14create_decoderERKNS_11string_baseIcEERj, symObjAddr: 0x21C, symBinAddr: 0x479AC, symSize: 0x504 } - - { offsetInCU: 0x367B, offset: 0x55E94, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEEC1EPS1_, symObjAddr: 0x790, symBinAddr: 0x47EB0, symSize: 0x34 } - - { offsetInCU: 0x36B6, offset: 0x55ECF, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEEaSINS_20appender_decoder_rawEEERS2_ONS0_IT_EE, symObjAddr: 0x810, symBinAddr: 0x47F30, symSize: 0x6C } - - { offsetInCU: 0x36F2, offset: 0x55F0B, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_20appender_decoder_rawEED1Ev, symObjAddr: 0x87C, symBinAddr: 0x47F9C, symSize: 0x2C } - - { offsetInCU: 0x371F, offset: 0x55F38, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEEaSINS_27appender_decoder_compressedEEERS2_ONS0_IT_EE, symObjAddr: 0x8F4, symBinAddr: 0x48014, symSize: 0x6C } - - { offsetInCU: 0x375B, offset: 0x55F74, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_27appender_decoder_compressedEED1Ev, symObjAddr: 0x960, symBinAddr: 0x48080, symSize: 0x2C } - - { offsetInCU: 0x3783, offset: 0x55F9C, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEEptEv, symObjAddr: 0x98C, symBinAddr: 0x480AC, symSize: 0x18 } - - { offsetInCU: 0x37AC, offset: 0x55FC5, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE3addIS3_EENS_17hash_map_iteratorIjS3_Lb0EEERKjOT_, symObjAddr: 0x9D8, symBinAddr: 0x480C4, symSize: 0x74 } - - { offsetInCU: 0x3805, offset: 0x5601E, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEED1Ev, symObjAddr: 0xA8C, symBinAddr: 0x4814C, symSize: 0x2C } - - { offsetInCU: 0x382D, offset: 0x56046, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager15destroy_decoderEj, symObjAddr: 0xAE4, symBinAddr: 0x48178, symSize: 0x54 } - - { offsetInCU: 0x386F, offset: 0x56088, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseERKj, symObjAddr: 0xB38, symBinAddr: 0x481CC, symSize: 0x90 } - - { offsetInCU: 0x38B3, offset: 0x560CC, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager18decode_single_itemEjRPKNS_11string_baseIcEE, symObjAddr: 0xBC8, symBinAddr: 0x4825C, symSize: 0x10C } - - { offsetInCU: 0x392D, offset: 0x56146, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE4findERKj, symObjAddr: 0xCD4, symBinAddr: 0x48368, symSize: 0x74 } - - { offsetInCU: 0x3974, offset: 0x5618D, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb0EEneILb0EEEbRKNS0_IjS3_XT_EEE, symObjAddr: 0xD48, symBinAddr: 0x483DC, symSize: 0x34 } - - { offsetInCU: 0x39B2, offset: 0x561CB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE3endEv, symObjAddr: 0xD7C, symBinAddr: 0x48410, symSize: 0x38 } - - { offsetInCU: 0x39D9, offset: 0x561F2, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb0EEptEv, symObjAddr: 0xDB4, symBinAddr: 0x48448, symSize: 0x34 } - - { offsetInCU: 0x39FF, offset: 0x56218, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5valueEv, symObjAddr: 0xDE8, symBinAddr: 0x4847C, symSize: 0x18 } - - { offsetInCU: 0x3A23, offset: 0x5623C, size: 0x8, addend: 0x0, symName: __ZNK2bq21appender_decoder_base20get_decoded_log_textEv, symObjAddr: 0xE00, symBinAddr: 0x48494, symSize: 0x18 } - - { offsetInCU: 0x3A47, offset: 0x56260, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIjEC2ERKj, symObjAddr: 0x1060, symBinAddr: 0x484AC, symSize: 0x34 } - - { offsetInCU: 0x3A7D, offset: 0x56296, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12_atomic_baseIjLm4EEC2ERKj, symObjAddr: 0x1094, symBinAddr: 0x484E0, symSize: 0x24 } - - { offsetInCU: 0x3AB3, offset: 0x562CC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEEC2Ej, symObjAddr: 0x10B8, symBinAddr: 0x48504, symSize: 0x78 } - - { offsetInCU: 0x3AEB, offset: 0x56304, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headIjEC1Ev, symObjAddr: 0x1130, symBinAddr: 0x4857C, symSize: 0x2C } - - { offsetInCU: 0x3B13, offset: 0x5632C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headINS4_10value_nodeEEC1Ev, symObjAddr: 0x115C, symBinAddr: 0x485A8, symSize: 0x2C } - - { offsetInCU: 0x3B3B, offset: 0x56354, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj, symObjAddr: 0x1188, symBinAddr: 0x485D4, symSize: 0x494 } - - { offsetInCU: 0x3C40, offset: 0x56459, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE12buckets_sizeEv, symObjAddr: 0x18DC, symBinAddr: 0x48D28, symSize: 0x24 } - - { offsetInCU: 0x3C66, offset: 0x5647F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headIjEC2Ev, symObjAddr: 0x1900, symBinAddr: 0x48D4C, symSize: 0x1C } - - { offsetInCU: 0x3C8E, offset: 0x564A7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headINS4_10value_nodeEEC2Ev, symObjAddr: 0x191C, symBinAddr: 0x48D68, symSize: 0x1C } - - { offsetInCU: 0x3CB6, offset: 0x564CF, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headIjE4sizeEv, symObjAddr: 0x19BC, symBinAddr: 0x48D84, symSize: 0x18 } - - { offsetInCU: 0x3CDA, offset: 0x564F3, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headIjEixEj, symObjAddr: 0x19D4, symBinAddr: 0x48D9C, symSize: 0x74 } - - { offsetInCU: 0x3D0C, offset: 0x56525, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headINS4_10value_nodeEEixEj, symObjAddr: 0x1A48, symBinAddr: 0x48E10, symSize: 0x74 } - - { offsetInCU: 0x3D3E, offset: 0x56557, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE23get_bucket_index_by_keyERKj, symObjAddr: 0x1ABC, symBinAddr: 0x48E84, symSize: 0x44 } - - { offsetInCU: 0x3D83, offset: 0x5659C, size: 0x8, addend: 0x0, symName: __ZNK2bq7kv_pairIjNS_10unique_ptrINS_21appender_decoder_baseEEEE3keyEv, symObjAddr: 0x1B00, symBinAddr: 0x48EC8, symSize: 0x14 } - - { offsetInCU: 0x3DA7, offset: 0x565C0, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE4sizeEv, symObjAddr: 0x1B14, symBinAddr: 0x48EDC, symSize: 0x18 } - - { offsetInCU: 0x3DCD, offset: 0x565E6, size: 0x8, addend: 0x0, symName: __ZN2bq27number_type_hash_calculatorIjE9hash_codeERKj, symObjAddr: 0x1B2C, symBinAddr: 0x48EF4, symSize: 0x24 } - - { offsetInCU: 0x3DEF, offset: 0x56608, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE24get_bucket_index_by_hashEy, symObjAddr: 0x1B50, symBinAddr: 0x48F18, symSize: 0x3C } - - { offsetInCU: 0x3E25, offset: 0x5663E, size: 0x8, addend: 0x0, symName: __ZN2bq28integer_type_hash_calculatorIjE9hash_codeERKj, symObjAddr: 0x1BB0, symBinAddr: 0x48F78, symSize: 0x1C } - - { offsetInCU: 0x3E47, offset: 0x56660, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headINS4_10value_nodeEE4sizeEv, symObjAddr: 0x1BCC, symBinAddr: 0x48F94, symSize: 0x18 } - - { offsetInCU: 0x3E6B, offset: 0x56684, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5beginEv, symObjAddr: 0x1BE4, symBinAddr: 0x48FAC, symSize: 0x84 } - - { offsetInCU: 0x3E92, offset: 0x566AB, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb0EEdeEv, symObjAddr: 0x1C98, symBinAddr: 0x49030, symSize: 0x34 } - - { offsetInCU: 0x3EB8, offset: 0x566D1, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEEC1IS1_EEONS0_IT_EE, symObjAddr: 0x1CCC, symBinAddr: 0x49064, symSize: 0x34 } - - { offsetInCU: 0x3EF7, offset: 0x56710, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE8destructERNS_17hash_map_iteratorIjS3_Lb0EEE, symObjAddr: 0x1D00, symBinAddr: 0x49098, symSize: 0x3C } - - { offsetInCU: 0x3F2D, offset: 0x56746, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb0EEppEv, symObjAddr: 0x1D3C, symBinAddr: 0x490D4, symSize: 0x88 } - - { offsetInCU: 0x3F53, offset: 0x5676C, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb0EEC1EPNS_8hash_mapIjS3_EEjj, symObjAddr: 0x1DC4, symBinAddr: 0x4915C, symSize: 0x44 } - - { offsetInCU: 0x3FA5, offset: 0x567BE, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb0EEC2EPNS_8hash_mapIjS3_EEjj, symObjAddr: 0x1E08, symBinAddr: 0x491A0, symSize: 0x38 } - - { offsetInCU: 0x3FF7, offset: 0x56810, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEEC2IS1_EEONS0_IT_EE, symObjAddr: 0x1E40, symBinAddr: 0x491D8, symSize: 0x2C } - - { offsetInCU: 0x4036, offset: 0x5684F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE12destruct_keyERNS_17hash_map_iteratorIjS3_Lb0EEE, symObjAddr: 0x1E6C, symBinAddr: 0x49204, symSize: 0x2C } - - { offsetInCU: 0x406C, offset: 0x56885, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14destruct_valueERNS_17hash_map_iteratorIjS3_Lb0EEE, symObjAddr: 0x1E98, symBinAddr: 0x49230, symSize: 0x30 } - - { offsetInCU: 0x40A6, offset: 0x568BF, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_10unique_ptrINS_21appender_decoder_baseEEEE8destructEPS3_, symObjAddr: 0x1EFC, symBinAddr: 0x49260, symSize: 0x24 } - - { offsetInCU: 0x40C8, offset: 0x568E1, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_10unique_ptrINS_21appender_decoder_baseEEEE15destructor_implIS3_NS4_27non_trivial_destructor_typeEE8destructEPS3_, symObjAddr: 0x1F20, symBinAddr: 0x49284, symSize: 0x3C } - - { offsetInCU: 0x40EA, offset: 0x56903, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE19get_next_node_indexEj, symObjAddr: 0x1F5C, symBinAddr: 0x492C0, symSize: 0x68 } - - { offsetInCU: 0x4120, offset: 0x56939, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headINS4_10value_nodeEEixEj, symObjAddr: 0x1FC4, symBinAddr: 0x49328, symSize: 0x74 } - - { offsetInCU: 0x4152, offset: 0x5696B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEED2Ev, symObjAddr: 0x2038, symBinAddr: 0x4939C, symSize: 0x2C } - - { offsetInCU: 0x417C, offset: 0x56995, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5resetEv, symObjAddr: 0x2064, symBinAddr: 0x493C8, symSize: 0xF8 } - - { offsetInCU: 0x41C0, offset: 0x569D9, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEEC2EPS1_, symObjAddr: 0x215C, symBinAddr: 0x494C0, symSize: 0x20 } - - { offsetInCU: 0x41F6, offset: 0x56A0F, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEED2Ev, symObjAddr: 0x217C, symBinAddr: 0x494E0, symSize: 0x2C } - - { offsetInCU: 0x421E, offset: 0x56A37, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEE5resetEv, symObjAddr: 0x21A8, symBinAddr: 0x4950C, symSize: 0x6C } - - { offsetInCU: 0x4242, offset: 0x56A5B, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawC1Ev, symObjAddr: 0x2214, symBinAddr: 0x49578, symSize: 0x2C } - - { offsetInCU: 0x426C, offset: 0x56A85, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_20appender_decoder_rawEEC1EPS1_, symObjAddr: 0x2240, symBinAddr: 0x495A4, symSize: 0x34 } - - { offsetInCU: 0x42A2, offset: 0x56ABB, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawC2Ev, symObjAddr: 0x2274, symBinAddr: 0x495D8, symSize: 0x44 } - - { offsetInCU: 0x42CC, offset: 0x56AE5, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_baseC2Ev, symObjAddr: 0x22B8, symBinAddr: 0x4961C, symSize: 0x7C } - - { offsetInCU: 0x42F6, offset: 0x56B0F, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EEC1Ev, symObjAddr: 0x23B8, symBinAddr: 0x49698, symSize: 0x2C } - - { offsetInCU: 0x4320, offset: 0x56B39, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EEC2Ev, symObjAddr: 0x24E0, symBinAddr: 0x496C4, symSize: 0x20 } - - { offsetInCU: 0x434A, offset: 0x56B63, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_20appender_decoder_rawEEC2EPS1_, symObjAddr: 0x2500, symBinAddr: 0x496E4, symSize: 0x20 } - - { offsetInCU: 0x4380, offset: 0x56B99, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_20appender_decoder_rawEED2Ev, symObjAddr: 0x2520, symBinAddr: 0x49704, symSize: 0x2C } - - { offsetInCU: 0x43A8, offset: 0x56BC1, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_20appender_decoder_rawEE5resetEv, symObjAddr: 0x254C, symBinAddr: 0x49730, symSize: 0x6C } - - { offsetInCU: 0x43CC, offset: 0x56BE5, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressedC1Ev, symObjAddr: 0x25B8, symBinAddr: 0x4979C, symSize: 0x2C } - - { offsetInCU: 0x43F6, offset: 0x56C0F, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_27appender_decoder_compressedEEC1EPS1_, symObjAddr: 0x25E4, symBinAddr: 0x497C8, symSize: 0x34 } - - { offsetInCU: 0x442C, offset: 0x56C45, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressedC2Ev, symObjAddr: 0x2618, symBinAddr: 0x497FC, symSize: 0x6C } - - { offsetInCU: 0x4456, offset: 0x56C6F, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EEC1Ev, symObjAddr: 0x2684, symBinAddr: 0x49868, symSize: 0x2C } - - { offsetInCU: 0x4480, offset: 0x56C99, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEC1Ej, symObjAddr: 0x26B0, symBinAddr: 0x49894, symSize: 0x34 } - - { offsetInCU: 0x44B8, offset: 0x56CD1, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EEC2Ev, symObjAddr: 0x26E4, symBinAddr: 0x498C8, symSize: 0x20 } - - { offsetInCU: 0x44E2, offset: 0x56CFB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEC2Ej, symObjAddr: 0x2704, symBinAddr: 0x498E8, symSize: 0x78 } - - { offsetInCU: 0x451A, offset: 0x56D33, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headIjEC1Ev, symObjAddr: 0x277C, symBinAddr: 0x49960, symSize: 0x2C } - - { offsetInCU: 0x4542, offset: 0x56D5B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headINS3_10value_nodeEEC1Ev, symObjAddr: 0x27A8, symBinAddr: 0x4998C, symSize: 0x2C } - - { offsetInCU: 0x456A, offset: 0x56D83, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headIjEC2Ev, symObjAddr: 0x2F7C, symBinAddr: 0x499B8, symSize: 0x1C } - - { offsetInCU: 0x4592, offset: 0x56DAB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headINS3_10value_nodeEEC2Ev, symObjAddr: 0x2F98, symBinAddr: 0x499D4, symSize: 0x1C } - - { offsetInCU: 0x45C4, offset: 0x56DDD, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_27appender_decoder_compressedEEC2EPS1_, symObjAddr: 0x395C, symBinAddr: 0x499F0, symSize: 0x20 } - - { offsetInCU: 0x45FA, offset: 0x56E13, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_27appender_decoder_compressedEED2Ev, symObjAddr: 0x397C, symBinAddr: 0x49A10, symSize: 0x2C } - - { offsetInCU: 0x4622, offset: 0x56E3B, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_27appender_decoder_compressedEE5resetEv, symObjAddr: 0x39A8, symBinAddr: 0x49A3C, symSize: 0x6C } - - { offsetInCU: 0x4646, offset: 0x56E5F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj, symObjAddr: 0x3A14, symBinAddr: 0x49AA8, symSize: 0x304 } - - { offsetInCU: 0x473E, offset: 0x56F57, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE15construct_valueIS3_EEvRNS_17hash_map_iteratorIjS3_Lb0EEEOT_, symObjAddr: 0x3D18, symBinAddr: 0x49DAC, symSize: 0x6C } - - { offsetInCU: 0x478A, offset: 0x56FA3, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE32find_index_and_bucket_idx_by_keyERKj, symObjAddr: 0x3D98, symBinAddr: 0x49E2C, symSize: 0x120 } - - { offsetInCU: 0x4818, offset: 0x57031, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE10nodes_sizeEv, symObjAddr: 0x3EE4, symBinAddr: 0x49F4C, symSize: 0x28 } - - { offsetInCU: 0x483E, offset: 0x57057, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE13construct_keyIRKjEEvRNS_17hash_map_iteratorIjS3_Lb0EEEOT_, symObjAddr: 0x3F0C, symBinAddr: 0x49F74, symSize: 0x68 } - - { offsetInCU: 0x488A, offset: 0x570A3, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headIjEixEj, symObjAddr: 0x3F74, symBinAddr: 0x49FDC, symSize: 0x74 } - - { offsetInCU: 0x48BC, offset: 0x570D5, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb0EEcvbEv, symObjAddr: 0x40A4, symBinAddr: 0x4A064, symSize: 0x44 } - - { offsetInCU: 0x48E2, offset: 0x570FB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseENS_17hash_map_iteratorIjS3_Lb0EEE, symObjAddr: 0x40E8, symBinAddr: 0x4A0A8, symSize: 0x228 } - - { offsetInCU: 0x4953, offset: 0x5716C, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE20iterator_legal_checkERKNS_17hash_map_iteratorIjS3_Lb1EEE, symObjAddr: 0x4310, symBinAddr: 0x4A2D0, symSize: 0x124 } - - { offsetInCU: 0x4988, offset: 0x571A1, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb1EEC1ILb0EEERKNS0_IjS3_XT_EEE, symObjAddr: 0x4434, symBinAddr: 0x4A3F4, symSize: 0x34 } - - { offsetInCU: 0x49C8, offset: 0x571E1, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb1EEC2ILb0EEERKNS0_IjS3_XT_EEE, symObjAddr: 0x4468, symBinAddr: 0x4A428, symSize: 0x3C } - - { offsetInCU: 0x4A08, offset: 0x57221, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb0EEeqILb0EEEbRKNS0_IjS3_XT_EEE, symObjAddr: 0x44A4, symBinAddr: 0x4A464, symSize: 0xEC } - - { offsetInCU: 0x26, offset: 0x572DF, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_raw12init_privateEv, symObjAddr: 0x0, symBinAddr: 0x4A550, symSize: 0x14 } - - { offsetInCU: 0x19C8, offset: 0x58C81, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_raw12init_privateEv, symObjAddr: 0x0, symBinAddr: 0x4A550, symSize: 0x14 } - - { offsetInCU: 0x1A1B, offset: 0x58CD4, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_raw14decode_privateEv, symObjAddr: 0x14, symBinAddr: 0x4A564, symSize: 0x174 } - - { offsetInCU: 0x1AFE, offset: 0x58DB7, size: 0x8, addend: 0x0, symName: __ZNK2bq20appender_decoder_raw25get_binary_format_versionEv, symObjAddr: 0x23C, symBinAddr: 0x4A6D8, symSize: 0x14 } - - { offsetInCU: 0x1B24, offset: 0x58DDD, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawD1Ev, symObjAddr: 0x250, symBinAddr: 0x4A6EC, symSize: 0x2C } - - { offsetInCU: 0x1B4E, offset: 0x58E07, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawD0Ev, symObjAddr: 0x27C, symBinAddr: 0x4A718, symSize: 0x30 } - - { offsetInCU: 0x1B78, offset: 0x58E31, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawD2Ev, symObjAddr: 0x2D8, symBinAddr: 0x4A748, symSize: 0x2C } - - { offsetInCU: 0x57, offset: 0x58EBC, size: 0x8, addend: 0x0, symName: __ZN2bqL14_log_level_strE, symObjAddr: 0x1DF00, symBinAddr: 0x68B88, symSize: 0x0 } - - { offsetInCU: 0x70, offset: 0x58ED5, size: 0x8, addend: 0x0, symName: __ZN2bqL27_time_zone_str_initer_inst_E, symObjAddr: 0x1DF90, symBinAddr: 0x68C18, symSize: 0x0 } - - { offsetInCU: 0xD0, offset: 0x58F35, size: 0x8, addend: 0x0, symName: __ZN2bqL18_digit_str_initer_E, symObjAddr: 0x1DFC8, symBinAddr: 0x68C50, symSize: 0x0 } - - { offsetInCU: 0xFEF, offset: 0x59E54, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12expand_nodesEj, symObjAddr: 0x7488, symBinAddr: 0x50A00, symSize: 0x2F0 } - - { offsetInCU: 0x1602, offset: 0x5A467, size: 0x8, addend: 0x0, symName: __ZN2bq21_time_zone_str_initerC1Ev, symObjAddr: 0x60, symBinAddr: 0x4A774, symSize: 0x2C } - - { offsetInCU: 0x162A, offset: 0x5A48F, size: 0x8, addend: 0x0, symName: __ZN2bq17_digit_str_initerC1Ev, symObjAddr: 0x8C, symBinAddr: 0x4A7A0, symSize: 0x2C } - - { offsetInCU: 0x1652, offset: 0x5A4B7, size: 0x8, addend: 0x0, symName: __ZN2bq6layoutC2Ev, symObjAddr: 0xB8, symBinAddr: 0x4A7CC, symSize: 0x88 } - - { offsetInCU: 0x167C, offset: 0x5A4E1, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm0EEC1Ev, symObjAddr: 0x140, symBinAddr: 0x4A854, symSize: 0x2C } - - { offsetInCU: 0x16A6, offset: 0x5A50B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEEC1Ej, symObjAddr: 0x16C, symBinAddr: 0x4A880, symSize: 0x34 } - - { offsetInCU: 0x16E3, offset: 0x5A548, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11format_infoC1Ev, symObjAddr: 0x1A0, symBinAddr: 0x4A8B4, symSize: 0x2C } - - { offsetInCU: 0x170D, offset: 0x5A572, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE15set_expand_rateEf, symObjAddr: 0x1CC, symBinAddr: 0x4A8E0, symSize: 0x20 } - - { offsetInCU: 0x1742, offset: 0x5A5A7, size: 0x8, addend: 0x0, symName: __ZN2bq6layoutC1Ev, symObjAddr: 0x1EC, symBinAddr: 0x4A900, symSize: 0x2C } - - { offsetInCU: 0x1796, offset: 0x5A5FB, size: 0x8, addend: 0x0, symName: __ZN2bq6layout9do_layoutERKNS_16log_entry_handleEbPKNS_5arrayINS_11string_baseIcEELm0EEE, symObjAddr: 0x218, symBinAddr: 0x4A92C, symSize: 0x150 } - - { offsetInCU: 0x1846, offset: 0x5A6AB, size: 0x8, addend: 0x0, symName: __ZN2bq6layout13layout_prefixERKNS_16log_entry_handleE, symObjAddr: 0x368, symBinAddr: 0x4AA7C, symSize: 0x290 } - - { offsetInCU: 0x1954, offset: 0x5A7B9, size: 0x8, addend: 0x0, symName: __ZN2bq6layout27python_style_format_contentERKNS_16log_entry_handleE, symObjAddr: 0x5F8, symBinAddr: 0x4AD0C, symSize: 0xD0 } - - { offsetInCU: 0x19A8, offset: 0x5A80D, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_timeERKNS_16log_entry_handleE, symObjAddr: 0x6C8, symBinAddr: 0x4ADDC, symSize: 0x304 } - - { offsetInCU: 0x1A88, offset: 0x5A8ED, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE, symObjAddr: 0x9CC, symBinAddr: 0x4B0E0, symSize: 0x3A8 } - - { offsetInCU: 0x1B72, offset: 0x5A9D7, size: 0x8, addend: 0x0, symName: __ZN2bq6layout15insert_str_utf8EPKcj, symObjAddr: 0xD74, symBinAddr: 0x4B488, symSize: 0x170 } - - { offsetInCU: 0x1BDD, offset: 0x5AA42, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_charEc, symObjAddr: 0xF6C, symBinAddr: 0x4B5F8, symSize: 0x118 } - - { offsetInCU: 0x1C39, offset: 0x5AA9E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE4findERKy, symObjAddr: 0x11BC, symBinAddr: 0x4B710, symSize: 0x74 } - - { offsetInCU: 0x1C7B, offset: 0x5AAE0, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE3addIS2_EENS_17hash_map_iteratorIyS2_Lb0EEERKyOT_, symObjAddr: 0x1354, symBinAddr: 0x4B784, symSize: 0x74 } - - { offsetInCU: 0x1CD4, offset: 0x5AB39, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18fill_and_alignmentEj, symObjAddr: 0x1428, symBinAddr: 0x4B7F8, symSize: 0x3F8 } - - { offsetInCU: 0x1F19, offset: 0x5AD7E, size: 0x8, addend: 0x0, symName: __ZN2bq6layout32python_style_format_content_utf8ERKNS_16log_entry_handleE, symObjAddr: 0x1820, symBinAddr: 0x4BBF0, symSize: 0xB60 } - - { offsetInCU: 0x224F, offset: 0x5B0B4, size: 0x8, addend: 0x0, symName: __ZN2bq6layout33python_style_format_content_utf16ERKNS_16log_entry_handleE, symObjAddr: 0x23CC, symBinAddr: 0x4C79C, symSize: 0xCE4 } - - { offsetInCU: 0x2565, offset: 0x5B3CA, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIcLm0EE4sizeEv, symObjAddr: 0x30FC, symBinAddr: 0x4D4CC, symSize: 0x18 } - - { offsetInCU: 0x258C, offset: 0x5B3F1, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_pointerEPKv, symObjAddr: 0x3114, symBinAddr: 0x4D4E4, symSize: 0x260 } - - { offsetInCU: 0x2648, offset: 0x5B4AD, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_boolEb, symObjAddr: 0x3374, symBinAddr: 0x4D744, symSize: 0x254 } - - { offsetInCU: 0x2704, offset: 0x5B569, size: 0x8, addend: 0x0, symName: __ZN2bq6layout13insert_char16EDs, symObjAddr: 0x35C8, symBinAddr: 0x4D998, symSize: 0x34 } - - { offsetInCU: 0x273A, offset: 0x5B59F, size: 0x8, addend: 0x0, symName: __ZN2bq6layout13insert_char32EDi, symObjAddr: 0x35FC, symBinAddr: 0x4D9CC, symSize: 0x94 } - - { offsetInCU: 0x278D, offset: 0x5B5F2, size: 0x8, addend: 0x0, symName: __ZN2bq6layout22insert_integral_signedExi, symObjAddr: 0x3690, symBinAddr: 0x4DA60, symSize: 0x7B8 } - - { offsetInCU: 0x28B7, offset: 0x5B71C, size: 0x8, addend: 0x0, symName: __ZN2bq6layout24insert_integral_unsignedEyi, symObjAddr: 0x3E48, symBinAddr: 0x4E218, symSize: 0x78C } - - { offsetInCU: 0x29E1, offset: 0x5B846, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_decimalEf, symObjAddr: 0x45D4, symBinAddr: 0x4E9A4, symSize: 0x2A4 } - - { offsetInCU: 0x2A9B, offset: 0x5B900, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_decimalEd, symObjAddr: 0x4878, symBinAddr: 0x4EC48, symSize: 0x2A4 } - - { offsetInCU: 0x2B55, offset: 0x5B9BA, size: 0x8, addend: 0x0, symName: __ZN2bq6layout16insert_str_utf16EPKcj, symObjAddr: 0x4B68, symBinAddr: 0x4EEEC, symSize: 0x698 } - - { offsetInCU: 0x2C1B, offset: 0x5BA80, size: 0x8, addend: 0x0, symName: __ZN2bq6layout10c20_formatIcEENS0_11format_infoEPKT_i, symObjAddr: 0x5200, symBinAddr: 0x4F584, symSize: 0x3C0 } - - { offsetInCU: 0x2CD6, offset: 0x5BB3B, size: 0x8, addend: 0x0, symName: __Z7isdigiti, symObjAddr: 0x55C0, symBinAddr: 0x4F944, symSize: 0x28 } - - { offsetInCU: 0x2D02, offset: 0x5BB67, size: 0x8, addend: 0x0, symName: __ZN2bq6layout10c20_formatIDsEENS0_11format_infoEPKT_i, symObjAddr: 0x5610, symBinAddr: 0x4F96C, symSize: 0x3C0 } - - { offsetInCU: 0x2DBD, offset: 0x5BC22, size: 0x8, addend: 0x0, symName: __ZN2bq6layout6revertEjj, symObjAddr: 0x59E8, symBinAddr: 0x4FD2C, symSize: 0xDC } - - { offsetInCU: 0x2E1F, offset: 0x5BC84, size: 0x8, addend: 0x0, symName: __ZN2bq21_time_zone_str_initerC2Ev, symObjAddr: 0x5B78, symBinAddr: 0x4FE08, symSize: 0x1EC } - - { offsetInCU: 0x2EB7, offset: 0x5BD1C, size: 0x8, addend: 0x0, symName: __ZN2bq17_digit_str_initerC2Ev, symObjAddr: 0x5D64, symBinAddr: 0x4FFF4, symSize: 0xC8 } - - { offsetInCU: 0x2EFB, offset: 0x5BD60, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11format_infoC2Ev, symObjAddr: 0x5E2C, symBinAddr: 0x500BC, symSize: 0x48 } - - { offsetInCU: 0x2F25, offset: 0x5BD8A, size: 0x8, addend: 0x0, symName: __Z9__isctypeim, symObjAddr: 0x5E74, symBinAddr: 0x50104, symSize: 0x80 } - - { offsetInCU: 0x2F5F, offset: 0x5BDC4, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm0EE18fill_uninitializedIcEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm, symObjAddr: 0x5FA4, symBinAddr: 0x50184, symSize: 0xBC } - - { offsetInCU: 0x2F9D, offset: 0x5BE02, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIcLm0EE8capacityEv, symObjAddr: 0x60E4, symBinAddr: 0x50240, symSize: 0x18 } - - { offsetInCU: 0x2FC4, offset: 0x5BE29, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm0EE12set_capacityEmb, symObjAddr: 0x60FC, symBinAddr: 0x50258, symSize: 0x224 } - - { offsetInCU: 0x3033, offset: 0x5BE98, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm0EEC2Ev, symObjAddr: 0x6F04, symBinAddr: 0x5047C, symSize: 0x20 } - - { offsetInCU: 0x305D, offset: 0x5BEC2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEEC2Ej, symObjAddr: 0x6F24, symBinAddr: 0x5049C, symSize: 0x78 } - - { offsetInCU: 0x3095, offset: 0x5BEFA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headIjEC1Ev, symObjAddr: 0x6F9C, symBinAddr: 0x50514, symSize: 0x2C } - - { offsetInCU: 0x30BD, offset: 0x5BF22, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headINS3_10value_nodeEEC1Ev, symObjAddr: 0x6FC8, symBinAddr: 0x50540, symSize: 0x2C } - - { offsetInCU: 0x30E5, offset: 0x5BF4A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj, symObjAddr: 0x6FF4, symBinAddr: 0x5056C, symSize: 0x494 } - - { offsetInCU: 0x31EA, offset: 0x5C04F, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE12buckets_sizeEv, symObjAddr: 0x7778, symBinAddr: 0x50CF0, symSize: 0x24 } - - { offsetInCU: 0x3210, offset: 0x5C075, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headIjEC2Ev, symObjAddr: 0x779C, symBinAddr: 0x50D14, symSize: 0x1C } - - { offsetInCU: 0x3238, offset: 0x5C09D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headINS3_10value_nodeEEC2Ev, symObjAddr: 0x77B8, symBinAddr: 0x50D30, symSize: 0x1C } - - { offsetInCU: 0x3260, offset: 0x5C0C5, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headIjE4sizeEv, symObjAddr: 0x77D4, symBinAddr: 0x50D4C, symSize: 0x18 } - - { offsetInCU: 0x3284, offset: 0x5C0E9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headIjEixEj, symObjAddr: 0x77EC, symBinAddr: 0x50D64, symSize: 0x74 } - - { offsetInCU: 0x32B6, offset: 0x5C11B, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE23get_bucket_index_by_keyERKy, symObjAddr: 0x78DC, symBinAddr: 0x50DD8, symSize: 0x44 } - - { offsetInCU: 0x32FB, offset: 0x5C160, size: 0x8, addend: 0x0, symName: __ZNK2bq7kv_pairIyNS_11string_baseIcEEE3keyEv, symObjAddr: 0x7920, symBinAddr: 0x50E1C, symSize: 0x14 } - - { offsetInCU: 0x331F, offset: 0x5C184, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE4sizeEv, symObjAddr: 0x7934, symBinAddr: 0x50E30, symSize: 0x18 } - - { offsetInCU: 0x3345, offset: 0x5C1AA, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE24get_bucket_index_by_hashEy, symObjAddr: 0x7970, symBinAddr: 0x50E48, symSize: 0x3C } - - { offsetInCU: 0x337B, offset: 0x5C1E0, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headINS3_10value_nodeEE4sizeEv, symObjAddr: 0x79E8, symBinAddr: 0x50E84, symSize: 0x18 } - - { offsetInCU: 0x339F, offset: 0x5C204, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_11string_baseIcEELb0EEdeEv, symObjAddr: 0x7AE8, symBinAddr: 0x50E9C, symSize: 0x34 } - - { offsetInCU: 0x33C5, offset: 0x5C22A, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE32find_index_and_bucket_idx_by_keyERKy, symObjAddr: 0x804C, symBinAddr: 0x50ED0, symSize: 0x120 } - - { offsetInCU: 0x3453, offset: 0x5C2B8, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headIjEixEj, symObjAddr: 0x8198, symBinAddr: 0x50FF0, symSize: 0x74 } - - { offsetInCU: 0x3485, offset: 0x5C2EA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy, symObjAddr: 0x82B4, symBinAddr: 0x51064, symSize: 0x304 } - - { offsetInCU: 0x357D, offset: 0x5C3E2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE15construct_valueIS2_EEvRNS_17hash_map_iteratorIyS2_Lb0EEEOT_, symObjAddr: 0x85B8, symBinAddr: 0x51368, symSize: 0x6C } - - { offsetInCU: 0x35C9, offset: 0x5C42E, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE10nodes_sizeEv, symObjAddr: 0x8624, symBinAddr: 0x513D4, symSize: 0x28 } - - { offsetInCU: 0x35EF, offset: 0x5C454, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE13construct_keyIRKyEEvRNS_17hash_map_iteratorIyS2_Lb0EEEOT_, symObjAddr: 0x864C, symBinAddr: 0x513FC, symSize: 0x68 } - - { offsetInCU: 0x59, offset: 0x5C569, size: 0x8, addend: 0x0, symName: __ZN2bqL14empty_snapshotE, symObjAddr: 0x44C18, symBinAddr: 0x69810, symSize: 0x0 } - - { offsetInCU: 0x3F9A, offset: 0x604AA, size: 0x8, addend: 0x0, symName: __ZN2bqeqIcEEbPKNS_11string_baseIT_E9char_typeERKS3_, symObjAddr: 0x167C, symBinAddr: 0x52A70, symSize: 0x30 } - - { offsetInCU: 0x43D8, offset: 0x608E8, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveIyEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0xA89C, symBinAddr: 0x56DD4, symSize: 0x38 } - - { offsetInCU: 0x442D, offset: 0x6093D, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyIyEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0xA994, symBinAddr: 0x56ECC, symSize: 0x40 } - - { offsetInCU: 0x4584, offset: 0x60A94, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIPNS_13appender_baseEEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0xB700, symBinAddr: 0x57C38, symSize: 0x14 } - - { offsetInCU: 0x460F, offset: 0x60B1F, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRPNS_13appender_baseEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0xBCF4, symBinAddr: 0x57F28, symSize: 0x14 } - - { offsetInCU: 0x4644, offset: 0x60B54, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveIPNS_13appender_baseEEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS4_EE5valueEvE4typeEPS4_S7_m, symObjAddr: 0xC1C0, symBinAddr: 0x583C0, symSize: 0x38 } - - { offsetInCU: 0x4699, offset: 0x60BA9, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyIPNS_13appender_baseEEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS4_EE5valueEvE4typeEPS4_S7_m, symObjAddr: 0xC364, symBinAddr: 0x584A0, symSize: 0x40 } - - { offsetInCU: 0x526F, offset: 0x6177F, size: 0x8, addend: 0x0, symName: __ZN2bq7log_impC2Ev, symObjAddr: 0x0, symBinAddr: 0x515C4, symSize: 0xF4 } - - { offsetInCU: 0x530D, offset: 0x6181D, size: 0x8, addend: 0x0, symName: __ZN2bq7log_impC1Ev, symObjAddr: 0x14C, symBinAddr: 0x516B8, symSize: 0x2C } - - { offsetInCU: 0x53E5, offset: 0x618F5, size: 0x8, addend: 0x0, symName: __ZN2bq7log_impD2Ev, symObjAddr: 0x178, symBinAddr: 0x516E4, symSize: 0x138 } - - { offsetInCU: 0x560B, offset: 0x61B1B, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp5clearEv, symObjAddr: 0x2B0, symBinAddr: 0x5181C, symSize: 0x3D0 } - - { offsetInCU: 0x5838, offset: 0x61D48, size: 0x8, addend: 0x0, symName: __ZN2bq7log_impD1Ev, symObjAddr: 0x704, symBinAddr: 0x51BEC, symSize: 0x2C } - - { offsetInCU: 0x597B, offset: 0x61E8B, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE, symObjAddr: 0x730, symBinAddr: 0x51C18, symSize: 0xE58 } - - { offsetInCU: 0x5DB3, offset: 0x622C3, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvjEv, symObjAddr: 0x18CC, symBinAddr: 0x52AA0, symSize: 0x34 } - - { offsetInCU: 0x5E05, offset: 0x62315, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12add_appenderERKNS_11string_baseIcEERKNS_14property_valueE, symObjAddr: 0x20D4, symBinAddr: 0x52AD4, symSize: 0x3FC } - - { offsetInCU: 0x5F89, offset: 0x62499, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp31refresh_merged_log_level_bitmapEv, symObjAddr: 0x24D0, symBinAddr: 0x52ED0, symSize: 0x114 } - - { offsetInCU: 0x603D, offset: 0x6254D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EEC1Ev, symObjAddr: 0x25FC, symBinAddr: 0x52FE4, symSize: 0x2C } - - { offsetInCU: 0x6067, offset: 0x62577, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_11string_baseIcEELm0EE5beginEv, symObjAddr: 0x2628, symBinAddr: 0x53010, symSize: 0x34 } - - { offsetInCU: 0x608E, offset: 0x6259E, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_11string_baseIcEELm0EE3endEv, symObjAddr: 0x265C, symBinAddr: 0x53044, symSize: 0x44 } - - { offsetInCU: 0x60BA, offset: 0x625CA, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIKNS_11string_baseIcEENS_5arrayIS2_Lm0EEEEneIS3_S5_EEbRKNS0_IT_T0_EE, symObjAddr: 0x26A0, symBinAddr: 0x53088, symSize: 0xAC } - - { offsetInCU: 0x6100, offset: 0x62610, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIKNS_11string_baseIcEENS_5arrayIS2_Lm0EEEEdeEv, symObjAddr: 0x274C, symBinAddr: 0x53134, symSize: 0x18 } - - { offsetInCU: 0x6126, offset: 0x62636, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE9push_backIJyEEEmDpOT_, symObjAddr: 0x2764, symBinAddr: 0x5314C, symSize: 0x58 } - - { offsetInCU: 0x6166, offset: 0x62676, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKNS_11string_baseIcEENS_5arrayIS2_Lm0EEEEppEv, symObjAddr: 0x27E0, symBinAddr: 0x531A4, symSize: 0x20 } - - { offsetInCU: 0x618C, offset: 0x6269C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE5beginEv, symObjAddr: 0x2800, symBinAddr: 0x531C4, symSize: 0x34 } - - { offsetInCU: 0x61B3, offset: 0x626C3, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIyNS_5arrayIyLm0EEEEcvPyEv, symObjAddr: 0x2834, symBinAddr: 0x531F8, symSize: 0x18 } - - { offsetInCU: 0x61D9, offset: 0x626E9, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIyLm0EE4sizeEv, symObjAddr: 0x284C, symBinAddr: 0x53210, symSize: 0x18 } - - { offsetInCU: 0x6200, offset: 0x62710, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EED1Ev, symObjAddr: 0x2864, symBinAddr: 0x53228, symSize: 0x2C } - - { offsetInCU: 0x622A, offset: 0x6273A, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer23set_thread_check_enableEb, symObjAddr: 0x2890, symBinAddr: 0x53254, symSize: 0x4C } - - { offsetInCU: 0x627F, offset: 0x6278F, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE, symObjAddr: 0x28DC, symBinAddr: 0x532A0, symSize: 0xA48 } - - { offsetInCU: 0x66C4, offset: 0x62BD4, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp10set_configERKNS_11string_baseIcEE, symObjAddr: 0x342C, symBinAddr: 0x53CE8, symSize: 0x30 } - - { offsetInCU: 0x66FF, offset: 0x62C0F, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textC1Ev, symObjAddr: 0x3474, symBinAddr: 0x53D18, symSize: 0x2C } - - { offsetInCU: 0x6738, offset: 0x62C48, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawC1Ev, symObjAddr: 0x34A0, symBinAddr: 0x53D44, symSize: 0x2C } - - { offsetInCU: 0x6776, offset: 0x62C86, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedC1Ev, symObjAddr: 0x34CC, symBinAddr: 0x53D70, symSize: 0x2C } - - { offsetInCU: 0x67B4, offset: 0x62CC4, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_13appender_baseEEC1EPS1_, symObjAddr: 0x34F8, symBinAddr: 0x53D9C, symSize: 0x34 } - - { offsetInCU: 0x67EA, offset: 0x62CFA, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_13appender_baseEEptEv, symObjAddr: 0x352C, symBinAddr: 0x53DD0, symSize: 0x18 } - - { offsetInCU: 0x680E, offset: 0x62D1E, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_13appender_baseEE8transferEv, symObjAddr: 0x3544, symBinAddr: 0x53DE8, symSize: 0x24 } - - { offsetInCU: 0x6840, offset: 0x62D50, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_13appender_baseEED1Ev, symObjAddr: 0x3568, symBinAddr: 0x53E0C, symSize: 0x2C } - - { offsetInCU: 0x6881, offset: 0x62D91, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp17process_log_chunkERNS_16log_entry_handleE, symObjAddr: 0x366C, symBinAddr: 0x53E38, symSize: 0x8C } - - { offsetInCU: 0x693D, offset: 0x62E4D, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp3logERKNS_16log_entry_handleE, symObjAddr: 0x36F8, symBinAddr: 0x53EC4, symSize: 0x1D4 } - - { offsetInCU: 0x6A82, offset: 0x62F92, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp15enable_snapshotEj, symObjAddr: 0x38CC, symBinAddr: 0x54098, symSize: 0x88 } - - { offsetInCU: 0x6AC7, offset: 0x62FD7, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp20take_snapshot_stringEb, symObjAddr: 0x3954, symBinAddr: 0x54120, symSize: 0x74 } - - { offsetInCU: 0x6AFD, offset: 0x6300D, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp23release_snapshot_stringEv, symObjAddr: 0x39C8, symBinAddr: 0x54194, symSize: 0x48 } - - { offsetInCU: 0x6B24, offset: 0x63034, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp8get_nameEv, symObjAddr: 0x3A10, symBinAddr: 0x541DC, symSize: 0x18 } - - { offsetInCU: 0x6B4B, offset: 0x6305B, size: 0x8, addend: 0x0, symName: __ZNK2bq13appender_base20get_log_level_bitmapEv, symObjAddr: 0x3A28, symBinAddr: 0x541F4, symSize: 0x20 } - - { offsetInCU: 0x6B6F, offset: 0x6307F, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp7processEb, symObjAddr: 0x3A48, symBinAddr: 0x54214, symSize: 0x244 } - - { offsetInCU: 0x6CA0, offset: 0x631B0, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp21flush_appenders_cacheEv, symObjAddr: 0x3CC8, symBinAddr: 0x54458, symSize: 0x154 } - - { offsetInCU: 0x6D4E, offset: 0x6325E, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp18flush_appenders_ioEv, symObjAddr: 0x3E1C, symBinAddr: 0x545AC, symSize: 0x154 } - - { offsetInCU: 0x6DFC, offset: 0x6330C, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12sync_processEv, symObjAddr: 0x3F88, symBinAddr: 0x54700, symSize: 0x4C } - - { offsetInCU: 0x6E32, offset: 0x63342, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp10get_layoutEv, symObjAddr: 0x3FD4, symBinAddr: 0x5474C, symSize: 0x18 } - - { offsetInCU: 0x6E59, offset: 0x63369, size: 0x8, addend: 0x0, symName: __ZNK2bq13appender_base8get_typeEv, symObjAddr: 0x3FEC, symBinAddr: 0x54764, symSize: 0x18 } - - { offsetInCU: 0x6E7D, offset: 0x6338D, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp20get_categories_countEv, symObjAddr: 0x4004, symBinAddr: 0x5477C, symSize: 0x28 } - - { offsetInCU: 0x6EA4, offset: 0x633B4, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp26get_category_name_by_indexEj, symObjAddr: 0x402C, symBinAddr: 0x547A4, symSize: 0x34 } - - { offsetInCU: 0x6EDA, offset: 0x633EA, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp19get_categories_nameEv, symObjAddr: 0x4060, symBinAddr: 0x547D8, symSize: 0x18 } - - { offsetInCU: 0x6F06, offset: 0x63416, size: 0x8, addend: 0x0, symName: __ZNK2bq13appender_base8get_nameEv, symObjAddr: 0x42FC, symBinAddr: 0x547F0, symSize: 0x18 } - - { offsetInCU: 0x6F2A, offset: 0x6343A, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp26get_appender_by_vague_nameERKNS_11string_baseIcEE, symObjAddr: 0x43D0, symBinAddr: 0x54808, symSize: 0x4EC } - - { offsetInCU: 0x7246, offset: 0x63756, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EEC1Ev, symObjAddr: 0x4AFC, symBinAddr: 0x54CF4, symSize: 0x2C } - - { offsetInCU: 0x7275, offset: 0x63785, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE9push_backIJRS2_EEEmDpOT_, symObjAddr: 0x4E7C, symBinAddr: 0x54D20, symSize: 0x58 } - - { offsetInCU: 0x72BF, offset: 0x637CF, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textC2Ev, symObjAddr: 0x58D8, symBinAddr: 0x54D78, symSize: 0x44 } - - { offsetInCU: 0x72E9, offset: 0x637F9, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseC2Ev, symObjAddr: 0x591C, symBinAddr: 0x54DBC, symSize: 0x84 } - - { offsetInCU: 0x7313, offset: 0x63823, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawC2Ev, symObjAddr: 0x5A88, symBinAddr: 0x54E40, symSize: 0x44 } - - { offsetInCU: 0x733D, offset: 0x6384D, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binaryC2Ev, symObjAddr: 0x5ACC, symBinAddr: 0x54E84, symSize: 0x44 } - - { offsetInCU: 0x76F8, offset: 0x63C08, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedC2Ev, symObjAddr: 0x5B10, symBinAddr: 0x54EC8, symSize: 0x15E0 } - - { offsetInCU: 0x8082, offset: 0x64592, size: 0x8, addend: 0x0, symName: __ZN2bq15hash_map_inlineIyjE22value_node_buffer_headIjEC1Ev, symObjAddr: 0x711C, symBinAddr: 0x564A8, symSize: 0x2C } - - { offsetInCU: 0x80AA, offset: 0x645BA, size: 0x8, addend: 0x0, symName: __ZN2bq15hash_map_inlineIyjE22value_node_buffer_headINS1_10value_nodeEEC1Ev, symObjAddr: 0x7148, symBinAddr: 0x564D4, symSize: 0x2C } - - { offsetInCU: 0x80D2, offset: 0x645E2, size: 0x8, addend: 0x0, symName: __ZN2bq15hash_map_inlineIyjE22value_node_buffer_headIjEC2Ev, symObjAddr: 0x7174, symBinAddr: 0x56500, symSize: 0x1C } - - { offsetInCU: 0x80FA, offset: 0x6460A, size: 0x8, addend: 0x0, symName: __ZN2bq15hash_map_inlineIyjE22value_node_buffer_headINS1_10value_nodeEEC2Ev, symObjAddr: 0x7190, symBinAddr: 0x5651C, symSize: 0x1C } - - { offsetInCU: 0x8122, offset: 0x64632, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EEC2Ev, symObjAddr: 0x9F58, symBinAddr: 0x56538, symSize: 0x20 } - - { offsetInCU: 0x814C, offset: 0x6465C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EED2Ev, symObjAddr: 0x9F78, symBinAddr: 0x56558, symSize: 0x2C } - - { offsetInCU: 0x8176, offset: 0x64686, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE5resetIyEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x9FA4, symBinAddr: 0x56584, symSize: 0x5C } - - { offsetInCU: 0x81A6, offset: 0x646B6, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKNS_11string_baseIcEENS_5arrayIS2_Lm0EEEEC1IS2_EEPT_PKS5_, symObjAddr: 0xA000, symBinAddr: 0x565E0, symSize: 0x3C } - - { offsetInCU: 0x81F5, offset: 0x64705, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKNS_11string_baseIcEENS_5arrayIS2_Lm0EEEEC2IS2_EEPT_PKS5_, symObjAddr: 0xA03C, symBinAddr: 0x5661C, symSize: 0x70 } - - { offsetInCU: 0x8244, offset: 0x64754, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIKNS_11string_baseIcEENS_5arrayIS2_Lm0EEEEptEv, symObjAddr: 0xA0AC, symBinAddr: 0x5668C, symSize: 0x18 } - - { offsetInCU: 0x826A, offset: 0x6477A, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE6insertIJyEEEvNS_14array_iteratorIyS1_EEDpOT_, symObjAddr: 0xA158, symBinAddr: 0x566A4, symSize: 0x288 } - - { offsetInCU: 0x82F8, offset: 0x64808, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE3endEv, symObjAddr: 0xA3E0, symBinAddr: 0x5692C, symSize: 0x3C } - - { offsetInCU: 0x8324, offset: 0x64834, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIyNS_5arrayIyLm0EEEEgeIyS2_EEbRKNS0_IT_T0_EE, symObjAddr: 0xA430, symBinAddr: 0x56968, symSize: 0xAC } - - { offsetInCU: 0x836A, offset: 0x6487A, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIyNS_5arrayIyLm0EEEEleIyS2_EEbRKNS0_IT_T0_EE, symObjAddr: 0xA4DC, symBinAddr: 0x56A14, symSize: 0xAC } - - { offsetInCU: 0x83B0, offset: 0x648C0, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIyNS_5arrayIyLm0EEEEmiIyS2_EElRKNS0_IT_T0_EE, symObjAddr: 0xA588, symBinAddr: 0x56AC0, symSize: 0xAC } - - { offsetInCU: 0x83F6, offset: 0x64906, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE12set_capacityEmb, symObjAddr: 0xA634, symBinAddr: 0x56B6C, symSize: 0x224 } - - { offsetInCU: 0x8465, offset: 0x64975, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIyNS_5arrayIyLm0EEEEplEm, symObjAddr: 0xA858, symBinAddr: 0x56D90, symSize: 0x44 } - - { offsetInCU: 0x84A7, offset: 0x649B7, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE8destructENS_14array_iteratorIyS1_EE, symObjAddr: 0xA8D4, symBinAddr: 0x56E0C, symSize: 0x34 } - - { offsetInCU: 0x84DC, offset: 0x649EC, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE9constructIJyEEEvNS_14array_iteratorIyS1_EEDpOT_, symObjAddr: 0xA908, symBinAddr: 0x56E40, symSize: 0x74 } - - { offsetInCU: 0x8539, offset: 0x64A49, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIyNS_5arrayIyLm0EEEEptEv, symObjAddr: 0xA97C, symBinAddr: 0x56EB4, symSize: 0x18 } - - { offsetInCU: 0x855F, offset: 0x64A6F, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIyNS_5arrayIyLm0EEEEpLEi, symObjAddr: 0xA9D4, symBinAddr: 0x56F0C, symSize: 0x28 } - - { offsetInCU: 0x8598, offset: 0x64AA8, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIyNS_5arrayIyLm0EEEEC1IyEEPT_PKS2_, symObjAddr: 0xA9FC, symBinAddr: 0x56F34, symSize: 0x3C } - - { offsetInCU: 0x85E7, offset: 0x64AF7, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIyNS_5arrayIyLm0EEEEC2IyEEPT_PKS2_, symObjAddr: 0xAA38, symBinAddr: 0x56F70, symSize: 0x70 } - - { offsetInCU: 0x8636, offset: 0x64B46, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorIPNS_13appender_baseEE8destructEPS2_m, symObjAddr: 0xAAA8, symBinAddr: 0x56FE0, symSize: 0x2C } - - { offsetInCU: 0x8666, offset: 0x64B76, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorIPNS_13appender_baseEE15destructor_implIS2_NS3_23trivial_destructor_typeEE8destructEPS2_m, symObjAddr: 0xAAD4, symBinAddr: 0x5700C, symSize: 0x14 } - - { offsetInCU: 0x8696, offset: 0x64BA6, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_13appender_baseEEC2EPS1_, symObjAddr: 0xAAE8, symBinAddr: 0x57020, symSize: 0x20 } - - { offsetInCU: 0x86CC, offset: 0x64BDC, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_13appender_baseEED2Ev, symObjAddr: 0xAB08, symBinAddr: 0x57040, symSize: 0x78 } - - { offsetInCU: 0x88AB, offset: 0x64DBB, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIPNS_13appender_baseELm0EE6insertIJS2_EEEvNS_21array_iterator_inlineIS2_S3_EEDpOT_, symObjAddr: 0xAB80, symBinAddr: 0x570B8, symSize: 0xB80 } - - { offsetInCU: 0x9077, offset: 0x65587, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIPNS_13appender_baseEE8destructEPS2_, symObjAddr: 0xB714, symBinAddr: 0x57C4C, symSize: 0x24 } - - { offsetInCU: 0x9099, offset: 0x655A9, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIPNS_13appender_baseEE15destructor_implIS2_NS3_23trivial_destructor_typeEE8destructEPS2_, symObjAddr: 0xB738, symBinAddr: 0x57C70, symSize: 0x10 } - - { offsetInCU: 0x90BB, offset: 0x655CB, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EEC2Ev, symObjAddr: 0xB91C, symBinAddr: 0x57C80, symSize: 0x20 } - - { offsetInCU: 0x90E5, offset: 0x655F5, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0xBA30, symBinAddr: 0x57CA0, symSize: 0x288 } - - { offsetInCU: 0x9178, offset: 0x65688, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEgeIS2_S4_EEbRKNS0_IT_T0_EE, symObjAddr: 0xBD08, symBinAddr: 0x57F3C, symSize: 0xAC } - - { offsetInCU: 0x91BE, offset: 0x656CE, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEleIS2_S4_EEbRKNS0_IT_T0_EE, symObjAddr: 0xBDE8, symBinAddr: 0x57FE8, symSize: 0xAC } - - { offsetInCU: 0x9204, offset: 0x65714, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEmiIS2_S4_EElRKNS0_IT_T0_EE, symObjAddr: 0xBE94, symBinAddr: 0x58094, symSize: 0xAC } - - { offsetInCU: 0x924A, offset: 0x6575A, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE12set_capacityEmb, symObjAddr: 0xBF40, symBinAddr: 0x58140, symSize: 0x224 } - - { offsetInCU: 0x92B9, offset: 0x657C9, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEplEm, symObjAddr: 0xC164, symBinAddr: 0x58364, symSize: 0x44 } - - { offsetInCU: 0x92FB, offset: 0x6580B, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEcvPS2_Ev, symObjAddr: 0xC1A8, symBinAddr: 0x583A8, symSize: 0x18 } - - { offsetInCU: 0x9321, offset: 0x65831, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE8destructENS_14array_iteratorIS2_S3_EE, symObjAddr: 0xC1F8, symBinAddr: 0x583F8, symSize: 0x34 } - - { offsetInCU: 0x9356, offset: 0x65866, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE9constructIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0xC22C, symBinAddr: 0x5842C, symSize: 0x74 } - - { offsetInCU: 0x93B8, offset: 0x658C8, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEpLEi, symObjAddr: 0xC3A4, symBinAddr: 0x584E0, symSize: 0x28 } - - { offsetInCU: 0x26, offset: 0x6598B, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmapC2Ev, symObjAddr: 0x0, symBinAddr: 0x5855C, symSize: 0x18 } - - { offsetInCU: 0x609, offset: 0x65F6E, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmapC2Ev, symObjAddr: 0x0, symBinAddr: 0x5855C, symSize: 0x18 } - - { offsetInCU: 0x633, offset: 0x65F98, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmapC1Ev, symObjAddr: 0x18, symBinAddr: 0x58574, symSize: 0x2C } - - { offsetInCU: 0x65D, offset: 0x65FC2, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap5clearEv, symObjAddr: 0x98, symBinAddr: 0x585A0, symSize: 0x18 } - - { offsetInCU: 0x683, offset: 0x65FE8, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelENS_9log_levelE, symObjAddr: 0xB0, symBinAddr: 0x585B8, symSize: 0x30 } - - { offsetInCU: 0x6B7, offset: 0x6601C, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelERKNS_11string_baseIcEE, symObjAddr: 0xE0, symBinAddr: 0x585E8, symSize: 0x2B4 } - - { offsetInCU: 0x6EB, offset: 0x66050, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap10have_levelENS_9log_levelE, symObjAddr: 0x5E4, symBinAddr: 0x5889C, symSize: 0x34 } - - { offsetInCU: 0x71F, offset: 0x66084, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap14get_bitmap_ptrEv, symObjAddr: 0x618, symBinAddr: 0x588D0, symSize: 0x14 } - - { offsetInCU: 0x26, offset: 0x660D5, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerC2Ev, symObjAddr: 0x0, symBinAddr: 0x588E4, symSize: 0x1E4 } - - { offsetInCU: 0x3E, offset: 0x660ED, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager18static_inst_cache_E, symObjAddr: 0x2DEE0, symBinAddr: 0x69A78, symSize: 0x0 } - - { offsetInCU: 0x2B1D, offset: 0x68BCC, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIiEEOT_RNS_16remove_referenceIS1_E4typeE, symObjAddr: 0x2828, symBinAddr: 0x5AD2C, symSize: 0x14 } - - { offsetInCU: 0x2CDB, offset: 0x68D8A, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIPNS_7log_impEEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0x5FA8, symBinAddr: 0x5CE98, symSize: 0x14 } - - { offsetInCU: 0x2D10, offset: 0x68DBF, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_10unique_ptrINS_7log_impEEEEEONS_16remove_referenceIT_E4typeEOS6_, symObjAddr: 0x5FD8, symBinAddr: 0x5CEAC, symSize: 0x14 } - - { offsetInCU: 0x2D45, offset: 0x68DF4, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_10unique_ptrINS_7log_impEEEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x604C, symBinAddr: 0x5CF20, symSize: 0x14 } - - { offsetInCU: 0x31FB, offset: 0x692AA, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager22scoped_static_instanceEv, symObjAddr: 0x268, symBinAddr: 0x58B20, symSize: 0x94 } - - { offsetInCU: 0x321C, offset: 0x692CB, size: 0x8, addend: 0x0, symName: __ZZN2bq11log_manager22scoped_static_instanceEvE5inst_, symObjAddr: 0x2DEE8, symBinAddr: 0x69828, symSize: 0x0 } - - { offsetInCU: 0x3850, offset: 0x698FF, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerC2Ev, symObjAddr: 0x0, symBinAddr: 0x588E4, symSize: 0x1E4 } - - { offsetInCU: 0x39E7, offset: 0x69A96, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18spin_lock_rw_crazyC1Ev, symObjAddr: 0x1E4, symBinAddr: 0x58AC8, symSize: 0x2C } - - { offsetInCU: 0x3A0F, offset: 0x69ABE, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerC1Ev, symObjAddr: 0x23C, symBinAddr: 0x58AF4, symSize: 0x2C } - - { offsetInCU: 0x3A39, offset: 0x69AE8, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerD1Ev, symObjAddr: 0x2FC, symBinAddr: 0x58BB4, symSize: 0x2C } - - { offsetInCU: 0x3A63, offset: 0x69B12, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager8instanceEv, symObjAddr: 0x328, symBinAddr: 0x58BE0, symSize: 0x40 } - - { offsetInCU: 0x3C05, offset: 0x69CB4, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerD2Ev, symObjAddr: 0x368, symBinAddr: 0x58C20, symSize: 0x5A4 } - - { offsetInCU: 0x4047, offset: 0x6A0F6, size: 0x8, addend: 0x0, symName: __ZN2bq8platform28scoped_spin_lock_write_crazyC1ERNS0_18spin_lock_rw_crazyE, symObjAddr: 0x90C, symBinAddr: 0x591C4, symSize: 0x34 } - - { offsetInCU: 0x407D, offset: 0x6A12C, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEEptEv, symObjAddr: 0x940, symBinAddr: 0x591F8, symSize: 0x18 } - - { offsetInCU: 0x40A1, offset: 0x6A150, size: 0x8, addend: 0x0, symName: __ZN2bq8platform28scoped_spin_lock_write_crazyD1Ev, symObjAddr: 0x970, symBinAddr: 0x59210, symSize: 0x2C } - - { offsetInCU: 0x418B, offset: 0x6A23A, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager10create_logENS_11string_baseIcEERKS2_RKNS_5arrayIS2_Lm0EEE, symObjAddr: 0x9C8, symBinAddr: 0x5923C, symSize: 0xDD4 } - - { offsetInCU: 0x49AF, offset: 0x6AA5E, size: 0x8, addend: 0x0, symName: __ZNK2bq10unique_ptrINS_7log_impEEcvPvEv, symObjAddr: 0x186C, symBinAddr: 0x5A010, symSize: 0x18 } - - { offsetInCU: 0x49D3, offset: 0x6AA82, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcEneERKS1_, symObjAddr: 0x19D4, symBinAddr: 0x5A028, symSize: 0x34 } - - { offsetInCU: 0x4A08, offset: 0x6AAB7, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEE3getEv, symObjAddr: 0x1A08, symBinAddr: 0x5A05C, symSize: 0x18 } - - { offsetInCU: 0x4A40, offset: 0x6AAEF, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_7log_impEEC1EPS1_, symObjAddr: 0x1B18, symBinAddr: 0x5A074, symSize: 0x34 } - - { offsetInCU: 0x4A76, offset: 0x6AB25, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_7log_impEEptEv, symObjAddr: 0x1B4C, symBinAddr: 0x5A0A8, symSize: 0x18 } - - { offsetInCU: 0x4A9A, offset: 0x6AB49, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_7log_impEE8transferEv, symObjAddr: 0x1B64, symBinAddr: 0x5A0C0, symSize: 0x24 } - - { offsetInCU: 0x4ACC, offset: 0x6AB7B, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_7log_impEED1Ev, symObjAddr: 0x1B88, symBinAddr: 0x5A0E4, symSize: 0x2C } - - { offsetInCU: 0x4AF4, offset: 0x6ABA3, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager12reset_configERKNS_11string_baseIcEES4_, symObjAddr: 0x1BB4, symBinAddr: 0x5A110, symSize: 0x420 } - - { offsetInCU: 0x4D4D, offset: 0x6ADFC, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager17process_by_workerEPNS_7log_impEb, symObjAddr: 0x1FD4, symBinAddr: 0x5A530, symSize: 0x1A8 } - - { offsetInCU: 0x4E41, offset: 0x6AEF0, size: 0x8, addend: 0x0, symName: __ZN2bq8platform27scoped_spin_lock_read_crazyC1ERNS0_18spin_lock_rw_crazyE, symObjAddr: 0x217C, symBinAddr: 0x5A6D8, symSize: 0x34 } - - { offsetInCU: 0x4E77, offset: 0x6AF26, size: 0x8, addend: 0x0, symName: __ZN2bq8platform27scoped_spin_lock_read_crazyD1Ev, symObjAddr: 0x21B0, symBinAddr: 0x5A70C, symSize: 0x2C } - - { offsetInCU: 0x4E9F, offset: 0x6AF4E, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager15force_flush_allEv, symObjAddr: 0x21DC, symBinAddr: 0x5A738, symSize: 0x2B8 } - - { offsetInCU: 0x5017, offset: 0x6B0C6, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager11force_flushEy, symObjAddr: 0x2494, symBinAddr: 0x5A9F0, symSize: 0xFC } - - { offsetInCU: 0x5067, offset: 0x6B116, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager12awake_workerEv, symObjAddr: 0x25E8, symBinAddr: 0x5AAEC, symSize: 0x28 } - - { offsetInCU: 0x508D, offset: 0x6B13C, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager17get_public_layoutEv, symObjAddr: 0x2610, symBinAddr: 0x5AB14, symSize: 0x18 } - - { offsetInCU: 0x50B3, offset: 0x6B162, size: 0x8, addend: 0x0, symName: __ZNK2bq11log_manager14get_logs_countEv, symObjAddr: 0x2628, symBinAddr: 0x5AB2C, symSize: 0x24 } - - { offsetInCU: 0x50F6, offset: 0x6B1A5, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager16get_log_by_indexEj, symObjAddr: 0x264C, symBinAddr: 0x5AB50, symSize: 0xE8 } - - { offsetInCU: 0x517A, offset: 0x6B229, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18spin_lock_rw_crazyC2Ev, symObjAddr: 0x2734, symBinAddr: 0x5AC38, symSize: 0x48 } - - { offsetInCU: 0x51A7, offset: 0x6B256, size: 0x8, addend: 0x0, symName: __ZN2bq19cache_friendly_typeINS_8platform6atomicIiEEEC1IiEEOT_, symObjAddr: 0x277C, symBinAddr: 0x5AC80, symSize: 0x34 } - - { offsetInCU: 0x51E6, offset: 0x6B295, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIyEC1ERKy, symObjAddr: 0x27B0, symBinAddr: 0x5ACB4, symSize: 0x34 } - - { offsetInCU: 0x521C, offset: 0x6B2CB, size: 0x8, addend: 0x0, symName: __ZN2bq19cache_friendly_typeINS_8platform6atomicIiEEEC2IiEEOT_, symObjAddr: 0x27E4, symBinAddr: 0x5ACE8, symSize: 0x44 } - - { offsetInCU: 0x525B, offset: 0x6B30A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIiEC1ERKi, symObjAddr: 0x283C, symBinAddr: 0x5AD40, symSize: 0x34 } - - { offsetInCU: 0x5291, offset: 0x6B340, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIiEC2ERKi, symObjAddr: 0x2870, symBinAddr: 0x5AD74, symSize: 0x34 } - - { offsetInCU: 0x52C7, offset: 0x6B376, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12_atomic_baseIiLm4EEC2ERKi, symObjAddr: 0x28A4, symBinAddr: 0x5ADA8, symSize: 0x24 } - - { offsetInCU: 0x52FD, offset: 0x6B3AC, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIyEC2ERKy, symObjAddr: 0x28C8, symBinAddr: 0x5ADCC, symSize: 0x34 } - - { offsetInCU: 0x5333, offset: 0x6B3E2, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12_atomic_baseIyLm8EEC2ERKy, symObjAddr: 0x28FC, symBinAddr: 0x5AE00, symSize: 0x24 } - - { offsetInCU: 0x5369, offset: 0x6B418, size: 0x8, addend: 0x0, symName: __ZN2bq8platform28scoped_spin_lock_write_crazyC2ERNS0_18spin_lock_rw_crazyE, symObjAddr: 0x2920, symBinAddr: 0x5AE24, symSize: 0x3C } - - { offsetInCU: 0x54C5, offset: 0x6B574, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18spin_lock_rw_crazy10write_lockEv, symObjAddr: 0x295C, symBinAddr: 0x5AE60, symSize: 0x800 } - - { offsetInCU: 0x5A11, offset: 0x6BAC0, size: 0x8, addend: 0x0, symName: __ZN2bq19cache_friendly_typeINS_8platform6atomicIiEEE3getEv, symObjAddr: 0x315C, symBinAddr: 0x5B660, symSize: 0x18 } - - { offsetInCU: 0x5A35, offset: 0x6BAE4, size: 0x8, addend: 0x0, symName: __ZN2bq8platform28scoped_spin_lock_write_crazyD2Ev, symObjAddr: 0x3174, symBinAddr: 0x5B678, symSize: 0x30 } - - { offsetInCU: 0x5A5D, offset: 0x6BB0C, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18spin_lock_rw_crazy12write_unlockEv, symObjAddr: 0x31A4, symBinAddr: 0x5B6A8, symSize: 0x1C0 } - - { offsetInCU: 0x5C9E, offset: 0x6BD4D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform27scoped_spin_lock_read_crazyC2ERNS0_18spin_lock_rw_crazyE, symObjAddr: 0x3C28, symBinAddr: 0x5B868, symSize: 0x3C } - - { offsetInCU: 0x5D70, offset: 0x6BE1F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18spin_lock_rw_crazy9read_lockEv, symObjAddr: 0x3C64, symBinAddr: 0x5B8A4, symSize: 0x3A4 } - - { offsetInCU: 0x5F4A, offset: 0x6BFF9, size: 0x8, addend: 0x0, symName: __ZN2bq8platform27scoped_spin_lock_read_crazyD2Ev, symObjAddr: 0x4008, symBinAddr: 0x5BC48, symSize: 0x30 } - - { offsetInCU: 0x5F72, offset: 0x6C021, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18spin_lock_rw_crazy11read_unlockEv, symObjAddr: 0x4038, symBinAddr: 0x5BC78, symSize: 0x2E8 } - - { offsetInCU: 0x6077, offset: 0x6C126, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_10unique_ptrINS_7log_impEEEE8destructEPS3_m, symObjAddr: 0x5070, symBinAddr: 0x5BF60, symSize: 0x2C } - - { offsetInCU: 0x60A7, offset: 0x6C156, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_10unique_ptrINS_7log_impEEEE15destructor_implIS3_NS4_27non_trivial_destructor_typeEE8destructEPS3_m, symObjAddr: 0x509C, symBinAddr: 0x5BF8C, symSize: 0x7C } - - { offsetInCU: 0x60F3, offset: 0x6C1A2, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_10unique_ptrINS_7log_impEEEE8destructEPS3_, symObjAddr: 0x5118, symBinAddr: 0x5C008, symSize: 0x24 } - - { offsetInCU: 0x6115, offset: 0x6C1C4, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_10unique_ptrINS_7log_impEEEE15destructor_implIS3_NS4_27non_trivial_destructor_typeEE8destructEPS3_, symObjAddr: 0x513C, symBinAddr: 0x5C02C, symSize: 0x3C } - - { offsetInCU: 0x6137, offset: 0x6C1E6, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEED1Ev, symObjAddr: 0x5178, symBinAddr: 0x5C068, symSize: 0x2C } - - { offsetInCU: 0x615F, offset: 0x6C20E, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEED2Ev, symObjAddr: 0x51A4, symBinAddr: 0x5C094, symSize: 0x2C } - - { offsetInCU: 0x6187, offset: 0x6C236, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEE5resetEv, symObjAddr: 0x51D0, symBinAddr: 0x5C0C0, symSize: 0x6C } - - { offsetInCU: 0x61AB, offset: 0x6C25A, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_7log_impEEC2EPS1_, symObjAddr: 0x523C, symBinAddr: 0x5C12C, symSize: 0x20 } - - { offsetInCU: 0x61E1, offset: 0x6C290, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_7log_impEED2Ev, symObjAddr: 0x525C, symBinAddr: 0x5C14C, symSize: 0x78 } - - { offsetInCU: 0x63C0, offset: 0x6C46F, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineINS_10unique_ptrINS_7log_impEEELm0EE6insertIJPS2_EEEvNS_21array_iterator_inlineIS3_S4_EEDpOT_, symObjAddr: 0x52D4, symBinAddr: 0x5C1C4, symSize: 0xCD4 } - - { offsetInCU: 0x6BEC, offset: 0x6CC9B, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEEC1IS1_EEONS0_IT_EE, symObjAddr: 0x5FEC, symBinAddr: 0x5CEC0, symSize: 0x34 } - - { offsetInCU: 0x6C2B, offset: 0x6CCDA, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEEC2IS1_EEONS0_IT_EE, symObjAddr: 0x6020, symBinAddr: 0x5CEF4, symSize: 0x2C } - - { offsetInCU: 0x6C6A, offset: 0x6CD19, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEEaSIS1_EERS2_ONS0_IT_EE, symObjAddr: 0x6060, symBinAddr: 0x5CF34, symSize: 0x6C } - - { offsetInCU: 0x6CA6, offset: 0x6CD55, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEEC1EPS1_, symObjAddr: 0x60CC, symBinAddr: 0x5CFA0, symSize: 0x34 } - - { offsetInCU: 0x6CDC, offset: 0x6CD8B, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEEC2EPS1_, symObjAddr: 0x6100, symBinAddr: 0x5CFD4, symSize: 0x20 } - - { offsetInCU: 0x26, offset: 0x6CE28, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotC2EPNS_7log_impE, symObjAddr: 0x0, symBinAddr: 0x5CFF4, symSize: 0x80 } - - { offsetInCU: 0x2342, offset: 0x6F144, size: 0x8, addend: 0x0, symName: __ZN2bq9min_valueIjEET_RKS1_S3_, symObjAddr: 0x1530, symBinAddr: 0x5DD74, symSize: 0x58 } - - { offsetInCU: 0x2C8C, offset: 0x6FA8E, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotC2EPNS_7log_impE, symObjAddr: 0x0, symBinAddr: 0x5CFF4, symSize: 0x80 } - - { offsetInCU: 0x2CC4, offset: 0x6FAC6, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9spin_lockC1Ev, symObjAddr: 0xB4, symBinAddr: 0x5D074, symSize: 0x2C } - - { offsetInCU: 0x2CEC, offset: 0x6FAEE, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotC1EPNS_7log_impE, symObjAddr: 0xE0, symBinAddr: 0x5D0A0, symSize: 0x34 } - - { offsetInCU: 0x2D24, offset: 0x6FB26, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotD2Ev, symObjAddr: 0x114, symBinAddr: 0x5D0D4, symSize: 0xE0 } - - { offsetInCU: 0x2D67, offset: 0x6FB69, size: 0x8, addend: 0x0, symName: __ZN2bq8platform16scoped_spin_lockC1ERNS0_9spin_lockE, symObjAddr: 0x1F4, symBinAddr: 0x5D1B4, symSize: 0x34 } - - { offsetInCU: 0x2D9D, offset: 0x6FB9F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform16scoped_spin_lockD1Ev, symObjAddr: 0x228, symBinAddr: 0x5D1E8, symSize: 0x2C } - - { offsetInCU: 0x2DC5, offset: 0x6FBC7, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotD1Ev, symObjAddr: 0x2AC, symBinAddr: 0x5D214, symSize: 0x2C } - - { offsetInCU: 0x2DEF, offset: 0x6FBF1, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot17reset_buffer_sizeEj, symObjAddr: 0x2D8, symBinAddr: 0x5D240, symSize: 0xEC } - - { offsetInCU: 0x2E31, offset: 0x6FC33, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot10write_dataEPKhj, symObjAddr: 0x488, symBinAddr: 0x5D32C, symSize: 0x12C } - - { offsetInCU: 0x2EB9, offset: 0x6FCBB, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot20take_snapshot_stringEb, symObjAddr: 0x5B4, symBinAddr: 0x5D458, symSize: 0x31C } - - { offsetInCU: 0x30A4, offset: 0x6FEA6, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9spin_lock4lockEv, symObjAddr: 0x8D0, symBinAddr: 0x5D774, symSize: 0x600 } - - { offsetInCU: 0x3405, offset: 0x70207, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIcNS_5arrayIcLm1EEEEmiEm, symObjAddr: 0x15BC, symBinAddr: 0x5DDCC, symSize: 0x44 } - - { offsetInCU: 0x344C, offset: 0x7024E, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKcNS_5arrayIcLm1EEEEC1IcS3_EERKNS0_IT_T0_EE, symObjAddr: 0x1600, symBinAddr: 0x5DE10, symSize: 0x34 } - - { offsetInCU: 0x3496, offset: 0x70298, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot23release_snapshot_stringEv, symObjAddr: 0x1634, symBinAddr: 0x5DE44, symSize: 0x28 } - - { offsetInCU: 0x3510, offset: 0x70312, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9spin_lock6unlockEv, symObjAddr: 0x165C, symBinAddr: 0x5DE6C, symSize: 0x1C8 } - - { offsetInCU: 0x3751, offset: 0x70553, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9spin_lockC2Ev, symObjAddr: 0x1824, symBinAddr: 0x5E034, symSize: 0x48 } - - { offsetInCU: 0x377E, offset: 0x70580, size: 0x8, addend: 0x0, symName: __ZN2bq19cache_friendly_typeINS_8platform6atomicIbEEEC1IbEEOT_, symObjAddr: 0x186C, symBinAddr: 0x5E07C, symSize: 0x34 } - - { offsetInCU: 0x37BD, offset: 0x705BF, size: 0x8, addend: 0x0, symName: __ZN2bq19cache_friendly_typeINS_8platform6atomicIbEEEC2IbEEOT_, symObjAddr: 0x18D4, symBinAddr: 0x5E0B0, symSize: 0x44 } - - { offsetInCU: 0x37FC, offset: 0x705FE, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIbEC1ERKb, symObjAddr: 0x192C, symBinAddr: 0x5E0F4, symSize: 0x34 } - - { offsetInCU: 0x3832, offset: 0x70634, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIbEC2ERKb, symObjAddr: 0x1960, symBinAddr: 0x5E128, symSize: 0x34 } - - { offsetInCU: 0x3868, offset: 0x7066A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12_atomic_baseIbLm1EEC2ERKb, symObjAddr: 0x1994, symBinAddr: 0x5E15C, symSize: 0x28 } - - { offsetInCU: 0x389E, offset: 0x706A0, size: 0x8, addend: 0x0, symName: __ZN2bq8platform16scoped_spin_lockC2ERNS0_9spin_lockE, symObjAddr: 0x1A14, symBinAddr: 0x5E184, symSize: 0x3C } - - { offsetInCU: 0x38D4, offset: 0x706D6, size: 0x8, addend: 0x0, symName: __ZN2bq8platform16scoped_spin_lockD2Ev, symObjAddr: 0x1A50, symBinAddr: 0x5E1C0, symSize: 0x30 } - - { offsetInCU: 0x38FC, offset: 0x706FE, size: 0x8, addend: 0x0, symName: __ZN2bq19cache_friendly_typeINS_8platform6atomicIbEEE3getEv, symObjAddr: 0x232C, symBinAddr: 0x5E1F0, symSize: 0x18 } - - { offsetInCU: 0x3920, offset: 0x70722, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIcNS_5arrayIcLm1EEEEmIEi, symObjAddr: 0x2E08, symBinAddr: 0x5E208, symSize: 0x28 } - - { offsetInCU: 0x3954, offset: 0x70756, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKcNS_5arrayIcLm1EEEEC2IcS3_EERKNS0_IT_T0_EE, symObjAddr: 0x2E30, symBinAddr: 0x5E230, symSize: 0x30 } - - { offsetInCU: 0x26, offset: 0x707DF, size: 0x8, addend: 0x0, symName: __ZN2bq11thread_info4initEv, symObjAddr: 0x0, symBinAddr: 0x5E260, symSize: 0x134 } - - { offsetInCU: 0x61D, offset: 0x70DD6, size: 0x8, addend: 0x0, symName: __ZN2bq11thread_info4initEv, symObjAddr: 0x0, symBinAddr: 0x5E260, symSize: 0x134 } - - { offsetInCU: 0x44, offset: 0x70E70, size: 0x8, addend: 0x0, symName: __ZN2bqL19log_worker_name_seqE, symObjAddr: 0x1F04C, symBinAddr: 0x69A68, symSize: 0x0 } - - { offsetInCU: 0x2C74, offset: 0x73AA0, size: 0x8, addend: 0x0, symName: __ZN2bq10log_workerC2Ev, symObjAddr: 0x34, symBinAddr: 0x5E394, symSize: 0x98 } - - { offsetInCU: 0x2CA3, offset: 0x73ACF, size: 0x8, addend: 0x0, symName: __ZN2bq8platform11thread_attrC1Ev, symObjAddr: 0xCC, symBinAddr: 0x5E42C, symSize: 0x2C } - - { offsetInCU: 0x2CCD, offset: 0x73AF9, size: 0x8, addend: 0x0, symName: __ZN2bq10log_workerC1Ev, symObjAddr: 0x12C, symBinAddr: 0x5E458, symSize: 0x2C } - - { offsetInCU: 0x2CF7, offset: 0x73B23, size: 0x8, addend: 0x0, symName: __ZN2bq10log_workerD2Ev, symObjAddr: 0x158, symBinAddr: 0x5E484, symSize: 0x54 } - - { offsetInCU: 0x2D21, offset: 0x73B4D, size: 0x8, addend: 0x0, symName: __ZN2bq10log_workerD1Ev, symObjAddr: 0x1AC, symBinAddr: 0x5E4D8, symSize: 0x2C } - - { offsetInCU: 0x2D4B, offset: 0x73B77, size: 0x8, addend: 0x0, symName: __ZN2bq10log_workerD0Ev, symObjAddr: 0x1D8, symBinAddr: 0x5E504, symSize: 0x30 } - - { offsetInCU: 0x2E25, offset: 0x73C51, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker4initENS_15log_thread_modeEPNS_7log_impE, symObjAddr: 0x208, symBinAddr: 0x5E534, symSize: 0x44C } - - { offsetInCU: 0x3003, offset: 0x73E2F, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker5awakeEv, symObjAddr: 0x6B4, symBinAddr: 0x5E980, symSize: 0x28 } - - { offsetInCU: 0x30D4, offset: 0x73F00, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker20awake_and_wait_beginEPNS_7log_impE, symObjAddr: 0x6DC, symBinAddr: 0x5E9A8, symSize: 0x244 } - - { offsetInCU: 0x32BB, offset: 0x740E7, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker19awake_and_wait_joinEv, symObjAddr: 0x920, symBinAddr: 0x5EBEC, symSize: 0x130 } - - { offsetInCU: 0x3382, offset: 0x741AE, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker3runEv, symObjAddr: 0xA50, symBinAddr: 0x5ED1C, symSize: 0x354 } - - { offsetInCU: 0x358B, offset: 0x743B7, size: 0x8, addend: 0x0, symName: __ZN2bq8platform11thread_attrC2Ev, symObjAddr: 0xE14, symBinAddr: 0x5F070, symSize: 0x1C } - - { offsetInCU: 0x26, offset: 0x7441D, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferC2Ejy, symObjAddr: 0x0, symBinAddr: 0x5F0CC, symSize: 0x4D4 } - - { offsetInCU: 0xD7B, offset: 0x75172, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferC2Ejy, symObjAddr: 0x0, symBinAddr: 0x5F0CC, symSize: 0x4D4 } - - { offsetInCU: 0x1182, offset: 0x75579, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer11cursor_typeC1Ev, symObjAddr: 0x4D4, symBinAddr: 0x5F5A0, symSize: 0x2C } - - { offsetInCU: 0x11AF, offset: 0x755A6, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIjEC1Ev, symObjAddr: 0x558, symBinAddr: 0x5F5CC, symSize: 0x2C } - - { offsetInCU: 0x11D7, offset: 0x755CE, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIyEC1Ev, symObjAddr: 0x584, symBinAddr: 0x5F5F8, symSize: 0x2C } - - { offsetInCU: 0x11FF, offset: 0x755F6, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer17create_memory_mapEjy, symObjAddr: 0x5B0, symBinAddr: 0x5F624, symSize: 0x368 } - - { offsetInCU: 0x135F, offset: 0x75756, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer16init_with_memoryEj, symObjAddr: 0x918, symBinAddr: 0x5F98C, symSize: 0x3B8 } - - { offsetInCU: 0x179A, offset: 0x75B91, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer33try_recover_from_exist_memory_mapEv, symObjAddr: 0xCD0, symBinAddr: 0x5FD44, symSize: 0x608 } - - { offsetInCU: 0x1C10, offset: 0x76007, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer20init_with_memory_mapEv, symObjAddr: 0x12D8, symBinAddr: 0x6034C, symSize: 0x300 } - - { offsetInCU: 0x1F95, offset: 0x7638C, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferC1Ejy, symObjAddr: 0x15D8, symBinAddr: 0x6064C, symSize: 0x3C } - - { offsetInCU: 0x1FDB, offset: 0x763D2, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferD2Ev, symObjAddr: 0x1614, symBinAddr: 0x60688, symSize: 0x64 } - - { offsetInCU: 0x2005, offset: 0x763FC, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer17uninit_memory_mapEv, symObjAddr: 0x1678, symBinAddr: 0x606EC, symSize: 0x70 } - - { offsetInCU: 0x202C, offset: 0x76423, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferD1Ev, symObjAddr: 0x1714, symBinAddr: 0x6075C, symSize: 0x2C } - - { offsetInCU: 0x2186, offset: 0x7657D, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer17alloc_write_chunkEj, symObjAddr: 0x1740, symBinAddr: 0x60788, symSize: 0x18C0 } - - { offsetInCU: 0x2E76, offset: 0x7726D, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer18commit_write_chunkERKNS_24ring_buffer_write_handleE, symObjAddr: 0x302C, symBinAddr: 0x62048, symSize: 0x3B0 } - - { offsetInCU: 0x30CE, offset: 0x774C5, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer10begin_readEv, symObjAddr: 0x33DC, symBinAddr: 0x623F8, symSize: 0x138 } - - { offsetInCU: 0x3110, offset: 0x77507, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer4readEv, symObjAddr: 0x3514, symBinAddr: 0x62530, symSize: 0x860 } - - { offsetInCU: 0x3424, offset: 0x7781B, size: 0x8, addend: 0x0, symName: __ZN2bq23ring_buffer_read_handleC1Ev, symObjAddr: 0x3D74, symBinAddr: 0x62D90, symSize: 0x2C } - - { offsetInCU: 0x344E, offset: 0x77845, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer8end_readEv, symObjAddr: 0x3DA0, symBinAddr: 0x62DBC, symSize: 0x7AC } - - { offsetInCU: 0x36E5, offset: 0x77ADC, size: 0x8, addend: 0x0, symName: __ZN2bq17memory_map_handleaSEOS0_, symObjAddr: 0x46B8, symBinAddr: 0x63568, symSize: 0x4C } - - { offsetInCU: 0x3714, offset: 0x77B0B, size: 0x8, addend: 0x0, symName: __ZNK2bq17memory_map_handle15get_mapped_dataEv, symObjAddr: 0x4728, symBinAddr: 0x635B4, symSize: 0x18 } - - { offsetInCU: 0x3738, offset: 0x77B2F, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer11cursor_typeC2Ev, symObjAddr: 0x4740, symBinAddr: 0x635CC, symSize: 0xE4 } - - { offsetInCU: 0x386E, offset: 0x77C65, size: 0x8, addend: 0x0, symName: __ZN2bq23ring_buffer_read_handleC2Ev, symObjAddr: 0x4A48, symBinAddr: 0x636B0, symSize: 0x2C } - - { offsetInCU: 0x3898, offset: 0x77C8F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIjEC2Ev, symObjAddr: 0x4ACC, symBinAddr: 0x636DC, symSize: 0x2C } - - { offsetInCU: 0x38C0, offset: 0x77CB7, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12_atomic_baseIjLm4EEC2Ev, symObjAddr: 0x4AF8, symBinAddr: 0x63708, symSize: 0x18 } - - { offsetInCU: 0x38E8, offset: 0x77CDF, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIyEC2Ev, symObjAddr: 0x4B10, symBinAddr: 0x63720, symSize: 0x2C } - - { offsetInCU: 0x3910, offset: 0x77D07, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12_atomic_baseIyLm8EEC2Ev, symObjAddr: 0x4B3C, symBinAddr: 0x6374C, symSize: 0x18 } + - { offsetInCU: 0xE4D, offset: 0xE4D, size: 0x8, addend: 0x0, symName: __ZN2bqL24get_memory_map_size_unitEv, symObjAddr: 0x0, symBinAddr: 0x4000, symSize: 0x1C } + - { offsetInCU: 0x18C0, offset: 0x18C0, size: 0x8, addend: 0x0, symName: __ZN2bq10memory_map19is_platform_supportEv, symObjAddr: 0x1C, symBinAddr: 0x401C, symSize: 0xC } + - { offsetInCU: 0x18EE, offset: 0x18EE, size: 0x8, addend: 0x0, symName: __ZN2bq10memory_map17create_memory_mapERKNS_11file_handleEmm, symObjAddr: 0x34, symBinAddr: 0x4028, symSize: 0x2C8 } + - { offsetInCU: 0x19A6, offset: 0x19A6, size: 0x8, addend: 0x0, symName: __ZN2bq17memory_map_handleC1Ev, symObjAddr: 0x2FC, symBinAddr: 0x42F0, symSize: 0x2C } + - { offsetInCU: 0x19D0, offset: 0x19D0, size: 0x8, addend: 0x0, symName: __ZNK2bq11file_handle13abs_file_pathEv, symObjAddr: 0x328, symBinAddr: 0x431C, symSize: 0x18 } + - { offsetInCU: 0x19F4, offset: 0x19F4, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE5c_strEv, symObjAddr: 0x340, symBinAddr: 0x4334, symSize: 0x70 } + - { offsetInCU: 0x1A1B, offset: 0x1A1B, size: 0x8, addend: 0x0, symName: __ZN2bq17memory_map_handleD1Ev, symObjAddr: 0x3B0, symBinAddr: 0x43A4, symSize: 0x2C } + - { offsetInCU: 0x1A45, offset: 0x1A45, size: 0x8, addend: 0x0, symName: __ZNK2bq17memory_map_handle15has_been_mappedEv, symObjAddr: 0x4A0, symBinAddr: 0x43D0, symSize: 0x24 } + - { offsetInCU: 0x1A69, offset: 0x1A69, size: 0x8, addend: 0x0, symName: __ZN2bq10memory_map18release_memory_mapERNS_17memory_map_handleE, symObjAddr: 0x4C4, symBinAddr: 0x43F4, symSize: 0xB8 } + - { offsetInCU: 0x1A8D, offset: 0x1A8D, size: 0x8, addend: 0x0, symName: __ZN2bq17memory_map_handleC2Ev, symObjAddr: 0x57C, symBinAddr: 0x44AC, symSize: 0x60 } + - { offsetInCU: 0x1AB7, offset: 0x1AB7, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleC1Ev, symObjAddr: 0x5DC, symBinAddr: 0x450C, symSize: 0x2C } + - { offsetInCU: 0x1ADF, offset: 0x1ADF, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleC2Ev, symObjAddr: 0x608, symBinAddr: 0x4538, symSize: 0x38 } + - { offsetInCU: 0x1B07, offset: 0x1B07, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC1Ev, symObjAddr: 0x640, symBinAddr: 0x4570, symSize: 0x2C } + - { offsetInCU: 0x1B31, offset: 0x1B31, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handle5clearEv, symObjAddr: 0x66C, symBinAddr: 0x459C, symSize: 0x38 } + - { offsetInCU: 0x1B55, offset: 0x1B55, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC2Ev, symObjAddr: 0x6A4, symBinAddr: 0x45D4, symSize: 0x2C } + - { offsetInCU: 0x1B7F, offset: 0x1B7F, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EEC2Ev, symObjAddr: 0x6D0, symBinAddr: 0x4600, symSize: 0x20 } + - { offsetInCU: 0x1BA9, offset: 0x1BA9, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE5resetIcEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x6F0, symBinAddr: 0x4620, symSize: 0x5C } + - { offsetInCU: 0x1BD9, offset: 0x1BD9, size: 0x8, addend: 0x0, symName: __ZN2bq17memory_map_handleD2Ev, symObjAddr: 0x74C, symBinAddr: 0x467C, symSize: 0x30 } + - { offsetInCU: 0x1C03, offset: 0x1C03, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIcLm1EE4sizeEv, symObjAddr: 0x77C, symBinAddr: 0x46AC, symSize: 0x18 } + - { offsetInCU: 0x1C2A, offset: 0x1C2A, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE9empty_strEv, symObjAddr: 0x794, symBinAddr: 0x46C4, symSize: 0x18 } + - { offsetInCU: 0x1C4E, offset: 0x1C4E, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIcLm1EE5beginEv, symObjAddr: 0x7AC, symBinAddr: 0x46DC, symSize: 0x34 } + - { offsetInCU: 0x1C75, offset: 0x1C75, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIKcNS_5arrayIcLm1EEEEptEv, symObjAddr: 0x7E0, symBinAddr: 0x4710, symSize: 0x18 } + - { offsetInCU: 0x1CA0, offset: 0x1CA0, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKcNS_5arrayIcLm1EEEEC1IcEEPT_PKS3_, symObjAddr: 0x7F8, symBinAddr: 0x4728, symSize: 0x3C } + - { offsetInCU: 0x1CEF, offset: 0x1CEF, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKcNS_5arrayIcLm1EEEEC2IcEEPT_PKS3_, symObjAddr: 0x834, symBinAddr: 0x4764, symSize: 0x70 } + - { offsetInCU: 0x4A, offset: 0x1DB0, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL8base_dirE, symObjAddr: 0xF650, symBinAddr: 0x688F0, symSize: 0x0 } + - { offsetInCU: 0x57, offset: 0x1DBD, size: 0x8, addend: 0x0, symName: __ZN2bq8platform25high_performance_epoch_msEv, symObjAddr: 0x0, symBinAddr: 0x4804, symSize: 0x54 } + - { offsetInCU: 0x91, offset: 0x1DF7, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12get_base_dirEb, symObjAddr: 0xAC, symBinAddr: 0x4884, symSize: 0x108 } + - { offsetInCU: 0xD1, offset: 0x1E37, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9ios_printEPKc, symObjAddr: 0x3D4, symBinAddr: 0x4AAC, symSize: 0x7C } + - { offsetInCU: 0xF9, offset: 0x1E5F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform15get_stack_traceEjRPKcRj, symObjAddr: 0x4A8, symBinAddr: 0x4B80, symSize: 0x3A8 } + - { offsetInCU: 0x19F, offset: 0x1F05, size: 0x8, addend: 0x0, symName: __ZN2bq8platform21get_stack_trace_utf16EjRPKDsRj, symObjAddr: 0xCD0, symBinAddr: 0x5390, symSize: 0x180 } + - { offsetInCU: 0x198E, offset: 0x36F4, size: 0x8, addend: 0x0, symName: __ZN2bq13___string_lenIcEEmPKT_, symObjAddr: 0x147C, symBinAddr: 0x5A94, symSize: 0x4C } + - { offsetInCU: 0x1A23, offset: 0x3789, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIcEEOT_RNS_16remove_referenceIS1_E4typeE, symObjAddr: 0x1900, symBinAddr: 0x5F18, symSize: 0x14 } + - { offsetInCU: 0x1A58, offset: 0x37BE, size: 0x8, addend: 0x0, symName: __ZN2bqgeIccNS_5arrayIcLm1EEES2_EEbRKNS_14array_iteratorIT_T1_EERKNS3_IT0_T2_EE, symObjAddr: 0x1914, symBinAddr: 0x5F2C, symSize: 0xA0 } + - { offsetInCU: 0x1AB6, offset: 0x381C, size: 0x8, addend: 0x0, symName: __ZN2bqleIccNS_5arrayIcLm1EEES2_EEbRKNS_14array_iteratorIT_T1_EERKNS3_IT0_T2_EE, symObjAddr: 0x19B4, symBinAddr: 0x5FCC, symSize: 0xA0 } + - { offsetInCU: 0x1B14, offset: 0x387A, size: 0x8, addend: 0x0, symName: __ZN2bqmiIccNS_5arrayIcLm1EEES2_EENS_14array_iteratorIT_T1_E9diff_typeERKS6_RKNS3_IT0_T2_EE, symObjAddr: 0x1A54, symBinAddr: 0x606C, symSize: 0x98 } + - { offsetInCU: 0x1B72, offset: 0x38D8, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveIcEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0x1D58, symBinAddr: 0x6370, symSize: 0x38 } + - { offsetInCU: 0x1BC7, offset: 0x392D, size: 0x8, addend: 0x0, symName: __ZN2bq9max_valueImEET_RKS1_S3_, symObjAddr: 0x1E5C, symBinAddr: 0x6474, symSize: 0x58 } + - { offsetInCU: 0x1C0A, offset: 0x3970, size: 0x8, addend: 0x0, symName: __ZN2bq18roundup_pow_of_twoImEET_S1_, symObjAddr: 0x1EB4, symBinAddr: 0x64CC, symSize: 0x84 } + - { offsetInCU: 0x1C4E, offset: 0x39B4, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyIcEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0x1F38, symBinAddr: 0x6550, symSize: 0x40 } + - { offsetInCU: 0x1D08, offset: 0x3A6E, size: 0x8, addend: 0x0, symName: __ZN2bq20_inner_backward_copyIcEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq28is_trivially_copy_assignableIS2_EE5valueEvE4typeEPS2_PKS2_mm, symObjAddr: 0x2008, symBinAddr: 0x6620, symSize: 0x3C } + - { offsetInCU: 0x1DCC, offset: 0x3B32, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyIDsEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0x23F8, symBinAddr: 0x6A10, symSize: 0x40 } + - { offsetInCU: 0x1E30, offset: 0x3B96, size: 0x8, addend: 0x0, symName: __ZN2bqgeIDsDsNS_5arrayIDsLm1EEES2_EEbRKNS_14array_iteratorIT_T1_EERKNS3_IT0_T2_EE, symObjAddr: 0x24E4, symBinAddr: 0x6AFC, symSize: 0xA0 } + - { offsetInCU: 0x1E8E, offset: 0x3BF4, size: 0x8, addend: 0x0, symName: __ZN2bqltIDsDsNS_5arrayIDsLm1EEES2_EEbRKNS_14array_iteratorIT_T1_EERKNS3_IT0_T2_EE, symObjAddr: 0x2584, symBinAddr: 0x6B9C, symSize: 0xA0 } + - { offsetInCU: 0x1EEC, offset: 0x3C52, size: 0x8, addend: 0x0, symName: __ZN2bqmiIDsDsNS_5arrayIDsLm1EEES2_EENS_14array_iteratorIT_T1_E9diff_typeERKS6_RKNS3_IT0_T2_EE, symObjAddr: 0x2660, symBinAddr: 0x6C78, symSize: 0xA0 } + - { offsetInCU: 0x1F4A, offset: 0x3CB0, size: 0x8, addend: 0x0, symName: __ZN2bq7min_refImEERT_S2_S2_, symObjAddr: 0x2700, symBinAddr: 0x6D18, symSize: 0x50 } + - { offsetInCU: 0x1F8D, offset: 0x3CF3, size: 0x8, addend: 0x0, symName: __ZN2bq20_inner_backward_moveIDsEENS_9enable_ifIXaasr2bq28is_trivially_move_assignableIT_EE5valuesr2bq28is_trivially_copy_assignableIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0x2750, symBinAddr: 0x6D68, symSize: 0x3C } + - { offsetInCU: 0x272E, offset: 0x4494, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcED1Ev, symObjAddr: 0x80, symBinAddr: 0x4858, symSize: 0x2C } + - { offsetInCU: 0x2758, offset: 0x44BE, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE8is_emptyEv, symObjAddr: 0x1B4, symBinAddr: 0x498C, symSize: 0x30 } + - { offsetInCU: 0x277F, offset: 0x44E5, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEaSEPKc, symObjAddr: 0x1E4, symBinAddr: 0x49BC, symSize: 0xBC } + - { offsetInCU: 0x27C1, offset: 0x4527, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC1EPKc, symObjAddr: 0x328, symBinAddr: 0x4A78, symSize: 0x34 } + - { offsetInCU: 0x27F9, offset: 0x455F, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIDsEC1Ev, symObjAddr: 0x450, symBinAddr: 0x4B28, symSize: 0x2C } + - { offsetInCU: 0x2823, offset: 0x4589, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIDsED1Ev, symObjAddr: 0x47C, symBinAddr: 0x4B54, symSize: 0x2C } + - { offsetInCU: 0x284D, offset: 0x45B3, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE5clearEv, symObjAddr: 0x874, symBinAddr: 0x4F4C, symSize: 0x78 } + - { offsetInCU: 0x2874, offset: 0x45DA, size: 0x8, addend: 0x0, symName: __Z6strstrB7v160006Ua9enable_ifIXLb1EEEPKcS0_, symObjAddr: 0x8EC, symBinAddr: 0x4FC4, symSize: 0x2C } + - { offsetInCU: 0x28AE, offset: 0x4614, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE9push_backIJcEEEmDpOT_, symObjAddr: 0x918, symBinAddr: 0x4FF0, symSize: 0x58 } + - { offsetInCU: 0x28EE, offset: 0x4654, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE12insert_batchENS_14array_iteratorIcS1_EENS2_IKcS1_EEm, symObjAddr: 0x970, symBinAddr: 0x5048, symSize: 0x284 } + - { offsetInCU: 0x296F, offset: 0x46D5, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE3endEv, symObjAddr: 0xBF4, symBinAddr: 0x52CC, symSize: 0x3C } + - { offsetInCU: 0x299B, offset: 0x4701, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKcNS_5arrayIcLm1EEEEC1IS1_EEPT_PKS3_, symObjAddr: 0xC30, symBinAddr: 0x5308, symSize: 0x3C } + - { offsetInCU: 0x29EA, offset: 0x4750, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE5beginEv, symObjAddr: 0xC6C, symBinAddr: 0x5344, symSize: 0x34 } + - { offsetInCU: 0x2A11, offset: 0x4777, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIcNS_5arrayIcLm1EEEEcvPcEv, symObjAddr: 0xCA0, symBinAddr: 0x5378, symSize: 0x18 } + - { offsetInCU: 0x2A37, offset: 0x479D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE5clearEv, symObjAddr: 0xE74, symBinAddr: 0x5534, symSize: 0x78 } + - { offsetInCU: 0x2A5E, offset: 0x47C4, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE18fill_uninitializedIDsEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm, symObjAddr: 0xEEC, symBinAddr: 0x55AC, symSize: 0xC4 } + - { offsetInCU: 0x2A9C, offset: 0x4802, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE5beginEv, symObjAddr: 0xFB0, symBinAddr: 0x5670, symSize: 0x34 } + - { offsetInCU: 0x2AC3, offset: 0x4829, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIDsNS_5arrayIDsLm1EEEEcvPDsEv, symObjAddr: 0xFE4, symBinAddr: 0x56A4, symSize: 0x18 } + - { offsetInCU: 0x2AE9, offset: 0x484F, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIDsLm1EE4sizeEv, symObjAddr: 0xFFC, symBinAddr: 0x56BC, symSize: 0x18 } + - { offsetInCU: 0x2B10, offset: 0x4876, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE5eraseENS_14array_iteratorIDsS1_EEm, symObjAddr: 0x1014, symBinAddr: 0x56D4, symSize: 0x270 } + - { offsetInCU: 0x2B73, offset: 0x48D9, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIDsNS_5arrayIDsLm1EEEEplEm, symObjAddr: 0x1284, symBinAddr: 0x5944, symSize: 0x44 } + - { offsetInCU: 0x2BB5, offset: 0x491B, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcED2Ev, symObjAddr: 0x12C8, symBinAddr: 0x5988, symSize: 0x2C } + - { offsetInCU: 0x2BDF, offset: 0x4945, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EED2Ev, symObjAddr: 0x12F4, symBinAddr: 0x59B4, symSize: 0x2C } + - { offsetInCU: 0x2C09, offset: 0x496F, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIDsED2Ev, symObjAddr: 0x137C, symBinAddr: 0x59E0, symSize: 0x2C } + - { offsetInCU: 0x2C33, offset: 0x4999, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EED2Ev, symObjAddr: 0x13A8, symBinAddr: 0x5A0C, symSize: 0x2C } + - { offsetInCU: 0x2C5D, offset: 0x49C3, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE5resetIDsEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x13D4, symBinAddr: 0x5A38, symSize: 0x5C } + - { offsetInCU: 0x2C8D, offset: 0x49F3, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC2EPKc, symObjAddr: 0x14C8, symBinAddr: 0x5AE0, symSize: 0x10C } + - { offsetInCU: 0x2CD9, offset: 0x4A3F, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIDsEC2Ev, symObjAddr: 0x15D4, symBinAddr: 0x5BEC, symSize: 0x2C } + - { offsetInCU: 0x2D03, offset: 0x4A69, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EEC2Ev, symObjAddr: 0x1600, symBinAddr: 0x5C18, symSize: 0x20 } + - { offsetInCU: 0x2D2D, offset: 0x4A93, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorIcE8destructEPcm, symObjAddr: 0x1620, symBinAddr: 0x5C38, symSize: 0x2C } + - { offsetInCU: 0x2D5D, offset: 0x4AC3, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorIcE15destructor_implIcNS1_23trivial_destructor_typeEE8destructEPcm, symObjAddr: 0x164C, symBinAddr: 0x5C64, symSize: 0x14 } + - { offsetInCU: 0x2D8D, offset: 0x4AF3, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE6insertIJcEEEvNS_14array_iteratorIcS1_EEDpOT_, symObjAddr: 0x1660, symBinAddr: 0x5C78, symSize: 0x2A0 } + - { offsetInCU: 0x2E1B, offset: 0x4B81, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE12set_capacityEmb, symObjAddr: 0x1AEC, symBinAddr: 0x6104, symSize: 0x228 } + - { offsetInCU: 0x2E8A, offset: 0x4BF0, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIcNS_5arrayIcLm1EEEEplEm, symObjAddr: 0x1D14, symBinAddr: 0x632C, symSize: 0x44 } + - { offsetInCU: 0x2ECC, offset: 0x4C32, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE8destructENS_14array_iteratorIcS1_EE, symObjAddr: 0x1D90, symBinAddr: 0x63A8, symSize: 0x34 } + - { offsetInCU: 0x2F01, offset: 0x4C67, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE9constructIJcEEEvNS_14array_iteratorIcS1_EEDpOT_, symObjAddr: 0x1DC4, symBinAddr: 0x63DC, symSize: 0x98 } + - { offsetInCU: 0x2F5E, offset: 0x4CC4, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIcNS_5arrayIcLm1EEEEpLEi, symObjAddr: 0x1F78, symBinAddr: 0x6590, symSize: 0x28 } + - { offsetInCU: 0x2F92, offset: 0x4CF8, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIcE8destructEPc, symObjAddr: 0x1FA0, symBinAddr: 0x65B8, symSize: 0x24 } + - { offsetInCU: 0x2FB4, offset: 0x4D1A, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIcNS_5arrayIcLm1EEEEptEv, symObjAddr: 0x1FC4, symBinAddr: 0x65DC, symSize: 0x18 } + - { offsetInCU: 0x2FDA, offset: 0x4D40, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIcE15destructor_implIcNS1_23trivial_destructor_typeEE8destructEPc, symObjAddr: 0x1FDC, symBinAddr: 0x65F4, symSize: 0x10 } + - { offsetInCU: 0x2FFC, offset: 0x4D62, size: 0x8, addend: 0x0, symName: __ZnwmPvN2bq14enum_new_dummyE, symObjAddr: 0x1FEC, symBinAddr: 0x6604, symSize: 0x1C } + - { offsetInCU: 0x303C, offset: 0x4DA2, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIKcNS_5arrayIcLm1EEEEcvPS1_Ev, symObjAddr: 0x2044, symBinAddr: 0x665C, symSize: 0x18 } + - { offsetInCU: 0x3062, offset: 0x4DC8, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIcNS_5arrayIcLm1EEEEC1IcEEPT_PKS2_, symObjAddr: 0x205C, symBinAddr: 0x6674, symSize: 0x3C } + - { offsetInCU: 0x30B1, offset: 0x4E17, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIcNS_5arrayIcLm1EEEEC2IcEEPT_PKS2_, symObjAddr: 0x2098, symBinAddr: 0x66B0, symSize: 0x70 } + - { offsetInCU: 0x3100, offset: 0x4E66, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKcNS_5arrayIcLm1EEEEC2IS1_EEPT_PKS3_, symObjAddr: 0x2108, symBinAddr: 0x6720, symSize: 0x70 } + - { offsetInCU: 0x3154, offset: 0x4EBA, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorIDsE8destructEPDsm, symObjAddr: 0x2178, symBinAddr: 0x6790, symSize: 0x2C } + - { offsetInCU: 0x3184, offset: 0x4EEA, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorIDsE15destructor_implIDsNS1_23trivial_destructor_typeEE8destructEPDsm, symObjAddr: 0x21A4, symBinAddr: 0x67BC, symSize: 0x14 } + - { offsetInCU: 0x31B4, offset: 0x4F1A, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIDsLm1EE8capacityEv, symObjAddr: 0x21B8, symBinAddr: 0x67D0, symSize: 0x18 } + - { offsetInCU: 0x31DB, offset: 0x4F41, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE12set_capacityEmb, symObjAddr: 0x21D0, symBinAddr: 0x67E8, symSize: 0x228 } + - { offsetInCU: 0x324F, offset: 0x4FB5, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIDsNS_5arrayIDsLm1EEEEC1IDsEEPT_PKS2_, symObjAddr: 0x2438, symBinAddr: 0x6A50, symSize: 0x3C } + - { offsetInCU: 0x329E, offset: 0x5004, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIDsNS_5arrayIDsLm1EEEEC2IDsEEPT_PKS2_, symObjAddr: 0x2474, symBinAddr: 0x6A8C, symSize: 0x70 } + - { offsetInCU: 0x32ED, offset: 0x5053, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE3endEv, symObjAddr: 0x2624, symBinAddr: 0x6C3C, symSize: 0x3C } + - { offsetInCU: 0x3314, offset: 0x507A, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIDsNS_5arrayIDsLm1EEEEptEv, symObjAddr: 0x278C, symBinAddr: 0x6DA4, symSize: 0x18 } + - { offsetInCU: 0x333A, offset: 0x50A0, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIDsNS_5arrayIDsLm1EEEEpLEi, symObjAddr: 0x27A4, symBinAddr: 0x6DBC, symSize: 0x28 } + - { offsetInCU: 0x336E, offset: 0x50D4, size: 0x8, addend: 0x0, symName: __ZTHN2bq8platformL24stack_trace_current_str_E, symObjAddr: 0x27CC, symBinAddr: 0x6DE4, symSize: 0x0 } + - { offsetInCU: 0x6A, offset: 0x5284, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL20file_exclusive_cacheE, symObjAddr: 0x19750, symBinAddr: 0x68908, symSize: 0x0 } + - { offsetInCU: 0xF8, offset: 0x5312, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL20file_exclusive_mutexE, symObjAddr: 0x19788, symBinAddr: 0x68940, symSize: 0x0 } + - { offsetInCU: 0x2A1, offset: 0x54BB, size: 0x8, addend: 0x0, symName: __ZN2bq8platform13get_file_sizeEPKcRm, symObjAddr: 0x0, symBinAddr: 0x6FE8, symSize: 0xA4 } + - { offsetInCU: 0x2F7, offset: 0x5511, size: 0x8, addend: 0x0, symName: __ZN2bq8platform13get_file_sizeERKiRm, symObjAddr: 0xA4, symBinAddr: 0x708C, symSize: 0xA8 } + - { offsetInCU: 0x34D, offset: 0x5567, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6is_dirEPKc, symObjAddr: 0x14C, symBinAddr: 0x7134, symSize: 0x90 } + - { offsetInCU: 0x395, offset: 0x55AF, size: 0x8, addend: 0x0, symName: __ZN2bq8platform15is_regular_fileEPKc, symObjAddr: 0x1DC, symBinAddr: 0x71C4, symSize: 0x90 } + - { offsetInCU: 0x3DD, offset: 0x55F7, size: 0x8, addend: 0x0, symName: __ZN2bq8platform8make_dirEPKc, symObjAddr: 0x26C, symBinAddr: 0x7254, symSize: 0x64 } + - { offsetInCU: 0x425, offset: 0x563F, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL18make_dir_recursiveEPc, symObjAddr: 0x2D0, symBinAddr: 0x72B8, symSize: 0xF4 } + - { offsetInCU: 0x497, offset: 0x56B1, size: 0x8, addend: 0x0, symName: __ZN2bq8platform13truncate_fileERKim, symObjAddr: 0x564, symBinAddr: 0x73AC, symSize: 0x68 } + - { offsetInCU: 0x4DF, offset: 0x56F9, size: 0x8, addend: 0x0, symName: __ZN2bq8platform24remove_dir_or_file_innerEPcm, symObjAddr: 0x5CC, symBinAddr: 0x7414, symSize: 0x234 } + - { offsetInCU: 0x57B, offset: 0x5795, size: 0x8, addend: 0x0, symName: __ZN2bq8platform15__posix_opendirEPKc, symObjAddr: 0x800, symBinAddr: 0x7648, symSize: 0x38 } + - { offsetInCU: 0x5A7, offset: 0x57C1, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18remove_dir_or_fileEPKc, symObjAddr: 0x8A0, symBinAddr: 0x76E8, symSize: 0x13C } + - { offsetInCU: 0x618, offset: 0x5832, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9open_fileEPKcNS0_19file_open_mode_enumERi, symObjAddr: 0xA3C, symBinAddr: 0x7884, symSize: 0x1AC } + - { offsetInCU: 0x750, offset: 0x596A, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL25add_file_execlusive_checkERKiNS0_19file_open_mode_enumE, symObjAddr: 0xBE8, symBinAddr: 0x7A30, symSize: 0x23C } + - { offsetInCU: 0x866, offset: 0x5A80, size: 0x8, addend: 0x0, symName: __ZN2bq8platform10close_fileERi, symObjAddr: 0xE24, symBinAddr: 0x7C6C, symSize: 0x70 } + - { offsetInCU: 0x8A3, offset: 0x5ABD, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL28remove_file_execlusive_checkERKi, symObjAddr: 0xE94, symBinAddr: 0x7CDC, symSize: 0xB4 } + - { offsetInCU: 0x8FA, offset: 0x5B14, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9read_fileERKiPvmRm, symObjAddr: 0xF48, symBinAddr: 0x7D90, symSize: 0xFC } + - { offsetInCU: 0x99F, offset: 0x5BB9, size: 0x8, addend: 0x0, symName: __ZN2bq8platform10write_fileERKiPKvmRm, symObjAddr: 0x109C, symBinAddr: 0x7EE4, symSize: 0xFC } + - { offsetInCU: 0xA44, offset: 0x5C5E, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9seek_fileERKiNS0_16file_seek_optionEx, symObjAddr: 0x1198, symBinAddr: 0x7FE0, symSize: 0xD8 } + - { offsetInCU: 0xABC, offset: 0x5CD6, size: 0x8, addend: 0x0, symName: __ZN2bq8platform10flush_fileERKi, symObjAddr: 0x1270, symBinAddr: 0x80B8, symSize: 0x54 } + - { offsetInCU: 0xAEA, offset: 0x5D04, size: 0x8, addend: 0x0, symName: __ZN2bq8platform17get_all_sub_namesEPKc, symObjAddr: 0x12C4, symBinAddr: 0x810C, symSize: 0x174 } + - { offsetInCU: 0x1D03, offset: 0x6F1D, size: 0x8, addend: 0x0, symName: __ZN2bq9min_valueImEET_RKS1_S3_, symObjAddr: 0x1044, symBinAddr: 0x7E8C, symSize: 0x58 } + - { offsetInCU: 0x1D46, offset: 0x6F60, size: 0x8, addend: 0x0, symName: __ZN2bqeqINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb0ELb0EEEbRKNS_17hash_map_iteratorIT_T0_XT1_EEERKNS4_IS5_S6_XT2_EEE, symObjAddr: 0x1664, symBinAddr: 0x84AC, symSize: 0xE4 } + - { offsetInCU: 0x1DA6, offset: 0x6FC0, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRjEEOT_RNS_16remove_referenceIS2_E4typeE, symObjAddr: 0x1CFC, symBinAddr: 0x8B44, symSize: 0x14 } + - { offsetInCU: 0x1DDB, offset: 0x6FF5, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRNS_8platform19file_open_mode_enumEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x20B8, symBinAddr: 0x8F00, symSize: 0x14 } + - { offsetInCU: 0x1E10, offset: 0x702A, size: 0x8, addend: 0x0, symName: __ZN2bq18roundup_pow_of_twoIjEET_S1_, symObjAddr: 0x29E8, symBinAddr: 0x9830, symSize: 0x84 } + - { offsetInCU: 0x1E54, offset: 0x706E, size: 0x8, addend: 0x0, symName: __ZN2bqneINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb0ELb0EEEbRKNS_17hash_map_iteratorIT_T0_XT1_EEERKNS4_IS5_S6_XT2_EEE, symObjAddr: 0x2B08, symBinAddr: 0x9950, symSize: 0x34 } + - { offsetInCU: 0x1EB4, offset: 0x70CE, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_8platform20posix_file_node_infoEEEONS_16remove_referenceIT_E4typeEOS5_, symObjAddr: 0x2B58, symBinAddr: 0x9984, symSize: 0x14 } + - { offsetInCU: 0x1EE9, offset: 0x7103, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_8platform19file_open_mode_enumEEEONS_16remove_referenceIT_E4typeEOS5_, symObjAddr: 0x2BA0, symBinAddr: 0x99CC, symSize: 0x14 } + - { offsetInCU: 0x1FCA, offset: 0x71E4, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRKNS_8platform20posix_file_node_infoEEEOT_RNS_16remove_referenceIS5_E4typeE, symObjAddr: 0x2DA4, symBinAddr: 0x9BD0, symSize: 0x14 } + - { offsetInCU: 0x20B5, offset: 0x72CF, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRPKcEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x3A18, symBinAddr: 0xA764, symSize: 0x14 } + - { offsetInCU: 0x20EA, offset: 0x7304, size: 0x8, addend: 0x0, symName: __ZN2bqgeINS_11string_baseIcEES2_NS_5arrayIS2_Lm0EEES4_EEbRKNS_14array_iteratorIT_T1_EERKNS5_IT0_T2_EE, symObjAddr: 0x3A2C, symBinAddr: 0xA778, symSize: 0xA0 } + - { offsetInCU: 0x2148, offset: 0x7362, size: 0x8, addend: 0x0, symName: __ZN2bqleINS_11string_baseIcEES2_NS_5arrayIS2_Lm0EEES4_EEbRKNS_14array_iteratorIT_T1_EERKNS5_IT0_T2_EE, symObjAddr: 0x3B00, symBinAddr: 0xA84C, symSize: 0xA0 } + - { offsetInCU: 0x21A6, offset: 0x73C0, size: 0x8, addend: 0x0, symName: __ZN2bqmiINS_11string_baseIcEES2_NS_5arrayIS2_Lm0EEES4_EENS_14array_iteratorIT_T1_E9diff_typeERKS8_RKNS5_IT0_T2_EE, symObjAddr: 0x3BA0, symBinAddr: 0xA8EC, symSize: 0xA0 } + - { offsetInCU: 0x2204, offset: 0x741E, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveINS_11string_baseIcEEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS4_EE5valueEvE4typeEPS4_S7_m, symObjAddr: 0x3ECC, symBinAddr: 0xAC18, symSize: 0x140 } + - { offsetInCU: 0x22BF, offset: 0x74D9, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyINS_11string_baseIcEEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS4_EE5valueEvE4typeEPS4_S7_m, symObjAddr: 0x4240, symBinAddr: 0xAEB0, symSize: 0xCC } + - { offsetInCU: 0x2331, offset: 0x754B, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_11string_baseIcEEEEONS_16remove_referenceIT_E4typeEOS5_, symObjAddr: 0x430C, symBinAddr: 0xAF7C, symSize: 0x14 } + - { offsetInCU: 0x2366, offset: 0x7580, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_11string_baseIcEEEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0x4394, symBinAddr: 0xB004, symSize: 0x14 } + - { offsetInCU: 0x2716, offset: 0x7930, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE12expand_nodesEj, symObjAddr: 0x2578, symBinAddr: 0x93C0, symSize: 0x2F0 } + - { offsetInCU: 0x2DC8, offset: 0x7FE2, size: 0x8, addend: 0x0, symName: __ZNK2bq8platform22posix_dir_stack_holdercvbEv, symObjAddr: 0x838, symBinAddr: 0x7680, symSize: 0x24 } + - { offsetInCU: 0x2DEC, offset: 0x8006, size: 0x8, addend: 0x0, symName: __ZN2bq8platform22posix_dir_stack_holderadEv, symObjAddr: 0x85C, symBinAddr: 0x76A4, symSize: 0x18 } + - { offsetInCU: 0x2E10, offset: 0x802A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform22posix_dir_stack_holderD1Ev, symObjAddr: 0x874, symBinAddr: 0x76BC, symSize: 0x2C } + - { offsetInCU: 0x2E38, offset: 0x8052, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEEC1Ej, symObjAddr: 0x9DC, symBinAddr: 0x7824, symSize: 0x34 } + - { offsetInCU: 0x2E70, offset: 0x808A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEED1Ev, symObjAddr: 0xA10, symBinAddr: 0x7858, symSize: 0x2C } + - { offsetInCU: 0x2E9A, offset: 0x80B4, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EEC1Ev, symObjAddr: 0x1438, symBinAddr: 0x8280, symSize: 0x2C } + - { offsetInCU: 0x2EC9, offset: 0x80E3, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9push_backIJRPKcEEEmDpOT_, symObjAddr: 0x1464, symBinAddr: 0x82AC, symSize: 0x58 } + - { offsetInCU: 0x2F09, offset: 0x8123, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EED1Ev, symObjAddr: 0x14BC, symBinAddr: 0x8304, symSize: 0x2C } + - { offsetInCU: 0x2F33, offset: 0x814D, size: 0x8, addend: 0x0, symName: __Z7strrchrB7v160006Ua9enable_ifIXLb1EEEPci, symObjAddr: 0x14E8, symBinAddr: 0x8330, symSize: 0x2C } + - { offsetInCU: 0x2F6D, offset: 0x8187, size: 0x8, addend: 0x0, symName: __ZN2bq8platform22posix_dir_stack_holderC1EP3DIR, symObjAddr: 0x1514, symBinAddr: 0x835C, symSize: 0x34 } + - { offsetInCU: 0x2FA3, offset: 0x81BD, size: 0x8, addend: 0x0, symName: __ZN2bq8platform22posix_dir_stack_holderC2EP3DIR, symObjAddr: 0x1548, symBinAddr: 0x8390, symSize: 0x20 } + - { offsetInCU: 0x2FD9, offset: 0x81F3, size: 0x8, addend: 0x0, symName: __ZN2bq8platform22posix_dir_stack_holderD2Ev, symObjAddr: 0x1568, symBinAddr: 0x83B0, symSize: 0x54 } + - { offsetInCU: 0x3006, offset: 0x8220, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12scoped_mutexC1ERNS0_5mutexE, symObjAddr: 0x15BC, symBinAddr: 0x8404, symSize: 0x34 } + - { offsetInCU: 0x303C, offset: 0x8256, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE4findERKS2_, symObjAddr: 0x15F0, symBinAddr: 0x8438, symSize: 0x74 } + - { offsetInCU: 0x307E, offset: 0x8298, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE3endEv, symObjAddr: 0x1748, symBinAddr: 0x8590, symSize: 0x38 } + - { offsetInCU: 0x30A5, offset: 0x82BF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE3addIRS3_EENS_17hash_map_iteratorIS2_S3_Lb0EEERKS2_OT_, symObjAddr: 0x1780, symBinAddr: 0x85C8, symSize: 0x74 } + - { offsetInCU: 0x30FE, offset: 0x8318, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb0EEptEv, symObjAddr: 0x17F4, symBinAddr: 0x863C, symSize: 0x34 } + - { offsetInCU: 0x3124, offset: 0x833E, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5valueEv, symObjAddr: 0x1828, symBinAddr: 0x8670, symSize: 0x18 } + - { offsetInCU: 0x3148, offset: 0x8362, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12scoped_mutexD1Ev, symObjAddr: 0x1840, symBinAddr: 0x8688, symSize: 0x2C } + - { offsetInCU: 0x3170, offset: 0x838A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12scoped_mutexC2ERNS0_5mutexE, symObjAddr: 0x186C, symBinAddr: 0x86B4, symSize: 0x3C } + - { offsetInCU: 0x31A6, offset: 0x83C0, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE32find_index_and_bucket_idx_by_keyERKS2_, symObjAddr: 0x18A8, symBinAddr: 0x86F0, symSize: 0x114 } + - { offsetInCU: 0x3234, offset: 0x844E, size: 0x8, addend: 0x0, symName: __ZNK2bq7kv_pairIjjE3keyEv, symObjAddr: 0x19BC, symBinAddr: 0x8804, symSize: 0x14 } + - { offsetInCU: 0x3258, offset: 0x8472, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairIjjE5valueEv, symObjAddr: 0x19D0, symBinAddr: 0x8818, symSize: 0x18 } + - { offsetInCU: 0x327C, offset: 0x8496, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb0EEC1EPNS_8hash_mapIS2_S3_EEjj, symObjAddr: 0x19E8, symBinAddr: 0x8830, symSize: 0x44 } + - { offsetInCU: 0x32CE, offset: 0x84E8, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE12buckets_sizeEv, symObjAddr: 0x1A2C, symBinAddr: 0x8874, symSize: 0x24 } + - { offsetInCU: 0x32F4, offset: 0x850E, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE23get_bucket_index_by_keyERKS2_, symObjAddr: 0x1A50, symBinAddr: 0x8898, symSize: 0x44 } + - { offsetInCU: 0x3339, offset: 0x8553, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headIjEixEj, symObjAddr: 0x1A94, symBinAddr: 0x88DC, symSize: 0x74 } + - { offsetInCU: 0x336B, offset: 0x8585, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headINS4_10value_nodeEEixEj, symObjAddr: 0x1B08, symBinAddr: 0x8950, symSize: 0x7C } + - { offsetInCU: 0x339D, offset: 0x85B7, size: 0x8, addend: 0x0, symName: __ZNK2bq7kv_pairINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE3keyEv, symObjAddr: 0x1B84, symBinAddr: 0x89CC, symSize: 0x14 } + - { offsetInCU: 0x33C1, offset: 0x85DB, size: 0x8, addend: 0x0, symName: __ZNK2bq8platform20posix_file_node_infoeqERKS1_, symObjAddr: 0x1B98, symBinAddr: 0x89E0, symSize: 0x30 } + - { offsetInCU: 0x33F4, offset: 0x860E, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairIjjEC1IRjS3_EEOT_OT0_, symObjAddr: 0x1BC8, symBinAddr: 0x8A10, symSize: 0x3C } + - { offsetInCU: 0x344A, offset: 0x8664, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headIjE4sizeEv, symObjAddr: 0x1C04, symBinAddr: 0x8A4C, symSize: 0x18 } + - { offsetInCU: 0x346E, offset: 0x8688, size: 0x8, addend: 0x0, symName: __ZN2bq28generic_type_hash_calculatorINS_8platform20posix_file_node_infoEE9hash_codeERKS2_, symObjAddr: 0x1C1C, symBinAddr: 0x8A64, symSize: 0x24 } + - { offsetInCU: 0x3490, offset: 0x86AA, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE24get_bucket_index_by_hashEy, symObjAddr: 0x1C40, symBinAddr: 0x8A88, symSize: 0x3C } + - { offsetInCU: 0x34C6, offset: 0x86E0, size: 0x8, addend: 0x0, symName: __ZNK2bq8platform20posix_file_node_info9hash_codeEv, symObjAddr: 0x1C7C, symBinAddr: 0x8AC4, symSize: 0x28 } + - { offsetInCU: 0x34EA, offset: 0x8704, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairIjjEC2IRjS3_EEOT_OT0_, symObjAddr: 0x1CA4, symBinAddr: 0x8AEC, symSize: 0x58 } + - { offsetInCU: 0x3540, offset: 0x875A, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb0EEC2EPNS_8hash_mapIS2_S3_EEjj, symObjAddr: 0x1D10, symBinAddr: 0x8B58, symSize: 0x38 } + - { offsetInCU: 0x3592, offset: 0x87AC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_, symObjAddr: 0x1D48, symBinAddr: 0x8B90, symSize: 0x304 } + - { offsetInCU: 0x368A, offset: 0x88A4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE15construct_valueIRS3_EEvRNS_17hash_map_iteratorIS2_S3_Lb0EEEOT_, symObjAddr: 0x204C, symBinAddr: 0x8E94, symSize: 0x6C } + - { offsetInCU: 0x36D6, offset: 0x88F0, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE4sizeEv, symObjAddr: 0x20CC, symBinAddr: 0x8F14, symSize: 0x18 } + - { offsetInCU: 0x36FC, offset: 0x8916, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj, symObjAddr: 0x20E4, symBinAddr: 0x8F2C, symSize: 0x494 } + - { offsetInCU: 0x3801, offset: 0x8A1B, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE10nodes_sizeEv, symObjAddr: 0x2868, symBinAddr: 0x96B0, symSize: 0x28 } + - { offsetInCU: 0x3827, offset: 0x8A41, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headIjEixEj, symObjAddr: 0x2890, symBinAddr: 0x96D8, symSize: 0x74 } + - { offsetInCU: 0x3859, offset: 0x8A73, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headINS4_10value_nodeEEixEj, symObjAddr: 0x2904, symBinAddr: 0x974C, symSize: 0x7C } + - { offsetInCU: 0x388B, offset: 0x8AA5, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE13construct_keyIRKS2_EEvRNS_17hash_map_iteratorIS2_S3_Lb0EEEOT_, symObjAddr: 0x2980, symBinAddr: 0x97C8, symSize: 0x68 } + - { offsetInCU: 0x38D7, offset: 0x8AF1, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headINS4_10value_nodeEE4sizeEv, symObjAddr: 0x2A6C, symBinAddr: 0x98B4, symSize: 0x18 } + - { offsetInCU: 0x38FB, offset: 0x8B15, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5beginEv, symObjAddr: 0x2A84, symBinAddr: 0x98CC, symSize: 0x84 } + - { offsetInCU: 0x3922, offset: 0x8B3C, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb0EEdeEv, symObjAddr: 0x2B6C, symBinAddr: 0x9998, symSize: 0x34 } + - { offsetInCU: 0x3948, offset: 0x8B62, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE8destructERNS_17hash_map_iteratorIS2_S3_Lb0EEE, symObjAddr: 0x2BB4, symBinAddr: 0x99E0, symSize: 0x3C } + - { offsetInCU: 0x397E, offset: 0x8B98, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb0EEppEv, symObjAddr: 0x2BF0, symBinAddr: 0x9A1C, symSize: 0x88 } + - { offsetInCU: 0x39A4, offset: 0x8BBE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE12destruct_keyERNS_17hash_map_iteratorIS2_S3_Lb0EEE, symObjAddr: 0x2C78, symBinAddr: 0x9AA4, symSize: 0x2C } + - { offsetInCU: 0x39DA, offset: 0x8BF4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14destruct_valueERNS_17hash_map_iteratorIS2_S3_Lb0EEE, symObjAddr: 0x2CA4, symBinAddr: 0x9AD0, symSize: 0x30 } + - { offsetInCU: 0x3A14, offset: 0x8C2E, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_8platform20posix_file_node_infoEE8destructEPS2_, symObjAddr: 0x2CD4, symBinAddr: 0x9B00, symSize: 0x24 } + - { offsetInCU: 0x3A36, offset: 0x8C50, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_8platform20posix_file_node_infoEE15destructor_implIS2_NS3_23trivial_destructor_typeEE8destructEPS2_, symObjAddr: 0x2CF8, symBinAddr: 0x9B24, symSize: 0x10 } + - { offsetInCU: 0x3A5D, offset: 0x8C77, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_8platform19file_open_mode_enumEE8destructEPS2_, symObjAddr: 0x2D08, symBinAddr: 0x9B34, symSize: 0x24 } + - { offsetInCU: 0x3A7F, offset: 0x8C99, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_8platform19file_open_mode_enumEE15destructor_implIS2_NS3_23trivial_destructor_typeEE8destructEPS2_, symObjAddr: 0x2D2C, symBinAddr: 0x9B58, symSize: 0x10 } + - { offsetInCU: 0x3AA1, offset: 0x8CBB, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE19get_next_node_indexEj, symObjAddr: 0x2D3C, symBinAddr: 0x9B68, symSize: 0x68 } + - { offsetInCU: 0x3AD7, offset: 0x8CF1, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12scoped_mutexD2Ev, symObjAddr: 0x2DB8, symBinAddr: 0x9BE4, symSize: 0x30 } + - { offsetInCU: 0x3AFF, offset: 0x8D19, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseERKS2_, symObjAddr: 0x2DE8, symBinAddr: 0x9C14, symSize: 0x90 } + - { offsetInCU: 0x3B43, offset: 0x8D5D, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb0EEcvbEv, symObjAddr: 0x2E78, symBinAddr: 0x9CA4, symSize: 0x44 } + - { offsetInCU: 0x3B69, offset: 0x8D83, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseENS_17hash_map_iteratorIS2_S3_Lb0EEE, symObjAddr: 0x2EBC, symBinAddr: 0x9CE8, symSize: 0x228 } + - { offsetInCU: 0x3BDA, offset: 0x8DF4, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE20iterator_legal_checkERKNS_17hash_map_iteratorIS2_S3_Lb1EEE, symObjAddr: 0x30E4, symBinAddr: 0x9F10, symSize: 0x124 } + - { offsetInCU: 0x3C14, offset: 0x8E2E, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb1EEC1ILb0EEERKNS0_IS2_S3_XT_EEE, symObjAddr: 0x3208, symBinAddr: 0xA034, symSize: 0x34 } + - { offsetInCU: 0x3C54, offset: 0x8E6E, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumELb1EEC2ILb0EEERKNS0_IS2_S3_XT_EEE, symObjAddr: 0x323C, symBinAddr: 0xA068, symSize: 0x3C } + - { offsetInCU: 0x3C94, offset: 0x8EAE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEEC2Ej, symObjAddr: 0x3278, symBinAddr: 0xA0A4, symSize: 0x78 } + - { offsetInCU: 0x3CCC, offset: 0x8EE6, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headIjEC1Ev, symObjAddr: 0x32F0, symBinAddr: 0xA11C, symSize: 0x2C } + - { offsetInCU: 0x3CF4, offset: 0x8F0E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headINS4_10value_nodeEEC1Ev, symObjAddr: 0x331C, symBinAddr: 0xA148, symSize: 0x2C } + - { offsetInCU: 0x3D1C, offset: 0x8F36, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headIjEC2Ev, symObjAddr: 0x3348, symBinAddr: 0xA174, symSize: 0x1C } + - { offsetInCU: 0x3D44, offset: 0x8F5E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE22value_node_buffer_headINS4_10value_nodeEEC2Ev, symObjAddr: 0x3364, symBinAddr: 0xA190, symSize: 0x1C } + - { offsetInCU: 0x3D6C, offset: 0x8F86, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEED2Ev, symObjAddr: 0x3380, symBinAddr: 0xA1AC, symSize: 0x2C } + - { offsetInCU: 0x3D96, offset: 0x8FB0, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5resetEv, symObjAddr: 0x33AC, symBinAddr: 0xA1D8, symSize: 0xF8 } + - { offsetInCU: 0x3DDA, offset: 0x8FF4, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EEC2Ev, symObjAddr: 0x34A4, symBinAddr: 0xA2D0, symSize: 0x20 } + - { offsetInCU: 0x3E04, offset: 0x901E, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EED2Ev, symObjAddr: 0x34C4, symBinAddr: 0xA2F0, symSize: 0x2C } + - { offsetInCU: 0x3E2E, offset: 0x9048, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE5resetIS2_EENS_9enable_ifIXntsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x34F0, symBinAddr: 0xA31C, symSize: 0x6C } + - { offsetInCU: 0x3E63, offset: 0x907D, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_11string_baseIcEEE8destructEPS2_m, symObjAddr: 0x355C, symBinAddr: 0xA388, symSize: 0x2C } + - { offsetInCU: 0x3E93, offset: 0x90AD, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_11string_baseIcEEE15destructor_implIS2_NS3_27non_trivial_destructor_typeEE8destructEPS2_m, symObjAddr: 0x3588, symBinAddr: 0xA3B4, symSize: 0x84 } + - { offsetInCU: 0x3EDF, offset: 0x90F9, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_11string_baseIcEEE8destructEPS2_, symObjAddr: 0x360C, symBinAddr: 0xA438, symSize: 0x24 } + - { offsetInCU: 0x3F01, offset: 0x911B, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_11string_baseIcEEE15destructor_implIS2_NS3_27non_trivial_destructor_typeEE8destructEPS2_, symObjAddr: 0x3630, symBinAddr: 0xA45C, symSize: 0x3C } + - { offsetInCU: 0x3F23, offset: 0x913D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRPKcEEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x374C, symBinAddr: 0xA498, symSize: 0x288 } + - { offsetInCU: 0x3FB1, offset: 0x91CB, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE3endEv, symObjAddr: 0x39D4, symBinAddr: 0xA720, symSize: 0x44 } + - { offsetInCU: 0x3FD8, offset: 0x91F2, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE5beginEv, symObjAddr: 0x3ACC, symBinAddr: 0xA818, symSize: 0x34 } + - { offsetInCU: 0x3FFF, offset: 0x9219, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE12set_capacityEmb, symObjAddr: 0x3C40, symBinAddr: 0xA98C, symSize: 0x230 } + - { offsetInCU: 0x406E, offset: 0x9288, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEplEm, symObjAddr: 0x3E70, symBinAddr: 0xABBC, symSize: 0x44 } + - { offsetInCU: 0x40B0, offset: 0x92CA, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEcvPS2_Ev, symObjAddr: 0x3EB4, symBinAddr: 0xAC00, symSize: 0x18 } + - { offsetInCU: 0x40D6, offset: 0x92F0, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE8destructENS_14array_iteratorIS2_S3_EE, symObjAddr: 0x400C, symBinAddr: 0xAD58, symSize: 0x34 } + - { offsetInCU: 0x410B, offset: 0x9325, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9constructIJRPKcEEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x4040, symBinAddr: 0xAD8C, symSize: 0x78 } + - { offsetInCU: 0x416D, offset: 0x9387, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEC1IS2_EEPT_PKS4_, symObjAddr: 0x40B8, symBinAddr: 0xAE04, symSize: 0x3C } + - { offsetInCU: 0x41BC, offset: 0x93D6, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEC2IS2_EEPT_PKS4_, symObjAddr: 0x40F4, symBinAddr: 0xAE40, symSize: 0x70 } + - { offsetInCU: 0x420B, offset: 0x9425, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC1EOS1_, symObjAddr: 0x4320, symBinAddr: 0xAF90, symSize: 0x34 } + - { offsetInCU: 0x4243, offset: 0x945D, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC2EOS1_, symObjAddr: 0x4354, symBinAddr: 0xAFC4, symSize: 0x40 } + - { offsetInCU: 0x427B, offset: 0x9495, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EEC2EOS1_, symObjAddr: 0x43A8, symBinAddr: 0xB018, symSize: 0x6C } + - { offsetInCU: 0x42B4, offset: 0x94CE, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIcLm1EE8capacityEv, symObjAddr: 0x4414, symBinAddr: 0xB084, symSize: 0x18 } + - { offsetInCU: 0x42DB, offset: 0x94F5, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEpLEi, symObjAddr: 0x442C, symBinAddr: 0xB09C, symSize: 0x30 } + - { offsetInCU: 0x430F, offset: 0x9529, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEaSEOS1_, symObjAddr: 0x445C, symBinAddr: 0xB0CC, symSize: 0x6C } + - { offsetInCU: 0x4343, offset: 0x955D, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEptEv, symObjAddr: 0x44C8, symBinAddr: 0xB138, symSize: 0x18 } + - { offsetInCU: 0x26, offset: 0x9885, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variableC2Ev, symObjAddr: 0x0, symBinAddr: 0xB1EC, symSize: 0x84 } + - { offsetInCU: 0x89A, offset: 0xA0F9, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variableC2Ev, symObjAddr: 0x0, symBinAddr: 0xB1EC, symSize: 0x84 } + - { offsetInCU: 0x8C9, offset: 0xA128, size: 0x8, addend: 0x0, symName: __ZN2bq8platform31condition_variable_platform_defC1Ev, symObjAddr: 0xA0, symBinAddr: 0xB270, symSize: 0x2C } + - { offsetInCU: 0x8F3, offset: 0xA152, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variableC1Ev, symObjAddr: 0xCC, symBinAddr: 0xB29C, symSize: 0x2C } + - { offsetInCU: 0x91D, offset: 0xA17C, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variableD2Ev, symObjAddr: 0xF8, symBinAddr: 0xB2C8, symSize: 0x68 } + - { offsetInCU: 0x947, offset: 0xA1A6, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variableD1Ev, symObjAddr: 0x160, symBinAddr: 0xB330, symSize: 0x2C } + - { offsetInCU: 0x971, offset: 0xA1D0, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variable8wait_forERNS0_5mutexEy, symObjAddr: 0x208, symBinAddr: 0xB35C, symSize: 0x154 } + - { offsetInCU: 0x9EB, offset: 0xA24A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variable10notify_allEv, symObjAddr: 0x384, symBinAddr: 0xB4B0, symSize: 0x28 } + - { offsetInCU: 0xA11, offset: 0xA270, size: 0x8, addend: 0x0, symName: __ZN2bq8platform31condition_variable_platform_defC2Ev, symObjAddr: 0x3AC, symBinAddr: 0xB4D8, symSize: 0x44 } + - { offsetInCU: 0x26, offset: 0xA2C5, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC2Ev, symObjAddr: 0x0, symBinAddr: 0xB51C, symSize: 0x15C } + - { offsetInCU: 0x74A, offset: 0xA9E9, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC2Ev, symObjAddr: 0x0, symBinAddr: 0xB51C, symSize: 0x15C } + - { offsetInCU: 0x79E, offset: 0xAA3D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC1Ev, symObjAddr: 0x178, symBinAddr: 0xB678, symSize: 0x2C } + - { offsetInCU: 0x7C8, offset: 0xAA67, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC2Eb, symObjAddr: 0x1A4, symBinAddr: 0xB6A4, symSize: 0x188 } + - { offsetInCU: 0x82A, offset: 0xAAC9, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC1Eb, symObjAddr: 0x32C, symBinAddr: 0xB82C, symSize: 0x40 } + - { offsetInCU: 0x862, offset: 0xAB01, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexD2Ev, symObjAddr: 0x36C, symBinAddr: 0xB86C, symSize: 0xA0 } + - { offsetInCU: 0x8A8, offset: 0xAB47, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexD1Ev, symObjAddr: 0x40C, symBinAddr: 0xB90C, symSize: 0x2C } + - { offsetInCU: 0x8D2, offset: 0xAB71, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex4lockEv, symObjAddr: 0x438, symBinAddr: 0xB938, symSize: 0x148 } + - { offsetInCU: 0x906, offset: 0xABA5, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex6unlockEv, symObjAddr: 0x798, symBinAddr: 0xBA80, symSize: 0x15C } + - { offsetInCU: 0x93A, offset: 0xABD9, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex19get_platform_handleEv, symObjAddr: 0x8F4, symBinAddr: 0xBBDC, symSize: 0x18 } + - { offsetInCU: 0x26, offset: 0xAC6E, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9spin_lock5yieldEv, symObjAddr: 0x0, symBinAddr: 0xBBF4, symSize: 0x20 } + - { offsetInCU: 0x1BAF, offset: 0xC7F7, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9spin_lock5yieldEv, symObjAddr: 0x0, symBinAddr: 0xBBF4, symSize: 0x20 } + - { offsetInCU: 0x1C48, offset: 0xC890, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18spin_lock_rw_crazy5yieldEv, symObjAddr: 0x20, symBinAddr: 0xBC14, symSize: 0x20 } + - { offsetInCU: 0x26, offset: 0xC8E6, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread6cancelEv, symObjAddr: 0x0, symBinAddr: 0xBC34, symSize: 0x6A8 } + - { offsetInCU: 0x1055, offset: 0xD915, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread6cancelEv, symObjAddr: 0x0, symBinAddr: 0xBC34, symSize: 0x6A8 } + - { offsetInCU: 0x1481, offset: 0xDD41, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread12is_cancelledEv, symObjAddr: 0x6A8, symBinAddr: 0xC2DC, symSize: 0xD8 } + - { offsetInCU: 0x26, offset: 0xDE36, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadC2ENS0_11thread_attrE, symObjAddr: 0x0, symBinAddr: 0xC3B4, symSize: 0xB8 } + - { offsetInCU: 0x9B7, offset: 0xE7C7, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadC2ENS0_11thread_attrE, symObjAddr: 0x0, symBinAddr: 0xC3B4, symSize: 0xB8 } + - { offsetInCU: 0x9EF, offset: 0xE7FF, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicINS0_18enum_thread_statusEEC1ERKS2_, symObjAddr: 0xE4, symBinAddr: 0xC46C, symSize: 0x34 } + - { offsetInCU: 0xA77, offset: 0xE887, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread15set_thread_nameERKNS_11string_baseIcEE, symObjAddr: 0x134, symBinAddr: 0xC4A0, symSize: 0x1FC } + - { offsetInCU: 0xB5D, offset: 0xE96D, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEaSERKS1_, symObjAddr: 0x330, symBinAddr: 0xC69C, symSize: 0x90 } + - { offsetInCU: 0xB91, offset: 0xE9A1, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE6substrEmm, symObjAddr: 0x448, symBinAddr: 0xC72C, symSize: 0x1E0 } + - { offsetInCU: 0xC6E, offset: 0xEA7E, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread5startEv, symObjAddr: 0x6C0, symBinAddr: 0xC90C, symSize: 0x88C } + - { offsetInCU: 0x10CD, offset: 0xEEDD, size: 0x8, addend: 0x0, symName: __ZN2bq8platform25thread_platform_processor14thread_processEPv, symObjAddr: 0xF4C, symBinAddr: 0xD198, symSize: 0xAC } + - { offsetInCU: 0x10FD, offset: 0xEF0D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread4joinEv, symObjAddr: 0xFF8, symBinAddr: 0xD244, symSize: 0xB0 } + - { offsetInCU: 0x1131, offset: 0xEF41, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread5yieldEv, symObjAddr: 0x10A8, symBinAddr: 0xD2F4, symSize: 0x18 } + - { offsetInCU: 0x1146, offset: 0xEF56, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread5sleepEy, symObjAddr: 0x10C0, symBinAddr: 0xD30C, symSize: 0x60 } + - { offsetInCU: 0x1178, offset: 0xEF88, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread9cpu_relaxEv, symObjAddr: 0x1120, symBinAddr: 0xD36C, symSize: 0x8 } + - { offsetInCU: 0x118D, offset: 0xEF9D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread23get_current_thread_nameEv, symObjAddr: 0x1128, symBinAddr: 0xD374, symSize: 0xCC } + - { offsetInCU: 0x11BF, offset: 0xEFCF, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread21get_current_thread_idEv, symObjAddr: 0x1228, symBinAddr: 0xD440, symSize: 0x70 } + - { offsetInCU: 0x11D4, offset: 0xEFE4, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadD2Ev, symObjAddr: 0x1298, symBinAddr: 0xD4B0, symSize: 0x50 } + - { offsetInCU: 0x11FE, offset: 0xF00E, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadD1Ev, symObjAddr: 0x12E8, symBinAddr: 0xD500, symSize: 0x14 } + - { offsetInCU: 0x1228, offset: 0xF038, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadD0Ev, symObjAddr: 0x12FC, symBinAddr: 0xD514, symSize: 0xC } + - { offsetInCU: 0x1252, offset: 0xF062, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread17apply_thread_nameEv, symObjAddr: 0x1308, symBinAddr: 0xD520, symSize: 0x2C } + - { offsetInCU: 0x12CC, offset: 0xF0DC, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread12internal_runEv, symObjAddr: 0x1334, symBinAddr: 0xD54C, symSize: 0x2E0 } + - { offsetInCU: 0x1628, offset: 0xF438, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread11on_finishedEv, symObjAddr: 0x1614, symBinAddr: 0xD82C, symSize: 0x10 } + - { offsetInCU: 0x164C, offset: 0xF45C, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicINS0_18enum_thread_statusEEC2ERKS2_, symObjAddr: 0x1724, symBinAddr: 0xD83C, symSize: 0x34 } + - { offsetInCU: 0x1682, offset: 0xF492, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12_atomic_baseINS0_18enum_thread_statusELm1EEC2ERKS2_, symObjAddr: 0x1758, symBinAddr: 0xD870, symSize: 0x24 } + - { offsetInCU: 0x16B8, offset: 0xF4C8, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKcNS_5arrayIcLm1EEEEplEm, symObjAddr: 0x2310, symBinAddr: 0xD894, symSize: 0x44 } + - { offsetInCU: 0x16FA, offset: 0xF50A, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKcNS_5arrayIcLm1EEEEpLEi, symObjAddr: 0x2354, symBinAddr: 0xD8D8, symSize: 0x28 } + - { offsetInCU: 0x26, offset: 0xF5C4, size: 0x8, addend: 0x0, symName: __ZN2bq12file_managerC2Ev, symObjAddr: 0x0, symBinAddr: 0xD900, symSize: 0xC4 } + - { offsetInCU: 0x3E, offset: 0xF5DC, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18static_inst_cache_E, symObjAddr: 0x215B8, symBinAddr: 0x69B18, symSize: 0x0 } + - { offsetInCU: 0x13B1, offset: 0x1094F, size: 0x8, addend: 0x0, symName: __ZN2bqneINS_11string_baseIcEES2_NS_5arrayIS2_Lm0EEES4_EEbRKNS_14array_iteratorIT_T1_EERKNS5_IT0_T2_EE, symObjAddr: 0x1F98, symBinAddr: 0xF118, symSize: 0xA0 } + - { offsetInCU: 0x140F, offset: 0x109AD, size: 0x8, addend: 0x0, symName: __ZN2bqplIcEENS_11string_baseIT_EEPKNS3_9char_typeERKS3_, symObjAddr: 0x21D4, symBinAddr: 0xF354, symSize: 0xDC } + - { offsetInCU: 0x1465, offset: 0x10A03, size: 0x8, addend: 0x0, symName: __ZN2bqplIcEENS_11string_baseIT_EEOS3_RKS3_, symObjAddr: 0x2D0C, symBinAddr: 0xF974, symSize: 0x88 } + - { offsetInCU: 0x15AF, offset: 0x10B4D, size: 0x8, addend: 0x0, symName: __ZN2bq9___strstrIcEEPKT_S3_S3_, symObjAddr: 0x692C, symBinAddr: 0x12480, symSize: 0x68 } + - { offsetInCU: 0x15F2, offset: 0x10B90, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRNS_11string_baseIcEEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x7568, symBinAddr: 0x128F4, symSize: 0x14 } + - { offsetInCU: 0x1627, offset: 0x10BC5, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_12file_manager15file_descriptorEEEONS_16remove_referenceIT_E4typeEOS5_, symObjAddr: 0x7CF0, symBinAddr: 0x12CD0, symSize: 0x14 } + - { offsetInCU: 0x165C, offset: 0x10BFA, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_12file_manager15file_descriptorEEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0x7FD0, symBinAddr: 0x12FB0, symSize: 0x14 } + - { offsetInCU: 0x1691, offset: 0x10C2F, size: 0x8, addend: 0x0, symName: __ZN2bqgeINS_12file_manager15file_descriptorES2_NS_5arrayIS2_Lm0EEES4_EEbRKNS_14array_iteratorIT_T1_EERKNS5_IT0_T2_EE, symObjAddr: 0x7FE4, symBinAddr: 0x12FC4, symSize: 0xA0 } + - { offsetInCU: 0x16EF, offset: 0x10C8D, size: 0x8, addend: 0x0, symName: __ZN2bqleINS_12file_manager15file_descriptorES2_NS_5arrayIS2_Lm0EEES4_EEbRKNS_14array_iteratorIT_T1_EERKNS5_IT0_T2_EE, symObjAddr: 0x80B8, symBinAddr: 0x13098, symSize: 0xA0 } + - { offsetInCU: 0x174D, offset: 0x10CEB, size: 0x8, addend: 0x0, symName: __ZN2bqmiINS_12file_manager15file_descriptorES2_NS_5arrayIS2_Lm0EEES4_EENS_14array_iteratorIT_T1_E9diff_typeERKS8_RKNS5_IT0_T2_EE, symObjAddr: 0x8158, symBinAddr: 0x13138, symSize: 0xA0 } + - { offsetInCU: 0x17AB, offset: 0x10D49, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveINS_12file_manager15file_descriptorEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS4_EE5valueEvE4typeEPS4_S7_m, symObjAddr: 0x8484, symBinAddr: 0x13464, symSize: 0x140 } + - { offsetInCU: 0x1866, offset: 0x10E04, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyINS_12file_manager15file_descriptorEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS4_EE5valueEvE4typeEPS4_S7_m, symObjAddr: 0x8718, symBinAddr: 0x136F8, symSize: 0xCC } + - { offsetInCU: 0x18D8, offset: 0x10E76, size: 0x8, addend: 0x0, symName: __ZN2bqltIccNS_5arrayIcLm1EEES2_EEbRKNS_14array_iteratorIT_T1_EERKNS3_IT0_T2_EE, symObjAddr: 0x8B5C, symBinAddr: 0x13AF8, symSize: 0xA0 } + - { offsetInCU: 0x1936, offset: 0x10ED4, size: 0x8, addend: 0x0, symName: __ZN2bq20_inner_backward_moveIcEENS_9enable_ifIXaasr2bq28is_trivially_move_assignableIT_EE5valuesr2bq28is_trivially_copy_assignableIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0x8BFC, symBinAddr: 0x13B98, symSize: 0x3C } + - { offsetInCU: 0x1B5D, offset: 0x110FB, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager22scoped_static_instanceEv, symObjAddr: 0x3DC, symBinAddr: 0xDC6C, symSize: 0x94 } + - { offsetInCU: 0x1B81, offset: 0x1111F, size: 0x8, addend: 0x0, symName: __ZZN2bq12file_manager22scoped_static_instanceEvE9instance_, symObjAddr: 0x215C8, symBinAddr: 0x68950, symSize: 0x0 } + - { offsetInCU: 0x1B91, offset: 0x1112F, size: 0x8, addend: 0x0, symName: __ZN2bq12file_managerC2Ev, symObjAddr: 0x0, symBinAddr: 0xD900, symSize: 0xC4 } + - { offsetInCU: 0x1BBB, offset: 0x11159, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EEC1Ev, symObjAddr: 0xC4, symBinAddr: 0xD9C4, symSize: 0x2C } + - { offsetInCU: 0x1BE5, offset: 0x11183, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12get_base_dirEb, symObjAddr: 0xF0, symBinAddr: 0xD9F0, symSize: 0x30 } + - { offsetInCU: 0x1C09, offset: 0x111A7, size: 0x8, addend: 0x0, symName: __ZN2bq12file_managerC1Ev, symObjAddr: 0x190, symBinAddr: 0xDA20, symSize: 0x2C } + - { offsetInCU: 0x1C33, offset: 0x111D1, size: 0x8, addend: 0x0, symName: __ZN2bq12file_managerD2Ev, symObjAddr: 0x1BC, symBinAddr: 0xDA4C, symSize: 0x54 } + - { offsetInCU: 0x1C5D, offset: 0x111FB, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager22flush_all_opened_filesEv, symObjAddr: 0x210, symBinAddr: 0xDAA0, symSize: 0x134 } + - { offsetInCU: 0x1CF9, offset: 0x11297, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EED1Ev, symObjAddr: 0x344, symBinAddr: 0xDBD4, symSize: 0x2C } + - { offsetInCU: 0x1D23, offset: 0x112C1, size: 0x8, addend: 0x0, symName: __ZN2bq12file_managerD1Ev, symObjAddr: 0x370, symBinAddr: 0xDC00, symSize: 0x2C } + - { offsetInCU: 0x1D4D, offset: 0x112EB, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager8instanceEv, symObjAddr: 0x39C, symBinAddr: 0xDC2C, symSize: 0x40 } + - { offsetInCU: 0x1D62, offset: 0x11300, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager44trans_process_relative_path_to_absolute_pathERKNS_11string_baseIcEEb, symObjAddr: 0x470, symBinAddr: 0xDD00, symSize: 0xE4 } + - { offsetInCU: 0x1DA3, offset: 0x11341, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC1ERKS1_, symObjAddr: 0x554, symBinAddr: 0xDDE4, symSize: 0x34 } + - { offsetInCU: 0x1DDB, offset: 0x11379, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager11is_absoluteERKNS_11string_baseIcEE, symObjAddr: 0x588, symBinAddr: 0xDE18, symSize: 0x98 } + - { offsetInCU: 0x1DFF, offset: 0x1139D, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_, symObjAddr: 0x620, symBinAddr: 0xDEB0, symSize: 0x3FC } + - { offsetInCU: 0x1F26, offset: 0x114C4, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE, symObjAddr: 0xAB4, symBinAddr: 0xE2AC, symSize: 0x3D0 } + - { offsetInCU: 0x1FB0, offset: 0x1154E, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE7replaceERKS1_S3_, symObjAddr: 0xFB4, symBinAddr: 0xE67C, symSize: 0x28C } + - { offsetInCU: 0x2067, offset: 0x11605, size: 0x8, addend: 0x0, symName: __ZNK2bq12file_manager15is_handle_validERKNS_11file_handleE, symObjAddr: 0x1274, symBinAddr: 0xE908, symSize: 0x100 } + - { offsetInCU: 0x2100, offset: 0x1169E, size: 0x8, addend: 0x0, symName: __ZNK2bq12file_manager35get_file_descriptor_index_by_handleERKNS_11file_handleE, symObjAddr: 0x1374, symBinAddr: 0xEA08, symSize: 0xE8 } + - { offsetInCU: 0x2145, offset: 0x116E3, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager16create_directoryERKNS_11string_baseIcEE, symObjAddr: 0x145C, symBinAddr: 0xEAF0, symSize: 0xC4 } + - { offsetInCU: 0x2177, offset: 0x11715, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_directory_from_pathERKNS_11string_baseIcEE, symObjAddr: 0x1520, symBinAddr: 0xEBB4, symSize: 0x160 } + - { offsetInCU: 0x21D6, offset: 0x11774, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE9find_lastERKS1_, symObjAddr: 0x1680, symBinAddr: 0xED14, symSize: 0x134 } + - { offsetInCU: 0x2229, offset: 0x117C7, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_file_name_from_pathERKNS_11string_baseIcEE, symObjAddr: 0x19E4, symBinAddr: 0xEE48, symSize: 0x13C } + - { offsetInCU: 0x2278, offset: 0x11816, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE5splitERKS1_, symObjAddr: 0x1D8C, symBinAddr: 0xEF84, symSize: 0x17C } + - { offsetInCU: 0x2324, offset: 0x118C2, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_11string_baseIcEELm0EE4sizeEv, symObjAddr: 0x1F08, symBinAddr: 0xF100, symSize: 0x18 } + - { offsetInCU: 0x234B, offset: 0x118E9, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEdeEv, symObjAddr: 0x2038, symBinAddr: 0xF1B8, symSize: 0x18 } + - { offsetInCU: 0x2371, offset: 0x1190F, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEpLERKS1_, symObjAddr: 0x2050, symBinAddr: 0xF1D0, symSize: 0xF0 } + - { offsetInCU: 0x23CF, offset: 0x1196D, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEppEv, symObjAddr: 0x2140, symBinAddr: 0xF2C0, symSize: 0x20 } + - { offsetInCU: 0x23F5, offset: 0x11993, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIcLm1EEixEm, symObjAddr: 0x2160, symBinAddr: 0xF2E0, symSize: 0x74 } + - { offsetInCU: 0x242A, offset: 0x119C8, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EEixEm, symObjAddr: 0x2538, symBinAddr: 0xF430, symSize: 0x7C } + - { offsetInCU: 0x245F, offset: 0x119FD, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE4trimEv, symObjAddr: 0x25B4, symBinAddr: 0xF4AC, symSize: 0x14C } + - { offsetInCU: 0x24A4, offset: 0x11A42, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcEeqEPKc, symObjAddr: 0x2700, symBinAddr: 0xF5F8, symSize: 0xBC } + - { offsetInCU: 0x24E8, offset: 0x11A86, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcEneEPKc, symObjAddr: 0x27BC, symBinAddr: 0xF6B4, symSize: 0x34 } + - { offsetInCU: 0x251D, offset: 0x11ABB, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE8pop_backEv, symObjAddr: 0x27F0, symBinAddr: 0xF6E8, symSize: 0x8C } + - { offsetInCU: 0x2544, offset: 0x11AE2, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9push_backIJRS2_EEEmDpOT_, symObjAddr: 0x287C, symBinAddr: 0xF774, symSize: 0x58 } + - { offsetInCU: 0x2584, offset: 0x11B22, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager7is_fileERKNS_11string_baseIcEE, symObjAddr: 0x2A10, symBinAddr: 0xF7CC, symSize: 0x50 } + - { offsetInCU: 0x25B6, offset: 0x11B54, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18remove_file_or_dirERKNS_11string_baseIcEE, symObjAddr: 0x2A60, symBinAddr: 0xF81C, symSize: 0x10C } + - { offsetInCU: 0x25F6, offset: 0x11B94, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager27get_sub_dirs_and_files_nameERKNS_11string_baseIcEE, symObjAddr: 0x2B6C, symBinAddr: 0xF928, symSize: 0x4C } + - { offsetInCU: 0x262C, offset: 0x11BCA, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcEplEPKc, symObjAddr: 0x2D94, symBinAddr: 0xF9FC, symSize: 0x184 } + - { offsetInCU: 0x2699, offset: 0x11C37, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9push_backIJS2_EEEmDpOT_, symObjAddr: 0x2F18, symBinAddr: 0xFB80, symSize: 0x58 } + - { offsetInCU: 0x26D9, offset: 0x11C77, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager31get_file_last_modified_epoch_msERKNS_11string_baseIcEE, symObjAddr: 0x2F70, symBinAddr: 0xFBD8, symSize: 0xC8 } + - { offsetInCU: 0x277F, offset: 0x11D1D, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager9open_fileERKNS_11string_baseIcEENS_19file_open_mode_enumE, symObjAddr: 0x3134, symBinAddr: 0xFCA0, symSize: 0x4EC } + - { offsetInCU: 0x2995, offset: 0x11F33, size: 0x8, addend: 0x0, symName: __ZNK2bq12file_manager13get_file_sizeERKNS_11file_handleE, symObjAddr: 0x3620, symBinAddr: 0x1018C, symSize: 0x1B0 } + - { offsetInCU: 0x2A25, offset: 0x11FC3, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleD1Ev, symObjAddr: 0x3820, symBinAddr: 0x1038C, symSize: 0x2C } + - { offsetInCU: 0x2A50, offset: 0x11FEE, size: 0x8, addend: 0x0, symName: __ZNK2bq11file_handle8is_validEv, symObjAddr: 0x3918, symBinAddr: 0x103B8, symSize: 0x34 } + - { offsetInCU: 0x2A77, offset: 0x12015, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15append_all_textERKNS_11string_baseIcEES2_, symObjAddr: 0x3AC8, symBinAddr: 0x103EC, symSize: 0x108 } + - { offsetInCU: 0x2AF3, offset: 0x12091, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10write_fileERKNS_11file_handleEPKvmNS0_11seek_optionEx, symObjAddr: 0x3BD0, symBinAddr: 0x104F4, symSize: 0x208 } + - { offsetInCU: 0x2BE1, offset: 0x1217F, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10flush_fileERKNS_11file_handleE, symObjAddr: 0x3E24, symBinAddr: 0x106FC, symSize: 0xB8 } + - { offsetInCU: 0x2C44, offset: 0x121E2, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager14write_all_textERKNS_11string_baseIcEES2_, symObjAddr: 0x3EDC, symBinAddr: 0x107B4, symSize: 0x11C } + - { offsetInCU: 0x2CC0, offset: 0x1225E, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager13truncate_fileERKNS_11file_handleEm, symObjAddr: 0x3FF8, symBinAddr: 0x108D0, symSize: 0x13C } + - { offsetInCU: 0x2D9B, offset: 0x12339, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager29get_and_clear_last_file_errorEv, symObjAddr: 0x4134, symBinAddr: 0x10A0C, symSize: 0x3C } + - { offsetInCU: 0x2DC7, offset: 0x12365, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_12file_manager15file_descriptorELm0EE4sizeEv, symObjAddr: 0x41D0, symBinAddr: 0x10A48, symSize: 0x18 } + - { offsetInCU: 0x2DEE, offset: 0x1238C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EEixEm, symObjAddr: 0x41E8, symBinAddr: 0x10A60, symSize: 0x7C } + - { offsetInCU: 0x2E23, offset: 0x123C1, size: 0x8, addend: 0x0, symName: __ZNK2bq12file_manager15file_descriptor8is_emptyEv, symObjAddr: 0x4264, symBinAddr: 0x10ADC, symSize: 0x78 } + - { offsetInCU: 0x2E68, offset: 0x12406, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE12emplace_backIJS2_EEEmDpOT_, symObjAddr: 0x436C, symBinAddr: 0x10B54, symSize: 0x3C } + - { offsetInCU: 0x2EA8, offset: 0x12446, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptorC1Ev, symObjAddr: 0x43A8, symBinAddr: 0x10B90, symSize: 0x2C } + - { offsetInCU: 0x2ED3, offset: 0x12471, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptorD1Ev, symObjAddr: 0x43D4, symBinAddr: 0x10BBC, symSize: 0x2C } + - { offsetInCU: 0x2F5B, offset: 0x124F9, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptor7inc_refEv, symObjAddr: 0x4400, symBinAddr: 0x10BE8, symSize: 0x29C } + - { offsetInCU: 0x305C, offset: 0x125FA, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager4seekERKNS_11file_handleENS0_11seek_optionEx, symObjAddr: 0x46C8, symBinAddr: 0x10E84, symSize: 0x120 } + - { offsetInCU: 0x30DD, offset: 0x1267B, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager9read_fileERKNS_11file_handleEPvmNS0_11seek_optionEx, symObjAddr: 0x47E8, symBinAddr: 0x10FA4, symSize: 0x1DC } + - { offsetInCU: 0x31CA, offset: 0x12768, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE18fill_uninitializedIcEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm, symObjAddr: 0x4AE4, symBinAddr: 0x11180, symSize: 0xC4 } + - { offsetInCU: 0x3208, offset: 0x127A6, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE5eraseENS_14array_iteratorIcS1_EEm, symObjAddr: 0x4BA8, symBinAddr: 0x11244, symSize: 0x25C } + - { offsetInCU: 0x326B, offset: 0x12809, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10close_fileERNS_11file_handleE, symObjAddr: 0x4E48, symBinAddr: 0x114A0, symSize: 0x2A0 } + - { offsetInCU: 0x33D2, offset: 0x12970, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptor7dec_refEv, symObjAddr: 0x50E8, symBinAddr: 0x11740, symSize: 0x49C } + - { offsetInCU: 0x3620, offset: 0x12BBE, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_12file_manager15file_descriptorELm0EEixEm, symObjAddr: 0x55BC, symBinAddr: 0x11BDC, symSize: 0x7C } + - { offsetInCU: 0x3655, offset: 0x12BF3, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager7inc_refERKNS_11file_handleE, symObjAddr: 0x5638, symBinAddr: 0x11C58, symSize: 0x90 } + - { offsetInCU: 0x372B, offset: 0x12CC9, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptor5clearEv, symObjAddr: 0x56C8, symBinAddr: 0x11CE8, symSize: 0x138 } + - { offsetInCU: 0x3880, offset: 0x12E1E, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptorC2Ev, symObjAddr: 0x5878, symBinAddr: 0x11E20, symSize: 0x130 } + - { offsetInCU: 0x39D9, offset: 0x12F77, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIiEC1Ev, symObjAddr: 0x59A8, symBinAddr: 0x11F50, symSize: 0x2C } + - { offsetInCU: 0x3A01, offset: 0x12F9F, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleD2Ev, symObjAddr: 0x5B48, symBinAddr: 0x11F7C, symSize: 0x40 } + - { offsetInCU: 0x3A2C, offset: 0x12FCA, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleaSERKS0_, symObjAddr: 0x5B88, symBinAddr: 0x11FBC, symSize: 0x6C } + - { offsetInCU: 0x3A62, offset: 0x13000, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleaSEOS0_, symObjAddr: 0x5BF4, symBinAddr: 0x12028, symSize: 0x84 } + - { offsetInCU: 0x3A98, offset: 0x13036, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handle7invalidEv, symObjAddr: 0x5C78, symBinAddr: 0x120AC, symSize: 0x38 } + - { offsetInCU: 0x3ABF, offset: 0x1305D, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptorD2Ev, symObjAddr: 0x5DD8, symBinAddr: 0x120E4, symSize: 0x30 } + - { offsetInCU: 0x3AE9, offset: 0x13087, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EEC2Ev, symObjAddr: 0x5E84, symBinAddr: 0x12114, symSize: 0x20 } + - { offsetInCU: 0x3B13, offset: 0x130B1, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EED2Ev, symObjAddr: 0x5EA4, symBinAddr: 0x12134, symSize: 0x2C } + - { offsetInCU: 0x3B3D, offset: 0x130DB, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE5resetIS2_EENS_9enable_ifIXntsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x5ED0, symBinAddr: 0x12160, symSize: 0x6C } + - { offsetInCU: 0x3B72, offset: 0x13110, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_12file_manager15file_descriptorEE8destructEPS2_m, symObjAddr: 0x5F3C, symBinAddr: 0x121CC, symSize: 0x2C } + - { offsetInCU: 0x3BA2, offset: 0x13140, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_12file_manager15file_descriptorEE15destructor_implIS2_NS3_27non_trivial_destructor_typeEE8destructEPS2_m, symObjAddr: 0x5F68, symBinAddr: 0x121F8, symSize: 0x84 } + - { offsetInCU: 0x3BEE, offset: 0x1318C, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_12file_manager15file_descriptorEE8destructEPS2_, symObjAddr: 0x5FEC, symBinAddr: 0x1227C, symSize: 0x24 } + - { offsetInCU: 0x3C10, offset: 0x131AE, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_12file_manager15file_descriptorEE15destructor_implIS2_NS3_27non_trivial_destructor_typeEE8destructEPS2_, symObjAddr: 0x6010, symBinAddr: 0x122A0, symSize: 0x3C } + - { offsetInCU: 0x3C3C, offset: 0x131DA, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC2ERKS1_, symObjAddr: 0x615C, symBinAddr: 0x122DC, symSize: 0x34 } + - { offsetInCU: 0x3C74, offset: 0x13212, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EEC2ERKS1_, symObjAddr: 0x6190, symBinAddr: 0x12310, symSize: 0x9C } + - { offsetInCU: 0x3CAC, offset: 0x1324A, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE4findERKS1_m, symObjAddr: 0x6814, symBinAddr: 0x123AC, symSize: 0xD4 } + - { offsetInCU: 0x3CFE, offset: 0x1329C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE12emplace_backIJRS2_EEEmDpOT_, symObjAddr: 0x6CC0, symBinAddr: 0x124E8, symSize: 0x3C } + - { offsetInCU: 0x3D48, offset: 0x132E6, size: 0x8, addend: 0x0, symName: __Z7isspacei, symObjAddr: 0x714C, symBinAddr: 0x12524, symSize: 0x28 } + - { offsetInCU: 0x3D76, offset: 0x13314, size: 0x8, addend: 0x0, symName: __Z8__istypeim, symObjAddr: 0x7174, symBinAddr: 0x1254C, symSize: 0x8C } + - { offsetInCU: 0x3DB0, offset: 0x1334E, size: 0x8, addend: 0x0, symName: __Z7isasciii, symObjAddr: 0x7200, symBinAddr: 0x125D8, symSize: 0x24 } + - { offsetInCU: 0x3DDC, offset: 0x1337A, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEmiEi, symObjAddr: 0x7258, symBinAddr: 0x125FC, symSize: 0x40 } + - { offsetInCU: 0x3E1E, offset: 0x133BC, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_11string_baseIcEENS_5arrayIS2_Lm0EEEEmIEi, symObjAddr: 0x72B0, symBinAddr: 0x1263C, symSize: 0x30 } + - { offsetInCU: 0x3E52, offset: 0x133F0, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x72E0, symBinAddr: 0x1266C, symSize: 0x288 } + - { offsetInCU: 0x3EE0, offset: 0x1347E, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9constructIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x78F8, symBinAddr: 0x12908, symSize: 0x74 } + - { offsetInCU: 0x3F3D, offset: 0x134DB, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x799C, symBinAddr: 0x1297C, symSize: 0x288 } + - { offsetInCU: 0x3FCB, offset: 0x13569, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9constructIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x7C24, symBinAddr: 0x12C04, symSize: 0x74 } + - { offsetInCU: 0x4028, offset: 0x135C6, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE9push_backIJS2_EEEmDpOT_, symObjAddr: 0x7C98, symBinAddr: 0x12C78, symSize: 0x58 } + - { offsetInCU: 0x4068, offset: 0x13606, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x7D04, symBinAddr: 0x12CE4, symSize: 0x288 } + - { offsetInCU: 0x40F6, offset: 0x13694, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE3endEv, symObjAddr: 0x7F8C, symBinAddr: 0x12F6C, symSize: 0x44 } + - { offsetInCU: 0x411D, offset: 0x136BB, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE5beginEv, symObjAddr: 0x8084, symBinAddr: 0x13064, symSize: 0x34 } + - { offsetInCU: 0x4144, offset: 0x136E2, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE12set_capacityEmb, symObjAddr: 0x81F8, symBinAddr: 0x131D8, symSize: 0x230 } + - { offsetInCU: 0x41B3, offset: 0x13751, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_12file_manager15file_descriptorENS_5arrayIS2_Lm0EEEEplEm, symObjAddr: 0x8428, symBinAddr: 0x13408, symSize: 0x44 } + - { offsetInCU: 0x41F5, offset: 0x13793, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_12file_manager15file_descriptorENS_5arrayIS2_Lm0EEEEcvPS2_Ev, symObjAddr: 0x846C, symBinAddr: 0x1344C, symSize: 0x18 } + - { offsetInCU: 0x421B, offset: 0x137B9, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE8destructENS_14array_iteratorIS2_S3_EE, symObjAddr: 0x85C4, symBinAddr: 0x135A4, symSize: 0x34 } + - { offsetInCU: 0x4250, offset: 0x137EE, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE9constructIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x85F8, symBinAddr: 0x135D8, symSize: 0x74 } + - { offsetInCU: 0x42B2, offset: 0x13850, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_12file_manager15file_descriptorENS_5arrayIS2_Lm0EEEEC1IS2_EEPT_PKS4_, symObjAddr: 0x866C, symBinAddr: 0x1364C, symSize: 0x3C } + - { offsetInCU: 0x4301, offset: 0x1389F, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_12file_manager15file_descriptorENS_5arrayIS2_Lm0EEEEC2IS2_EEPT_PKS4_, symObjAddr: 0x86A8, symBinAddr: 0x13688, symSize: 0x70 } + - { offsetInCU: 0x4350, offset: 0x138EE, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptorC1EOS1_, symObjAddr: 0x87E4, symBinAddr: 0x137C4, symSize: 0x34 } + - { offsetInCU: 0x4383, offset: 0x13921, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptorC2EOS1_, symObjAddr: 0x8818, symBinAddr: 0x137F8, symSize: 0x64 } + - { offsetInCU: 0x43B6, offset: 0x13954, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIiEC1ERKS2_, symObjAddr: 0x887C, symBinAddr: 0x1385C, symSize: 0x34 } + - { offsetInCU: 0x43EC, offset: 0x1398A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIiEC2ERKS2_, symObjAddr: 0x88B0, symBinAddr: 0x13890, symSize: 0x24 } + - { offsetInCU: 0x4422, offset: 0x139C0, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_12file_manager15file_descriptorENS_5arrayIS2_Lm0EEEEpLEi, symObjAddr: 0x88D4, symBinAddr: 0x138B4, symSize: 0x30 } + - { offsetInCU: 0x447A, offset: 0x13A18, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15file_descriptoraSEOS1_, symObjAddr: 0x8904, symBinAddr: 0x138E4, symSize: 0x1FC } + - { offsetInCU: 0x4688, offset: 0x13C26, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_12file_manager15file_descriptorENS_5arrayIS2_Lm0EEEEptEv, symObjAddr: 0x8B00, symBinAddr: 0x13AE0, symSize: 0x18 } + - { offsetInCU: 0x46AE, offset: 0x13C4C, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIiEC2Ev, symObjAddr: 0x8CB8, symBinAddr: 0x13BD4, symSize: 0x2C } + - { offsetInCU: 0x46D6, offset: 0x13C74, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12_atomic_baseIiLm4EEC2Ev, symObjAddr: 0x8CE4, symBinAddr: 0x13C00, symSize: 0x18 } + - { offsetInCU: 0x19E5, offset: 0x156FE, size: 0x8, addend: 0x0, symName: __ZN2bqneINS_5tupleIJNS_11string_baseIcEES3_EEES4_NS_5arrayIS4_Lm0EEES6_EEbRKNS_14array_iteratorIT_T1_EERKNS7_IT0_T2_EE, symObjAddr: 0x80C, symBinAddr: 0x14370, symSize: 0xA0 } + - { offsetInCU: 0x1A43, offset: 0x1575C, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm0EJNS_11string_baseIcEES2_EEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERS7_, symObjAddr: 0x968, symBinAddr: 0x144CC, symSize: 0x24 } + - { offsetInCU: 0x1A8B, offset: 0x157A4, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm1EJNS_11string_baseIcEES2_EEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERS7_, symObjAddr: 0x98C, symBinAddr: 0x144F0, symSize: 0x28 } + - { offsetInCU: 0x1AD3, offset: 0x157EC, size: 0x8, addend: 0x0, symName: __ZN2bqL10find_splitERNS_11string_baseIcEERKc, symObjAddr: 0x11B0, symBinAddr: 0x14628, symSize: 0x16C } + - { offsetInCU: 0x1B37, offset: 0x15850, size: 0x8, addend: 0x0, symName: __ZN2bq10make_tupleIJRNS_11string_baseIcEES3_EEENS_5tupleIJDpNS_5decayIT_E4typeEEEEDpOS6_, symObjAddr: 0x16F4, symBinAddr: 0x14858, symSize: 0x4C } + - { offsetInCU: 0x1B84, offset: 0x1589D, size: 0x8, addend: 0x0, symName: __ZN2bqneINS_11string_baseIcEES2_Lb0ELb0EEEbRKNS_17hash_map_iteratorIT_T0_XT1_EEERKNS3_IS4_S5_XT2_EEE, symObjAddr: 0x19C8, symBinAddr: 0x1498C, symSize: 0x34 } + - { offsetInCU: 0x1BE4, offset: 0x158FD, size: 0x8, addend: 0x0, symName: __ZN2bqplIcEENS_11string_baseIT_EEOS3_PKc, symObjAddr: 0x1A30, symBinAddr: 0x149F4, symSize: 0x88 } + - { offsetInCU: 0x1C27, offset: 0x15940, size: 0x8, addend: 0x0, symName: __ZN2bqeqINS_11string_baseIcEES2_Lb0ELb0EEEbRKNS_17hash_map_iteratorIT_T0_XT1_EEERKNS3_IS4_S5_XT2_EEE, symObjAddr: 0x1EC8, symBinAddr: 0x14BD8, symSize: 0xE4 } + - { offsetInCU: 0x1C87, offset: 0x159A0, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_5arrayINS_11string_baseIcEELm0EEEEEONS_16remove_referenceIT_E4typeEOS7_, symObjAddr: 0x2688, symBinAddr: 0x14DCC, symSize: 0x14 } + - { offsetInCU: 0x1D72, offset: 0x15A8B, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_5tupleIJNS_11string_baseIcEES3_EEEEEOT_RNS_16remove_referenceIS5_E4typeE, symObjAddr: 0x4E74, symBinAddr: 0x15680, symSize: 0x14 } + - { offsetInCU: 0x1DA7, offset: 0x15AC0, size: 0x8, addend: 0x0, symName: __ZN2bqgeINS_5tupleIJNS_11string_baseIcEES3_EEES4_NS_5arrayIS4_Lm0EEES6_EEbRKNS_14array_iteratorIT_T1_EERKNS7_IT0_T2_EE, symObjAddr: 0x4E88, symBinAddr: 0x15694, symSize: 0xA0 } + - { offsetInCU: 0x1E05, offset: 0x15B1E, size: 0x8, addend: 0x0, symName: __ZN2bqleINS_5tupleIJNS_11string_baseIcEES3_EEES4_NS_5arrayIS4_Lm0EEES6_EEbRKNS_14array_iteratorIT_T1_EERKNS7_IT0_T2_EE, symObjAddr: 0x4F28, symBinAddr: 0x15734, symSize: 0xA0 } + - { offsetInCU: 0x1E63, offset: 0x15B7C, size: 0x8, addend: 0x0, symName: __ZN2bqmiINS_5tupleIJNS_11string_baseIcEES3_EEES4_NS_5arrayIS4_Lm0EEES6_EENS_14array_iteratorIT_T1_E9diff_typeERKSA_RKNS7_IT0_T2_EE, symObjAddr: 0x4FC8, symBinAddr: 0x157D4, symSize: 0xA0 } + - { offsetInCU: 0x1EC1, offset: 0x15BDA, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveINS_5tupleIJNS_11string_baseIcEES3_EEEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS6_EE5valueEvE4typeEPS6_S9_m, symObjAddr: 0x52F4, symBinAddr: 0x15B00, symSize: 0x140 } + - { offsetInCU: 0x1F7C, offset: 0x15C95, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyINS_5tupleIJNS_11string_baseIcEES3_EEEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS6_EE5valueEvE4typeEPS6_S9_m, symObjAddr: 0x54DC, symBinAddr: 0x15CE8, symSize: 0xCC } + - { offsetInCU: 0x1FEE, offset: 0x15D07, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_5tupleIJNS_11string_baseIcEES3_EEEEEONS_16remove_referenceIT_E4typeEOS7_, symObjAddr: 0x55A8, symBinAddr: 0x15DB4, symSize: 0x14 } + - { offsetInCU: 0x2023, offset: 0x15D3C, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRKNS_11string_baseIcEEEEOT_RNS_16remove_referenceIS5_E4typeE, symObjAddr: 0x6248, symBinAddr: 0x1690C, symSize: 0x14 } + - { offsetInCU: 0x234F, offset: 0x16068, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj, symObjAddr: 0x6D30, symBinAddr: 0x173F4, symSize: 0x2C0 } + - { offsetInCU: 0x2433, offset: 0x1614C, size: 0x8, addend: 0x0, symName: __ZN2bq8property4loadERKNS_11string_baseIcEE, symObjAddr: 0x88, symBinAddr: 0x13C18, symSize: 0xD8 } + - { offsetInCU: 0x24C6, offset: 0x161DF, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE, symObjAddr: 0x18C, symBinAddr: 0x13CF0, symSize: 0x608 } + - { offsetInCU: 0x257B, offset: 0x16294, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE5beginEv, symObjAddr: 0x794, symBinAddr: 0x142F8, symSize: 0x34 } + - { offsetInCU: 0x25A2, offset: 0x162BB, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE3endEv, symObjAddr: 0x7C8, symBinAddr: 0x1432C, symSize: 0x44 } + - { offsetInCU: 0x25C9, offset: 0x162E2, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEdeEv, symObjAddr: 0x8AC, symBinAddr: 0x14410, symSize: 0x18 } + - { offsetInCU: 0x25EF, offset: 0x16308, size: 0x8, addend: 0x0, symName: __ZN2bq8property3setERKNS_11string_baseIcEES4_, symObjAddr: 0x8C4, symBinAddr: 0x14428, symSize: 0xA4 } + - { offsetInCU: 0x2631, offset: 0x1634A, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEppEv, symObjAddr: 0x9B4, symBinAddr: 0x14518, symSize: 0x20 } + - { offsetInCU: 0x2657, offset: 0x16370, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E8is_emptyEv, symObjAddr: 0x9D4, symBinAddr: 0x14538, symSize: 0x24 } + - { offsetInCU: 0x267D, offset: 0x16396, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EED1Ev, symObjAddr: 0x9F8, symBinAddr: 0x1455C, symSize: 0x2C } + - { offsetInCU: 0x26A7, offset: 0x163C0, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EEC1Ev, symObjAddr: 0xA24, symBinAddr: 0x14588, symSize: 0x2C } + - { offsetInCU: 0x26D1, offset: 0x163EA, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EEixEm, symObjAddr: 0x113C, symBinAddr: 0x145B4, symSize: 0x74 } + - { offsetInCU: 0x2706, offset: 0x1641F, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EEaSEOS3_, symObjAddr: 0x131C, symBinAddr: 0x14794, symSize: 0x6C } + - { offsetInCU: 0x273B, offset: 0x16454, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE9push_backIJS4_EEEmDpOT_, symObjAddr: 0x169C, symBinAddr: 0x14800, symSize: 0x58 } + - { offsetInCU: 0x277B, offset: 0x16494, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EED1Ev, symObjAddr: 0x1740, symBinAddr: 0x148A4, symSize: 0x2C } + - { offsetInCU: 0x27A6, offset: 0x164BF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5beginEv, symObjAddr: 0x190C, symBinAddr: 0x148D0, symSize: 0x84 } + - { offsetInCU: 0x27CD, offset: 0x164E6, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E3endEv, symObjAddr: 0x1990, symBinAddr: 0x14954, symSize: 0x38 } + - { offsetInCU: 0x27F4, offset: 0x1650D, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb0EEdeEv, symObjAddr: 0x19FC, symBinAddr: 0x149C0, symSize: 0x34 } + - { offsetInCU: 0x281A, offset: 0x16533, size: 0x8, addend: 0x0, symName: __ZNK2bq7kv_pairINS_11string_baseIcEES2_E3keyEv, symObjAddr: 0x1B40, symBinAddr: 0x14A7C, symSize: 0x14 } + - { offsetInCU: 0x283E, offset: 0x16557, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairINS_11string_baseIcEES2_E5valueEv, symObjAddr: 0x1CD8, symBinAddr: 0x14A90, symSize: 0x18 } + - { offsetInCU: 0x2862, offset: 0x1657B, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb0EEppEv, symObjAddr: 0x1CF0, symBinAddr: 0x14AA8, symSize: 0x88 } + - { offsetInCU: 0x2888, offset: 0x165A1, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E4findERKS2_, symObjAddr: 0x1E20, symBinAddr: 0x14B30, symSize: 0x74 } + - { offsetInCU: 0x28CA, offset: 0x165E3, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb0EEptEv, symObjAddr: 0x1E94, symBinAddr: 0x14BA4, symSize: 0x34 } + - { offsetInCU: 0x28F0, offset: 0x16609, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9push_backIJRKS2_EEEmDpOT_, symObjAddr: 0x1FAC, symBinAddr: 0x14CBC, symSize: 0x58 } + - { offsetInCU: 0x2930, offset: 0x16649, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_EixERKS2_, symObjAddr: 0x2004, symBinAddr: 0x14D14, symSize: 0x90 } + - { offsetInCU: 0x2977, offset: 0x16690, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm1ENS_11string_baseIcEELb0EE3getEv, symObjAddr: 0x25DC, symBinAddr: 0x14DA4, symSize: 0x14 } + - { offsetInCU: 0x299B, offset: 0x166B4, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_11string_baseIcEELb0EE3getEv, symObjAddr: 0x25F0, symBinAddr: 0x14DB8, symSize: 0x14 } + - { offsetInCU: 0x29BF, offset: 0x166D8, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EEC1EOS3_, symObjAddr: 0x269C, symBinAddr: 0x14DE0, symSize: 0x34 } + - { offsetInCU: 0x29FD, offset: 0x16716, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EEC2EOS3_, symObjAddr: 0x347C, symBinAddr: 0x14E14, symSize: 0x6C } + - { offsetInCU: 0x2A36, offset: 0x1674F, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_11string_baseIcEELm0EE8capacityEv, symObjAddr: 0x34E8, symBinAddr: 0x14E80, symSize: 0x18 } + - { offsetInCU: 0x2A5D, offset: 0x16776, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EED2Ev, symObjAddr: 0x3500, symBinAddr: 0x14E98, symSize: 0x38 } + - { offsetInCU: 0x2A88, offset: 0x167A1, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEEEED2Ev, symObjAddr: 0x3538, symBinAddr: 0x14ED0, symSize: 0x2C } + - { offsetInCU: 0x2AB3, offset: 0x167CC, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm1ENS_11string_baseIcEEED2Ev, symObjAddr: 0x3564, symBinAddr: 0x14EFC, symSize: 0x2C } + - { offsetInCU: 0x2ADE, offset: 0x167F7, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm0ENS_11string_baseIcEEED2Ev, symObjAddr: 0x3590, symBinAddr: 0x14F28, symSize: 0x2C } + - { offsetInCU: 0x2B09, offset: 0x16822, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_11string_baseIcEELb0EED2Ev, symObjAddr: 0x35BC, symBinAddr: 0x14F54, symSize: 0x2C } + - { offsetInCU: 0x2B34, offset: 0x1684D, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm1ENS_11string_baseIcEELb0EED2Ev, symObjAddr: 0x35E8, symBinAddr: 0x14F80, symSize: 0x2C } + - { offsetInCU: 0x2B5F, offset: 0x16878, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EED2Ev, symObjAddr: 0x3660, symBinAddr: 0x14FAC, symSize: 0x2C } + - { offsetInCU: 0x2B89, offset: 0x168A2, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE5resetIS4_EENS_9enable_ifIXntsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x368C, symBinAddr: 0x14FD8, symSize: 0x6C } + - { offsetInCU: 0x2BBE, offset: 0x168D7, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_5tupleIJNS_11string_baseIcEES3_EEEE8destructEPS4_m, symObjAddr: 0x36F8, symBinAddr: 0x15044, symSize: 0x2C } + - { offsetInCU: 0x2BEE, offset: 0x16907, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_5tupleIJNS_11string_baseIcEES3_EEEE15destructor_implIS4_NS5_27non_trivial_destructor_typeEE8destructEPS4_m, symObjAddr: 0x3724, symBinAddr: 0x15070, symSize: 0x84 } + - { offsetInCU: 0x2C3A, offset: 0x16953, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_5tupleIJNS_11string_baseIcEES3_EEEE8destructEPS4_, symObjAddr: 0x37A8, symBinAddr: 0x150F4, symSize: 0x24 } + - { offsetInCU: 0x2C5C, offset: 0x16975, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_5tupleIJNS_11string_baseIcEES3_EEEE15destructor_implIS4_NS5_27non_trivial_destructor_typeEE8destructEPS4_, symObjAddr: 0x37CC, symBinAddr: 0x15118, symSize: 0x3C } + - { offsetInCU: 0x2C83, offset: 0x1699C, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEC1IS4_EEPT_PKS6_, symObjAddr: 0x3808, symBinAddr: 0x15154, symSize: 0x3C } + - { offsetInCU: 0x2CD2, offset: 0x169EB, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEC2IS4_EEPT_PKS6_, symObjAddr: 0x3844, symBinAddr: 0x15190, symSize: 0x70 } + - { offsetInCU: 0x2D21, offset: 0x16A3A, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EEC2Ev, symObjAddr: 0x4438, symBinAddr: 0x15200, symSize: 0x20 } + - { offsetInCU: 0x2D4B, offset: 0x16A64, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEC1IRS2_JS5_EEEOT_DpOT0_, symObjAddr: 0x4A14, symBinAddr: 0x15220, symSize: 0x3C } + - { offsetInCU: 0x2DA5, offset: 0x16ABE, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEC2IRS2_JS5_EEEOT_DpOT0_, symObjAddr: 0x4A50, symBinAddr: 0x1525C, symSize: 0x5C } + - { offsetInCU: 0x2DFF, offset: 0x16B18, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm1ENS_11string_baseIcEEEC2IRS2_EEOT_, symObjAddr: 0x4AAC, symBinAddr: 0x152B8, symSize: 0x40 } + - { offsetInCU: 0x2E3F, offset: 0x16B58, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEEEEC2IRS2_JEEEOT_DpOT0_, symObjAddr: 0x4AEC, symBinAddr: 0x152F8, symSize: 0x40 } + - { offsetInCU: 0x2E85, offset: 0x16B9E, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm1ENS_11string_baseIcEELb0EEC2IRS2_EEOT_, symObjAddr: 0x4B2C, symBinAddr: 0x15338, symSize: 0x40 } + - { offsetInCU: 0x2EC5, offset: 0x16BDE, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm0ENS_11string_baseIcEEEC2IRS2_EEOT_, symObjAddr: 0x4B6C, symBinAddr: 0x15378, symSize: 0x40 } + - { offsetInCU: 0x2F05, offset: 0x16C1E, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_11string_baseIcEELb0EEC2IRS2_EEOT_, symObjAddr: 0x4BAC, symBinAddr: 0x153B8, symSize: 0x40 } + - { offsetInCU: 0x2F45, offset: 0x16C5E, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_, symObjAddr: 0x4BEC, symBinAddr: 0x153F8, symSize: 0x288 } + - { offsetInCU: 0x2FD3, offset: 0x16CEC, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE12set_capacityEmb, symObjAddr: 0x5068, symBinAddr: 0x15874, symSize: 0x230 } + - { offsetInCU: 0x3042, offset: 0x16D5B, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEplEm, symObjAddr: 0x5298, symBinAddr: 0x15AA4, symSize: 0x44 } + - { offsetInCU: 0x3084, offset: 0x16D9D, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEcvPS4_Ev, symObjAddr: 0x52DC, symBinAddr: 0x15AE8, symSize: 0x18 } + - { offsetInCU: 0x30AA, offset: 0x16DC3, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE8destructENS_14array_iteratorIS4_S5_EE, symObjAddr: 0x5434, symBinAddr: 0x15C40, symSize: 0x34 } + - { offsetInCU: 0x30DF, offset: 0x16DF8, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE9constructIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_, symObjAddr: 0x5468, symBinAddr: 0x15C74, symSize: 0x74 } + - { offsetInCU: 0x313C, offset: 0x16E55, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEC1EOS3_, symObjAddr: 0x55BC, symBinAddr: 0x15DC8, symSize: 0x34 } + - { offsetInCU: 0x3170, offset: 0x16E89, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEC2EOS3_, symObjAddr: 0x55F0, symBinAddr: 0x15DFC, symSize: 0x48 } + - { offsetInCU: 0x31A9, offset: 0x16EC2, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm1ENS_11string_baseIcEEEC2EOS3_, symObjAddr: 0x5638, symBinAddr: 0x15E44, symSize: 0x34 } + - { offsetInCU: 0x31E2, offset: 0x16EFB, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEEEEC2EOS3_, symObjAddr: 0x566C, symBinAddr: 0x15E78, symSize: 0x34 } + - { offsetInCU: 0x321B, offset: 0x16F34, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm1ENS_11string_baseIcEELb0EEC2EOS3_, symObjAddr: 0x56A0, symBinAddr: 0x15EAC, symSize: 0x34 } + - { offsetInCU: 0x3254, offset: 0x16F6D, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm0ENS_11string_baseIcEEEC2EOS3_, symObjAddr: 0x56D4, symBinAddr: 0x15EE0, symSize: 0x34 } + - { offsetInCU: 0x328D, offset: 0x16FA6, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_11string_baseIcEELb0EEC2EOS3_, symObjAddr: 0x5708, symBinAddr: 0x15F14, symSize: 0x34 } + - { offsetInCU: 0x32C1, offset: 0x16FDA, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEpLEi, symObjAddr: 0x573C, symBinAddr: 0x15F48, symSize: 0x30 } + - { offsetInCU: 0x32FA, offset: 0x17013, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEaSEOS3_, symObjAddr: 0x576C, symBinAddr: 0x15F78, symSize: 0x48 } + - { offsetInCU: 0x332F, offset: 0x17048, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm1ENS_11string_baseIcEEEaSEOS3_, symObjAddr: 0x57B4, symBinAddr: 0x15FC0, symSize: 0x34 } + - { offsetInCU: 0x3364, offset: 0x1707D, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEEEEaSEOS3_, symObjAddr: 0x57E8, symBinAddr: 0x15FF4, symSize: 0x34 } + - { offsetInCU: 0x3399, offset: 0x170B2, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm1ENS_11string_baseIcEELb0EEaSEOS3_, symObjAddr: 0x581C, symBinAddr: 0x16028, symSize: 0x34 } + - { offsetInCU: 0x33CE, offset: 0x170E7, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm0ENS_11string_baseIcEEEaSEOS3_, symObjAddr: 0x5850, symBinAddr: 0x1605C, symSize: 0x34 } + - { offsetInCU: 0x3403, offset: 0x1711C, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_11string_baseIcEELb0EEaSEOS3_, symObjAddr: 0x5884, symBinAddr: 0x16090, symSize: 0x34 } + - { offsetInCU: 0x3433, offset: 0x1714C, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJNS_11string_baseIcEES3_EEENS_5arrayIS4_Lm0EEEEptEv, symObjAddr: 0x58B8, symBinAddr: 0x160C4, symSize: 0x18 } + - { offsetInCU: 0x3459, offset: 0x17172, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headINS3_10value_nodeEEixEj, symObjAddr: 0x58D0, symBinAddr: 0x160DC, symSize: 0x74 } + - { offsetInCU: 0x348B, offset: 0x171A4, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb0EEC1EPNS_8hash_mapIS2_S2_EEjj, symObjAddr: 0x5944, symBinAddr: 0x16150, symSize: 0x44 } + - { offsetInCU: 0x34DD, offset: 0x171F6, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb0EEC2EPNS_8hash_mapIS2_S2_EEjj, symObjAddr: 0x5988, symBinAddr: 0x16194, symSize: 0x38 } + - { offsetInCU: 0x352F, offset: 0x17248, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E19get_next_node_indexEj, symObjAddr: 0x59C0, symBinAddr: 0x161CC, symSize: 0x68 } + - { offsetInCU: 0x3565, offset: 0x1727E, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headINS3_10value_nodeEEixEj, symObjAddr: 0x5A28, symBinAddr: 0x16234, symSize: 0x74 } + - { offsetInCU: 0x3597, offset: 0x172B0, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E32find_index_and_bucket_idx_by_keyERKS2_, symObjAddr: 0x5A9C, symBinAddr: 0x162A8, symSize: 0x114 } + - { offsetInCU: 0x3625, offset: 0x1733E, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E12buckets_sizeEv, symObjAddr: 0x5BDC, symBinAddr: 0x163BC, symSize: 0x24 } + - { offsetInCU: 0x364B, offset: 0x17364, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E23get_bucket_index_by_keyERKS2_, symObjAddr: 0x5C00, symBinAddr: 0x163E0, symSize: 0x44 } + - { offsetInCU: 0x3690, offset: 0x173A9, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headIjEixEj, symObjAddr: 0x5C44, symBinAddr: 0x16424, symSize: 0x74 } + - { offsetInCU: 0x36C2, offset: 0x173DB, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcEeqERKS1_, symObjAddr: 0x5CB8, symBinAddr: 0x16498, symSize: 0xBC } + - { offsetInCU: 0x36F7, offset: 0x17410, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headIjE4sizeEv, symObjAddr: 0x5DB0, symBinAddr: 0x16554, symSize: 0x18 } + - { offsetInCU: 0x371B, offset: 0x17434, size: 0x8, addend: 0x0, symName: __ZN2bq28generic_type_hash_calculatorINS_11string_baseIcEEE9hash_codeERKS2_, symObjAddr: 0x5DC8, symBinAddr: 0x1656C, symSize: 0x24 } + - { offsetInCU: 0x373D, offset: 0x17456, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E24get_bucket_index_by_hashEy, symObjAddr: 0x5DEC, symBinAddr: 0x16590, symSize: 0x3C } + - { offsetInCU: 0x3773, offset: 0x1748C, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE9hash_codeEv, symObjAddr: 0x5E28, symBinAddr: 0x165CC, symSize: 0x24 } + - { offsetInCU: 0x379A, offset: 0x174B3, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcE8get_hashERKS1_, symObjAddr: 0x5E4C, symBinAddr: 0x165F0, symSize: 0x94 } + - { offsetInCU: 0x37EC, offset: 0x17505, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRKS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x5FC0, symBinAddr: 0x16684, symSize: 0x288 } + - { offsetInCU: 0x387A, offset: 0x17593, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9constructIJRKS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x625C, symBinAddr: 0x16920, symSize: 0x74 } + - { offsetInCU: 0x38D7, offset: 0x175F0, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb0EEcvbEv, symObjAddr: 0x62D0, symBinAddr: 0x16994, symSize: 0x44 } + - { offsetInCU: 0x38FD, offset: 0x17616, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E3addERKS2_, symObjAddr: 0x6314, symBinAddr: 0x169D8, symSize: 0x64 } + - { offsetInCU: 0x393F, offset: 0x17658, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E20iterator_legal_checkERKNS_17hash_map_iteratorIS2_S2_Lb1EEE, symObjAddr: 0x6378, symBinAddr: 0x16A3C, symSize: 0x124 } + - { offsetInCU: 0x3979, offset: 0x17692, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb1EEC1ILb0EEERKNS0_IS2_S2_XT_EEE, symObjAddr: 0x649C, symBinAddr: 0x16B60, symSize: 0x34 } + - { offsetInCU: 0x39B9, offset: 0x176D2, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headINS3_10value_nodeEE4sizeEv, symObjAddr: 0x64D0, symBinAddr: 0x16B94, symSize: 0x18 } + - { offsetInCU: 0x39DD, offset: 0x176F6, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEES2_Lb1EEC2ILb0EEERKNS0_IS2_S2_XT_EEE, symObjAddr: 0x64E8, symBinAddr: 0x16BAC, symSize: 0x3C } + - { offsetInCU: 0x3A1D, offset: 0x17736, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_, symObjAddr: 0x6524, symBinAddr: 0x16BE8, symSize: 0x304 } + - { offsetInCU: 0x3B15, offset: 0x1782E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E15construct_valueERNS_17hash_map_iteratorIS2_S2_Lb0EEE, symObjAddr: 0x6828, symBinAddr: 0x16EEC, symSize: 0x5C } + - { offsetInCU: 0x3B4A, offset: 0x17863, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E4sizeEv, symObjAddr: 0x6884, symBinAddr: 0x16F48, symSize: 0x18 } + - { offsetInCU: 0x3B70, offset: 0x17889, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj, symObjAddr: 0x689C, symBinAddr: 0x16F60, symSize: 0x494 } + - { offsetInCU: 0x3C75, offset: 0x1798E, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E10nodes_sizeEv, symObjAddr: 0x6FF0, symBinAddr: 0x176B4, symSize: 0x28 } + - { offsetInCU: 0x3C9B, offset: 0x179B4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headIjEixEj, symObjAddr: 0x7018, symBinAddr: 0x176DC, symSize: 0x74 } + - { offsetInCU: 0x3CCD, offset: 0x179E6, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E13construct_keyIRKS2_EEvRNS_17hash_map_iteratorIS2_S2_Lb0EEEOT_, symObjAddr: 0x708C, symBinAddr: 0x17750, symSize: 0x68 } + - { offsetInCU: 0x3D19, offset: 0x17A32, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E8destructERNS_17hash_map_iteratorIS2_S2_Lb0EEE, symObjAddr: 0x7178, symBinAddr: 0x177B8, symSize: 0x3C } + - { offsetInCU: 0x3D4F, offset: 0x17A68, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12destruct_keyERNS_17hash_map_iteratorIS2_S2_Lb0EEE, symObjAddr: 0x71B4, symBinAddr: 0x177F4, symSize: 0x2C } + - { offsetInCU: 0x3D85, offset: 0x17A9E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14destruct_valueERNS_17hash_map_iteratorIS2_S2_Lb0EEE, symObjAddr: 0x71E0, symBinAddr: 0x17820, symSize: 0x30 } + - { offsetInCU: 0x26, offset: 0x17B91, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE, symObjAddr: 0x0, symBinAddr: 0x17850, symSize: 0x130 } + - { offsetInCU: 0x2680, offset: 0x1A1EB, size: 0x8, addend: 0x0, symName: __ZN2bqL30trans_parson_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_, symObjAddr: 0x2C8, symBinAddr: 0x179F4, symSize: 0x260 } + - { offsetInCU: 0x2721, offset: 0x1A28C, size: 0x8, addend: 0x0, symName: __ZN2bqneINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb0ELb0EEEbRKNS_17hash_map_iteratorIT_T0_XT1_EEERKNS6_IS7_S8_XT2_EEE, symObjAddr: 0x19A4, symBinAddr: 0x18360, symSize: 0x34 } + - { offsetInCU: 0x2781, offset: 0x1A2EC, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRbEEONS_16remove_referenceIT_E4typeEOS3_, symObjAddr: 0x1D9C, symBinAddr: 0x18758, symSize: 0x14 } + - { offsetInCU: 0x27B6, offset: 0x1A321, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRdEEONS_16remove_referenceIT_E4typeEOS3_, symObjAddr: 0x1E48, symBinAddr: 0x18804, symSize: 0x14 } + - { offsetInCU: 0x27EB, offset: 0x1A356, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRxEEONS_16remove_referenceIT_E4typeEOS3_, symObjAddr: 0x1EF4, symBinAddr: 0x188B0, symSize: 0x14 } + - { offsetInCU: 0x2820, offset: 0x1A38B, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_5arrayINS_10unique_ptrINS_14property_valueEEELm0EEEEEONS_16remove_referenceIT_E4typeEOS8_, symObjAddr: 0x1FE8, symBinAddr: 0x1895C, symSize: 0x14 } + - { offsetInCU: 0x2855, offset: 0x1A3C0, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEEEEEONS_16remove_referenceIT_E4typeEOSA_, symObjAddr: 0x2030, symBinAddr: 0x189A4, symSize: 0x14 } + - { offsetInCU: 0x288A, offset: 0x1A3F5, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_14property_valueEEEONS_16remove_referenceIT_E4typeEOS4_, symObjAddr: 0x2960, symBinAddr: 0x19260, symSize: 0x14 } + - { offsetInCU: 0x28BF, offset: 0x1A42A, size: 0x8, addend: 0x0, symName: __ZN2bq4moveINS_8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEEEEEONS_16remove_referenceIT_E4typeEOS9_, symObjAddr: 0x2C84, symBinAddr: 0x19584, symSize: 0x14 } + - { offsetInCU: 0x28F4, offset: 0x1A45F, size: 0x8, addend: 0x0, symName: __ZN2bqeqINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb0ELb0EEEbRKNS_17hash_map_iteratorIT_T0_XT1_EEERKNS6_IS7_S8_XT2_EEE, symObjAddr: 0x2C98, symBinAddr: 0x19598, symSize: 0xE4 } + - { offsetInCU: 0x2989, offset: 0x1A4F4, size: 0x8, addend: 0x0, symName: __ZN2bq4moveINS_5arrayINS_10unique_ptrINS_14property_valueEEELm0EEEEEONS_16remove_referenceIT_E4typeEOS7_, symObjAddr: 0x3698, symBinAddr: 0x198B0, symSize: 0x14 } + - { offsetInCU: 0x29BE, offset: 0x1A529, size: 0x8, addend: 0x0, symName: __ZN2bq4moveINS_14property_valueEEEONS_16remove_referenceIT_E4typeEOS3_, symObjAddr: 0x5068, symBinAddr: 0x1A148, symSize: 0x14 } + - { offsetInCU: 0x29F3, offset: 0x1A55E, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_, symObjAddr: 0x507C, symBinAddr: 0x1A15C, symSize: 0x4F0 } + - { offsetInCU: 0x2AF5, offset: 0x1A660, size: 0x8, addend: 0x0, symName: __ZN2bqL15parse_array_keyENS_11string_baseIcEE, symObjAddr: 0x67C4, symBinAddr: 0x1A64C, symSize: 0x60 } + - { offsetInCU: 0x2B2E, offset: 0x1A699, size: 0x8, addend: 0x0, symName: __ZN2bqL17parse_array_valueENS_11string_baseIcEE, symObjAddr: 0x6868, symBinAddr: 0x1A6F0, symSize: 0xBC } + - { offsetInCU: 0x2B5B, offset: 0x1A6C6, size: 0x8, addend: 0x0, symName: __ZN2bqL18parse_number_valueERdPKc, symObjAddr: 0x69FC, symBinAddr: 0x1A7AC, symSize: 0x160 } + - { offsetInCU: 0x2BB1, offset: 0x1A71C, size: 0x8, addend: 0x0, symName: __ZN2bqL19parse_boolean_valueERbPKc, symObjAddr: 0x6B5C, symBinAddr: 0x1A90C, symSize: 0xD4 } + - { offsetInCU: 0x2C07, offset: 0x1A772, size: 0x8, addend: 0x0, symName: __ZN2bqL16parse_null_valueEPKc, symObjAddr: 0x6C30, symBinAddr: 0x1A9E0, symSize: 0x78 } + - { offsetInCU: 0x2C41, offset: 0x1A7AC, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_14property_valueEEEOT_RNS_16remove_referenceIS2_E4typeE, symObjAddr: 0x6D6C, symBinAddr: 0x1AB1C, symSize: 0x14 } + - { offsetInCU: 0x2C76, offset: 0x1A7E1, size: 0x8, addend: 0x0, symName: __ZN2bqL10is_decimalEPKcm, symObjAddr: 0x6DF4, symBinAddr: 0x1AB30, symSize: 0x158 } + - { offsetInCU: 0x2D66, offset: 0x1A8D1, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIPNS_14property_valueEEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0x9070, symBinAddr: 0x1B6D4, symSize: 0x14 } + - { offsetInCU: 0x2D9B, offset: 0x1A906, size: 0x8, addend: 0x0, symName: __ZN2bqgeINS_10unique_ptrINS_14property_valueEEES3_NS_5arrayIS3_Lm0EEES5_EEbRKNS_14array_iteratorIT_T1_EERKNS6_IT0_T2_EE, symObjAddr: 0x9084, symBinAddr: 0x1B6E8, symSize: 0xA0 } + - { offsetInCU: 0x2DF9, offset: 0x1A964, size: 0x8, addend: 0x0, symName: __ZN2bqleINS_10unique_ptrINS_14property_valueEEES3_NS_5arrayIS3_Lm0EEES5_EEbRKNS_14array_iteratorIT_T1_EERKNS6_IT0_T2_EE, symObjAddr: 0x9124, symBinAddr: 0x1B788, symSize: 0xA0 } + - { offsetInCU: 0x2E57, offset: 0x1A9C2, size: 0x8, addend: 0x0, symName: __ZN2bqmiINS_10unique_ptrINS_14property_valueEEES3_NS_5arrayIS3_Lm0EEES5_EENS_14array_iteratorIT_T1_E9diff_typeERKS9_RKNS6_IT0_T2_EE, symObjAddr: 0x91C4, symBinAddr: 0x1B828, symSize: 0xA0 } + - { offsetInCU: 0x2EB5, offset: 0x1AA20, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveINS_10unique_ptrINS_14property_valueEEEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS5_EE5valueEvE4typeEPS5_S8_m, symObjAddr: 0x927C, symBinAddr: 0x1B8E0, symSize: 0x11C } + - { offsetInCU: 0x2F70, offset: 0x1AADB, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_10unique_ptrINS_14property_valueEEEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x9444, symBinAddr: 0x1BAA8, symSize: 0x14 } + - { offsetInCU: 0x2FA5, offset: 0x1AB10, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_10unique_ptrINS_14property_valueEEEEEONS_16remove_referenceIT_E4typeEOS6_, symObjAddr: 0x9FE0, symBinAddr: 0x1C644, symSize: 0x14 } + - { offsetInCU: 0x3030, offset: 0x1AB9B, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEEEEEOT_RNS_16remove_referenceIS8_E4typeE, symObjAddr: 0xAD00, symBinAddr: 0x1D1C0, symSize: 0x14 } + - { offsetInCU: 0x3065, offset: 0x1ABD0, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_5arrayINS_10unique_ptrINS_14property_valueEEELm0EEEEEOT_RNS_16remove_referenceIS6_E4typeE, symObjAddr: 0xB264, symBinAddr: 0x1D2D0, symSize: 0x14 } + - { offsetInCU: 0x309A, offset: 0x1AC05, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyINS_10unique_ptrINS_14property_valueEEEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS5_EE5valueEvE4typeEPS5_S8_m, symObjAddr: 0xB2E4, symBinAddr: 0x1D350, symSize: 0xB4 } + - { offsetInCU: 0x310C, offset: 0x1AC77, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRbEEOT_RNS_16remove_referenceIS2_E4typeE, symObjAddr: 0xB694, symBinAddr: 0x1D404, symSize: 0x14 } + - { offsetInCU: 0x3141, offset: 0x1ACAC, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRdEEOT_RNS_16remove_referenceIS2_E4typeE, symObjAddr: 0xB6A8, symBinAddr: 0x1D418, symSize: 0x14 } + - { offsetInCU: 0x3176, offset: 0x1ACE1, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRxEEOT_RNS_16remove_referenceIS2_E4typeE, symObjAddr: 0xB6BC, symBinAddr: 0x1D42C, symSize: 0x14 } + - { offsetInCU: 0x3620, offset: 0x1B18B, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14get_null_valueEv, symObjAddr: 0x2168, symBinAddr: 0x18ADC, symSize: 0x98 } + - { offsetInCU: 0x3644, offset: 0x1B1AF, size: 0x8, addend: 0x0, symName: __ZZN2bq14property_value14get_null_valueEvE10null_value, symObjAddr: 0x2F058, symBinAddr: 0x68988, symSize: 0x0 } + - { offsetInCU: 0x365E, offset: 0x1B1C9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj, symObjAddr: 0x9AF4, symBinAddr: 0x1C158, symSize: 0x2F0 } + - { offsetInCU: 0x3838, offset: 0x1B3A3, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE, symObjAddr: 0x0, symBinAddr: 0x17850, symSize: 0x130 } + - { offsetInCU: 0x38DC, offset: 0x1B447, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueC1ENS_24enum_property_value_typeE, symObjAddr: 0x130, symBinAddr: 0x17980, symSize: 0x34 } + - { offsetInCU: 0x392A, offset: 0x1B495, size: 0x8, addend: 0x0, symName: __ZN2bq8propertyC1Ev, symObjAddr: 0x164, symBinAddr: 0x179B4, symSize: 0x2C } + - { offsetInCU: 0x3954, offset: 0x1B4BF, size: 0x8, addend: 0x0, symName: __ZN2bq8property4mapsEv, symObjAddr: 0x190, symBinAddr: 0x179E0, symSize: 0x14 } + - { offsetInCU: 0x3978, offset: 0x1B4E3, size: 0x8, addend: 0x0, symName: __ZN2bq8propertyD1Ev, symObjAddr: 0x63C, symBinAddr: 0x17C54, symSize: 0x2C } + - { offsetInCU: 0x39A2, offset: 0x1B50D, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueD1Ev, symObjAddr: 0x668, symBinAddr: 0x17C80, symSize: 0x2C } + - { offsetInCU: 0x39CD, offset: 0x1B538, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value10clear_dataEv, symObjAddr: 0xE18, symBinAddr: 0x17CAC, symSize: 0xBC } + - { offsetInCU: 0x39F3, offset: 0x1B55E, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value9as_stringEb, symObjAddr: 0xEEC, symBinAddr: 0x17D80, symSize: 0x98 } + - { offsetInCU: 0x3A25, offset: 0x1B590, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value8as_arrayEb, symObjAddr: 0xF84, symBinAddr: 0x17E18, symSize: 0x98 } + - { offsetInCU: 0x3A57, offset: 0x1B5C2, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EED1Ev, symObjAddr: 0x101C, symBinAddr: 0x17EB0, symSize: 0x2C } + - { offsetInCU: 0x3A81, offset: 0x1B5EC, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value9as_objectEb, symObjAddr: 0x1048, symBinAddr: 0x17EDC, symSize: 0x98 } + - { offsetInCU: 0x3AB3, offset: 0x1B61E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEED1Ev, symObjAddr: 0x10E0, symBinAddr: 0x17F74, symSize: 0x2C } + - { offsetInCU: 0x3ADD, offset: 0x1B648, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvbEv, symObjAddr: 0x1420, symBinAddr: 0x17FA0, symSize: 0x34 } + - { offsetInCU: 0x3B01, offset: 0x1B66C, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueaSEb, symObjAddr: 0x1454, symBinAddr: 0x17FD4, symSize: 0x64 } + - { offsetInCU: 0x3B37, offset: 0x1B6A2, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueaSEd, symObjAddr: 0x14E8, symBinAddr: 0x18038, symSize: 0x5C } + - { offsetInCU: 0x3B6D, offset: 0x1B6D8, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvxEv, symObjAddr: 0x1544, symBinAddr: 0x18094, symSize: 0x30 } + - { offsetInCU: 0x3B94, offset: 0x1B6FF, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueaSEx, symObjAddr: 0x1574, symBinAddr: 0x180C4, symSize: 0x60 } + - { offsetInCU: 0x3BCA, offset: 0x1B735, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvNS_11string_baseIcEEEv, symObjAddr: 0x15D4, symBinAddr: 0x18124, symSize: 0x40 } + - { offsetInCU: 0x3BF1, offset: 0x1B75C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EEC1Ev, symObjAddr: 0x169C, symBinAddr: 0x18164, symSize: 0x2C } + - { offsetInCU: 0x3C1B, offset: 0x1B786, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE5beginEv, symObjAddr: 0x16C8, symBinAddr: 0x18190, symSize: 0x34 } + - { offsetInCU: 0x3C42, offset: 0x1B7AD, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE3endEv, symObjAddr: 0x16FC, symBinAddr: 0x181C4, symSize: 0x3C } + - { offsetInCU: 0x3C69, offset: 0x1B7D4, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEEdeEv, symObjAddr: 0x17F0, symBinAddr: 0x18200, symSize: 0x18 } + - { offsetInCU: 0x3C92, offset: 0x1B7FD, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE9push_backIJPS2_EEEmDpOT_, symObjAddr: 0x1808, symBinAddr: 0x18218, symSize: 0x58 } + - { offsetInCU: 0x3CD2, offset: 0x1B83D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEEC1Ej, symObjAddr: 0x18B4, symBinAddr: 0x18270, symSize: 0x34 } + - { offsetInCU: 0x3D0A, offset: 0x1B875, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5beginEv, symObjAddr: 0x18E8, symBinAddr: 0x182A4, symSize: 0x84 } + - { offsetInCU: 0x3D31, offset: 0x1B89C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE3endEv, symObjAddr: 0x196C, symBinAddr: 0x18328, symSize: 0x38 } + - { offsetInCU: 0x3D58, offset: 0x1B8C3, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb0EEdeEv, symObjAddr: 0x19D8, symBinAddr: 0x18394, symSize: 0x34 } + - { offsetInCU: 0x3D7E, offset: 0x1B8E9, size: 0x8, addend: 0x0, symName: __ZNK2bq7kv_pairINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE3keyEv, symObjAddr: 0x1A0C, symBinAddr: 0x183C8, symSize: 0x14 } + - { offsetInCU: 0x3DA2, offset: 0x1B90D, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5valueEv, symObjAddr: 0x1A20, symBinAddr: 0x183DC, symSize: 0x18 } + - { offsetInCU: 0x3DC6, offset: 0x1B931, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE3addIPS4_EENS_17hash_map_iteratorIS2_S5_Lb0EEERKS2_OT_, symObjAddr: 0x1A38, symBinAddr: 0x183F4, symSize: 0x74 } + - { offsetInCU: 0x3E1F, offset: 0x1B98A, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb0EEppEv, symObjAddr: 0x1AAC, symBinAddr: 0x18468, symSize: 0x88 } + - { offsetInCU: 0x3E45, offset: 0x1B9B0, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14copy_data_fromEOS0_, symObjAddr: 0x1B34, symBinAddr: 0x184F0, symSize: 0x250 } + - { offsetInCU: 0x3E7B, offset: 0x1B9E6, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value7as_boolEb, symObjAddr: 0x1DB0, symBinAddr: 0x1876C, symSize: 0x98 } + - { offsetInCU: 0x3EAD, offset: 0x1BA18, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value10as_decimalEb, symObjAddr: 0x1E5C, symBinAddr: 0x18818, symSize: 0x98 } + - { offsetInCU: 0x3EDF, offset: 0x1BA4A, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value11as_integralEb, symObjAddr: 0x1F08, symBinAddr: 0x188C4, symSize: 0x98 } + - { offsetInCU: 0x3F11, offset: 0x1BA7C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EEC1EOS4_, symObjAddr: 0x1FFC, symBinAddr: 0x18970, symSize: 0x34 } + - { offsetInCU: 0x3F4A, offset: 0x1BAB5, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEEC1EOS6_, symObjAddr: 0x2044, symBinAddr: 0x189B8, symSize: 0x34 } + - { offsetInCU: 0x3F82, offset: 0x1BAED, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value21check_and_switch_typeENS_24enum_property_value_typeEb, symObjAddr: 0x2078, symBinAddr: 0x189EC, symSize: 0xF0 } + - { offsetInCU: 0x3FC7, offset: 0x1BB32, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value19add_null_array_itemEv, symObjAddr: 0x2200, symBinAddr: 0x18B74, symSize: 0x70 } + - { offsetInCU: 0x3FEE, offset: 0x1BB59, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value8is_arrayEv, symObjAddr: 0x2270, symBinAddr: 0x18BE4, symSize: 0x30 } + - { offsetInCU: 0x4012, offset: 0x1BB7D, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixEm, symObjAddr: 0x22A0, symBinAddr: 0x18C14, symSize: 0x154 } + - { offsetInCU: 0x4065, offset: 0x1BBD0, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE4sizeEv, symObjAddr: 0x23F4, symBinAddr: 0x18D68, symSize: 0x18 } + - { offsetInCU: 0x408C, offset: 0x1BBF7, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixERKNS_11string_baseIcEE, symObjAddr: 0x2438, symBinAddr: 0x18D80, symSize: 0x1E0 } + - { offsetInCU: 0x40D2, offset: 0x1BC3D, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueC2ENS_24enum_property_value_typeE, symObjAddr: 0x2618, symBinAddr: 0x18F60, symSize: 0x1AC } + - { offsetInCU: 0x410C, offset: 0x1BC77, size: 0x8, addend: 0x0, symName: __ZN2bq12aligned_typeIA56_cLj8EEC1Ev, symObjAddr: 0x27DC, symBinAddr: 0x19124, symSize: 0x2C } + - { offsetInCU: 0x4134, offset: 0x1BC9F, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value15init_debug_ptrsEv, symObjAddr: 0x2808, symBinAddr: 0x19150, symSize: 0xB4 } + - { offsetInCU: 0x4158, offset: 0x1BCC3, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueC2EOS0_, symObjAddr: 0x2904, symBinAddr: 0x19204, symSize: 0x5C } + - { offsetInCU: 0x4192, offset: 0x1BCFD, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueC1EOS0_, symObjAddr: 0x2974, symBinAddr: 0x19274, symSize: 0x34 } + - { offsetInCU: 0x41CC, offset: 0x1BD37, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueD2Ev, symObjAddr: 0x29A8, symBinAddr: 0x192A8, symSize: 0x38 } + - { offsetInCU: 0x41F7, offset: 0x1BD62, size: 0x8, addend: 0x0, symName: __ZN2bq12aligned_typeIA56_cLj8EED1Ev, symObjAddr: 0x29E0, symBinAddr: 0x192E0, symSize: 0x2C } + - { offsetInCU: 0x421F, offset: 0x1BD8A, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valueixERKNS_11string_baseIcEE, symObjAddr: 0x2A0C, symBinAddr: 0x1930C, symSize: 0x9C } + - { offsetInCU: 0x4264, offset: 0x1BDCF, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value9is_objectEv, symObjAddr: 0x2AA8, symBinAddr: 0x193A8, symSize: 0x30 } + - { offsetInCU: 0x4288, offset: 0x1BDF3, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE4findERKS2_, symObjAddr: 0x2AD8, symBinAddr: 0x193D8, symSize: 0x74 } + - { offsetInCU: 0x42CA, offset: 0x1BE35, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb0EEcvbEv, symObjAddr: 0x2B4C, symBinAddr: 0x1944C, symSize: 0x44 } + - { offsetInCU: 0x42F0, offset: 0x1BE5B, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb0EEptEv, symObjAddr: 0x2B90, symBinAddr: 0x19490, symSize: 0x34 } + - { offsetInCU: 0x4316, offset: 0x1BE81, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEE3getEv, symObjAddr: 0x2BC4, symBinAddr: 0x194C4, symSize: 0x18 } + - { offsetInCU: 0x433A, offset: 0x1BEA5, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateINS_8hash_mapINS_11string_baseIcEENS_10unique_ptrIS0_EEEES7_EEvOT_RT0_bNS_24enum_property_value_typeE, symObjAddr: 0x2BDC, symBinAddr: 0x194DC, symSize: 0xA8 } + - { offsetInCU: 0x43A8, offset: 0x1BF13, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_10unique_ptrINS_14property_valueEEENS_5arrayIS3_Lm0EEEEplEm, symObjAddr: 0x3414, symBinAddr: 0x1967C, symSize: 0x44 } + - { offsetInCU: 0x43EA, offset: 0x1BF55, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value7is_nullEv, symObjAddr: 0x34A8, symBinAddr: 0x196C0, symSize: 0x30 } + - { offsetInCU: 0x440E, offset: 0x1BF79, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valueixEm, symObjAddr: 0x34D8, symBinAddr: 0x196F0, symSize: 0xA4 } + - { offsetInCU: 0x4444, offset: 0x1BFAF, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EEixEm, symObjAddr: 0x357C, symBinAddr: 0x19794, symSize: 0x74 } + - { offsetInCU: 0x4479, offset: 0x1BFE4, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateINS_5arrayINS_10unique_ptrIS0_EELm0EEES5_EEvOT_RT0_bNS_24enum_property_value_typeE, symObjAddr: 0x35F0, symBinAddr: 0x19808, symSize: 0xA8 } + - { offsetInCU: 0x44E7, offset: 0x1C052, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE12set_capacityEmb, symObjAddr: 0x36AC, symBinAddr: 0x198C4, symSize: 0x224 } + - { offsetInCU: 0x4556, offset: 0x1C0C1, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value18get_object_key_setEv, symObjAddr: 0x3948, symBinAddr: 0x19AE8, symSize: 0x12C } + - { offsetInCU: 0x459C, offset: 0x1C107, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value10array_sizeEv, symObjAddr: 0x3B24, symBinAddr: 0x19C14, symSize: 0x58 } + - { offsetInCU: 0x45C3, offset: 0x1C12E, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE4sizeEv, symObjAddr: 0x3BD4, symBinAddr: 0x19C6C, symSize: 0x18 } + - { offsetInCU: 0x45E9, offset: 0x1C154, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueaSEOS0_, symObjAddr: 0x3C28, symBinAddr: 0x19C84, symSize: 0x44 } + - { offsetInCU: 0x4624, offset: 0x1C18F, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateIRbbEEvOT_RT0_bNS_24enum_property_value_typeE, symObjAddr: 0x3C6C, symBinAddr: 0x19CC8, symSize: 0xB0 } + - { offsetInCU: 0x4697, offset: 0x1C202, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateIRddEEvOT_RT0_bNS_24enum_property_value_typeE, symObjAddr: 0x3D1C, symBinAddr: 0x19D78, symSize: 0xA8 } + - { offsetInCU: 0x470A, offset: 0x1C275, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateIRxxEEvOT_RT0_bNS_24enum_property_value_typeE, symObjAddr: 0x3DC4, symBinAddr: 0x19E20, symSize: 0xA8 } + - { offsetInCU: 0x4778, offset: 0x1C2E3, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueaSERKNS_11string_baseIcEE, symObjAddr: 0x3F98, symBinAddr: 0x19EC8, symSize: 0x60 } + - { offsetInCU: 0x47AE, offset: 0x1C319, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateIRKNS_11string_baseIcEES3_EEvOT_RT0_bNS_24enum_property_value_typeE, symObjAddr: 0x3FF8, symBinAddr: 0x19F28, symSize: 0xA8 } + - { offsetInCU: 0x481C, offset: 0x1C387, size: 0x8, addend: 0x0, symName: __ZN2bq8propertyC2Ev, symObjAddr: 0x40A0, symBinAddr: 0x19FD0, symSize: 0x3C } + - { offsetInCU: 0x4846, offset: 0x1C3B1, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_EC1Ej, symObjAddr: 0x40DC, symBinAddr: 0x1A00C, symSize: 0x34 } + - { offsetInCU: 0x487E, offset: 0x1C3E9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_EC2Ej, symObjAddr: 0x4110, symBinAddr: 0x1A040, symSize: 0x78 } + - { offsetInCU: 0x48B6, offset: 0x1C421, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headIjEC1Ev, symObjAddr: 0x4188, symBinAddr: 0x1A0B8, symSize: 0x2C } + - { offsetInCU: 0x48DE, offset: 0x1C449, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headINS3_10value_nodeEEC1Ev, symObjAddr: 0x41B4, symBinAddr: 0x1A0E4, symSize: 0x2C } + - { offsetInCU: 0x4906, offset: 0x1C471, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headIjEC2Ev, symObjAddr: 0x4958, symBinAddr: 0x1A110, symSize: 0x1C } + - { offsetInCU: 0x492E, offset: 0x1C499, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E22value_node_buffer_headINS3_10value_nodeEEC2Ev, symObjAddr: 0x4974, symBinAddr: 0x1A12C, symSize: 0x1C } + - { offsetInCU: 0x495B, offset: 0x1C4C6, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14add_array_itemIS0_EENS_9enable_ifIXsr2bq7is_sameINS_5decayIT_E4typeES0_EE5valueERS0_E4typeEOS4_, symObjAddr: 0x6824, symBinAddr: 0x1A6AC, symSize: 0x44 } + - { offsetInCU: 0x49A4, offset: 0x1C50F, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE4findERKS1_, symObjAddr: 0x6CA8, symBinAddr: 0x1AA58, symSize: 0xC4 } + - { offsetInCU: 0x49E8, offset: 0x1C553, size: 0x8, addend: 0x0, symName: __Z6strchrB7v160006Ua9enable_ifIXLb1EEEPKci, symObjAddr: 0x6F4C, symBinAddr: 0x1AC88, symSize: 0x2C } + - { offsetInCU: 0x4A22, offset: 0x1C58D, size: 0x8, addend: 0x0, symName: __ZN2bq8propertyD2Ev, symObjAddr: 0x79A4, symBinAddr: 0x1ACB4, symSize: 0x38 } + - { offsetInCU: 0x4A4C, offset: 0x1C5B7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_ED1Ev, symObjAddr: 0x79DC, symBinAddr: 0x1ACEC, symSize: 0x2C } + - { offsetInCU: 0x4A76, offset: 0x1C5E1, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_ED2Ev, symObjAddr: 0x7A08, symBinAddr: 0x1AD18, symSize: 0x2C } + - { offsetInCU: 0x4AA0, offset: 0x1C60B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5resetEv, symObjAddr: 0x7A34, symBinAddr: 0x1AD44, symSize: 0xF8 } + - { offsetInCU: 0x4AE4, offset: 0x1C64F, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value7is_boolEv, symObjAddr: 0x7E28, symBinAddr: 0x1AE3C, symSize: 0x30 } + - { offsetInCU: 0x4B08, offset: 0x1C673, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value11is_integralEv, symObjAddr: 0x7E88, symBinAddr: 0x1AE6C, symSize: 0x30 } + - { offsetInCU: 0x4B2C, offset: 0x1C697, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value9is_stringEv, symObjAddr: 0x7EB8, symBinAddr: 0x1AE9C, symSize: 0x30 } + - { offsetInCU: 0x4B50, offset: 0x1C6BB, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value8get_typeEv, symObjAddr: 0x8220, symBinAddr: 0x1AECC, symSize: 0x18 } + - { offsetInCU: 0x4B74, offset: 0x1C6DF, size: 0x8, addend: 0x0, symName: __ZNK2bq12aligned_typeIA56_cLj8EE3getEv, symObjAddr: 0x8250, symBinAddr: 0x1AEE4, symSize: 0x24 } + - { offsetInCU: 0x4B98, offset: 0x1C703, size: 0x8, addend: 0x0, symName: __ZNK2bq12aligned_typeIA56_cLj8EE8get_addrEv, symObjAddr: 0x8274, symBinAddr: 0x1AF08, symSize: 0x3C } + - { offsetInCU: 0x4BBC, offset: 0x1C727, size: 0x8, addend: 0x0, symName: __ZNK2bq12aligned_typeIA56_cLj8EE6offsetEv, symObjAddr: 0x82B0, symBinAddr: 0x1AF44, symSize: 0x1C } + - { offsetInCU: 0x4BE0, offset: 0x1C74B, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EED2Ev, symObjAddr: 0x88FC, symBinAddr: 0x1AF60, symSize: 0x2C } + - { offsetInCU: 0x4C0A, offset: 0x1C775, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE5resetIS3_EENS_9enable_ifIXntsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x8928, symBinAddr: 0x1AF8C, symSize: 0x6C } + - { offsetInCU: 0x4C3F, offset: 0x1C7AA, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_10unique_ptrINS_14property_valueEEEE8destructEPS3_m, symObjAddr: 0x8994, symBinAddr: 0x1AFF8, symSize: 0x2C } + - { offsetInCU: 0x4C6F, offset: 0x1C7DA, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_10unique_ptrINS_14property_valueEEEE15destructor_implIS3_NS4_27non_trivial_destructor_typeEE8destructEPS3_m, symObjAddr: 0x89C0, symBinAddr: 0x1B024, symSize: 0x7C } + - { offsetInCU: 0x4CBB, offset: 0x1C826, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_10unique_ptrINS_14property_valueEEEE8destructEPS3_, symObjAddr: 0x8A3C, symBinAddr: 0x1B0A0, symSize: 0x24 } + - { offsetInCU: 0x4CDD, offset: 0x1C848, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_10unique_ptrINS_14property_valueEEEE15destructor_implIS3_NS4_27non_trivial_destructor_typeEE8destructEPS3_, symObjAddr: 0x8A60, symBinAddr: 0x1B0C4, symSize: 0x3C } + - { offsetInCU: 0x4CFF, offset: 0x1C86A, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEED1Ev, symObjAddr: 0x8A9C, symBinAddr: 0x1B100, symSize: 0x2C } + - { offsetInCU: 0x4D27, offset: 0x1C892, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEED2Ev, symObjAddr: 0x8AC8, symBinAddr: 0x1B12C, symSize: 0x2C } + - { offsetInCU: 0x4D4F, offset: 0x1C8BA, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEE5resetEv, symObjAddr: 0x8AF4, symBinAddr: 0x1B158, symSize: 0x6C } + - { offsetInCU: 0x4D73, offset: 0x1C8DE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEED2Ev, symObjAddr: 0x8B60, symBinAddr: 0x1B1C4, symSize: 0x2C } + - { offsetInCU: 0x4D9D, offset: 0x1C908, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5resetEv, symObjAddr: 0x8B8C, symBinAddr: 0x1B1F0, symSize: 0xF8 } + - { offsetInCU: 0x4DE1, offset: 0x1C94C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE8destructERNS_17hash_map_iteratorIS2_S5_Lb0EEE, symObjAddr: 0x8C84, symBinAddr: 0x1B2E8, symSize: 0x3C } + - { offsetInCU: 0x4E17, offset: 0x1C982, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12destruct_keyERNS_17hash_map_iteratorIS2_S5_Lb0EEE, symObjAddr: 0x8CC0, symBinAddr: 0x1B324, symSize: 0x2C } + - { offsetInCU: 0x4E4D, offset: 0x1C9B8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14destruct_valueERNS_17hash_map_iteratorIS2_S5_Lb0EEE, symObjAddr: 0x8CEC, symBinAddr: 0x1B350, symSize: 0x30 } + - { offsetInCU: 0x4E82, offset: 0x1C9ED, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EEC2Ev, symObjAddr: 0x8D1C, symBinAddr: 0x1B380, symSize: 0x20 } + - { offsetInCU: 0x4EB1, offset: 0x1CA1C, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_10unique_ptrINS_14property_valueEEENS_5arrayIS3_Lm0EEEEC1IS3_EEPT_PKS5_, symObjAddr: 0x8D3C, symBinAddr: 0x1B3A0, symSize: 0x3C } + - { offsetInCU: 0x4F00, offset: 0x1CA6B, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_10unique_ptrINS_14property_valueEEENS_5arrayIS3_Lm0EEEEC2IS3_EEPT_PKS5_, symObjAddr: 0x8D78, symBinAddr: 0x1B3DC, symSize: 0x70 } + - { offsetInCU: 0x4F4F, offset: 0x1CABA, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE6insertIJPS2_EEEvNS_14array_iteratorIS3_S4_EEDpOT_, symObjAddr: 0x8DE8, symBinAddr: 0x1B44C, symSize: 0x288 } + - { offsetInCU: 0x4FDD, offset: 0x1CB48, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_10unique_ptrINS_14property_valueEEENS_5arrayIS3_Lm0EEEEcvPS3_Ev, symObjAddr: 0x9264, symBinAddr: 0x1B8C8, symSize: 0x18 } + - { offsetInCU: 0x5003, offset: 0x1CB6E, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE8destructENS_14array_iteratorIS3_S4_EE, symObjAddr: 0x9398, symBinAddr: 0x1B9FC, symSize: 0x34 } + - { offsetInCU: 0x5038, offset: 0x1CBA3, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE9constructIJPS2_EEEvNS_14array_iteratorIS3_S4_EEDpOT_, symObjAddr: 0x93CC, symBinAddr: 0x1BA30, symSize: 0x78 } + - { offsetInCU: 0x5095, offset: 0x1CC00, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEEaSIS1_EERS2_ONS0_IT_EE, symObjAddr: 0x9458, symBinAddr: 0x1BABC, symSize: 0x6C } + - { offsetInCU: 0x50D1, offset: 0x1CC3C, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEEC1IS1_EEONS0_IT_EE, symObjAddr: 0x94C4, symBinAddr: 0x1BB28, symSize: 0x34 } + - { offsetInCU: 0x5110, offset: 0x1CC7B, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEEC2IS1_EEONS0_IT_EE, symObjAddr: 0x94F8, symBinAddr: 0x1BB5C, symSize: 0x2C } + - { offsetInCU: 0x514F, offset: 0x1CCBA, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_10unique_ptrINS_14property_valueEEENS_5arrayIS3_Lm0EEEEptEv, symObjAddr: 0x9524, symBinAddr: 0x1BB88, symSize: 0x18 } + - { offsetInCU: 0x5175, offset: 0x1CCE0, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEEC1EPS1_, symObjAddr: 0x953C, symBinAddr: 0x1BBA0, symSize: 0x34 } + - { offsetInCU: 0x51AB, offset: 0x1CD16, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_14property_valueEEC2EPS1_, symObjAddr: 0x9570, symBinAddr: 0x1BBD4, symSize: 0x20 } + - { offsetInCU: 0x51E1, offset: 0x1CD4C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEEC2Ej, symObjAddr: 0x9590, symBinAddr: 0x1BBF4, symSize: 0x78 } + - { offsetInCU: 0x5219, offset: 0x1CD84, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headIjEC1Ev, symObjAddr: 0x9608, symBinAddr: 0x1BC6C, symSize: 0x2C } + - { offsetInCU: 0x5241, offset: 0x1CDAC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headINS6_10value_nodeEEC1Ev, symObjAddr: 0x9634, symBinAddr: 0x1BC98, symSize: 0x2C } + - { offsetInCU: 0x5269, offset: 0x1CDD4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj, symObjAddr: 0x9660, symBinAddr: 0x1BCC4, symSize: 0x494 } + - { offsetInCU: 0x536E, offset: 0x1CED9, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12buckets_sizeEv, symObjAddr: 0x9DE4, symBinAddr: 0x1C448, symSize: 0x24 } + - { offsetInCU: 0x5394, offset: 0x1CEFF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headIjEC2Ev, symObjAddr: 0x9E08, symBinAddr: 0x1C46C, symSize: 0x1C } + - { offsetInCU: 0x53BC, offset: 0x1CF27, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headINS6_10value_nodeEEC2Ev, symObjAddr: 0x9E24, symBinAddr: 0x1C488, symSize: 0x1C } + - { offsetInCU: 0x53E4, offset: 0x1CF4F, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headIjE4sizeEv, symObjAddr: 0x9E40, symBinAddr: 0x1C4A4, symSize: 0x18 } + - { offsetInCU: 0x5408, offset: 0x1CF73, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headIjEixEj, symObjAddr: 0x9E58, symBinAddr: 0x1C4BC, symSize: 0x74 } + - { offsetInCU: 0x543A, offset: 0x1CFA5, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headINS6_10value_nodeEEixEj, symObjAddr: 0x9ECC, symBinAddr: 0x1C530, symSize: 0x7C } + - { offsetInCU: 0x546C, offset: 0x1CFD7, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE23get_bucket_index_by_keyERKS2_, symObjAddr: 0x9F48, symBinAddr: 0x1C5AC, symSize: 0x44 } + - { offsetInCU: 0x54B1, offset: 0x1D01C, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE24get_bucket_index_by_hashEy, symObjAddr: 0x9F8C, symBinAddr: 0x1C5F0, symSize: 0x3C } + - { offsetInCU: 0x54E7, offset: 0x1D052, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headINS6_10value_nodeEE4sizeEv, symObjAddr: 0x9FC8, symBinAddr: 0x1C62C, symSize: 0x18 } + - { offsetInCU: 0x550B, offset: 0x1D076, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb0EEC1EPNS_8hash_mapIS2_S5_EEjj, symObjAddr: 0x9FF4, symBinAddr: 0x1C658, symSize: 0x44 } + - { offsetInCU: 0x555D, offset: 0x1D0C8, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb0EEC2EPNS_8hash_mapIS2_S5_EEjj, symObjAddr: 0xA038, symBinAddr: 0x1C69C, symSize: 0x38 } + - { offsetInCU: 0x55AF, offset: 0x1D11A, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE19get_next_node_indexEj, symObjAddr: 0xA070, symBinAddr: 0x1C6D4, symSize: 0x68 } + - { offsetInCU: 0x55E5, offset: 0x1D150, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headINS6_10value_nodeEEixEj, symObjAddr: 0xA0D8, symBinAddr: 0x1C73C, symSize: 0x7C } + - { offsetInCU: 0x5617, offset: 0x1D182, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_, symObjAddr: 0xA154, symBinAddr: 0x1C7B8, symSize: 0x304 } + - { offsetInCU: 0x570F, offset: 0x1D27A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE15construct_valueIPS4_EEvRNS_17hash_map_iteratorIS2_S5_Lb0EEEOT_, symObjAddr: 0xA458, symBinAddr: 0x1CABC, symSize: 0x70 } + - { offsetInCU: 0x575B, offset: 0x1D2C6, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE32find_index_and_bucket_idx_by_keyERKS2_, symObjAddr: 0xA4C8, symBinAddr: 0x1CB2C, symSize: 0x114 } + - { offsetInCU: 0x57E9, offset: 0x1D354, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE10nodes_sizeEv, symObjAddr: 0xA608, symBinAddr: 0x1CC40, symSize: 0x28 } + - { offsetInCU: 0x580F, offset: 0x1D37A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE13construct_keyIRKS2_EEvRNS_17hash_map_iteratorIS2_S5_Lb0EEEOT_, symObjAddr: 0xA630, symBinAddr: 0x1CC68, symSize: 0x68 } + - { offsetInCU: 0x585B, offset: 0x1D3C6, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE22value_node_buffer_headIjEixEj, symObjAddr: 0xA698, symBinAddr: 0x1CCD0, symSize: 0x74 } + - { offsetInCU: 0x588D, offset: 0x1D3F8, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EEC2EOS4_, symObjAddr: 0xA884, symBinAddr: 0x1CD44, symSize: 0x6C } + - { offsetInCU: 0x58C6, offset: 0x1D431, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE8capacityEv, symObjAddr: 0xA8F0, symBinAddr: 0x1CDB0, symSize: 0x18 } + - { offsetInCU: 0x58ED, offset: 0x1D458, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEEC2EOS6_, symObjAddr: 0xA908, symBinAddr: 0x1CDC8, symSize: 0xE8 } + - { offsetInCU: 0x5925, offset: 0x1D490, size: 0x8, addend: 0x0, symName: __ZN2bq12aligned_typeIA56_cLj8EEC2Ev, symObjAddr: 0xA9F0, symBinAddr: 0x1CEB0, symSize: 0x70 } + - { offsetInCU: 0x594D, offset: 0x1D4B8, size: 0x8, addend: 0x0, symName: __ZN2bq12aligned_typeIA56_cLj8EE4initEv, symObjAddr: 0xAA60, symBinAddr: 0x1CF20, symSize: 0x8C } + - { offsetInCU: 0x598D, offset: 0x1D4F8, size: 0x8, addend: 0x0, symName: __ZnamPvN2bq14enum_new_dummyE, symObjAddr: 0xAAEC, symBinAddr: 0x1CFAC, symSize: 0x1C } + - { offsetInCU: 0x59CD, offset: 0x1D538, size: 0x8, addend: 0x0, symName: __ZN2bq12aligned_typeIA56_cLj8EED2Ev, symObjAddr: 0xAB08, symBinAddr: 0x1CFC8, symSize: 0x30 } + - { offsetInCU: 0x59F5, offset: 0x1D560, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIA56_cE8destructEPS1_, symObjAddr: 0xAB38, symBinAddr: 0x1CFF8, symSize: 0x24 } + - { offsetInCU: 0x5A17, offset: 0x1D582, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIA56_cE15destructor_implIS1_NS2_23trivial_destructor_typeEE8destructEPS1_, symObjAddr: 0xAB5C, symBinAddr: 0x1D01C, symSize: 0x10 } + - { offsetInCU: 0x5A39, offset: 0x1D5A4, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE20iterator_legal_checkERKNS_17hash_map_iteratorIS2_S5_Lb1EEE, symObjAddr: 0xAB6C, symBinAddr: 0x1D02C, symSize: 0x124 } + - { offsetInCU: 0x5A73, offset: 0x1D5DE, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb1EEC1ILb0EEERKNS0_IS2_S5_XT_EEE, symObjAddr: 0xAC90, symBinAddr: 0x1D150, symSize: 0x34 } + - { offsetInCU: 0x5AB3, offset: 0x1D61E, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEELb1EEC2ILb0EEERKNS0_IS2_S5_XT_EEE, symObjAddr: 0xACC4, symBinAddr: 0x1D184, symSize: 0x3C } + - { offsetInCU: 0x5AF3, offset: 0x1D65E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEEaSEOS6_, symObjAddr: 0xAD14, symBinAddr: 0x1D1D4, symSize: 0xD4 } + - { offsetInCU: 0x5B2C, offset: 0x1D697, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_10unique_ptrINS_14property_valueEEENS_5arrayIS3_Lm0EEEEpLEi, symObjAddr: 0xB23C, symBinAddr: 0x1D2A8, symSize: 0x28 } + - { offsetInCU: 0x5B60, offset: 0x1D6CB, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EEaSEOS4_, symObjAddr: 0xB278, symBinAddr: 0x1D2E4, symSize: 0x6C } + - { offsetInCU: 0x44, offset: 0x1D7FD, size: 0x8, addend: 0x0, symName: __ZN2bqL14_assert_mutex_E, symObjAddr: 0x9400, symBinAddr: 0x68A10, symSize: 0x0 } + - { offsetInCU: 0x326, offset: 0x1DADF, size: 0x8, addend: 0x0, symName: __ZN2bq4util28get_gmt_time_by_epoch_unsafeEy, symObjAddr: 0x470, symBinAddr: 0x1D440, symSize: 0x34 } + - { offsetInCU: 0x358, offset: 0x1DB11, size: 0x8, addend: 0x0, symName: __ZN2bq4util30get_local_time_by_epoch_unsafeEy, symObjAddr: 0x5BC, symBinAddr: 0x1D474, symSize: 0x34 } + - { offsetInCU: 0x38A, offset: 0x1DB43, size: 0x8, addend: 0x0, symName: __ZN2bq4util18log_device_consoleENS_9log_levelEPKcz, symObjAddr: 0x5F0, symBinAddr: 0x1D4A8, symSize: 0x8C } + - { offsetInCU: 0x3DA, offset: 0x1DB93, size: 0x8, addend: 0x0, symName: __ZN2bq4util29log_device_console_plain_textENS_9log_levelEPKc, symObjAddr: 0x67C, symBinAddr: 0x1D534, symSize: 0x28 } + - { offsetInCU: 0x40C, offset: 0x1DBC5, size: 0x8, addend: 0x0, symName: __ZN2bq4util11get_hash_64EPKvm, symObjAddr: 0x720, symBinAddr: 0x1D55C, symSize: 0x80 } + - { offsetInCU: 0x469, offset: 0x1DC22, size: 0x8, addend: 0x0, symName: __ZN2bq4util16is_little_endianEv, symObjAddr: 0x7A0, symBinAddr: 0x1D5DC, symSize: 0x24 } + - { offsetInCU: 0x48E, offset: 0x1DC47, size: 0x8, addend: 0x0, symName: __ZN2bq4util13utf16_to_utf8EPKDsjPcj, symObjAddr: 0x86C, symBinAddr: 0x1D600, symSize: 0x4D4 } + - { offsetInCU: 0x53E, offset: 0x1DCF7, size: 0x8, addend: 0x0, symName: __ZN2bq4util13utf8_to_utf16EPKcjPDsj, symObjAddr: 0xD40, symBinAddr: 0x1DAD4, symSize: 0x3AC } + - { offsetInCU: 0x5C, offset: 0x1DE22, size: 0x8, addend: 0x0, symName: __ZN2bq3apiL19signal_stack_holderE, symObjAddr: 0x28F40, symBinAddr: 0x68A20, symSize: 0x0 } + - { offsetInCU: 0x9F, offset: 0x1DE65, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE10registeredE, symObjAddr: 0x41D0, symBinAddr: 0x68720, symSize: 0x0 } + - { offsetInCU: 0x12C, offset: 0x1DEF2, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE18original_sigactionE, symObjAddr: 0x41D8, symBinAddr: 0x68728, symSize: 0x0 } + - { offsetInCU: 0x143, offset: 0x1DF09, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE7handlerE, symObjAddr: 0x41E8, symBinAddr: 0x68738, symSize: 0x0 } + - { offsetInCU: 0x157, offset: 0x1DF1D, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE10registeredE, symObjAddr: 0x41F0, symBinAddr: 0x68740, symSize: 0x0 } + - { offsetInCU: 0x1D9, offset: 0x1DF9F, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE18original_sigactionE, symObjAddr: 0x41F8, symBinAddr: 0x68748, symSize: 0x0 } + - { offsetInCU: 0x1F0, offset: 0x1DFB6, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE7handlerE, symObjAddr: 0x4208, symBinAddr: 0x68758, symSize: 0x0 } + - { offsetInCU: 0x204, offset: 0x1DFCA, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE10registeredE, symObjAddr: 0x4210, symBinAddr: 0x68760, symSize: 0x0 } + - { offsetInCU: 0x286, offset: 0x1E04C, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE18original_sigactionE, symObjAddr: 0x4218, symBinAddr: 0x68768, symSize: 0x0 } + - { offsetInCU: 0x29D, offset: 0x1E063, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE7handlerE, symObjAddr: 0x4228, symBinAddr: 0x68778, symSize: 0x0 } + - { offsetInCU: 0x2B1, offset: 0x1E077, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE10registeredE, symObjAddr: 0x4230, symBinAddr: 0x68780, symSize: 0x0 } + - { offsetInCU: 0x333, offset: 0x1E0F9, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE18original_sigactionE, symObjAddr: 0x4238, symBinAddr: 0x68788, symSize: 0x0 } + - { offsetInCU: 0x34A, offset: 0x1E110, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE7handlerE, symObjAddr: 0x4248, symBinAddr: 0x68798, symSize: 0x0 } + - { offsetInCU: 0x35E, offset: 0x1E124, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE10registeredE, symObjAddr: 0x4250, symBinAddr: 0x687A0, symSize: 0x0 } + - { offsetInCU: 0x3E0, offset: 0x1E1A6, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE18original_sigactionE, symObjAddr: 0x4258, symBinAddr: 0x687A8, symSize: 0x0 } + - { offsetInCU: 0x3F7, offset: 0x1E1BD, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE7handlerE, symObjAddr: 0x4268, symBinAddr: 0x687B8, symSize: 0x0 } + - { offsetInCU: 0x40B, offset: 0x1E1D1, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE10registeredE, symObjAddr: 0x4270, symBinAddr: 0x687C0, symSize: 0x0 } + - { offsetInCU: 0x48D, offset: 0x1E253, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE18original_sigactionE, symObjAddr: 0x4278, symBinAddr: 0x687C8, symSize: 0x0 } + - { offsetInCU: 0x4A4, offset: 0x1E26A, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE7handlerE, symObjAddr: 0x4288, symBinAddr: 0x687D8, symSize: 0x0 } + - { offsetInCU: 0x4B2, offset: 0x1E278, size: 0x8, addend: 0x0, symName: __ZN2bq3apiL17log_crash_handlerEiP9__siginfoPv, symObjAddr: 0x1E0, symBinAddr: 0x1E07C, symSize: 0x4C } + - { offsetInCU: 0x4E38, offset: 0x22BFE, size: 0x8, addend: 0x0, symName: __ZN2bqneIPNS_13appender_baseES2_NS_5arrayIS2_Lm0EEES4_EEbRKNS_14array_iteratorIT_T1_EERKNS5_IT0_T2_EE, symObjAddr: 0x125C, symBinAddr: 0x1EDB8, symSize: 0xA0 } + - { offsetInCU: 0x4E96, offset: 0x22C5C, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRA1_KcEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x3C24, symBinAddr: 0x1FD20, symSize: 0x14 } + - { offsetInCU: 0x5C5B, offset: 0x23A21, size: 0x8, addend: 0x0, symName: ___api_get_log_version, symObjAddr: 0x38, symBinAddr: 0x1DED4, symSize: 0xC } + - { offsetInCU: 0x5C75, offset: 0x23A3B, size: 0x8, addend: 0x0, symName: __ZN2bq3api24signal_stack_holder_typeC1Ev, symObjAddr: 0x44, symBinAddr: 0x1DEE0, symSize: 0x2C } + - { offsetInCU: 0x5C9D, offset: 0x23A63, size: 0x8, addend: 0x0, symName: __ZN2bq3api24signal_stack_holder_typeD1Ev, symObjAddr: 0x70, symBinAddr: 0x1DF0C, symSize: 0x2C } + - { offsetInCU: 0x5CC5, offset: 0x23A8B, size: 0x8, addend: 0x0, symName: ___api_enable_auto_crash_handler, symObjAddr: 0x9C, symBinAddr: 0x1DF38, symSize: 0x50 } + - { offsetInCU: 0x5CDB, offset: 0x23AA1, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0xEC, symBinAddr: 0x1DF88, symSize: 0xF4 } + - { offsetInCU: 0x5D43, offset: 0x23B09, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x22C, symBinAddr: 0x1E0C8, symSize: 0xF4 } + - { offsetInCU: 0x5DAB, offset: 0x23B71, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x320, symBinAddr: 0x1E1BC, symSize: 0xF4 } + - { offsetInCU: 0x5E13, offset: 0x23BD9, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x414, symBinAddr: 0x1E2B0, symSize: 0xF4 } + - { offsetInCU: 0x5E7B, offset: 0x23C41, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x508, symBinAddr: 0x1E3A4, symSize: 0xF4 } + - { offsetInCU: 0x5EE3, offset: 0x23CA9, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x5FC, symBinAddr: 0x1E498, symSize: 0xF4 } + - { offsetInCU: 0x5F4B, offset: 0x23D11, size: 0x8, addend: 0x0, symName: ___api_create_log, symObjAddr: 0x6F0, symBinAddr: 0x1E58C, symSize: 0x130 } + - { offsetInCU: 0x5FED, offset: 0x23DB3, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9push_backIJRA1_KcEEEmDpOT_, symObjAddr: 0xA7C, symBinAddr: 0x1E6BC, symSize: 0x58 } + - { offsetInCU: 0x6032, offset: 0x23DF8, size: 0x8, addend: 0x0, symName: ___api_log_reset_config, symObjAddr: 0xBB8, symBinAddr: 0x1E714, symSize: 0x78 } + - { offsetInCU: 0x609B, offset: 0x23E61, size: 0x8, addend: 0x0, symName: ___api_log_buffer_alloc, symObjAddr: 0xC30, symBinAddr: 0x1E78C, symSize: 0x2D8 } + - { offsetInCU: 0x61BB, offset: 0x23F81, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager13get_log_by_idEy, symObjAddr: 0xF08, symBinAddr: 0x1EA64, symSize: 0x58 } + - { offsetInCU: 0x61DD, offset: 0x23FA3, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp15get_ring_bufferEv, symObjAddr: 0xF60, symBinAddr: 0x1EABC, symSize: 0x18 } + - { offsetInCU: 0x6201, offset: 0x23FC7, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp18get_reliable_levelEv, symObjAddr: 0xF78, symBinAddr: 0x1EAD4, symSize: 0x18 } + - { offsetInCU: 0x6225, offset: 0x23FEB, size: 0x8, addend: 0x0, symName: ___api_log_buffer_commit, symObjAddr: 0xF90, symBinAddr: 0x1EAEC, symSize: 0x114 } + - { offsetInCU: 0x6295, offset: 0x2405B, size: 0x8, addend: 0x0, symName: __ZN2bq24ring_buffer_write_handleC1Ev, symObjAddr: 0x10A4, symBinAddr: 0x1EC00, symSize: 0x2C } + - { offsetInCU: 0x62BF, offset: 0x24085, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp15get_thread_modeEv, symObjAddr: 0x10D0, symBinAddr: 0x1EC2C, symSize: 0x18 } + - { offsetInCU: 0x62E3, offset: 0x240A9, size: 0x8, addend: 0x0, symName: ___api_set_appenders_enable, symObjAddr: 0x10E8, symBinAddr: 0x1EC44, symSize: 0x104 } + - { offsetInCU: 0x639F, offset: 0x24165, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE5beginEv, symObjAddr: 0x11EC, symBinAddr: 0x1ED48, symSize: 0x34 } + - { offsetInCU: 0x63C6, offset: 0x2418C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE3endEv, symObjAddr: 0x1220, symBinAddr: 0x1ED7C, symSize: 0x3C } + - { offsetInCU: 0x63ED, offset: 0x241B3, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEdeEv, symObjAddr: 0x12FC, symBinAddr: 0x1EE58, symSize: 0x18 } + - { offsetInCU: 0x6413, offset: 0x241D9, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEppEv, symObjAddr: 0x1314, symBinAddr: 0x1EE70, symSize: 0x20 } + - { offsetInCU: 0x6439, offset: 0x241FF, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EED1Ev, symObjAddr: 0x1334, symBinAddr: 0x1EE90, symSize: 0x2C } + - { offsetInCU: 0x6463, offset: 0x24229, size: 0x8, addend: 0x0, symName: ___api_get_logs_count, symObjAddr: 0x1360, symBinAddr: 0x1EEBC, symSize: 0x18 } + - { offsetInCU: 0x647E, offset: 0x24244, size: 0x8, addend: 0x0, symName: ___api_get_log_id_by_index, symObjAddr: 0x1378, symBinAddr: 0x1EED4, symSize: 0x5C } + - { offsetInCU: 0x64B8, offset: 0x2427E, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp2idEv, symObjAddr: 0x13D4, symBinAddr: 0x1EF30, symSize: 0x18 } + - { offsetInCU: 0x64DC, offset: 0x242A2, size: 0x8, addend: 0x0, symName: ___api_get_log_name_by_id, symObjAddr: 0x13EC, symBinAddr: 0x1EF48, symSize: 0xC8 } + - { offsetInCU: 0x6542, offset: 0x24308, size: 0x8, addend: 0x0, symName: ___api_get_log_categories_count, symObjAddr: 0x153C, symBinAddr: 0x1F010, symSize: 0x58 } + - { offsetInCU: 0x657C, offset: 0x24342, size: 0x8, addend: 0x0, symName: ___api_get_log_category_name_by_index, symObjAddr: 0x1594, symBinAddr: 0x1F068, symSize: 0x108 } + - { offsetInCU: 0x65F2, offset: 0x243B8, size: 0x8, addend: 0x0, symName: ___api_get_log_merged_log_level_bitmap_by_log_id, symObjAddr: 0x169C, symBinAddr: 0x1F170, symSize: 0x5C } + - { offsetInCU: 0x6654, offset: 0x2441A, size: 0x8, addend: 0x0, symName: ___api_get_log_category_masks_array_by_log_id, symObjAddr: 0x16F8, symBinAddr: 0x1F1CC, symSize: 0xC8 } + - { offsetInCU: 0x66B4, offset: 0x2447A, size: 0x8, addend: 0x0, symName: ___api_get_log_print_stack_level_bitmap_by_log_id, symObjAddr: 0x17C0, symBinAddr: 0x1F294, symSize: 0x5C } + - { offsetInCU: 0x66EE, offset: 0x244B4, size: 0x8, addend: 0x0, symName: ___api_log_device_console, symObjAddr: 0x181C, symBinAddr: 0x1F2F0, symSize: 0x2C } + - { offsetInCU: 0x6724, offset: 0x244EA, size: 0x8, addend: 0x0, symName: ___api_force_flush, symObjAddr: 0x1848, symBinAddr: 0x1F31C, symSize: 0x50 } + - { offsetInCU: 0x674B, offset: 0x24511, size: 0x8, addend: 0x0, symName: ___api_get_file_base_dir, symObjAddr: 0x1898, symBinAddr: 0x1F36C, symSize: 0x34 } + - { offsetInCU: 0x6776, offset: 0x2453C, size: 0x8, addend: 0x0, symName: ___api_log_decoder_create, symObjAddr: 0x18CC, symBinAddr: 0x1F3A0, symSize: 0x5C } + - { offsetInCU: 0x67B0, offset: 0x24576, size: 0x8, addend: 0x0, symName: ___api_log_decoder_decode, symObjAddr: 0x1928, symBinAddr: 0x1F3FC, symSize: 0x74 } + - { offsetInCU: 0x6808, offset: 0x245CE, size: 0x8, addend: 0x0, symName: ___api_log_decoder_destroy, symObjAddr: 0x199C, symBinAddr: 0x1F470, symSize: 0x28 } + - { offsetInCU: 0x682F, offset: 0x245F5, size: 0x8, addend: 0x0, symName: ___api_log_decode, symObjAddr: 0x19C4, symBinAddr: 0x1F498, symSize: 0x6C } + - { offsetInCU: 0x6869, offset: 0x2462F, size: 0x8, addend: 0x0, symName: ___api_register_console_callbacks, symObjAddr: 0x1A30, symBinAddr: 0x1F504, symSize: 0x24 } + - { offsetInCU: 0x6890, offset: 0x24656, size: 0x8, addend: 0x0, symName: ___api_unregister_console_callbacks, symObjAddr: 0x1A54, symBinAddr: 0x1F528, symSize: 0x24 } + - { offsetInCU: 0x68B7, offset: 0x2467D, size: 0x8, addend: 0x0, symName: ___api_set_console_buffer_enable, symObjAddr: 0x1A78, symBinAddr: 0x1F54C, symSize: 0x30 } + - { offsetInCU: 0x68DE, offset: 0x246A4, size: 0x8, addend: 0x0, symName: ___api_fetch_and_remove_console_buffer, symObjAddr: 0x1AA8, symBinAddr: 0x1F57C, symSize: 0x30 } + - { offsetInCU: 0x6918, offset: 0x246DE, size: 0x8, addend: 0x0, symName: ___api_enable_snapshot, symObjAddr: 0x1AD8, symBinAddr: 0x1F5AC, symSize: 0x50 } + - { offsetInCU: 0x695D, offset: 0x24723, size: 0x8, addend: 0x0, symName: ___api_take_snapshot_string, symObjAddr: 0x1B28, symBinAddr: 0x1F5FC, symSize: 0x98 } + - { offsetInCU: 0x69C0, offset: 0x24786, size: 0x8, addend: 0x0, symName: ___api_release_snapshot_string, symObjAddr: 0x1BC0, symBinAddr: 0x1F694, symSize: 0x60 } + - { offsetInCU: 0x6A05, offset: 0x247CB, size: 0x8, addend: 0x0, symName: ___api_get_stack_trace, symObjAddr: 0x1C20, symBinAddr: 0x1F6F4, symSize: 0x48 } + - { offsetInCU: 0x6A59, offset: 0x2481F, size: 0x8, addend: 0x0, symName: ___api_get_stack_trace_utf16, symObjAddr: 0x1C68, symBinAddr: 0x1F73C, symSize: 0x48 } + - { offsetInCU: 0x6AAD, offset: 0x24873, size: 0x8, addend: 0x0, symName: __ZN2bq3api24signal_stack_holder_typeC2Ev, symObjAddr: 0x1CB0, symBinAddr: 0x1F784, symSize: 0x3C } + - { offsetInCU: 0x6AD5, offset: 0x2489B, size: 0x8, addend: 0x0, symName: __ZN2bq3api24signal_stack_holder_typeD2Ev, symObjAddr: 0x1CEC, symBinAddr: 0x1F7C0, symSize: 0x30 } + - { offsetInCU: 0x6AFD, offset: 0x248C3, size: 0x8, addend: 0x0, symName: __ZN2bq24ring_buffer_write_handleC2Ev, symObjAddr: 0x1DD0, symBinAddr: 0x1F7F0, symSize: 0x30 } + - { offsetInCU: 0x6B2D, offset: 0x248F3, size: 0x8, addend: 0x0, symName: __ZN2bq23ring_buffer_handle_baseC2Ev, symObjAddr: 0x1E00, symBinAddr: 0x1F820, symSize: 0x20 } + - { offsetInCU: 0x6B56, offset: 0x2491C, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE9on_signalEiP9__siginfoPv, symObjAddr: 0x3744, symBinAddr: 0x1F840, symSize: 0x64 } + - { offsetInCU: 0x6BA2, offset: 0x24968, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE9on_signalEiP9__siginfoPv, symObjAddr: 0x37A8, symBinAddr: 0x1F8A4, symSize: 0x64 } + - { offsetInCU: 0x6BEE, offset: 0x249B4, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE9on_signalEiP9__siginfoPv, symObjAddr: 0x380C, symBinAddr: 0x1F908, symSize: 0x64 } + - { offsetInCU: 0x6C3A, offset: 0x24A00, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE9on_signalEiP9__siginfoPv, symObjAddr: 0x3870, symBinAddr: 0x1F96C, symSize: 0x64 } + - { offsetInCU: 0x6C86, offset: 0x24A4C, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE9on_signalEiP9__siginfoPv, symObjAddr: 0x38D4, symBinAddr: 0x1F9D0, symSize: 0x64 } + - { offsetInCU: 0x6CD2, offset: 0x24A98, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE9on_signalEiP9__siginfoPv, symObjAddr: 0x3938, symBinAddr: 0x1FA34, symSize: 0x64 } + - { offsetInCU: 0x6D1E, offset: 0x24AE4, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRA1_KcEEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x399C, symBinAddr: 0x1FA98, symSize: 0x288 } + - { offsetInCU: 0x6DAC, offset: 0x24B72, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE9constructIJRA1_KcEEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x3C38, symBinAddr: 0x1FD34, symSize: 0x74 } + - { offsetInCU: 0x6E09, offset: 0x24BCF, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EED2Ev, symObjAddr: 0x3CAC, symBinAddr: 0x1FDA8, symSize: 0x2C } + - { offsetInCU: 0x6E33, offset: 0x24BF9, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE5resetIS2_EENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x3CD8, symBinAddr: 0x1FDD4, symSize: 0x5C } + - { offsetInCU: 0x6E6D, offset: 0x24C33, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEC1IS2_EEPT_PKS4_, symObjAddr: 0x3D34, symBinAddr: 0x1FE30, symSize: 0x3C } + - { offsetInCU: 0x6EBD, offset: 0x24C83, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEC2IS2_EEPT_PKS4_, symObjAddr: 0x3D70, symBinAddr: 0x1FE6C, symSize: 0x70 } + - { offsetInCU: 0x2B16, offset: 0x27920, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRhEEOT_RNS_16remove_referenceIS2_E4typeE, symObjAddr: 0x42D8, symBinAddr: 0x21A48, symSize: 0x14 } + - { offsetInCU: 0x2F7F, offset: 0x27D89, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base23get_config_name_by_typeENS0_13appender_typeE, symObjAddr: 0x2B4, symBinAddr: 0x20134, symSize: 0xEC } + - { offsetInCU: 0x2FA0, offset: 0x27DAA, size: 0x8, addend: 0x0, symName: __ZZN2bq13appender_base23get_config_name_by_typeENS0_13appender_typeEE16TYPE_CONFIG_NAME, symObjAddr: 0x27450, symBinAddr: 0x68A28, symSize: 0x0 } + - { offsetInCU: 0x3560, offset: 0x2836A, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_baseC2Ev, symObjAddr: 0x0, symBinAddr: 0x1FF30, symSize: 0x88 } + - { offsetInCU: 0x35DC, offset: 0x283E6, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base5clearEv, symObjAddr: 0xE0, symBinAddr: 0x1FFB8, symSize: 0xAC } + - { offsetInCU: 0x3676, offset: 0x28480, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_baseD2Ev, symObjAddr: 0x18C, symBinAddr: 0x20064, symSize: 0xB0 } + - { offsetInCU: 0x36F7, offset: 0x28501, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_baseD1Ev, symObjAddr: 0x294, symBinAddr: 0x20114, symSize: 0x14 } + - { offsetInCU: 0x3721, offset: 0x2852B, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_baseD0Ev, symObjAddr: 0x2A8, symBinAddr: 0x20128, symSize: 0xC } + - { offsetInCU: 0x374B, offset: 0x28555, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base10set_enableEb, symObjAddr: 0x3D4, symBinAddr: 0x20220, symSize: 0x2C } + - { offsetInCU: 0x377F, offset: 0x28589, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base10get_enableEv, symObjAddr: 0x400, symBinAddr: 0x2024C, symSize: 0x1C } + - { offsetInCU: 0x37A5, offset: 0x285AF, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE5clearEv, symObjAddr: 0x494, symBinAddr: 0x20268, symSize: 0x6C } + - { offsetInCU: 0x389A, offset: 0x286A4, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE, symObjAddr: 0x500, symBinAddr: 0x202D4, symSize: 0x81C } + - { offsetInCU: 0x3B34, offset: 0x2893E, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE18equals_ignore_caseERKS1_, symObjAddr: 0xFC8, symBinAddr: 0x20AF0, symSize: 0x150 } + - { offsetInCU: 0x3B95, offset: 0x2899F, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_11string_baseIcEELm0EEixEm, symObjAddr: 0x1200, symBinAddr: 0x20C40, symSize: 0x7C } + - { offsetInCU: 0x3BCA, offset: 0x289D4, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE10begin_withERKS1_, symObjAddr: 0x1468, symBinAddr: 0x20CBC, symSize: 0xB8 } + - { offsetInCU: 0x3C67, offset: 0x28A71, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base3logERKNS_16log_entry_handleE, symObjAddr: 0x1558, symBinAddr: 0x20D74, symSize: 0x138 } + - { offsetInCU: 0x3D42, offset: 0x28B4C, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorIhE8destructEPhm, symObjAddr: 0x2774, symBinAddr: 0x20EAC, symSize: 0x2C } + - { offsetInCU: 0x3D72, offset: 0x28B7C, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorIhE15destructor_implIhNS1_23trivial_destructor_typeEE8destructEPhm, symObjAddr: 0x27A0, symBinAddr: 0x20ED8, symSize: 0x14 } + - { offsetInCU: 0x3DA2, offset: 0x28BAC, size: 0x8, addend: 0x0, symName: __Z7toupperi, symObjAddr: 0x2B4C, symBinAddr: 0x20EEC, symSize: 0x24 } + - { offsetInCU: 0x3F24, offset: 0x28D2E, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIhLm0EE6insertIJRhEEEvNS_21array_iterator_inlineIhS1_EEDpOT_, symObjAddr: 0x37A0, symBinAddr: 0x20F10, symSize: 0xB38 } + - { offsetInCU: 0x4678, offset: 0x29482, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIhE8destructEPh, symObjAddr: 0x42EC, symBinAddr: 0x21A5C, symSize: 0x24 } + - { offsetInCU: 0x469A, offset: 0x294A4, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIhE15destructor_implIhNS1_23trivial_destructor_typeEE8destructEPh, symObjAddr: 0x4310, symBinAddr: 0x21A80, symSize: 0x10 } + - { offsetInCU: 0x26, offset: 0x29500, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacks17register_callbackEPFvyiiPKciE, symObjAddr: 0x0, symBinAddr: 0x21AF0, symSize: 0x60 } + - { offsetInCU: 0x30AF, offset: 0x2C589, size: 0x8, addend: 0x0, symName: __ZN2bqneIPFvyiiPKciEbLb0ELb0EEEbRKNS_17hash_map_iteratorIT_T0_XT1_EEERKNS5_IS6_S7_XT2_EEE, symObjAddr: 0x274, symBinAddr: 0x21D04, symSize: 0x34 } + - { offsetInCU: 0x310F, offset: 0x2C5E9, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIiEEOT_RNS_16remove_referenceIS1_E4typeE, symObjAddr: 0x2220, symBinAddr: 0x233C8, symSize: 0x14 } + - { offsetInCU: 0x3144, offset: 0x2C61E, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRPFvyiiPKciEEEONS_16remove_referenceIT_E4typeEOS7_, symObjAddr: 0x4170, symBinAddr: 0x251C4, symSize: 0x14 } + - { offsetInCU: 0x3225, offset: 0x2C6FF, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRKPFvyiiPKciEEEOT_RNS_16remove_referenceIS7_E4typeE, symObjAddr: 0x58A8, symBinAddr: 0x25E14, symSize: 0x14 } + - { offsetInCU: 0x325A, offset: 0x2C734, size: 0x8, addend: 0x0, symName: __ZN2bqeqIPFvyiiPKciEbLb0ELb0EEEbRKNS_17hash_map_iteratorIT_T0_XT1_EEERKNS5_IS6_S7_XT2_EEE, symObjAddr: 0x58BC, symBinAddr: 0x25E28, symSize: 0xE4 } + - { offsetInCU: 0x3818, offset: 0x2CCF2, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console16get_console_miscEv, symObjAddr: 0x1258, symBinAddr: 0x22CBC, symSize: 0x94 } + - { offsetInCU: 0x383C, offset: 0x2CD16, size: 0x8, addend: 0x0, symName: __ZZN2bq16appender_console16get_console_miscEvE5misc_, symObjAddr: 0x2C8B8, symBinAddr: 0x68A90, symSize: 0x0 } + - { offsetInCU: 0x3861, offset: 0x2CD3B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE12expand_nodesEj, symObjAddr: 0x3BD8, symBinAddr: 0x24CCC, symSize: 0x2C4 } + - { offsetInCU: 0x3E82, offset: 0x2D35C, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacks17register_callbackEPFvyiiPKciE, symObjAddr: 0x0, symBinAddr: 0x21AF0, symSize: 0x60 } + - { offsetInCU: 0x3EC4, offset: 0x2D39E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbEixERKS4_, symObjAddr: 0x94, symBinAddr: 0x21B50, symSize: 0x90 } + - { offsetInCU: 0x3F06, offset: 0x2D3E0, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacks14erase_callbackEPFvyiiPKciE, symObjAddr: 0x150, symBinAddr: 0x21BE0, symSize: 0xB0 } + - { offsetInCU: 0x3F56, offset: 0x2D430, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE4findERKS4_, symObjAddr: 0x200, symBinAddr: 0x21C90, symSize: 0x74 } + - { offsetInCU: 0x3F98, offset: 0x2D472, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE3endEv, symObjAddr: 0x2A8, symBinAddr: 0x21D38, symSize: 0x38 } + - { offsetInCU: 0x3FBF, offset: 0x2D499, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5eraseENS_17hash_map_iteratorIS4_bLb0EEE, symObjAddr: 0x2E0, symBinAddr: 0x21D70, symSize: 0x228 } + - { offsetInCU: 0x4030, offset: 0x2D50A, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacks4callEyiiPKci, symObjAddr: 0x508, symBinAddr: 0x21F98, symSize: 0xE8 } + - { offsetInCU: 0x40E2, offset: 0x2D5BC, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE8is_emptyEv, symObjAddr: 0x5F0, symBinAddr: 0x22080, symSize: 0x24 } + - { offsetInCU: 0x4108, offset: 0x2D5E2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5beginEv, symObjAddr: 0x614, symBinAddr: 0x220A4, symSize: 0x84 } + - { offsetInCU: 0x412F, offset: 0x2D609, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIPFvyiiPKciEbLb0EEptEv, symObjAddr: 0x698, symBinAddr: 0x22128, symSize: 0x34 } + - { offsetInCU: 0x4155, offset: 0x2D62F, size: 0x8, addend: 0x0, symName: __ZNK2bq7kv_pairIPFvyiiPKciEbE3keyEv, symObjAddr: 0x6CC, symBinAddr: 0x2215C, symSize: 0x14 } + - { offsetInCU: 0x4179, offset: 0x2D653, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIPFvyiiPKciEbLb0EEppEv, symObjAddr: 0x6E0, symBinAddr: 0x22170, symSize: 0x88 } + - { offsetInCU: 0x419F, offset: 0x2D679, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console19console_ring_bufferC2Ev, symObjAddr: 0x768, symBinAddr: 0x221F8, symSize: 0x80 } + - { offsetInCU: 0x41C9, offset: 0x2D6A3, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18spin_lock_rw_crazyC1Ev, symObjAddr: 0x7E8, symBinAddr: 0x22278, symSize: 0x2C } + - { offsetInCU: 0x41F1, offset: 0x2D6CB, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer23set_thread_check_enableEb, symObjAddr: 0x814, symBinAddr: 0x222A4, symSize: 0x4C } + - { offsetInCU: 0x4223, offset: 0x2D6FD, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console19console_ring_bufferC1Ev, symObjAddr: 0x860, symBinAddr: 0x222F0, symSize: 0x2C } + - { offsetInCU: 0x424D, offset: 0x2D727, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console19console_ring_bufferD2Ev, symObjAddr: 0x88C, symBinAddr: 0x2231C, symSize: 0x84 } + - { offsetInCU: 0x4277, offset: 0x2D751, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console19console_ring_bufferD1Ev, symObjAddr: 0x910, symBinAddr: 0x223A0, symSize: 0x2C } + - { offsetInCU: 0x42D3, offset: 0x2D7AD, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console19console_ring_buffer6insertEyiiPKci, symObjAddr: 0x93C, symBinAddr: 0x223CC, symSize: 0x5AC } + - { offsetInCU: 0x44B3, offset: 0x2D98D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform27scoped_spin_lock_read_crazyC1ERNS0_18spin_lock_rw_crazyE, symObjAddr: 0xEE8, symBinAddr: 0x22978, symSize: 0x34 } + - { offsetInCU: 0x44E9, offset: 0x2D9C3, size: 0x8, addend: 0x0, symName: __ZN2bq8platform27scoped_spin_lock_read_crazyD1Ev, symObjAddr: 0xF1C, symBinAddr: 0x229AC, symSize: 0x2C } + - { offsetInCU: 0x4516, offset: 0x2D9F0, size: 0x8, addend: 0x0, symName: __ZN2bq8platform28scoped_spin_lock_write_crazyC1ERNS0_18spin_lock_rw_crazyE, symObjAddr: 0xF48, symBinAddr: 0x229D8, symSize: 0x34 } + - { offsetInCU: 0x454C, offset: 0x2DA26, size: 0x8, addend: 0x0, symName: __ZN2bq8platform28scoped_spin_lock_write_crazyD1Ev, symObjAddr: 0xF7C, symBinAddr: 0x22A0C, symSize: 0x2C } + - { offsetInCU: 0x4574, offset: 0x2DA4E, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console19console_ring_buffer16fetch_and_removeEPFvPvyiiPKciEPKv, symObjAddr: 0xFA8, symBinAddr: 0x22A38, symSize: 0x1A0 } + - { offsetInCU: 0x4651, offset: 0x2DB2B, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console19console_ring_buffer10set_enableEb, symObjAddr: 0x1148, symBinAddr: 0x22BD8, symSize: 0x2C } + - { offsetInCU: 0x4685, offset: 0x2DB5F, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_consoleC2Ev, symObjAddr: 0x1174, symBinAddr: 0x22C04, symSize: 0x5C } + - { offsetInCU: 0x46AF, offset: 0x2DB89, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_consoleC1Ev, symObjAddr: 0x11FC, symBinAddr: 0x22C60, symSize: 0x2C } + - { offsetInCU: 0x46D9, offset: 0x2DBB3, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console25register_console_callbackEPFvyiiPKciE, symObjAddr: 0x1228, symBinAddr: 0x22C8C, symSize: 0x30 } + - { offsetInCU: 0x46FD, offset: 0x2DBD7, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console27unregister_console_callbackEPFvyiiPKciE, symObjAddr: 0x12EC, symBinAddr: 0x22D50, symSize: 0x30 } + - { offsetInCU: 0x473A, offset: 0x2DC14, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console25set_console_buffer_enableEb, symObjAddr: 0x131C, symBinAddr: 0x22D80, symSize: 0x40 } + - { offsetInCU: 0x477B, offset: 0x2DC55, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console36fetch_and_remove_from_console_bufferEPFvPvyiiPKciEPKv, symObjAddr: 0x135C, symBinAddr: 0x22DC0, symSize: 0x40 } + - { offsetInCU: 0x47CA, offset: 0x2DCA4, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console9init_implERKNS_14property_valueE, symObjAddr: 0x139C, symBinAddr: 0x22E00, symSize: 0xB4 } + - { offsetInCU: 0x4853, offset: 0x2DD2D, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console8log_implERKNS_16log_entry_handleE, symObjAddr: 0x1630, symBinAddr: 0x22EB4, symSize: 0x2FC } + - { offsetInCU: 0x49BE, offset: 0x2DE98, size: 0x8, addend: 0x0, symName: __ZN2bq6layout16get_formated_strEv, symObjAddr: 0x1C18, symBinAddr: 0x231B0, symSize: 0x58 } + - { offsetInCU: 0x49E2, offset: 0x2DEBC, size: 0x8, addend: 0x0, symName: __ZNK2bq6layout20get_formated_str_lenEv, symObjAddr: 0x1C70, symBinAddr: 0x23208, symSize: 0x18 } + - { offsetInCU: 0x4A06, offset: 0x2DEE0, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console19console_static_miscC1Ev, symObjAddr: 0x200C, symBinAddr: 0x23220, symSize: 0x2C } + - { offsetInCU: 0x4A30, offset: 0x2DF0A, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console19console_static_miscD1Ev, symObjAddr: 0x2038, symBinAddr: 0x2324C, symSize: 0x2C } + - { offsetInCU: 0x4A5A, offset: 0x2DF34, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_consoleD1Ev, symObjAddr: 0x2064, symBinAddr: 0x23278, symSize: 0x2C } + - { offsetInCU: 0x4A84, offset: 0x2DF5E, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_consoleD0Ev, symObjAddr: 0x2090, symBinAddr: 0x232A4, symSize: 0x30 } + - { offsetInCU: 0x4AAE, offset: 0x2DF88, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18spin_lock_rw_crazyC2Ev, symObjAddr: 0x212C, symBinAddr: 0x232D4, symSize: 0x48 } + - { offsetInCU: 0x4ADB, offset: 0x2DFB5, size: 0x8, addend: 0x0, symName: __ZN2bq19cache_friendly_typeINS_8platform6atomicIiEEEC1IiEEOT_, symObjAddr: 0x2174, symBinAddr: 0x2331C, symSize: 0x34 } + - { offsetInCU: 0x4B1A, offset: 0x2DFF4, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIyEC1ERKy, symObjAddr: 0x21A8, symBinAddr: 0x23350, symSize: 0x34 } + - { offsetInCU: 0x4B50, offset: 0x2E02A, size: 0x8, addend: 0x0, symName: __ZN2bq19cache_friendly_typeINS_8platform6atomicIiEEEC2IiEEOT_, symObjAddr: 0x21DC, symBinAddr: 0x23384, symSize: 0x44 } + - { offsetInCU: 0x4B8F, offset: 0x2E069, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIiEC1ERKi, symObjAddr: 0x2234, symBinAddr: 0x233DC, symSize: 0x34 } + - { offsetInCU: 0x4BC5, offset: 0x2E09F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIiEC2ERKi, symObjAddr: 0x2268, symBinAddr: 0x23410, symSize: 0x34 } + - { offsetInCU: 0x4BFB, offset: 0x2E0D5, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12_atomic_baseIiLm4EEC2ERKi, symObjAddr: 0x229C, symBinAddr: 0x23444, symSize: 0x24 } + - { offsetInCU: 0x4C31, offset: 0x2E10B, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIyEC2ERKy, symObjAddr: 0x22C0, symBinAddr: 0x23468, symSize: 0x34 } + - { offsetInCU: 0x4C67, offset: 0x2E141, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12_atomic_baseIyLm8EEC2ERKy, symObjAddr: 0x22F4, symBinAddr: 0x2349C, symSize: 0x24 } + - { offsetInCU: 0x4C9D, offset: 0x2E177, size: 0x8, addend: 0x0, symName: __ZN2bq8platform27scoped_spin_lock_read_crazyC2ERNS0_18spin_lock_rw_crazyE, symObjAddr: 0x2318, symBinAddr: 0x234C0, symSize: 0x3C } + - { offsetInCU: 0x4D83, offset: 0x2E25D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18spin_lock_rw_crazy9read_lockEv, symObjAddr: 0x2354, symBinAddr: 0x234FC, symSize: 0x3A4 } + - { offsetInCU: 0x4F5D, offset: 0x2E437, size: 0x8, addend: 0x0, symName: __ZN2bq19cache_friendly_typeINS_8platform6atomicIiEEE3getEv, symObjAddr: 0x26F8, symBinAddr: 0x238A0, symSize: 0x18 } + - { offsetInCU: 0x4F81, offset: 0x2E45B, size: 0x8, addend: 0x0, symName: __ZN2bq8platform27scoped_spin_lock_read_crazyD2Ev, symObjAddr: 0x2710, symBinAddr: 0x238B8, symSize: 0x30 } + - { offsetInCU: 0x4FA9, offset: 0x2E483, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18spin_lock_rw_crazy11read_unlockEv, symObjAddr: 0x2740, symBinAddr: 0x238E8, symSize: 0x2E8 } + - { offsetInCU: 0x50AE, offset: 0x2E588, size: 0x8, addend: 0x0, symName: __ZN2bq8platform28scoped_spin_lock_write_crazyC2ERNS0_18spin_lock_rw_crazyE, symObjAddr: 0x2A28, symBinAddr: 0x23BD0, symSize: 0x3C } + - { offsetInCU: 0x520A, offset: 0x2E6E4, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18spin_lock_rw_crazy10write_lockEv, symObjAddr: 0x2A64, symBinAddr: 0x23C0C, symSize: 0x800 } + - { offsetInCU: 0x5756, offset: 0x2EC30, size: 0x8, addend: 0x0, symName: __ZN2bq8platform28scoped_spin_lock_write_crazyD2Ev, symObjAddr: 0x3264, symBinAddr: 0x2440C, symSize: 0x30 } + - { offsetInCU: 0x57D2, offset: 0x2ECAC, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18spin_lock_rw_crazy12write_unlockEv, symObjAddr: 0x3294, symBinAddr: 0x2443C, symSize: 0x1C0 } + - { offsetInCU: 0x5A13, offset: 0x2EEED, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIcLm0EE8is_emptyEv, symObjAddr: 0x3508, symBinAddr: 0x245FC, symSize: 0x24 } + - { offsetInCU: 0x5A3A, offset: 0x2EF14, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm0EEixEm, symObjAddr: 0x352C, symBinAddr: 0x24620, symSize: 0x74 } + - { offsetInCU: 0x5A6F, offset: 0x2EF49, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console19console_static_miscC2Ev, symObjAddr: 0x35A0, symBinAddr: 0x24694, symSize: 0x38 } + - { offsetInCU: 0x5A99, offset: 0x2EF73, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacksC1Ev, symObjAddr: 0x35D8, symBinAddr: 0x246CC, symSize: 0x2C } + - { offsetInCU: 0x5AC3, offset: 0x2EF9D, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacksC2Ev, symObjAddr: 0x3604, symBinAddr: 0x246F8, symSize: 0x3C } + - { offsetInCU: 0x5AED, offset: 0x2EFC7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbEC1Ej, symObjAddr: 0x3640, symBinAddr: 0x24734, symSize: 0x34 } + - { offsetInCU: 0x5B25, offset: 0x2EFFF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbEC2Ej, symObjAddr: 0x3674, symBinAddr: 0x24768, symSize: 0x78 } + - { offsetInCU: 0x5B5D, offset: 0x2F037, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headIjEC1Ev, symObjAddr: 0x36EC, symBinAddr: 0x247E0, symSize: 0x2C } + - { offsetInCU: 0x5B85, offset: 0x2F05F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headINS5_10value_nodeEEC1Ev, symObjAddr: 0x3718, symBinAddr: 0x2480C, symSize: 0x2C } + - { offsetInCU: 0x5BAD, offset: 0x2F087, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj, symObjAddr: 0x3744, symBinAddr: 0x24838, symSize: 0x494 } + - { offsetInCU: 0x5CB2, offset: 0x2F18C, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE12buckets_sizeEv, symObjAddr: 0x3E9C, symBinAddr: 0x24F90, symSize: 0x24 } + - { offsetInCU: 0x5CD8, offset: 0x2F1B2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headIjEC2Ev, symObjAddr: 0x3EC0, symBinAddr: 0x24FB4, symSize: 0x1C } + - { offsetInCU: 0x5D00, offset: 0x2F1DA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headINS5_10value_nodeEEC2Ev, symObjAddr: 0x3EDC, symBinAddr: 0x24FD0, symSize: 0x1C } + - { offsetInCU: 0x5D28, offset: 0x2F202, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headIjE4sizeEv, symObjAddr: 0x3F7C, symBinAddr: 0x24FEC, symSize: 0x18 } + - { offsetInCU: 0x5D4C, offset: 0x2F226, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headIjEixEj, symObjAddr: 0x3F94, symBinAddr: 0x25004, symSize: 0x74 } + - { offsetInCU: 0x5D7E, offset: 0x2F258, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headINS5_10value_nodeEEixEj, symObjAddr: 0x4008, symBinAddr: 0x25078, symSize: 0x74 } + - { offsetInCU: 0x5DB0, offset: 0x2F28A, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE23get_bucket_index_by_keyERKS4_, symObjAddr: 0x407C, symBinAddr: 0x250EC, symSize: 0x44 } + - { offsetInCU: 0x5DF5, offset: 0x2F2CF, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE4sizeEv, symObjAddr: 0x40C0, symBinAddr: 0x25130, symSize: 0x18 } + - { offsetInCU: 0x5E1B, offset: 0x2F2F5, size: 0x8, addend: 0x0, symName: __ZN2bq28pointer_type_hash_calculatorIPFvyiiPKciEE9hash_codeERKS4_, symObjAddr: 0x40D8, symBinAddr: 0x25148, symSize: 0x28 } + - { offsetInCU: 0x5E59, offset: 0x2F333, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE24get_bucket_index_by_hashEy, symObjAddr: 0x4100, symBinAddr: 0x25170, symSize: 0x3C } + - { offsetInCU: 0x5E8F, offset: 0x2F369, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headINS5_10value_nodeEE4sizeEv, symObjAddr: 0x413C, symBinAddr: 0x251AC, symSize: 0x18 } + - { offsetInCU: 0x5EB3, offset: 0x2F38D, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIPFvyiiPKciEbLb0EEdeEv, symObjAddr: 0x4184, symBinAddr: 0x251D8, symSize: 0x34 } + - { offsetInCU: 0x5ED9, offset: 0x2F3B3, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE8destructERNS_17hash_map_iteratorIS4_bLb0EEE, symObjAddr: 0x41CC, symBinAddr: 0x2520C, symSize: 0x3C } + - { offsetInCU: 0x5F0F, offset: 0x2F3E9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE12destruct_keyERNS_17hash_map_iteratorIS4_bLb0EEE, symObjAddr: 0x4208, symBinAddr: 0x25248, symSize: 0x2C } + - { offsetInCU: 0x5F45, offset: 0x2F41F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14destruct_valueERNS_17hash_map_iteratorIS4_bLb0EEE, symObjAddr: 0x4234, symBinAddr: 0x25274, symSize: 0x30 } + - { offsetInCU: 0x5F7F, offset: 0x2F459, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIPFvyiiPKciEE8destructEPS4_, symObjAddr: 0x4264, symBinAddr: 0x252A4, symSize: 0x24 } + - { offsetInCU: 0x5FA1, offset: 0x2F47B, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIPFvyiiPKciEE15destructor_implIS4_NS5_23trivial_destructor_typeEE8destructEPS4_, symObjAddr: 0x4288, symBinAddr: 0x252C8, symSize: 0x10 } + - { offsetInCU: 0x5FC3, offset: 0x2F49D, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIbE8destructEPb, symObjAddr: 0x4298, symBinAddr: 0x252D8, symSize: 0x24 } + - { offsetInCU: 0x5FE5, offset: 0x2F4BF, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairIPFvyiiPKciEbE5valueEv, symObjAddr: 0x42BC, symBinAddr: 0x252FC, symSize: 0x18 } + - { offsetInCU: 0x6009, offset: 0x2F4E3, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIbE15destructor_implIbNS1_23trivial_destructor_typeEE8destructEPb, symObjAddr: 0x42D4, symBinAddr: 0x25314, symSize: 0x10 } + - { offsetInCU: 0x602B, offset: 0x2F505, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console19console_static_miscD2Ev, symObjAddr: 0x42E4, symBinAddr: 0x25324, symSize: 0x38 } + - { offsetInCU: 0x6055, offset: 0x2F52F, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacksD1Ev, symObjAddr: 0x431C, symBinAddr: 0x2535C, symSize: 0x2C } + - { offsetInCU: 0x607F, offset: 0x2F559, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacksD2Ev, symObjAddr: 0x4348, symBinAddr: 0x25388, symSize: 0x38 } + - { offsetInCU: 0x60A9, offset: 0x2F583, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbED1Ev, symObjAddr: 0x4380, symBinAddr: 0x253C0, symSize: 0x2C } + - { offsetInCU: 0x60D3, offset: 0x2F5AD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbED2Ev, symObjAddr: 0x43AC, symBinAddr: 0x253EC, symSize: 0x2C } + - { offsetInCU: 0x60FD, offset: 0x2F5D7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5resetEv, symObjAddr: 0x43D8, symBinAddr: 0x25418, symSize: 0xF8 } + - { offsetInCU: 0x6141, offset: 0x2F61B, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_consoleD2Ev, symObjAddr: 0x44D0, symBinAddr: 0x25510, symSize: 0x54 } + - { offsetInCU: 0x616B, offset: 0x2F645, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorIPFvyiiPKciEbLb0EEcvbEv, symObjAddr: 0x4F24, symBinAddr: 0x25564, symSize: 0x44 } + - { offsetInCU: 0x6191, offset: 0x2F66B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE3addERKS4_, symObjAddr: 0x4F68, symBinAddr: 0x255A8, symSize: 0x64 } + - { offsetInCU: 0x61D3, offset: 0x2F6AD, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE20iterator_legal_checkERKNS_17hash_map_iteratorIS4_bLb1EEE, symObjAddr: 0x4FCC, symBinAddr: 0x2560C, symSize: 0x124 } + - { offsetInCU: 0x620D, offset: 0x2F6E7, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIPFvyiiPKciEbLb1EEC1ILb0EEERKNS0_IS4_bXT_EEE, symObjAddr: 0x50F0, symBinAddr: 0x25730, symSize: 0x34 } + - { offsetInCU: 0x624D, offset: 0x2F727, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headINS5_10value_nodeEEixEj, symObjAddr: 0x5124, symBinAddr: 0x25764, symSize: 0x74 } + - { offsetInCU: 0x627F, offset: 0x2F759, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIPFvyiiPKciEbLb1EEC2ILb0EEERKNS0_IS4_bXT_EEE, symObjAddr: 0x5198, symBinAddr: 0x257D8, symSize: 0x3C } + - { offsetInCU: 0x62BF, offset: 0x2F799, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_, symObjAddr: 0x51D4, symBinAddr: 0x25814, symSize: 0x304 } + - { offsetInCU: 0x63B7, offset: 0x2F891, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE15construct_valueERNS_17hash_map_iteratorIS4_bLb0EEE, symObjAddr: 0x54D8, symBinAddr: 0x25B18, symSize: 0x5C } + - { offsetInCU: 0x63EC, offset: 0x2F8C6, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE32find_index_and_bucket_idx_by_keyERKS4_, symObjAddr: 0x5534, symBinAddr: 0x25B74, symSize: 0x120 } + - { offsetInCU: 0x647A, offset: 0x2F954, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE10nodes_sizeEv, symObjAddr: 0x5680, symBinAddr: 0x25C94, symSize: 0x28 } + - { offsetInCU: 0x64A0, offset: 0x2F97A, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIPFvyiiPKciEbLb0EEC1EPNS_8hash_mapIS4_bEEjj, symObjAddr: 0x56A8, symBinAddr: 0x25CBC, symSize: 0x44 } + - { offsetInCU: 0x64F2, offset: 0x2F9CC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE13construct_keyIRKS4_EEvRNS_17hash_map_iteratorIS4_bLb0EEEOT_, symObjAddr: 0x56EC, symBinAddr: 0x25D00, symSize: 0x68 } + - { offsetInCU: 0x653E, offset: 0x2FA18, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE22value_node_buffer_headIjEixEj, symObjAddr: 0x5754, symBinAddr: 0x25D68, symSize: 0x74 } + - { offsetInCU: 0x6570, offset: 0x2FA4A, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIPFvyiiPKciEbLb0EEC2EPNS_8hash_mapIS4_bEEjj, symObjAddr: 0x5870, symBinAddr: 0x25DDC, symSize: 0x38 } + - { offsetInCU: 0x65C2, offset: 0x2FA9C, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIPFvyiiPKciEbE19get_next_node_indexEj, symObjAddr: 0x59A0, symBinAddr: 0x25F0C, symSize: 0x68 } + - { offsetInCU: 0x26, offset: 0x2FB66, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseD2Ev, symObjAddr: 0x0, symBinAddr: 0x25F74, symSize: 0x80 } + - { offsetInCU: 0x3497, offset: 0x32FD7, size: 0x8, addend: 0x0, symName: __ZN2bq10make_tupleIJRyRNS_11string_baseIcEEyEEENS_5tupleIJDpNS_5decayIT_E4typeEEEEDpOS7_, symObjAddr: 0x34DC, symBinAddr: 0x28960, symSize: 0x60 } + - { offsetInCU: 0x34F8, offset: 0x33038, size: 0x8, addend: 0x0, symName: __ZN2bqneINS_5tupleIJyNS_11string_baseIcEEyEEES4_NS_5arrayIS4_Lm0EEES6_EEbRKNS_14array_iteratorIT_T1_EERKNS7_IT0_T2_EE, symObjAddr: 0x368C, symBinAddr: 0x28B10, symSize: 0xA0 } + - { offsetInCU: 0x3556, offset: 0x33096, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm1EJyNS_11string_baseIcEEyEEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERS7_, symObjAddr: 0x3744, symBinAddr: 0x28BC8, symSize: 0x28 } + - { offsetInCU: 0x35A3, offset: 0x330E3, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm2EJyNS_11string_baseIcEEyEEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERS7_, symObjAddr: 0x376C, symBinAddr: 0x28BF0, symSize: 0x28 } + - { offsetInCU: 0x35F0, offset: 0x33130, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm0EJyNS_11string_baseIcEEyEEERKNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERKS7_, symObjAddr: 0x480C, symBinAddr: 0x28E68, symSize: 0x24 } + - { offsetInCU: 0x363D, offset: 0x3317D, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyIhEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0x4FE0, symBinAddr: 0x29234, symSize: 0x40 } + - { offsetInCU: 0x36A1, offset: 0x331E1, size: 0x8, addend: 0x0, symName: __ZN2bqgeIhhNS_5arrayIhLm0EEES2_EEbRKNS_14array_iteratorIT_T1_EERKNS3_IT0_T2_EE, symObjAddr: 0x50F8, symBinAddr: 0x29274, symSize: 0xA0 } + - { offsetInCU: 0x36FF, offset: 0x3323F, size: 0x8, addend: 0x0, symName: __ZN2bqltIhhNS_5arrayIhLm0EEES2_EEbRKNS_14array_iteratorIT_T1_EERKNS3_IT0_T2_EE, symObjAddr: 0x5198, symBinAddr: 0x29314, symSize: 0xA0 } + - { offsetInCU: 0x375D, offset: 0x3329D, size: 0x8, addend: 0x0, symName: __ZN2bqmiIhhNS_5arrayIhLm0EEES2_EENS_14array_iteratorIT_T1_E9diff_typeERKS6_RKNS3_IT0_T2_EE, symObjAddr: 0x5238, symBinAddr: 0x293B4, symSize: 0x98 } + - { offsetInCU: 0x37BB, offset: 0x332FB, size: 0x8, addend: 0x0, symName: __ZN2bq20_inner_backward_moveIhEENS_9enable_ifIXaasr2bq28is_trivially_move_assignableIT_EE5valuesr2bq28is_trivially_copy_assignableIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0x5320, symBinAddr: 0x2944C, symSize: 0x3C } + - { offsetInCU: 0x38C6, offset: 0x33406, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRyEEOT_RNS_16remove_referenceIS2_E4typeE, symObjAddr: 0x57CC, symBinAddr: 0x29668, symSize: 0x14 } + - { offsetInCU: 0x38FB, offset: 0x3343B, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIyEEOT_RNS_16remove_referenceIS1_E4typeE, symObjAddr: 0x57F4, symBinAddr: 0x2967C, symSize: 0x14 } + - { offsetInCU: 0x3930, offset: 0x33470, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_5tupleIJyNS_11string_baseIcEEyEEEEEOT_RNS_16remove_referenceIS5_E4typeE, symObjAddr: 0x5D60, symBinAddr: 0x29B68, symSize: 0x14 } + - { offsetInCU: 0x3965, offset: 0x334A5, size: 0x8, addend: 0x0, symName: __ZN2bqgeINS_5tupleIJyNS_11string_baseIcEEyEEES4_NS_5arrayIS4_Lm0EEES6_EEbRKNS_14array_iteratorIT_T1_EERKNS7_IT0_T2_EE, symObjAddr: 0x5D74, symBinAddr: 0x29B7C, symSize: 0xA0 } + - { offsetInCU: 0x39C3, offset: 0x33503, size: 0x8, addend: 0x0, symName: __ZN2bqleINS_5tupleIJyNS_11string_baseIcEEyEEES4_NS_5arrayIS4_Lm0EEES6_EEbRKNS_14array_iteratorIT_T1_EERKNS7_IT0_T2_EE, symObjAddr: 0x5E14, symBinAddr: 0x29C1C, symSize: 0xA0 } + - { offsetInCU: 0x3A21, offset: 0x33561, size: 0x8, addend: 0x0, symName: __ZN2bqmiINS_5tupleIJyNS_11string_baseIcEEyEEES4_NS_5arrayIS4_Lm0EEES6_EENS_14array_iteratorIT_T1_E9diff_typeERKSA_RKNS7_IT0_T2_EE, symObjAddr: 0x5EB4, symBinAddr: 0x29CBC, symSize: 0xA0 } + - { offsetInCU: 0x3A7F, offset: 0x335BF, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveINS_5tupleIJyNS_11string_baseIcEEyEEEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS6_EE5valueEvE4typeEPS6_S9_m, symObjAddr: 0x61E0, symBinAddr: 0x29FE8, symSize: 0x140 } + - { offsetInCU: 0x3B3A, offset: 0x3367A, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyINS_5tupleIJyNS_11string_baseIcEEyEEEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS6_EE5valueEvE4typeEPS6_S9_m, symObjAddr: 0x63C8, symBinAddr: 0x2A1D0, symSize: 0xCC } + - { offsetInCU: 0x3BAC, offset: 0x336EC, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_5tupleIJyNS_11string_baseIcEEyEEEEEONS_16remove_referenceIT_E4typeEOS7_, symObjAddr: 0x64B0, symBinAddr: 0x2A29C, symSize: 0x14 } + - { offsetInCU: 0x46CE, offset: 0x3420E, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseD2Ev, symObjAddr: 0x0, symBinAddr: 0x25F74, symSize: 0x80 } + - { offsetInCU: 0x46F8, offset: 0x34238, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EED1Ev, symObjAddr: 0x80, symBinAddr: 0x25FF4, symSize: 0x2C } + - { offsetInCU: 0x4722, offset: 0x34262, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseD1Ev, symObjAddr: 0xD8, symBinAddr: 0x26020, symSize: 0x14 } + - { offsetInCU: 0x474C, offset: 0x3428C, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseD0Ev, symObjAddr: 0xEC, symBinAddr: 0x26034, symSize: 0xC } + - { offsetInCU: 0x47AD, offset: 0x342ED, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base11flush_cacheEv, symObjAddr: 0x114, symBinAddr: 0x26040, symSize: 0x3F4 } + - { offsetInCU: 0x48D6, offset: 0x34416, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIhLm0EE4sizeEv, symObjAddr: 0x508, symBinAddr: 0x26434, symSize: 0x18 } + - { offsetInCU: 0x48FD, offset: 0x3443D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE5beginEv, symObjAddr: 0x520, symBinAddr: 0x2644C, symSize: 0x34 } + - { offsetInCU: 0x4924, offset: 0x34464, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIhNS_5arrayIhLm0EEEEplEm, symObjAddr: 0x554, symBinAddr: 0x26480, symSize: 0x44 } + - { offsetInCU: 0x4966, offset: 0x344A6, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIhNS_5arrayIhLm0EEEEcvPhEv, symObjAddr: 0x598, symBinAddr: 0x264C4, symSize: 0x18 } + - { offsetInCU: 0x498C, offset: 0x344CC, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE5clearEv, symObjAddr: 0x5B0, symBinAddr: 0x264DC, symSize: 0x6C } + - { offsetInCU: 0x49B3, offset: 0x344F3, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIhLm0EE8capacityEv, symObjAddr: 0x61C, symBinAddr: 0x26548, symSize: 0x18 } + - { offsetInCU: 0x49DA, offset: 0x3451A, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE6shrinkEv, symObjAddr: 0x634, symBinAddr: 0x26560, symSize: 0x30 } + - { offsetInCU: 0x4A01, offset: 0x34541, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base29open_new_indexed_file_by_nameEv, symObjAddr: 0x698, symBinAddr: 0x26590, symSize: 0x5DC } + - { offsetInCU: 0x4C34, offset: 0x34774, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8flush_ioEv, symObjAddr: 0xC74, symBinAddr: 0x26B6C, symSize: 0x1C8 } + - { offsetInCU: 0x4CF5, offset: 0x34835, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE, symObjAddr: 0xE3C, symBinAddr: 0x26D34, symSize: 0x4F4 } + - { offsetInCU: 0x4D91, offset: 0x348D1, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvyEv, symObjAddr: 0x161C, symBinAddr: 0x27228, symSize: 0x30 } + - { offsetInCU: 0x4DB5, offset: 0x348F5, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8log_implERKNS_16log_entry_handleE, symObjAddr: 0x164C, symBinAddr: 0x27258, symSize: 0x2C } + - { offsetInCU: 0x4E02, offset: 0x34942, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base19refresh_file_handleERKNS_16log_entry_handleE, symObjAddr: 0x1678, symBinAddr: 0x27284, symSize: 0x228 } + - { offsetInCU: 0x4F2B, offset: 0x34A6B, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base12on_file_openEb, symObjAddr: 0x18A0, symBinAddr: 0x274AC, symSize: 0x18 } + - { offsetInCU: 0x4F5F, offset: 0x34A9F, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23seek_read_file_absoluteEm, symObjAddr: 0x18B8, symBinAddr: 0x274C4, symSize: 0x48 } + - { offsetInCU: 0x4F93, offset: 0x34AD3, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base16clear_read_cacheEv, symObjAddr: 0x1900, symBinAddr: 0x2750C, symSize: 0x5C } + - { offsetInCU: 0x4FB9, offset: 0x34AF9, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21seek_read_file_offsetEi, symObjAddr: 0x195C, symBinAddr: 0x27568, symSize: 0xAC } + - { offsetInCU: 0x4FFB, offset: 0x34B3B, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base15read_with_cacheEm, symObjAddr: 0x1A08, symBinAddr: 0x27614, symSize: 0x250 } + - { offsetInCU: 0x5086, offset: 0x34BC6, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE5eraseENS_14array_iteratorIhS1_EEm, symObjAddr: 0x1C58, symBinAddr: 0x27864, symSize: 0x238 } + - { offsetInCU: 0x50E9, offset: 0x34C29, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE18fill_uninitializedIhEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm, symObjAddr: 0x1EE8, symBinAddr: 0x27A9C, symSize: 0xBC } + - { offsetInCU: 0x5127, offset: 0x34C67, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base22write_with_cache_allocEm, symObjAddr: 0x1FFC, symBinAddr: 0x27B58, symSize: 0xD4 } + - { offsetInCU: 0x516B, offset: 0x34CAB, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE3endEv, symObjAddr: 0x20D0, symBinAddr: 0x27C2C, symSize: 0x3C } + - { offsetInCU: 0x5192, offset: 0x34CD2, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23write_with_cache_commitERKNS0_23write_with_cache_handleE, symObjAddr: 0x210C, symBinAddr: 0x27C68, symSize: 0x184 } + - { offsetInCU: 0x51C6, offset: 0x34D06, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE8pop_backEm, symObjAddr: 0x2290, symBinAddr: 0x27DEC, symSize: 0xAC } + - { offsetInCU: 0x51FB, offset: 0x34D3B, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21get_current_file_sizeEv, symObjAddr: 0x2354, symBinAddr: 0x27E98, symSize: 0x18 } + - { offsetInCU: 0x5221, offset: 0x34D61, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base16is_file_oversizeEv, symObjAddr: 0x236C, symBinAddr: 0x27EB0, symSize: 0x7C } + - { offsetInCU: 0x5248, offset: 0x34D88, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base30open_file_with_write_exclusiveERKNS_11string_baseIcEE, symObjAddr: 0x23E8, symBinAddr: 0x27F2C, symSize: 0x194 } + - { offsetInCU: 0x5332, offset: 0x34E72, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23clear_all_expired_filesEv, symObjAddr: 0x257C, symBinAddr: 0x280C0, symSize: 0x29C } + - { offsetInCU: 0x543C, offset: 0x34F7C, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21clear_all_limit_filesEv, symObjAddr: 0x2818, symBinAddr: 0x2835C, symSize: 0x438 } + - { offsetInCU: 0x5618, offset: 0x35158, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE8end_withERKS1_, symObjAddr: 0x2FBC, symBinAddr: 0x28794, symSize: 0xE8 } + - { offsetInCU: 0x564E, offset: 0x3518E, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base18parse_file_contextC1ERKNS_11string_baseIcEE, symObjAddr: 0x33CC, symBinAddr: 0x2887C, symSize: 0x34 } + - { offsetInCU: 0x5683, offset: 0x351C3, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base18parse_file_contextD1Ev, symObjAddr: 0x3400, symBinAddr: 0x288B0, symSize: 0x2C } + - { offsetInCU: 0x56AD, offset: 0x351ED, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EEC1Ev, symObjAddr: 0x3458, symBinAddr: 0x288DC, symSize: 0x2C } + - { offsetInCU: 0x56D7, offset: 0x35217, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE9push_backIJS4_EEEmDpOT_, symObjAddr: 0x3484, symBinAddr: 0x28908, symSize: 0x58 } + - { offsetInCU: 0x5718, offset: 0x35258, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJyNS_11string_baseIcEEyEED1Ev, symObjAddr: 0x353C, symBinAddr: 0x289C0, symSize: 0x2C } + - { offsetInCU: 0x5742, offset: 0x35282, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE4sizeEv, symObjAddr: 0x3568, symBinAddr: 0x289EC, symSize: 0x18 } + - { offsetInCU: 0x5769, offset: 0x352A9, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EEixEm, symObjAddr: 0x3580, symBinAddr: 0x28A04, symSize: 0x7C } + - { offsetInCU: 0x57A9, offset: 0x352E9, size: 0x8, addend: 0x0, symName: '__ZZN2bq18appender_file_base21clear_all_limit_filesEvENK3$_0cvPFiPKvS3_EEv', symObjAddr: 0x35FC, symBinAddr: 0x28A80, symSize: 0x18 } + - { offsetInCU: 0x57D4, offset: 0x35314, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE5beginEv, symObjAddr: 0x3614, symBinAddr: 0x28A98, symSize: 0x34 } + - { offsetInCU: 0x57FB, offset: 0x3533B, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE3endEv, symObjAddr: 0x3648, symBinAddr: 0x28ACC, symSize: 0x44 } + - { offsetInCU: 0x5822, offset: 0x35362, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEdeEv, symObjAddr: 0x372C, symBinAddr: 0x28BB0, symSize: 0x18 } + - { offsetInCU: 0x5848, offset: 0x35388, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEppEv, symObjAddr: 0x3794, symBinAddr: 0x28C18, symSize: 0x20 } + - { offsetInCU: 0x586E, offset: 0x353AE, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EED1Ev, symObjAddr: 0x37B4, symBinAddr: 0x28C38, symSize: 0x2C } + - { offsetInCU: 0x5898, offset: 0x353D8, size: 0x8, addend: 0x0, symName: __ZNK2bq18appender_file_base18parse_file_context21log_parse_fail_reasonEPKc, symObjAddr: 0x37E0, symBinAddr: 0x28C64, symSize: 0x58 } + - { offsetInCU: 0x58CF, offset: 0x3540F, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base18parse_file_contextC2ERKNS_11string_baseIcEE, symObjAddr: 0x3AB0, symBinAddr: 0x28CBC, symSize: 0x38 } + - { offsetInCU: 0x5904, offset: 0x35444, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base18parse_file_contextD2Ev, symObjAddr: 0x4640, symBinAddr: 0x28CF4, symSize: 0x2C } + - { offsetInCU: 0x592F, offset: 0x3546F, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJyNS_11string_baseIcEEyEED2Ev, symObjAddr: 0x466C, symBinAddr: 0x28D20, symSize: 0x30 } + - { offsetInCU: 0x595A, offset: 0x3549A, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEEyEED2Ev, symObjAddr: 0x469C, symBinAddr: 0x28D50, symSize: 0x2C } + - { offsetInCU: 0x5985, offset: 0x354C5, size: 0x8, addend: 0x0, symName: '__ZZN2bq18appender_file_base21clear_all_limit_filesEvEN3$_08__invokeEPKvS3_', symObjAddr: 0x4720, symBinAddr: 0x28D7C, symSize: 0x30 } + - { offsetInCU: 0x59BB, offset: 0x354FB, size: 0x8, addend: 0x0, symName: '__ZZN2bq18appender_file_base21clear_all_limit_filesEvENK3$_0clEPKvS3_', symObjAddr: 0x4750, symBinAddr: 0x28DAC, symSize: 0xBC } + - { offsetInCU: 0x5A1E, offset: 0x3555E, size: 0x8, addend: 0x0, symName: __ZNK2bq26__tuple_element_value_implILm2EyLb0EE3getEv, symObjAddr: 0x4830, symBinAddr: 0x28E8C, symSize: 0x14 } + - { offsetInCU: 0x5A42, offset: 0x35582, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0EyLb0EE3getEv, symObjAddr: 0x4858, symBinAddr: 0x28EA0, symSize: 0x14 } + - { offsetInCU: 0x5A66, offset: 0x355A6, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EED2Ev, symObjAddr: 0x4C20, symBinAddr: 0x28EB4, symSize: 0x2C } + - { offsetInCU: 0x5A90, offset: 0x355D0, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE5resetIhEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x4C4C, symBinAddr: 0x28EE0, symSize: 0x5C } + - { offsetInCU: 0x5ACA, offset: 0x3560A, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIhNS_5arrayIhLm0EEEEC1IhEEPT_PKS2_, symObjAddr: 0x4CA8, symBinAddr: 0x28F3C, symSize: 0x3C } + - { offsetInCU: 0x5B19, offset: 0x35659, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIhNS_5arrayIhLm0EEEEC2IhEEPT_PKS2_, symObjAddr: 0x4CE4, symBinAddr: 0x28F78, symSize: 0x70 } + - { offsetInCU: 0x5B68, offset: 0x356A8, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIhNS_5arrayIhLm0EEEEpLEi, symObjAddr: 0x4D54, symBinAddr: 0x28FE8, symSize: 0x28 } + - { offsetInCU: 0x5B9C, offset: 0x356DC, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE12set_capacityEmb, symObjAddr: 0x4DBC, symBinAddr: 0x29010, symSize: 0x224 } + - { offsetInCU: 0x5C0B, offset: 0x3574B, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIhNS_5arrayIhLm0EEEEptEv, symObjAddr: 0x535C, symBinAddr: 0x29488, symSize: 0x18 } + - { offsetInCU: 0x5C31, offset: 0x35771, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EEC2Ev, symObjAddr: 0x5604, symBinAddr: 0x294A0, symSize: 0x20 } + - { offsetInCU: 0x5C5B, offset: 0x3579B, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EED2Ev, symObjAddr: 0x5624, symBinAddr: 0x294C0, symSize: 0x2C } + - { offsetInCU: 0x5C85, offset: 0x357C5, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE5resetIS4_EENS_9enable_ifIXntsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x5650, symBinAddr: 0x294EC, symSize: 0x6C } + - { offsetInCU: 0x5CBB, offset: 0x357FB, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_5tupleIJyNS_11string_baseIcEEyEEEE8destructEPS4_m, symObjAddr: 0x56BC, symBinAddr: 0x29558, symSize: 0x2C } + - { offsetInCU: 0x5CEB, offset: 0x3582B, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_5tupleIJyNS_11string_baseIcEEyEEEE15destructor_implIS4_NS5_27non_trivial_destructor_typeEE8destructEPS4_m, symObjAddr: 0x56E8, symBinAddr: 0x29584, symSize: 0x84 } + - { offsetInCU: 0x5D37, offset: 0x35877, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_5tupleIJyNS_11string_baseIcEEyEEEE8destructEPS4_, symObjAddr: 0x576C, symBinAddr: 0x29608, symSize: 0x24 } + - { offsetInCU: 0x5D59, offset: 0x35899, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_5tupleIJyNS_11string_baseIcEEyEEEE15destructor_implIS4_NS5_27non_trivial_destructor_typeEE8destructEPS4_, symObjAddr: 0x5790, symBinAddr: 0x2962C, symSize: 0x3C } + - { offsetInCU: 0x5D80, offset: 0x358C0, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJyNS_11string_baseIcEEyEEC1IRyJRS2_yEEEOT_DpOT0_, symObjAddr: 0x5808, symBinAddr: 0x29690, symSize: 0x44 } + - { offsetInCU: 0x5DEE, offset: 0x3592E, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJyNS_11string_baseIcEEyEEC2IRyJRS2_yEEEOT_DpOT0_, symObjAddr: 0x584C, symBinAddr: 0x296D4, symSize: 0x70 } + - { offsetInCU: 0x5E5C, offset: 0x3599C, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm2EyEC2IRyEEOT_, symObjAddr: 0x58BC, symBinAddr: 0x29744, symSize: 0x40 } + - { offsetInCU: 0x5E9C, offset: 0x359DC, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEEyEEC2IRS2_JyEEEOT_DpOT0_, symObjAddr: 0x58FC, symBinAddr: 0x29784, symSize: 0x5C } + - { offsetInCU: 0x5EF6, offset: 0x35A36, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm2EyLb0EEC2IRyEEOT_, symObjAddr: 0x5958, symBinAddr: 0x297E0, symSize: 0x40 } + - { offsetInCU: 0x5F36, offset: 0x35A76, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJyEEC2IyJEEEOT_DpOT0_, symObjAddr: 0x59D8, symBinAddr: 0x29820, symSize: 0x40 } + - { offsetInCU: 0x5F7C, offset: 0x35ABC, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm0EyEC2IyEEOT_, symObjAddr: 0x5A58, symBinAddr: 0x29860, symSize: 0x40 } + - { offsetInCU: 0x5FBC, offset: 0x35AFC, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0EyLb0EEC2IyEEOT_, symObjAddr: 0x5A98, symBinAddr: 0x298A0, symSize: 0x40 } + - { offsetInCU: 0x5FFB, offset: 0x35B3B, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_, symObjAddr: 0x5AD8, symBinAddr: 0x298E0, symSize: 0x288 } + - { offsetInCU: 0x6089, offset: 0x35BC9, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE12set_capacityEmb, symObjAddr: 0x5F54, symBinAddr: 0x29D5C, symSize: 0x230 } + - { offsetInCU: 0x60F8, offset: 0x35C38, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEplEm, symObjAddr: 0x6184, symBinAddr: 0x29F8C, symSize: 0x44 } + - { offsetInCU: 0x613A, offset: 0x35C7A, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEcvPS4_Ev, symObjAddr: 0x61C8, symBinAddr: 0x29FD0, symSize: 0x18 } + - { offsetInCU: 0x6160, offset: 0x35CA0, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE8destructENS_14array_iteratorIS4_S5_EE, symObjAddr: 0x6320, symBinAddr: 0x2A128, symSize: 0x34 } + - { offsetInCU: 0x6195, offset: 0x35CD5, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE9constructIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_, symObjAddr: 0x6354, symBinAddr: 0x2A15C, symSize: 0x74 } + - { offsetInCU: 0x61F3, offset: 0x35D33, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJyNS_11string_baseIcEEyEEC1EOS3_, symObjAddr: 0x64C4, symBinAddr: 0x2A2B0, symSize: 0x34 } + - { offsetInCU: 0x6227, offset: 0x35D67, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJyNS_11string_baseIcEEyEEC2EOS3_, symObjAddr: 0x64F8, symBinAddr: 0x2A2E4, symSize: 0x48 } + - { offsetInCU: 0x6260, offset: 0x35DA0, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEEyEEC2EOS3_, symObjAddr: 0x6540, symBinAddr: 0x2A32C, symSize: 0x40 } + - { offsetInCU: 0x6293, offset: 0x35DD3, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEpLEi, symObjAddr: 0x65E8, symBinAddr: 0x2A36C, symSize: 0x30 } + - { offsetInCU: 0x62CC, offset: 0x35E0C, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJyNS_11string_baseIcEEyEEaSEOS3_, symObjAddr: 0x6618, symBinAddr: 0x2A39C, symSize: 0x48 } + - { offsetInCU: 0x6301, offset: 0x35E41, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEEyEEaSEOS3_, symObjAddr: 0x6660, symBinAddr: 0x2A3E4, symSize: 0x40 } + - { offsetInCU: 0x6331, offset: 0x35E71, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEptEv, symObjAddr: 0x6708, symBinAddr: 0x2A424, symSize: 0x18 } + - { offsetInCU: 0x635C, offset: 0x35E9C, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEC1IS4_EEPT_PKS6_, symObjAddr: 0x6720, symBinAddr: 0x2A43C, symSize: 0x3C } + - { offsetInCU: 0x63AB, offset: 0x35EEB, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_5tupleIJyNS_11string_baseIcEEyEEENS_5arrayIS4_Lm0EEEEC2IS4_EEPT_PKS6_, symObjAddr: 0x675C, symBinAddr: 0x2A478, symSize: 0x70 } + - { offsetInCU: 0x26, offset: 0x36020, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binary20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0x0, symBinAddr: 0x2A4E8, symSize: 0x44C } + - { offsetInCU: 0x32F8, offset: 0x392F2, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binary20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0x0, symBinAddr: 0x2A4E8, symSize: 0x44C } + - { offsetInCU: 0x345F, offset: 0x39459, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binary12on_file_openEb, symObjAddr: 0x550, symBinAddr: 0x2A934, symSize: 0x54 } + - { offsetInCU: 0x3493, offset: 0x3948D, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binary17write_file_headerEv, symObjAddr: 0x5A4, symBinAddr: 0x2A988, symSize: 0x19C } + - { offsetInCU: 0x351C, offset: 0x39516, size: 0x8, addend: 0x0, symName: __ZNK2bq18appender_file_base23write_with_cache_handle4dataEv, symObjAddr: 0x740, symBinAddr: 0x2AB24, symSize: 0x18 } + - { offsetInCU: 0x3540, offset: 0x3953A, size: 0x8, addend: 0x0, symName: __ZNK2bq18appender_file_base23write_with_cache_handle13allcoated_lenEv, symObjAddr: 0x758, symBinAddr: 0x2AB3C, symSize: 0x18 } + - { offsetInCU: 0x3564, offset: 0x3955E, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binaryD1Ev, symObjAddr: 0x770, symBinAddr: 0x2AB54, symSize: 0x14 } + - { offsetInCU: 0x358E, offset: 0x39588, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binaryD0Ev, symObjAddr: 0x784, symBinAddr: 0x2AB68, symSize: 0xC } + - { offsetInCU: 0x57, offset: 0x39613, size: 0x8, addend: 0x0, symName: __ZN2bqL28log_file_ext_name_compressedE, symObjAddr: 0x496F0, symBinAddr: 0x68B90, symSize: 0x0 } + - { offsetInCU: 0x4396, offset: 0x3D952, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm0EJbNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERS9_, symObjAddr: 0x1710, symBinAddr: 0x2C1F0, symSize: 0x24 } + - { offsetInCU: 0x43E3, offset: 0x3D99F, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm1EJbNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERS9_, symObjAddr: 0x1734, symBinAddr: 0x2C214, symSize: 0x28 } + - { offsetInCU: 0x4430, offset: 0x3D9EC, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm2EJbNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERS9_, symObjAddr: 0x175C, symBinAddr: 0x2C23C, symSize: 0x28 } + - { offsetInCU: 0x447D, offset: 0x3DA39, size: 0x8, addend: 0x0, symName: __ZN2bq10make_tupleIJbNS_24appender_file_compressed9item_typeERNS_18appender_file_base22read_with_cache_handleEEEENS_5tupleIJDpNS_5decayIT_E4typeEEEEDpOS8_, symObjAddr: 0x4E58, symBinAddr: 0x2F938, symSize: 0x5C } + - { offsetInCU: 0x44DE, offset: 0x3DA9A, size: 0x8, addend: 0x0, symName: __ZN2bq10make_tupleIJbRNS_24appender_file_compressed9item_typeERNS_18appender_file_base22read_with_cache_handleEEEENS_5tupleIJDpNS_5decayIT_E4typeEEEEDpOS9_, symObjAddr: 0x4EB4, symBinAddr: 0x2F994, symSize: 0x5C } + - { offsetInCU: 0x453F, offset: 0x3DAFB, size: 0x8, addend: 0x0, symName: __ZN2bq41calculate_hash_64_for_compressed_appenderILb0EEEyPKvm, symObjAddr: 0x4F10, symBinAddr: 0x2F9F0, symSize: 0x1B4 } + - { offsetInCU: 0x45F6, offset: 0x3DBB2, size: 0x8, addend: 0x0, symName: __ZN2bq41calculate_hash_64_for_compressed_appenderILb1EEEyPKvm, symObjAddr: 0xF57C, symBinAddr: 0x39F34, symSize: 0x1D8 } + - { offsetInCU: 0x4680, offset: 0x3DC3C, size: 0x8, addend: 0x0, symName: __ZN2bq7align_4Em, symObjAddr: 0xF78C, symBinAddr: 0x3A12C, symSize: 0x4C } + - { offsetInCU: 0x4758, offset: 0x3DD14, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIbEEOT_RNS_16remove_referenceIS1_E4typeE, symObjAddr: 0x1119C, symBinAddr: 0x3AC38, symSize: 0x14 } + - { offsetInCU: 0x478D, offset: 0x3DD49, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_24appender_file_compressed9item_typeEEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0x111B0, symBinAddr: 0x3AC4C, symSize: 0x14 } + - { offsetInCU: 0x47C2, offset: 0x3DD7E, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRNS_18appender_file_base22read_with_cache_handleEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x111C4, symBinAddr: 0x3AC60, symSize: 0x14 } + - { offsetInCU: 0x47F7, offset: 0x3DDB3, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRNS_24appender_file_compressed9item_typeEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x114AC, symBinAddr: 0x3AF48, symSize: 0x14 } + - { offsetInCU: 0x482C, offset: 0x3DDE8, size: 0x8, addend: 0x0, symName: __ZN2bq17is_addr_8_alignedEPKv, symObjAddr: 0x11650, symBinAddr: 0x3B0EC, symSize: 0x28 } + - { offsetInCU: 0x48CA, offset: 0x3DE86, size: 0x8, addend: 0x0, symName: __ZN2bq22__inner_hash_calculateIyyEENS_9enable_ifIXntoosr2bq7is_sameIT_fEE5valuesr2bq7is_sameIS2_dEE5valueET0_E4typeERKS2_, symObjAddr: 0x11BA0, symBinAddr: 0x3B28C, symSize: 0x24 } + - { offsetInCU: 0x493B, offset: 0x3DEF7, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRyEEONS_16remove_referenceIT_E4typeEOS3_, symObjAddr: 0x11D14, symBinAddr: 0x3B3D0, symSize: 0x14 } + - { offsetInCU: 0x4970, offset: 0x3DF2C, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRjEEONS_16remove_referenceIT_E4typeEOS3_, symObjAddr: 0x11D28, symBinAddr: 0x3B3E4, symSize: 0x14 } + - { offsetInCU: 0x49A5, offset: 0x3DF61, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRKyEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0x11D3C, symBinAddr: 0x3B3F8, symSize: 0x14 } + - { offsetInCU: 0x56B8, offset: 0x3EC74, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed9init_implERKNS_14property_valueE, symObjAddr: 0x0, symBinAddr: 0x2AB74, symSize: 0x74 } + - { offsetInCU: 0x5736, offset: 0x3ECF2, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed12on_file_openEb, symObjAddr: 0x74, symBinAddr: 0x2ABE8, symSize: 0x54 } + - { offsetInCU: 0x58DE, offset: 0x3EE9A, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv, symObjAddr: 0xC8, symBinAddr: 0x2AC3C, symSize: 0x918 } + - { offsetInCU: 0x5DE6, offset: 0x3F3A2, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed17get_file_ext_nameEv, symObjAddr: 0xA40, symBinAddr: 0x2B554, symSize: 0x3C } + - { offsetInCU: 0x5E0C, offset: 0x3F3C8, size: 0x8, addend: 0x0, symName: __ZNK2bq24appender_file_compressed25get_binary_format_versionEv, symObjAddr: 0xAB0, symBinAddr: 0x2B590, symSize: 0x14 } + - { offsetInCU: 0x5E7B, offset: 0x3F437, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0xAC4, symBinAddr: 0x2B5A4, symSize: 0x338 } + - { offsetInCU: 0x5F9E, offset: 0x3F55A, size: 0x8, addend: 0x0, symName: '__ZN2bq32_st_appender_file_exist_callbackIZNS_24appender_file_compressed20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextEE3$_0EC1ERKS5_', symObjAddr: 0xDFC, symBinAddr: 0x2B8DC, symSize: 0x34 } + - { offsetInCU: 0x6053, offset: 0x3F60F, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed14read_item_dataERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0xE30, symBinAddr: 0x2B910, symSize: 0x8BC } + - { offsetInCU: 0x662B, offset: 0x3FBE7, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE, symObjAddr: 0x1784, symBinAddr: 0x2C264, symSize: 0x2F70 } + - { offsetInCU: 0x7B1E, offset: 0x410DA, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed26parse_thread_info_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE, symObjAddr: 0x4718, symBinAddr: 0x2F1F8, symSize: 0x84 } + - { offsetInCU: 0x7BD8, offset: 0x41194, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed15parse_log_entryERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE, symObjAddr: 0x479C, symBinAddr: 0x2F27C, symSize: 0x66C } + - { offsetInCU: 0x7CCA, offset: 0x41286, size: 0x8, addend: 0x0, symName: '__ZN2bq32_st_appender_file_exist_callbackIZNS_24appender_file_compressed20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextEE3$_0ED1Ev', symObjAddr: 0x4E2C, symBinAddr: 0x2F90C, symSize: 0x2C } + - { offsetInCU: 0x7CF3, offset: 0x412AF, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed24get_format_template_hashENS_9log_levelEjy, symObjAddr: 0x50C4, symBinAddr: 0x2FBA4, symSize: 0x70 } + - { offsetInCU: 0x7D64, offset: 0x41320, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EEixEm, symObjAddr: 0x5210, symBinAddr: 0x2FC14, symSize: 0x74 } + - { offsetInCU: 0x7F50, offset: 0x4150C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE, symObjAddr: 0x52D0, symBinAddr: 0x2FC88, symSize: 0xA020 } + - { offsetInCU: 0xA398, offset: 0x43954, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23write_with_cache_handle14reset_used_lenEm, symObjAddr: 0xF76C, symBinAddr: 0x3A10C, symSize: 0x20 } + - { offsetInCU: 0xA3C9, offset: 0x43985, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD1Ev, symObjAddr: 0xF7D8, symBinAddr: 0x3A178, symSize: 0x2C } + - { offsetInCU: 0xA3F3, offset: 0x439AF, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD0Ev, symObjAddr: 0xF804, symBinAddr: 0x3A1A4, symSize: 0x30 } + - { offsetInCU: 0xA41E, offset: 0x439DA, size: 0x8, addend: 0x0, symName: __ZNK2bq24appender_file_compressed19get_appender_formatEv, symObjAddr: 0xF834, symBinAddr: 0x3A1D4, symSize: 0x14 } + - { offsetInCU: 0xA442, offset: 0x439FE, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm2EbLb0EE3getEv, symObjAddr: 0xF8FC, symBinAddr: 0x3A1E8, symSize: 0x14 } + - { offsetInCU: 0xA466, offset: 0x43A22, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm1ENS_24appender_file_compressed9item_typeELb0EE3getEv, symObjAddr: 0xF910, symBinAddr: 0x3A1FC, symSize: 0x14 } + - { offsetInCU: 0xA48A, offset: 0x43A46, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_18appender_file_base22read_with_cache_handleELb0EE3getEv, symObjAddr: 0xF924, symBinAddr: 0x3A210, symSize: 0x14 } + - { offsetInCU: 0xA50B, offset: 0x43AC7, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD2Ev, symObjAddr: 0xF938, symBinAddr: 0x3A224, symSize: 0x7A0 } + - { offsetInCU: 0xA9A3, offset: 0x43F5F, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binaryD2Ev, symObjAddr: 0x10104, symBinAddr: 0x3A9C4, symSize: 0x2C } + - { offsetInCU: 0xA9CE, offset: 0x43F8A, size: 0x8, addend: 0x0, symName: __ZN2bq15hash_map_inlineIyjE22value_node_buffer_headINS1_10value_nodeEEixEj, symObjAddr: 0x101E4, symBinAddr: 0x3A9F0, symSize: 0x74 } + - { offsetInCU: 0xA9FF, offset: 0x43FBB, size: 0x8, addend: 0x0, symName: __ZN2bq24hash_map_iterator_inlineIyjLb0EEC1EPNS_15hash_map_inlineIyjEEjj, symObjAddr: 0x10258, symBinAddr: 0x3AA64, symSize: 0x44 } + - { offsetInCU: 0xAA52, offset: 0x4400E, size: 0x8, addend: 0x0, symName: __ZN2bq24hash_map_iterator_inlineIyjLb0EEC2EPNS_15hash_map_inlineIyjEEjj, symObjAddr: 0x1029C, symBinAddr: 0x3AAA8, symSize: 0x38 } + - { offsetInCU: 0xAAA4, offset: 0x44060, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIyE8destructEPy, symObjAddr: 0x102D4, symBinAddr: 0x3AAE0, symSize: 0x24 } + - { offsetInCU: 0xAAC6, offset: 0x44082, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIyE15destructor_implIyNS1_23trivial_destructor_typeEE8destructEPy, symObjAddr: 0x102F8, symBinAddr: 0x3AB04, symSize: 0x10 } + - { offsetInCU: 0xAAE8, offset: 0x440A4, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIjE8destructEPj, symObjAddr: 0x10308, symBinAddr: 0x3AB14, symSize: 0x24 } + - { offsetInCU: 0xAB0A, offset: 0x440C6, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIjE15destructor_implIjNS1_23trivial_destructor_typeEE8destructEPj, symObjAddr: 0x1032C, symBinAddr: 0x3AB38, symSize: 0x10 } + - { offsetInCU: 0xAB2C, offset: 0x440E8, size: 0x8, addend: 0x0, symName: __ZNK2bq15hash_map_inlineIyjE22value_node_buffer_headINS1_10value_nodeEEixEj, symObjAddr: 0x1033C, symBinAddr: 0x3AB48, symSize: 0x74 } + - { offsetInCU: 0xAB5E, offset: 0x4411A, size: 0x8, addend: 0x0, symName: '__ZN2bq32_st_appender_file_exist_callbackIZNS_24appender_file_compressed20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextEE3$_0EC2ERKS5_', symObjAddr: 0x11120, symBinAddr: 0x3ABBC, symSize: 0x24 } + - { offsetInCU: 0xAB93, offset: 0x4414F, size: 0x8, addend: 0x0, symName: '__ZN2bq32_st_appender_file_exist_callbackIZNS_24appender_file_compressed20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextEE3$_0ED2Ev', symObjAddr: 0x11144, symBinAddr: 0x3ABE0, symSize: 0x2C } + - { offsetInCU: 0xABC0, offset: 0x4417C, size: 0x8, addend: 0x0, symName: '__ZZN2bq24appender_file_compressed20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextEENK3$_0clEv', symObjAddr: 0x11170, symBinAddr: 0x3AC0C, symSize: 0x2C } + - { offsetInCU: 0xABF2, offset: 0x441AE, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJbNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEC1IbJS2_RS4_EEEOT_DpOT0_, symObjAddr: 0x111D8, symBinAddr: 0x3AC74, symSize: 0x44 } + - { offsetInCU: 0xAC60, offset: 0x4421C, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJbNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEC2IbJS2_RS4_EEEOT_DpOT0_, symObjAddr: 0x1121C, symBinAddr: 0x3ACB8, symSize: 0x70 } + - { offsetInCU: 0xACCE, offset: 0x4428A, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm2EbEC2IbEEOT_, symObjAddr: 0x1128C, symBinAddr: 0x3AD28, symSize: 0x40 } + - { offsetInCU: 0xAD0E, offset: 0x442CA, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEC2IS2_JRS4_EEEOT_DpOT0_, symObjAddr: 0x112CC, symBinAddr: 0x3AD68, symSize: 0x5C } + - { offsetInCU: 0xAD68, offset: 0x44324, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm2EbLb0EEC2IbEEOT_, symObjAddr: 0x11328, symBinAddr: 0x3ADC4, symSize: 0x44 } + - { offsetInCU: 0xADA8, offset: 0x44364, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm1ENS_24appender_file_compressed9item_typeEEC2IS2_EEOT_, symObjAddr: 0x1136C, symBinAddr: 0x3AE08, symSize: 0x40 } + - { offsetInCU: 0xADE8, offset: 0x443A4, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_18appender_file_base22read_with_cache_handleEEEC2IRS2_JEEEOT_DpOT0_, symObjAddr: 0x113AC, symBinAddr: 0x3AE48, symSize: 0x40 } + - { offsetInCU: 0xAE2E, offset: 0x443EA, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm1ENS_24appender_file_compressed9item_typeELb0EEC2IS2_EEOT_, symObjAddr: 0x113EC, symBinAddr: 0x3AE88, symSize: 0x40 } + - { offsetInCU: 0xAE6E, offset: 0x4442A, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm0ENS_18appender_file_base22read_with_cache_handleEEC2IRS2_EEOT_, symObjAddr: 0x1142C, symBinAddr: 0x3AEC8, symSize: 0x40 } + - { offsetInCU: 0xAEAE, offset: 0x4446A, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_18appender_file_base22read_with_cache_handleELb0EEC2IRS2_EEOT_, symObjAddr: 0x1146C, symBinAddr: 0x3AF08, symSize: 0x40 } + - { offsetInCU: 0xAEEE, offset: 0x444AA, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJbNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEC1IbJRS2_RS4_EEEOT_DpOT0_, symObjAddr: 0x114C0, symBinAddr: 0x3AF5C, symSize: 0x44 } + - { offsetInCU: 0xAF5C, offset: 0x44518, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJbNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEC2IbJRS2_RS4_EEEOT_DpOT0_, symObjAddr: 0x11504, symBinAddr: 0x3AFA0, symSize: 0x70 } + - { offsetInCU: 0xAFCA, offset: 0x44586, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_24appender_file_compressed9item_typeENS_18appender_file_base22read_with_cache_handleEEEC2IRS2_JRS4_EEEOT_DpOT0_, symObjAddr: 0x11574, symBinAddr: 0x3B010, symSize: 0x5C } + - { offsetInCU: 0xB024, offset: 0x445E0, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm1ENS_24appender_file_compressed9item_typeEEC2IRS2_EEOT_, symObjAddr: 0x115D0, symBinAddr: 0x3B06C, symSize: 0x40 } + - { offsetInCU: 0xB064, offset: 0x44620, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm1ENS_24appender_file_compressed9item_typeELb0EEC2IRS2_EEOT_, symObjAddr: 0x11610, symBinAddr: 0x3B0AC, symSize: 0x40 } + - { offsetInCU: 0xB0A5, offset: 0x44661, size: 0x8, addend: 0x0, symName: __ZN2bq17data_value_helperIyLb0EE14get_data_valueEPKv, symObjAddr: 0x11678, symBinAddr: 0x3B114, symSize: 0x20 } + - { offsetInCU: 0xB0D5, offset: 0x44691, size: 0x8, addend: 0x0, symName: __ZN2bq17data_value_helperIjLb0EE14get_data_valueEPKv, symObjAddr: 0x11698, symBinAddr: 0x3B134, symSize: 0x20 } + - { offsetInCU: 0xB104, offset: 0x446C0, size: 0x8, addend: 0x0, symName: __ZN2bq24hash_map_iterator_inlineIyjLb1EEC1ILb0EEERKNS0_IyjXT_EEE, symObjAddr: 0x119E4, symBinAddr: 0x3B154, symSize: 0x34 } + - { offsetInCU: 0xB145, offset: 0x44701, size: 0x8, addend: 0x0, symName: __ZNK2bq15hash_map_inlineIyjE22value_node_buffer_headINS1_10value_nodeEE4sizeEv, symObjAddr: 0x11A18, symBinAddr: 0x3B188, symSize: 0x18 } + - { offsetInCU: 0xB169, offset: 0x44725, size: 0x8, addend: 0x0, symName: __ZN2bq24hash_map_iterator_inlineIyjLb1EEC2ILb0EEERKNS0_IyjXT_EEE, symObjAddr: 0x11A30, symBinAddr: 0x3B1A0, symSize: 0x3C } + - { offsetInCU: 0xB1A9, offset: 0x44765, size: 0x8, addend: 0x0, symName: __ZN2bq15hash_map_inlineIyjE22value_node_buffer_headIjEixEj, symObjAddr: 0x11A6C, symBinAddr: 0x3B1DC, symSize: 0x74 } + - { offsetInCU: 0xB1DB, offset: 0x44797, size: 0x8, addend: 0x0, symName: __ZNK2bq15hash_map_inlineIyjE22value_node_buffer_headIjE4sizeEv, symObjAddr: 0x11AE0, symBinAddr: 0x3B250, symSize: 0x18 } + - { offsetInCU: 0xB1FF, offset: 0x447BB, size: 0x8, addend: 0x0, symName: __ZN2bq27number_type_hash_calculatorIyE9hash_codeERKy, symObjAddr: 0x11B7C, symBinAddr: 0x3B268, symSize: 0x24 } + - { offsetInCU: 0xB221, offset: 0x447DD, size: 0x8, addend: 0x0, symName: __ZN2bq28integer_type_hash_calculatorIyE9hash_codeERKy, symObjAddr: 0x11BC4, symBinAddr: 0x3B2B0, symSize: 0x18 } + - { offsetInCU: 0xB243, offset: 0x447FF, size: 0x8, addend: 0x0, symName: __ZNK2bq15hash_map_inlineIyjE22value_node_buffer_headIjEixEj, symObjAddr: 0x11BDC, symBinAddr: 0x3B2C8, symSize: 0x74 } + - { offsetInCU: 0xB274, offset: 0x44830, size: 0x8, addend: 0x0, symName: __ZN2bq14kv_pair_inlineIjjEC1IRjS3_EEOT_OT0_, symObjAddr: 0x11C50, symBinAddr: 0x3B33C, symSize: 0x3C } + - { offsetInCU: 0xB2CA, offset: 0x44886, size: 0x8, addend: 0x0, symName: __ZN2bq14kv_pair_inlineIjjEC2IRjS3_EEOT_OT0_, symObjAddr: 0x11C8C, symBinAddr: 0x3B378, symSize: 0x58 } + - { offsetInCU: 0xB321, offset: 0x448DD, size: 0x8, addend: 0x0, symName: __ZN2bq17data_value_helperIyLb1EE14get_data_valueEPKv, symObjAddr: 0x11D50, symBinAddr: 0x3B40C, symSize: 0x18 } + - { offsetInCU: 0xB343, offset: 0x448FF, size: 0x8, addend: 0x0, symName: __ZN2bq17data_value_helperIjLb1EE14get_data_valueEPKv, symObjAddr: 0x11D68, symBinAddr: 0x3B424, symSize: 0x18 } + - { offsetInCU: 0x57, offset: 0x44A21, size: 0x8, addend: 0x0, symName: __ZN2bqL21log_file_ext_name_rawE, symObjAddr: 0x12E70, symBinAddr: 0x68BA8, symSize: 0x0 } + - { offsetInCU: 0x22F1, offset: 0x46CBB, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_raw8log_implERKNS_16log_entry_handleE, symObjAddr: 0x0, symBinAddr: 0x3B498, symSize: 0xE0 } + - { offsetInCU: 0x2389, offset: 0x46D53, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_raw17get_file_ext_nameEv, symObjAddr: 0x158, symBinAddr: 0x3B578, symSize: 0x3C } + - { offsetInCU: 0x23AF, offset: 0x46D79, size: 0x8, addend: 0x0, symName: __ZNK2bq17appender_file_raw25get_binary_format_versionEv, symObjAddr: 0x1C8, symBinAddr: 0x3B5B4, symSize: 0x14 } + - { offsetInCU: 0x23D5, offset: 0x46D9F, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawD1Ev, symObjAddr: 0x1DC, symBinAddr: 0x3B5C8, symSize: 0x2C } + - { offsetInCU: 0x23FF, offset: 0x46DC9, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawD0Ev, symObjAddr: 0x208, symBinAddr: 0x3B5F4, symSize: 0x30 } + - { offsetInCU: 0x2429, offset: 0x46DF3, size: 0x8, addend: 0x0, symName: __ZNK2bq17appender_file_raw19get_appender_formatEv, symObjAddr: 0x238, symBinAddr: 0x3B624, symSize: 0x14 } + - { offsetInCU: 0x244D, offset: 0x46E17, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawD2Ev, symObjAddr: 0x300, symBinAddr: 0x3B638, symSize: 0x2C } + - { offsetInCU: 0x57, offset: 0x46EA2, size: 0x8, addend: 0x0, symName: __ZN2bqL22log_file_ext_name_textE, symObjAddr: 0x1C3F8, symBinAddr: 0x68BC0, symSize: 0x0 } + - { offsetInCU: 0x328E, offset: 0x4A0D9, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text8log_implERKNS_16log_entry_handleE, symObjAddr: 0x0, symBinAddr: 0x3B6C0, symSize: 0x140 } + - { offsetInCU: 0x3317, offset: 0x4A162, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0x1C8, symBinAddr: 0x3B800, symSize: 0x1C } + - { offsetInCU: 0x334B, offset: 0x4A196, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text12on_file_openEb, symObjAddr: 0x1E4, symBinAddr: 0x3B81C, symSize: 0x38 } + - { offsetInCU: 0x337F, offset: 0x4A1CA, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text17get_file_ext_nameEv, symObjAddr: 0x27C, symBinAddr: 0x3B854, symSize: 0x3C } + - { offsetInCU: 0x33A5, offset: 0x4A1F0, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textD1Ev, symObjAddr: 0x2EC, symBinAddr: 0x3B890, symSize: 0x2C } + - { offsetInCU: 0x33CF, offset: 0x4A21A, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textD0Ev, symObjAddr: 0x318, symBinAddr: 0x3B8BC, symSize: 0x30 } + - { offsetInCU: 0x33F9, offset: 0x4A244, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textD2Ev, symObjAddr: 0x494, symBinAddr: 0x3B8EC, symSize: 0x2C } + - { offsetInCU: 0x26, offset: 0x4A299, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base4initERKNS_11file_handleE, symObjAddr: 0x0, symBinAddr: 0x3B974, symSize: 0x34C } + - { offsetInCU: 0x1945, offset: 0x4BBB8, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base4initERKNS_11file_handleE, symObjAddr: 0x0, symBinAddr: 0x3B974, symSize: 0x34C } + - { offsetInCU: 0x1A69, offset: 0x4BCDC, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base23seek_read_file_absoluteEm, symObjAddr: 0x34C, symBinAddr: 0x3BCC0, symSize: 0x54 } + - { offsetInCU: 0x1A9D, offset: 0x4BD10, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base15read_with_cacheEm, symObjAddr: 0x3A0, symBinAddr: 0x3BD14, symSize: 0x260 } + - { offsetInCU: 0x1B28, offset: 0x4BD9B, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base6decodeEv, symObjAddr: 0x7FC, symBinAddr: 0x3BF74, symSize: 0x2C } + - { offsetInCU: 0x1B4E, offset: 0x4BDC1, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base16clear_read_cacheEv, symObjAddr: 0x828, symBinAddr: 0x3BFA0, symSize: 0x5C } + - { offsetInCU: 0x1B74, offset: 0x4BDE7, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base21seek_read_file_offsetEi, symObjAddr: 0x884, symBinAddr: 0x3BFFC, symSize: 0xC4 } + - { offsetInCU: 0x1BB6, offset: 0x4BE29, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base29do_decode_by_log_entry_handleERKNS_16log_entry_handleE, symObjAddr: 0xE60, symBinAddr: 0x3C0C0, symSize: 0x140 } + - { offsetInCU: 0x26, offset: 0x4BE96, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed12init_privateEv, symObjAddr: 0x0, symBinAddr: 0x3C200, symSize: 0x48 } + - { offsetInCU: 0x2ACB, offset: 0x4E93B, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm0EJNS_22appender_decode_resultENS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERSA_, symObjAddr: 0xC4C, symBinAddr: 0x3CDD4, symSize: 0x24 } + - { offsetInCU: 0x2B18, offset: 0x4E988, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm1EJNS_22appender_decode_resultENS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERSA_, symObjAddr: 0xC70, symBinAddr: 0x3CDF8, symSize: 0x28 } + - { offsetInCU: 0x2B65, offset: 0x4E9D5, size: 0x8, addend: 0x0, symName: __ZN2bq3getILm2EJNS_22appender_decode_resultENS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEERNS_13tuple_elementIXT_ENS_5tupleIJDpT0_EEEE4typeERSA_, symObjAddr: 0xC98, symBinAddr: 0x3CE20, symSize: 0x28 } + - { offsetInCU: 0x2BB2, offset: 0x4EA22, size: 0x8, addend: 0x0, symName: __ZN2bq10make_tupleIJNS_22appender_decode_resultENS_24appender_file_compressed9item_typeERNS_21appender_decoder_base22read_with_cache_handleEEEENS_5tupleIJDpNS_5decayIT_E4typeEEEEDpOS9_, symObjAddr: 0x5844, symBinAddr: 0x419CC, symSize: 0x5C } + - { offsetInCU: 0x2C13, offset: 0x4EA83, size: 0x8, addend: 0x0, symName: __ZN2bq10make_tupleIJNS_22appender_decode_resultERNS_24appender_file_compressed9item_typeERNS_21appender_decoder_base22read_with_cache_handleEEEENS_5tupleIJDpNS_5decayIT_E4typeEEEEDpOSA_, symObjAddr: 0x58A0, symBinAddr: 0x41A28, symSize: 0x5C } + - { offsetInCU: 0x2C74, offset: 0x4EAE4, size: 0x8, addend: 0x0, symName: __ZN2bqeqIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb0ELb0EEEbRKNS_17hash_map_iteratorIT_T0_XT1_EEERKNS3_IS4_S5_XT2_EEE, symObjAddr: 0x5FA0, symBinAddr: 0x41CCC, symSize: 0xE4 } + - { offsetInCU: 0x2CD4, offset: 0x4EB44, size: 0x8, addend: 0x0, symName: __ZN2bqneIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb0ELb0EEEbRKNS_17hash_map_iteratorIT_T0_XT1_EEERKNS3_IS4_S5_XT2_EEE, symObjAddr: 0x6A9C, symBinAddr: 0x4231C, symSize: 0x34 } + - { offsetInCU: 0x2E40, offset: 0x4ECB0, size: 0x8, addend: 0x0, symName: __ZN2bqneIyNS_11string_baseIcEELb0ELb0EEEbRKNS_17hash_map_iteratorIT_T0_XT1_EEERKNS3_IS4_S5_XT2_EEE, symObjAddr: 0x74C0, symBinAddr: 0x42B38, symSize: 0x34 } + - { offsetInCU: 0x2EA0, offset: 0x4ED10, size: 0x8, addend: 0x0, symName: __ZN2bqeqIyNS_11string_baseIcEELb0ELb0EEEbRKNS_17hash_map_iteratorIT_T0_XT1_EEERKNS3_IS4_S5_XT2_EEE, symObjAddr: 0x76E8, symBinAddr: 0x42D60, symSize: 0xE4 } + - { offsetInCU: 0x2F00, offset: 0x4ED70, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_22appender_decode_resultEEEOT_RNS_16remove_referenceIS2_E4typeE, symObjAddr: 0x8198, symBinAddr: 0x43058, symSize: 0x14 } + - { offsetInCU: 0x2F35, offset: 0x4EDA5, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRNS_21appender_decoder_base22read_with_cache_handleEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x81C0, symBinAddr: 0x4306C, symSize: 0x14 } + - { offsetInCU: 0x2F6A, offset: 0x4EDDA, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_27appender_decoder_compressed20decoder_log_templateEEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0x8914, symBinAddr: 0x436AC, symSize: 0x14 } + - { offsetInCU: 0x2F9F, offset: 0x4EE0F, size: 0x8, addend: 0x0, symName: __ZN2bqgeINS_27appender_decoder_compressed20decoder_log_templateES2_NS_5arrayIS2_Lm0EEES4_EEbRKNS_14array_iteratorIT_T1_EERKNS5_IT0_T2_EE, symObjAddr: 0x8928, symBinAddr: 0x436C0, symSize: 0xA0 } + - { offsetInCU: 0x2FFD, offset: 0x4EE6D, size: 0x8, addend: 0x0, symName: __ZN2bqleINS_27appender_decoder_compressed20decoder_log_templateES2_NS_5arrayIS2_Lm0EEES4_EEbRKNS_14array_iteratorIT_T1_EERKNS5_IT0_T2_EE, symObjAddr: 0x89FC, symBinAddr: 0x43794, symSize: 0xA0 } + - { offsetInCU: 0x305B, offset: 0x4EECB, size: 0x8, addend: 0x0, symName: __ZN2bqmiINS_27appender_decoder_compressed20decoder_log_templateES2_NS_5arrayIS2_Lm0EEES4_EENS_14array_iteratorIT_T1_E9diff_typeERKS8_RKNS5_IT0_T2_EE, symObjAddr: 0x8A9C, symBinAddr: 0x43834, symSize: 0xA0 } + - { offsetInCU: 0x30B9, offset: 0x4EF29, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveINS_27appender_decoder_compressed20decoder_log_templateEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS4_EE5valueEvE4typeEPS4_S7_m, symObjAddr: 0x8DC8, symBinAddr: 0x43B60, symSize: 0x140 } + - { offsetInCU: 0x3174, offset: 0x4EFE4, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyINS_27appender_decoder_compressed20decoder_log_templateEEENS_9enable_ifIXntaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS4_EE5valueEvE4typeEPS4_S7_m, symObjAddr: 0x905C, symBinAddr: 0x43DF4, symSize: 0xCC } + - { offsetInCU: 0x31E6, offset: 0x4F056, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_27appender_decoder_compressed20decoder_log_templateEEEONS_16remove_referenceIT_E4typeEOS5_, symObjAddr: 0x9144, symBinAddr: 0x43EC0, symSize: 0x14 } + - { offsetInCU: 0x321B, offset: 0x4F08B, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_27appender_decoder_compressed28decoder_thread_info_templateEEEONS_16remove_referenceIT_E4typeEOS5_, symObjAddr: 0xA710, symBinAddr: 0x450D8, symSize: 0x14 } + - { offsetInCU: 0x375A, offset: 0x4F5CA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12expand_nodesEj, symObjAddr: 0xA028, symBinAddr: 0x44B90, symSize: 0x2F0 } + - { offsetInCU: 0x3D87, offset: 0x4FBF7, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed12init_privateEv, symObjAddr: 0x0, symBinAddr: 0x3C200, symSize: 0x48 } + - { offsetInCU: 0x3DAD, offset: 0x4FC1D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE5clearEv, symObjAddr: 0x48, symBinAddr: 0x3C248, symSize: 0x6C } + - { offsetInCU: 0x3DD4, offset: 0x4FC44, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE15set_expand_rateEf, symObjAddr: 0xB4, symBinAddr: 0x3C2B4, symSize: 0x20 } + - { offsetInCU: 0x3E52, offset: 0x4FCC2, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed14decode_privateEv, symObjAddr: 0xD4, symBinAddr: 0x3C2D4, symSize: 0x248 } + - { offsetInCU: 0x3FAD, offset: 0x4FE1D, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed14read_item_dataEv, symObjAddr: 0x394, symBinAddr: 0x3C51C, symSize: 0x894 } + - { offsetInCU: 0x4159, offset: 0x4FFC9, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed22parse_formate_templateERKNS_21appender_decoder_base22read_with_cache_handleE, symObjAddr: 0xCC0, symBinAddr: 0x3CE48, symSize: 0x82C } + - { offsetInCU: 0x434D, offset: 0x501BD, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed26parse_thread_info_templateERKNS_21appender_decoder_base22read_with_cache_handleE, symObjAddr: 0x1510, symBinAddr: 0x3D698, symSize: 0xD84 } + - { offsetInCU: 0x465D, offset: 0x504CD, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed15parse_log_entryERKNS_21appender_decoder_base22read_with_cache_handleE, symObjAddr: 0x22DC, symBinAddr: 0x3E464, symSize: 0x3410 } + - { offsetInCU: 0x4E15, offset: 0x50C85, size: 0x8, addend: 0x0, symName: __ZNK2bq27appender_decoder_compressed25get_binary_format_versionEv, symObjAddr: 0x5830, symBinAddr: 0x419B8, symSize: 0x14 } + - { offsetInCU: 0x4E3B, offset: 0x50CAB, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE9push_backIJS2_EEEmDpOT_, symObjAddr: 0x58FC, symBinAddr: 0x41A84, symSize: 0x58 } + - { offsetInCU: 0x4E80, offset: 0x50CF0, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed20decoder_log_templateC1Ev, symObjAddr: 0x5954, symBinAddr: 0x41ADC, symSize: 0x2C } + - { offsetInCU: 0x4EAA, offset: 0x50D1A, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed20decoder_log_templateD1Ev, symObjAddr: 0x5980, symBinAddr: 0x41B08, symSize: 0x2C } + - { offsetInCU: 0x4ED4, offset: 0x50D44, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EEixEm, symObjAddr: 0x59AC, symBinAddr: 0x41B34, symSize: 0x7C } + - { offsetInCU: 0x4F09, offset: 0x50D79, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE4sizeEv, symObjAddr: 0x5A28, symBinAddr: 0x41BB0, symSize: 0x18 } + - { offsetInCU: 0x4F30, offset: 0x50DA0, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEixERKy, symObjAddr: 0x5D4C, symBinAddr: 0x41BC8, symSize: 0x90 } + - { offsetInCU: 0x4F72, offset: 0x50DE2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE4findERKy, symObjAddr: 0x5F2C, symBinAddr: 0x41C58, symSize: 0x74 } + - { offsetInCU: 0x4FB4, offset: 0x50E24, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE3endEv, symObjAddr: 0x6084, symBinAddr: 0x41DB0, symSize: 0x38 } + - { offsetInCU: 0x4FDB, offset: 0x50E4B, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EEixEm, symObjAddr: 0x61E4, symBinAddr: 0x41DE8, symSize: 0x74 } + - { offsetInCU: 0x5010, offset: 0x50E80, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIhNS_5arrayIhLm0EEEEplEi, symObjAddr: 0x63A4, symBinAddr: 0x41E5C, symSize: 0x40 } + - { offsetInCU: 0x5052, offset: 0x50EC2, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb0EEptEv, symObjAddr: 0x63E4, symBinAddr: 0x41E9C, symSize: 0x34 } + - { offsetInCU: 0x5078, offset: 0x50EE8, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE5valueEv, symObjAddr: 0x6418, symBinAddr: 0x41ED0, symSize: 0x18 } + - { offsetInCU: 0x509C, offset: 0x50F0C, size: 0x8, addend: 0x0, symName: __ZN2bq16log_entry_handleC1EPKhj, symObjAddr: 0x6448, symBinAddr: 0x41EE8, symSize: 0x3C } + - { offsetInCU: 0x50E0, offset: 0x50F50, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressedD1Ev, symObjAddr: 0x6484, symBinAddr: 0x41F24, symSize: 0x2C } + - { offsetInCU: 0x510A, offset: 0x50F7A, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressedD0Ev, symObjAddr: 0x64B0, symBinAddr: 0x41F50, symSize: 0x30 } + - { offsetInCU: 0x5134, offset: 0x50FA4, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm2ENS_22appender_decode_resultELb0EE3getEv, symObjAddr: 0x64E0, symBinAddr: 0x41F80, symSize: 0x14 } + - { offsetInCU: 0x5158, offset: 0x50FC8, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_21appender_decoder_base22read_with_cache_handleELb0EE3getEv, symObjAddr: 0x6508, symBinAddr: 0x41F94, symSize: 0x14 } + - { offsetInCU: 0x517C, offset: 0x50FEC, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed20decoder_log_templateC2Ev, symObjAddr: 0x651C, symBinAddr: 0x41FA8, symSize: 0x48 } + - { offsetInCU: 0x51A6, offset: 0x51016, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed20decoder_log_templateD2Ev, symObjAddr: 0x65DC, symBinAddr: 0x41FF0, symSize: 0x30 } + - { offsetInCU: 0x51D0, offset: 0x51040, size: 0x8, addend: 0x0, symName: __ZN2bq16log_entry_handleC2EPKhj, symObjAddr: 0x66EC, symBinAddr: 0x42020, symSize: 0x2C } + - { offsetInCU: 0x5214, offset: 0x51084, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressedD2Ev, symObjAddr: 0x6718, symBinAddr: 0x4204C, symSize: 0x60 } + - { offsetInCU: 0x523E, offset: 0x510AE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEED1Ev, symObjAddr: 0x67A4, symBinAddr: 0x420AC, symSize: 0x2C } + - { offsetInCU: 0x5268, offset: 0x510D8, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EED1Ev, symObjAddr: 0x67D0, symBinAddr: 0x420D8, symSize: 0x2C } + - { offsetInCU: 0x5292, offset: 0x51102, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_baseD2Ev, symObjAddr: 0x67FC, symBinAddr: 0x42104, symSize: 0x70 } + - { offsetInCU: 0x52BA, offset: 0x5112A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEED2Ev, symObjAddr: 0x68F4, symBinAddr: 0x42174, symSize: 0x2C } + - { offsetInCU: 0x52E4, offset: 0x51154, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE5resetEv, symObjAddr: 0x6920, symBinAddr: 0x421A0, symSize: 0xF8 } + - { offsetInCU: 0x5328, offset: 0x51198, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE5beginEv, symObjAddr: 0x6A18, symBinAddr: 0x42298, symSize: 0x84 } + - { offsetInCU: 0x534F, offset: 0x511BF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE8destructERNS_17hash_map_iteratorIyS2_Lb0EEE, symObjAddr: 0x6AD0, symBinAddr: 0x42350, symSize: 0x3C } + - { offsetInCU: 0x5385, offset: 0x511F5, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb0EEppEv, symObjAddr: 0x6B0C, symBinAddr: 0x4238C, symSize: 0x88 } + - { offsetInCU: 0x53AB, offset: 0x5121B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headINS3_10value_nodeEEixEj, symObjAddr: 0x6B94, symBinAddr: 0x42414, symSize: 0x7C } + - { offsetInCU: 0x53DD, offset: 0x5124D, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb0EEC1EPNS_8hash_mapIyS2_EEjj, symObjAddr: 0x6C10, symBinAddr: 0x42490, symSize: 0x44 } + - { offsetInCU: 0x542F, offset: 0x5129F, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb0EEC2EPNS_8hash_mapIyS2_EEjj, symObjAddr: 0x6C54, symBinAddr: 0x424D4, symSize: 0x38 } + - { offsetInCU: 0x5481, offset: 0x512F1, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12destruct_keyERNS_17hash_map_iteratorIyS2_Lb0EEE, symObjAddr: 0x6C8C, symBinAddr: 0x4250C, symSize: 0x2C } + - { offsetInCU: 0x54B7, offset: 0x51327, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14destruct_valueERNS_17hash_map_iteratorIyS2_Lb0EEE, symObjAddr: 0x6CB8, symBinAddr: 0x42538, symSize: 0x30 } + - { offsetInCU: 0x54F1, offset: 0x51361, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_27appender_decoder_compressed28decoder_thread_info_templateEE8destructEPS2_, symObjAddr: 0x6D1C, symBinAddr: 0x42568, symSize: 0x24 } + - { offsetInCU: 0x5513, offset: 0x51383, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_27appender_decoder_compressed28decoder_thread_info_templateEE15destructor_implIS2_NS3_27non_trivial_destructor_typeEE8destructEPS2_, symObjAddr: 0x6D40, symBinAddr: 0x4258C, symSize: 0x3C } + - { offsetInCU: 0x553A, offset: 0x513AA, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed28decoder_thread_info_templateD1Ev, symObjAddr: 0x6D7C, symBinAddr: 0x425C8, symSize: 0x2C } + - { offsetInCU: 0x5564, offset: 0x513D4, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed28decoder_thread_info_templateD2Ev, symObjAddr: 0x6DA8, symBinAddr: 0x425F4, symSize: 0x30 } + - { offsetInCU: 0x558E, offset: 0x513FE, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE19get_next_node_indexEj, symObjAddr: 0x6DD8, symBinAddr: 0x42624, symSize: 0x68 } + - { offsetInCU: 0x55C4, offset: 0x51434, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headINS3_10value_nodeEEixEj, symObjAddr: 0x6E40, symBinAddr: 0x4268C, symSize: 0x7C } + - { offsetInCU: 0x55F6, offset: 0x51466, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EED2Ev, symObjAddr: 0x6EBC, symBinAddr: 0x42708, symSize: 0x2C } + - { offsetInCU: 0x5620, offset: 0x51490, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE5resetIS2_EENS_9enable_ifIXntsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x6EE8, symBinAddr: 0x42734, symSize: 0x6C } + - { offsetInCU: 0x5655, offset: 0x514C5, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_27appender_decoder_compressed20decoder_log_templateEE8destructEPS2_m, symObjAddr: 0x6F54, symBinAddr: 0x427A0, symSize: 0x2C } + - { offsetInCU: 0x5685, offset: 0x514F5, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_27appender_decoder_compressed20decoder_log_templateEE15destructor_implIS2_NS3_27non_trivial_destructor_typeEE8destructEPS2_m, symObjAddr: 0x6F80, symBinAddr: 0x427CC, symSize: 0x84 } + - { offsetInCU: 0x56D1, offset: 0x51541, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_27appender_decoder_compressed20decoder_log_templateEE8destructEPS2_, symObjAddr: 0x7004, symBinAddr: 0x42850, symSize: 0x24 } + - { offsetInCU: 0x56F3, offset: 0x51563, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_27appender_decoder_compressed20decoder_log_templateEE15destructor_implIS2_NS3_27non_trivial_destructor_typeEE8destructEPS2_, symObjAddr: 0x7028, symBinAddr: 0x42874, symSize: 0x3C } + - { offsetInCU: 0x5715, offset: 0x51585, size: 0x8, addend: 0x0, symName: __ZN2bq6layoutD1Ev, symObjAddr: 0x7090, symBinAddr: 0x428B0, symSize: 0x2C } + - { offsetInCU: 0x573F, offset: 0x515AF, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_baseD1Ev, symObjAddr: 0x70BC, symBinAddr: 0x428DC, symSize: 0x14 } + - { offsetInCU: 0x5767, offset: 0x515D7, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_baseD0Ev, symObjAddr: 0x70D0, symBinAddr: 0x428F0, symSize: 0xC } + - { offsetInCU: 0x578F, offset: 0x515FF, size: 0x8, addend: 0x0, symName: __ZN2bq6layoutD2Ev, symObjAddr: 0x7284, symBinAddr: 0x428FC, symSize: 0x3C } + - { offsetInCU: 0x57B9, offset: 0x51629, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEED1Ev, symObjAddr: 0x72C0, symBinAddr: 0x42938, symSize: 0x2C } + - { offsetInCU: 0x57E3, offset: 0x51653, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm0EED1Ev, symObjAddr: 0x72EC, symBinAddr: 0x42964, symSize: 0x2C } + - { offsetInCU: 0x580D, offset: 0x5167D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEED2Ev, symObjAddr: 0x7318, symBinAddr: 0x42990, symSize: 0x2C } + - { offsetInCU: 0x5837, offset: 0x516A7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE5resetEv, symObjAddr: 0x7344, symBinAddr: 0x429BC, symSize: 0xF8 } + - { offsetInCU: 0x587B, offset: 0x516EB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE5beginEv, symObjAddr: 0x743C, symBinAddr: 0x42AB4, symSize: 0x84 } + - { offsetInCU: 0x58A2, offset: 0x51712, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE3endEv, symObjAddr: 0x74F4, symBinAddr: 0x42B6C, symSize: 0x38 } + - { offsetInCU: 0x58C9, offset: 0x51739, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE8destructERNS_17hash_map_iteratorIyS2_Lb0EEE, symObjAddr: 0x752C, symBinAddr: 0x42BA4, symSize: 0x3C } + - { offsetInCU: 0x58FF, offset: 0x5176F, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_11string_baseIcEELb0EEppEv, symObjAddr: 0x7568, symBinAddr: 0x42BE0, symSize: 0x88 } + - { offsetInCU: 0x5925, offset: 0x51795, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headINS3_10value_nodeEEixEj, symObjAddr: 0x75F0, symBinAddr: 0x42C68, symSize: 0x7C } + - { offsetInCU: 0x5957, offset: 0x517C7, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_11string_baseIcEELb0EEC1EPNS_8hash_mapIyS2_EEjj, symObjAddr: 0x766C, symBinAddr: 0x42CE4, symSize: 0x44 } + - { offsetInCU: 0x59A9, offset: 0x51819, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_11string_baseIcEELb0EEC2EPNS_8hash_mapIyS2_EEjj, symObjAddr: 0x76B0, symBinAddr: 0x42D28, symSize: 0x38 } + - { offsetInCU: 0x59FB, offset: 0x5186B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12destruct_keyERNS_17hash_map_iteratorIyS2_Lb0EEE, symObjAddr: 0x77CC, symBinAddr: 0x42E44, symSize: 0x2C } + - { offsetInCU: 0x5A31, offset: 0x518A1, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14destruct_valueERNS_17hash_map_iteratorIyS2_Lb0EEE, symObjAddr: 0x77F8, symBinAddr: 0x42E70, symSize: 0x30 } + - { offsetInCU: 0x5A66, offset: 0x518D6, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_11string_baseIcEELb0EEptEv, symObjAddr: 0x7828, symBinAddr: 0x42EA0, symSize: 0x34 } + - { offsetInCU: 0x5A8C, offset: 0x518FC, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairIyNS_11string_baseIcEEE5valueEv, symObjAddr: 0x785C, symBinAddr: 0x42ED4, symSize: 0x18 } + - { offsetInCU: 0x5AB0, offset: 0x51920, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE19get_next_node_indexEj, symObjAddr: 0x7874, symBinAddr: 0x42EEC, symSize: 0x68 } + - { offsetInCU: 0x5AE6, offset: 0x51956, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headINS3_10value_nodeEEixEj, symObjAddr: 0x78DC, symBinAddr: 0x42F54, symSize: 0x7C } + - { offsetInCU: 0x5B18, offset: 0x51988, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm0EED2Ev, symObjAddr: 0x7958, symBinAddr: 0x42FD0, symSize: 0x2C } + - { offsetInCU: 0x5B42, offset: 0x519B2, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm0EE5resetIcEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x7984, symBinAddr: 0x42FFC, symSize: 0x5C } + - { offsetInCU: 0x5B7C, offset: 0x519EC, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_22appender_decode_resultENS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEC1IS1_JS3_RS5_EEEOT_DpOT0_, symObjAddr: 0x81D4, symBinAddr: 0x43080, symSize: 0x44 } + - { offsetInCU: 0x5BEA, offset: 0x51A5A, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_22appender_decode_resultENS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEC2IS1_JS3_RS5_EEEOT_DpOT0_, symObjAddr: 0x8218, symBinAddr: 0x430C4, symSize: 0x70 } + - { offsetInCU: 0x5C58, offset: 0x51AC8, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm2ENS_22appender_decode_resultEEC2IS1_EEOT_, symObjAddr: 0x8288, symBinAddr: 0x43134, symSize: 0x40 } + - { offsetInCU: 0x5C98, offset: 0x51B08, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEC2IS2_JRS4_EEEOT_DpOT0_, symObjAddr: 0x82C8, symBinAddr: 0x43174, symSize: 0x5C } + - { offsetInCU: 0x5CF2, offset: 0x51B62, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm2ENS_22appender_decode_resultELb0EEC2IS1_EEOT_, symObjAddr: 0x8324, symBinAddr: 0x431D0, symSize: 0x40 } + - { offsetInCU: 0x5D32, offset: 0x51BA2, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_21appender_decoder_base22read_with_cache_handleEEEC2IRS2_JEEEOT_DpOT0_, symObjAddr: 0x83A4, symBinAddr: 0x43210, symSize: 0x40 } + - { offsetInCU: 0x5D78, offset: 0x51BE8, size: 0x8, addend: 0x0, symName: __ZN2bq21__tuple_element_valueILm0ENS_21appender_decoder_base22read_with_cache_handleEEC2IRS2_EEOT_, symObjAddr: 0x8424, symBinAddr: 0x43250, symSize: 0x40 } + - { offsetInCU: 0x5DB8, offset: 0x51C28, size: 0x8, addend: 0x0, symName: __ZN2bq26__tuple_element_value_implILm0ENS_21appender_decoder_base22read_with_cache_handleELb0EEC2IRS2_EEOT_, symObjAddr: 0x8464, symBinAddr: 0x43290, symSize: 0x40 } + - { offsetInCU: 0x5DF8, offset: 0x51C68, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_22appender_decode_resultENS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEC1IS1_JRS3_RS5_EEEOT_DpOT0_, symObjAddr: 0x84B8, symBinAddr: 0x432D0, symSize: 0x44 } + - { offsetInCU: 0x5E66, offset: 0x51CD6, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_22appender_decode_resultENS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEC2IS1_JRS3_RS5_EEEOT_DpOT0_, symObjAddr: 0x84FC, symBinAddr: 0x43314, symSize: 0x70 } + - { offsetInCU: 0x5ED4, offset: 0x51D44, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_24appender_file_compressed9item_typeENS_21appender_decoder_base22read_with_cache_handleEEEC2IRS2_JRS4_EEEOT_DpOT0_, symObjAddr: 0x856C, symBinAddr: 0x43384, symSize: 0x5C } + - { offsetInCU: 0x5F2E, offset: 0x51D9E, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x8648, symBinAddr: 0x433E0, symSize: 0x288 } + - { offsetInCU: 0x5FBC, offset: 0x51E2C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE3endEv, symObjAddr: 0x88D0, symBinAddr: 0x43668, symSize: 0x44 } + - { offsetInCU: 0x5FE3, offset: 0x51E53, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE5beginEv, symObjAddr: 0x89C8, symBinAddr: 0x43760, symSize: 0x34 } + - { offsetInCU: 0x600A, offset: 0x51E7A, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE12set_capacityEmb, symObjAddr: 0x8B3C, symBinAddr: 0x438D4, symSize: 0x230 } + - { offsetInCU: 0x6079, offset: 0x51EE9, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_27appender_decoder_compressed20decoder_log_templateENS_5arrayIS2_Lm0EEEEplEm, symObjAddr: 0x8D6C, symBinAddr: 0x43B04, symSize: 0x44 } + - { offsetInCU: 0x60BB, offset: 0x51F2B, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_27appender_decoder_compressed20decoder_log_templateENS_5arrayIS2_Lm0EEEEcvPS2_Ev, symObjAddr: 0x8DB0, symBinAddr: 0x43B48, symSize: 0x18 } + - { offsetInCU: 0x60E1, offset: 0x51F51, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE8destructENS_14array_iteratorIS2_S3_EE, symObjAddr: 0x8F08, symBinAddr: 0x43CA0, symSize: 0x34 } + - { offsetInCU: 0x6116, offset: 0x51F86, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE9constructIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x8F3C, symBinAddr: 0x43CD4, symSize: 0x74 } + - { offsetInCU: 0x6178, offset: 0x51FE8, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_27appender_decoder_compressed20decoder_log_templateENS_5arrayIS2_Lm0EEEEC1IS2_EEPT_PKS4_, symObjAddr: 0x8FB0, symBinAddr: 0x43D48, symSize: 0x3C } + - { offsetInCU: 0x61C7, offset: 0x52037, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_27appender_decoder_compressed20decoder_log_templateENS_5arrayIS2_Lm0EEEEC2IS2_EEPT_PKS4_, symObjAddr: 0x8FEC, symBinAddr: 0x43D84, symSize: 0x70 } + - { offsetInCU: 0x6216, offset: 0x52086, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed20decoder_log_templateC1EOS1_, symObjAddr: 0x9158, symBinAddr: 0x43ED4, symSize: 0x34 } + - { offsetInCU: 0x6249, offset: 0x520B9, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed20decoder_log_templateC2EOS1_, symObjAddr: 0x918C, symBinAddr: 0x43F08, symSize: 0x48 } + - { offsetInCU: 0x627C, offset: 0x520EC, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorINS_27appender_decoder_compressed20decoder_log_templateENS_5arrayIS2_Lm0EEEEpLEi, symObjAddr: 0x92E0, symBinAddr: 0x43F50, symSize: 0x30 } + - { offsetInCU: 0x62B5, offset: 0x52125, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed20decoder_log_templateaSEOS1_, symObjAddr: 0x9310, symBinAddr: 0x43F80, symSize: 0x48 } + - { offsetInCU: 0x62E4, offset: 0x52154, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorINS_27appender_decoder_compressed20decoder_log_templateENS_5arrayIS2_Lm0EEEEptEv, symObjAddr: 0x93C4, symBinAddr: 0x43FC8, symSize: 0x18 } + - { offsetInCU: 0x630A, offset: 0x5217A, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb0EEcvbEv, symObjAddr: 0x944C, symBinAddr: 0x43FE0, symSize: 0x44 } + - { offsetInCU: 0x6330, offset: 0x521A0, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE3addERKy, symObjAddr: 0x9490, symBinAddr: 0x44024, symSize: 0x64 } + - { offsetInCU: 0x6372, offset: 0x521E2, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE20iterator_legal_checkERKNS_17hash_map_iteratorIyS2_Lb1EEE, symObjAddr: 0x94F4, symBinAddr: 0x44088, symSize: 0x124 } + - { offsetInCU: 0x63AC, offset: 0x5221C, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb1EEC1ILb0EEERKNS0_IyS2_XT_EEE, symObjAddr: 0x9618, symBinAddr: 0x441AC, symSize: 0x34 } + - { offsetInCU: 0x63EC, offset: 0x5225C, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headINS3_10value_nodeEE4sizeEv, symObjAddr: 0x964C, symBinAddr: 0x441E0, symSize: 0x18 } + - { offsetInCU: 0x6410, offset: 0x52280, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb1EEC2ILb0EEERKNS0_IyS2_XT_EEE, symObjAddr: 0x9664, symBinAddr: 0x441F8, symSize: 0x3C } + - { offsetInCU: 0x6450, offset: 0x522C0, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy, symObjAddr: 0x96A0, symBinAddr: 0x44234, symSize: 0x304 } + - { offsetInCU: 0x6548, offset: 0x523B8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE15construct_valueERNS_17hash_map_iteratorIyS2_Lb0EEE, symObjAddr: 0x99A4, symBinAddr: 0x44538, symSize: 0x68 } + - { offsetInCU: 0x657D, offset: 0x523ED, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE4sizeEv, symObjAddr: 0x9A0C, symBinAddr: 0x445A0, symSize: 0x18 } + - { offsetInCU: 0x65A3, offset: 0x52413, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12buckets_sizeEv, symObjAddr: 0x9A24, symBinAddr: 0x445B8, symSize: 0x24 } + - { offsetInCU: 0x65C9, offset: 0x52439, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj, symObjAddr: 0x9A48, symBinAddr: 0x445DC, symSize: 0x494 } + - { offsetInCU: 0x66CE, offset: 0x5253E, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE32find_index_and_bucket_idx_by_keyERKy, symObjAddr: 0x9EDC, symBinAddr: 0x44A70, symSize: 0x120 } + - { offsetInCU: 0x675C, offset: 0x525CC, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE10nodes_sizeEv, symObjAddr: 0xA318, symBinAddr: 0x44E80, symSize: 0x28 } + - { offsetInCU: 0x6782, offset: 0x525F2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headIjEixEj, symObjAddr: 0xA340, symBinAddr: 0x44EA8, symSize: 0x74 } + - { offsetInCU: 0x67B4, offset: 0x52624, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE13construct_keyIRKyEEvRNS_17hash_map_iteratorIyS2_Lb0EEEOT_, symObjAddr: 0xA3B4, symBinAddr: 0x44F1C, symSize: 0x68 } + - { offsetInCU: 0x6800, offset: 0x52670, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headIjE4sizeEv, symObjAddr: 0xA41C, symBinAddr: 0x44F84, symSize: 0x18 } + - { offsetInCU: 0x6824, offset: 0x52694, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE23get_bucket_index_by_keyERKy, symObjAddr: 0xA4B8, symBinAddr: 0x44F9C, symSize: 0x44 } + - { offsetInCU: 0x6869, offset: 0x526D9, size: 0x8, addend: 0x0, symName: __ZNK2bq7kv_pairIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE3keyEv, symObjAddr: 0xA4FC, symBinAddr: 0x44FE0, symSize: 0x14 } + - { offsetInCU: 0x688D, offset: 0x526FD, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE24get_bucket_index_by_hashEy, symObjAddr: 0xA534, symBinAddr: 0x44FF4, symSize: 0x3C } + - { offsetInCU: 0x68C3, offset: 0x52733, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headIjEixEj, symObjAddr: 0xA5AC, symBinAddr: 0x45030, symSize: 0x74 } + - { offsetInCU: 0x68F5, offset: 0x52765, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_27appender_decoder_compressed28decoder_thread_info_templateELb0EEdeEv, symObjAddr: 0xA6DC, symBinAddr: 0x450A4, symSize: 0x34 } + - { offsetInCU: 0x6920, offset: 0x52790, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed28decoder_thread_info_templateC1EOS1_, symObjAddr: 0xA724, symBinAddr: 0x450EC, symSize: 0x34 } + - { offsetInCU: 0x6953, offset: 0x527C3, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed28decoder_thread_info_templateC2EOS1_, symObjAddr: 0xA758, symBinAddr: 0x45120, symSize: 0x48 } + - { offsetInCU: 0x6986, offset: 0x527F6, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed28decoder_thread_info_templateC1Ev, symObjAddr: 0xA7B4, symBinAddr: 0x45168, symSize: 0x2C } + - { offsetInCU: 0x69B0, offset: 0x52820, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed28decoder_thread_info_templateC2Ev, symObjAddr: 0xA7E0, symBinAddr: 0x45194, symSize: 0x30 } + - { offsetInCU: 0x26, offset: 0x5293D, size: 0x8, addend: 0x0, symName: __ZN2bq23appender_decoder_helper6decodeERKNS_11string_baseIcEES4_, symObjAddr: 0x0, symBinAddr: 0x451C4, symSize: 0x420 } + - { offsetInCU: 0xEE6, offset: 0x537FD, size: 0x8, addend: 0x0, symName: __ZN2bq23appender_decoder_helper6decodeERKNS_11string_baseIcEES4_, symObjAddr: 0x0, symBinAddr: 0x451C4, symSize: 0x420 } + - { offsetInCU: 0x26, offset: 0x539EE, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_managerC2Ev, symObjAddr: 0x0, symBinAddr: 0x455E4, symSize: 0x60 } + - { offsetInCU: 0x26C9, offset: 0x56091, size: 0x8, addend: 0x0, symName: __ZN2bq11make_uniqueINS_20appender_decoder_rawEJEEENS_10unique_ptrIT_EEDpOT0_, symObjAddr: 0x7C4, symBinAddr: 0x45D38, symSize: 0x4C } + - { offsetInCU: 0x26F7, offset: 0x560BF, size: 0x8, addend: 0x0, symName: __ZN2bq11make_uniqueINS_27appender_decoder_compressedEJEEENS_10unique_ptrIT_EEDpOT0_, symObjAddr: 0x8A8, symBinAddr: 0x45E1C, symSize: 0x4C } + - { offsetInCU: 0x2725, offset: 0x560ED, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_10unique_ptrINS_21appender_decoder_baseEEEEEONS_16remove_referenceIT_E4typeEOS6_, symObjAddr: 0xA4C, symBinAddr: 0x45F8C, symSize: 0x14 } + - { offsetInCU: 0x275A, offset: 0x56122, size: 0x8, addend: 0x0, symName: __ZN2bqneIjNS_10unique_ptrINS_21appender_decoder_baseEEELb0ELb0EEEbRKNS_17hash_map_iteratorIT_T0_XT1_EEERKNS4_IS5_S6_XT2_EEE, symObjAddr: 0xD48, symBinAddr: 0x46230, symSize: 0x34 } + - { offsetInCU: 0x27BA, offset: 0x56182, size: 0x8, addend: 0x0, symName: __ZN2bq22__inner_hash_calculateIjyEENS_9enable_ifIXntoosr2bq7is_sameIT_fEE5valuesr2bq7is_sameIS2_dEE5valueET0_E4typeERKS2_, symObjAddr: 0x1B8C, symBinAddr: 0x46DA8, symSize: 0x24 } + - { offsetInCU: 0x2881, offset: 0x56249, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_10unique_ptrINS_21appender_decoder_baseEEEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x3D7C, symBinAddr: 0x47C6C, symSize: 0x14 } + - { offsetInCU: 0x28B6, offset: 0x5627E, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRKjEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0x4088, symBinAddr: 0x47EA4, symSize: 0x14 } + - { offsetInCU: 0x28EB, offset: 0x562B3, size: 0x8, addend: 0x0, symName: __ZN2bqeqIjNS_10unique_ptrINS_21appender_decoder_baseEEELb0ELb0EEEbRKNS_17hash_map_iteratorIT_T0_XT1_EEERKNS4_IS5_S6_XT2_EEE, symObjAddr: 0x449C, symBinAddr: 0x482B8, symSize: 0xE4 } + - { offsetInCU: 0x2CD1, offset: 0x56699, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager8instanceEv, symObjAddr: 0x184, symBinAddr: 0x45768, symSize: 0x98 } + - { offsetInCU: 0x2CF2, offset: 0x566BA, size: 0x8, addend: 0x0, symName: __ZZN2bq24appender_decoder_manager8instanceEvE4inst, symObjAddr: 0x29A70, symBinAddr: 0x68BD8, symSize: 0x0 } + - { offsetInCU: 0x2D02, offset: 0x566CA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE12expand_nodesEj, symObjAddr: 0x161C, symBinAddr: 0x468BC, symSize: 0x2C0 } + - { offsetInCU: 0x33F2, offset: 0x56DBA, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_managerC2Ev, symObjAddr: 0x0, symBinAddr: 0x455E4, symSize: 0x60 } + - { offsetInCU: 0x341C, offset: 0x56DE4, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIjEC1ERKj, symObjAddr: 0x60, symBinAddr: 0x45644, symSize: 0x34 } + - { offsetInCU: 0x3452, offset: 0x56E1A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEEC1Ej, symObjAddr: 0x94, symBinAddr: 0x45678, symSize: 0x34 } + - { offsetInCU: 0x348A, offset: 0x56E52, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_managerC1Ev, symObjAddr: 0xC8, symBinAddr: 0x456AC, symSize: 0x2C } + - { offsetInCU: 0x34B4, offset: 0x56E7C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_managerD2Ev, symObjAddr: 0xF4, symBinAddr: 0x456D8, symSize: 0x38 } + - { offsetInCU: 0x34DE, offset: 0x56EA6, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEED1Ev, symObjAddr: 0x12C, symBinAddr: 0x45710, symSize: 0x2C } + - { offsetInCU: 0x3508, offset: 0x56ED0, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_managerD1Ev, symObjAddr: 0x158, symBinAddr: 0x4573C, symSize: 0x2C } + - { offsetInCU: 0x3590, offset: 0x56F58, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager14create_decoderERKNS_11string_baseIcEERj, symObjAddr: 0x21C, symBinAddr: 0x45800, symSize: 0x504 } + - { offsetInCU: 0x3711, offset: 0x570D9, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEEC1EPS1_, symObjAddr: 0x790, symBinAddr: 0x45D04, symSize: 0x34 } + - { offsetInCU: 0x374C, offset: 0x57114, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEEaSINS_20appender_decoder_rawEEERS2_ONS0_IT_EE, symObjAddr: 0x810, symBinAddr: 0x45D84, symSize: 0x6C } + - { offsetInCU: 0x3788, offset: 0x57150, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_20appender_decoder_rawEED1Ev, symObjAddr: 0x87C, symBinAddr: 0x45DF0, symSize: 0x2C } + - { offsetInCU: 0x37B5, offset: 0x5717D, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEEaSINS_27appender_decoder_compressedEEERS2_ONS0_IT_EE, symObjAddr: 0x8F4, symBinAddr: 0x45E68, symSize: 0x6C } + - { offsetInCU: 0x37F1, offset: 0x571B9, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_27appender_decoder_compressedEED1Ev, symObjAddr: 0x960, symBinAddr: 0x45ED4, symSize: 0x2C } + - { offsetInCU: 0x3819, offset: 0x571E1, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEEptEv, symObjAddr: 0x98C, symBinAddr: 0x45F00, symSize: 0x18 } + - { offsetInCU: 0x3842, offset: 0x5720A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE3addIS3_EENS_17hash_map_iteratorIjS3_Lb0EEERKjOT_, symObjAddr: 0x9D8, symBinAddr: 0x45F18, symSize: 0x74 } + - { offsetInCU: 0x389B, offset: 0x57263, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEED1Ev, symObjAddr: 0xA8C, symBinAddr: 0x45FA0, symSize: 0x2C } + - { offsetInCU: 0x38C3, offset: 0x5728B, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager15destroy_decoderEj, symObjAddr: 0xAE4, symBinAddr: 0x45FCC, symSize: 0x54 } + - { offsetInCU: 0x3905, offset: 0x572CD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseERKj, symObjAddr: 0xB38, symBinAddr: 0x46020, symSize: 0x90 } + - { offsetInCU: 0x3949, offset: 0x57311, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager18decode_single_itemEjRPKNS_11string_baseIcEE, symObjAddr: 0xBC8, symBinAddr: 0x460B0, symSize: 0x10C } + - { offsetInCU: 0x39C3, offset: 0x5738B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE4findERKj, symObjAddr: 0xCD4, symBinAddr: 0x461BC, symSize: 0x74 } + - { offsetInCU: 0x3A05, offset: 0x573CD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE3endEv, symObjAddr: 0xD7C, symBinAddr: 0x46264, symSize: 0x38 } + - { offsetInCU: 0x3A2C, offset: 0x573F4, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb0EEptEv, symObjAddr: 0xDB4, symBinAddr: 0x4629C, symSize: 0x34 } + - { offsetInCU: 0x3A52, offset: 0x5741A, size: 0x8, addend: 0x0, symName: __ZN2bq7kv_pairIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5valueEv, symObjAddr: 0xDE8, symBinAddr: 0x462D0, symSize: 0x18 } + - { offsetInCU: 0x3A76, offset: 0x5743E, size: 0x8, addend: 0x0, symName: __ZNK2bq21appender_decoder_base20get_decoded_log_textEv, symObjAddr: 0xE00, symBinAddr: 0x462E8, symSize: 0x18 } + - { offsetInCU: 0x3A9A, offset: 0x57462, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIjEC2ERKj, symObjAddr: 0x1060, symBinAddr: 0x46300, symSize: 0x34 } + - { offsetInCU: 0x3AD0, offset: 0x57498, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12_atomic_baseIjLm4EEC2ERKj, symObjAddr: 0x1094, symBinAddr: 0x46334, symSize: 0x24 } + - { offsetInCU: 0x3B06, offset: 0x574CE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEEC2Ej, symObjAddr: 0x10B8, symBinAddr: 0x46358, symSize: 0x78 } + - { offsetInCU: 0x3B3E, offset: 0x57506, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headIjEC1Ev, symObjAddr: 0x1130, symBinAddr: 0x463D0, symSize: 0x2C } + - { offsetInCU: 0x3B66, offset: 0x5752E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headINS4_10value_nodeEEC1Ev, symObjAddr: 0x115C, symBinAddr: 0x463FC, symSize: 0x2C } + - { offsetInCU: 0x3B8E, offset: 0x57556, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj, symObjAddr: 0x1188, symBinAddr: 0x46428, symSize: 0x494 } + - { offsetInCU: 0x3C93, offset: 0x5765B, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE12buckets_sizeEv, symObjAddr: 0x18DC, symBinAddr: 0x46B7C, symSize: 0x24 } + - { offsetInCU: 0x3CB9, offset: 0x57681, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headIjEC2Ev, symObjAddr: 0x1900, symBinAddr: 0x46BA0, symSize: 0x1C } + - { offsetInCU: 0x3CE1, offset: 0x576A9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headINS4_10value_nodeEEC2Ev, symObjAddr: 0x191C, symBinAddr: 0x46BBC, symSize: 0x1C } + - { offsetInCU: 0x3D09, offset: 0x576D1, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headIjE4sizeEv, symObjAddr: 0x19BC, symBinAddr: 0x46BD8, symSize: 0x18 } + - { offsetInCU: 0x3D2D, offset: 0x576F5, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headIjEixEj, symObjAddr: 0x19D4, symBinAddr: 0x46BF0, symSize: 0x74 } + - { offsetInCU: 0x3D5F, offset: 0x57727, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headINS4_10value_nodeEEixEj, symObjAddr: 0x1A48, symBinAddr: 0x46C64, symSize: 0x74 } + - { offsetInCU: 0x3D91, offset: 0x57759, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE23get_bucket_index_by_keyERKj, symObjAddr: 0x1ABC, symBinAddr: 0x46CD8, symSize: 0x44 } + - { offsetInCU: 0x3DD6, offset: 0x5779E, size: 0x8, addend: 0x0, symName: __ZNK2bq7kv_pairIjNS_10unique_ptrINS_21appender_decoder_baseEEEE3keyEv, symObjAddr: 0x1B00, symBinAddr: 0x46D1C, symSize: 0x14 } + - { offsetInCU: 0x3DFA, offset: 0x577C2, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE4sizeEv, symObjAddr: 0x1B14, symBinAddr: 0x46D30, symSize: 0x18 } + - { offsetInCU: 0x3E20, offset: 0x577E8, size: 0x8, addend: 0x0, symName: __ZN2bq27number_type_hash_calculatorIjE9hash_codeERKj, symObjAddr: 0x1B2C, symBinAddr: 0x46D48, symSize: 0x24 } + - { offsetInCU: 0x3E42, offset: 0x5780A, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE24get_bucket_index_by_hashEy, symObjAddr: 0x1B50, symBinAddr: 0x46D6C, symSize: 0x3C } + - { offsetInCU: 0x3E78, offset: 0x57840, size: 0x8, addend: 0x0, symName: __ZN2bq28integer_type_hash_calculatorIjE9hash_codeERKj, symObjAddr: 0x1BB0, symBinAddr: 0x46DCC, symSize: 0x1C } + - { offsetInCU: 0x3E9A, offset: 0x57862, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headINS4_10value_nodeEE4sizeEv, symObjAddr: 0x1BCC, symBinAddr: 0x46DE8, symSize: 0x18 } + - { offsetInCU: 0x3EBE, offset: 0x57886, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5beginEv, symObjAddr: 0x1BE4, symBinAddr: 0x46E00, symSize: 0x84 } + - { offsetInCU: 0x3EE5, offset: 0x578AD, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb0EEdeEv, symObjAddr: 0x1C98, symBinAddr: 0x46E84, symSize: 0x34 } + - { offsetInCU: 0x3F0B, offset: 0x578D3, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEEC1IS1_EEONS0_IT_EE, symObjAddr: 0x1CCC, symBinAddr: 0x46EB8, symSize: 0x34 } + - { offsetInCU: 0x3F4A, offset: 0x57912, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE8destructERNS_17hash_map_iteratorIjS3_Lb0EEE, symObjAddr: 0x1D00, symBinAddr: 0x46EEC, symSize: 0x3C } + - { offsetInCU: 0x3F80, offset: 0x57948, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb0EEppEv, symObjAddr: 0x1D3C, symBinAddr: 0x46F28, symSize: 0x88 } + - { offsetInCU: 0x3FA6, offset: 0x5796E, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb0EEC1EPNS_8hash_mapIjS3_EEjj, symObjAddr: 0x1DC4, symBinAddr: 0x46FB0, symSize: 0x44 } + - { offsetInCU: 0x3FF8, offset: 0x579C0, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb0EEC2EPNS_8hash_mapIjS3_EEjj, symObjAddr: 0x1E08, symBinAddr: 0x46FF4, symSize: 0x38 } + - { offsetInCU: 0x404A, offset: 0x57A12, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEEC2IS1_EEONS0_IT_EE, symObjAddr: 0x1E40, symBinAddr: 0x4702C, symSize: 0x2C } + - { offsetInCU: 0x4089, offset: 0x57A51, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE12destruct_keyERNS_17hash_map_iteratorIjS3_Lb0EEE, symObjAddr: 0x1E6C, symBinAddr: 0x47058, symSize: 0x2C } + - { offsetInCU: 0x40BF, offset: 0x57A87, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14destruct_valueERNS_17hash_map_iteratorIjS3_Lb0EEE, symObjAddr: 0x1E98, symBinAddr: 0x47084, symSize: 0x30 } + - { offsetInCU: 0x40F9, offset: 0x57AC1, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_10unique_ptrINS_21appender_decoder_baseEEEE8destructEPS3_, symObjAddr: 0x1EFC, symBinAddr: 0x470B4, symSize: 0x24 } + - { offsetInCU: 0x411B, offset: 0x57AE3, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_10unique_ptrINS_21appender_decoder_baseEEEE15destructor_implIS3_NS4_27non_trivial_destructor_typeEE8destructEPS3_, symObjAddr: 0x1F20, symBinAddr: 0x470D8, symSize: 0x3C } + - { offsetInCU: 0x413D, offset: 0x57B05, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE19get_next_node_indexEj, symObjAddr: 0x1F5C, symBinAddr: 0x47114, symSize: 0x68 } + - { offsetInCU: 0x4173, offset: 0x57B3B, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headINS4_10value_nodeEEixEj, symObjAddr: 0x1FC4, symBinAddr: 0x4717C, symSize: 0x74 } + - { offsetInCU: 0x41A5, offset: 0x57B6D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEED2Ev, symObjAddr: 0x2038, symBinAddr: 0x471F0, symSize: 0x2C } + - { offsetInCU: 0x41CF, offset: 0x57B97, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5resetEv, symObjAddr: 0x2064, symBinAddr: 0x4721C, symSize: 0xF8 } + - { offsetInCU: 0x4213, offset: 0x57BDB, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEEC2EPS1_, symObjAddr: 0x215C, symBinAddr: 0x47314, symSize: 0x20 } + - { offsetInCU: 0x4249, offset: 0x57C11, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEED2Ev, symObjAddr: 0x217C, symBinAddr: 0x47334, symSize: 0x2C } + - { offsetInCU: 0x4271, offset: 0x57C39, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_21appender_decoder_baseEE5resetEv, symObjAddr: 0x21A8, symBinAddr: 0x47360, symSize: 0x6C } + - { offsetInCU: 0x4295, offset: 0x57C5D, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawC1Ev, symObjAddr: 0x2214, symBinAddr: 0x473CC, symSize: 0x2C } + - { offsetInCU: 0x42BF, offset: 0x57C87, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_20appender_decoder_rawEEC1EPS1_, symObjAddr: 0x2240, symBinAddr: 0x473F8, symSize: 0x34 } + - { offsetInCU: 0x42F5, offset: 0x57CBD, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawC2Ev, symObjAddr: 0x2274, symBinAddr: 0x4742C, symSize: 0x44 } + - { offsetInCU: 0x431F, offset: 0x57CE7, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_baseC2Ev, symObjAddr: 0x22B8, symBinAddr: 0x47470, symSize: 0x7C } + - { offsetInCU: 0x4349, offset: 0x57D11, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EEC1Ev, symObjAddr: 0x23B8, symBinAddr: 0x474EC, symSize: 0x2C } + - { offsetInCU: 0x4373, offset: 0x57D3B, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EEC2Ev, symObjAddr: 0x24E0, symBinAddr: 0x47518, symSize: 0x20 } + - { offsetInCU: 0x439D, offset: 0x57D65, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_20appender_decoder_rawEEC2EPS1_, symObjAddr: 0x2500, symBinAddr: 0x47538, symSize: 0x20 } + - { offsetInCU: 0x43D3, offset: 0x57D9B, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_20appender_decoder_rawEED2Ev, symObjAddr: 0x2520, symBinAddr: 0x47558, symSize: 0x2C } + - { offsetInCU: 0x43FB, offset: 0x57DC3, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_20appender_decoder_rawEE5resetEv, symObjAddr: 0x254C, symBinAddr: 0x47584, symSize: 0x6C } + - { offsetInCU: 0x441F, offset: 0x57DE7, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressedC1Ev, symObjAddr: 0x25B8, symBinAddr: 0x475F0, symSize: 0x2C } + - { offsetInCU: 0x4449, offset: 0x57E11, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_27appender_decoder_compressedEEC1EPS1_, symObjAddr: 0x25E4, symBinAddr: 0x4761C, symSize: 0x34 } + - { offsetInCU: 0x447F, offset: 0x57E47, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressedC2Ev, symObjAddr: 0x2618, symBinAddr: 0x47650, symSize: 0x6C } + - { offsetInCU: 0x44A9, offset: 0x57E71, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EEC1Ev, symObjAddr: 0x2684, symBinAddr: 0x476BC, symSize: 0x2C } + - { offsetInCU: 0x44D3, offset: 0x57E9B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEC1Ej, symObjAddr: 0x26B0, symBinAddr: 0x476E8, symSize: 0x34 } + - { offsetInCU: 0x450B, offset: 0x57ED3, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EEC2Ev, symObjAddr: 0x26E4, symBinAddr: 0x4771C, symSize: 0x20 } + - { offsetInCU: 0x4535, offset: 0x57EFD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEC2Ej, symObjAddr: 0x2704, symBinAddr: 0x4773C, symSize: 0x78 } + - { offsetInCU: 0x456D, offset: 0x57F35, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headIjEC1Ev, symObjAddr: 0x277C, symBinAddr: 0x477B4, symSize: 0x2C } + - { offsetInCU: 0x4595, offset: 0x57F5D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headINS3_10value_nodeEEC1Ev, symObjAddr: 0x27A8, symBinAddr: 0x477E0, symSize: 0x2C } + - { offsetInCU: 0x45BD, offset: 0x57F85, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headIjEC2Ev, symObjAddr: 0x2F7C, symBinAddr: 0x4780C, symSize: 0x1C } + - { offsetInCU: 0x45E5, offset: 0x57FAD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE22value_node_buffer_headINS3_10value_nodeEEC2Ev, symObjAddr: 0x2F98, symBinAddr: 0x47828, symSize: 0x1C } + - { offsetInCU: 0x4617, offset: 0x57FDF, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_27appender_decoder_compressedEEC2EPS1_, symObjAddr: 0x3954, symBinAddr: 0x47844, symSize: 0x20 } + - { offsetInCU: 0x464D, offset: 0x58015, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_27appender_decoder_compressedEED2Ev, symObjAddr: 0x3974, symBinAddr: 0x47864, symSize: 0x2C } + - { offsetInCU: 0x4675, offset: 0x5803D, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_27appender_decoder_compressedEE5resetEv, symObjAddr: 0x39A0, symBinAddr: 0x47890, symSize: 0x6C } + - { offsetInCU: 0x4699, offset: 0x58061, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj, symObjAddr: 0x3A0C, symBinAddr: 0x478FC, symSize: 0x304 } + - { offsetInCU: 0x4791, offset: 0x58159, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE15construct_valueIS3_EEvRNS_17hash_map_iteratorIjS3_Lb0EEEOT_, symObjAddr: 0x3D10, symBinAddr: 0x47C00, symSize: 0x6C } + - { offsetInCU: 0x47DD, offset: 0x581A5, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE32find_index_and_bucket_idx_by_keyERKj, symObjAddr: 0x3D90, symBinAddr: 0x47C80, symSize: 0x120 } + - { offsetInCU: 0x486B, offset: 0x58233, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE10nodes_sizeEv, symObjAddr: 0x3EDC, symBinAddr: 0x47DA0, symSize: 0x28 } + - { offsetInCU: 0x4891, offset: 0x58259, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE13construct_keyIRKjEEvRNS_17hash_map_iteratorIjS3_Lb0EEEOT_, symObjAddr: 0x3F04, symBinAddr: 0x47DC8, symSize: 0x68 } + - { offsetInCU: 0x48DD, offset: 0x582A5, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE22value_node_buffer_headIjEixEj, symObjAddr: 0x3F6C, symBinAddr: 0x47E30, symSize: 0x74 } + - { offsetInCU: 0x490F, offset: 0x582D7, size: 0x8, addend: 0x0, symName: __ZNK2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb0EEcvbEv, symObjAddr: 0x409C, symBinAddr: 0x47EB8, symSize: 0x44 } + - { offsetInCU: 0x4935, offset: 0x582FD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseENS_17hash_map_iteratorIjS3_Lb0EEE, symObjAddr: 0x40E0, symBinAddr: 0x47EFC, symSize: 0x228 } + - { offsetInCU: 0x49A6, offset: 0x5836E, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE20iterator_legal_checkERKNS_17hash_map_iteratorIjS3_Lb1EEE, symObjAddr: 0x4308, symBinAddr: 0x48124, symSize: 0x124 } + - { offsetInCU: 0x49E0, offset: 0x583A8, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb1EEC1ILb0EEERKNS0_IjS3_XT_EEE, symObjAddr: 0x442C, symBinAddr: 0x48248, symSize: 0x34 } + - { offsetInCU: 0x4A20, offset: 0x583E8, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIjNS_10unique_ptrINS_21appender_decoder_baseEEELb1EEC2ILb0EEERKNS0_IjS3_XT_EEE, symObjAddr: 0x4460, symBinAddr: 0x4827C, symSize: 0x3C } + - { offsetInCU: 0x26, offset: 0x584A8, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_raw12init_privateEv, symObjAddr: 0x0, symBinAddr: 0x4839C, symSize: 0x14 } + - { offsetInCU: 0x19C8, offset: 0x59E4A, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_raw12init_privateEv, symObjAddr: 0x0, symBinAddr: 0x4839C, symSize: 0x14 } + - { offsetInCU: 0x1A1B, offset: 0x59E9D, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_raw14decode_privateEv, symObjAddr: 0x14, symBinAddr: 0x483B0, symSize: 0x174 } + - { offsetInCU: 0x1AFE, offset: 0x59F80, size: 0x8, addend: 0x0, symName: __ZNK2bq20appender_decoder_raw25get_binary_format_versionEv, symObjAddr: 0x23C, symBinAddr: 0x48524, symSize: 0x14 } + - { offsetInCU: 0x1B24, offset: 0x59FA6, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawD1Ev, symObjAddr: 0x250, symBinAddr: 0x48538, symSize: 0x2C } + - { offsetInCU: 0x1B4E, offset: 0x59FD0, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawD0Ev, symObjAddr: 0x27C, symBinAddr: 0x48564, symSize: 0x30 } + - { offsetInCU: 0x1B78, offset: 0x59FFA, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawD2Ev, symObjAddr: 0x2D8, symBinAddr: 0x48594, symSize: 0x2C } + - { offsetInCU: 0x57, offset: 0x5A085, size: 0x8, addend: 0x0, symName: __ZN2bqL14_log_level_strE, symObjAddr: 0x1DF30, symBinAddr: 0x68C30, symSize: 0x0 } + - { offsetInCU: 0x70, offset: 0x5A09E, size: 0x8, addend: 0x0, symName: __ZN2bqL27_time_zone_str_initer_inst_E, symObjAddr: 0x1DFC0, symBinAddr: 0x68CC0, symSize: 0x0 } + - { offsetInCU: 0xD0, offset: 0x5A0FE, size: 0x8, addend: 0x0, symName: __ZN2bqL18_digit_str_initer_E, symObjAddr: 0x1DFF8, symBinAddr: 0x68CF8, symSize: 0x0 } + - { offsetInCU: 0xFEF, offset: 0x5B01D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12expand_nodesEj, symObjAddr: 0x7444, symBinAddr: 0x4E84C, symSize: 0x2F0 } + - { offsetInCU: 0x1602, offset: 0x5B630, size: 0x8, addend: 0x0, symName: __ZN2bq21_time_zone_str_initerC1Ev, symObjAddr: 0x60, symBinAddr: 0x485C0, symSize: 0x2C } + - { offsetInCU: 0x162A, offset: 0x5B658, size: 0x8, addend: 0x0, symName: __ZN2bq17_digit_str_initerC1Ev, symObjAddr: 0x8C, symBinAddr: 0x485EC, symSize: 0x2C } + - { offsetInCU: 0x1652, offset: 0x5B680, size: 0x8, addend: 0x0, symName: __ZN2bq6layoutC2Ev, symObjAddr: 0xB8, symBinAddr: 0x48618, symSize: 0x88 } + - { offsetInCU: 0x167C, offset: 0x5B6AA, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm0EEC1Ev, symObjAddr: 0x140, symBinAddr: 0x486A0, symSize: 0x2C } + - { offsetInCU: 0x16A6, offset: 0x5B6D4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEEC1Ej, symObjAddr: 0x16C, symBinAddr: 0x486CC, symSize: 0x34 } + - { offsetInCU: 0x16E3, offset: 0x5B711, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11format_infoC1Ev, symObjAddr: 0x1A0, symBinAddr: 0x48700, symSize: 0x2C } + - { offsetInCU: 0x170D, offset: 0x5B73B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE15set_expand_rateEf, symObjAddr: 0x1CC, symBinAddr: 0x4872C, symSize: 0x20 } + - { offsetInCU: 0x1742, offset: 0x5B770, size: 0x8, addend: 0x0, symName: __ZN2bq6layoutC1Ev, symObjAddr: 0x1EC, symBinAddr: 0x4874C, symSize: 0x2C } + - { offsetInCU: 0x1796, offset: 0x5B7C4, size: 0x8, addend: 0x0, symName: __ZN2bq6layout9do_layoutERKNS_16log_entry_handleEbPKNS_5arrayINS_11string_baseIcEELm0EEE, symObjAddr: 0x218, symBinAddr: 0x48778, symSize: 0x150 } + - { offsetInCU: 0x1846, offset: 0x5B874, size: 0x8, addend: 0x0, symName: __ZN2bq6layout13layout_prefixERKNS_16log_entry_handleE, symObjAddr: 0x368, symBinAddr: 0x488C8, symSize: 0x290 } + - { offsetInCU: 0x1954, offset: 0x5B982, size: 0x8, addend: 0x0, symName: __ZN2bq6layout27python_style_format_contentERKNS_16log_entry_handleE, symObjAddr: 0x5F8, symBinAddr: 0x48B58, symSize: 0xD0 } + - { offsetInCU: 0x19A8, offset: 0x5B9D6, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_timeERKNS_16log_entry_handleE, symObjAddr: 0x6C8, symBinAddr: 0x48C28, symSize: 0x304 } + - { offsetInCU: 0x1A88, offset: 0x5BAB6, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE, symObjAddr: 0x9CC, symBinAddr: 0x48F2C, symSize: 0x3A8 } + - { offsetInCU: 0x1B72, offset: 0x5BBA0, size: 0x8, addend: 0x0, symName: __ZN2bq6layout15insert_str_utf8EPKcj, symObjAddr: 0xD74, symBinAddr: 0x492D4, symSize: 0x170 } + - { offsetInCU: 0x1BDD, offset: 0x5BC0B, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_charEc, symObjAddr: 0xF6C, symBinAddr: 0x49444, symSize: 0x118 } + - { offsetInCU: 0x1C39, offset: 0x5BC67, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE4findERKy, symObjAddr: 0x11BC, symBinAddr: 0x4955C, symSize: 0x74 } + - { offsetInCU: 0x1C7B, offset: 0x5BCA9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE3addIS2_EENS_17hash_map_iteratorIyS2_Lb0EEERKyOT_, symObjAddr: 0x134C, symBinAddr: 0x495D0, symSize: 0x74 } + - { offsetInCU: 0x1CD4, offset: 0x5BD02, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18fill_and_alignmentEj, symObjAddr: 0x1420, symBinAddr: 0x49644, symSize: 0x3F8 } + - { offsetInCU: 0x1F19, offset: 0x5BF47, size: 0x8, addend: 0x0, symName: __ZN2bq6layout32python_style_format_content_utf8ERKNS_16log_entry_handleE, symObjAddr: 0x1818, symBinAddr: 0x49A3C, symSize: 0xB60 } + - { offsetInCU: 0x224F, offset: 0x5C27D, size: 0x8, addend: 0x0, symName: __ZN2bq6layout33python_style_format_content_utf16ERKNS_16log_entry_handleE, symObjAddr: 0x23C4, symBinAddr: 0x4A5E8, symSize: 0xCE4 } + - { offsetInCU: 0x2565, offset: 0x5C593, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIcLm0EE4sizeEv, symObjAddr: 0x30F4, symBinAddr: 0x4B318, symSize: 0x18 } + - { offsetInCU: 0x258C, offset: 0x5C5BA, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_pointerEPKv, symObjAddr: 0x310C, symBinAddr: 0x4B330, symSize: 0x260 } + - { offsetInCU: 0x2648, offset: 0x5C676, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_boolEb, symObjAddr: 0x336C, symBinAddr: 0x4B590, symSize: 0x254 } + - { offsetInCU: 0x2704, offset: 0x5C732, size: 0x8, addend: 0x0, symName: __ZN2bq6layout13insert_char16EDs, symObjAddr: 0x35C0, symBinAddr: 0x4B7E4, symSize: 0x34 } + - { offsetInCU: 0x273A, offset: 0x5C768, size: 0x8, addend: 0x0, symName: __ZN2bq6layout13insert_char32EDi, symObjAddr: 0x35F4, symBinAddr: 0x4B818, symSize: 0x94 } + - { offsetInCU: 0x278D, offset: 0x5C7BB, size: 0x8, addend: 0x0, symName: __ZN2bq6layout22insert_integral_signedExi, symObjAddr: 0x3688, symBinAddr: 0x4B8AC, symSize: 0x7B8 } + - { offsetInCU: 0x28B7, offset: 0x5C8E5, size: 0x8, addend: 0x0, symName: __ZN2bq6layout24insert_integral_unsignedEyi, symObjAddr: 0x3E40, symBinAddr: 0x4C064, symSize: 0x78C } + - { offsetInCU: 0x29E1, offset: 0x5CA0F, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_decimalEf, symObjAddr: 0x45CC, symBinAddr: 0x4C7F0, symSize: 0x2A4 } + - { offsetInCU: 0x2A9B, offset: 0x5CAC9, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_decimalEd, symObjAddr: 0x4870, symBinAddr: 0x4CA94, symSize: 0x2A4 } + - { offsetInCU: 0x2B55, offset: 0x5CB83, size: 0x8, addend: 0x0, symName: __ZN2bq6layout16insert_str_utf16EPKcj, symObjAddr: 0x4B60, symBinAddr: 0x4CD38, symSize: 0x698 } + - { offsetInCU: 0x2C1B, offset: 0x5CC49, size: 0x8, addend: 0x0, symName: __ZN2bq6layout10c20_formatIcEENS0_11format_infoEPKT_i, symObjAddr: 0x51F8, symBinAddr: 0x4D3D0, symSize: 0x3C0 } + - { offsetInCU: 0x2CD6, offset: 0x5CD04, size: 0x8, addend: 0x0, symName: __Z7isdigiti, symObjAddr: 0x55B8, symBinAddr: 0x4D790, symSize: 0x28 } + - { offsetInCU: 0x2D02, offset: 0x5CD30, size: 0x8, addend: 0x0, symName: __ZN2bq6layout10c20_formatIDsEENS0_11format_infoEPKT_i, symObjAddr: 0x5608, symBinAddr: 0x4D7B8, symSize: 0x3C0 } + - { offsetInCU: 0x2DBD, offset: 0x5CDEB, size: 0x8, addend: 0x0, symName: __ZN2bq6layout6revertEjj, symObjAddr: 0x59E0, symBinAddr: 0x4DB78, symSize: 0xDC } + - { offsetInCU: 0x2E1F, offset: 0x5CE4D, size: 0x8, addend: 0x0, symName: __ZN2bq21_time_zone_str_initerC2Ev, symObjAddr: 0x5B70, symBinAddr: 0x4DC54, symSize: 0x1EC } + - { offsetInCU: 0x2EB7, offset: 0x5CEE5, size: 0x8, addend: 0x0, symName: __ZN2bq17_digit_str_initerC2Ev, symObjAddr: 0x5D5C, symBinAddr: 0x4DE40, symSize: 0xC8 } + - { offsetInCU: 0x2EFB, offset: 0x5CF29, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11format_infoC2Ev, symObjAddr: 0x5E24, symBinAddr: 0x4DF08, symSize: 0x48 } + - { offsetInCU: 0x2F25, offset: 0x5CF53, size: 0x8, addend: 0x0, symName: __Z9__isctypeim, symObjAddr: 0x5E6C, symBinAddr: 0x4DF50, symSize: 0x80 } + - { offsetInCU: 0x2F5F, offset: 0x5CF8D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm0EE18fill_uninitializedIcEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm, symObjAddr: 0x5F9C, symBinAddr: 0x4DFD0, symSize: 0xBC } + - { offsetInCU: 0x2F9D, offset: 0x5CFCB, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIcLm0EE8capacityEv, symObjAddr: 0x60DC, symBinAddr: 0x4E08C, symSize: 0x18 } + - { offsetInCU: 0x2FC4, offset: 0x5CFF2, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm0EE12set_capacityEmb, symObjAddr: 0x60F4, symBinAddr: 0x4E0A4, symSize: 0x224 } + - { offsetInCU: 0x3033, offset: 0x5D061, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm0EEC2Ev, symObjAddr: 0x6EC0, symBinAddr: 0x4E2C8, symSize: 0x20 } + - { offsetInCU: 0x305D, offset: 0x5D08B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEEC2Ej, symObjAddr: 0x6EE0, symBinAddr: 0x4E2E8, symSize: 0x78 } + - { offsetInCU: 0x3095, offset: 0x5D0C3, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headIjEC1Ev, symObjAddr: 0x6F58, symBinAddr: 0x4E360, symSize: 0x2C } + - { offsetInCU: 0x30BD, offset: 0x5D0EB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headINS3_10value_nodeEEC1Ev, symObjAddr: 0x6F84, symBinAddr: 0x4E38C, symSize: 0x2C } + - { offsetInCU: 0x30E5, offset: 0x5D113, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj, symObjAddr: 0x6FB0, symBinAddr: 0x4E3B8, symSize: 0x494 } + - { offsetInCU: 0x31EA, offset: 0x5D218, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE12buckets_sizeEv, symObjAddr: 0x7734, symBinAddr: 0x4EB3C, symSize: 0x24 } + - { offsetInCU: 0x3210, offset: 0x5D23E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headIjEC2Ev, symObjAddr: 0x7758, symBinAddr: 0x4EB60, symSize: 0x1C } + - { offsetInCU: 0x3238, offset: 0x5D266, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headINS3_10value_nodeEEC2Ev, symObjAddr: 0x7774, symBinAddr: 0x4EB7C, symSize: 0x1C } + - { offsetInCU: 0x3260, offset: 0x5D28E, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headIjE4sizeEv, symObjAddr: 0x7790, symBinAddr: 0x4EB98, symSize: 0x18 } + - { offsetInCU: 0x3284, offset: 0x5D2B2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headIjEixEj, symObjAddr: 0x77A8, symBinAddr: 0x4EBB0, symSize: 0x74 } + - { offsetInCU: 0x32B6, offset: 0x5D2E4, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE23get_bucket_index_by_keyERKy, symObjAddr: 0x7898, symBinAddr: 0x4EC24, symSize: 0x44 } + - { offsetInCU: 0x32FB, offset: 0x5D329, size: 0x8, addend: 0x0, symName: __ZNK2bq7kv_pairIyNS_11string_baseIcEEE3keyEv, symObjAddr: 0x78DC, symBinAddr: 0x4EC68, symSize: 0x14 } + - { offsetInCU: 0x331F, offset: 0x5D34D, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE4sizeEv, symObjAddr: 0x78F0, symBinAddr: 0x4EC7C, symSize: 0x18 } + - { offsetInCU: 0x3345, offset: 0x5D373, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE24get_bucket_index_by_hashEy, symObjAddr: 0x792C, symBinAddr: 0x4EC94, symSize: 0x3C } + - { offsetInCU: 0x337B, offset: 0x5D3A9, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headINS3_10value_nodeEE4sizeEv, symObjAddr: 0x79A4, symBinAddr: 0x4ECD0, symSize: 0x18 } + - { offsetInCU: 0x339F, offset: 0x5D3CD, size: 0x8, addend: 0x0, symName: __ZN2bq17hash_map_iteratorIyNS_11string_baseIcEELb0EEdeEv, symObjAddr: 0x7AA4, symBinAddr: 0x4ECE8, symSize: 0x34 } + - { offsetInCU: 0x33C5, offset: 0x5D3F3, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE32find_index_and_bucket_idx_by_keyERKy, symObjAddr: 0x8008, symBinAddr: 0x4ED1C, symSize: 0x120 } + - { offsetInCU: 0x3453, offset: 0x5D481, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE22value_node_buffer_headIjEixEj, symObjAddr: 0x8154, symBinAddr: 0x4EE3C, symSize: 0x74 } + - { offsetInCU: 0x3485, offset: 0x5D4B3, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy, symObjAddr: 0x8270, symBinAddr: 0x4EEB0, symSize: 0x304 } + - { offsetInCU: 0x357D, offset: 0x5D5AB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE15construct_valueIS2_EEvRNS_17hash_map_iteratorIyS2_Lb0EEEOT_, symObjAddr: 0x8574, symBinAddr: 0x4F1B4, symSize: 0x6C } + - { offsetInCU: 0x35C9, offset: 0x5D5F7, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapIyNS_11string_baseIcEEE10nodes_sizeEv, symObjAddr: 0x85E0, symBinAddr: 0x4F220, symSize: 0x28 } + - { offsetInCU: 0x35EF, offset: 0x5D61D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE13construct_keyIRKyEEvRNS_17hash_map_iteratorIyS2_Lb0EEEOT_, symObjAddr: 0x8608, symBinAddr: 0x4F248, symSize: 0x68 } + - { offsetInCU: 0x59, offset: 0x5D732, size: 0x8, addend: 0x0, symName: __ZN2bqL14empty_snapshotE, symObjAddr: 0x44DD0, symBinAddr: 0x698B8, symSize: 0x0 } + - { offsetInCU: 0x3DC9, offset: 0x614A2, size: 0x8, addend: 0x0, symName: __ZN2bqeqIcEEbPKNS_11string_baseIT_E9char_typeERKS3_, symObjAddr: 0x1684, symBinAddr: 0x508C4, symSize: 0x30 } + - { offsetInCU: 0x3E0F, offset: 0x614E8, size: 0x8, addend: 0x0, symName: __ZN2bqneIKNS_11string_baseIcEES3_NS_5arrayIS2_Lm0EEES5_EEbRKNS_14array_iteratorIT_T1_EERKNS6_IT0_T2_EE, symObjAddr: 0x26CC, symBinAddr: 0x50EDC, symSize: 0xA0 } + - { offsetInCU: 0x42FF, offset: 0x619D8, size: 0x8, addend: 0x0, symName: __ZN2bqgeIyyNS_5arrayIyLm0EEES2_EEbRKNS_14array_iteratorIT_T1_EERKNS3_IT0_T2_EE, symObjAddr: 0xA380, symBinAddr: 0x54738, symSize: 0xA0 } + - { offsetInCU: 0x435D, offset: 0x61A36, size: 0x8, addend: 0x0, symName: __ZN2bqleIyyNS_5arrayIyLm0EEES2_EEbRKNS_14array_iteratorIT_T1_EERKNS3_IT0_T2_EE, symObjAddr: 0xA420, symBinAddr: 0x547D8, symSize: 0xA0 } + - { offsetInCU: 0x43BB, offset: 0x61A94, size: 0x8, addend: 0x0, symName: __ZN2bqmiIyyNS_5arrayIyLm0EEES2_EENS_14array_iteratorIT_T1_E9diff_typeERKS6_RKNS3_IT0_T2_EE, symObjAddr: 0xA4C0, symBinAddr: 0x54878, symSize: 0xA0 } + - { offsetInCU: 0x4419, offset: 0x61AF2, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveIyEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0xA7C8, symBinAddr: 0x54B80, symSize: 0x38 } + - { offsetInCU: 0x446E, offset: 0x61B47, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyIyEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS2_EE5valueEvE4typeEPS2_S5_m, symObjAddr: 0xA8A8, symBinAddr: 0x54C60, symSize: 0x40 } + - { offsetInCU: 0x46A6, offset: 0x61D7F, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIPNS_13appender_baseEEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0xB5FC, symBinAddr: 0x559B4, symSize: 0x14 } + - { offsetInCU: 0x4731, offset: 0x61E0A, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIRPNS_13appender_baseEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0xBBF0, symBinAddr: 0x55CA4, symSize: 0x14 } + - { offsetInCU: 0x4766, offset: 0x61E3F, size: 0x8, addend: 0x0, symName: __ZN2bqgeIPNS_13appender_baseES2_NS_5arrayIS2_Lm0EEES4_EEbRKNS_14array_iteratorIT_T1_EERKNS5_IT0_T2_EE, symObjAddr: 0xBC04, symBinAddr: 0x55CB8, symSize: 0xA0 } + - { offsetInCU: 0x47C4, offset: 0x61E9D, size: 0x8, addend: 0x0, symName: __ZN2bqleIPNS_13appender_baseES2_NS_5arrayIS2_Lm0EEES4_EEbRKNS_14array_iteratorIT_T1_EERKNS5_IT0_T2_EE, symObjAddr: 0xBCD8, symBinAddr: 0x55D58, symSize: 0xA0 } + - { offsetInCU: 0x4822, offset: 0x61EFB, size: 0x8, addend: 0x0, symName: __ZN2bqmiIPNS_13appender_baseES2_NS_5arrayIS2_Lm0EEES4_EENS_14array_iteratorIT_T1_E9diff_typeERKS8_RKNS5_IT0_T2_EE, symObjAddr: 0xBD78, symBinAddr: 0x55DF8, symSize: 0xA0 } + - { offsetInCU: 0x4880, offset: 0x61F59, size: 0x8, addend: 0x0, symName: __ZN2bq19_inner_forward_moveIPNS_13appender_baseEEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS4_EE5valueEvE4typeEPS4_S7_m, symObjAddr: 0xC098, symBinAddr: 0x56118, symSize: 0x38 } + - { offsetInCU: 0x48D5, offset: 0x61FAE, size: 0x8, addend: 0x0, symName: __ZN2bq15_inner_mem_copyIPNS_13appender_baseEEENS_9enable_ifIXaasr2bq31is_trivially_copy_constructibleIT_EE5valuesr2bq31is_trivially_move_constructibleIS4_EE5valueEvE4typeEPS4_S7_m, symObjAddr: 0xC224, symBinAddr: 0x561F8, symSize: 0x40 } + - { offsetInCU: 0x54AB, offset: 0x62B84, size: 0x8, addend: 0x0, symName: __ZN2bq7log_impC2Ev, symObjAddr: 0x0, symBinAddr: 0x4F410, symSize: 0xF4 } + - { offsetInCU: 0x5549, offset: 0x62C22, size: 0x8, addend: 0x0, symName: __ZN2bq7log_impC1Ev, symObjAddr: 0x14C, symBinAddr: 0x4F504, symSize: 0x2C } + - { offsetInCU: 0x5621, offset: 0x62CFA, size: 0x8, addend: 0x0, symName: __ZN2bq7log_impD2Ev, symObjAddr: 0x178, symBinAddr: 0x4F530, symSize: 0x138 } + - { offsetInCU: 0x57FC, offset: 0x62ED5, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp5clearEv, symObjAddr: 0x2B0, symBinAddr: 0x4F668, symSize: 0x3C4 } + - { offsetInCU: 0x5A0B, offset: 0x630E4, size: 0x8, addend: 0x0, symName: __ZN2bq7log_impD1Ev, symObjAddr: 0x6F8, symBinAddr: 0x4FA2C, symSize: 0x2C } + - { offsetInCU: 0x5B4E, offset: 0x63227, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE, symObjAddr: 0x724, symBinAddr: 0x4FA58, symSize: 0xE6C } + - { offsetInCU: 0x5F86, offset: 0x6365F, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvjEv, symObjAddr: 0x18D4, symBinAddr: 0x508F4, symSize: 0x34 } + - { offsetInCU: 0x5FD8, offset: 0x636B1, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12add_appenderERKNS_11string_baseIcEERKNS_14property_valueE, symObjAddr: 0x2100, symBinAddr: 0x50928, symSize: 0x3FC } + - { offsetInCU: 0x615C, offset: 0x63835, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp31refresh_merged_log_level_bitmapEv, symObjAddr: 0x24FC, symBinAddr: 0x50D24, symSize: 0x114 } + - { offsetInCU: 0x6210, offset: 0x638E9, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EEC1Ev, symObjAddr: 0x2628, symBinAddr: 0x50E38, symSize: 0x2C } + - { offsetInCU: 0x623A, offset: 0x63913, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_11string_baseIcEELm0EE5beginEv, symObjAddr: 0x2654, symBinAddr: 0x50E64, symSize: 0x34 } + - { offsetInCU: 0x6261, offset: 0x6393A, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayINS_11string_baseIcEELm0EE3endEv, symObjAddr: 0x2688, symBinAddr: 0x50E98, symSize: 0x44 } + - { offsetInCU: 0x6288, offset: 0x63961, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIKNS_11string_baseIcEENS_5arrayIS2_Lm0EEEEdeEv, symObjAddr: 0x276C, symBinAddr: 0x50F7C, symSize: 0x18 } + - { offsetInCU: 0x62AE, offset: 0x63987, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE9push_backIJyEEEmDpOT_, symObjAddr: 0x2784, symBinAddr: 0x50F94, symSize: 0x58 } + - { offsetInCU: 0x62EE, offset: 0x639C7, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKNS_11string_baseIcEENS_5arrayIS2_Lm0EEEEppEv, symObjAddr: 0x2800, symBinAddr: 0x50FEC, symSize: 0x20 } + - { offsetInCU: 0x6314, offset: 0x639ED, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE5beginEv, symObjAddr: 0x2820, symBinAddr: 0x5100C, symSize: 0x34 } + - { offsetInCU: 0x633B, offset: 0x63A14, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIyNS_5arrayIyLm0EEEEcvPyEv, symObjAddr: 0x2854, symBinAddr: 0x51040, symSize: 0x18 } + - { offsetInCU: 0x6361, offset: 0x63A3A, size: 0x8, addend: 0x0, symName: __ZNK2bq5arrayIyLm0EE4sizeEv, symObjAddr: 0x286C, symBinAddr: 0x51058, symSize: 0x18 } + - { offsetInCU: 0x6388, offset: 0x63A61, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EED1Ev, symObjAddr: 0x2884, symBinAddr: 0x51070, symSize: 0x2C } + - { offsetInCU: 0x63D5, offset: 0x63AAE, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE, symObjAddr: 0x28FC, symBinAddr: 0x5109C, symSize: 0xA50 } + - { offsetInCU: 0x67FF, offset: 0x63ED8, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp10set_configERKNS_11string_baseIcEE, symObjAddr: 0x3454, symBinAddr: 0x51AEC, symSize: 0x30 } + - { offsetInCU: 0x683A, offset: 0x63F13, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textC1Ev, symObjAddr: 0x349C, symBinAddr: 0x51B1C, symSize: 0x2C } + - { offsetInCU: 0x6873, offset: 0x63F4C, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawC1Ev, symObjAddr: 0x34C8, symBinAddr: 0x51B48, symSize: 0x2C } + - { offsetInCU: 0x68B1, offset: 0x63F8A, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedC1Ev, symObjAddr: 0x34F4, symBinAddr: 0x51B74, symSize: 0x2C } + - { offsetInCU: 0x68EF, offset: 0x63FC8, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_13appender_baseEEC1EPS1_, symObjAddr: 0x3520, symBinAddr: 0x51BA0, symSize: 0x34 } + - { offsetInCU: 0x6925, offset: 0x63FFE, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_13appender_baseEEptEv, symObjAddr: 0x3554, symBinAddr: 0x51BD4, symSize: 0x18 } + - { offsetInCU: 0x6949, offset: 0x64022, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_13appender_baseEE8transferEv, symObjAddr: 0x356C, symBinAddr: 0x51BEC, symSize: 0x24 } + - { offsetInCU: 0x697B, offset: 0x64054, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_13appender_baseEED1Ev, symObjAddr: 0x3590, symBinAddr: 0x51C10, symSize: 0x2C } + - { offsetInCU: 0x69BC, offset: 0x64095, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp17process_log_chunkERNS_16log_entry_handleE, symObjAddr: 0x3694, symBinAddr: 0x51C3C, symSize: 0x8C } + - { offsetInCU: 0x6A78, offset: 0x64151, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp3logERKNS_16log_entry_handleE, symObjAddr: 0x3720, symBinAddr: 0x51CC8, symSize: 0x1D4 } + - { offsetInCU: 0x6BBD, offset: 0x64296, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp15enable_snapshotEj, symObjAddr: 0x38F4, symBinAddr: 0x51E9C, symSize: 0x88 } + - { offsetInCU: 0x6C02, offset: 0x642DB, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp20take_snapshot_stringEb, symObjAddr: 0x397C, symBinAddr: 0x51F24, symSize: 0x74 } + - { offsetInCU: 0x6C38, offset: 0x64311, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp23release_snapshot_stringEv, symObjAddr: 0x39F0, symBinAddr: 0x51F98, symSize: 0x48 } + - { offsetInCU: 0x6C5F, offset: 0x64338, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp8get_nameEv, symObjAddr: 0x3A38, symBinAddr: 0x51FE0, symSize: 0x18 } + - { offsetInCU: 0x6C86, offset: 0x6435F, size: 0x8, addend: 0x0, symName: __ZNK2bq13appender_base20get_log_level_bitmapEv, symObjAddr: 0x3A50, symBinAddr: 0x51FF8, symSize: 0x20 } + - { offsetInCU: 0x6CAA, offset: 0x64383, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp7processEb, symObjAddr: 0x3A70, symBinAddr: 0x52018, symSize: 0x244 } + - { offsetInCU: 0x6DDB, offset: 0x644B4, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp21flush_appenders_cacheEv, symObjAddr: 0x3CF0, symBinAddr: 0x5225C, symSize: 0x154 } + - { offsetInCU: 0x6E89, offset: 0x64562, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp18flush_appenders_ioEv, symObjAddr: 0x3E44, symBinAddr: 0x523B0, symSize: 0x154 } + - { offsetInCU: 0x6F37, offset: 0x64610, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12sync_processEv, symObjAddr: 0x3FB0, symBinAddr: 0x52504, symSize: 0x4C } + - { offsetInCU: 0x6F6D, offset: 0x64646, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp10get_layoutEv, symObjAddr: 0x3FFC, symBinAddr: 0x52550, symSize: 0x18 } + - { offsetInCU: 0x6F94, offset: 0x6466D, size: 0x8, addend: 0x0, symName: __ZNK2bq13appender_base8get_typeEv, symObjAddr: 0x4014, symBinAddr: 0x52568, symSize: 0x18 } + - { offsetInCU: 0x6FB8, offset: 0x64691, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp20get_categories_countEv, symObjAddr: 0x402C, symBinAddr: 0x52580, symSize: 0x28 } + - { offsetInCU: 0x6FDF, offset: 0x646B8, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp26get_category_name_by_indexEj, symObjAddr: 0x4054, symBinAddr: 0x525A8, symSize: 0x34 } + - { offsetInCU: 0x7015, offset: 0x646EE, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp19get_categories_nameEv, symObjAddr: 0x4088, symBinAddr: 0x525DC, symSize: 0x18 } + - { offsetInCU: 0x703C, offset: 0x64715, size: 0x8, addend: 0x0, symName: __ZNK2bq13appender_base8get_nameEv, symObjAddr: 0x4318, symBinAddr: 0x525F4, symSize: 0x18 } + - { offsetInCU: 0x7060, offset: 0x64739, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp26get_appender_by_vague_nameERKNS_11string_baseIcEE, symObjAddr: 0x43EC, symBinAddr: 0x5260C, symSize: 0x4E0 } + - { offsetInCU: 0x735E, offset: 0x64A37, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EEC1Ev, symObjAddr: 0x4B0C, symBinAddr: 0x52AEC, symSize: 0x2C } + - { offsetInCU: 0x738D, offset: 0x64A66, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE9push_backIJRS2_EEEmDpOT_, symObjAddr: 0x4E8C, symBinAddr: 0x52B18, symSize: 0x58 } + - { offsetInCU: 0x73D7, offset: 0x64AB0, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textC2Ev, symObjAddr: 0x58E0, symBinAddr: 0x52B70, symSize: 0x44 } + - { offsetInCU: 0x7401, offset: 0x64ADA, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseC2Ev, symObjAddr: 0x5924, symBinAddr: 0x52BB4, symSize: 0x84 } + - { offsetInCU: 0x742B, offset: 0x64B04, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawC2Ev, symObjAddr: 0x5A90, symBinAddr: 0x52C38, symSize: 0x44 } + - { offsetInCU: 0x7455, offset: 0x64B2E, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binaryC2Ev, symObjAddr: 0x5AD4, symBinAddr: 0x52C7C, symSize: 0x44 } + - { offsetInCU: 0x77B3, offset: 0x64E8C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedC2Ev, symObjAddr: 0x5B18, symBinAddr: 0x52CC0, symSize: 0x15D0 } + - { offsetInCU: 0x813D, offset: 0x65816, size: 0x8, addend: 0x0, symName: __ZN2bq15hash_map_inlineIyjE22value_node_buffer_headIjEC1Ev, symObjAddr: 0x7114, symBinAddr: 0x54290, symSize: 0x2C } + - { offsetInCU: 0x8165, offset: 0x6583E, size: 0x8, addend: 0x0, symName: __ZN2bq15hash_map_inlineIyjE22value_node_buffer_headINS1_10value_nodeEEC1Ev, symObjAddr: 0x7140, symBinAddr: 0x542BC, symSize: 0x2C } + - { offsetInCU: 0x818D, offset: 0x65866, size: 0x8, addend: 0x0, symName: __ZN2bq15hash_map_inlineIyjE22value_node_buffer_headIjEC2Ev, symObjAddr: 0x716C, symBinAddr: 0x542E8, symSize: 0x1C } + - { offsetInCU: 0x81B5, offset: 0x6588E, size: 0x8, addend: 0x0, symName: __ZN2bq15hash_map_inlineIyjE22value_node_buffer_headINS1_10value_nodeEEC2Ev, symObjAddr: 0x7188, symBinAddr: 0x54304, symSize: 0x1C } + - { offsetInCU: 0x81DD, offset: 0x658B6, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EEC2Ev, symObjAddr: 0x9EC0, symBinAddr: 0x54320, symSize: 0x20 } + - { offsetInCU: 0x8207, offset: 0x658E0, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EED2Ev, symObjAddr: 0x9EE0, symBinAddr: 0x54340, symSize: 0x2C } + - { offsetInCU: 0x8231, offset: 0x6590A, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE5resetIyEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEv, symObjAddr: 0x9F0C, symBinAddr: 0x5436C, symSize: 0x5C } + - { offsetInCU: 0x8261, offset: 0x6593A, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKNS_11string_baseIcEENS_5arrayIS2_Lm0EEEEC1IS2_EEPT_PKS5_, symObjAddr: 0x9F68, symBinAddr: 0x543C8, symSize: 0x3C } + - { offsetInCU: 0x82B0, offset: 0x65989, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKNS_11string_baseIcEENS_5arrayIS2_Lm0EEEEC2IS2_EEPT_PKS5_, symObjAddr: 0x9FA4, symBinAddr: 0x54404, symSize: 0x70 } + - { offsetInCU: 0x82FF, offset: 0x659D8, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE6insertIJyEEEvNS_14array_iteratorIyS1_EEDpOT_, symObjAddr: 0xA0A8, symBinAddr: 0x54474, symSize: 0x288 } + - { offsetInCU: 0x838D, offset: 0x65A66, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE3endEv, symObjAddr: 0xA330, symBinAddr: 0x546FC, symSize: 0x3C } + - { offsetInCU: 0x83B4, offset: 0x65A8D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE12set_capacityEmb, symObjAddr: 0xA560, symBinAddr: 0x54918, symSize: 0x224 } + - { offsetInCU: 0x8423, offset: 0x65AFC, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIyNS_5arrayIyLm0EEEEplEm, symObjAddr: 0xA784, symBinAddr: 0x54B3C, symSize: 0x44 } + - { offsetInCU: 0x8465, offset: 0x65B3E, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE8destructENS_14array_iteratorIyS1_EE, symObjAddr: 0xA800, symBinAddr: 0x54BB8, symSize: 0x34 } + - { offsetInCU: 0x849A, offset: 0x65B73, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE9constructIJyEEEvNS_14array_iteratorIyS1_EEDpOT_, symObjAddr: 0xA834, symBinAddr: 0x54BEC, symSize: 0x74 } + - { offsetInCU: 0x84F7, offset: 0x65BD0, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIyNS_5arrayIyLm0EEEEpLEi, symObjAddr: 0xA8E8, symBinAddr: 0x54CA0, symSize: 0x28 } + - { offsetInCU: 0x852B, offset: 0x65C04, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIyNS_5arrayIyLm0EEEEptEv, symObjAddr: 0xA910, symBinAddr: 0x54CC8, symSize: 0x18 } + - { offsetInCU: 0x8556, offset: 0x65C2F, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIyNS_5arrayIyLm0EEEEC1IyEEPT_PKS2_, symObjAddr: 0xA928, symBinAddr: 0x54CE0, symSize: 0x3C } + - { offsetInCU: 0x85A5, offset: 0x65C7E, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIyNS_5arrayIyLm0EEEEC2IyEEPT_PKS2_, symObjAddr: 0xA964, symBinAddr: 0x54D1C, symSize: 0x70 } + - { offsetInCU: 0x85F4, offset: 0x65CCD, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorIPNS_13appender_baseEE8destructEPS2_m, symObjAddr: 0xA9D4, symBinAddr: 0x54D8C, symSize: 0x2C } + - { offsetInCU: 0x8624, offset: 0x65CFD, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorIPNS_13appender_baseEE15destructor_implIS2_NS3_23trivial_destructor_typeEE8destructEPS2_m, symObjAddr: 0xAA00, symBinAddr: 0x54DB8, symSize: 0x14 } + - { offsetInCU: 0x8654, offset: 0x65D2D, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_13appender_baseEEC2EPS1_, symObjAddr: 0xAA14, symBinAddr: 0x54DCC, symSize: 0x20 } + - { offsetInCU: 0x868A, offset: 0x65D63, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_13appender_baseEED2Ev, symObjAddr: 0xAA34, symBinAddr: 0x54DEC, symSize: 0x78 } + - { offsetInCU: 0x87E4, offset: 0x65EBD, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIPNS_13appender_baseELm0EE6insertIJS2_EEEvNS_21array_iterator_inlineIS2_S3_EEDpOT_, symObjAddr: 0xAAAC, symBinAddr: 0x54E64, symSize: 0xB50 } + - { offsetInCU: 0x8F38, offset: 0x66611, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIPNS_13appender_baseEE8destructEPS2_, symObjAddr: 0xB610, symBinAddr: 0x559C8, symSize: 0x24 } + - { offsetInCU: 0x8F5A, offset: 0x66633, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorIPNS_13appender_baseEE15destructor_implIS2_NS3_23trivial_destructor_typeEE8destructEPS2_, symObjAddr: 0xB634, symBinAddr: 0x559EC, symSize: 0x10 } + - { offsetInCU: 0x8F7C, offset: 0x66655, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EEC2Ev, symObjAddr: 0xB818, symBinAddr: 0x559FC, symSize: 0x20 } + - { offsetInCU: 0x8FA6, offset: 0x6667F, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0xB92C, symBinAddr: 0x55A1C, symSize: 0x288 } + - { offsetInCU: 0x9034, offset: 0x6670D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE12set_capacityEmb, symObjAddr: 0xBE18, symBinAddr: 0x55E98, symSize: 0x224 } + - { offsetInCU: 0x90A3, offset: 0x6677C, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEplEm, symObjAddr: 0xC03C, symBinAddr: 0x560BC, symSize: 0x44 } + - { offsetInCU: 0x90E5, offset: 0x667BE, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEcvPS2_Ev, symObjAddr: 0xC080, symBinAddr: 0x56100, symSize: 0x18 } + - { offsetInCU: 0x910B, offset: 0x667E4, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE8destructENS_14array_iteratorIS2_S3_EE, symObjAddr: 0xC0D0, symBinAddr: 0x56150, symSize: 0x34 } + - { offsetInCU: 0x9140, offset: 0x66819, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE9constructIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0xC104, symBinAddr: 0x56184, symSize: 0x74 } + - { offsetInCU: 0x91A2, offset: 0x6687B, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEpLEi, symObjAddr: 0xC264, symBinAddr: 0x56238, symSize: 0x28 } + - { offsetInCU: 0x91D6, offset: 0x668AF, size: 0x8, addend: 0x0, symName: __ZNK2bq14array_iteratorIPNS_13appender_baseENS_5arrayIS2_Lm0EEEEptEv, symObjAddr: 0xC28C, symBinAddr: 0x56260, symSize: 0x18 } + - { offsetInCU: 0x26, offset: 0x66973, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmapC2Ev, symObjAddr: 0x0, symBinAddr: 0x562CC, symSize: 0x18 } + - { offsetInCU: 0x609, offset: 0x66F56, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmapC2Ev, symObjAddr: 0x0, symBinAddr: 0x562CC, symSize: 0x18 } + - { offsetInCU: 0x633, offset: 0x66F80, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmapC1Ev, symObjAddr: 0x18, symBinAddr: 0x562E4, symSize: 0x2C } + - { offsetInCU: 0x65D, offset: 0x66FAA, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap5clearEv, symObjAddr: 0x98, symBinAddr: 0x56310, symSize: 0x18 } + - { offsetInCU: 0x683, offset: 0x66FD0, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelENS_9log_levelE, symObjAddr: 0xB0, symBinAddr: 0x56328, symSize: 0x30 } + - { offsetInCU: 0x6B7, offset: 0x67004, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelERKNS_11string_baseIcEE, symObjAddr: 0xE0, symBinAddr: 0x56358, symSize: 0x2B4 } + - { offsetInCU: 0x6EB, offset: 0x67038, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap10have_levelENS_9log_levelE, symObjAddr: 0x5E4, symBinAddr: 0x5660C, symSize: 0x34 } + - { offsetInCU: 0x71F, offset: 0x6706C, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap14get_bitmap_ptrEv, symObjAddr: 0x618, symBinAddr: 0x56640, symSize: 0x14 } + - { offsetInCU: 0x26, offset: 0x670BD, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerC2Ev, symObjAddr: 0x0, symBinAddr: 0x56654, symSize: 0x1E4 } + - { offsetInCU: 0x3E, offset: 0x670D5, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager18static_inst_cache_E, symObjAddr: 0x2DDD8, symBinAddr: 0x69B20, symSize: 0x0 } + - { offsetInCU: 0x2BC4, offset: 0x69C5B, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardIPNS_7log_impEEEOT_RNS_16remove_referenceIS3_E4typeE, symObjAddr: 0x5EEC, symBinAddr: 0x5977C, symSize: 0x14 } + - { offsetInCU: 0x2BF9, offset: 0x69C90, size: 0x8, addend: 0x0, symName: __ZN2bq4moveIRNS_10unique_ptrINS_7log_impEEEEEONS_16remove_referenceIT_E4typeEOS6_, symObjAddr: 0x5F1C, symBinAddr: 0x59790, symSize: 0x14 } + - { offsetInCU: 0x2C2E, offset: 0x69CC5, size: 0x8, addend: 0x0, symName: __ZN2bq7forwardINS_10unique_ptrINS_7log_impEEEEEOT_RNS_16remove_referenceIS4_E4typeE, symObjAddr: 0x5F90, symBinAddr: 0x59804, symSize: 0x14 } + - { offsetInCU: 0x3051, offset: 0x6A0E8, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager22scoped_static_instanceEv, symObjAddr: 0x268, symBinAddr: 0x56864, symSize: 0x94 } + - { offsetInCU: 0x3072, offset: 0x6A109, size: 0x8, addend: 0x0, symName: __ZZN2bq11log_manager22scoped_static_instanceEvE5inst_, symObjAddr: 0x2DDE0, symBinAddr: 0x698D0, symSize: 0x0 } + - { offsetInCU: 0x36A1, offset: 0x6A738, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerC2Ev, symObjAddr: 0x0, symBinAddr: 0x56654, symSize: 0x1E4 } + - { offsetInCU: 0x3838, offset: 0x6A8CF, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerC1Ev, symObjAddr: 0x23C, symBinAddr: 0x56838, symSize: 0x2C } + - { offsetInCU: 0x3862, offset: 0x6A8F9, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerD1Ev, symObjAddr: 0x2FC, symBinAddr: 0x568F8, symSize: 0x2C } + - { offsetInCU: 0x388C, offset: 0x6A923, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager8instanceEv, symObjAddr: 0x328, symBinAddr: 0x56924, symSize: 0x40 } + - { offsetInCU: 0x39E3, offset: 0x6AA7A, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerD2Ev, symObjAddr: 0x368, symBinAddr: 0x56964, symSize: 0x58C } + - { offsetInCU: 0x3DE5, offset: 0x6AE7C, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEEptEv, symObjAddr: 0x928, symBinAddr: 0x56EF0, symSize: 0x18 } + - { offsetInCU: 0x3ECB, offset: 0x6AF62, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager10create_logENS_11string_baseIcEERKS2_RKNS_5arrayIS2_Lm0EEE, symObjAddr: 0x9B0, symBinAddr: 0x56F08, symSize: 0xDB0 } + - { offsetInCU: 0x4695, offset: 0x6B72C, size: 0x8, addend: 0x0, symName: __ZNK2bq10unique_ptrINS_7log_impEEcvPvEv, symObjAddr: 0x1830, symBinAddr: 0x57CB8, symSize: 0x18 } + - { offsetInCU: 0x46B9, offset: 0x6B750, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcEneERKS1_, symObjAddr: 0x1998, symBinAddr: 0x57CD0, symSize: 0x34 } + - { offsetInCU: 0x46EE, offset: 0x6B785, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEE3getEv, symObjAddr: 0x19CC, symBinAddr: 0x57D04, symSize: 0x18 } + - { offsetInCU: 0x4726, offset: 0x6B7BD, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_7log_impEEC1EPS1_, symObjAddr: 0x1ADC, symBinAddr: 0x57D1C, symSize: 0x34 } + - { offsetInCU: 0x475C, offset: 0x6B7F3, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_7log_impEEptEv, symObjAddr: 0x1B10, symBinAddr: 0x57D50, symSize: 0x18 } + - { offsetInCU: 0x4780, offset: 0x6B817, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_7log_impEE8transferEv, symObjAddr: 0x1B28, symBinAddr: 0x57D68, symSize: 0x24 } + - { offsetInCU: 0x47B2, offset: 0x6B849, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_7log_impEED1Ev, symObjAddr: 0x1B4C, symBinAddr: 0x57D8C, symSize: 0x2C } + - { offsetInCU: 0x47DA, offset: 0x6B871, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager12reset_configERKNS_11string_baseIcEES4_, symObjAddr: 0x1B78, symBinAddr: 0x57DB8, symSize: 0x414 } + - { offsetInCU: 0x4A15, offset: 0x6BAAC, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager17process_by_workerEPNS_7log_impEb, symObjAddr: 0x1F8C, symBinAddr: 0x581CC, symSize: 0x1A8 } + - { offsetInCU: 0x4B04, offset: 0x6BB9B, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager15force_flush_allEv, symObjAddr: 0x2194, symBinAddr: 0x58374, symSize: 0x2B8 } + - { offsetInCU: 0x4C7C, offset: 0x6BD13, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager11force_flushEy, symObjAddr: 0x244C, symBinAddr: 0x5862C, symSize: 0xFC } + - { offsetInCU: 0x4CCC, offset: 0x6BD63, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager12awake_workerEv, symObjAddr: 0x25A0, symBinAddr: 0x58728, symSize: 0x28 } + - { offsetInCU: 0x4CF2, offset: 0x6BD89, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager17get_public_layoutEv, symObjAddr: 0x25C8, symBinAddr: 0x58750, symSize: 0x18 } + - { offsetInCU: 0x4D18, offset: 0x6BDAF, size: 0x8, addend: 0x0, symName: __ZNK2bq11log_manager14get_logs_countEv, symObjAddr: 0x25E0, symBinAddr: 0x58768, symSize: 0x24 } + - { offsetInCU: 0x4D5B, offset: 0x6BDF2, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager16get_log_by_indexEj, symObjAddr: 0x2604, symBinAddr: 0x5878C, symSize: 0xE8 } + - { offsetInCU: 0x4DDF, offset: 0x6BE76, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_10unique_ptrINS_7log_impEEEE8destructEPS3_m, symObjAddr: 0x4FE4, symBinAddr: 0x58874, symSize: 0x2C } + - { offsetInCU: 0x4E0F, offset: 0x6BEA6, size: 0x8, addend: 0x0, symName: __ZN2bq23object_array_destructorINS_10unique_ptrINS_7log_impEEEE15destructor_implIS3_NS4_27non_trivial_destructor_typeEE8destructEPS3_m, symObjAddr: 0x5010, symBinAddr: 0x588A0, symSize: 0x7C } + - { offsetInCU: 0x4E5B, offset: 0x6BEF2, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_10unique_ptrINS_7log_impEEEE8destructEPS3_, symObjAddr: 0x508C, symBinAddr: 0x5891C, symSize: 0x24 } + - { offsetInCU: 0x4E7D, offset: 0x6BF14, size: 0x8, addend: 0x0, symName: __ZN2bq17object_destructorINS_10unique_ptrINS_7log_impEEEE15destructor_implIS3_NS4_27non_trivial_destructor_typeEE8destructEPS3_, symObjAddr: 0x50B0, symBinAddr: 0x58940, symSize: 0x3C } + - { offsetInCU: 0x4E9F, offset: 0x6BF36, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEED1Ev, symObjAddr: 0x50EC, symBinAddr: 0x5897C, symSize: 0x2C } + - { offsetInCU: 0x4EC7, offset: 0x6BF5E, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEED2Ev, symObjAddr: 0x5118, symBinAddr: 0x589A8, symSize: 0x2C } + - { offsetInCU: 0x4EEF, offset: 0x6BF86, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEE5resetEv, symObjAddr: 0x5144, symBinAddr: 0x589D4, symSize: 0x6C } + - { offsetInCU: 0x4F13, offset: 0x6BFAA, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_7log_impEEC2EPS1_, symObjAddr: 0x51B0, symBinAddr: 0x58A40, symSize: 0x20 } + - { offsetInCU: 0x4F49, offset: 0x6BFE0, size: 0x8, addend: 0x0, symName: __ZN2bq10scoped_objINS_7log_impEED2Ev, symObjAddr: 0x51D0, symBinAddr: 0x58A60, symSize: 0x78 } + - { offsetInCU: 0x50A3, offset: 0x6C13A, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineINS_10unique_ptrINS_7log_impEEELm0EE6insertIJPS2_EEEvNS_21array_iterator_inlineIS3_S4_EEDpOT_, symObjAddr: 0x5248, symBinAddr: 0x58AD8, symSize: 0xCA4 } + - { offsetInCU: 0x5857, offset: 0x6C8EE, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEEC1IS1_EEONS0_IT_EE, symObjAddr: 0x5F30, symBinAddr: 0x597A4, symSize: 0x34 } + - { offsetInCU: 0x5896, offset: 0x6C92D, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEEC2IS1_EEONS0_IT_EE, symObjAddr: 0x5F64, symBinAddr: 0x597D8, symSize: 0x2C } + - { offsetInCU: 0x58D5, offset: 0x6C96C, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEEaSIS1_EERS2_ONS0_IT_EE, symObjAddr: 0x5FA4, symBinAddr: 0x59818, symSize: 0x6C } + - { offsetInCU: 0x5911, offset: 0x6C9A8, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEEC1EPS1_, symObjAddr: 0x6010, symBinAddr: 0x59884, symSize: 0x34 } + - { offsetInCU: 0x5947, offset: 0x6C9DE, size: 0x8, addend: 0x0, symName: __ZN2bq10unique_ptrINS_7log_impEEC2EPS1_, symObjAddr: 0x6044, symBinAddr: 0x598B8, symSize: 0x20 } + - { offsetInCU: 0x26, offset: 0x6CA62, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotC2EPNS_7log_impE, symObjAddr: 0x0, symBinAddr: 0x598D8, symSize: 0x80 } + - { offsetInCU: 0x2342, offset: 0x6ED7E, size: 0x8, addend: 0x0, symName: __ZN2bq9min_valueIjEET_RKS1_S3_, symObjAddr: 0x1530, symBinAddr: 0x5A658, symSize: 0x58 } + - { offsetInCU: 0x2C8C, offset: 0x6F6C8, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotC2EPNS_7log_impE, symObjAddr: 0x0, symBinAddr: 0x598D8, symSize: 0x80 } + - { offsetInCU: 0x2CC4, offset: 0x6F700, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9spin_lockC1Ev, symObjAddr: 0xB4, symBinAddr: 0x59958, symSize: 0x2C } + - { offsetInCU: 0x2CEC, offset: 0x6F728, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotC1EPNS_7log_impE, symObjAddr: 0xE0, symBinAddr: 0x59984, symSize: 0x34 } + - { offsetInCU: 0x2D24, offset: 0x6F760, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotD2Ev, symObjAddr: 0x114, symBinAddr: 0x599B8, symSize: 0xE0 } + - { offsetInCU: 0x2D67, offset: 0x6F7A3, size: 0x8, addend: 0x0, symName: __ZN2bq8platform16scoped_spin_lockC1ERNS0_9spin_lockE, symObjAddr: 0x1F4, symBinAddr: 0x59A98, symSize: 0x34 } + - { offsetInCU: 0x2D9D, offset: 0x6F7D9, size: 0x8, addend: 0x0, symName: __ZN2bq8platform16scoped_spin_lockD1Ev, symObjAddr: 0x228, symBinAddr: 0x59ACC, symSize: 0x2C } + - { offsetInCU: 0x2DC5, offset: 0x6F801, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotD1Ev, symObjAddr: 0x2AC, symBinAddr: 0x59AF8, symSize: 0x2C } + - { offsetInCU: 0x2DEF, offset: 0x6F82B, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot17reset_buffer_sizeEj, symObjAddr: 0x2D8, symBinAddr: 0x59B24, symSize: 0xEC } + - { offsetInCU: 0x2E31, offset: 0x6F86D, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot10write_dataEPKhj, symObjAddr: 0x488, symBinAddr: 0x59C10, symSize: 0x12C } + - { offsetInCU: 0x2EB9, offset: 0x6F8F5, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot20take_snapshot_stringEb, symObjAddr: 0x5B4, symBinAddr: 0x59D3C, symSize: 0x31C } + - { offsetInCU: 0x30A4, offset: 0x6FAE0, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9spin_lock4lockEv, symObjAddr: 0x8D0, symBinAddr: 0x5A058, symSize: 0x600 } + - { offsetInCU: 0x3405, offset: 0x6FE41, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIcNS_5arrayIcLm1EEEEmiEm, symObjAddr: 0x15BC, symBinAddr: 0x5A6B0, symSize: 0x44 } + - { offsetInCU: 0x344C, offset: 0x6FE88, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKcNS_5arrayIcLm1EEEEC1IcS3_EERKNS0_IT_T0_EE, symObjAddr: 0x1600, symBinAddr: 0x5A6F4, symSize: 0x34 } + - { offsetInCU: 0x3496, offset: 0x6FED2, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot23release_snapshot_stringEv, symObjAddr: 0x1634, symBinAddr: 0x5A728, symSize: 0x28 } + - { offsetInCU: 0x3510, offset: 0x6FF4C, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9spin_lock6unlockEv, symObjAddr: 0x165C, symBinAddr: 0x5A750, symSize: 0x1C8 } + - { offsetInCU: 0x3751, offset: 0x7018D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9spin_lockC2Ev, symObjAddr: 0x1824, symBinAddr: 0x5A918, symSize: 0x48 } + - { offsetInCU: 0x377E, offset: 0x701BA, size: 0x8, addend: 0x0, symName: __ZN2bq19cache_friendly_typeINS_8platform6atomicIbEEEC1IbEEOT_, symObjAddr: 0x186C, symBinAddr: 0x5A960, symSize: 0x34 } + - { offsetInCU: 0x37BD, offset: 0x701F9, size: 0x8, addend: 0x0, symName: __ZN2bq19cache_friendly_typeINS_8platform6atomicIbEEEC2IbEEOT_, symObjAddr: 0x18D4, symBinAddr: 0x5A994, symSize: 0x44 } + - { offsetInCU: 0x37FC, offset: 0x70238, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIbEC1ERKb, symObjAddr: 0x192C, symBinAddr: 0x5A9D8, symSize: 0x34 } + - { offsetInCU: 0x3832, offset: 0x7026E, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIbEC2ERKb, symObjAddr: 0x1960, symBinAddr: 0x5AA0C, symSize: 0x34 } + - { offsetInCU: 0x3868, offset: 0x702A4, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12_atomic_baseIbLm1EEC2ERKb, symObjAddr: 0x1994, symBinAddr: 0x5AA40, symSize: 0x28 } + - { offsetInCU: 0x389E, offset: 0x702DA, size: 0x8, addend: 0x0, symName: __ZN2bq8platform16scoped_spin_lockC2ERNS0_9spin_lockE, symObjAddr: 0x1A14, symBinAddr: 0x5AA68, symSize: 0x3C } + - { offsetInCU: 0x38D4, offset: 0x70310, size: 0x8, addend: 0x0, symName: __ZN2bq8platform16scoped_spin_lockD2Ev, symObjAddr: 0x1A50, symBinAddr: 0x5AAA4, symSize: 0x30 } + - { offsetInCU: 0x38FC, offset: 0x70338, size: 0x8, addend: 0x0, symName: __ZN2bq19cache_friendly_typeINS_8platform6atomicIbEEE3getEv, symObjAddr: 0x2324, symBinAddr: 0x5AAD4, symSize: 0x18 } + - { offsetInCU: 0x3920, offset: 0x7035C, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIcNS_5arrayIcLm1EEEEmIEi, symObjAddr: 0x2DDC, symBinAddr: 0x5AAEC, symSize: 0x28 } + - { offsetInCU: 0x3954, offset: 0x70390, size: 0x8, addend: 0x0, symName: __ZN2bq14array_iteratorIKcNS_5arrayIcLm1EEEEC2IcS3_EERKNS0_IT_T0_EE, symObjAddr: 0x2E04, symBinAddr: 0x5AB14, symSize: 0x30 } + - { offsetInCU: 0x26, offset: 0x70419, size: 0x8, addend: 0x0, symName: __ZN2bq11thread_info4initEv, symObjAddr: 0x0, symBinAddr: 0x5AB44, symSize: 0x134 } + - { offsetInCU: 0x61D, offset: 0x70A10, size: 0x8, addend: 0x0, symName: __ZN2bq11thread_info4initEv, symObjAddr: 0x0, symBinAddr: 0x5AB44, symSize: 0x134 } + - { offsetInCU: 0x44, offset: 0x70AAA, size: 0x8, addend: 0x0, symName: __ZN2bqL19log_worker_name_seqE, symObjAddr: 0x1EFD8, symBinAddr: 0x69B10, symSize: 0x0 } + - { offsetInCU: 0x2C73, offset: 0x736D9, size: 0x8, addend: 0x0, symName: __ZN2bq10log_workerC2Ev, symObjAddr: 0x34, symBinAddr: 0x5AC78, symSize: 0x98 } + - { offsetInCU: 0x2CA2, offset: 0x73708, size: 0x8, addend: 0x0, symName: __ZN2bq8platform11thread_attrC1Ev, symObjAddr: 0xCC, symBinAddr: 0x5AD10, symSize: 0x2C } + - { offsetInCU: 0x2CCC, offset: 0x73732, size: 0x8, addend: 0x0, symName: __ZN2bq10log_workerC1Ev, symObjAddr: 0x12C, symBinAddr: 0x5AD3C, symSize: 0x2C } + - { offsetInCU: 0x2CF6, offset: 0x7375C, size: 0x8, addend: 0x0, symName: __ZN2bq10log_workerD2Ev, symObjAddr: 0x158, symBinAddr: 0x5AD68, symSize: 0x54 } + - { offsetInCU: 0x2D20, offset: 0x73786, size: 0x8, addend: 0x0, symName: __ZN2bq10log_workerD1Ev, symObjAddr: 0x1AC, symBinAddr: 0x5ADBC, symSize: 0x2C } + - { offsetInCU: 0x2D4A, offset: 0x737B0, size: 0x8, addend: 0x0, symName: __ZN2bq10log_workerD0Ev, symObjAddr: 0x1D8, symBinAddr: 0x5ADE8, symSize: 0x30 } + - { offsetInCU: 0x2E24, offset: 0x7388A, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker4initENS_15log_thread_modeEPNS_7log_impE, symObjAddr: 0x208, symBinAddr: 0x5AE18, symSize: 0x44C } + - { offsetInCU: 0x3002, offset: 0x73A68, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker5awakeEv, symObjAddr: 0x6B4, symBinAddr: 0x5B264, symSize: 0x28 } + - { offsetInCU: 0x30D3, offset: 0x73B39, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker20awake_and_wait_beginEPNS_7log_impE, symObjAddr: 0x6DC, symBinAddr: 0x5B28C, symSize: 0x244 } + - { offsetInCU: 0x32BA, offset: 0x73D20, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker19awake_and_wait_joinEv, symObjAddr: 0x920, symBinAddr: 0x5B4D0, symSize: 0x130 } + - { offsetInCU: 0x3381, offset: 0x73DE7, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker3runEv, symObjAddr: 0xA50, symBinAddr: 0x5B600, symSize: 0x354 } + - { offsetInCU: 0x358A, offset: 0x73FF0, size: 0x8, addend: 0x0, symName: __ZN2bq8platform11thread_attrC2Ev, symObjAddr: 0xE14, symBinAddr: 0x5B954, symSize: 0x1C } + - { offsetInCU: 0x26, offset: 0x74056, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferC2Ejy, symObjAddr: 0x0, symBinAddr: 0x5B9B0, symSize: 0x4D4 } + - { offsetInCU: 0xD7B, offset: 0x74DAB, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferC2Ejy, symObjAddr: 0x0, symBinAddr: 0x5B9B0, symSize: 0x4D4 } + - { offsetInCU: 0x1182, offset: 0x751B2, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer11cursor_typeC1Ev, symObjAddr: 0x4D4, symBinAddr: 0x5BE84, symSize: 0x2C } + - { offsetInCU: 0x11AF, offset: 0x751DF, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIjEC1Ev, symObjAddr: 0x558, symBinAddr: 0x5BEB0, symSize: 0x2C } + - { offsetInCU: 0x11D7, offset: 0x75207, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIyEC1Ev, symObjAddr: 0x584, symBinAddr: 0x5BEDC, symSize: 0x2C } + - { offsetInCU: 0x11FF, offset: 0x7522F, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer17create_memory_mapEjy, symObjAddr: 0x5B0, symBinAddr: 0x5BF08, symSize: 0x368 } + - { offsetInCU: 0x135F, offset: 0x7538F, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer16init_with_memoryEj, symObjAddr: 0x918, symBinAddr: 0x5C270, symSize: 0x3B8 } + - { offsetInCU: 0x179A, offset: 0x757CA, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer33try_recover_from_exist_memory_mapEv, symObjAddr: 0xCD0, symBinAddr: 0x5C628, symSize: 0x608 } + - { offsetInCU: 0x1C10, offset: 0x75C40, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer20init_with_memory_mapEv, symObjAddr: 0x12D8, symBinAddr: 0x5CC30, symSize: 0x300 } + - { offsetInCU: 0x1F95, offset: 0x75FC5, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferC1Ejy, symObjAddr: 0x15D8, symBinAddr: 0x5CF30, symSize: 0x3C } + - { offsetInCU: 0x1FDB, offset: 0x7600B, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferD2Ev, symObjAddr: 0x1614, symBinAddr: 0x5CF6C, symSize: 0x64 } + - { offsetInCU: 0x2005, offset: 0x76035, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer17uninit_memory_mapEv, symObjAddr: 0x1678, symBinAddr: 0x5CFD0, symSize: 0x70 } + - { offsetInCU: 0x202C, offset: 0x7605C, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferD1Ev, symObjAddr: 0x1714, symBinAddr: 0x5D040, symSize: 0x2C } + - { offsetInCU: 0x2186, offset: 0x761B6, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer17alloc_write_chunkEj, symObjAddr: 0x1740, symBinAddr: 0x5D06C, symSize: 0x18C0 } + - { offsetInCU: 0x2E76, offset: 0x76EA6, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer18commit_write_chunkERKNS_24ring_buffer_write_handleE, symObjAddr: 0x302C, symBinAddr: 0x5E92C, symSize: 0x3B0 } + - { offsetInCU: 0x30CE, offset: 0x770FE, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer10begin_readEv, symObjAddr: 0x33DC, symBinAddr: 0x5ECDC, symSize: 0x138 } + - { offsetInCU: 0x3110, offset: 0x77140, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer4readEv, symObjAddr: 0x3514, symBinAddr: 0x5EE14, symSize: 0x860 } + - { offsetInCU: 0x3424, offset: 0x77454, size: 0x8, addend: 0x0, symName: __ZN2bq23ring_buffer_read_handleC1Ev, symObjAddr: 0x3D74, symBinAddr: 0x5F674, symSize: 0x2C } + - { offsetInCU: 0x344E, offset: 0x7747E, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer8end_readEv, symObjAddr: 0x3DA0, symBinAddr: 0x5F6A0, symSize: 0x7AC } + - { offsetInCU: 0x36E5, offset: 0x77715, size: 0x8, addend: 0x0, symName: __ZN2bq17memory_map_handleaSEOS0_, symObjAddr: 0x46B8, symBinAddr: 0x5FE4C, symSize: 0x4C } + - { offsetInCU: 0x3714, offset: 0x77744, size: 0x8, addend: 0x0, symName: __ZNK2bq17memory_map_handle15get_mapped_dataEv, symObjAddr: 0x4728, symBinAddr: 0x5FE98, symSize: 0x18 } + - { offsetInCU: 0x3738, offset: 0x77768, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer11cursor_typeC2Ev, symObjAddr: 0x4740, symBinAddr: 0x5FEB0, symSize: 0xE4 } + - { offsetInCU: 0x386E, offset: 0x7789E, size: 0x8, addend: 0x0, symName: __ZN2bq23ring_buffer_read_handleC2Ev, symObjAddr: 0x4A48, symBinAddr: 0x5FF94, symSize: 0x2C } + - { offsetInCU: 0x3898, offset: 0x778C8, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIjEC2Ev, symObjAddr: 0x4ACC, symBinAddr: 0x5FFC0, symSize: 0x2C } + - { offsetInCU: 0x38C0, offset: 0x778F0, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12_atomic_baseIjLm4EEC2Ev, symObjAddr: 0x4AF8, symBinAddr: 0x5FFEC, symSize: 0x18 } + - { offsetInCU: 0x38E8, offset: 0x77918, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6atomicIyEC2Ev, symObjAddr: 0x4B10, symBinAddr: 0x60004, symSize: 0x2C } + - { offsetInCU: 0x3910, offset: 0x77940, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12_atomic_baseIyLm8EEC2Ev, symObjAddr: 0x4B3C, symBinAddr: 0x60030, symSize: 0x18 } ... diff --git a/dist/dynamic_lib/ios/Debug/BqLog.framework/BqLog b/dist/dynamic_lib/ios/Debug/BqLog.framework/BqLog index 46baaba..4a040a2 100755 Binary files a/dist/dynamic_lib/ios/Debug/BqLog.framework/BqLog and b/dist/dynamic_lib/ios/Debug/BqLog.framework/BqLog differ diff --git a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/array_def.h b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/array_def.h index 61fa7c0..22a1893 100644 --- a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/array_def.h +++ b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/array_def.h @@ -48,26 +48,20 @@ namespace bq { template BQ_ARRAY_ITER_CLS_NAME& operator=(const BQ_ARRAY_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); BQ_ARRAY_ITER_CLS_NAME& operator++(); BQ_ARRAY_ITER_CLS_NAME operator++(int32_t); @@ -133,11 +127,11 @@ namespace bq { const value_type& operator[](size_type idx) const; - template - bool operator==(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); - template - bool operator!=(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); BQ_ARRAY_CLS_NAME& operator=(const BQ_ARRAY_CLS_NAME& rhs); diff --git a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/array_impl.h b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/array_impl.h index 87b5746..d82f47f 100644 --- a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/array_impl.h +++ b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/array_impl.h @@ -50,60 +50,53 @@ namespace bq { return *this; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ == rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ == array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ != rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ != array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ < rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ < array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ <= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ <= array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ > rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ > array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ >= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ >= array2.data_; } - template - template - BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type BQ_ARRAY_ITER_CLS_NAME::operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not sub two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ - rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not sub two bq::array_iterator generated from different bq::array"); + return array1.data_ - array2.data_; } template @@ -315,26 +308,24 @@ namespace bq { return data_[idx]; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator==(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - if (size_ != rhs.size_) { + if (array1.size() != array2.size()) { return false; } - for (size_type i = 0; i < size_; ++i) { - if (this->operator[](i) != rhs[i]) { + for (typename BQ_ARRAY_CLS_NAME::size_type i = 0; i < array1.size(); ++i) { + if (array1[i] != array2[i]) { return false; } } return true; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator!=(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - return !operator==(rhs); + return !(array1 == array2); } template diff --git a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/hash_map_def.h b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/hash_map_def.h index 1d69fb4..27b1ab4 100644 --- a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/hash_map_def.h +++ b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/hash_map_def.h @@ -77,6 +77,7 @@ namespace bq { typedef const pair_type& const_pair_type_ref; private: + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; container_type_ptr parent_; size_type node_index_; size_type bucket_idx_; @@ -103,11 +104,10 @@ namespace bq { template BQ_HASH_MAP_ITER_CLS_NAME& operator=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); + template + friend bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); BQ_HASH_MAP_ITER_CLS_NAME& operator++(); @@ -181,7 +181,7 @@ namespace bq { // we need manually control the destructive behaviour of every node item. bq::array didn't meets our needs because it has its own destructive logic. value_node_buffer_head nodes_; - constexpr static size_type BQ_BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; size_type size_; size_type head_; size_type tail_; diff --git a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/hash_map_impl.h b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/hash_map_impl.h index 7d07675..3c0898d 100644 --- a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/hash_map_impl.h +++ b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/hash_map_impl.h @@ -34,31 +34,29 @@ namespace bq { return *this; } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - if (rhs.node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX - && node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (map1.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX + && map2.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) { return true; } - return (node_index_ == rhs.node_index_) - && (parent_ == rhs.parent_) - && (bucket_idx_ == rhs.bucket_idx_); + return (map1.node_index_ == map2.node_index_) + && (map1.parent_ == map2.parent_) + && (map1.bucket_idx_ == map2.bucket_idx_); } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - return !(*this == rhs); + return !(map1 == map2); } template BQ_HASH_MAP_INLINE BQ_HASH_MAP_ITER_CLS_NAME& BQ_HASH_MAP_ITER_CLS_NAME::operator++() { node_index_ = parent_->get_next_node_index(node_index_); - bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; + bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; return *this; } @@ -105,9 +103,9 @@ namespace bq { BQ_HASH_MAP_INLINE BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_CLS_NAME(size_type init_bucket_size /* = 0 */) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(init_bucket_size); expand_nodes(buckets_size()); } @@ -124,9 +122,9 @@ namespace bq { , nodes_(decltype(nodes_)()) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(rhs.buckets_size()); expand_nodes(rhs.nodes_size()); for (BQ_HASH_MAP_CLS_NAME::const_iterator iter = rhs.begin(); iter != rhs.end(); ++iter) { @@ -147,9 +145,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -250,9 +248,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -272,12 +270,12 @@ namespace bq { auto& cur_node = nodes_[where_it.node_index_]; size_type prev_index = cur_node.prev; size_type next_index = cur_node.next; - if (prev_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[prev_index].next = cur_node.next; } else { head_ = cur_node.next; } - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[next_index].prev = cur_node.prev; } else { tail_ = cur_node.prev; @@ -286,11 +284,11 @@ namespace bq { // buckets size_type bucket_index = where_it.bucket_idx_; if (where_it.node_index_ == buckets_[bucket_index]) { - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX + if (next_index != BQ_HASH_MAP_INVALID_INDEX && nodes_[next_index].bucket_idx == bucket_index) { buckets_[bucket_index] = next_index; } else { - buckets_[bucket_index] = BQ_BQ_HASH_MAP_INVALID_INDEX; + buckets_[bucket_index] = BQ_HASH_MAP_INVALID_INDEX; } } @@ -316,7 +314,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::begin() { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -325,7 +323,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::begin() const { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return const_iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -334,19 +332,19 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::end() { - return iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::end() const { - return const_iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return const_iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_CLS_NAME::iterator_legal_check(const const_iterator& iter) const { - if (iter.node_index_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (iter.node_index_ == BQ_HASH_MAP_INVALID_INDEX) { return false; } if (iter.parent_ != this) { @@ -385,16 +383,16 @@ namespace bq { if (nodes_size() > 0) { free_ = 0; for (typename decltype(nodes_)::size_type i = 0; i < nodes_.size(); ++i) { - nodes_[i].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[i].prev = BQ_HASH_MAP_INVALID_INDEX; nodes_[i].next = static_cast(i) + 1; } - nodes_[nodes_.size() - 1].next = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[nodes_.size() - 1].next = BQ_HASH_MAP_INVALID_INDEX; } else { - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } size_ = 0; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -414,9 +412,9 @@ namespace bq { nodes_.size_ = 0; } size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -474,8 +472,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_prev_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].prev; } @@ -483,8 +481,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_next_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].next; } @@ -508,7 +506,7 @@ namespace bq { size_type cnt = 0; #endif size_type index = head_; - while (index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (index != BQ_HASH_MAP_INVALID_INDEX) { #ifndef NDEBUG cnt++; #endif @@ -519,7 +517,7 @@ namespace bq { size_type bucket_idx = get_bucket_index_by_key(cur_node.entry.key()); cur_node.bucket_idx = bucket_idx; size_type& bucket_value_ref = buckets_[bucket_idx]; - if (bucket_value_ref == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (bucket_value_ref == BQ_HASH_MAP_INVALID_INDEX) { bucket_value_ref = cur_index; } else if (cur_node.prev != bucket_value_ref) { size_type old_prev = cur_node.prev; @@ -528,34 +526,34 @@ namespace bq { size_type new_prev = bucket_value_ref; size_type new_next = nodes_[new_prev].next; - if (old_prev != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_prev != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_prev].next = old_next; } - if (old_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_next].prev = old_prev; } cur_node.prev = new_prev; cur_node.next = new_next; nodes_[new_prev].next = cur_index; - if (new_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (new_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[new_next].prev = cur_index; } if (tail_ == cur_index) { tail_ = old_prev; } if (cur_node.prev == cur_node.next) { - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; } } } #ifndef NDEBUG assert(buckets_size() == capacity); assert(cnt == this->size()); - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[head_].prev == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[head_].prev == BQ_HASH_MAP_INVALID_INDEX); } - if (tail_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[tail_].next == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (tail_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[tail_].next == BQ_HASH_MAP_INVALID_INDEX); } #endif } @@ -577,7 +575,7 @@ namespace bq { new_data[i].next = nodes_[i].next; } for (size_type i = new_space; i > old_space; --i) { - new_data[i - 1].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + new_data[i - 1].prev = BQ_HASH_MAP_INVALID_INDEX; new_data[i - 1].next = free_; free_ = i - 1; } @@ -596,15 +594,15 @@ namespace bq { template BQ_HASH_MAP_INLINE BQ_HASH_MAP_KV_CLS_NAME::size_type, typename BQ_HASH_MAP_CLS_NAME::size_type> BQ_HASH_MAP_CLS_NAME::find_index_and_bucket_idx_by_key(const_key_type_ref key) const { - size_type index = BQ_BQ_HASH_MAP_INVALID_INDEX; - size_type bucket_idx = BQ_BQ_HASH_MAP_INVALID_INDEX; + size_type index = BQ_HASH_MAP_INVALID_INDEX; + size_type bucket_idx = BQ_HASH_MAP_INVALID_INDEX; if (buckets_size() > 0) { bucket_idx = get_bucket_index_by_key(key); size_type valid_index = buckets_[bucket_idx]; - while (valid_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (valid_index != BQ_HASH_MAP_INVALID_INDEX) { auto& node = nodes_[valid_index]; if (node.bucket_idx != bucket_idx) { - valid_index = BQ_BQ_HASH_MAP_INVALID_INDEX; + valid_index = BQ_HASH_MAP_INVALID_INDEX; break; } if (node.entry.key() == key) { @@ -626,16 +624,16 @@ namespace bq { } // This must be called after expand_buckets because it will reform the buckets and nodes. auto node_bucket_indices_pair = find_index_and_bucket_idx_by_key(key); - assert(node_bucket_indices_pair.key() == BQ_BQ_HASH_MAP_INVALID_INDEX && "key already exist"); + assert(node_bucket_indices_pair.key() == BQ_HASH_MAP_INVALID_INDEX && "key already exist"); auto bucket_idx = node_bucket_indices_pair.value(); - if (free_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (free_ == BQ_HASH_MAP_INVALID_INDEX) { expand_nodes(nodes_size() + 1); } size_type& target_bucket_value = buckets_[bucket_idx]; size_type next_node_index = target_bucket_value; - size_type prev_node_index = (target_bucket_value == BQ_BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; - assert(free_ != BQ_BQ_HASH_MAP_INVALID_INDEX); + size_type prev_node_index = (target_bucket_value == BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; + assert(free_ != BQ_HASH_MAP_INVALID_INDEX); size_type new_index = free_; free_ = nodes_[new_index].next; @@ -644,13 +642,13 @@ namespace bq { new_node.next = next_node_index; new_node.prev = prev_node_index; new_node.bucket_idx = bucket_idx; - if (prev_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& prev_node = nodes_[prev_node_index]; prev_node.next = new_index; } else { head_ = new_index; } - if (next_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& next_node = nodes_[next_node_index]; next_node.prev = new_index; } else { diff --git a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/string.h b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/string.h index 5161f36..2ee5d83 100644 --- a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/string.h +++ b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/string.h @@ -121,7 +121,7 @@ namespace bq { string_base(string_base&& rhs) noexcept; string_base(const char_type* str); - + string_base(const char_type* str, size_t char_count); template ::value || is_std_string_view_compatible::value) && !bq::is_same>::value, void>> diff --git a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/string_impl.h b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/string_impl.h index ed68757..43e6192 100644 --- a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/string_impl.h +++ b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_common/types/string_impl.h @@ -158,7 +158,6 @@ namespace bq { insert_batch(begin(), const_iterator(str, nullptr), char_count); } - template template inline bq::string_base::string_base(const S& rhs) diff --git a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_log/bq_log.h b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_log/bq_log.h index 503d237..df6db44 100644 --- a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_log/bq_log.h +++ b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_log/bq_log.h @@ -117,27 +117,45 @@ namespace bq { /// static void unregister_console_callback(bq::type_func_ptr_console_callback callback); + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + /// + static void set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + static bool fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback); + /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer. /// /// c style char*(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> console(bq::log_level level, const STR& str); /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer /// /// std::string or bq::string(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> console(bq::log_level level, const STR& str); public: /// diff --git a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_log/misc/bq_log_api.h b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_log/misc/bq_log_api.h index 9d8e276..21266e9 100644 --- a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_log/misc/bq_log_api.h +++ b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_log/misc/bq_log_api.h @@ -198,14 +198,31 @@ namespace bq { /// /// /// - BQ_API void __register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); /// /// Unregister a console callback /// /// /// - BQ_API void __unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + + /// + /// set console appender buffer enable or not + /// + /// + /// + BQ_API void __api_set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// + /// path through parameter that will pass to on_console_callback + /// True if the console appender buffer is not empty, otherwise False is returned. + BQ_API bool __api_fetch_and_remove_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback on_console_callback, const void* pass_through_param); /// /// The snapshot feature is disabled by default, as it consumes some performance overhead. diff --git a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_log/misc/bq_log_def.h b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_log/misc/bq_log_def.h index 3c14649..591dee6 100644 --- a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_log/misc/bq_log_def.h +++ b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_log/misc/bq_log_def.h @@ -166,6 +166,14 @@ namespace bq { failed_io_error }; + /// + /// `content` is a C-style string and end with '\0'; + /// typedef void(BQ_STDCALL* type_func_ptr_console_callback)(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + /// + /// `content` is a C-style string and end with '\0'; + /// + typedef void(BQ_STDCALL* type_func_ptr_console_buffer_fetch_callback)(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + } diff --git a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_log/misc/bq_log_impl.h b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_log/misc/bq_log_impl.h index 8ae928d..168ee72 100644 --- a/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_log/misc/bq_log_impl.h +++ b/dist/dynamic_lib/ios/Debug/BqLog.framework/Headers/bq_log/misc/bq_log_impl.h @@ -155,22 +155,38 @@ namespace bq { inline void log::register_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__register_console_callbacks(callback); + bq::api::__api_register_console_callbacks(callback); } inline void log::unregister_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__unregister_console_callbacks(callback); + bq::api::__api_unregister_console_callbacks(callback); + } + + inline void log::set_console_buffer_enable(bool enable) + { + bq::api::__api_set_console_buffer_enable(enable); + } + + inline void BQ_STDCALL fetch_and_remove_console_buffer_callback_wrapper(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + bq::type_func_ptr_console_callback real_callback = (bq::type_func_ptr_console_callback)pass_through_param; + real_callback(log_id, category_idx, log_level, content, length); + } + + inline bool log::fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback) + { + return bq::api::__api_fetch_and_remove_console_buffer(fetch_and_remove_console_buffer_callback_wrapper, (const void*)on_console_callback); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str.c_str()); } diff --git a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/BqLog b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/BqLog index 29d9ced..6acb4c4 100755 Binary files a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/BqLog and b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/BqLog differ diff --git a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/array_def.h b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/array_def.h index 61fa7c0..22a1893 100644 --- a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/array_def.h +++ b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/array_def.h @@ -48,26 +48,20 @@ namespace bq { template BQ_ARRAY_ITER_CLS_NAME& operator=(const BQ_ARRAY_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); BQ_ARRAY_ITER_CLS_NAME& operator++(); BQ_ARRAY_ITER_CLS_NAME operator++(int32_t); @@ -133,11 +127,11 @@ namespace bq { const value_type& operator[](size_type idx) const; - template - bool operator==(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); - template - bool operator!=(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); BQ_ARRAY_CLS_NAME& operator=(const BQ_ARRAY_CLS_NAME& rhs); diff --git a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/array_impl.h b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/array_impl.h index 87b5746..d82f47f 100644 --- a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/array_impl.h +++ b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/array_impl.h @@ -50,60 +50,53 @@ namespace bq { return *this; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ == rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ == array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ != rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ != array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ < rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ < array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ <= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ <= array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ > rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ > array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ >= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ >= array2.data_; } - template - template - BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type BQ_ARRAY_ITER_CLS_NAME::operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not sub two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ - rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not sub two bq::array_iterator generated from different bq::array"); + return array1.data_ - array2.data_; } template @@ -315,26 +308,24 @@ namespace bq { return data_[idx]; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator==(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - if (size_ != rhs.size_) { + if (array1.size() != array2.size()) { return false; } - for (size_type i = 0; i < size_; ++i) { - if (this->operator[](i) != rhs[i]) { + for (typename BQ_ARRAY_CLS_NAME::size_type i = 0; i < array1.size(); ++i) { + if (array1[i] != array2[i]) { return false; } } return true; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator!=(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - return !operator==(rhs); + return !(array1 == array2); } template diff --git a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/hash_map_def.h b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/hash_map_def.h index 1d69fb4..27b1ab4 100644 --- a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/hash_map_def.h +++ b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/hash_map_def.h @@ -77,6 +77,7 @@ namespace bq { typedef const pair_type& const_pair_type_ref; private: + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; container_type_ptr parent_; size_type node_index_; size_type bucket_idx_; @@ -103,11 +104,10 @@ namespace bq { template BQ_HASH_MAP_ITER_CLS_NAME& operator=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); + template + friend bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); BQ_HASH_MAP_ITER_CLS_NAME& operator++(); @@ -181,7 +181,7 @@ namespace bq { // we need manually control the destructive behaviour of every node item. bq::array didn't meets our needs because it has its own destructive logic. value_node_buffer_head nodes_; - constexpr static size_type BQ_BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; size_type size_; size_type head_; size_type tail_; diff --git a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/hash_map_impl.h b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/hash_map_impl.h index 7d07675..3c0898d 100644 --- a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/hash_map_impl.h +++ b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/hash_map_impl.h @@ -34,31 +34,29 @@ namespace bq { return *this; } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - if (rhs.node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX - && node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (map1.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX + && map2.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) { return true; } - return (node_index_ == rhs.node_index_) - && (parent_ == rhs.parent_) - && (bucket_idx_ == rhs.bucket_idx_); + return (map1.node_index_ == map2.node_index_) + && (map1.parent_ == map2.parent_) + && (map1.bucket_idx_ == map2.bucket_idx_); } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - return !(*this == rhs); + return !(map1 == map2); } template BQ_HASH_MAP_INLINE BQ_HASH_MAP_ITER_CLS_NAME& BQ_HASH_MAP_ITER_CLS_NAME::operator++() { node_index_ = parent_->get_next_node_index(node_index_); - bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; + bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; return *this; } @@ -105,9 +103,9 @@ namespace bq { BQ_HASH_MAP_INLINE BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_CLS_NAME(size_type init_bucket_size /* = 0 */) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(init_bucket_size); expand_nodes(buckets_size()); } @@ -124,9 +122,9 @@ namespace bq { , nodes_(decltype(nodes_)()) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(rhs.buckets_size()); expand_nodes(rhs.nodes_size()); for (BQ_HASH_MAP_CLS_NAME::const_iterator iter = rhs.begin(); iter != rhs.end(); ++iter) { @@ -147,9 +145,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -250,9 +248,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -272,12 +270,12 @@ namespace bq { auto& cur_node = nodes_[where_it.node_index_]; size_type prev_index = cur_node.prev; size_type next_index = cur_node.next; - if (prev_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[prev_index].next = cur_node.next; } else { head_ = cur_node.next; } - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[next_index].prev = cur_node.prev; } else { tail_ = cur_node.prev; @@ -286,11 +284,11 @@ namespace bq { // buckets size_type bucket_index = where_it.bucket_idx_; if (where_it.node_index_ == buckets_[bucket_index]) { - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX + if (next_index != BQ_HASH_MAP_INVALID_INDEX && nodes_[next_index].bucket_idx == bucket_index) { buckets_[bucket_index] = next_index; } else { - buckets_[bucket_index] = BQ_BQ_HASH_MAP_INVALID_INDEX; + buckets_[bucket_index] = BQ_HASH_MAP_INVALID_INDEX; } } @@ -316,7 +314,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::begin() { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -325,7 +323,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::begin() const { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return const_iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -334,19 +332,19 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::end() { - return iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::end() const { - return const_iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return const_iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_CLS_NAME::iterator_legal_check(const const_iterator& iter) const { - if (iter.node_index_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (iter.node_index_ == BQ_HASH_MAP_INVALID_INDEX) { return false; } if (iter.parent_ != this) { @@ -385,16 +383,16 @@ namespace bq { if (nodes_size() > 0) { free_ = 0; for (typename decltype(nodes_)::size_type i = 0; i < nodes_.size(); ++i) { - nodes_[i].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[i].prev = BQ_HASH_MAP_INVALID_INDEX; nodes_[i].next = static_cast(i) + 1; } - nodes_[nodes_.size() - 1].next = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[nodes_.size() - 1].next = BQ_HASH_MAP_INVALID_INDEX; } else { - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } size_ = 0; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -414,9 +412,9 @@ namespace bq { nodes_.size_ = 0; } size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -474,8 +472,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_prev_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].prev; } @@ -483,8 +481,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_next_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].next; } @@ -508,7 +506,7 @@ namespace bq { size_type cnt = 0; #endif size_type index = head_; - while (index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (index != BQ_HASH_MAP_INVALID_INDEX) { #ifndef NDEBUG cnt++; #endif @@ -519,7 +517,7 @@ namespace bq { size_type bucket_idx = get_bucket_index_by_key(cur_node.entry.key()); cur_node.bucket_idx = bucket_idx; size_type& bucket_value_ref = buckets_[bucket_idx]; - if (bucket_value_ref == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (bucket_value_ref == BQ_HASH_MAP_INVALID_INDEX) { bucket_value_ref = cur_index; } else if (cur_node.prev != bucket_value_ref) { size_type old_prev = cur_node.prev; @@ -528,34 +526,34 @@ namespace bq { size_type new_prev = bucket_value_ref; size_type new_next = nodes_[new_prev].next; - if (old_prev != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_prev != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_prev].next = old_next; } - if (old_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_next].prev = old_prev; } cur_node.prev = new_prev; cur_node.next = new_next; nodes_[new_prev].next = cur_index; - if (new_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (new_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[new_next].prev = cur_index; } if (tail_ == cur_index) { tail_ = old_prev; } if (cur_node.prev == cur_node.next) { - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; } } } #ifndef NDEBUG assert(buckets_size() == capacity); assert(cnt == this->size()); - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[head_].prev == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[head_].prev == BQ_HASH_MAP_INVALID_INDEX); } - if (tail_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[tail_].next == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (tail_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[tail_].next == BQ_HASH_MAP_INVALID_INDEX); } #endif } @@ -577,7 +575,7 @@ namespace bq { new_data[i].next = nodes_[i].next; } for (size_type i = new_space; i > old_space; --i) { - new_data[i - 1].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + new_data[i - 1].prev = BQ_HASH_MAP_INVALID_INDEX; new_data[i - 1].next = free_; free_ = i - 1; } @@ -596,15 +594,15 @@ namespace bq { template BQ_HASH_MAP_INLINE BQ_HASH_MAP_KV_CLS_NAME::size_type, typename BQ_HASH_MAP_CLS_NAME::size_type> BQ_HASH_MAP_CLS_NAME::find_index_and_bucket_idx_by_key(const_key_type_ref key) const { - size_type index = BQ_BQ_HASH_MAP_INVALID_INDEX; - size_type bucket_idx = BQ_BQ_HASH_MAP_INVALID_INDEX; + size_type index = BQ_HASH_MAP_INVALID_INDEX; + size_type bucket_idx = BQ_HASH_MAP_INVALID_INDEX; if (buckets_size() > 0) { bucket_idx = get_bucket_index_by_key(key); size_type valid_index = buckets_[bucket_idx]; - while (valid_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (valid_index != BQ_HASH_MAP_INVALID_INDEX) { auto& node = nodes_[valid_index]; if (node.bucket_idx != bucket_idx) { - valid_index = BQ_BQ_HASH_MAP_INVALID_INDEX; + valid_index = BQ_HASH_MAP_INVALID_INDEX; break; } if (node.entry.key() == key) { @@ -626,16 +624,16 @@ namespace bq { } // This must be called after expand_buckets because it will reform the buckets and nodes. auto node_bucket_indices_pair = find_index_and_bucket_idx_by_key(key); - assert(node_bucket_indices_pair.key() == BQ_BQ_HASH_MAP_INVALID_INDEX && "key already exist"); + assert(node_bucket_indices_pair.key() == BQ_HASH_MAP_INVALID_INDEX && "key already exist"); auto bucket_idx = node_bucket_indices_pair.value(); - if (free_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (free_ == BQ_HASH_MAP_INVALID_INDEX) { expand_nodes(nodes_size() + 1); } size_type& target_bucket_value = buckets_[bucket_idx]; size_type next_node_index = target_bucket_value; - size_type prev_node_index = (target_bucket_value == BQ_BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; - assert(free_ != BQ_BQ_HASH_MAP_INVALID_INDEX); + size_type prev_node_index = (target_bucket_value == BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; + assert(free_ != BQ_HASH_MAP_INVALID_INDEX); size_type new_index = free_; free_ = nodes_[new_index].next; @@ -644,13 +642,13 @@ namespace bq { new_node.next = next_node_index; new_node.prev = prev_node_index; new_node.bucket_idx = bucket_idx; - if (prev_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& prev_node = nodes_[prev_node_index]; prev_node.next = new_index; } else { head_ = new_index; } - if (next_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& next_node = nodes_[next_node_index]; next_node.prev = new_index; } else { diff --git a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/string.h b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/string.h index 5161f36..2ee5d83 100644 --- a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/string.h +++ b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/string.h @@ -121,7 +121,7 @@ namespace bq { string_base(string_base&& rhs) noexcept; string_base(const char_type* str); - + string_base(const char_type* str, size_t char_count); template ::value || is_std_string_view_compatible::value) && !bq::is_same>::value, void>> diff --git a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/string_impl.h b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/string_impl.h index ed68757..43e6192 100644 --- a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/string_impl.h +++ b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_common/types/string_impl.h @@ -158,7 +158,6 @@ namespace bq { insert_batch(begin(), const_iterator(str, nullptr), char_count); } - template template inline bq::string_base::string_base(const S& rhs) diff --git a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_log/bq_log.h b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_log/bq_log.h index 503d237..df6db44 100644 --- a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_log/bq_log.h +++ b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_log/bq_log.h @@ -117,27 +117,45 @@ namespace bq { /// static void unregister_console_callback(bq::type_func_ptr_console_callback callback); + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + /// + static void set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + static bool fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback); + /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer. /// /// c style char*(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> console(bq::log_level level, const STR& str); /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer /// /// std::string or bq::string(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> console(bq::log_level level, const STR& str); public: /// diff --git a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_log/misc/bq_log_api.h b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_log/misc/bq_log_api.h index 9d8e276..21266e9 100644 --- a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_log/misc/bq_log_api.h +++ b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_log/misc/bq_log_api.h @@ -198,14 +198,31 @@ namespace bq { /// /// /// - BQ_API void __register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); /// /// Unregister a console callback /// /// /// - BQ_API void __unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + + /// + /// set console appender buffer enable or not + /// + /// + /// + BQ_API void __api_set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// + /// path through parameter that will pass to on_console_callback + /// True if the console appender buffer is not empty, otherwise False is returned. + BQ_API bool __api_fetch_and_remove_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback on_console_callback, const void* pass_through_param); /// /// The snapshot feature is disabled by default, as it consumes some performance overhead. diff --git a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_log/misc/bq_log_def.h b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_log/misc/bq_log_def.h index 3c14649..591dee6 100644 --- a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_log/misc/bq_log_def.h +++ b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_log/misc/bq_log_def.h @@ -166,6 +166,14 @@ namespace bq { failed_io_error }; + /// + /// `content` is a C-style string and end with '\0'; + /// typedef void(BQ_STDCALL* type_func_ptr_console_callback)(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + /// + /// `content` is a C-style string and end with '\0'; + /// + typedef void(BQ_STDCALL* type_func_ptr_console_buffer_fetch_callback)(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + } diff --git a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_log/misc/bq_log_impl.h b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_log/misc/bq_log_impl.h index 8ae928d..168ee72 100644 --- a/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_log/misc/bq_log_impl.h +++ b/dist/dynamic_lib/ios/MinSizeRel/BqLog.framework/Headers/bq_log/misc/bq_log_impl.h @@ -155,22 +155,38 @@ namespace bq { inline void log::register_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__register_console_callbacks(callback); + bq::api::__api_register_console_callbacks(callback); } inline void log::unregister_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__unregister_console_callbacks(callback); + bq::api::__api_unregister_console_callbacks(callback); + } + + inline void log::set_console_buffer_enable(bool enable) + { + bq::api::__api_set_console_buffer_enable(enable); + } + + inline void BQ_STDCALL fetch_and_remove_console_buffer_callback_wrapper(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + bq::type_func_ptr_console_callback real_callback = (bq::type_func_ptr_console_callback)pass_through_param; + real_callback(log_id, category_idx, log_level, content, length); + } + + inline bool log::fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback) + { + return bq::api::__api_fetch_and_remove_console_buffer(fetch_and_remove_console_buffer_callback_wrapper, (const void*)on_console_callback); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str.c_str()); } diff --git a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework.dSYM/Contents/Resources/DWARF/BqLog b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework.dSYM/Contents/Resources/DWARF/BqLog index 50a05c8..f26ed1b 100644 Binary files a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework.dSYM/Contents/Resources/DWARF/BqLog and b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework.dSYM/Contents/Resources/DWARF/BqLog differ diff --git a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework.dSYM/Contents/Resources/Relocations/aarch64/BqLog.yml b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework.dSYM/Contents/Resources/Relocations/aarch64/BqLog.yml index bc4a295..aeb3c63 100644 --- a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework.dSYM/Contents/Resources/Relocations/aarch64/BqLog.yml +++ b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework.dSYM/Contents/Resources/Relocations/aarch64/BqLog.yml @@ -6,1348 +6,1357 @@ relocations: - { offsetInCU: 0x1836, offset: 0x1836, size: 0x8, addend: 0x0, symName: __ZN2bq10memory_map19is_platform_supportEv, symObjAddr: 0x0, symBinAddr: 0x4000, symSize: 0x8 } - { offsetInCU: 0x1923, offset: 0x1923, size: 0x8, addend: 0x0, symName: __ZN2bq10memory_map17create_memory_mapERKNS_11file_handleEmm, symObjAddr: 0x14, symBinAddr: 0x4008, symSize: 0x1AC } - { offsetInCU: 0x1BAB, offset: 0x1BAB, size: 0x8, addend: 0x0, symName: __ZN2bq10memory_map18release_memory_mapERNS_17memory_map_handleE, symObjAddr: 0x20C, symBinAddr: 0x41B4, symSize: 0x6C } - - { offsetInCU: 0x4A, offset: 0x1C5D, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL8base_dirE, symObjAddr: 0xFEC8, symBinAddr: 0x34878, symSize: 0x0 } + - { offsetInCU: 0x4A, offset: 0x1C5D, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL8base_dirE, symObjAddr: 0xFF48, symBinAddr: 0x34878, symSize: 0x0 } - { offsetInCU: 0x57, offset: 0x1C6A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform25high_performance_epoch_msEv, symObjAddr: 0x0, symBinAddr: 0x4240, symSize: 0x50 } - { offsetInCU: 0xAB, offset: 0x1CBE, size: 0x8, addend: 0x0, symName: __ZN2bq8platform12get_base_dirEb, symObjAddr: 0x88, symBinAddr: 0x42C8, symSize: 0xE0 } - { offsetInCU: 0x1DB, offset: 0x1DEE, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9ios_printEPKc, symObjAddr: 0x26C, symBinAddr: 0x43A8, symSize: 0x64 } - { offsetInCU: 0x211, offset: 0x1E24, size: 0x8, addend: 0x0, symName: __ZN2bq8platform15get_stack_traceEjRPKcRj, symObjAddr: 0x308, symBinAddr: 0x4444, symSize: 0x4B4 } - { offsetInCU: 0x81C, offset: 0x242F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform21get_stack_trace_utf16EjRPKDsRj, symObjAddr: 0x91C, symBinAddr: 0x4A58, symSize: 0x504 } - { offsetInCU: 0x1080, offset: 0x2C93, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE6insertIJcEEEvNS_14array_iteratorIcS1_EEDpOT_, symObjAddr: 0xE20, symBinAddr: 0x4F5C, symSize: 0x154 } - - { offsetInCU: 0x312B, offset: 0x4D3E, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcED1Ev, symObjAddr: 0x50, symBinAddr: 0x4290, symSize: 0x38 } - - { offsetInCU: 0x32B9, offset: 0x4ECC, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE12insert_batchENS_14array_iteratorIcS1_EENS2_IKcS1_EEm, symObjAddr: 0x7BC, symBinAddr: 0x48F8, symSize: 0x160 } - - { offsetInCU: 0x358A, offset: 0x519D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform21get_stack_trace_utf16EjRPKDsRj, symObjAddr: 0x91C, symBinAddr: 0x4A58, symSize: 0x504 } - - { offsetInCU: 0x363D, offset: 0x5250, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIDsED1Ev, symObjAddr: 0x2D0, symBinAddr: 0x440C, symSize: 0x38 } - - { offsetInCU: 0x37BB, offset: 0x53CE, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE6insertIJcEEEvNS_14array_iteratorIcS1_EEDpOT_, symObjAddr: 0xE20, symBinAddr: 0x4F5C, symSize: 0x154 } - - { offsetInCU: 0x3A59, offset: 0x566C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE12insert_batchENS_14array_iteratorIcS1_EENS2_IKcS1_EEm.cold.1, symObjAddr: 0xF74, symBinAddr: 0x26F3C, symSize: 0x28 } - - { offsetInCU: 0x3B53, offset: 0x5766, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE12insert_batchENS_14array_iteratorIcS1_EENS2_IKcS1_EEm.cold.1, symObjAddr: 0xF74, symBinAddr: 0x26F3C, symSize: 0x28 } - - { offsetInCU: 0x3B6A, offset: 0x577D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE12insert_batchENS_14array_iteratorIcS1_EENS2_IKcS1_EEm.cold.3, symObjAddr: 0xFC0, symBinAddr: 0x26F88, symSize: 0x24 } - - { offsetInCU: 0x3B97, offset: 0x57AA, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE12insert_batchENS_14array_iteratorIcS1_EENS2_IKcS1_EEm.cold.2, symObjAddr: 0xF9C, symBinAddr: 0x26F64, symSize: 0x24 } - - { offsetInCU: 0x3D8C, offset: 0x599F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform21get_stack_trace_utf16EjRPKDsRj.cold.1, symObjAddr: 0xFE4, symBinAddr: 0x26FAC, symSize: 0x28 } - - { offsetInCU: 0x3DB8, offset: 0x59CB, size: 0x8, addend: 0x0, symName: __ZN2bq8platform21get_stack_trace_utf16EjRPKDsRj.cold.2, symObjAddr: 0x100C, symBinAddr: 0x26FD4, symSize: 0x24 } - - { offsetInCU: 0x3DFA, offset: 0x5A0D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform21get_stack_trace_utf16EjRPKDsRj.cold.3, symObjAddr: 0x1030, symBinAddr: 0x26FF8, symSize: 0x24 } - - { offsetInCU: 0x3EB3, offset: 0x5AC6, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE6insertIJcEEEvNS_14array_iteratorIcS1_EEDpOT_.cold.1, symObjAddr: 0x1054, symBinAddr: 0x2701C, symSize: 0x28 } - - { offsetInCU: 0x3ECA, offset: 0x5ADD, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE6insertIJcEEEvNS_14array_iteratorIcS1_EEDpOT_.cold.3, symObjAddr: 0x10A0, symBinAddr: 0x27068, symSize: 0x24 } - - { offsetInCU: 0x3EF7, offset: 0x5B0A, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE6insertIJcEEEvNS_14array_iteratorIcS1_EEDpOT_.cold.2, symObjAddr: 0x107C, symBinAddr: 0x27044, symSize: 0x24 } - - { offsetInCU: 0x3F24, offset: 0x5B37, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x10C4, symBinAddr: 0x50B0, symSize: 0x8 } - - { offsetInCU: 0x3F3B, offset: 0x5B4E, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x10CC, symBinAddr: 0x50B8, symSize: 0x8 } - - { offsetInCU: 0x6A, offset: 0x5BF7, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL20file_exclusive_cacheE, symObjAddr: 0x1BBB0, symBinAddr: 0x34890, symSize: 0x0 } - - { offsetInCU: 0xF8, offset: 0x5C85, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL20file_exclusive_mutexE, symObjAddr: 0x1BBE8, symBinAddr: 0x348C8, symSize: 0x0 } - - { offsetInCU: 0x2A1, offset: 0x5E2E, size: 0x8, addend: 0x0, symName: __ZN2bq8platform13get_file_sizeEPKcRm, symObjAddr: 0x0, symBinAddr: 0x5108, symSize: 0x64 } - - { offsetInCU: 0x315, offset: 0x5EA2, size: 0x8, addend: 0x0, symName: __ZN2bq8platform13get_file_sizeERKiRm, symObjAddr: 0x64, symBinAddr: 0x516C, symSize: 0x68 } - - { offsetInCU: 0x382, offset: 0x5F0F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6is_dirEPKc, symObjAddr: 0xCC, symBinAddr: 0x51D4, symSize: 0x40 } - - { offsetInCU: 0x3CB, offset: 0x5F58, size: 0x8, addend: 0x0, symName: __ZN2bq8platform15is_regular_fileEPKc, symObjAddr: 0x10C, symBinAddr: 0x5214, symSize: 0x40 } - - { offsetInCU: 0x462, offset: 0x5FEF, size: 0x8, addend: 0x0, symName: __ZN2bq8platform8make_dirEPKc, symObjAddr: 0x14C, symBinAddr: 0x5254, symSize: 0x68 } - - { offsetInCU: 0x502, offset: 0x608F, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL18make_dir_recursiveEPc, symObjAddr: 0x1B4, symBinAddr: 0x52BC, symSize: 0x9C } - - { offsetInCU: 0x5ED, offset: 0x617A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform13truncate_fileERKim, symObjAddr: 0x318, symBinAddr: 0x5358, symSize: 0x24 } - - { offsetInCU: 0x669, offset: 0x61F6, size: 0x8, addend: 0x0, symName: __ZN2bq8platform24remove_dir_or_file_innerEPcm, symObjAddr: 0x33C, symBinAddr: 0x537C, symSize: 0x160 } - - { offsetInCU: 0x81C, offset: 0x63A9, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18remove_dir_or_fileEPKc, symObjAddr: 0x49C, symBinAddr: 0x54DC, symSize: 0xD8 } - - { offsetInCU: 0x96F, offset: 0x64FC, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9open_fileEPKcNS0_19file_open_mode_enumERi, symObjAddr: 0x598, symBinAddr: 0x55D8, symSize: 0x1E8 } - - { offsetInCU: 0xD6B, offset: 0x68F8, size: 0x8, addend: 0x0, symName: __ZN2bq8platform10close_fileERi, symObjAddr: 0x780, symBinAddr: 0x57C0, symSize: 0xA4 } - - { offsetInCU: 0xDB4, offset: 0x6941, size: 0x8, addend: 0x0, symName: __ZN2bq8platform10close_fileERi, symObjAddr: 0x780, symBinAddr: 0x57C0, symSize: 0xA4 } - - { offsetInCU: 0xEC5, offset: 0x6A52, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9read_fileERKiPvmRm, symObjAddr: 0x824, symBinAddr: 0x5864, symSize: 0x8C } - - { offsetInCU: 0xF8C, offset: 0x6B19, size: 0x8, addend: 0x0, symName: __ZN2bq8platform10write_fileERKiPKvmRm, symObjAddr: 0x8B0, symBinAddr: 0x58F0, symSize: 0x8C } - - { offsetInCU: 0x1053, offset: 0x6BE0, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9seek_fileERKiNS0_16file_seek_optionEx, symObjAddr: 0x93C, symBinAddr: 0x597C, symSize: 0x48 } - - { offsetInCU: 0x10E1, offset: 0x6C6E, size: 0x8, addend: 0x0, symName: __ZN2bq8platform10flush_fileERKi, symObjAddr: 0x984, symBinAddr: 0x59C4, symSize: 0x24 } - - { offsetInCU: 0x111D, offset: 0x6CAA, size: 0x8, addend: 0x0, symName: __ZN2bq8platform17get_all_sub_namesEPKc, symObjAddr: 0x9A8, symBinAddr: 0x59E8, symSize: 0xCC } - - { offsetInCU: 0x2C81, offset: 0x880E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE12expand_nodesEj, symObjAddr: 0xE64, symBinAddr: 0x5EA4, symSize: 0x1CC } - - { offsetInCU: 0x2E67, offset: 0x89F4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseERKS2_, symObjAddr: 0x1030, symBinAddr: 0x6070, symSize: 0xD4 } - - { offsetInCU: 0x37D1, offset: 0x935E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEED1Ev, symObjAddr: 0x574, symBinAddr: 0x55B4, symSize: 0x24 } - - { offsetInCU: 0x382D, offset: 0x93BA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5resetEv, symObjAddr: 0x1244, symBinAddr: 0x6284, symSize: 0xB8 } - - { offsetInCU: 0x396A, offset: 0x94F7, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRPKcEEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x12FC, symBinAddr: 0x633C, symSize: 0x244 } - - { offsetInCU: 0x3C6C, offset: 0x97F9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_, symObjAddr: 0xA74, symBinAddr: 0x5AB4, symSize: 0x21C } - - { offsetInCU: 0x40F1, offset: 0x9C7E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj, symObjAddr: 0xC90, symBinAddr: 0x5CD0, symSize: 0x1D4 } - - { offsetInCU: 0x4111, offset: 0x9C9E, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9open_fileEPKcNS0_19file_open_mode_enumERi.cold.2, symObjAddr: 0x16C4, symBinAddr: 0x270B0, symSize: 0x24 } - - { offsetInCU: 0x417F, offset: 0x9D0C, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9open_fileEPKcNS0_19file_open_mode_enumERi.cold.1, symObjAddr: 0x16A0, symBinAddr: 0x2708C, symSize: 0x24 } - - { offsetInCU: 0x4202, offset: 0x9D8F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9open_fileEPKcNS0_19file_open_mode_enumERi.cold.3, symObjAddr: 0x16E8, symBinAddr: 0x270D4, symSize: 0x24 } - - { offsetInCU: 0x4270, offset: 0x9DFD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseERKS2_, symObjAddr: 0x1030, symBinAddr: 0x6070, symSize: 0xD4 } - - { offsetInCU: 0x4502, offset: 0xA08F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseENS_17hash_map_iteratorIS2_S3_Lb0EEE, symObjAddr: 0x1104, symBinAddr: 0x6144, symSize: 0x140 } - - { offsetInCU: 0x4600, offset: 0xA18D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRPKcEEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x12FC, symBinAddr: 0x633C, symSize: 0x244 } - - { offsetInCU: 0x4D21, offset: 0xA8AE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj, symObjAddr: 0xC90, symBinAddr: 0x5CD0, symSize: 0x1D4 } - - { offsetInCU: 0x5055, offset: 0xABE2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE12expand_nodesEj, symObjAddr: 0xE64, symBinAddr: 0x5EA4, symSize: 0x1CC } - - { offsetInCU: 0x505F, offset: 0xABEC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.2, symObjAddr: 0x1734, symBinAddr: 0x27120, symSize: 0x24 } - - { offsetInCU: 0x50B7, offset: 0xAC44, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.9, symObjAddr: 0x1834, symBinAddr: 0x27220, symSize: 0x24 } - - { offsetInCU: 0x50FA, offset: 0xAC87, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.7, symObjAddr: 0x17E8, symBinAddr: 0x271D4, symSize: 0x24 } - - { offsetInCU: 0x5127, offset: 0xACB4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.1, symObjAddr: 0x170C, symBinAddr: 0x270F8, symSize: 0x28 } - - { offsetInCU: 0x513E, offset: 0xACCB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.5, symObjAddr: 0x17A0, symBinAddr: 0x2718C, symSize: 0x24 } - - { offsetInCU: 0x516B, offset: 0xACF8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.10, symObjAddr: 0x1858, symBinAddr: 0x27244, symSize: 0x24 } - - { offsetInCU: 0x51AE, offset: 0xAD3B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.6, symObjAddr: 0x17C4, symBinAddr: 0x271B0, symSize: 0x24 } - - { offsetInCU: 0x51DB, offset: 0xAD68, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.4, symObjAddr: 0x177C, symBinAddr: 0x27168, symSize: 0x24 } - - { offsetInCU: 0x5208, offset: 0xAD95, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.3, symObjAddr: 0x1758, symBinAddr: 0x27144, symSize: 0x24 } - - { offsetInCU: 0x5235, offset: 0xADC2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.8, symObjAddr: 0x180C, symBinAddr: 0x271F8, symSize: 0x28 } - - { offsetInCU: 0x524C, offset: 0xADD9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj.cold.7, symObjAddr: 0x1954, symBinAddr: 0x27340, symSize: 0x24 } - - { offsetInCU: 0x5279, offset: 0xAE06, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj.cold.6, symObjAddr: 0x1930, symBinAddr: 0x2731C, symSize: 0x24 } - - { offsetInCU: 0x52A6, offset: 0xAE33, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj.cold.5, symObjAddr: 0x190C, symBinAddr: 0x272F8, symSize: 0x24 } - - { offsetInCU: 0x52D3, offset: 0xAE60, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj.cold.4, symObjAddr: 0x18E8, symBinAddr: 0x272D4, symSize: 0x24 } - - { offsetInCU: 0x5300, offset: 0xAE8D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj.cold.3, symObjAddr: 0x18C4, symBinAddr: 0x272B0, symSize: 0x24 } - - { offsetInCU: 0x532D, offset: 0xAEBA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj.cold.2, symObjAddr: 0x18A0, symBinAddr: 0x2728C, symSize: 0x24 } - - { offsetInCU: 0x535A, offset: 0xAEE7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj.cold.1, symObjAddr: 0x187C, symBinAddr: 0x27268, symSize: 0x24 } - - { offsetInCU: 0x53ED, offset: 0xAF7A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE12expand_nodesEj.cold.1, symObjAddr: 0x1978, symBinAddr: 0x27364, symSize: 0x24 } - - { offsetInCU: 0x542F, offset: 0xAFBC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE12expand_nodesEj.cold.2, symObjAddr: 0x199C, symBinAddr: 0x27388, symSize: 0x24 } - - { offsetInCU: 0x5471, offset: 0xAFFE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE12expand_nodesEj.cold.3, symObjAddr: 0x19C0, symBinAddr: 0x273AC, symSize: 0x24 } - - { offsetInCU: 0x54F1, offset: 0xB07E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseENS_17hash_map_iteratorIS2_S3_Lb0EEE, symObjAddr: 0x1104, symBinAddr: 0x6144, symSize: 0x140 } - - { offsetInCU: 0x56E9, offset: 0xB276, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5resetEv, symObjAddr: 0x1244, symBinAddr: 0x6284, symSize: 0xB8 } - - { offsetInCU: 0x56F3, offset: 0xB280, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseERKS2_.cold.1, symObjAddr: 0x19E4, symBinAddr: 0x273D0, symSize: 0x24 } - - { offsetInCU: 0x574B, offset: 0xB2D8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseERKS2_.cold.2, symObjAddr: 0x1A08, symBinAddr: 0x273F4, symSize: 0x24 } - - { offsetInCU: 0x57E9, offset: 0xB376, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseENS_17hash_map_iteratorIS2_S3_Lb0EEE.cold.3, symObjAddr: 0x1A74, symBinAddr: 0x27460, symSize: 0x24 } - - { offsetInCU: 0x5816, offset: 0xB3A3, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseENS_17hash_map_iteratorIS2_S3_Lb0EEE.cold.1, symObjAddr: 0x1A2C, symBinAddr: 0x27418, symSize: 0x24 } - - { offsetInCU: 0x5884, offset: 0xB411, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseENS_17hash_map_iteratorIS2_S3_Lb0EEE.cold.5, symObjAddr: 0x1ABC, symBinAddr: 0x274A8, symSize: 0x24 } - - { offsetInCU: 0x58B1, offset: 0xB43E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseENS_17hash_map_iteratorIS2_S3_Lb0EEE.cold.4, symObjAddr: 0x1A98, symBinAddr: 0x27484, symSize: 0x24 } - - { offsetInCU: 0x58DE, offset: 0xB46B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseENS_17hash_map_iteratorIS2_S3_Lb0EEE.cold.2, symObjAddr: 0x1A50, symBinAddr: 0x2743C, symSize: 0x24 } - - { offsetInCU: 0x590B, offset: 0xB498, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5resetEv.cold.1, symObjAddr: 0x1AE0, symBinAddr: 0x274CC, symSize: 0x24 } - - { offsetInCU: 0x594D, offset: 0xB4DA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5resetEv.cold.2, symObjAddr: 0x1B04, symBinAddr: 0x274F0, symSize: 0x24 } - - { offsetInCU: 0x59BB, offset: 0xB548, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5resetEv.cold.3, symObjAddr: 0x1B28, symBinAddr: 0x27514, symSize: 0x24 } - - { offsetInCU: 0x5EB4, offset: 0xBA41, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9open_fileEPKcNS0_19file_open_mode_enumERi.cold.1, symObjAddr: 0x16A0, symBinAddr: 0x2708C, symSize: 0x24 } - - { offsetInCU: 0x5EBE, offset: 0xBA4B, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRPKcEEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x1B4C, symBinAddr: 0x27538, symSize: 0x28 } - - { offsetInCU: 0x5ED5, offset: 0xBA62, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRPKcEEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.3, symObjAddr: 0x1B9C, symBinAddr: 0x27588, symSize: 0x28 } - - { offsetInCU: 0x5F02, offset: 0xBA8F, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRPKcEEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x1B74, symBinAddr: 0x27560, symSize: 0x28 } - - { offsetInCU: 0x606D, offset: 0xBBFA, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x1C3C, symBinAddr: 0x6580, symSize: 0x8 } - - { offsetInCU: 0x6084, offset: 0xBC11, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x1C44, symBinAddr: 0x6588, symSize: 0x8 } - - { offsetInCU: 0x904, offset: 0xC54D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variableC1Ev, symObjAddr: 0x40, symBinAddr: 0x6628, symSize: 0x40 } - - { offsetInCU: 0x9B4, offset: 0xC5FD, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variableD1Ev, symObjAddr: 0xB8, symBinAddr: 0x6668, symSize: 0x38 } - - { offsetInCU: 0xA08, offset: 0xC651, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variable8wait_forERNS0_5mutexEy, symObjAddr: 0x140, symBinAddr: 0x66A0, symSize: 0xD4 } - - { offsetInCU: 0xAFF, offset: 0xC748, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variable10notify_allEv, symObjAddr: 0x21C, symBinAddr: 0x6774, symSize: 0x8 } - - { offsetInCU: 0x26, offset: 0xC7B6, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC2Ev, symObjAddr: 0x0, symBinAddr: 0x677C, symSize: 0x94 } - - { offsetInCU: 0xDB2, offset: 0xD542, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC2Ev, symObjAddr: 0x0, symBinAddr: 0x677C, symSize: 0x94 } - - { offsetInCU: 0xEE6, offset: 0xD676, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC2Ev.cold.1, symObjAddr: 0x428, symBinAddr: 0x275B0, symSize: 0x50 } - - { offsetInCU: 0xEFD, offset: 0xD68D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC1Ev, symObjAddr: 0x94, symBinAddr: 0x6810, symSize: 0x4 } - - { offsetInCU: 0xF2B, offset: 0xD6BB, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC1Ev, symObjAddr: 0x94, symBinAddr: 0x6810, symSize: 0x4 } - - { offsetInCU: 0xF3E, offset: 0xD6CE, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC2Eb, symObjAddr: 0x98, symBinAddr: 0x6814, symSize: 0xA4 } - - { offsetInCU: 0xFE0, offset: 0xD770, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC2Eb.cold.1, symObjAddr: 0x478, symBinAddr: 0x27600, symSize: 0x50 } - - { offsetInCU: 0xFF7, offset: 0xD787, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC1Eb, symObjAddr: 0x13C, symBinAddr: 0x68B8, symSize: 0x4 } - - { offsetInCU: 0x1038, offset: 0xD7C8, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC1Eb, symObjAddr: 0x13C, symBinAddr: 0x68B8, symSize: 0x4 } - - { offsetInCU: 0x1090, offset: 0xD820, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexD1Ev, symObjAddr: 0x1A4, symBinAddr: 0x68BC, symSize: 0x64 } - - { offsetInCU: 0x120F, offset: 0xD99F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex4lockEv, symObjAddr: 0x208, symBinAddr: 0x6920, symSize: 0x98 } - - { offsetInCU: 0x1329, offset: 0xDAB9, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex4lockEv.cold.1, symObjAddr: 0x4C8, symBinAddr: 0x27650, symSize: 0x70 } - - { offsetInCU: 0x1380, offset: 0xDB10, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex6unlockEv, symObjAddr: 0x380, symBinAddr: 0x69B8, symSize: 0xA0 } - - { offsetInCU: 0x147E, offset: 0xDC0E, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex19get_platform_handleEv, symObjAddr: 0x420, symBinAddr: 0x6A58, symSize: 0x8 } - - { offsetInCU: 0x149A, offset: 0xDC2A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex6unlockEv.cold.1, symObjAddr: 0x5A8, symBinAddr: 0x276C0, symSize: 0x70 } - - { offsetInCU: 0x14F1, offset: 0xDC81, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex19get_platform_handleEv, symObjAddr: 0x420, symBinAddr: 0x6A58, symSize: 0x8 } - - { offsetInCU: 0x1519, offset: 0xDCA9, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x618, symBinAddr: 0x6A60, symSize: 0xC } - - { offsetInCU: 0x1530, offset: 0xDCC0, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x624, symBinAddr: 0x6A6C, symSize: 0x8 } - - { offsetInCU: 0x1547, offset: 0xDCD7, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x62C, symBinAddr: 0x6A74, symSize: 0x8 } - - { offsetInCU: 0x26, offset: 0xDD14, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9spin_lock5yieldEv, symObjAddr: 0x0, symBinAddr: 0x6A7C, symSize: 0x4 } - - { offsetInCU: 0x155C, offset: 0xF24A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9spin_lock5yieldEv, symObjAddr: 0x0, symBinAddr: 0x6A7C, symSize: 0x4 } - - { offsetInCU: 0x15F6, offset: 0xF2E4, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18spin_lock_rw_crazy5yieldEv, symObjAddr: 0x4, symBinAddr: 0x6A80, symSize: 0x4 } - - { offsetInCU: 0x26, offset: 0xF33B, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread6cancelEv, symObjAddr: 0x0, symBinAddr: 0x6A84, symSize: 0x54 } - - { offsetInCU: 0x1012, offset: 0x10327, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread6cancelEv, symObjAddr: 0x0, symBinAddr: 0x6A84, symSize: 0x54 } - - { offsetInCU: 0x10E7, offset: 0x103FC, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread12is_cancelledEv, symObjAddr: 0x54, symBinAddr: 0x6AD8, symSize: 0x14 } - - { offsetInCU: 0x26, offset: 0x10493, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadC2ENS0_11thread_attrE, symObjAddr: 0x0, symBinAddr: 0x6AEC, symSize: 0x4C } - - { offsetInCU: 0x129B, offset: 0x11708, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadC2ENS0_11thread_attrE, symObjAddr: 0x0, symBinAddr: 0x6AEC, symSize: 0x4C } - - { offsetInCU: 0x157E, offset: 0x119EB, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread15set_thread_nameERKNS_11string_baseIcEE, symObjAddr: 0x4C, symBinAddr: 0x6B38, symSize: 0x1A0 } - - { offsetInCU: 0x1A66, offset: 0x11ED3, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread5startEv, symObjAddr: 0x1EC, symBinAddr: 0x6CD8, symSize: 0x1E4 } - - { offsetInCU: 0x1C28, offset: 0x12095, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread15set_thread_nameERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x8CC, symBinAddr: 0x27730, symSize: 0x24 } - - { offsetInCU: 0x1C32, offset: 0x1209F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread15set_thread_nameERKNS_11string_baseIcEE.cold.2, symObjAddr: 0x8F0, symBinAddr: 0x27754, symSize: 0x28 } - - { offsetInCU: 0x1C5E, offset: 0x120CB, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread15set_thread_nameERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x8CC, symBinAddr: 0x27730, symSize: 0x24 } - - { offsetInCU: 0x1CA0, offset: 0x1210D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread15set_thread_nameERKNS_11string_baseIcEE.cold.3, symObjAddr: 0x918, symBinAddr: 0x2777C, symSize: 0x24 } - - { offsetInCU: 0x1D62, offset: 0x121CF, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread5startEv, symObjAddr: 0x1EC, symBinAddr: 0x6CD8, symSize: 0x1E4 } - - { offsetInCU: 0x2200, offset: 0x1266D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform25thread_platform_processor14thread_processEPv, symObjAddr: 0x3D0, symBinAddr: 0x6EBC, symSize: 0x98 } - - { offsetInCU: 0x23EE, offset: 0x1285B, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread4joinEv, symObjAddr: 0x468, symBinAddr: 0x6F54, symSize: 0x74 } - - { offsetInCU: 0x24D4, offset: 0x12941, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread5yieldEv, symObjAddr: 0x4DC, symBinAddr: 0x6FC8, symSize: 0x38 } - - { offsetInCU: 0x2595, offset: 0x12A02, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread5sleepEy, symObjAddr: 0x514, symBinAddr: 0x7000, symSize: 0x60 } - - { offsetInCU: 0x25E2, offset: 0x12A4F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread9cpu_relaxEv, symObjAddr: 0x574, symBinAddr: 0x7060, symSize: 0x8 } - - { offsetInCU: 0x264E, offset: 0x12ABB, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread23get_current_thread_nameEv, symObjAddr: 0x57C, symBinAddr: 0x7068, symSize: 0xB4 } - - { offsetInCU: 0x27EA, offset: 0x12C57, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread21get_current_thread_idEv, symObjAddr: 0x630, symBinAddr: 0x711C, symSize: 0x3C } - - { offsetInCU: 0x2818, offset: 0x12C85, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadD2Ev, symObjAddr: 0x66C, symBinAddr: 0x7158, symSize: 0x50 } - - { offsetInCU: 0x28BB, offset: 0x12D28, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadD1Ev, symObjAddr: 0x6BC, symBinAddr: 0x71A8, symSize: 0x4 } - - { offsetInCU: 0x28E3, offset: 0x12D50, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadD0Ev, symObjAddr: 0x6C0, symBinAddr: 0x71AC, symSize: 0x4 } - - { offsetInCU: 0x290B, offset: 0x12D78, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread11on_finishedEv, symObjAddr: 0x768, symBinAddr: 0x71B0, symSize: 0x4 } - - { offsetInCU: 0x2A19, offset: 0x12E86, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x9B0, symBinAddr: 0x71B4, symSize: 0x8 } - - { offsetInCU: 0x3F, offset: 0x12EEA, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18static_inst_cache_E, symObjAddr: 0x3C8E0, symBinAddr: 0x359B8, symSize: 0x0 } - - { offsetInCU: 0x193D, offset: 0x147E8, size: 0x8, addend: 0x0, symName: __ZN2bqplIcEENS_11string_baseIT_EEPKNS3_9char_typeERKS3_, symObjAddr: 0x1ABC, symBinAddr: 0x87C0, symSize: 0x1B8 } - - { offsetInCU: 0x1D90, offset: 0x14C3B, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE4trimEv, symObjAddr: 0x1C74, symBinAddr: 0x8978, symSize: 0x188 } - - { offsetInCU: 0x2240, offset: 0x150EB, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12get_base_dirEb, symObjAddr: 0xA8, symBinAddr: 0x71BC, symSize: 0x4 } - - { offsetInCU: 0x2264, offset: 0x1510F, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12get_base_dirEb, symObjAddr: 0xA8, symBinAddr: 0x71BC, symSize: 0x4 } - - { offsetInCU: 0x2405, offset: 0x152B0, size: 0x8, addend: 0x0, symName: __ZN2bq12file_managerD2Ev, symObjAddr: 0x154, symBinAddr: 0x71C0, symSize: 0x9C } - - { offsetInCU: 0x2581, offset: 0x1542C, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager22flush_all_opened_filesEv, symObjAddr: 0x1F0, symBinAddr: 0x725C, symSize: 0x108 } - - { offsetInCU: 0x2871, offset: 0x1571C, size: 0x8, addend: 0x0, symName: __ZN2bq12file_managerD1Ev, symObjAddr: 0x2F8, symBinAddr: 0x7364, symSize: 0x4 } - - { offsetInCU: 0x289F, offset: 0x1574A, size: 0x8, addend: 0x0, symName: __ZN2bq12file_managerD1Ev, symObjAddr: 0x2F8, symBinAddr: 0x7364, symSize: 0x4 } - - { offsetInCU: 0x28D6, offset: 0x15781, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager8instanceEv, symObjAddr: 0x2FC, symBinAddr: 0x7368, symSize: 0x128 } - - { offsetInCU: 0x2B41, offset: 0x159EC, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager44trans_process_relative_path_to_absolute_pathERKNS_11string_baseIcEEb, symObjAddr: 0x49C, symBinAddr: 0x7490, symSize: 0x104 } - - { offsetInCU: 0x2F52, offset: 0x15DFD, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x3ECC, symBinAddr: 0x9F54, symSize: 0x25C } - - { offsetInCU: 0x2F5C, offset: 0x15E07, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_, symObjAddr: 0x5CC, symBinAddr: 0x7594, symSize: 0x59C } - - { offsetInCU: 0x47D1, offset: 0x1767C, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE, symObjAddr: 0xB68, symBinAddr: 0x7B30, symSize: 0x590 } - - { offsetInCU: 0x47DB, offset: 0x17686, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE, symObjAddr: 0xB68, symBinAddr: 0x7B30, symSize: 0x590 } - - { offsetInCU: 0x5A42, offset: 0x188ED, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager44trans_process_relative_path_to_absolute_pathERKNS_11string_baseIcEEb.cold.1, symObjAddr: 0x4658, symBinAddr: 0x277A0, symSize: 0x24 } - - { offsetInCU: 0x5D85, offset: 0x18C30, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE7replaceERKS1_S3_, symObjAddr: 0x12AC, symBinAddr: 0x80C0, symSize: 0x198 } - - { offsetInCU: 0x618D, offset: 0x19038, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE5splitERKS1_, symObjAddr: 0x18D0, symBinAddr: 0x85D4, symSize: 0x1EC } - - { offsetInCU: 0x683D, offset: 0x196E8, size: 0x8, addend: 0x0, symName: __ZN2bqplIcEENS_11string_baseIT_EEPKNS3_9char_typeERKS3_, symObjAddr: 0x1ABC, symBinAddr: 0x87C0, symSize: 0x1B8 } - - { offsetInCU: 0x6847, offset: 0x196F2, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.10, symObjAddr: 0x47C0, symBinAddr: 0x27908, symSize: 0x24 } - - { offsetInCU: 0x68B3, offset: 0x1975E, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.9, symObjAddr: 0x479C, symBinAddr: 0x278E4, symSize: 0x24 } - - { offsetInCU: 0x691F, offset: 0x197CA, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.8, symObjAddr: 0x4778, symBinAddr: 0x278C0, symSize: 0x24 } - - { offsetInCU: 0x698B, offset: 0x19836, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.7, symObjAddr: 0x4754, symBinAddr: 0x2789C, symSize: 0x24 } - - { offsetInCU: 0x69F7, offset: 0x198A2, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.1, symObjAddr: 0x467C, symBinAddr: 0x277C4, symSize: 0x24 } - - { offsetInCU: 0x6A63, offset: 0x1990E, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.2, symObjAddr: 0x46A0, symBinAddr: 0x277E8, symSize: 0x24 } - - { offsetInCU: 0x6ACF, offset: 0x1997A, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.3, symObjAddr: 0x46C4, symBinAddr: 0x2780C, symSize: 0x24 } - - { offsetInCU: 0x6B3B, offset: 0x199E6, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.4, symObjAddr: 0x46E8, symBinAddr: 0x27830, symSize: 0x24 } - - { offsetInCU: 0x6BA7, offset: 0x19A52, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.5, symObjAddr: 0x470C, symBinAddr: 0x27854, symSize: 0x24 } - - { offsetInCU: 0x6C13, offset: 0x19ABE, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.6, symObjAddr: 0x4730, symBinAddr: 0x27878, symSize: 0x24 } - - { offsetInCU: 0x6C7F, offset: 0x19B2A, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.11, symObjAddr: 0x47E4, symBinAddr: 0x2792C, symSize: 0x24 } - - { offsetInCU: 0x6EC6, offset: 0x19D71, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x3ECC, symBinAddr: 0x9F54, symSize: 0x25C } - - { offsetInCU: 0x7579, offset: 0x1A424, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x4128, symBinAddr: 0xA1B0, symSize: 0x224 } - - { offsetInCU: 0x758E, offset: 0x1A439, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE4trimEv, symObjAddr: 0x1C74, symBinAddr: 0x8978, symSize: 0x188 } - - { offsetInCU: 0x78EB, offset: 0x1A796, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE.cold.5, symObjAddr: 0x4898, symBinAddr: 0x279E0, symSize: 0x24 } - - { offsetInCU: 0x7957, offset: 0x1A802, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x4808, symBinAddr: 0x27950, symSize: 0x24 } - - { offsetInCU: 0x79C3, offset: 0x1A86E, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE.cold.2, symObjAddr: 0x482C, symBinAddr: 0x27974, symSize: 0x24 } - - { offsetInCU: 0x7A2F, offset: 0x1A8DA, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE.cold.3, symObjAddr: 0x4850, symBinAddr: 0x27998, symSize: 0x24 } - - { offsetInCU: 0x7A9B, offset: 0x1A946, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE.cold.4, symObjAddr: 0x4874, symBinAddr: 0x279BC, symSize: 0x24 } - - { offsetInCU: 0x7AC7, offset: 0x1A972, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE.cold.6, symObjAddr: 0x48BC, symBinAddr: 0x27A04, symSize: 0x24 } - - { offsetInCU: 0x7BD3, offset: 0x1AA7E, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE7replaceERKS1_S3_.cold.1, symObjAddr: 0x4928, symBinAddr: 0x27A28, symSize: 0x28 } - - { offsetInCU: 0x7BEA, offset: 0x1AA95, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE7replaceERKS1_S3_.cold.2, symObjAddr: 0x4950, symBinAddr: 0x27A50, symSize: 0x24 } - - { offsetInCU: 0x7C9A, offset: 0x1AB45, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager16create_directoryERKNS_11string_baseIcEE, symObjAddr: 0x1554, symBinAddr: 0x8258, symSize: 0x80 } - - { offsetInCU: 0x7DFD, offset: 0x1ACA8, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_directory_from_pathERKNS_11string_baseIcEE, symObjAddr: 0x15D4, symBinAddr: 0x82D8, symSize: 0x1B4 } - - { offsetInCU: 0x8404, offset: 0x1B2AF, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_file_name_from_pathERKNS_11string_baseIcEE, symObjAddr: 0x1788, symBinAddr: 0x848C, symSize: 0x148 } - - { offsetInCU: 0x840E, offset: 0x1B2B9, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_directory_from_pathERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x4974, symBinAddr: 0x27A74, symSize: 0x24 } - - { offsetInCU: 0x843A, offset: 0x1B2E5, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_directory_from_pathERKNS_11string_baseIcEE.cold.2, symObjAddr: 0x4998, symBinAddr: 0x27A98, symSize: 0x24 } - - { offsetInCU: 0x84A6, offset: 0x1B351, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_directory_from_pathERKNS_11string_baseIcEE.cold.3, symObjAddr: 0x49BC, symBinAddr: 0x27ABC, symSize: 0x24 } - - { offsetInCU: 0x8512, offset: 0x1B3BD, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_directory_from_pathERKNS_11string_baseIcEE.cold.4, symObjAddr: 0x49E0, symBinAddr: 0x27AE0, symSize: 0x24 } - - { offsetInCU: 0x8554, offset: 0x1B3FF, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_file_name_from_pathERKNS_11string_baseIcEE, symObjAddr: 0x1788, symBinAddr: 0x848C, symSize: 0x148 } - - { offsetInCU: 0x8883, offset: 0x1B72E, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE5splitERKS1_, symObjAddr: 0x18D0, symBinAddr: 0x85D4, symSize: 0x1EC } - - { offsetInCU: 0x888D, offset: 0x1B738, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_file_name_from_pathERKNS_11string_baseIcEE.cold.3, symObjAddr: 0x4A4C, symBinAddr: 0x27B4C, symSize: 0x24 } - - { offsetInCU: 0x88B9, offset: 0x1B764, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_file_name_from_pathERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x4A04, symBinAddr: 0x27B04, symSize: 0x24 } - - { offsetInCU: 0x8925, offset: 0x1B7D0, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_file_name_from_pathERKNS_11string_baseIcEE.cold.2, symObjAddr: 0x4A28, symBinAddr: 0x27B28, symSize: 0x24 } - - { offsetInCU: 0x89C1, offset: 0x1B86C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x4128, symBinAddr: 0xA1B0, symSize: 0x224 } - - { offsetInCU: 0x8FDE, offset: 0x1BE89, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x434C, symBinAddr: 0xA3D4, symSize: 0x1F8 } - - { offsetInCU: 0x8FF3, offset: 0x1BE9E, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE5splitERKS1_.cold.2, symObjAddr: 0x4A94, symBinAddr: 0x27B94, symSize: 0x24 } - - { offsetInCU: 0x9036, offset: 0x1BEE1, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE5splitERKS1_.cold.1, symObjAddr: 0x4A70, symBinAddr: 0x27B70, symSize: 0x24 } - - { offsetInCU: 0x9079, offset: 0x1BF24, size: 0x8, addend: 0x0, symName: __ZN2bqplIcEENS_11string_baseIT_EEPKNS3_9char_typeERKS3_.cold.2, symObjAddr: 0x4ADC, symBinAddr: 0x27BDC, symSize: 0x24 } - - { offsetInCU: 0x90A6, offset: 0x1BF51, size: 0x8, addend: 0x0, symName: __ZN2bqplIcEENS_11string_baseIT_EEPKNS3_9char_typeERKS3_.cold.1, symObjAddr: 0x4AB8, symBinAddr: 0x27BB8, symSize: 0x24 } - - { offsetInCU: 0x9163, offset: 0x1C00E, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE4trimEv.cold.2, symObjAddr: 0x4B24, symBinAddr: 0x27C24, symSize: 0x24 } - - { offsetInCU: 0x9190, offset: 0x1C03B, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE4trimEv.cold.1, symObjAddr: 0x4B00, symBinAddr: 0x27C00, symSize: 0x24 } - - { offsetInCU: 0x91D3, offset: 0x1C07E, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager7is_fileERKNS_11string_baseIcEE, symObjAddr: 0x1E54, symBinAddr: 0x8B00, symSize: 0x58 } - - { offsetInCU: 0x92D5, offset: 0x1C180, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18remove_file_or_dirERKNS_11string_baseIcEE, symObjAddr: 0x1EAC, symBinAddr: 0x8B58, symSize: 0xA0 } - - { offsetInCU: 0x93F5, offset: 0x1C2A0, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager27get_sub_dirs_and_files_nameERKNS_11string_baseIcEE, symObjAddr: 0x1F4C, symBinAddr: 0x8BF8, symSize: 0x58 } - - { offsetInCU: 0x9601, offset: 0x1C4AC, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcEplEPKc, symObjAddr: 0x2220, symBinAddr: 0x8C50, symSize: 0xFC } - - { offsetInCU: 0x97B8, offset: 0x1C663, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager31get_file_last_modified_epoch_msERKNS_11string_baseIcEE, symObjAddr: 0x231C, symBinAddr: 0x8D4C, symSize: 0xA0 } - - { offsetInCU: 0x97C2, offset: 0x1C66D, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcEplEPKc.cold.1, symObjAddr: 0x4B6C, symBinAddr: 0x27C48, symSize: 0x24 } - - { offsetInCU: 0x97EE, offset: 0x1C699, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager31get_file_last_modified_epoch_msERKNS_11string_baseIcEE, symObjAddr: 0x231C, symBinAddr: 0x8D4C, symSize: 0xA0 } - - { offsetInCU: 0x99B3, offset: 0x1C85E, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager9open_fileERKNS_11string_baseIcEENS_19file_open_mode_enumE, symObjAddr: 0x2448, symBinAddr: 0x8DEC, symSize: 0x360 } - - { offsetInCU: 0xA349, offset: 0x1D1F4, size: 0x8, addend: 0x0, symName: __ZNK2bq12file_manager13get_file_sizeERKNS_11file_handleE, symObjAddr: 0x27A8, symBinAddr: 0x914C, symSize: 0x154 } - - { offsetInCU: 0xA353, offset: 0x1D1FE, size: 0x8, addend: 0x0, symName: __ZNK2bq12file_manager13get_file_sizeERKNS_11file_handleE, symObjAddr: 0x27A8, symBinAddr: 0x914C, symSize: 0x154 } - - { offsetInCU: 0xA550, offset: 0x1D3FB, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10close_fileERNS_11file_handleE, symObjAddr: 0x3738, symBinAddr: 0x9C4C, symSize: 0x14C } - - { offsetInCU: 0xAB3E, offset: 0x1D9E9, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x434C, symBinAddr: 0xA3D4, symSize: 0x1F8 } - - { offsetInCU: 0xB1B4, offset: 0x1E05F, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE12set_capacityEmb, symObjAddr: 0x4544, symBinAddr: 0xA5CC, symSize: 0x114 } - - { offsetInCU: 0xB1C9, offset: 0x1E074, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager9open_fileERKNS_11string_baseIcEENS_19file_open_mode_enumE.cold.1, symObjAddr: 0x4B90, symBinAddr: 0x27C6C, symSize: 0x28 } - - { offsetInCU: 0xB1E5, offset: 0x1E090, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleD1Ev, symObjAddr: 0x28FC, symBinAddr: 0x92A0, symSize: 0x44 } - - { offsetInCU: 0xB301, offset: 0x1E1AC, size: 0x8, addend: 0x0, symName: __ZNK2bq11file_handle8is_validEv, symObjAddr: 0x2A34, symBinAddr: 0x92E4, symSize: 0xA0 } - - { offsetInCU: 0xB4A9, offset: 0x1E354, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager9read_fileERKNS_11file_handleEPvmNS0_11seek_optionEx, symObjAddr: 0x34D0, symBinAddr: 0x9B0C, symSize: 0x140 } - - { offsetInCU: 0xB763, offset: 0x1E60E, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15append_all_textERKNS_11string_baseIcEES2_, symObjAddr: 0x2CF0, symBinAddr: 0x9384, symSize: 0x200 } - - { offsetInCU: 0xBBCD, offset: 0x1EA78, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10write_fileERKNS_11file_handleEPKvmNS0_11seek_optionEx, symObjAddr: 0x2EF0, symBinAddr: 0x9584, symSize: 0x148 } - - { offsetInCU: 0xBBD7, offset: 0x1EA82, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15append_all_textERKNS_11string_baseIcEES2_.cold.1, symObjAddr: 0x4C28, symBinAddr: 0x27C94, symSize: 0x24 } - - { offsetInCU: 0xBC04, offset: 0x1EAAF, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10write_fileERKNS_11file_handleEPKvmNS0_11seek_optionEx, symObjAddr: 0x2EF0, symBinAddr: 0x9584, symSize: 0x148 } - - { offsetInCU: 0xBDBA, offset: 0x1EC65, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10flush_fileERKNS_11file_handleE, symObjAddr: 0x3038, symBinAddr: 0x96CC, symSize: 0x84 } - - { offsetInCU: 0xBDC4, offset: 0x1EC6F, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10write_fileERKNS_11file_handleEPKvmNS0_11seek_optionEx.cold.1, symObjAddr: 0x4C4C, symBinAddr: 0x27CB8, symSize: 0x24 } - - { offsetInCU: 0xBDDB, offset: 0x1EC86, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10flush_fileERKNS_11file_handleE, symObjAddr: 0x3038, symBinAddr: 0x96CC, symSize: 0x84 } - - { offsetInCU: 0xBE89, offset: 0x1ED34, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager14write_all_textERKNS_11string_baseIcEES2_, symObjAddr: 0x30BC, symBinAddr: 0x9750, symSize: 0x20C } - - { offsetInCU: 0xC30C, offset: 0x1F1B7, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager13truncate_fileERKNS_11file_handleEm, symObjAddr: 0x32C8, symBinAddr: 0x995C, symSize: 0xFC } - - { offsetInCU: 0xC316, offset: 0x1F1C1, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager13truncate_fileERKNS_11file_handleEm, symObjAddr: 0x32C8, symBinAddr: 0x995C, symSize: 0xFC } - - { offsetInCU: 0xC51F, offset: 0x1F3CA, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager14write_all_textERKNS_11string_baseIcEES2_.cold.1, symObjAddr: 0x4C70, symBinAddr: 0x27CDC, symSize: 0x24 } - - { offsetInCU: 0xC54C, offset: 0x1F3F7, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager29get_and_clear_last_file_errorEv, symObjAddr: 0x33C4, symBinAddr: 0x9A58, symSize: 0x2C } - - { offsetInCU: 0xC57F, offset: 0x1F42A, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager4seekERKNS_11file_handleENS0_11seek_optionEx, symObjAddr: 0x3448, symBinAddr: 0x9A84, symSize: 0x88 } - - { offsetInCU: 0xC63A, offset: 0x1F4E5, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager9read_fileERKNS_11file_handleEPvmNS0_11seek_optionEx.cold.1, symObjAddr: 0x4C94, symBinAddr: 0x27D00, symSize: 0x28 } - - { offsetInCU: 0xC6C7, offset: 0x1F572, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10close_fileERNS_11file_handleE.cold.1, symObjAddr: 0x4CE0, symBinAddr: 0x27D28, symSize: 0x28 } - - { offsetInCU: 0xC73B, offset: 0x1F5E6, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleaSERKS0_, symObjAddr: 0x3BB0, symBinAddr: 0x9D98, symSize: 0xF8 } - - { offsetInCU: 0xCA13, offset: 0x1F8BE, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleaSEOS0_, symObjAddr: 0x3CA8, symBinAddr: 0x9E90, symSize: 0x78 } - - { offsetInCU: 0xCABF, offset: 0x1F96A, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handle7invalidEv, symObjAddr: 0x3D20, symBinAddr: 0x9F08, symSize: 0x4C } - - { offsetInCU: 0xCC8A, offset: 0x1FB35, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x4DA0, symBinAddr: 0x27D50, symSize: 0x24 } - - { offsetInCU: 0xCCA1, offset: 0x1FB4C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.4, symObjAddr: 0x4E0C, symBinAddr: 0x27DBC, symSize: 0x24 } - - { offsetInCU: 0xCCCE, offset: 0x1FB79, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x4DC4, symBinAddr: 0x27D74, symSize: 0x24 } - - { offsetInCU: 0xCD51, offset: 0x1FBFC, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.3, symObjAddr: 0x4DE8, symBinAddr: 0x27D98, symSize: 0x24 } - - { offsetInCU: 0xCDC2, offset: 0x1FC6D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x4E30, symBinAddr: 0x27DE0, symSize: 0x24 } - - { offsetInCU: 0xCDD9, offset: 0x1FC84, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.3, symObjAddr: 0x4E78, symBinAddr: 0x27E28, symSize: 0x24 } - - { offsetInCU: 0xCE06, offset: 0x1FCB1, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x4E54, symBinAddr: 0x27E04, symSize: 0x24 } - - { offsetInCU: 0xD035, offset: 0x1FEE0, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE12set_capacityEmb, symObjAddr: 0x4544, symBinAddr: 0xA5CC, symSize: 0x114 } - - { offsetInCU: 0xD37D, offset: 0x20228, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager44trans_process_relative_path_to_absolute_pathERKNS_11string_baseIcEEb.cold.1, symObjAddr: 0x4658, symBinAddr: 0x277A0, symSize: 0x24 } - - { offsetInCU: 0xD387, offset: 0x20232, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x4E9C, symBinAddr: 0x27E4C, symSize: 0x24 } - - { offsetInCU: 0xD39E, offset: 0x20249, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x4EC0, symBinAddr: 0x27E70, symSize: 0x24 } - - { offsetInCU: 0xD3CB, offset: 0x20276, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE12set_capacityEmb.cold.1, symObjAddr: 0x4EE4, symBinAddr: 0x27E94, symSize: 0x24 } - - { offsetInCU: 0xD3E2, offset: 0x2028D, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x4F08, symBinAddr: 0xA6E0, symSize: 0x8 } - - { offsetInCU: 0xD3F9, offset: 0x202A4, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x4F10, symBinAddr: 0xA6E8, symSize: 0x8 } - - { offsetInCU: 0xD410, offset: 0x202BB, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x4F18, symBinAddr: 0xA6F0, symSize: 0x8 } - - { offsetInCU: 0xD427, offset: 0x202D2, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_3, symObjAddr: 0x4F20, symBinAddr: 0xA6F8, symSize: 0x8 } - - { offsetInCU: 0xD43E, offset: 0x202E9, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_4, symObjAddr: 0x4F28, symBinAddr: 0xA700, symSize: 0x8 } - - { offsetInCU: 0x1F78, offset: 0x2227D, size: 0x8, addend: 0x0, symName: __ZN2bqL10find_splitERNS_11string_baseIcEERKc, symObjAddr: 0xFA8, symBinAddr: 0xB130, symSize: 0x1B8 } - - { offsetInCU: 0x296C, offset: 0x22C71, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj, symObjAddr: 0x287C, symBinAddr: 0xBE48, symSize: 0x27C } - - { offsetInCU: 0x2ECD, offset: 0x231D2, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x2AF8, symBinAddr: 0x27EB8, symSize: 0x24 } - - { offsetInCU: 0x2F6D, offset: 0x23272, size: 0x8, addend: 0x0, symName: __ZN2bq8property4loadERKNS_11string_baseIcEE, symObjAddr: 0x74, symBinAddr: 0xA708, symSize: 0xDC } - - { offsetInCU: 0x34FB, offset: 0x23800, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE, symObjAddr: 0x150, symBinAddr: 0xA7E4, symSize: 0x830 } - - { offsetInCU: 0x59F1, offset: 0x25CF6, size: 0x8, addend: 0x0, symName: __ZN2bq8property3setERKNS_11string_baseIcEES4_, symObjAddr: 0x980, symBinAddr: 0xB014, symSize: 0x11C } - - { offsetInCU: 0x59FB, offset: 0x25D00, size: 0x8, addend: 0x0, symName: __ZN2bq8property3setERKNS_11string_baseIcEES4_, symObjAddr: 0x980, symBinAddr: 0xB014, symSize: 0x11C } - - { offsetInCU: 0x64AB, offset: 0x267B0, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEC2IRS2_JS5_EEEOT_DpOT0_, symObjAddr: 0x1D1C, symBinAddr: 0xB2E8, symSize: 0xDC } - - { offsetInCU: 0x6D1A, offset: 0x2701F, size: 0x8, addend: 0x0, symName: __ZN2bqL10find_splitERNS_11string_baseIcEERKc, symObjAddr: 0xFA8, symBinAddr: 0xB130, symSize: 0x1B8 } - - { offsetInCU: 0x6D24, offset: 0x27029, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEC2IRS2_JS5_EEEOT_DpOT0_, symObjAddr: 0x1D1C, symBinAddr: 0xB2E8, symSize: 0xDC } - - { offsetInCU: 0x7004, offset: 0x27309, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_, symObjAddr: 0x1DF8, symBinAddr: 0xB3C4, symSize: 0x1F8 } - - { offsetInCU: 0x7022, offset: 0x27327, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_, symObjAddr: 0x1DF8, symBinAddr: 0xB3C4, symSize: 0x1F8 } - - { offsetInCU: 0x7A16, offset: 0x27D1B, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE12set_capacityEmb, symObjAddr: 0x1FF0, symBinAddr: 0xB5BC, symSize: 0x14C } - - { offsetInCU: 0x7A2B, offset: 0x27D30, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.5, symObjAddr: 0x2B88, symBinAddr: 0x27F48, symSize: 0x24 } - - { offsetInCU: 0x7A57, offset: 0x27D5C, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.14, symObjAddr: 0x2CCC, symBinAddr: 0x2808C, symSize: 0x24 } - - { offsetInCU: 0x7A83, offset: 0x27D88, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.12, symObjAddr: 0x2C84, symBinAddr: 0x28044, symSize: 0x24 } - - { offsetInCU: 0x7AC5, offset: 0x27DCA, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.6, symObjAddr: 0x2BAC, symBinAddr: 0x27F6C, symSize: 0x24 } - - { offsetInCU: 0x7B31, offset: 0x27E36, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.7, symObjAddr: 0x2BD0, symBinAddr: 0x27F90, symSize: 0x24 } - - { offsetInCU: 0x7B9D, offset: 0x27EA2, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.8, symObjAddr: 0x2BF4, symBinAddr: 0x27FB4, symSize: 0x24 } - - { offsetInCU: 0x7C09, offset: 0x27F0E, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.9, symObjAddr: 0x2C18, symBinAddr: 0x27FD8, symSize: 0x24 } - - { offsetInCU: 0x7C75, offset: 0x27F7A, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.10, symObjAddr: 0x2C3C, symBinAddr: 0x27FFC, symSize: 0x24 } - - { offsetInCU: 0x7CE1, offset: 0x27FE6, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.11, symObjAddr: 0x2C60, symBinAddr: 0x28020, symSize: 0x24 } - - { offsetInCU: 0x7D4D, offset: 0x28052, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x2AF8, symBinAddr: 0x27EB8, symSize: 0x24 } - - { offsetInCU: 0x7DB9, offset: 0x280BE, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.2, symObjAddr: 0x2B1C, symBinAddr: 0x27EDC, symSize: 0x24 } - - { offsetInCU: 0x7E25, offset: 0x2812A, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.3, symObjAddr: 0x2B40, symBinAddr: 0x27F00, symSize: 0x24 } - - { offsetInCU: 0x7E91, offset: 0x28196, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.4, symObjAddr: 0x2B64, symBinAddr: 0x27F24, symSize: 0x24 } - - { offsetInCU: 0x7EFD, offset: 0x28202, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.15, symObjAddr: 0x2CF0, symBinAddr: 0x280B0, symSize: 0x24 } - - { offsetInCU: 0x7F69, offset: 0x2826E, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.13, symObjAddr: 0x2CA8, symBinAddr: 0x28068, symSize: 0x24 } - - { offsetInCU: 0x81C5, offset: 0x284CA, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E32find_index_and_bucket_idx_by_keyERKS2_, symObjAddr: 0x213C, symBinAddr: 0xB708, symSize: 0x120 } - - { offsetInCU: 0x83F2, offset: 0x286F7, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRKS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x225C, symBinAddr: 0xB828, symSize: 0x25C } - - { offsetInCU: 0x83FC, offset: 0x28701, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRKS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x225C, symBinAddr: 0xB828, symSize: 0x25C } - - { offsetInCU: 0x8AAF, offset: 0x28DB4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_, symObjAddr: 0x24B8, symBinAddr: 0xBA84, symSize: 0x1E8 } - - { offsetInCU: 0x8AC4, offset: 0x28DC9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_, symObjAddr: 0x24B8, symBinAddr: 0xBA84, symSize: 0x1E8 } - - { offsetInCU: 0x8EB3, offset: 0x291B8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj, symObjAddr: 0x26A0, symBinAddr: 0xBC6C, symSize: 0x1DC } - - { offsetInCU: 0x8EBD, offset: 0x291C2, size: 0x8, addend: 0x0, symName: __ZN2bq8property3setERKNS_11string_baseIcEES4_.cold.2, symObjAddr: 0x2D38, symBinAddr: 0x280F8, symSize: 0x24 } - - { offsetInCU: 0x8F3E, offset: 0x29243, size: 0x8, addend: 0x0, symName: __ZN2bq8property3setERKNS_11string_baseIcEES4_.cold.1, symObjAddr: 0x2D14, symBinAddr: 0x280D4, symSize: 0x24 } - - { offsetInCU: 0x9534, offset: 0x29839, size: 0x8, addend: 0x0, symName: __ZN2bqL10find_splitERNS_11string_baseIcEERKc.cold.1, symObjAddr: 0x2E38, symBinAddr: 0x2811C, symSize: 0x24 } - - { offsetInCU: 0x9560, offset: 0x29865, size: 0x8, addend: 0x0, symName: __ZN2bqL10find_splitERNS_11string_baseIcEERKc.cold.3, symObjAddr: 0x2E80, symBinAddr: 0x28164, symSize: 0x24 } - - { offsetInCU: 0x958C, offset: 0x29891, size: 0x8, addend: 0x0, symName: __ZN2bqL10find_splitERNS_11string_baseIcEERKc.cold.4, symObjAddr: 0x2EA4, symBinAddr: 0x28188, symSize: 0x24 } - - { offsetInCU: 0x95CE, offset: 0x298D3, size: 0x8, addend: 0x0, symName: __ZN2bqL10find_splitERNS_11string_baseIcEERKc.cold.2, symObjAddr: 0x2E5C, symBinAddr: 0x28140, symSize: 0x24 } - - { offsetInCU: 0x99CB, offset: 0x29CD0, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEC2IRS2_JS5_EEEOT_DpOT0_.cold.2, symObjAddr: 0x32BC, symBinAddr: 0x281D0, symSize: 0x24 } - - { offsetInCU: 0x9A64, offset: 0x29D69, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEC2IRS2_JS5_EEEOT_DpOT0_.cold.1, symObjAddr: 0x3298, symBinAddr: 0x281AC, symSize: 0x24 } - - { offsetInCU: 0x9E10, offset: 0x2A115, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE12set_capacityEmb, symObjAddr: 0x1FF0, symBinAddr: 0xB5BC, symSize: 0x14C } - - { offsetInCU: 0xA479, offset: 0x2A77E, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E32find_index_and_bucket_idx_by_keyERKS2_, symObjAddr: 0x213C, symBinAddr: 0xB708, symSize: 0x120 } - - { offsetInCU: 0xA483, offset: 0x2A788, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_.cold.1, symObjAddr: 0x32E0, symBinAddr: 0x281F4, symSize: 0x24 } - - { offsetInCU: 0xA49A, offset: 0x2A79F, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_.cold.2, symObjAddr: 0x3304, symBinAddr: 0x28218, symSize: 0x24 } - - { offsetInCU: 0xA4C7, offset: 0x2A7CC, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE12set_capacityEmb.cold.1, symObjAddr: 0x3328, symBinAddr: 0x2823C, symSize: 0x24 } - - { offsetInCU: 0xA5FA, offset: 0x2A8FF, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E32find_index_and_bucket_idx_by_keyERKS2_.cold.1, symObjAddr: 0x334C, symBinAddr: 0x28260, symSize: 0x24 } - - { offsetInCU: 0xA627, offset: 0x2A92C, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E32find_index_and_bucket_idx_by_keyERKS2_.cold.2, symObjAddr: 0x3370, symBinAddr: 0x28284, symSize: 0x24 } - - { offsetInCU: 0xA698, offset: 0x2A99D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRKS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x3394, symBinAddr: 0x282A8, symSize: 0x24 } - - { offsetInCU: 0xA6AF, offset: 0x2A9B4, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRKS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.4, symObjAddr: 0x3400, symBinAddr: 0x28314, symSize: 0x24 } - - { offsetInCU: 0xA6DC, offset: 0x2A9E1, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRKS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x33B8, symBinAddr: 0x282CC, symSize: 0x24 } - - { offsetInCU: 0xA75F, offset: 0x2AA64, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRKS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.3, symObjAddr: 0x33DC, symBinAddr: 0x282F0, symSize: 0x24 } - - { offsetInCU: 0xA812, offset: 0x2AB17, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj, symObjAddr: 0x26A0, symBinAddr: 0xBC6C, symSize: 0x1DC } - - { offsetInCU: 0xAB0F, offset: 0x2AE14, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj, symObjAddr: 0x287C, symBinAddr: 0xBE48, symSize: 0x27C } - - { offsetInCU: 0xAB19, offset: 0x2AE1E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.3, symObjAddr: 0x3470, symBinAddr: 0x28384, symSize: 0x24 } - - { offsetInCU: 0xAB71, offset: 0x2AE76, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.9, symObjAddr: 0x3548, symBinAddr: 0x2845C, symSize: 0x28 } - - { offsetInCU: 0xAB88, offset: 0x2AE8D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.8, symObjAddr: 0x3524, symBinAddr: 0x28438, symSize: 0x24 } - - { offsetInCU: 0xABB5, offset: 0x2AEBA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.1, symObjAddr: 0x3424, symBinAddr: 0x28338, symSize: 0x28 } - - { offsetInCU: 0xABCC, offset: 0x2AED1, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.6, symObjAddr: 0x34DC, symBinAddr: 0x283F0, symSize: 0x24 } - - { offsetInCU: 0xABF9, offset: 0x2AEFE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.7, symObjAddr: 0x3500, symBinAddr: 0x28414, symSize: 0x24 } - - { offsetInCU: 0xAC26, offset: 0x2AF2B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.5, symObjAddr: 0x34B8, symBinAddr: 0x283CC, symSize: 0x24 } - - { offsetInCU: 0xAC53, offset: 0x2AF58, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.4, symObjAddr: 0x3494, symBinAddr: 0x283A8, symSize: 0x24 } - - { offsetInCU: 0xAC80, offset: 0x2AF85, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.2, symObjAddr: 0x344C, symBinAddr: 0x28360, symSize: 0x24 } - - { offsetInCU: 0xAD03, offset: 0x2B008, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj.cold.7, symObjAddr: 0x3648, symBinAddr: 0x2855C, symSize: 0x24 } - - { offsetInCU: 0xAD30, offset: 0x2B035, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj.cold.6, symObjAddr: 0x3624, symBinAddr: 0x28538, symSize: 0x24 } - - { offsetInCU: 0xAD5D, offset: 0x2B062, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj.cold.5, symObjAddr: 0x3600, symBinAddr: 0x28514, symSize: 0x24 } - - { offsetInCU: 0xAD8A, offset: 0x2B08F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj.cold.4, symObjAddr: 0x35DC, symBinAddr: 0x284F0, symSize: 0x24 } - - { offsetInCU: 0xADB7, offset: 0x2B0BC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj.cold.3, symObjAddr: 0x35B8, symBinAddr: 0x284CC, symSize: 0x24 } - - { offsetInCU: 0xADE4, offset: 0x2B0E9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj.cold.2, symObjAddr: 0x3594, symBinAddr: 0x284A8, symSize: 0x24 } - - { offsetInCU: 0xAE11, offset: 0x2B116, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj.cold.1, symObjAddr: 0x3570, symBinAddr: 0x28484, symSize: 0x24 } - - { offsetInCU: 0xAEA6, offset: 0x2B1AB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj.cold.1, symObjAddr: 0x366C, symBinAddr: 0x28580, symSize: 0x24 } - - { offsetInCU: 0xAEE8, offset: 0x2B1ED, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj.cold.6, symObjAddr: 0x3720, symBinAddr: 0x28634, symSize: 0x24 } - - { offsetInCU: 0xAF2A, offset: 0x2B22F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj.cold.5, symObjAddr: 0x36FC, symBinAddr: 0x28610, symSize: 0x24 } - - { offsetInCU: 0xAF6C, offset: 0x2B271, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj.cold.4, symObjAddr: 0x36D8, symBinAddr: 0x285EC, symSize: 0x24 } - - { offsetInCU: 0xAFDA, offset: 0x2B2DF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj.cold.3, symObjAddr: 0x36B4, symBinAddr: 0x285C8, symSize: 0x24 } - - { offsetInCU: 0xB048, offset: 0x2B34D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj.cold.2, symObjAddr: 0x3690, symBinAddr: 0x285A4, symSize: 0x24 } - - { offsetInCU: 0xB0A0, offset: 0x2B3A5, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj.cold.7, symObjAddr: 0x3744, symBinAddr: 0x28658, symSize: 0x24 } - - { offsetInCU: 0xB0E3, offset: 0x2B3E8, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x3768, symBinAddr: 0xC0C4, symSize: 0x8 } - - { offsetInCU: 0xB0FA, offset: 0x2B3FF, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x3770, symBinAddr: 0xC0CC, symSize: 0x8 } - - { offsetInCU: 0xB111, offset: 0x2B416, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x3778, symBinAddr: 0xC0D4, symSize: 0x8 } - - { offsetInCU: 0xB128, offset: 0x2B42D, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_3, symObjAddr: 0x3780, symBinAddr: 0xC0DC, symSize: 0x8 } - - { offsetInCU: 0xB13F, offset: 0x2B444, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_4, symObjAddr: 0x3788, symBinAddr: 0xC0E4, symSize: 0x8 } - - { offsetInCU: 0xB156, offset: 0x2B45B, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_5, symObjAddr: 0x3790, symBinAddr: 0xC0EC, symSize: 0x8 } - - { offsetInCU: 0x26, offset: 0x2B4AC, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE, symObjAddr: 0x0, symBinAddr: 0xC0F4, symSize: 0x204 } - - { offsetInCU: 0x2A49, offset: 0x2DECF, size: 0x8, addend: 0x0, symName: __ZN2bqL30trans_parson_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_, symObjAddr: 0x208, symBinAddr: 0xC2F8, symSize: 0x370 } - - { offsetInCU: 0x36C0, offset: 0x2EB46, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueD1Ev, symObjAddr: 0x578, symBinAddr: 0xC668, symSize: 0x24 } - - { offsetInCU: 0x3715, offset: 0x2EB9B, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_, symObjAddr: 0x3348, symBinAddr: 0xD484, symSize: 0x838 } - - { offsetInCU: 0x5CF6, offset: 0x3117C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj, symObjAddr: 0x4804, symBinAddr: 0xE2DC, symSize: 0x26C } - - { offsetInCU: 0x6241, offset: 0x316C7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_, symObjAddr: 0x4A70, symBinAddr: 0xE548, symSize: 0x1FC } - - { offsetInCU: 0x68DB, offset: 0x31D61, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE, symObjAddr: 0x0, symBinAddr: 0xC0F4, symSize: 0x204 } - - { offsetInCU: 0x7354, offset: 0x327DA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5resetEv, symObjAddr: 0x3F04, symBinAddr: 0xDCBC, symSize: 0x108 } - - { offsetInCU: 0x735E, offset: 0x327E4, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x51A4, symBinAddr: 0x2867C, symSize: 0x24 } - - { offsetInCU: 0x739F, offset: 0x32825, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5resetEv, symObjAddr: 0x3F04, symBinAddr: 0xDCBC, symSize: 0x108 } - - { offsetInCU: 0x76C3, offset: 0x32B49, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE.cold.4, symObjAddr: 0x5210, symBinAddr: 0x286E8, symSize: 0x24 } - - { offsetInCU: 0x7704, offset: 0x32B8A, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE.cold.2, symObjAddr: 0x51C8, symBinAddr: 0x286A0, symSize: 0x24 } - - { offsetInCU: 0x775B, offset: 0x32BE1, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE.cold.5, symObjAddr: 0x5234, symBinAddr: 0x2870C, symSize: 0x24 } - - { offsetInCU: 0x779D, offset: 0x32C23, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE.cold.3, symObjAddr: 0x51EC, symBinAddr: 0x286C4, symSize: 0x24 } - - { offsetInCU: 0x7EA1, offset: 0x33327, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_, symObjAddr: 0x3348, symBinAddr: 0xD484, symSize: 0x838 } - - { offsetInCU: 0x7EAB, offset: 0x33331, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14copy_data_fromEOS0_, symObjAddr: 0x1760, symBinAddr: 0xC8B4, symSize: 0x1B8 } - - { offsetInCU: 0x8332, offset: 0x337B8, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value10clear_dataEv, symObjAddr: 0xFF4, symBinAddr: 0xC6E4, symSize: 0x108 } - - { offsetInCU: 0x869B, offset: 0x33B21, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixERKNS_11string_baseIcEE, symObjAddr: 0x1CE0, symBinAddr: 0xCD0C, symSize: 0x2AC } - - { offsetInCU: 0x8EA4, offset: 0x3432A, size: 0x8, addend: 0x0, symName: __ZN2bqL30trans_parson_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.4, symObjAddr: 0x52C4, symBinAddr: 0x2879C, symSize: 0x28 } - - { offsetInCU: 0x8ED0, offset: 0x34356, size: 0x8, addend: 0x0, symName: __ZN2bqL30trans_parson_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.1, symObjAddr: 0x5258, symBinAddr: 0x28730, symSize: 0x24 } - - { offsetInCU: 0x8F3C, offset: 0x343C2, size: 0x8, addend: 0x0, symName: __ZN2bqL30trans_parson_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.6, symObjAddr: 0x5310, symBinAddr: 0x287E8, symSize: 0x24 } - - { offsetInCU: 0x8FA8, offset: 0x3442E, size: 0x8, addend: 0x0, symName: __ZN2bqL30trans_parson_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.5, symObjAddr: 0x52EC, symBinAddr: 0x287C4, symSize: 0x24 } - - { offsetInCU: 0x9014, offset: 0x3449A, size: 0x8, addend: 0x0, symName: __ZN2bqL30trans_parson_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.2, symObjAddr: 0x527C, symBinAddr: 0x28754, symSize: 0x24 } - - { offsetInCU: 0x9080, offset: 0x34506, size: 0x8, addend: 0x0, symName: __ZN2bqL30trans_parson_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.3, symObjAddr: 0x52A0, symBinAddr: 0x28778, symSize: 0x24 } - - { offsetInCU: 0x90C2, offset: 0x34548, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueD1Ev, symObjAddr: 0x578, symBinAddr: 0xC668, symSize: 0x24 } - - { offsetInCU: 0x9387, offset: 0x3480D, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valueixEm, symObjAddr: 0x271C, symBinAddr: 0xD0D8, symSize: 0xEC } - - { offsetInCU: 0x94A9, offset: 0x3492F, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvxEv, symObjAddr: 0x1540, symBinAddr: 0xC7EC, symSize: 0x34 } - - { offsetInCU: 0x9535, offset: 0x349BB, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC1EPKc, symObjAddr: 0xF9C, symBinAddr: 0xC68C, symSize: 0x58 } - - { offsetInCU: 0x95FD, offset: 0x34A83, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvNS_11string_baseIcEEEv, symObjAddr: 0x15D0, symBinAddr: 0xC820, symSize: 0x94 } - - { offsetInCU: 0x9789, offset: 0x34C0F, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value18get_object_key_setEv, symObjAddr: 0x2920, symBinAddr: 0xD2A4, symSize: 0xD0 } - - { offsetInCU: 0x99EB, offset: 0x34E71, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value10array_sizeEv, symObjAddr: 0x29F0, symBinAddr: 0xD374, symSize: 0x2C } - - { offsetInCU: 0x99F5, offset: 0x34E7B, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valueixERKNS_11string_baseIcEE, symObjAddr: 0x21C4, symBinAddr: 0xCFB8, symSize: 0x120 } - - { offsetInCU: 0x9D46, offset: 0x351CC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5resetEv, symObjAddr: 0x42EC, symBinAddr: 0xDDC4, symSize: 0x108 } - - { offsetInCU: 0xA09C, offset: 0x35522, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE6insertIJPS2_EEEvNS_14array_iteratorIS3_S4_EEDpOT_, symObjAddr: 0x43F4, symBinAddr: 0xDECC, symSize: 0x22C } - - { offsetInCU: 0xA58B, offset: 0x35A11, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE6insertIJPS2_EEEvNS_14array_iteratorIS3_S4_EEDpOT_, symObjAddr: 0x43F4, symBinAddr: 0xDECC, symSize: 0x22C } - - { offsetInCU: 0xAA83, offset: 0x35F09, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj, symObjAddr: 0x4620, symBinAddr: 0xE0F8, symSize: 0x1E4 } - - { offsetInCU: 0xAA98, offset: 0x35F1E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj, symObjAddr: 0x4620, symBinAddr: 0xE0F8, symSize: 0x1E4 } - - { offsetInCU: 0xAD95, offset: 0x3621B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj, symObjAddr: 0x4804, symBinAddr: 0xE2DC, symSize: 0x26C } - - { offsetInCU: 0xAD9F, offset: 0x36225, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_, symObjAddr: 0x4A70, symBinAddr: 0xE548, symSize: 0x1FC } - - { offsetInCU: 0xB18E, offset: 0x36614, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE32find_index_and_bucket_idx_by_keyERKS2_, symObjAddr: 0x4C6C, symBinAddr: 0xE744, symSize: 0x130 } - - { offsetInCU: 0xB198, offset: 0x3661E, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvxEv.cold.1, symObjAddr: 0x55E8, symBinAddr: 0x2880C, symSize: 0x24 } - - { offsetInCU: 0xB1C5, offset: 0x3664B, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvNS_11string_baseIcEEEv.cold.2, symObjAddr: 0x5630, symBinAddr: 0x28854, symSize: 0x28 } - - { offsetInCU: 0xB1F2, offset: 0x36678, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvNS_11string_baseIcEEEv.cold.1, symObjAddr: 0x560C, symBinAddr: 0x28830, symSize: 0x24 } - - { offsetInCU: 0xB2A9, offset: 0x3672F, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14copy_data_fromEOS0_.cold.4, symObjAddr: 0x56C8, symBinAddr: 0x288EC, symSize: 0x28 } - - { offsetInCU: 0xB2D6, offset: 0x3675C, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14copy_data_fromEOS0_.cold.1, symObjAddr: 0x5658, symBinAddr: 0x2887C, symSize: 0x28 } - - { offsetInCU: 0xB303, offset: 0x36789, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14copy_data_fromEOS0_.cold.2, symObjAddr: 0x5680, symBinAddr: 0x288A4, symSize: 0x24 } - - { offsetInCU: 0xB330, offset: 0x367B6, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14copy_data_fromEOS0_.cold.3, symObjAddr: 0x56A4, symBinAddr: 0x288C8, symSize: 0x24 } - - { offsetInCU: 0xB35D, offset: 0x367E3, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14copy_data_fromEOS0_.cold.5, symObjAddr: 0x56F0, symBinAddr: 0x28914, symSize: 0x24 } - - { offsetInCU: 0xB38A, offset: 0x36810, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14copy_data_fromEOS0_.cold.6, symObjAddr: 0x5714, symBinAddr: 0x28938, symSize: 0x24 } - - { offsetInCU: 0xB3B7, offset: 0x3683D, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixEm, symObjAddr: 0x1A3C, symBinAddr: 0xCA6C, symSize: 0x2A0 } - - { offsetInCU: 0xBA74, offset: 0x36EFA, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateINS_5arrayINS_10unique_ptrIS0_EELm0EEES5_EEvOT_RT0_bNS_24enum_property_value_typeE, symObjAddr: 0x2808, symBinAddr: 0xD1C4, symSize: 0xE0 } - - { offsetInCU: 0xBCD0, offset: 0x37156, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixEm.cold.2, symObjAddr: 0x5780, symBinAddr: 0x28980, symSize: 0x24 } - - { offsetInCU: 0xBCFD, offset: 0x37183, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixEm.cold.3, symObjAddr: 0x57A4, symBinAddr: 0x289A4, symSize: 0x24 } - - { offsetInCU: 0xBD2A, offset: 0x371B0, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixEm.cold.1, symObjAddr: 0x575C, symBinAddr: 0x2895C, symSize: 0x24 } - - { offsetInCU: 0xBE2B, offset: 0x372B1, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE32find_index_and_bucket_idx_by_keyERKS2_, symObjAddr: 0x4C6C, symBinAddr: 0xE744, symSize: 0x130 } - - { offsetInCU: 0xC062, offset: 0x374E8, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixERKNS_11string_baseIcEE.cold.3, symObjAddr: 0x5810, symBinAddr: 0x28A10, symSize: 0x24 } - - { offsetInCU: 0xC08F, offset: 0x37515, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixERKNS_11string_baseIcEE.cold.5, symObjAddr: 0x5858, symBinAddr: 0x28A58, symSize: 0x24 } - - { offsetInCU: 0xC0BC, offset: 0x37542, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixERKNS_11string_baseIcEE.cold.4, symObjAddr: 0x5834, symBinAddr: 0x28A34, symSize: 0x24 } - - { offsetInCU: 0xC129, offset: 0x375AF, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x57C8, symBinAddr: 0x289C8, symSize: 0x24 } - - { offsetInCU: 0xC16B, offset: 0x375F1, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixERKNS_11string_baseIcEE.cold.2, symObjAddr: 0x57EC, symBinAddr: 0x289EC, symSize: 0x24 } - - { offsetInCU: 0xC389, offset: 0x3780F, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateINS_5arrayINS_10unique_ptrIS0_EELm0EEES5_EEvOT_RT0_bNS_24enum_property_value_typeE.cold.1, symObjAddr: 0x5958, symBinAddr: 0x28A7C, symSize: 0x24 } - - { offsetInCU: 0xC774, offset: 0x37BFA, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x51A4, symBinAddr: 0x2867C, symSize: 0x24 } - - { offsetInCU: 0xC789, offset: 0x37C0F, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value18get_object_key_setEv.cold.1, symObjAddr: 0x597C, symBinAddr: 0x28AA0, symSize: 0x24 } - - { offsetInCU: 0xC7CB, offset: 0x37C51, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value18get_object_key_setEv.cold.3, symObjAddr: 0x59C4, symBinAddr: 0x28AE8, symSize: 0x24 } - - { offsetInCU: 0xC80D, offset: 0x37C93, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value18get_object_key_setEv.cold.2, symObjAddr: 0x59A0, symBinAddr: 0x28AC4, symSize: 0x24 } - - { offsetInCU: 0xC865, offset: 0x37CEB, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value18get_object_key_setEv.cold.4, symObjAddr: 0x59E8, symBinAddr: 0x28B0C, symSize: 0x24 } - - { offsetInCU: 0xC8A8, offset: 0x37D2E, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value10array_sizeEv, symObjAddr: 0x29F0, symBinAddr: 0xD374, symSize: 0x2C } - - { offsetInCU: 0xC8CD, offset: 0x37D53, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value10array_sizeEv, symObjAddr: 0x29F0, symBinAddr: 0xD374, symSize: 0x2C } - - { offsetInCU: 0xC8E9, offset: 0x37D6F, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value10array_sizeEv, symObjAddr: 0x29F0, symBinAddr: 0xD374, symSize: 0x2C } - - { offsetInCU: 0xC991, offset: 0x37E17, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateIRKNS_11string_baseIcEES3_EEvOT_RT0_bNS_24enum_property_value_typeE, symObjAddr: 0x2C20, symBinAddr: 0xD3A0, symSize: 0xE4 } - - { offsetInCU: 0xCC0C, offset: 0x38092, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateIRKNS_11string_baseIcEES3_EEvOT_RT0_bNS_24enum_property_value_typeE.cold.2, symObjAddr: 0x5A54, symBinAddr: 0x28B54, symSize: 0x24 } - - { offsetInCU: 0xCC38, offset: 0x380BE, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateIRKNS_11string_baseIcEES3_EEvOT_RT0_bNS_24enum_property_value_typeE.cold.1, symObjAddr: 0x5A30, symBinAddr: 0x28B30, symSize: 0x24 } - - { offsetInCU: 0xD49D, offset: 0x38923, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.2, symObjAddr: 0x5CDC, symBinAddr: 0x28B9C, symSize: 0x28 } - - { offsetInCU: 0xD4C9, offset: 0x3894F, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.1, symObjAddr: 0x5CB8, symBinAddr: 0x28B78, symSize: 0x24 } - - { offsetInCU: 0xD54A, offset: 0x389D0, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.3, symObjAddr: 0x5D04, symBinAddr: 0x28BC4, symSize: 0x24 } - - { offsetInCU: 0xD58C, offset: 0x38A12, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.7, symObjAddr: 0x5D94, symBinAddr: 0x28C54, symSize: 0x24 } - - { offsetInCU: 0xD5F8, offset: 0x38A7E, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.4, symObjAddr: 0x5D28, symBinAddr: 0x28BE8, symSize: 0x24 } - - { offsetInCU: 0xD664, offset: 0x38AEA, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.5, symObjAddr: 0x5D4C, symBinAddr: 0x28C0C, symSize: 0x24 } - - { offsetInCU: 0xD6A6, offset: 0x38B2C, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.6, symObjAddr: 0x5D70, symBinAddr: 0x28C30, symSize: 0x24 } - - { offsetInCU: 0xD8E4, offset: 0x38D6A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5resetEv.cold.1, symObjAddr: 0x5E94, symBinAddr: 0x28C78, symSize: 0x24 } - - { offsetInCU: 0xD926, offset: 0x38DAC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5resetEv.cold.4, symObjAddr: 0x5F00, symBinAddr: 0x28CE4, symSize: 0x24 } - - { offsetInCU: 0xD994, offset: 0x38E1A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5resetEv.cold.3, symObjAddr: 0x5EDC, symBinAddr: 0x28CC0, symSize: 0x24 } - - { offsetInCU: 0xDA02, offset: 0x38E88, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5resetEv.cold.2, symObjAddr: 0x5EB8, symBinAddr: 0x28C9C, symSize: 0x24 } - - { offsetInCU: 0xDA5A, offset: 0x38EE0, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5resetEv.cold.5, symObjAddr: 0x5F24, symBinAddr: 0x28D08, symSize: 0x24 } - - { offsetInCU: 0xDB05, offset: 0x38F8B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5resetEv.cold.1, symObjAddr: 0x5FB8, symBinAddr: 0x28D2C, symSize: 0x24 } - - { offsetInCU: 0xDB47, offset: 0x38FCD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5resetEv.cold.4, symObjAddr: 0x6024, symBinAddr: 0x28D98, symSize: 0x24 } - - { offsetInCU: 0xDBB5, offset: 0x3903B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5resetEv.cold.3, symObjAddr: 0x6000, symBinAddr: 0x28D74, symSize: 0x24 } - - { offsetInCU: 0xDC23, offset: 0x390A9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5resetEv.cold.2, symObjAddr: 0x5FDC, symBinAddr: 0x28D50, symSize: 0x24 } - - { offsetInCU: 0xDC7B, offset: 0x39101, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5resetEv.cold.5, symObjAddr: 0x6048, symBinAddr: 0x28DBC, symSize: 0x24 } - - { offsetInCU: 0xDD24, offset: 0x391AA, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE6insertIJPS2_EEEvNS_14array_iteratorIS3_S4_EEDpOT_.cold.1, symObjAddr: 0x606C, symBinAddr: 0x28DE0, symSize: 0x24 } - - { offsetInCU: 0xDD3B, offset: 0x391C1, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE6insertIJPS2_EEEvNS_14array_iteratorIS3_S4_EEDpOT_.cold.3, symObjAddr: 0x60B4, symBinAddr: 0x28E28, symSize: 0x24 } - - { offsetInCU: 0xDD68, offset: 0x391EE, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE6insertIJPS2_EEEvNS_14array_iteratorIS3_S4_EEDpOT_.cold.2, symObjAddr: 0x6090, symBinAddr: 0x28E04, symSize: 0x24 } - - { offsetInCU: 0xDE06, offset: 0x3928C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj.cold.7, symObjAddr: 0x61B0, symBinAddr: 0x28F24, symSize: 0x24 } - - { offsetInCU: 0xDE33, offset: 0x392B9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj.cold.6, symObjAddr: 0x618C, symBinAddr: 0x28F00, symSize: 0x24 } - - { offsetInCU: 0xDE60, offset: 0x392E6, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj.cold.5, symObjAddr: 0x6168, symBinAddr: 0x28EDC, symSize: 0x24 } - - { offsetInCU: 0xDE8D, offset: 0x39313, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj.cold.4, symObjAddr: 0x6144, symBinAddr: 0x28EB8, symSize: 0x24 } - - { offsetInCU: 0xDEBA, offset: 0x39340, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj.cold.3, symObjAddr: 0x6120, symBinAddr: 0x28E94, symSize: 0x24 } - - { offsetInCU: 0xDEE7, offset: 0x3936D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj.cold.2, symObjAddr: 0x60FC, symBinAddr: 0x28E70, symSize: 0x24 } - - { offsetInCU: 0xDF14, offset: 0x3939A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj.cold.1, symObjAddr: 0x60D8, symBinAddr: 0x28E4C, symSize: 0x24 } - - { offsetInCU: 0xDF41, offset: 0x393C7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj.cold.1, symObjAddr: 0x61D4, symBinAddr: 0x28F48, symSize: 0x24 } - - { offsetInCU: 0xDF83, offset: 0x39409, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj.cold.5, symObjAddr: 0x6264, symBinAddr: 0x28FD8, symSize: 0x24 } - - { offsetInCU: 0xDFC5, offset: 0x3944B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj.cold.4, symObjAddr: 0x6240, symBinAddr: 0x28FB4, symSize: 0x24 } - - { offsetInCU: 0xE007, offset: 0x3948D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj.cold.3, symObjAddr: 0x621C, symBinAddr: 0x28F90, symSize: 0x24 } - - { offsetInCU: 0xE075, offset: 0x394FB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj.cold.2, symObjAddr: 0x61F8, symBinAddr: 0x28F6C, symSize: 0x24 } - - { offsetInCU: 0xE0CD, offset: 0x39553, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj.cold.6, symObjAddr: 0x6288, symBinAddr: 0x28FFC, symSize: 0x24 } - - { offsetInCU: 0xE15C, offset: 0x395E2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.3, symObjAddr: 0x62F8, symBinAddr: 0x2906C, symSize: 0x24 } - - { offsetInCU: 0xE1B4, offset: 0x3963A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.9, symObjAddr: 0x63D0, symBinAddr: 0x29144, symSize: 0x28 } - - { offsetInCU: 0xE1CB, offset: 0x39651, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.8, symObjAddr: 0x63AC, symBinAddr: 0x29120, symSize: 0x24 } - - { offsetInCU: 0xE1F8, offset: 0x3967E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.1, symObjAddr: 0x62AC, symBinAddr: 0x29020, symSize: 0x28 } - - { offsetInCU: 0xE20F, offset: 0x39695, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.6, symObjAddr: 0x6364, symBinAddr: 0x290D8, symSize: 0x24 } - - { offsetInCU: 0xE23C, offset: 0x396C2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.7, symObjAddr: 0x6388, symBinAddr: 0x290FC, symSize: 0x24 } - - { offsetInCU: 0xE269, offset: 0x396EF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.5, symObjAddr: 0x6340, symBinAddr: 0x290B4, symSize: 0x24 } - - { offsetInCU: 0xE296, offset: 0x3971C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.4, symObjAddr: 0x631C, symBinAddr: 0x29090, symSize: 0x24 } - - { offsetInCU: 0xE2C3, offset: 0x39749, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.2, symObjAddr: 0x62D4, symBinAddr: 0x29048, symSize: 0x24 } - - { offsetInCU: 0xE387, offset: 0x3980D, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE32find_index_and_bucket_idx_by_keyERKS2_.cold.1, symObjAddr: 0x63F8, symBinAddr: 0x2916C, symSize: 0x24 } - - { offsetInCU: 0xE3B4, offset: 0x3983A, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE32find_index_and_bucket_idx_by_keyERKS2_.cold.2, symObjAddr: 0x641C, symBinAddr: 0x29190, symSize: 0x24 } - - { offsetInCU: 0xE498, offset: 0x3991E, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x65A8, symBinAddr: 0xE874, symSize: 0x8 } - - { offsetInCU: 0xE4AF, offset: 0x39935, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x65B0, symBinAddr: 0xE87C, symSize: 0x8 } - - { offsetInCU: 0xE4C6, offset: 0x3994C, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x65B8, symBinAddr: 0xE884, symSize: 0x8 } - - { offsetInCU: 0xE4DD, offset: 0x39963, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_3, symObjAddr: 0x65C0, symBinAddr: 0xE88C, symSize: 0x8 } - - { offsetInCU: 0xE4F4, offset: 0x3997A, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_4, symObjAddr: 0x65C8, symBinAddr: 0xE894, symSize: 0x8 } - - { offsetInCU: 0xE50B, offset: 0x39991, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_5, symObjAddr: 0x65D0, symBinAddr: 0xE89C, symSize: 0x8 } - - { offsetInCU: 0xE522, offset: 0x399A8, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_6, symObjAddr: 0x65D8, symBinAddr: 0xE8A4, symSize: 0x8 } - - { offsetInCU: 0xE539, offset: 0x399BF, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_7, symObjAddr: 0x65E0, symBinAddr: 0xE8AC, symSize: 0x8 } - - { offsetInCU: 0xE550, offset: 0x399D6, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_8, symObjAddr: 0x65E8, symBinAddr: 0xE8B4, symSize: 0x8 } - - { offsetInCU: 0xE567, offset: 0x399ED, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_9, symObjAddr: 0x65F0, symBinAddr: 0xE8BC, symSize: 0x8 } - - { offsetInCU: 0x44, offset: 0x39A52, size: 0x8, addend: 0x0, symName: __ZN2bqL14_assert_mutex_E, symObjAddr: 0xA5D0, symBinAddr: 0x34968, symSize: 0x0 } - - { offsetInCU: 0x37B, offset: 0x39D89, size: 0x8, addend: 0x0, symName: __ZN2bq4util28get_gmt_time_by_epoch_unsafeEy, symObjAddr: 0x390, symBinAddr: 0xE8C4, symSize: 0x40 } - - { offsetInCU: 0x3E6, offset: 0x39DF4, size: 0x8, addend: 0x0, symName: __ZN2bq4util30get_local_time_by_epoch_unsafeEy, symObjAddr: 0x4D8, symBinAddr: 0xE904, symSize: 0x40 } - - { offsetInCU: 0x440, offset: 0x39E4E, size: 0x8, addend: 0x0, symName: __ZN2bq4util18log_device_consoleENS_9log_levelEPKcz, symObjAddr: 0x518, symBinAddr: 0xE944, symSize: 0x70 } - - { offsetInCU: 0x4C4, offset: 0x39ED2, size: 0x8, addend: 0x0, symName: __ZN2bq4util29log_device_console_plain_textENS_9log_levelEPKc, symObjAddr: 0x588, symBinAddr: 0xE9B4, symSize: 0x8 } - - { offsetInCU: 0x501, offset: 0x39F0F, size: 0x8, addend: 0x0, symName: __ZN2bq4util11get_hash_64EPKvm, symObjAddr: 0x5BC, symBinAddr: 0xE9BC, symSize: 0x2C } - - { offsetInCU: 0x562, offset: 0x39F70, size: 0x8, addend: 0x0, symName: __ZN2bq4util16is_little_endianEv, symObjAddr: 0x5E8, symBinAddr: 0xE9E8, symSize: 0x8 } - - { offsetInCU: 0x588, offset: 0x39F96, size: 0x8, addend: 0x0, symName: __ZN2bq4util13utf16_to_utf8EPKDsjPcj, symObjAddr: 0x640, symBinAddr: 0xE9F0, symSize: 0x1BC } - - { offsetInCU: 0x644, offset: 0x3A052, size: 0x8, addend: 0x0, symName: __ZN2bq4util13utf8_to_utf16EPKcjPDsj, symObjAddr: 0x7FC, symBinAddr: 0xEBAC, symSize: 0x170 } - - { offsetInCU: 0x64E, offset: 0x3A05C, size: 0x8, addend: 0x0, symName: __ZN2bq4util13utf16_to_utf8EPKDsjPcj.cold.1, symObjAddr: 0xBAC, symBinAddr: 0x291B4, symSize: 0x28 } - - { offsetInCU: 0x665, offset: 0x3A073, size: 0x8, addend: 0x0, symName: __ZN2bq4util13utf8_to_utf16EPKcjPDsj, symObjAddr: 0x7FC, symBinAddr: 0xEBAC, symSize: 0x170 } - - { offsetInCU: 0x72A, offset: 0x3A138, size: 0x8, addend: 0x0, symName: __ZN2bq4util13utf8_to_utf16EPKcjPDsj.cold.1, symObjAddr: 0xBD4, symBinAddr: 0x291DC, symSize: 0x28 } - - { offsetInCU: 0x5C, offset: 0x3A1CD, size: 0x8, addend: 0x0, symName: __ZN2bq3apiL19signal_stack_holderE, symObjAddr: 0x2E800, symBinAddr: 0x34978, symSize: 0x0 } - - { offsetInCU: 0x9F, offset: 0x3A210, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE10registeredE, symObjAddr: 0x2060, symBinAddr: 0x346B0, symSize: 0x0 } - - { offsetInCU: 0x130, offset: 0x3A2A1, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE18original_sigactionE, symObjAddr: 0x2068, symBinAddr: 0x346B8, symSize: 0x0 } - - { offsetInCU: 0x148, offset: 0x3A2B9, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE7handlerE, symObjAddr: 0x2078, symBinAddr: 0x346C8, symSize: 0x0 } - - { offsetInCU: 0x15C, offset: 0x3A2CD, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE10registeredE, symObjAddr: 0x2080, symBinAddr: 0x346D0, symSize: 0x0 } - - { offsetInCU: 0x1E2, offset: 0x3A353, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE18original_sigactionE, symObjAddr: 0x2088, symBinAddr: 0x346D8, symSize: 0x0 } - - { offsetInCU: 0x1FA, offset: 0x3A36B, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE7handlerE, symObjAddr: 0x2098, symBinAddr: 0x346E8, symSize: 0x0 } - - { offsetInCU: 0x20E, offset: 0x3A37F, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE10registeredE, symObjAddr: 0x20A0, symBinAddr: 0x346F0, symSize: 0x0 } - - { offsetInCU: 0x294, offset: 0x3A405, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE18original_sigactionE, symObjAddr: 0x20A8, symBinAddr: 0x346F8, symSize: 0x0 } - - { offsetInCU: 0x2AC, offset: 0x3A41D, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE7handlerE, symObjAddr: 0x20B8, symBinAddr: 0x34708, symSize: 0x0 } - - { offsetInCU: 0x2C0, offset: 0x3A431, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE10registeredE, symObjAddr: 0x20C0, symBinAddr: 0x34710, symSize: 0x0 } - - { offsetInCU: 0x346, offset: 0x3A4B7, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE18original_sigactionE, symObjAddr: 0x20C8, symBinAddr: 0x34718, symSize: 0x0 } - - { offsetInCU: 0x35E, offset: 0x3A4CF, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE7handlerE, symObjAddr: 0x20D8, symBinAddr: 0x34728, symSize: 0x0 } - - { offsetInCU: 0x372, offset: 0x3A4E3, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE10registeredE, symObjAddr: 0x20E0, symBinAddr: 0x34730, symSize: 0x0 } - - { offsetInCU: 0x3F8, offset: 0x3A569, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE18original_sigactionE, symObjAddr: 0x20E8, symBinAddr: 0x34738, symSize: 0x0 } - - { offsetInCU: 0x410, offset: 0x3A581, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE7handlerE, symObjAddr: 0x20F8, symBinAddr: 0x34748, symSize: 0x0 } - - { offsetInCU: 0x424, offset: 0x3A595, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE10registeredE, symObjAddr: 0x2100, symBinAddr: 0x34750, symSize: 0x0 } - - { offsetInCU: 0x4AA, offset: 0x3A61B, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE18original_sigactionE, symObjAddr: 0x2108, symBinAddr: 0x34758, symSize: 0x0 } - - { offsetInCU: 0x4C2, offset: 0x3A633, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE7handlerE, symObjAddr: 0x2118, symBinAddr: 0x34768, symSize: 0x0 } - - { offsetInCU: 0x4D0, offset: 0x3A641, size: 0x8, addend: 0x0, symName: __ZN2bq3apiL17log_crash_handlerEiP9__siginfoPv, symObjAddr: 0x144, symBinAddr: 0xEE8C, symSize: 0x30 } - - { offsetInCU: 0x614F, offset: 0x402C0, size: 0x8, addend: 0x0, symName: ___api_get_log_version, symObjAddr: 0x10, symBinAddr: 0xED58, symSize: 0xC } - - { offsetInCU: 0x6186, offset: 0x402F7, size: 0x8, addend: 0x0, symName: __ZN2bq3api24signal_stack_holder_typeD1Ev, symObjAddr: 0x1C, symBinAddr: 0xED64, symSize: 0x28 } - - { offsetInCU: 0x61CC, offset: 0x4033D, size: 0x8, addend: 0x0, symName: ___api_enable_auto_crash_handler, symObjAddr: 0x44, symBinAddr: 0xED8C, symSize: 0x4C } - - { offsetInCU: 0x625C, offset: 0x403CD, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x90, symBinAddr: 0xEDD8, symSize: 0xB4 } - - { offsetInCU: 0x62F3, offset: 0x40464, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x174, symBinAddr: 0xEEBC, symSize: 0xB4 } - - { offsetInCU: 0x638A, offset: 0x404FB, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x228, symBinAddr: 0xEF70, symSize: 0xB4 } - - { offsetInCU: 0x6421, offset: 0x40592, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x2DC, symBinAddr: 0xF024, symSize: 0xB4 } - - { offsetInCU: 0x64B8, offset: 0x40629, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x390, symBinAddr: 0xF0D8, symSize: 0xB4 } - - { offsetInCU: 0x654F, offset: 0x406C0, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x444, symBinAddr: 0xF18C, symSize: 0xB4 } - - { offsetInCU: 0x69D8, offset: 0x40B49, size: 0x8, addend: 0x0, symName: ___api_create_log, symObjAddr: 0x4F8, symBinAddr: 0xF240, symSize: 0x27C } - - { offsetInCU: 0x70D7, offset: 0x41248, size: 0x8, addend: 0x0, symName: ___api_log_reset_config, symObjAddr: 0x774, symBinAddr: 0xF4BC, symSize: 0x170 } - - { offsetInCU: 0x743D, offset: 0x415AE, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE9on_signalEiP9__siginfoPv, symObjAddr: 0x1630, symBinAddr: 0xFFD4, symSize: 0x74 } - - { offsetInCU: 0x7452, offset: 0x415C3, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRA1_KcEEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x18E8, symBinAddr: 0x1028C, symSize: 0x234 } - - { offsetInCU: 0x7AC4, offset: 0x41C35, size: 0x8, addend: 0x0, symName: ___api_create_log.cold.1, symObjAddr: 0x1B1C, symBinAddr: 0x29204, symSize: 0x24 } - - { offsetInCU: 0x7AD9, offset: 0x41C4A, size: 0x8, addend: 0x0, symName: ___api_create_log.cold.3, symObjAddr: 0x1B64, symBinAddr: 0x2924C, symSize: 0x24 } - - { offsetInCU: 0x7B05, offset: 0x41C76, size: 0x8, addend: 0x0, symName: ___api_create_log.cold.2, symObjAddr: 0x1B40, symBinAddr: 0x29228, symSize: 0x24 } - - { offsetInCU: 0x7B71, offset: 0x41CE2, size: 0x8, addend: 0x0, symName: ___api_create_log.cold.1, symObjAddr: 0x1B1C, symBinAddr: 0x29204, symSize: 0x24 } - - { offsetInCU: 0x7BDD, offset: 0x41D4E, size: 0x8, addend: 0x0, symName: ___api_log_reset_config, symObjAddr: 0x774, symBinAddr: 0xF4BC, symSize: 0x170 } - - { offsetInCU: 0x8010, offset: 0x42181, size: 0x8, addend: 0x0, symName: ___api_log_buffer_alloc, symObjAddr: 0x8E4, symBinAddr: 0xF62C, symSize: 0x15C } - - { offsetInCU: 0x801A, offset: 0x4218B, size: 0x8, addend: 0x0, symName: ___api_log_reset_config.cold.2, symObjAddr: 0x1BAC, symBinAddr: 0x29294, symSize: 0x24 } - - { offsetInCU: 0x8086, offset: 0x421F7, size: 0x8, addend: 0x0, symName: ___api_log_reset_config.cold.1, symObjAddr: 0x1B88, symBinAddr: 0x29270, symSize: 0x24 } - - { offsetInCU: 0x814C, offset: 0x422BD, size: 0x8, addend: 0x0, symName: ___api_log_buffer_alloc, symObjAddr: 0x8E4, symBinAddr: 0xF62C, symSize: 0x15C } - - { offsetInCU: 0x82D7, offset: 0x42448, size: 0x8, addend: 0x0, symName: ___api_log_buffer_commit, symObjAddr: 0xA40, symBinAddr: 0xF788, symSize: 0x74 } - - { offsetInCU: 0x83C9, offset: 0x4253A, size: 0x8, addend: 0x0, symName: ___api_set_appenders_enable, symObjAddr: 0xAB4, symBinAddr: 0xF7FC, symSize: 0x128 } - - { offsetInCU: 0x83D3, offset: 0x42544, size: 0x8, addend: 0x0, symName: ___api_log_buffer_commit.cold.1, symObjAddr: 0x1BD0, symBinAddr: 0x292B8, symSize: 0x28 } - - { offsetInCU: 0x8497, offset: 0x42608, size: 0x8, addend: 0x0, symName: ___api_set_appenders_enable, symObjAddr: 0xAB4, symBinAddr: 0xF7FC, symSize: 0x128 } - - { offsetInCU: 0x87ED, offset: 0x4295E, size: 0x8, addend: 0x0, symName: ___api_get_logs_count, symObjAddr: 0xBDC, symBinAddr: 0xF924, symSize: 0x14 } - - { offsetInCU: 0x87F7, offset: 0x42968, size: 0x8, addend: 0x0, symName: ___api_set_appenders_enable.cold.1, symObjAddr: 0x1BF8, symBinAddr: 0x292E0, symSize: 0x24 } - - { offsetInCU: 0x8864, offset: 0x429D5, size: 0x8, addend: 0x0, symName: ___api_get_logs_count, symObjAddr: 0xBDC, symBinAddr: 0xF924, symSize: 0x14 } - - { offsetInCU: 0x8893, offset: 0x42A04, size: 0x8, addend: 0x0, symName: ___api_get_log_id_by_index, symObjAddr: 0xBF0, symBinAddr: 0xF938, symSize: 0x30 } - - { offsetInCU: 0x8937, offset: 0x42AA8, size: 0x8, addend: 0x0, symName: ___api_get_log_name_by_id, symObjAddr: 0xC20, symBinAddr: 0xF968, symSize: 0x80 } - - { offsetInCU: 0x89EE, offset: 0x42B5F, size: 0x8, addend: 0x0, symName: ___api_get_log_categories_count, symObjAddr: 0xCA0, symBinAddr: 0xF9E8, symSize: 0x28 } - - { offsetInCU: 0x8A26, offset: 0x42B97, size: 0x8, addend: 0x0, symName: ___api_get_log_category_name_by_index, symObjAddr: 0xCC8, symBinAddr: 0xFA10, symSize: 0x94 } - - { offsetInCU: 0x8AD8, offset: 0x42C49, size: 0x8, addend: 0x0, symName: ___api_get_log_merged_log_level_bitmap_by_log_id, symObjAddr: 0xD5C, symBinAddr: 0xFAA4, symSize: 0x2C } - - { offsetInCU: 0x8B37, offset: 0x42CA8, size: 0x8, addend: 0x0, symName: ___api_get_log_category_masks_array_by_log_id, symObjAddr: 0xD88, symBinAddr: 0xFAD0, symSize: 0x54 } - - { offsetInCU: 0x8B95, offset: 0x42D06, size: 0x8, addend: 0x0, symName: ___api_get_log_print_stack_level_bitmap_by_log_id, symObjAddr: 0xDDC, symBinAddr: 0xFB24, symSize: 0x2C } - - { offsetInCU: 0x8BCD, offset: 0x42D3E, size: 0x8, addend: 0x0, symName: ___api_log_device_console, symObjAddr: 0xE08, symBinAddr: 0xFB50, symSize: 0x4 } - - { offsetInCU: 0x8C03, offset: 0x42D74, size: 0x8, addend: 0x0, symName: ___api_force_flush, symObjAddr: 0xE0C, symBinAddr: 0xFB54, symSize: 0x34 } - - { offsetInCU: 0x8C2B, offset: 0x42D9C, size: 0x8, addend: 0x0, symName: ___api_get_file_base_dir, symObjAddr: 0xE40, symBinAddr: 0xFB88, symSize: 0x28 } - - { offsetInCU: 0x8C91, offset: 0x42E02, size: 0x8, addend: 0x0, symName: ___api_log_decoder_create, symObjAddr: 0xE68, symBinAddr: 0xFBB0, symSize: 0xE0 } - - { offsetInCU: 0x8ECC, offset: 0x4303D, size: 0x8, addend: 0x0, symName: ___api_log_decoder_decode, symObjAddr: 0xF48, symBinAddr: 0xFC90, symSize: 0x60 } - - { offsetInCU: 0x8ED6, offset: 0x43047, size: 0x8, addend: 0x0, symName: ___api_log_decoder_create.cold.1, symObjAddr: 0x1C1C, symBinAddr: 0x29304, symSize: 0x24 } - - { offsetInCU: 0x8F5A, offset: 0x430CB, size: 0x8, addend: 0x0, symName: ___api_log_decoder_decode, symObjAddr: 0xF48, symBinAddr: 0xFC90, symSize: 0x60 } - - { offsetInCU: 0x9011, offset: 0x43182, size: 0x8, addend: 0x0, symName: ___api_log_decoder_destroy, symObjAddr: 0xFA8, symBinAddr: 0xFCF0, symSize: 0x24 } - - { offsetInCU: 0x9039, offset: 0x431AA, size: 0x8, addend: 0x0, symName: ___api_log_decode, symObjAddr: 0xFCC, symBinAddr: 0xFD14, symSize: 0x160 } - - { offsetInCU: 0x9473, offset: 0x435E4, size: 0x8, addend: 0x0, symName: ___register_console_callbacks, symObjAddr: 0x112C, symBinAddr: 0xFE74, symSize: 0x4 } - - { offsetInCU: 0x947D, offset: 0x435EE, size: 0x8, addend: 0x0, symName: ___api_log_decode.cold.2, symObjAddr: 0x1C64, symBinAddr: 0x2934C, symSize: 0x24 } - - { offsetInCU: 0x94EA, offset: 0x4365B, size: 0x8, addend: 0x0, symName: ___api_log_decode.cold.1, symObjAddr: 0x1C40, symBinAddr: 0x29328, symSize: 0x24 } - - { offsetInCU: 0x9557, offset: 0x436C8, size: 0x8, addend: 0x0, symName: ___register_console_callbacks, symObjAddr: 0x112C, symBinAddr: 0xFE74, symSize: 0x4 } - - { offsetInCU: 0x957E, offset: 0x436EF, size: 0x8, addend: 0x0, symName: ___unregister_console_callbacks, symObjAddr: 0x1130, symBinAddr: 0xFE78, symSize: 0x4 } - - { offsetInCU: 0x95A5, offset: 0x43716, size: 0x8, addend: 0x0, symName: ___api_enable_snapshot, symObjAddr: 0x1134, symBinAddr: 0xFE7C, symSize: 0x24 } - - { offsetInCU: 0x95E8, offset: 0x43759, size: 0x8, addend: 0x0, symName: ___api_take_snapshot_string, symObjAddr: 0x1158, symBinAddr: 0xFEA0, symSize: 0x78 } - - { offsetInCU: 0x9686, offset: 0x437F7, size: 0x8, addend: 0x0, symName: ___api_release_snapshot_string, symObjAddr: 0x11D0, symBinAddr: 0xFF18, symSize: 0x2C } - - { offsetInCU: 0x96C9, offset: 0x4383A, size: 0x8, addend: 0x0, symName: ___api_get_stack_trace, symObjAddr: 0x11FC, symBinAddr: 0xFF44, symSize: 0x48 } - - { offsetInCU: 0x9742, offset: 0x438B3, size: 0x8, addend: 0x0, symName: ___api_get_stack_trace_utf16, symObjAddr: 0x1244, symBinAddr: 0xFF8C, symSize: 0x48 } - - { offsetInCU: 0x9C20, offset: 0x43D91, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE9on_signalEiP9__siginfoPv, symObjAddr: 0x1630, symBinAddr: 0xFFD4, symSize: 0x74 } - - { offsetInCU: 0x9CD6, offset: 0x43E47, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE9on_signalEiP9__siginfoPv, symObjAddr: 0x16A4, symBinAddr: 0x10048, symSize: 0x74 } - - { offsetInCU: 0x9D7F, offset: 0x43EF0, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE9on_signalEiP9__siginfoPv, symObjAddr: 0x1718, symBinAddr: 0x100BC, symSize: 0x74 } - - { offsetInCU: 0x9E28, offset: 0x43F99, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE9on_signalEiP9__siginfoPv, symObjAddr: 0x178C, symBinAddr: 0x10130, symSize: 0x74 } - - { offsetInCU: 0x9ED1, offset: 0x44042, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE9on_signalEiP9__siginfoPv, symObjAddr: 0x1800, symBinAddr: 0x101A4, symSize: 0x74 } - - { offsetInCU: 0x9F7A, offset: 0x440EB, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE9on_signalEiP9__siginfoPv, symObjAddr: 0x1874, symBinAddr: 0x10218, symSize: 0x74 } - - { offsetInCU: 0xA068, offset: 0x441D9, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRA1_KcEEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x1D68, symBinAddr: 0x29370, symSize: 0x28 } - - { offsetInCU: 0xA07F, offset: 0x441F0, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRA1_KcEEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.3, symObjAddr: 0x1DB4, symBinAddr: 0x293BC, symSize: 0x24 } - - { offsetInCU: 0xA0AC, offset: 0x4421D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRA1_KcEEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x1D90, symBinAddr: 0x29398, symSize: 0x24 } - - { offsetInCU: 0xA0D9, offset: 0x4424A, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x1DD8, symBinAddr: 0x104C0, symSize: 0x8 } - - { offsetInCU: 0xA0F0, offset: 0x44261, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x1DE0, symBinAddr: 0x104C8, symSize: 0x8 } - - { offsetInCU: 0x33D0, offset: 0x476EC, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base23get_config_name_by_typeENS0_13appender_typeE, symObjAddr: 0x278, symBinAddr: 0x106FC, symSize: 0xF0 } - - { offsetInCU: 0x33F1, offset: 0x4770D, size: 0x8, addend: 0x0, symName: __ZZN2bq13appender_base23get_config_name_by_typeENS0_13appender_typeEE16TYPE_CONFIG_NAME, symObjAddr: 0x2CB60, symBinAddr: 0x34980, symSize: 0x0 } - - { offsetInCU: 0x3B79, offset: 0x47E95, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_baseC2Ev, symObjAddr: 0x0, symBinAddr: 0x10508, symSize: 0xBC } - - { offsetInCU: 0x3DF5, offset: 0x48111, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_baseD2Ev, symObjAddr: 0x140, symBinAddr: 0x105C4, symSize: 0x130 } - - { offsetInCU: 0x4114, offset: 0x48430, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_baseD1Ev, symObjAddr: 0x270, symBinAddr: 0x106F4, symSize: 0x4 } - - { offsetInCU: 0x413C, offset: 0x48458, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_baseD0Ev, symObjAddr: 0x274, symBinAddr: 0x106F8, symSize: 0x4 } - - { offsetInCU: 0x439C, offset: 0x486B8, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base10set_enableEb, symObjAddr: 0x3C0, symBinAddr: 0x107EC, symSize: 0x8 } - - { offsetInCU: 0x43CE, offset: 0x486EA, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base10get_enableEv, symObjAddr: 0x3C8, symBinAddr: 0x107F4, symSize: 0x8 } - - { offsetInCU: 0x480F, offset: 0x48B2B, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE, symObjAddr: 0x3D0, symBinAddr: 0x107FC, symSize: 0xAB0 } - - { offsetInCU: 0x669E, offset: 0x4A9BA, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base3logERKNS_16log_entry_handleE, symObjAddr: 0x1008, symBinAddr: 0x112AC, symSize: 0x74 } - - { offsetInCU: 0x69CF, offset: 0x4ACEB, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIhLm0EE6insertIJRhEEEvNS_21array_iterator_inlineIhS1_EEDpOT_, symObjAddr: 0x1400, symBinAddr: 0x11320, symSize: 0x128 } - - { offsetInCU: 0x69E5, offset: 0x4AD01, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIhLm0EE6insertIJRhEEEvNS_21array_iterator_inlineIhS1_EEDpOT_, symObjAddr: 0x1400, symBinAddr: 0x11320, symSize: 0x128 } - - { offsetInCU: 0x6C42, offset: 0x4AF5E, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.1, symObjAddr: 0x1528, symBinAddr: 0x293E0, symSize: 0x24 } - - { offsetInCU: 0x6C58, offset: 0x4AF74, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.9, symObjAddr: 0x1648, symBinAddr: 0x29500, symSize: 0x28 } - - { offsetInCU: 0x6C99, offset: 0x4AFB5, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.10, symObjAddr: 0x1670, symBinAddr: 0x29528, symSize: 0x24 } - - { offsetInCU: 0x6D05, offset: 0x4B021, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.1, symObjAddr: 0x1528, symBinAddr: 0x293E0, symSize: 0x24 } - - { offsetInCU: 0x6D71, offset: 0x4B08D, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.2, symObjAddr: 0x154C, symBinAddr: 0x29404, symSize: 0x24 } - - { offsetInCU: 0x6DDD, offset: 0x4B0F9, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.5, symObjAddr: 0x15B8, symBinAddr: 0x29470, symSize: 0x24 } - - { offsetInCU: 0x6E49, offset: 0x4B165, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.7, symObjAddr: 0x1600, symBinAddr: 0x294B8, symSize: 0x24 } - - { offsetInCU: 0x6EB5, offset: 0x4B1D1, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.8, symObjAddr: 0x1624, symBinAddr: 0x294DC, symSize: 0x24 } - - { offsetInCU: 0x6F21, offset: 0x4B23D, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.11, symObjAddr: 0x1694, symBinAddr: 0x2954C, symSize: 0x24 } - - { offsetInCU: 0x6F8D, offset: 0x4B2A9, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.3, symObjAddr: 0x1570, symBinAddr: 0x29428, symSize: 0x24 } - - { offsetInCU: 0x6FF9, offset: 0x4B315, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.4, symObjAddr: 0x1594, symBinAddr: 0x2944C, symSize: 0x24 } - - { offsetInCU: 0x7065, offset: 0x4B381, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.6, symObjAddr: 0x15DC, symBinAddr: 0x29494, symSize: 0x24 } - - { offsetInCU: 0x7240, offset: 0x4B55C, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base3logERKNS_16log_entry_handleE, symObjAddr: 0x1008, symBinAddr: 0x112AC, symSize: 0x74 } - - { offsetInCU: 0x7759, offset: 0x4BA75, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIhLm0EE6insertIJRhEEEvNS_21array_iterator_inlineIhS1_EEDpOT_.cold.1, symObjAddr: 0x17E4, symBinAddr: 0x29570, symSize: 0x28 } - - { offsetInCU: 0x7770, offset: 0x4BA8C, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIhLm0EE6insertIJRhEEEvNS_21array_iterator_inlineIhS1_EEDpOT_.cold.3, symObjAddr: 0x1830, symBinAddr: 0x295BC, symSize: 0x24 } - - { offsetInCU: 0x779D, offset: 0x4BAB9, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIhLm0EE6insertIJRhEEEvNS_21array_iterator_inlineIhS1_EEDpOT_.cold.2, symObjAddr: 0x180C, symBinAddr: 0x29598, symSize: 0x24 } - - { offsetInCU: 0x77CA, offset: 0x4BAE6, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x1854, symBinAddr: 0x11448, symSize: 0x8 } - - { offsetInCU: 0x77E1, offset: 0x4BAFD, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x185C, symBinAddr: 0x11450, symSize: 0x8 } - - { offsetInCU: 0x36EC, offset: 0x4F204, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE12expand_nodesEj, symObjAddr: 0x1318, symBinAddr: 0x12544, symSize: 0x1B8 } - - { offsetInCU: 0x38D2, offset: 0x4F3EA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5resetEv, symObjAddr: 0x14D0, symBinAddr: 0x126FC, symSize: 0x98 } - - { offsetInCU: 0x3EB3, offset: 0x4F9CB, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_consoleC1Ev, symObjAddr: 0x30, symBinAddr: 0x11504, symSize: 0x30 } - - { offsetInCU: 0x40C6, offset: 0x4FBDE, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console25register_console_callbackEPFvyiiPKciE, symObjAddr: 0x60, symBinAddr: 0x11534, symSize: 0x138 } - - { offsetInCU: 0x42AA, offset: 0x4FDC2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbEixERKS4_, symObjAddr: 0x28C, symBinAddr: 0x1166C, symSize: 0xDC } - - { offsetInCU: 0x456E, offset: 0x50086, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console27unregister_console_callbackEPFvyiiPKciE, symObjAddr: 0x368, symBinAddr: 0x11748, symSize: 0x2F0 } - - { offsetInCU: 0x4578, offset: 0x50090, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj, symObjAddr: 0x1170, symBinAddr: 0x1239C, symSize: 0x1A8 } - - { offsetInCU: 0x481E, offset: 0x50336, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE12expand_nodesEj, symObjAddr: 0x1318, symBinAddr: 0x12544, symSize: 0x1B8 } - - { offsetInCU: 0x4A56, offset: 0x5056E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_, symObjAddr: 0xF80, symBinAddr: 0x121AC, symSize: 0x1F0 } - - { offsetInCU: 0x4E60, offset: 0x50978, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj, symObjAddr: 0x1170, symBinAddr: 0x1239C, symSize: 0x1A8 } - - { offsetInCU: 0x4E6B, offset: 0x50983, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbEixERKS4_.cold.2, symObjAddr: 0x158C, symBinAddr: 0x29604, symSize: 0x24 } - - { offsetInCU: 0x4EC2, offset: 0x509DA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbEixERKS4_.cold.1, symObjAddr: 0x1568, symBinAddr: 0x295E0, symSize: 0x24 } - - { offsetInCU: 0x4F2E, offset: 0x50A46, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbEixERKS4_.cold.3, symObjAddr: 0x15B0, symBinAddr: 0x29628, symSize: 0x24 } - - { offsetInCU: 0x4FDF, offset: 0x50AF7, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console27unregister_console_callbackEPFvyiiPKciE, symObjAddr: 0x368, symBinAddr: 0x11748, symSize: 0x2F0 } - - { offsetInCU: 0x554D, offset: 0x51065, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5eraseENS_17hash_map_iteratorIS4_bLb0EEE, symObjAddr: 0x658, symBinAddr: 0x11A38, symSize: 0x12C } - - { offsetInCU: 0x5745, offset: 0x5125D, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console9init_implERKNS_14property_valueE, symObjAddr: 0x784, symBinAddr: 0x11B64, symSize: 0x128 } - - { offsetInCU: 0x5750, offset: 0x51268, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console27unregister_console_callbackEPFvyiiPKciE.cold.1, symObjAddr: 0x15D4, symBinAddr: 0x2964C, symSize: 0x24 } - - { offsetInCU: 0x57A7, offset: 0x512BF, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console27unregister_console_callbackEPFvyiiPKciE.cold.2, symObjAddr: 0x15F8, symBinAddr: 0x29670, symSize: 0x24 } - - { offsetInCU: 0x5863, offset: 0x5137B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5eraseENS_17hash_map_iteratorIS4_bLb0EEE.cold.3, symObjAddr: 0x1664, symBinAddr: 0x296DC, symSize: 0x24 } - - { offsetInCU: 0x5890, offset: 0x513A8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5eraseENS_17hash_map_iteratorIS4_bLb0EEE.cold.1, symObjAddr: 0x161C, symBinAddr: 0x29694, symSize: 0x24 } - - { offsetInCU: 0x58FE, offset: 0x51416, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5eraseENS_17hash_map_iteratorIS4_bLb0EEE.cold.5, symObjAddr: 0x16AC, symBinAddr: 0x29724, symSize: 0x24 } - - { offsetInCU: 0x592B, offset: 0x51443, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5eraseENS_17hash_map_iteratorIS4_bLb0EEE.cold.4, symObjAddr: 0x1688, symBinAddr: 0x29700, symSize: 0x24 } - - { offsetInCU: 0x5958, offset: 0x51470, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5eraseENS_17hash_map_iteratorIS4_bLb0EEE.cold.2, symObjAddr: 0x1640, symBinAddr: 0x296B8, symSize: 0x24 } - - { offsetInCU: 0x5C02, offset: 0x5171A, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console9init_implERKNS_14property_valueE, symObjAddr: 0x784, symBinAddr: 0x11B64, symSize: 0x128 } - - { offsetInCU: 0x61B3, offset: 0x51CCB, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console8log_implERKNS_16log_entry_handleE, symObjAddr: 0x8AC, symBinAddr: 0x11C8C, symSize: 0x440 } - - { offsetInCU: 0x6352, offset: 0x51E6A, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console9init_implERKNS_14property_valueE.cold.1, symObjAddr: 0x16D0, symBinAddr: 0x29748, symSize: 0x24 } - - { offsetInCU: 0x63BE, offset: 0x51ED6, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console9init_implERKNS_14property_valueE.cold.2, symObjAddr: 0x16F4, symBinAddr: 0x2976C, symSize: 0x24 } - - { offsetInCU: 0x65F5, offset: 0x5210D, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console8log_implERKNS_16log_entry_handleE, symObjAddr: 0x8AC, symBinAddr: 0x11C8C, symSize: 0x440 } - - { offsetInCU: 0x6E87, offset: 0x5299F, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console8log_implERKNS_16log_entry_handleE.cold.4, symObjAddr: 0x1784, symBinAddr: 0x297FC, symSize: 0x24 } - - { offsetInCU: 0x6EC9, offset: 0x529E1, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console8log_implERKNS_16log_entry_handleE.cold.3, symObjAddr: 0x1760, symBinAddr: 0x297D8, symSize: 0x24 } - - { offsetInCU: 0x6F0A, offset: 0x52A22, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console8log_implERKNS_16log_entry_handleE.cold.2, symObjAddr: 0x173C, symBinAddr: 0x297B4, symSize: 0x24 } - - { offsetInCU: 0x6F61, offset: 0x52A79, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console8log_implERKNS_16log_entry_handleE.cold.1, symObjAddr: 0x1718, symBinAddr: 0x29790, symSize: 0x24 } - - { offsetInCU: 0x6FA2, offset: 0x52ABA, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console8log_implERKNS_16log_entry_handleE.cold.5, symObjAddr: 0x17A8, symBinAddr: 0x29820, symSize: 0x28 } - - { offsetInCU: 0x7058, offset: 0x52B70, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbED1Ev, symObjAddr: 0xEA0, symBinAddr: 0x120CC, symSize: 0x24 } - - { offsetInCU: 0x70B4, offset: 0x52BCC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5resetEv, symObjAddr: 0x14D0, symBinAddr: 0x126FC, symSize: 0x98 } - - { offsetInCU: 0x7213, offset: 0x52D2B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbEixERKS4_.cold.1, symObjAddr: 0x1568, symBinAddr: 0x295E0, symSize: 0x24 } - - { offsetInCU: 0x7237, offset: 0x52D4F, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_consoleD1Ev, symObjAddr: 0xEC4, symBinAddr: 0x120F0, symSize: 0x5C } - - { offsetInCU: 0x7389, offset: 0x52EA1, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_consoleD0Ev, symObjAddr: 0xF20, symBinAddr: 0x1214C, symSize: 0x60 } - - { offsetInCU: 0x7531, offset: 0x53049, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.2, symObjAddr: 0x186C, symBinAddr: 0x29870, symSize: 0x24 } - - { offsetInCU: 0x7589, offset: 0x530A1, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.9, symObjAddr: 0x196C, symBinAddr: 0x29970, symSize: 0x24 } - - { offsetInCU: 0x75CC, offset: 0x530E4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.7, symObjAddr: 0x1920, symBinAddr: 0x29924, symSize: 0x24 } - - { offsetInCU: 0x75F9, offset: 0x53111, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.1, symObjAddr: 0x1844, symBinAddr: 0x29848, symSize: 0x28 } - - { offsetInCU: 0x7610, offset: 0x53128, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.5, symObjAddr: 0x18D8, symBinAddr: 0x298DC, symSize: 0x24 } - - { offsetInCU: 0x763D, offset: 0x53155, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.10, symObjAddr: 0x1990, symBinAddr: 0x29994, symSize: 0x24 } - - { offsetInCU: 0x7680, offset: 0x53198, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.6, symObjAddr: 0x18FC, symBinAddr: 0x29900, symSize: 0x24 } - - { offsetInCU: 0x76AD, offset: 0x531C5, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.4, symObjAddr: 0x18B4, symBinAddr: 0x298B8, symSize: 0x24 } - - { offsetInCU: 0x76DA, offset: 0x531F2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.3, symObjAddr: 0x1890, symBinAddr: 0x29894, symSize: 0x24 } - - { offsetInCU: 0x7707, offset: 0x5321F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.8, symObjAddr: 0x1944, symBinAddr: 0x29948, symSize: 0x28 } - - { offsetInCU: 0x771E, offset: 0x53236, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj.cold.7, symObjAddr: 0x1A8C, symBinAddr: 0x29A90, symSize: 0x24 } - - { offsetInCU: 0x774B, offset: 0x53263, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj.cold.6, symObjAddr: 0x1A68, symBinAddr: 0x29A6C, symSize: 0x24 } - - { offsetInCU: 0x7778, offset: 0x53290, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj.cold.5, symObjAddr: 0x1A44, symBinAddr: 0x29A48, symSize: 0x24 } - - { offsetInCU: 0x77A5, offset: 0x532BD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj.cold.4, symObjAddr: 0x1A20, symBinAddr: 0x29A24, symSize: 0x24 } - - { offsetInCU: 0x77D2, offset: 0x532EA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj.cold.3, symObjAddr: 0x19FC, symBinAddr: 0x29A00, symSize: 0x24 } - - { offsetInCU: 0x77FF, offset: 0x53317, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj.cold.2, symObjAddr: 0x19D8, symBinAddr: 0x299DC, symSize: 0x24 } - - { offsetInCU: 0x782C, offset: 0x53344, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj.cold.1, symObjAddr: 0x19B4, symBinAddr: 0x299B8, symSize: 0x24 } - - { offsetInCU: 0x786F, offset: 0x53387, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE12expand_nodesEj.cold.1, symObjAddr: 0x1AB0, symBinAddr: 0x29AB4, symSize: 0x24 } - - { offsetInCU: 0x78B1, offset: 0x533C9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE12expand_nodesEj.cold.2, symObjAddr: 0x1AD4, symBinAddr: 0x29AD8, symSize: 0x24 } - - { offsetInCU: 0x78F3, offset: 0x5340B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE12expand_nodesEj.cold.3, symObjAddr: 0x1AF8, symBinAddr: 0x29AFC, symSize: 0x24 } - - { offsetInCU: 0x7936, offset: 0x5344E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5resetEv.cold.2, symObjAddr: 0x1B40, symBinAddr: 0x29B44, symSize: 0x24 } - - { offsetInCU: 0x79A4, offset: 0x534BC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5resetEv.cold.1, symObjAddr: 0x1B1C, symBinAddr: 0x29B20, symSize: 0x24 } - - { offsetInCU: 0x79E6, offset: 0x534FE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5resetEv.cold.3, symObjAddr: 0x1B64, symBinAddr: 0x29B68, symSize: 0x24 } - - { offsetInCU: 0x7A29, offset: 0x53541, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x1B88, symBinAddr: 0x12794, symSize: 0x8 } - - { offsetInCU: 0x7A40, offset: 0x53558, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x1B90, symBinAddr: 0x1279C, symSize: 0x8 } - - { offsetInCU: 0x7A57, offset: 0x5356F, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x1B98, symBinAddr: 0x127A4, symSize: 0x8 } - - { offsetInCU: 0x26, offset: 0x535B0, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseD2Ev, symObjAddr: 0x0, symBinAddr: 0x127AC, symSize: 0x8C } - - { offsetInCU: 0x48D4, offset: 0x57E5E, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseD2Ev, symObjAddr: 0x0, symBinAddr: 0x127AC, symSize: 0x8C } - - { offsetInCU: 0x4A35, offset: 0x57FBF, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseD1Ev, symObjAddr: 0x8C, symBinAddr: 0x12838, symSize: 0x4 } - - { offsetInCU: 0x4A5D, offset: 0x57FE7, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseD0Ev, symObjAddr: 0x90, symBinAddr: 0x1283C, symSize: 0x4 } - - { offsetInCU: 0x4CE1, offset: 0x5826B, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base11flush_cacheEv, symObjAddr: 0x9C, symBinAddr: 0x12840, symSize: 0x2CC } - - { offsetInCU: 0x5310, offset: 0x5889A, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base29open_new_indexed_file_by_nameEv, symObjAddr: 0x368, symBinAddr: 0x12B0C, symSize: 0x5DC } - - { offsetInCU: 0x531A, offset: 0x588A4, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base29open_new_indexed_file_by_nameEv, symObjAddr: 0x368, symBinAddr: 0x12B0C, symSize: 0x5DC } - - { offsetInCU: 0x6562, offset: 0x59AEC, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8flush_ioEv, symObjAddr: 0x944, symBinAddr: 0x130E8, symSize: 0x1B8 } - - { offsetInCU: 0x656C, offset: 0x59AF6, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base11flush_cacheEv.cold.1, symObjAddr: 0x25A8, symBinAddr: 0x29B8C, symSize: 0x24 } - - { offsetInCU: 0x65D8, offset: 0x59B62, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base11flush_cacheEv.cold.2, symObjAddr: 0x25CC, symBinAddr: 0x29BB0, symSize: 0x24 } - - { offsetInCU: 0x6A8C, offset: 0x5A016, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23clear_all_expired_filesEv, symObjAddr: 0x18B0, symBinAddr: 0x13E64, symSize: 0x2E8 } - - { offsetInCU: 0x72FC, offset: 0x5A886, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21clear_all_limit_filesEv, symObjAddr: 0x1B98, symBinAddr: 0x1414C, symSize: 0x478 } - - { offsetInCU: 0x7306, offset: 0x5A890, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21clear_all_limit_filesEv, symObjAddr: 0x1B98, symBinAddr: 0x1414C, symSize: 0x478 } - - { offsetInCU: 0x83E5, offset: 0x5B96F, size: 0x8, addend: 0x0, symName: __ZNK2bq18appender_file_base18parse_file_context21log_parse_fail_reasonEPKc, symObjAddr: 0x210C, symBinAddr: 0x145C4, symSize: 0x4C } - - { offsetInCU: 0x8579, offset: 0x5BB03, size: 0x8, addend: 0x0, symName: '__ZZN2bq18appender_file_base21clear_all_limit_filesEvEN3$_08__invokeEPKvS3_', symObjAddr: 0x22B8, symBinAddr: 0x14610, symSize: 0x18 } - - { offsetInCU: 0x8594, offset: 0x5BB1E, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base30open_file_with_write_exclusiveERKNS_11string_baseIcEE, symObjAddr: 0x17F4, symBinAddr: 0x13DA8, symSize: 0xBC } - - { offsetInCU: 0x868D, offset: 0x5BC17, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base29open_new_indexed_file_by_nameEv.cold.5, symObjAddr: 0x2680, symBinAddr: 0x29C64, symSize: 0x24 } - - { offsetInCU: 0x86BA, offset: 0x5BC44, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base29open_new_indexed_file_by_nameEv.cold.2, symObjAddr: 0x2614, symBinAddr: 0x29BF8, symSize: 0x24 } - - { offsetInCU: 0x86E7, offset: 0x5BC71, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base29open_new_indexed_file_by_nameEv.cold.1, symObjAddr: 0x25F0, symBinAddr: 0x29BD4, symSize: 0x24 } - - { offsetInCU: 0x877E, offset: 0x5BD08, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base29open_new_indexed_file_by_nameEv.cold.4, symObjAddr: 0x265C, symBinAddr: 0x29C40, symSize: 0x24 } - - { offsetInCU: 0x87C1, offset: 0x5BD4B, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base29open_new_indexed_file_by_nameEv.cold.3, symObjAddr: 0x2638, symBinAddr: 0x29C1C, symSize: 0x24 } - - { offsetInCU: 0x8803, offset: 0x5BD8D, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8flush_ioEv, symObjAddr: 0x944, symBinAddr: 0x130E8, symSize: 0x1B8 } - - { offsetInCU: 0x8C8C, offset: 0x5C216, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE, symObjAddr: 0xAFC, symBinAddr: 0x132A0, symSize: 0x648 } - - { offsetInCU: 0x8C96, offset: 0x5C220, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8flush_ioEv.cold.1, symObjAddr: 0x26A4, symBinAddr: 0x29C88, symSize: 0x24 } - - { offsetInCU: 0x8D02, offset: 0x5C28C, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8flush_ioEv.cold.2, symObjAddr: 0x26C8, symBinAddr: 0x29CAC, symSize: 0x24 } - - { offsetInCU: 0x8E55, offset: 0x5C3DF, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE, symObjAddr: 0xAFC, symBinAddr: 0x132A0, symSize: 0x648 } - - { offsetInCU: 0xA917, offset: 0x5DEA1, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8log_implERKNS_16log_entry_handleE, symObjAddr: 0x12CC, symBinAddr: 0x138E8, symSize: 0x4 } - - { offsetInCU: 0xA94C, offset: 0x5DED6, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.12, symObjAddr: 0x2878, symBinAddr: 0x29E5C, symSize: 0x24 } - - { offsetInCU: 0xA98D, offset: 0x5DF17, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.11, symObjAddr: 0x2854, symBinAddr: 0x29E38, symSize: 0x24 } - - { offsetInCU: 0xA9CE, offset: 0x5DF58, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.16, symObjAddr: 0x2908, symBinAddr: 0x29EEC, symSize: 0x28 } - - { offsetInCU: 0xAA0F, offset: 0x5DF99, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.15, symObjAddr: 0x28E4, symBinAddr: 0x29EC8, symSize: 0x24 } - - { offsetInCU: 0xAA50, offset: 0x5DFDA, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.1, symObjAddr: 0x26EC, symBinAddr: 0x29CD0, symSize: 0x24 } - - { offsetInCU: 0xAABC, offset: 0x5E046, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.2, symObjAddr: 0x2710, symBinAddr: 0x29CF4, symSize: 0x24 } - - { offsetInCU: 0xAB28, offset: 0x5E0B2, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.4, symObjAddr: 0x2758, symBinAddr: 0x29D3C, symSize: 0x24 } - - { offsetInCU: 0xAB94, offset: 0x5E11E, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.5, symObjAddr: 0x277C, symBinAddr: 0x29D60, symSize: 0x24 } - - { offsetInCU: 0xAC00, offset: 0x5E18A, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.17, symObjAddr: 0x2930, symBinAddr: 0x29F14, symSize: 0x24 } - - { offsetInCU: 0xAC6C, offset: 0x5E1F6, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.7, symObjAddr: 0x27C4, symBinAddr: 0x29DA8, symSize: 0x24 } - - { offsetInCU: 0xACD8, offset: 0x5E262, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.9, symObjAddr: 0x280C, symBinAddr: 0x29DF0, symSize: 0x24 } - - { offsetInCU: 0xAD44, offset: 0x5E2CE, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.6, symObjAddr: 0x27A0, symBinAddr: 0x29D84, symSize: 0x24 } - - { offsetInCU: 0xADB0, offset: 0x5E33A, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.8, symObjAddr: 0x27E8, symBinAddr: 0x29DCC, symSize: 0x24 } - - { offsetInCU: 0xAE1C, offset: 0x5E3A6, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.13, symObjAddr: 0x289C, symBinAddr: 0x29E80, symSize: 0x24 } - - { offsetInCU: 0xAE88, offset: 0x5E412, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.10, symObjAddr: 0x2830, symBinAddr: 0x29E14, symSize: 0x24 } - - { offsetInCU: 0xAEF4, offset: 0x5E47E, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.3, symObjAddr: 0x2734, symBinAddr: 0x29D18, symSize: 0x24 } - - { offsetInCU: 0xAF60, offset: 0x5E4EA, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.14, symObjAddr: 0x28C0, symBinAddr: 0x29EA4, symSize: 0x24 } - - { offsetInCU: 0xB045, offset: 0x5E5CF, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8log_implERKNS_16log_entry_handleE, symObjAddr: 0x12CC, symBinAddr: 0x138E8, symSize: 0x4 } - - { offsetInCU: 0xB07E, offset: 0x5E608, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8log_implERKNS_16log_entry_handleE, symObjAddr: 0x12CC, symBinAddr: 0x138E8, symSize: 0x4 } - - { offsetInCU: 0xB097, offset: 0x5E621, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base19refresh_file_handleERKNS_16log_entry_handleE, symObjAddr: 0x12D0, symBinAddr: 0x138EC, symSize: 0x108 } - - { offsetInCU: 0xB2D9, offset: 0x5E863, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base12on_file_openEb, symObjAddr: 0x13D8, symBinAddr: 0x139F4, symSize: 0x4 } - - { offsetInCU: 0xB308, offset: 0x5E892, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23seek_read_file_absoluteEm, symObjAddr: 0x13DC, symBinAddr: 0x139F8, symSize: 0x58 } - - { offsetInCU: 0xB3EF, offset: 0x5E979, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21seek_read_file_offsetEi, symObjAddr: 0x1478, symBinAddr: 0x13A50, symSize: 0x30 } - - { offsetInCU: 0xB458, offset: 0x5E9E2, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base15read_with_cacheEm, symObjAddr: 0x14A8, symBinAddr: 0x13A80, symSize: 0x1D8 } - - { offsetInCU: 0xB462, offset: 0x5E9EC, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21seek_read_file_offsetEi.cold.1, symObjAddr: 0x299C, symBinAddr: 0x29F38, symSize: 0x28 } - - { offsetInCU: 0xB541, offset: 0x5EACB, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base15read_with_cacheEm, symObjAddr: 0x14A8, symBinAddr: 0x13A80, symSize: 0x1D8 } - - { offsetInCU: 0xBA32, offset: 0x5EFBC, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base22write_with_cache_allocEm, symObjAddr: 0x1680, symBinAddr: 0x13C58, symSize: 0xE8 } - - { offsetInCU: 0xBA3C, offset: 0x5EFC6, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base15read_with_cacheEm.cold.1, symObjAddr: 0x29C4, symBinAddr: 0x29F60, symSize: 0x28 } - - { offsetInCU: 0xBA68, offset: 0x5EFF2, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base15read_with_cacheEm.cold.3, symObjAddr: 0x2A10, symBinAddr: 0x29FAC, symSize: 0x28 } - - { offsetInCU: 0xBA94, offset: 0x5F01E, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base15read_with_cacheEm.cold.2, symObjAddr: 0x29EC, symBinAddr: 0x29F88, symSize: 0x24 } - - { offsetInCU: 0xBAD5, offset: 0x5F05F, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base22write_with_cache_allocEm, symObjAddr: 0x1680, symBinAddr: 0x13C58, symSize: 0xE8 } - - { offsetInCU: 0xBC1A, offset: 0x5F1A4, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23write_with_cache_commitERKNS0_23write_with_cache_handleE, symObjAddr: 0x1768, symBinAddr: 0x13D40, symSize: 0x60 } - - { offsetInCU: 0xBC24, offset: 0x5F1AE, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base22write_with_cache_allocEm.cold.1, symObjAddr: 0x2A38, symBinAddr: 0x29FD4, symSize: 0x24 } - - { offsetInCU: 0xBC9B, offset: 0x5F225, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23write_with_cache_commitERKNS0_23write_with_cache_handleE, symObjAddr: 0x1768, symBinAddr: 0x13D40, symSize: 0x60 } - - { offsetInCU: 0xBD3E, offset: 0x5F2C8, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21get_current_file_sizeEv, symObjAddr: 0x17C8, symBinAddr: 0x13DA0, symSize: 0x8 } - - { offsetInCU: 0xBD48, offset: 0x5F2D2, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23write_with_cache_commitERKNS0_23write_with_cache_handleE.cold.1, symObjAddr: 0x2A5C, symBinAddr: 0x29FF8, symSize: 0x28 } - - { offsetInCU: 0xBD73, offset: 0x5F2FD, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21get_current_file_sizeEv, symObjAddr: 0x17C8, symBinAddr: 0x13DA0, symSize: 0x8 } - - { offsetInCU: 0xBDE9, offset: 0x5F373, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23clear_all_expired_filesEv.cold.1, symObjAddr: 0x2A84, symBinAddr: 0x2A020, symSize: 0x24 } - - { offsetInCU: 0xC29B, offset: 0x5F825, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_, symObjAddr: 0x22D0, symBinAddr: 0x14628, symSize: 0x194 } - - { offsetInCU: 0xC9F0, offset: 0x5FF7A, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE12set_capacityEmb, symObjAddr: 0x2464, symBinAddr: 0x147BC, symSize: 0x144 } - - { offsetInCU: 0xCA21, offset: 0x5FFAB, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21clear_all_limit_filesEv.cold.2, symObjAddr: 0x2ACC, symBinAddr: 0x2A068, symSize: 0x24 } - - { offsetInCU: 0xCA63, offset: 0x5FFED, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21clear_all_limit_filesEv.cold.1, symObjAddr: 0x2AA8, symBinAddr: 0x2A044, symSize: 0x24 } - - { offsetInCU: 0xCB68, offset: 0x600F2, size: 0x8, addend: 0x0, symName: __ZNK2bq18appender_file_base18parse_file_context21log_parse_fail_reasonEPKc, symObjAddr: 0x210C, symBinAddr: 0x145C4, symSize: 0x4C } - - { offsetInCU: 0xCD28, offset: 0x602B2, size: 0x8, addend: 0x0, symName: '__ZZN2bq18appender_file_base21clear_all_limit_filesEvEN3$_08__invokeEPKvS3_', symObjAddr: 0x22B8, symBinAddr: 0x14610, symSize: 0x18 } - - { offsetInCU: 0xCD60, offset: 0x602EA, size: 0x8, addend: 0x0, symName: '__ZZN2bq18appender_file_base21clear_all_limit_filesEvEN3$_08__invokeEPKvS3_', symObjAddr: 0x22B8, symBinAddr: 0x14610, symSize: 0x18 } - - { offsetInCU: 0xD007, offset: 0x60591, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE12set_capacityEmb, symObjAddr: 0x2464, symBinAddr: 0x147BC, symSize: 0x144 } - - { offsetInCU: 0xD35D, offset: 0x608E7, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base11flush_cacheEv.cold.1, symObjAddr: 0x25A8, symBinAddr: 0x29B8C, symSize: 0x24 } - - { offsetInCU: 0xD367, offset: 0x608F1, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_.cold.1, symObjAddr: 0x2B88, symBinAddr: 0x2A08C, symSize: 0x28 } - - { offsetInCU: 0xD37E, offset: 0x60908, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_.cold.2, symObjAddr: 0x2BB0, symBinAddr: 0x2A0B4, symSize: 0x28 } - - { offsetInCU: 0xD3AB, offset: 0x60935, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE12set_capacityEmb.cold.1, symObjAddr: 0x2BD8, symBinAddr: 0x2A0DC, symSize: 0x24 } - - { offsetInCU: 0xD3C2, offset: 0x6094C, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x2BFC, symBinAddr: 0x14900, symSize: 0x8 } - - { offsetInCU: 0xD3D9, offset: 0x60963, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x2C04, symBinAddr: 0x14908, symSize: 0x8 } - - { offsetInCU: 0xD3F0, offset: 0x6097A, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x2C0C, symBinAddr: 0x14910, symSize: 0x8 } - - { offsetInCU: 0x26, offset: 0x609E6, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binary20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0x0, symBinAddr: 0x14918, symSize: 0x24C } - - { offsetInCU: 0x3306, offset: 0x63CC6, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binary20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0x0, symBinAddr: 0x14918, symSize: 0x24C } - - { offsetInCU: 0x3478, offset: 0x63E38, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binary12on_file_openEb, symObjAddr: 0x24C, symBinAddr: 0x14B64, symSize: 0x38 } - - { offsetInCU: 0x34C4, offset: 0x63E84, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binary17write_file_headerEv, symObjAddr: 0x284, symBinAddr: 0x14B9C, symSize: 0x138 } - - { offsetInCU: 0x57, offset: 0x6404D, size: 0x8, addend: 0x0, symName: __ZN2bqL28log_file_ext_name_compressedE, symObjAddr: 0x54BA8, symBinAddr: 0x34A40, symSize: 0x0 } - - { offsetInCU: 0x540B, offset: 0x69401, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed9init_implERKNS_14property_valueE, symObjAddr: 0x0, symBinAddr: 0x14CD4, symSize: 0x30 } - - { offsetInCU: 0x5494, offset: 0x6948A, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed12on_file_openEb, symObjAddr: 0x30, symBinAddr: 0x14D04, symSize: 0x38 } - - { offsetInCU: 0x54E0, offset: 0x694D6, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv, symObjAddr: 0x68, symBinAddr: 0x14D3C, symSize: 0x2A0 } - - { offsetInCU: 0x5BB0, offset: 0x69BA6, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv.cold.5, symObjAddr: 0x4544, symBinAddr: 0x2A190, symSize: 0x24 } - - { offsetInCU: 0x5C34, offset: 0x69C2A, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv.cold.2, symObjAddr: 0x44D8, symBinAddr: 0x2A124, symSize: 0x24 } - - { offsetInCU: 0x5CB8, offset: 0x69CAE, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv.cold.4, symObjAddr: 0x4520, symBinAddr: 0x2A16C, symSize: 0x24 } - - { offsetInCU: 0x5D10, offset: 0x69D06, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv.cold.1, symObjAddr: 0x44B4, symBinAddr: 0x2A100, symSize: 0x24 } - - { offsetInCU: 0x5D68, offset: 0x69D5E, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv.cold.6, symObjAddr: 0x4568, symBinAddr: 0x2A1B4, symSize: 0x24 } - - { offsetInCU: 0x5DC1, offset: 0x69DB7, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv.cold.3, symObjAddr: 0x44FC, symBinAddr: 0x2A148, symSize: 0x24 } - - { offsetInCU: 0x5F0F, offset: 0x69F05, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed17get_file_ext_nameEv, symObjAddr: 0x340, symBinAddr: 0x14FDC, symSize: 0x70 } - - { offsetInCU: 0x6015, offset: 0x6A00B, size: 0x8, addend: 0x0, symName: __ZNK2bq24appender_file_compressed25get_binary_format_versionEv, symObjAddr: 0x3B0, symBinAddr: 0x1504C, symSize: 0x8 } - - { offsetInCU: 0x61A9, offset: 0x6A19F, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv.cold.1, symObjAddr: 0x44B4, symBinAddr: 0x2A100, symSize: 0x24 } - - { offsetInCU: 0x61B3, offset: 0x6A1A9, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed17get_file_ext_nameEv.cold.1, symObjAddr: 0x458C, symBinAddr: 0x2A1D8, symSize: 0x24 } - - { offsetInCU: 0x6220, offset: 0x6A216, size: 0x8, addend: 0x0, symName: __ZNK2bq24appender_file_compressed25get_binary_format_versionEv, symObjAddr: 0x3B0, symBinAddr: 0x1504C, symSize: 0x8 } - - { offsetInCU: 0x6268, offset: 0x6A25E, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0x3B8, symBinAddr: 0x15054, symSize: 0x158 } - - { offsetInCU: 0x6512, offset: 0x6A508, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed15parse_log_entryERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE, symObjAddr: 0x1754, symBinAddr: 0x163B4, symSize: 0x3A4 } - - { offsetInCU: 0x65EE, offset: 0x6A5E4, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed14read_item_dataERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0x510, symBinAddr: 0x151AC, symSize: 0x220 } - - { offsetInCU: 0x66CA, offset: 0x6A6C0, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE, symObjAddr: 0x730, symBinAddr: 0x153CC, symSize: 0xFE8 } - - { offsetInCU: 0x8365, offset: 0x6C35B, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE18fill_uninitializedIDsEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm, symObjAddr: 0x1B1C, symBinAddr: 0x16758, symSize: 0x100 } - - { offsetInCU: 0x8451, offset: 0x6C447, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE, symObjAddr: 0x1C1C, symBinAddr: 0x16858, symSize: 0x2548 } - - { offsetInCU: 0x8464, offset: 0x6C45A, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.44, symObjAddr: 0x4BBC, symBinAddr: 0x2A808, symSize: 0x24 } - - { offsetInCU: 0x84E7, offset: 0x6C4DD, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.43, symObjAddr: 0x4B98, symBinAddr: 0x2A7E4, symSize: 0x24 } - - { offsetInCU: 0x856A, offset: 0x6C560, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.23, symObjAddr: 0x48C8, symBinAddr: 0x2A514, symSize: 0x24 } - - { offsetInCU: 0x85ED, offset: 0x6C5E3, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.22, symObjAddr: 0x48A4, symBinAddr: 0x2A4F0, symSize: 0x24 } - - { offsetInCU: 0x8670, offset: 0x6C666, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.37, symObjAddr: 0x4AC0, symBinAddr: 0x2A70C, symSize: 0x24 } - - { offsetInCU: 0x86F3, offset: 0x6C6E9, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.16, symObjAddr: 0x47CC, symBinAddr: 0x2A418, symSize: 0x24 } - - { offsetInCU: 0x8776, offset: 0x6C76C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.45, symObjAddr: 0x4BE0, symBinAddr: 0x2A82C, symSize: 0x24 } - - { offsetInCU: 0x87E3, offset: 0x6C7D9, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.24, symObjAddr: 0x48EC, symBinAddr: 0x2A538, symSize: 0x24 } - - { offsetInCU: 0x8850, offset: 0x6C846, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.42, symObjAddr: 0x4B74, symBinAddr: 0x2A7C0, symSize: 0x24 } - - { offsetInCU: 0x88D3, offset: 0x6C8C9, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.21, symObjAddr: 0x4880, symBinAddr: 0x2A4CC, symSize: 0x24 } - - { offsetInCU: 0x8956, offset: 0x6C94C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.34, symObjAddr: 0x4A54, symBinAddr: 0x2A6A0, symSize: 0x24 } - - { offsetInCU: 0x89EE, offset: 0x6C9E4, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.13, symObjAddr: 0x4760, symBinAddr: 0x2A3AC, symSize: 0x24 } - - { offsetInCU: 0x8A86, offset: 0x6CA7C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.33, symObjAddr: 0x4A30, symBinAddr: 0x2A67C, symSize: 0x24 } - - { offsetInCU: 0x8B1E, offset: 0x6CB14, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.12, symObjAddr: 0x473C, symBinAddr: 0x2A388, symSize: 0x24 } - - { offsetInCU: 0x8BB6, offset: 0x6CBAC, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.32, symObjAddr: 0x4A0C, symBinAddr: 0x2A658, symSize: 0x24 } - - { offsetInCU: 0x8C23, offset: 0x6CC19, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.2, symObjAddr: 0x45D4, symBinAddr: 0x2A220, symSize: 0x24 } - - { offsetInCU: 0x8C7A, offset: 0x6CC70, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.30, symObjAddr: 0x49C4, symBinAddr: 0x2A610, symSize: 0x24 } - - { offsetInCU: 0x8CE7, offset: 0x6CCDD, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.27, symObjAddr: 0x4958, symBinAddr: 0x2A5A4, symSize: 0x24 } - - { offsetInCU: 0x8D7F, offset: 0x6CD75, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.26, symObjAddr: 0x4934, symBinAddr: 0x2A580, symSize: 0x24 } - - { offsetInCU: 0x8DD6, offset: 0x6CDCC, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.11, symObjAddr: 0x4718, symBinAddr: 0x2A364, symSize: 0x24 } - - { offsetInCU: 0x8E43, offset: 0x6CE39, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.4, symObjAddr: 0x461C, symBinAddr: 0x2A268, symSize: 0x24 } - - { offsetInCU: 0x8E9A, offset: 0x6CE90, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.9, symObjAddr: 0x46D0, symBinAddr: 0x2A31C, symSize: 0x24 } - - { offsetInCU: 0x8F07, offset: 0x6CEFD, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.6, symObjAddr: 0x4664, symBinAddr: 0x2A2B0, symSize: 0x24 } - - { offsetInCU: 0x8F9F, offset: 0x6CF95, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.5, symObjAddr: 0x4640, symBinAddr: 0x2A28C, symSize: 0x24 } - - { offsetInCU: 0x8FF6, offset: 0x6CFEC, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.41, symObjAddr: 0x4B50, symBinAddr: 0x2A79C, symSize: 0x24 } - - { offsetInCU: 0x9079, offset: 0x6D06F, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.40, symObjAddr: 0x4B2C, symBinAddr: 0x2A778, symSize: 0x24 } - - { offsetInCU: 0x90FC, offset: 0x6D0F2, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.39, symObjAddr: 0x4B08, symBinAddr: 0x2A754, symSize: 0x24 } - - { offsetInCU: 0x917F, offset: 0x6D175, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.20, symObjAddr: 0x485C, symBinAddr: 0x2A4A8, symSize: 0x24 } - - { offsetInCU: 0x9202, offset: 0x6D1F8, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.19, symObjAddr: 0x4838, symBinAddr: 0x2A484, symSize: 0x24 } - - { offsetInCU: 0x9285, offset: 0x6D27B, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.18, symObjAddr: 0x4814, symBinAddr: 0x2A460, symSize: 0x24 } - - { offsetInCU: 0x9308, offset: 0x6D2FE, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.38, symObjAddr: 0x4AE4, symBinAddr: 0x2A730, symSize: 0x24 } - - { offsetInCU: 0x938B, offset: 0x6D381, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.17, symObjAddr: 0x47F0, symBinAddr: 0x2A43C, symSize: 0x24 } - - { offsetInCU: 0x940E, offset: 0x6D404, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.46, symObjAddr: 0x4C04, symBinAddr: 0x2A850, symSize: 0x24 } - - { offsetInCU: 0x947B, offset: 0x6D471, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.25, symObjAddr: 0x4910, symBinAddr: 0x2A55C, symSize: 0x24 } - - { offsetInCU: 0x94E8, offset: 0x6D4DE, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.31, symObjAddr: 0x49E8, symBinAddr: 0x2A634, symSize: 0x24 } - - { offsetInCU: 0x9555, offset: 0x6D54B, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.29, symObjAddr: 0x49A0, symBinAddr: 0x2A5EC, symSize: 0x24 } - - { offsetInCU: 0x95C2, offset: 0x6D5B8, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.28, symObjAddr: 0x497C, symBinAddr: 0x2A5C8, symSize: 0x24 } - - { offsetInCU: 0x962F, offset: 0x6D625, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.10, symObjAddr: 0x46F4, symBinAddr: 0x2A340, symSize: 0x24 } - - { offsetInCU: 0x969C, offset: 0x6D692, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.8, symObjAddr: 0x46AC, symBinAddr: 0x2A2F8, symSize: 0x24 } - - { offsetInCU: 0x9709, offset: 0x6D6FF, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.7, symObjAddr: 0x4688, symBinAddr: 0x2A2D4, symSize: 0x24 } - - { offsetInCU: 0x9776, offset: 0x6D76C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.1, symObjAddr: 0x45B0, symBinAddr: 0x2A1FC, symSize: 0x24 } - - { offsetInCU: 0x97F9, offset: 0x6D7EF, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.3, symObjAddr: 0x45F8, symBinAddr: 0x2A244, symSize: 0x24 } - - { offsetInCU: 0x987C, offset: 0x6D872, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.35, symObjAddr: 0x4A78, symBinAddr: 0x2A6C4, symSize: 0x24 } - - { offsetInCU: 0x9915, offset: 0x6D90B, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.14, symObjAddr: 0x4784, symBinAddr: 0x2A3D0, symSize: 0x24 } - - { offsetInCU: 0x99AE, offset: 0x6D9A4, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.36, symObjAddr: 0x4A9C, symBinAddr: 0x2A6E8, symSize: 0x24 } - - { offsetInCU: 0x9A05, offset: 0x6D9FB, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.15, symObjAddr: 0x47A8, symBinAddr: 0x2A3F4, symSize: 0x24 } - - { offsetInCU: 0x9B05, offset: 0x6DAFB, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE18fill_uninitializedIDsEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm.cold.1, symObjAddr: 0x4C28, symBinAddr: 0x2A874, symSize: 0x24 } - - { offsetInCU: 0x9D06, offset: 0x6DCFC, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE, symObjAddr: 0x1C1C, symBinAddr: 0x16858, symSize: 0x2548 } - - { offsetInCU: 0xC47B, offset: 0x70471, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD1Ev, symObjAddr: 0x4164, symBinAddr: 0x18DA0, symSize: 0x4 } - - { offsetInCU: 0xC485, offset: 0x7047B, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.35, symObjAddr: 0x5140, symBinAddr: 0x2AD8C, symSize: 0x24 } - - { offsetInCU: 0xC51D, offset: 0x70513, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.9, symObjAddr: 0x4D78, symBinAddr: 0x2A9C4, symSize: 0x24 } - - { offsetInCU: 0xC5B5, offset: 0x705AB, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.52, symObjAddr: 0x53A4, symBinAddr: 0x2AFF0, symSize: 0x24 } - - { offsetInCU: 0xC638, offset: 0x7062E, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.51, symObjAddr: 0x5380, symBinAddr: 0x2AFCC, symSize: 0x24 } - - { offsetInCU: 0xC6BB, offset: 0x706B1, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.26, symObjAddr: 0x4FDC, symBinAddr: 0x2AC28, symSize: 0x24 } - - { offsetInCU: 0xC73E, offset: 0x70734, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.25, symObjAddr: 0x4FB8, symBinAddr: 0x2AC04, symSize: 0x24 } - - { offsetInCU: 0xC7C1, offset: 0x707B7, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.45, symObjAddr: 0x52A8, symBinAddr: 0x2AEF4, symSize: 0x24 } - - { offsetInCU: 0xC844, offset: 0x7083A, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.19, symObjAddr: 0x4EE0, symBinAddr: 0x2AB2C, symSize: 0x24 } - - { offsetInCU: 0xC8C7, offset: 0x708BD, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.56, symObjAddr: 0x5434, symBinAddr: 0x2B080, symSize: 0x24 } - - { offsetInCU: 0xC91F, offset: 0x70915, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.32, symObjAddr: 0x50D4, symBinAddr: 0x2AD20, symSize: 0x24 } - - { offsetInCU: 0xC977, offset: 0x7096D, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.53, symObjAddr: 0x53C8, symBinAddr: 0x2B014, symSize: 0x24 } - - { offsetInCU: 0xC9E4, offset: 0x709DA, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.27, symObjAddr: 0x5000, symBinAddr: 0x2AC4C, symSize: 0x24 } - - { offsetInCU: 0xCA51, offset: 0x70A47, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.50, symObjAddr: 0x535C, symBinAddr: 0x2AFA8, symSize: 0x24 } - - { offsetInCU: 0xCAD4, offset: 0x70ACA, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.24, symObjAddr: 0x4F94, symBinAddr: 0x2ABE0, symSize: 0x24 } - - { offsetInCU: 0xCB57, offset: 0x70B4D, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.42, symObjAddr: 0x523C, symBinAddr: 0x2AE88, symSize: 0x24 } - - { offsetInCU: 0xCBEF, offset: 0x70BE5, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.16, symObjAddr: 0x4E74, symBinAddr: 0x2AAC0, symSize: 0x24 } - - { offsetInCU: 0xCC87, offset: 0x70C7D, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.41, symObjAddr: 0x5218, symBinAddr: 0x2AE64, symSize: 0x24 } - - { offsetInCU: 0xCD1F, offset: 0x70D15, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.15, symObjAddr: 0x4E50, symBinAddr: 0x2AA9C, symSize: 0x24 } - - { offsetInCU: 0xCDB8, offset: 0x70DAE, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.30, symObjAddr: 0x5088, symBinAddr: 0x2ACD4, symSize: 0x28 } - - { offsetInCU: 0xCDCE, offset: 0x70DC4, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.40, symObjAddr: 0x51F4, symBinAddr: 0x2AE40, symSize: 0x24 } - - { offsetInCU: 0xCE3B, offset: 0x70E31, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.3, symObjAddr: 0x4C98, symBinAddr: 0x2A8E4, symSize: 0x24 } - - { offsetInCU: 0xCE92, offset: 0x70E88, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.38, symObjAddr: 0x51AC, symBinAddr: 0x2ADF8, symSize: 0x24 } - - { offsetInCU: 0xCEFF, offset: 0x70EF5, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.34, symObjAddr: 0x511C, symBinAddr: 0x2AD68, symSize: 0x24 } - - { offsetInCU: 0xCF56, offset: 0x70F4C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.14, symObjAddr: 0x4E2C, symBinAddr: 0x2AA78, symSize: 0x24 } - - { offsetInCU: 0xCFC3, offset: 0x70FB9, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.5, symObjAddr: 0x4CE0, symBinAddr: 0x2A92C, symSize: 0x24 } - - { offsetInCU: 0xD01A, offset: 0x71010, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.12, symObjAddr: 0x4DE4, symBinAddr: 0x2AA30, symSize: 0x24 } - - { offsetInCU: 0xD087, offset: 0x7107D, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.8, symObjAddr: 0x4D54, symBinAddr: 0x2A9A0, symSize: 0x24 } - - { offsetInCU: 0xD0DE, offset: 0x710D4, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.49, symObjAddr: 0x5338, symBinAddr: 0x2AF84, symSize: 0x24 } - - { offsetInCU: 0xD161, offset: 0x71157, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.48, symObjAddr: 0x5314, symBinAddr: 0x2AF60, symSize: 0x24 } - - { offsetInCU: 0xD1E4, offset: 0x711DA, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.47, symObjAddr: 0x52F0, symBinAddr: 0x2AF3C, symSize: 0x24 } - - { offsetInCU: 0xD267, offset: 0x7125D, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.23, symObjAddr: 0x4F70, symBinAddr: 0x2ABBC, symSize: 0x24 } - - { offsetInCU: 0xD2EA, offset: 0x712E0, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.22, symObjAddr: 0x4F4C, symBinAddr: 0x2AB98, symSize: 0x24 } - - { offsetInCU: 0xD36D, offset: 0x71363, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.21, symObjAddr: 0x4F28, symBinAddr: 0x2AB74, symSize: 0x24 } - - { offsetInCU: 0xD3F0, offset: 0x713E6, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.46, symObjAddr: 0x52CC, symBinAddr: 0x2AF18, symSize: 0x24 } - - { offsetInCU: 0xD473, offset: 0x71469, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.20, symObjAddr: 0x4F04, symBinAddr: 0x2AB50, symSize: 0x24 } - - { offsetInCU: 0xD4F6, offset: 0x714EC, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.57, symObjAddr: 0x5458, symBinAddr: 0x2B0A4, symSize: 0x24 } - - { offsetInCU: 0xD54E, offset: 0x71544, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.33, symObjAddr: 0x50F8, symBinAddr: 0x2AD44, symSize: 0x24 } - - { offsetInCU: 0xD5A6, offset: 0x7159C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.54, symObjAddr: 0x53EC, symBinAddr: 0x2B038, symSize: 0x24 } - - { offsetInCU: 0xD613, offset: 0x71609, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.28, symObjAddr: 0x5024, symBinAddr: 0x2AC70, symSize: 0x24 } - - { offsetInCU: 0xD680, offset: 0x71676, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.39, symObjAddr: 0x51D0, symBinAddr: 0x2AE1C, symSize: 0x24 } - - { offsetInCU: 0xD6ED, offset: 0x716E3, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.37, symObjAddr: 0x5188, symBinAddr: 0x2ADD4, symSize: 0x24 } - - { offsetInCU: 0xD75A, offset: 0x71750, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.36, symObjAddr: 0x5164, symBinAddr: 0x2ADB0, symSize: 0x24 } - - { offsetInCU: 0xD7C7, offset: 0x717BD, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.13, symObjAddr: 0x4E08, symBinAddr: 0x2AA54, symSize: 0x24 } - - { offsetInCU: 0xD834, offset: 0x7182A, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.11, symObjAddr: 0x4DC0, symBinAddr: 0x2AA0C, symSize: 0x24 } - - { offsetInCU: 0xD8A1, offset: 0x71897, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.10, symObjAddr: 0x4D9C, symBinAddr: 0x2A9E8, symSize: 0x24 } - - { offsetInCU: 0xD90E, offset: 0x71904, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.2, symObjAddr: 0x4C74, symBinAddr: 0x2A8C0, symSize: 0x24 } - - { offsetInCU: 0xD991, offset: 0x71987, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.4, symObjAddr: 0x4CBC, symBinAddr: 0x2A908, symSize: 0x24 } - - { offsetInCU: 0xDA15, offset: 0x71A0B, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.7, symObjAddr: 0x4D2C, symBinAddr: 0x2A978, symSize: 0x28 } - - { offsetInCU: 0xDA2B, offset: 0x71A21, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.43, symObjAddr: 0x5260, symBinAddr: 0x2AEAC, symSize: 0x24 } - - { offsetInCU: 0xDAC4, offset: 0x71ABA, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.17, symObjAddr: 0x4E98, symBinAddr: 0x2AAE4, symSize: 0x24 } - - { offsetInCU: 0xDB5D, offset: 0x71B53, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.55, symObjAddr: 0x5410, symBinAddr: 0x2B05C, symSize: 0x24 } - - { offsetInCU: 0xDB9F, offset: 0x71B95, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.31, symObjAddr: 0x50B0, symBinAddr: 0x2ACFC, symSize: 0x24 } - - { offsetInCU: 0xDBE1, offset: 0x71BD7, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.44, symObjAddr: 0x5284, symBinAddr: 0x2AED0, symSize: 0x24 } - - { offsetInCU: 0xDC38, offset: 0x71C2E, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.18, symObjAddr: 0x4EBC, symBinAddr: 0x2AB08, symSize: 0x24 } - - { offsetInCU: 0xDC8F, offset: 0x71C85, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.29, symObjAddr: 0x5048, symBinAddr: 0x2AC94, symSize: 0x40 } - - { offsetInCU: 0xDCEE, offset: 0x71CE4, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.1, symObjAddr: 0x4C4C, symBinAddr: 0x2A898, symSize: 0x28 } - - { offsetInCU: 0xDD05, offset: 0x71CFB, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.6, symObjAddr: 0x4D04, symBinAddr: 0x2A950, symSize: 0x28 } - - { offsetInCU: 0xDD1C, offset: 0x71D12, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD1Ev, symObjAddr: 0x4164, symBinAddr: 0x18DA0, symSize: 0x4 } - - { offsetInCU: 0xDD3E, offset: 0x71D34, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD1Ev, symObjAddr: 0x4164, symBinAddr: 0x18DA0, symSize: 0x4 } - - { offsetInCU: 0xDD52, offset: 0x71D48, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD2Ev, symObjAddr: 0x4184, symBinAddr: 0x18DC0, symSize: 0x1D0 } - - { offsetInCU: 0xE16D, offset: 0x72163, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD0Ev, symObjAddr: 0x4168, symBinAddr: 0x18DA4, symSize: 0x14 } - - { offsetInCU: 0xE1C8, offset: 0x721BE, size: 0x8, addend: 0x0, symName: __ZNK2bq24appender_file_compressed19get_appender_formatEv, symObjAddr: 0x417C, symBinAddr: 0x18DB8, symSize: 0x8 } - - { offsetInCU: 0xE2B8, offset: 0x722AE, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD2Ev.cold.5, symObjAddr: 0x550C, symBinAddr: 0x2B158, symSize: 0x24 } - - { offsetInCU: 0xE365, offset: 0x7235B, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD2Ev.cold.2, symObjAddr: 0x54A0, symBinAddr: 0x2B0EC, symSize: 0x24 } - - { offsetInCU: 0xE412, offset: 0x72408, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD2Ev.cold.4, symObjAddr: 0x54E8, symBinAddr: 0x2B134, symSize: 0x24 } - - { offsetInCU: 0xE493, offset: 0x72489, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD2Ev.cold.1, symObjAddr: 0x547C, symBinAddr: 0x2B0C8, symSize: 0x24 } - - { offsetInCU: 0xE514, offset: 0x7250A, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD2Ev.cold.6, symObjAddr: 0x5530, symBinAddr: 0x2B17C, symSize: 0x24 } - - { offsetInCU: 0xE596, offset: 0x7258C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD2Ev.cold.3, symObjAddr: 0x54C4, symBinAddr: 0x2B110, symSize: 0x24 } - - { offsetInCU: 0xE766, offset: 0x7275C, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x55C8, symBinAddr: 0x18F90, symSize: 0x8 } - - { offsetInCU: 0xE77D, offset: 0x72773, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x55D0, symBinAddr: 0x18F98, symSize: 0x8 } - - { offsetInCU: 0xE794, offset: 0x7278A, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x55D8, symBinAddr: 0x18FA0, symSize: 0x8 } - - { offsetInCU: 0xE7AB, offset: 0x727A1, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_3, symObjAddr: 0x55E0, symBinAddr: 0x18FA8, symSize: 0x8 } - - { offsetInCU: 0xE7C2, offset: 0x727B8, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_4, symObjAddr: 0x55E8, symBinAddr: 0x18FB0, symSize: 0x8 } - - { offsetInCU: 0x57, offset: 0x72834, size: 0x8, addend: 0x0, symName: __ZN2bqL21log_file_ext_name_rawE, symObjAddr: 0x12608, symBinAddr: 0x34A58, symSize: 0x0 } - - { offsetInCU: 0x2C79, offset: 0x75456, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_raw8log_implERKNS_16log_entry_handleE, symObjAddr: 0x0, symBinAddr: 0x1902C, symSize: 0x68 } - - { offsetInCU: 0x2E23, offset: 0x75600, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_raw17get_file_ext_nameEv, symObjAddr: 0xA0, symBinAddr: 0x19094, symSize: 0x70 } - - { offsetInCU: 0x2F29, offset: 0x75706, size: 0x8, addend: 0x0, symName: __ZNK2bq17appender_file_raw25get_binary_format_versionEv, symObjAddr: 0x110, symBinAddr: 0x19104, symSize: 0x8 } - - { offsetInCU: 0x30BD, offset: 0x7589A, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_raw17get_file_ext_nameEv.cold.1, symObjAddr: 0x298, symBinAddr: 0x2B1C8, symSize: 0x28 } - - { offsetInCU: 0x30C7, offset: 0x758A4, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_raw17get_file_ext_nameEv.cold.1, symObjAddr: 0x298, symBinAddr: 0x2B1C8, symSize: 0x28 } - - { offsetInCU: 0x3133, offset: 0x75910, size: 0x8, addend: 0x0, symName: __ZNK2bq17appender_file_raw25get_binary_format_versionEv, symObjAddr: 0x110, symBinAddr: 0x19104, symSize: 0x8 } - - { offsetInCU: 0x3195, offset: 0x75972, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawD1Ev, symObjAddr: 0x118, symBinAddr: 0x1910C, symSize: 0x4 } - - { offsetInCU: 0x31B8, offset: 0x75995, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawD1Ev, symObjAddr: 0x118, symBinAddr: 0x1910C, symSize: 0x4 } - - { offsetInCU: 0x31D3, offset: 0x759B0, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawD1Ev, symObjAddr: 0x118, symBinAddr: 0x1910C, symSize: 0x4 } - - { offsetInCU: 0x3207, offset: 0x759E4, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawD0Ev, symObjAddr: 0x11C, symBinAddr: 0x19110, symSize: 0x14 } - - { offsetInCU: 0x3285, offset: 0x75A62, size: 0x8, addend: 0x0, symName: __ZNK2bq17appender_file_raw19get_appender_formatEv, symObjAddr: 0x130, symBinAddr: 0x19124, symSize: 0x8 } - - { offsetInCU: 0x57, offset: 0x75C3B, size: 0x8, addend: 0x0, symName: __ZN2bqL22log_file_ext_name_textE, symObjAddr: 0x1A930, symBinAddr: 0x34A70, symSize: 0x0 } - - { offsetInCU: 0x342A, offset: 0x7900E, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text8log_implERKNS_16log_entry_handleE, symObjAddr: 0x0, symBinAddr: 0x191A4, symSize: 0xCC } - - { offsetInCU: 0x3570, offset: 0x79154, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0xCC, symBinAddr: 0x19270, symSize: 0x8 } - - { offsetInCU: 0x359F, offset: 0x79183, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text12on_file_openEb, symObjAddr: 0xD4, symBinAddr: 0x19278, symSize: 0x4 } - - { offsetInCU: 0x36CE, offset: 0x792B2, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text17get_file_ext_nameEv, symObjAddr: 0x110, symBinAddr: 0x1927C, symSize: 0x70 } - - { offsetInCU: 0x37D4, offset: 0x793B8, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textD1Ev, symObjAddr: 0x180, symBinAddr: 0x192EC, symSize: 0x4 } - - { offsetInCU: 0x3968, offset: 0x7954C, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text17get_file_ext_nameEv.cold.1, symObjAddr: 0x2F8, symBinAddr: 0x2B218, symSize: 0x28 } - - { offsetInCU: 0x3972, offset: 0x79556, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text17get_file_ext_nameEv.cold.1, symObjAddr: 0x2F8, symBinAddr: 0x2B218, symSize: 0x28 } - - { offsetInCU: 0x39FD, offset: 0x795E1, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textD1Ev, symObjAddr: 0x180, symBinAddr: 0x192EC, symSize: 0x4 } - - { offsetInCU: 0x3A20, offset: 0x79604, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textD1Ev, symObjAddr: 0x180, symBinAddr: 0x192EC, symSize: 0x4 } - - { offsetInCU: 0x3A53, offset: 0x79637, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textD0Ev, symObjAddr: 0x184, symBinAddr: 0x192F0, symSize: 0x14 } - - { offsetInCU: 0x26, offset: 0x79816, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base4initERKNS_11file_handleE, symObjAddr: 0x0, symBinAddr: 0x19370, symSize: 0x308 } - - { offsetInCU: 0x251B, offset: 0x7BD0B, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base4initERKNS_11file_handleE, symObjAddr: 0x0, symBinAddr: 0x19370, symSize: 0x308 } - - { offsetInCU: 0x28FE, offset: 0x7C0EE, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base15read_with_cacheEm, symObjAddr: 0x368, symBinAddr: 0x19678, symSize: 0x1E0 } - - { offsetInCU: 0x2DEE, offset: 0x7C5DE, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base6decodeEv, symObjAddr: 0x548, symBinAddr: 0x19858, symSize: 0xC } - - { offsetInCU: 0x311F, offset: 0x7C90F, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base4initERKNS_11file_handleE.cold.1, symObjAddr: 0x9CC, symBinAddr: 0x2B268, symSize: 0x24 } - - { offsetInCU: 0x3134, offset: 0x7C924, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base4initERKNS_11file_handleE.cold.1, symObjAddr: 0x9CC, symBinAddr: 0x2B268, symSize: 0x24 } - - { offsetInCU: 0x32BF, offset: 0x7CAAF, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base15read_with_cacheEm.cold.1, symObjAddr: 0x9F0, symBinAddr: 0x2B28C, symSize: 0x28 } - - { offsetInCU: 0x32EB, offset: 0x7CADB, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base15read_with_cacheEm.cold.3, symObjAddr: 0xA3C, symBinAddr: 0x2B2D8, symSize: 0x28 } - - { offsetInCU: 0x3317, offset: 0x7CB07, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base15read_with_cacheEm.cold.2, symObjAddr: 0xA18, symBinAddr: 0x2B2B4, symSize: 0x24 } - - { offsetInCU: 0x3359, offset: 0x7CB49, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base6decodeEv, symObjAddr: 0x548, symBinAddr: 0x19858, symSize: 0xC } - - { offsetInCU: 0x3394, offset: 0x7CB84, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base21seek_read_file_offsetEi, symObjAddr: 0x598, symBinAddr: 0x19864, symSize: 0x88 } - - { offsetInCU: 0x3547, offset: 0x7CD37, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base29do_decode_by_log_entry_handleERKNS_16log_entry_handleE, symObjAddr: 0x628, symBinAddr: 0x198EC, symSize: 0x178 } - - { offsetInCU: 0x370A, offset: 0x7CEFA, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base29do_decode_by_log_entry_handleERKNS_16log_entry_handleE.cold.1, symObjAddr: 0xA64, symBinAddr: 0x2B300, symSize: 0x24 } - - { offsetInCU: 0x398C, offset: 0x7D17C, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0xAFC, symBinAddr: 0x19A64, symSize: 0x8 } - - { offsetInCU: 0x26, offset: 0x7D1BD, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed12init_privateEv, symObjAddr: 0x0, symBinAddr: 0x19A6C, symSize: 0x78 } - - { offsetInCU: 0x34DA, offset: 0x80671, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12expand_nodesEj, symObjAddr: 0x2B74, symBinAddr: 0x1C478, symSize: 0x240 } - - { offsetInCU: 0x3933, offset: 0x80ACA, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed26parse_thread_info_templateERKNS_21appender_decoder_base22read_with_cache_handleE.cold.1, symObjAddr: 0x2DB4, symBinAddr: 0x2B32C, symSize: 0x24 } - - { offsetInCU: 0x4007, offset: 0x8119E, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed12init_privateEv, symObjAddr: 0x0, symBinAddr: 0x19A6C, symSize: 0x78 } - - { offsetInCU: 0x41CC, offset: 0x81363, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed14decode_privateEv, symObjAddr: 0x78, symBinAddr: 0x19AE4, symSize: 0x11C } - - { offsetInCU: 0x4338, offset: 0x814CF, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed14read_item_dataEv, symObjAddr: 0x194, symBinAddr: 0x19C00, symSize: 0x20C } - - { offsetInCU: 0x43F9, offset: 0x81590, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed26parse_thread_info_templateERKNS_21appender_decoder_base22read_with_cache_handleE, symObjAddr: 0x5C0, symBinAddr: 0x1A02C, symSize: 0x680 } - - { offsetInCU: 0x46C1, offset: 0x81858, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed15parse_log_entryERKNS_21appender_decoder_base22read_with_cache_handleE, symObjAddr: 0xC40, symBinAddr: 0x1A6AC, symSize: 0x111C } - - { offsetInCU: 0x46CB, offset: 0x81862, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed22parse_formate_templateERKNS_21appender_decoder_base22read_with_cache_handleE, symObjAddr: 0x3A0, symBinAddr: 0x19E0C, symSize: 0x220 } - - { offsetInCU: 0x49CE, offset: 0x81B65, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed15parse_log_entryERKNS_21appender_decoder_base22read_with_cache_handleE, symObjAddr: 0xC40, symBinAddr: 0x1A6AC, symSize: 0x111C } - - { offsetInCU: 0x5642, offset: 0x827D9, size: 0x8, addend: 0x0, symName: __ZNK2bq27appender_decoder_compressed25get_binary_format_versionEv, symObjAddr: 0x1D5C, symBinAddr: 0x1B7C8, symSize: 0x8 } - - { offsetInCU: 0x57F9, offset: 0x82990, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x2540, symBinAddr: 0x1BE44, symSize: 0x27C } - - { offsetInCU: 0x6000, offset: 0x83197, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy, symObjAddr: 0x27BC, symBinAddr: 0x1C0C0, symSize: 0x20C } - - { offsetInCU: 0x61CD, offset: 0x83364, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEixERKy, symObjAddr: 0x1EC4, symBinAddr: 0x1B7D0, symSize: 0x110 } - - { offsetInCU: 0x62FB, offset: 0x83492, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEixERKy, symObjAddr: 0x1EC4, symBinAddr: 0x1B7D0, symSize: 0x110 } - - { offsetInCU: 0x66E1, offset: 0x83878, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE4findERKy, symObjAddr: 0x1FD4, symBinAddr: 0x1B8E0, symSize: 0x9C } - - { offsetInCU: 0x66EC, offset: 0x83883, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed26parse_thread_info_templateERKNS_21appender_decoder_base22read_with_cache_handleE.cold.1, symObjAddr: 0x2DB4, symBinAddr: 0x2B32C, symSize: 0x24 } - - { offsetInCU: 0x6A07, offset: 0x83B9E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE4findERKy, symObjAddr: 0x1FD4, symBinAddr: 0x1B8E0, symSize: 0x9C } - - { offsetInCU: 0x6BB4, offset: 0x83D4B, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE18fill_uninitializedIhEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm, symObjAddr: 0x2070, symBinAddr: 0x1B97C, symSize: 0xC4 } - - { offsetInCU: 0x6BBF, offset: 0x83D56, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE18fill_uninitializedIhEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm, symObjAddr: 0x2070, symBinAddr: 0x1B97C, symSize: 0xC4 } - - { offsetInCU: 0x6CA6, offset: 0x83E3D, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressedD1Ev, symObjAddr: 0x2134, symBinAddr: 0x1BA40, symSize: 0xB0 } - - { offsetInCU: 0x6CB1, offset: 0x83E48, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed15parse_log_entryERKNS_21appender_decoder_base22read_with_cache_handleE.cold.1, symObjAddr: 0x2DD8, symBinAddr: 0x2B350, symSize: 0x28 } - - { offsetInCU: 0x6CC8, offset: 0x83E5F, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed15parse_log_entryERKNS_21appender_decoder_base22read_with_cache_handleE.cold.4, symObjAddr: 0x2E48, symBinAddr: 0x2B3C0, symSize: 0x24 } - - { offsetInCU: 0x6D0A, offset: 0x83EA1, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed15parse_log_entryERKNS_21appender_decoder_base22read_with_cache_handleE.cold.3, symObjAddr: 0x2E24, symBinAddr: 0x2B39C, symSize: 0x24 } - - { offsetInCU: 0x6D4C, offset: 0x83EE3, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed15parse_log_entryERKNS_21appender_decoder_base22read_with_cache_handleE.cold.2, symObjAddr: 0x2E00, symBinAddr: 0x2B378, symSize: 0x24 } - - { offsetInCU: 0x6D8E, offset: 0x83F25, size: 0x8, addend: 0x0, symName: __ZNK2bq27appender_decoder_compressed25get_binary_format_versionEv, symObjAddr: 0x1D5C, symBinAddr: 0x1B7C8, symSize: 0x8 } - - { offsetInCU: 0x70D0, offset: 0x84267, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy, symObjAddr: 0x27BC, symBinAddr: 0x1C0C0, symSize: 0x20C } - - { offsetInCU: 0x7512, offset: 0x846A9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj, symObjAddr: 0x29C8, symBinAddr: 0x1C2CC, symSize: 0x1AC } - - { offsetInCU: 0x751D, offset: 0x846B4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEixERKy.cold.3, symObjAddr: 0x2F28, symBinAddr: 0x2B42C, symSize: 0x24 } - - { offsetInCU: 0x7574, offset: 0x8470B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEixERKy.cold.2, symObjAddr: 0x2F04, symBinAddr: 0x2B408, symSize: 0x24 } - - { offsetInCU: 0x75E0, offset: 0x84777, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEixERKy.cold.1, symObjAddr: 0x2EE0, symBinAddr: 0x2B3E4, symSize: 0x24 } - - { offsetInCU: 0x7621, offset: 0x847B8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEixERKy.cold.4, symObjAddr: 0x2F4C, symBinAddr: 0x2B450, symSize: 0x24 } - - { offsetInCU: 0x7678, offset: 0x8480F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE4findERKy.cold.1, symObjAddr: 0x2F70, symBinAddr: 0x2B474, symSize: 0x24 } - - { offsetInCU: 0x76BA, offset: 0x84851, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE4findERKy.cold.2, symObjAddr: 0x2F94, symBinAddr: 0x2B498, symSize: 0x24 } - - { offsetInCU: 0x76FC, offset: 0x84893, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE18fill_uninitializedIhEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm.cold.1, symObjAddr: 0x2FB8, symBinAddr: 0x2B4BC, symSize: 0x24 } - - { offsetInCU: 0x7824, offset: 0x849BB, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressedD1Ev, symObjAddr: 0x2134, symBinAddr: 0x1BA40, symSize: 0xB0 } - - { offsetInCU: 0x7A61, offset: 0x84BF8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE5resetEv, symObjAddr: 0x237C, symBinAddr: 0x1BC88, symSize: 0xE4 } - - { offsetInCU: 0x7CD6, offset: 0x84E6D, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_baseD1Ev, symObjAddr: 0x2460, symBinAddr: 0x2B324, symSize: 0x4 } - - { offsetInCU: 0x7CE1, offset: 0x84E78, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_baseD2Ev, symObjAddr: 0x2298, symBinAddr: 0x1BBA4, symSize: 0xE4 } - - { offsetInCU: 0x7FF8, offset: 0x8518F, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressedD0Ev, symObjAddr: 0x21E4, symBinAddr: 0x1BAF0, symSize: 0xB4 } - - { offsetInCU: 0x83E0, offset: 0x85577, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE5resetEv, symObjAddr: 0x2468, symBinAddr: 0x1BD6C, symSize: 0xD8 } - - { offsetInCU: 0x8658, offset: 0x857EF, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x2540, symBinAddr: 0x1BE44, symSize: 0x27C } - - { offsetInCU: 0x8775, offset: 0x8590C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE5resetEv.cold.1, symObjAddr: 0x2FDC, symBinAddr: 0x2B4E0, symSize: 0x24 } - - { offsetInCU: 0x87B7, offset: 0x8594E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE5resetEv.cold.3, symObjAddr: 0x3024, symBinAddr: 0x2B528, symSize: 0x24 } - - { offsetInCU: 0x8825, offset: 0x859BC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE5resetEv.cold.2, symObjAddr: 0x3000, symBinAddr: 0x2B504, symSize: 0x24 } - - { offsetInCU: 0x887D, offset: 0x85A14, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE5resetEv.cold.4, symObjAddr: 0x3048, symBinAddr: 0x2B54C, symSize: 0x24 } - - { offsetInCU: 0x88C0, offset: 0x85A57, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_baseD1Ev, symObjAddr: 0x2460, symBinAddr: 0x2B324, symSize: 0x4 } - - { offsetInCU: 0x88E9, offset: 0x85A80, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_baseD0Ev, symObjAddr: 0x2464, symBinAddr: 0x2B328, symSize: 0x4 } - - { offsetInCU: 0x8A41, offset: 0x85BD8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE5resetEv.cold.1, symObjAddr: 0x306C, symBinAddr: 0x2B570, symSize: 0x24 } - - { offsetInCU: 0x8A83, offset: 0x85C1A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE5resetEv.cold.3, symObjAddr: 0x30B4, symBinAddr: 0x2B5B8, symSize: 0x24 } - - { offsetInCU: 0x8AF1, offset: 0x85C88, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE5resetEv.cold.2, symObjAddr: 0x3090, symBinAddr: 0x2B594, symSize: 0x24 } - - { offsetInCU: 0x8B49, offset: 0x85CE0, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE5resetEv.cold.4, symObjAddr: 0x30D8, symBinAddr: 0x2B5DC, symSize: 0x24 } - - { offsetInCU: 0x8DCF, offset: 0x85F66, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x30FC, symBinAddr: 0x2B600, symSize: 0x28 } - - { offsetInCU: 0x8DE6, offset: 0x85F7D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.3, symObjAddr: 0x3148, symBinAddr: 0x2B64C, symSize: 0x28 } - - { offsetInCU: 0x8E13, offset: 0x85FAA, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x3124, symBinAddr: 0x2B628, symSize: 0x24 } - - { offsetInCU: 0x8EC5, offset: 0x8605C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj, symObjAddr: 0x29C8, symBinAddr: 0x1C2CC, symSize: 0x1AC } - - { offsetInCU: 0x91A7, offset: 0x8633E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12expand_nodesEj, symObjAddr: 0x2B74, symBinAddr: 0x1C478, symSize: 0x240 } - - { offsetInCU: 0x91B2, offset: 0x86349, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.2, symObjAddr: 0x3198, symBinAddr: 0x2B69C, symSize: 0x24 } - - { offsetInCU: 0x920A, offset: 0x863A1, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.9, symObjAddr: 0x3298, symBinAddr: 0x2B79C, symSize: 0x24 } - - { offsetInCU: 0x924D, offset: 0x863E4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.7, symObjAddr: 0x324C, symBinAddr: 0x2B750, symSize: 0x24 } - - { offsetInCU: 0x927A, offset: 0x86411, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.1, symObjAddr: 0x3170, symBinAddr: 0x2B674, symSize: 0x28 } - - { offsetInCU: 0x9291, offset: 0x86428, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.5, symObjAddr: 0x3204, symBinAddr: 0x2B708, symSize: 0x24 } - - { offsetInCU: 0x92BE, offset: 0x86455, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.10, symObjAddr: 0x32BC, symBinAddr: 0x2B7C0, symSize: 0x24 } - - { offsetInCU: 0x9301, offset: 0x86498, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.6, symObjAddr: 0x3228, symBinAddr: 0x2B72C, symSize: 0x24 } - - { offsetInCU: 0x932E, offset: 0x864C5, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.4, symObjAddr: 0x31E0, symBinAddr: 0x2B6E4, symSize: 0x24 } - - { offsetInCU: 0x935B, offset: 0x864F2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.3, symObjAddr: 0x31BC, symBinAddr: 0x2B6C0, symSize: 0x24 } - - { offsetInCU: 0x9388, offset: 0x8651F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.8, symObjAddr: 0x3270, symBinAddr: 0x2B774, symSize: 0x28 } - - { offsetInCU: 0x939F, offset: 0x86536, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj.cold.7, symObjAddr: 0x33B8, symBinAddr: 0x2B8BC, symSize: 0x24 } - - { offsetInCU: 0x93CC, offset: 0x86563, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj.cold.6, symObjAddr: 0x3394, symBinAddr: 0x2B898, symSize: 0x24 } - - { offsetInCU: 0x93F9, offset: 0x86590, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj.cold.5, symObjAddr: 0x3370, symBinAddr: 0x2B874, symSize: 0x24 } - - { offsetInCU: 0x9426, offset: 0x865BD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj.cold.4, symObjAddr: 0x334C, symBinAddr: 0x2B850, symSize: 0x24 } - - { offsetInCU: 0x9453, offset: 0x865EA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj.cold.3, symObjAddr: 0x3328, symBinAddr: 0x2B82C, symSize: 0x24 } - - { offsetInCU: 0x9480, offset: 0x86617, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj.cold.2, symObjAddr: 0x3304, symBinAddr: 0x2B808, symSize: 0x24 } - - { offsetInCU: 0x94AD, offset: 0x86644, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj.cold.1, symObjAddr: 0x32E0, symBinAddr: 0x2B7E4, symSize: 0x24 } - - { offsetInCU: 0x9533, offset: 0x866CA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12expand_nodesEj.cold.1, symObjAddr: 0x33DC, symBinAddr: 0x2B8E0, symSize: 0x24 } - - { offsetInCU: 0x9575, offset: 0x8670C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12expand_nodesEj.cold.4, symObjAddr: 0x3448, symBinAddr: 0x2B94C, symSize: 0x24 } - - { offsetInCU: 0x95B7, offset: 0x8674E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12expand_nodesEj.cold.3, symObjAddr: 0x3424, symBinAddr: 0x2B928, symSize: 0x24 } - - { offsetInCU: 0x9625, offset: 0x867BC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12expand_nodesEj.cold.2, symObjAddr: 0x3400, symBinAddr: 0x2B904, symSize: 0x24 } - - { offsetInCU: 0x967D, offset: 0x86814, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12expand_nodesEj.cold.5, symObjAddr: 0x346C, symBinAddr: 0x2B970, symSize: 0x24 } - - { offsetInCU: 0x96C0, offset: 0x86857, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x3490, symBinAddr: 0x1C6B8, symSize: 0x8 } - - { offsetInCU: 0x96D7, offset: 0x8686E, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x3498, symBinAddr: 0x1C6C0, symSize: 0x8 } - - { offsetInCU: 0x96EE, offset: 0x86885, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x34A0, symBinAddr: 0x1C6C8, symSize: 0x8 } - - { offsetInCU: 0x26, offset: 0x868DF, size: 0x8, addend: 0x0, symName: __ZN2bq23appender_decoder_helper6decodeERKNS_11string_baseIcEES4_, symObjAddr: 0x0, symBinAddr: 0x1C6D0, symSize: 0x1F0 } - - { offsetInCU: 0x133F, offset: 0x87BF8, size: 0x8, addend: 0x0, symName: __ZN2bq23appender_decoder_helper6decodeERKNS_11string_baseIcEES4_, symObjAddr: 0x0, symBinAddr: 0x1C6D0, symSize: 0x1F0 } - - { offsetInCU: 0x2EB4, offset: 0x8AD40, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager8instanceEv, symObjAddr: 0x128, symBinAddr: 0x1C954, symSize: 0x7C } - - { offsetInCU: 0x2ED5, offset: 0x8AD61, size: 0x8, addend: 0x0, symName: __ZZN2bq24appender_decoder_manager8instanceEvE4inst, symObjAddr: 0x2B668, symBinAddr: 0x34A88, symSize: 0x0 } - - { offsetInCU: 0x2EF9, offset: 0x8AD85, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE12expand_nodesEj, symObjAddr: 0x810, symBinAddr: 0x1D03C, symSize: 0x1BC } - - { offsetInCU: 0x311C, offset: 0x8AFA8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5resetEv, symObjAddr: 0x9CC, symBinAddr: 0x1D1F8, symSize: 0xC4 } - - { offsetInCU: 0x34AA, offset: 0x8B336, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj, symObjAddr: 0xE84, symBinAddr: 0x1D2BC, symSize: 0x1F0 } - - { offsetInCU: 0x3B71, offset: 0x8B9FD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj, symObjAddr: 0x668, symBinAddr: 0x1CE94, symSize: 0x1A8 } - - { offsetInCU: 0x3E53, offset: 0x8BCDF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE12expand_nodesEj, symObjAddr: 0x810, symBinAddr: 0x1D03C, symSize: 0x1BC } - - { offsetInCU: 0x3E7C, offset: 0x8BD08, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_managerC1Ev, symObjAddr: 0x6C, symBinAddr: 0x1C8C0, symSize: 0x6C } - - { offsetInCU: 0x4076, offset: 0x8BF02, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5resetEv, symObjAddr: 0x9CC, symBinAddr: 0x1D1F8, symSize: 0xC4 } - - { offsetInCU: 0x430B, offset: 0x8C197, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_managerD1Ev, symObjAddr: 0x100, symBinAddr: 0x1C92C, symSize: 0x28 } - - { offsetInCU: 0x48F0, offset: 0x8C77C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager14create_decoderERKNS_11string_baseIcEERj, symObjAddr: 0x1A4, symBinAddr: 0x1C9D0, symSize: 0x320 } - - { offsetInCU: 0x5068, offset: 0x8CEF4, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager15destroy_decoderEj, symObjAddr: 0x4C4, symBinAddr: 0x1CCF0, symSize: 0xA8 } - - { offsetInCU: 0x5274, offset: 0x8D100, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj, symObjAddr: 0xE84, symBinAddr: 0x1D2BC, symSize: 0x1F0 } - - { offsetInCU: 0x5651, offset: 0x8D4DD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseENS_17hash_map_iteratorIjS3_Lb0EEE, symObjAddr: 0x1074, symBinAddr: 0x1D4AC, symSize: 0x144 } - - { offsetInCU: 0x565B, offset: 0x8D4E7, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager14create_decoderERKNS_11string_baseIcEERj.cold.1, symObjAddr: 0x11B8, symBinAddr: 0x2B994, symSize: 0x24 } - - { offsetInCU: 0x580D, offset: 0x8D699, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager15destroy_decoderEj, symObjAddr: 0x4C4, symBinAddr: 0x1CCF0, symSize: 0xA8 } - - { offsetInCU: 0x5A08, offset: 0x8D894, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager18decode_single_itemEjRPKNS_11string_baseIcEE, symObjAddr: 0x56C, symBinAddr: 0x1CD98, symSize: 0xFC } - - { offsetInCU: 0x5A12, offset: 0x8D89E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseENS_17hash_map_iteratorIjS3_Lb0EEE, symObjAddr: 0x1074, symBinAddr: 0x1D4AC, symSize: 0x144 } - - { offsetInCU: 0x5CDD, offset: 0x8DB69, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager14create_decoderERKNS_11string_baseIcEERj.cold.1, symObjAddr: 0x11B8, symBinAddr: 0x2B994, symSize: 0x24 } - - { offsetInCU: 0x5CE7, offset: 0x8DB73, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager15destroy_decoderEj.cold.1, symObjAddr: 0x11DC, symBinAddr: 0x2B9B8, symSize: 0x24 } - - { offsetInCU: 0x5D54, offset: 0x8DBE0, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager15destroy_decoderEj.cold.2, symObjAddr: 0x1200, symBinAddr: 0x2B9DC, symSize: 0x24 } - - { offsetInCU: 0x5DE9, offset: 0x8DC75, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager18decode_single_itemEjRPKNS_11string_baseIcEE, symObjAddr: 0x56C, symBinAddr: 0x1CD98, symSize: 0xFC } - - { offsetInCU: 0x6104, offset: 0x8DF90, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj, symObjAddr: 0x668, symBinAddr: 0x1CE94, symSize: 0x1A8 } - - { offsetInCU: 0x610E, offset: 0x8DF9A, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager18decode_single_itemEjRPKNS_11string_baseIcEE.cold.3, symObjAddr: 0x126C, symBinAddr: 0x2BA48, symSize: 0x24 } - - { offsetInCU: 0x6165, offset: 0x8DFF1, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager18decode_single_itemEjRPKNS_11string_baseIcEE.cold.4, symObjAddr: 0x1290, symBinAddr: 0x2BA6C, symSize: 0x24 } - - { offsetInCU: 0x61BC, offset: 0x8E048, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager18decode_single_itemEjRPKNS_11string_baseIcEE.cold.2, symObjAddr: 0x1248, symBinAddr: 0x2BA24, symSize: 0x24 } - - { offsetInCU: 0x61FD, offset: 0x8E089, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager18decode_single_itemEjRPKNS_11string_baseIcEE.cold.1, symObjAddr: 0x1224, symBinAddr: 0x2BA00, symSize: 0x24 } - - { offsetInCU: 0x6283, offset: 0x8E10F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj.cold.7, symObjAddr: 0x138C, symBinAddr: 0x2BB68, symSize: 0x24 } - - { offsetInCU: 0x62B0, offset: 0x8E13C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj.cold.6, symObjAddr: 0x1368, symBinAddr: 0x2BB44, symSize: 0x24 } - - { offsetInCU: 0x62DD, offset: 0x8E169, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj.cold.5, symObjAddr: 0x1344, symBinAddr: 0x2BB20, symSize: 0x24 } - - { offsetInCU: 0x630A, offset: 0x8E196, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj.cold.4, symObjAddr: 0x1320, symBinAddr: 0x2BAFC, symSize: 0x24 } - - { offsetInCU: 0x6337, offset: 0x8E1C3, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj.cold.3, symObjAddr: 0x12FC, symBinAddr: 0x2BAD8, symSize: 0x24 } - - { offsetInCU: 0x6364, offset: 0x8E1F0, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj.cold.2, symObjAddr: 0x12D8, symBinAddr: 0x2BAB4, symSize: 0x24 } - - { offsetInCU: 0x6391, offset: 0x8E21D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj.cold.1, symObjAddr: 0x12B4, symBinAddr: 0x2BA90, symSize: 0x24 } - - { offsetInCU: 0x6438, offset: 0x8E2C4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE12expand_nodesEj.cold.1, symObjAddr: 0x13B0, symBinAddr: 0x2BB8C, symSize: 0x24 } - - { offsetInCU: 0x647A, offset: 0x8E306, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE12expand_nodesEj.cold.2, symObjAddr: 0x13D4, symBinAddr: 0x2BBB0, symSize: 0x24 } - - { offsetInCU: 0x64BC, offset: 0x8E348, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE12expand_nodesEj.cold.3, symObjAddr: 0x13F8, symBinAddr: 0x2BBD4, symSize: 0x24 } - - { offsetInCU: 0x658D, offset: 0x8E419, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5resetEv.cold.1, symObjAddr: 0x141C, symBinAddr: 0x2BBF8, symSize: 0x24 } - - { offsetInCU: 0x65CF, offset: 0x8E45B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5resetEv.cold.3, symObjAddr: 0x1464, symBinAddr: 0x2BC40, symSize: 0x24 } - - { offsetInCU: 0x663D, offset: 0x8E4C9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5resetEv.cold.2, symObjAddr: 0x1440, symBinAddr: 0x2BC1C, symSize: 0x24 } - - { offsetInCU: 0x6695, offset: 0x8E521, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5resetEv.cold.4, symObjAddr: 0x1488, symBinAddr: 0x2BC64, symSize: 0x24 } - - { offsetInCU: 0x6B79, offset: 0x8EA05, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.2, symObjAddr: 0x1684, symBinAddr: 0x2BCB0, symSize: 0x24 } - - { offsetInCU: 0x6BD1, offset: 0x8EA5D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.9, symObjAddr: 0x1784, symBinAddr: 0x2BDB0, symSize: 0x24 } - - { offsetInCU: 0x6C14, offset: 0x8EAA0, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.7, symObjAddr: 0x1738, symBinAddr: 0x2BD64, symSize: 0x24 } - - { offsetInCU: 0x6C42, offset: 0x8EACE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.1, symObjAddr: 0x165C, symBinAddr: 0x2BC88, symSize: 0x28 } - - { offsetInCU: 0x6C58, offset: 0x8EAE4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.5, symObjAddr: 0x16F0, symBinAddr: 0x2BD1C, symSize: 0x24 } - - { offsetInCU: 0x6C85, offset: 0x8EB11, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.10, symObjAddr: 0x17A8, symBinAddr: 0x2BDD4, symSize: 0x24 } - - { offsetInCU: 0x6CC8, offset: 0x8EB54, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.6, symObjAddr: 0x1714, symBinAddr: 0x2BD40, symSize: 0x24 } - - { offsetInCU: 0x6CF5, offset: 0x8EB81, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.4, symObjAddr: 0x16CC, symBinAddr: 0x2BCF8, symSize: 0x24 } - - { offsetInCU: 0x6D22, offset: 0x8EBAE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.3, symObjAddr: 0x16A8, symBinAddr: 0x2BCD4, symSize: 0x24 } - - { offsetInCU: 0x6D50, offset: 0x8EBDC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.8, symObjAddr: 0x175C, symBinAddr: 0x2BD88, symSize: 0x28 } - - { offsetInCU: 0x6D88, offset: 0x8EC14, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseENS_17hash_map_iteratorIjS3_Lb0EEE.cold.3, symObjAddr: 0x1814, symBinAddr: 0x2BE40, symSize: 0x24 } - - { offsetInCU: 0x6DB5, offset: 0x8EC41, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseENS_17hash_map_iteratorIjS3_Lb0EEE.cold.1, symObjAddr: 0x17CC, symBinAddr: 0x2BDF8, symSize: 0x24 } - - { offsetInCU: 0x6E23, offset: 0x8ECAF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseENS_17hash_map_iteratorIjS3_Lb0EEE.cold.5, symObjAddr: 0x185C, symBinAddr: 0x2BE88, symSize: 0x24 } - - { offsetInCU: 0x6E50, offset: 0x8ECDC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseENS_17hash_map_iteratorIjS3_Lb0EEE.cold.4, symObjAddr: 0x1838, symBinAddr: 0x2BE64, symSize: 0x24 } - - { offsetInCU: 0x6E7D, offset: 0x8ED09, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseENS_17hash_map_iteratorIjS3_Lb0EEE.cold.2, symObjAddr: 0x17F0, symBinAddr: 0x2BE1C, symSize: 0x24 } - - { offsetInCU: 0x6EAB, offset: 0x8ED37, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x1880, symBinAddr: 0x1D5F0, symSize: 0x8 } - - { offsetInCU: 0x6EC2, offset: 0x8ED4E, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x1888, symBinAddr: 0x1D5F8, symSize: 0x8 } - - { offsetInCU: 0x26, offset: 0x8ED8F, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_raw12init_privateEv, symObjAddr: 0x0, symBinAddr: 0x1D600, symSize: 0x8 } - - { offsetInCU: 0x1D94, offset: 0x90AFD, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_raw12init_privateEv, symObjAddr: 0x0, symBinAddr: 0x1D600, symSize: 0x8 } - - { offsetInCU: 0x1E35, offset: 0x90B9E, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_raw14decode_privateEv, symObjAddr: 0x8, symBinAddr: 0x1D608, symSize: 0xB0 } - - { offsetInCU: 0x1EF1, offset: 0x90C5A, size: 0x8, addend: 0x0, symName: __ZNK2bq20appender_decoder_raw25get_binary_format_versionEv, symObjAddr: 0xB8, symBinAddr: 0x1D6B8, symSize: 0x8 } - - { offsetInCU: 0x1F34, offset: 0x90C9D, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawD1Ev, symObjAddr: 0xC0, symBinAddr: 0x1D6C0, symSize: 0x4 } - - { offsetInCU: 0x1F57, offset: 0x90CC0, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawD1Ev, symObjAddr: 0xC0, symBinAddr: 0x1D6C0, symSize: 0x4 } - - { offsetInCU: 0x1F73, offset: 0x90CDC, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawD1Ev, symObjAddr: 0xC0, symBinAddr: 0x1D6C0, symSize: 0x4 } - - { offsetInCU: 0x2155, offset: 0x90EBE, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawD0Ev, symObjAddr: 0xC4, symBinAddr: 0x1D6C4, symSize: 0x14 } - - { offsetInCU: 0x57, offset: 0x9154D, size: 0x8, addend: 0x0, symName: __ZN2bqL14_log_level_strE, symObjAddr: 0x2F950, symBinAddr: 0x34AE0, symSize: 0x0 } - - { offsetInCU: 0x3EA, offset: 0x918E0, size: 0x8, addend: 0x0, symName: __ZN2bqL27_time_zone_str_initer_inst_E, symObjAddr: 0x2F9E0, symBinAddr: 0x34B70, symSize: 0x0 } - - { offsetInCU: 0x44A, offset: 0x91940, size: 0x8, addend: 0x0, symName: __ZN2bqL18_digit_str_initer_E, symObjAddr: 0x2FA18, symBinAddr: 0x34BA8, symSize: 0x0 } - - { offsetInCU: 0x153F, offset: 0x92A35, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12expand_nodesEj, symObjAddr: 0x3B2C, symBinAddr: 0x21090, symSize: 0x22C } - - { offsetInCU: 0x1911, offset: 0x92E07, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy, symObjAddr: 0x3D58, symBinAddr: 0x212BC, symSize: 0x20C } - - { offsetInCU: 0x2023, offset: 0x93519, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj, symObjAddr: 0x3980, symBinAddr: 0x20EE4, symSize: 0x1AC } - - { offsetInCU: 0x2305, offset: 0x937FB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12expand_nodesEj, symObjAddr: 0x3B2C, symBinAddr: 0x21090, symSize: 0x22C } - - { offsetInCU: 0x232E, offset: 0x93824, size: 0x8, addend: 0x0, symName: __ZN2bq6layoutC1Ev, symObjAddr: 0xB0, symBinAddr: 0x1D6D8, symSize: 0xB0 } - - { offsetInCU: 0x2623, offset: 0x93B19, size: 0x8, addend: 0x0, symName: __ZN2bq6layout9do_layoutERKNS_16log_entry_handleEbPKNS_5arrayINS_11string_baseIcEELm0EEE, symObjAddr: 0x160, symBinAddr: 0x1D788, symSize: 0x188 } - - { offsetInCU: 0x28A0, offset: 0x93D96, size: 0x8, addend: 0x0, symName: __ZN2bq6layout13layout_prefixERKNS_16log_entry_handleE, symObjAddr: 0x2E8, symBinAddr: 0x1D910, symSize: 0x128 } - - { offsetInCU: 0x28AA, offset: 0x93DA0, size: 0x8, addend: 0x0, symName: __ZN2bq6layout13layout_prefixERKNS_16log_entry_handleE, symObjAddr: 0x2E8, symBinAddr: 0x1D910, symSize: 0x128 } - - { offsetInCU: 0x2B50, offset: 0x94046, size: 0x8, addend: 0x0, symName: __ZN2bq6layout32python_style_format_content_utf8ERKNS_16log_entry_handleE, symObjAddr: 0xEC4, symBinAddr: 0x1E494, symSize: 0x808 } - - { offsetInCU: 0x35A4, offset: 0x94A9A, size: 0x8, addend: 0x0, symName: __ZN2bq6layout33python_style_format_content_utf16ERKNS_16log_entry_handleE, symObjAddr: 0x16CC, symBinAddr: 0x1EC9C, symSize: 0x720 } - - { offsetInCU: 0x35AE, offset: 0x94AA4, size: 0x8, addend: 0x0, symName: __ZN2bq6layout33python_style_format_content_utf16ERKNS_16log_entry_handleE, symObjAddr: 0x16CC, symBinAddr: 0x1EC9C, symSize: 0x720 } - - { offsetInCU: 0x3D2E, offset: 0x95224, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_pointerEPKv, symObjAddr: 0x1DEC, symBinAddr: 0x1F3BC, symSize: 0x284 } - - { offsetInCU: 0x3D38, offset: 0x9522E, size: 0x8, addend: 0x0, symName: __ZN2bq6layout9do_layoutERKNS_16log_entry_handleEbPKNS_5arrayINS_11string_baseIcEELm0EEE.cold.1, symObjAddr: 0x3F64, symBinAddr: 0x2BEAC, symSize: 0x28 } - - { offsetInCU: 0x3D64, offset: 0x9525A, size: 0x8, addend: 0x0, symName: __ZN2bq6layout9do_layoutERKNS_16log_entry_handleEbPKNS_5arrayINS_11string_baseIcEELm0EEE.cold.2, symObjAddr: 0x3F8C, symBinAddr: 0x2BED4, symSize: 0x24 } - - { offsetInCU: 0x3E6F, offset: 0x95365, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_timeERKNS_16log_entry_handleE, symObjAddr: 0x468, symBinAddr: 0x1DA38, symSize: 0x24C } - - { offsetInCU: 0x40C0, offset: 0x955B6, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE, symObjAddr: 0x6B4, symBinAddr: 0x1DC84, symSize: 0x3D0 } - - { offsetInCU: 0x40CA, offset: 0x955C0, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE, symObjAddr: 0x6B4, symBinAddr: 0x1DC84, symSize: 0x3D0 } - - { offsetInCU: 0x4843, offset: 0x95D39, size: 0x8, addend: 0x0, symName: __ZN2bq6layout15insert_str_utf8EPKcj, symObjAddr: 0xA84, symBinAddr: 0x1E054, symSize: 0x168 } - - { offsetInCU: 0x484D, offset: 0x95D43, size: 0x8, addend: 0x0, symName: __ZN2bq6layout15insert_str_utf8EPKcj, symObjAddr: 0xA84, symBinAddr: 0x1E054, symSize: 0x168 } - - { offsetInCU: 0x4A3C, offset: 0x95F32, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_charEc, symObjAddr: 0xBEC, symBinAddr: 0x1E1BC, symSize: 0x148 } - - { offsetInCU: 0x4A46, offset: 0x95F3C, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_charEc, symObjAddr: 0xBEC, symBinAddr: 0x1E1BC, symSize: 0x148 } - - { offsetInCU: 0x4BF8, offset: 0x960EE, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18fill_and_alignmentEj, symObjAddr: 0xD34, symBinAddr: 0x1E304, symSize: 0x190 } - - { offsetInCU: 0x4C02, offset: 0x960F8, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_timeERKNS_16log_entry_handleE.cold.1, symObjAddr: 0x3FD8, symBinAddr: 0x2BEF8, symSize: 0x24 } - - { offsetInCU: 0x4FDB, offset: 0x964D1, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy, symObjAddr: 0x3D58, symBinAddr: 0x212BC, symSize: 0x20C } - - { offsetInCU: 0x541D, offset: 0x96913, size: 0x8, addend: 0x0, symName: __ZN2bq6layout9do_layoutERKNS_16log_entry_handleEbPKNS_5arrayINS_11string_baseIcEELm0EEE.cold.1, symObjAddr: 0x3F64, symBinAddr: 0x2BEAC, symSize: 0x28 } - - { offsetInCU: 0x5427, offset: 0x9691D, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.5, symObjAddr: 0x4090, symBinAddr: 0x2BFB0, symSize: 0x24 } - - { offsetInCU: 0x5468, offset: 0x9695E, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.8, symObjAddr: 0x40FC, symBinAddr: 0x2C01C, symSize: 0x24 } - - { offsetInCU: 0x54BF, offset: 0x969B5, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.1, symObjAddr: 0x3FFC, symBinAddr: 0x2BF1C, symSize: 0x28 } - - { offsetInCU: 0x54D6, offset: 0x969CC, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.6, symObjAddr: 0x40B4, symBinAddr: 0x2BFD4, symSize: 0x24 } - - { offsetInCU: 0x5542, offset: 0x96A38, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.9, symObjAddr: 0x4120, symBinAddr: 0x2C040, symSize: 0x24 } - - { offsetInCU: 0x5599, offset: 0x96A8F, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.3, symObjAddr: 0x4048, symBinAddr: 0x2BF68, symSize: 0x24 } - - { offsetInCU: 0x55DA, offset: 0x96AD0, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.2, symObjAddr: 0x4024, symBinAddr: 0x2BF44, symSize: 0x24 } - - { offsetInCU: 0x561B, offset: 0x96B11, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.7, symObjAddr: 0x40D8, symBinAddr: 0x2BFF8, symSize: 0x24 } - - { offsetInCU: 0x5687, offset: 0x96B7D, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.4, symObjAddr: 0x406C, symBinAddr: 0x2BF8C, symSize: 0x24 } - - { offsetInCU: 0x56DF, offset: 0x96BD5, size: 0x8, addend: 0x0, symName: __ZN2bq6layout15insert_str_utf8EPKcj.cold.1, symObjAddr: 0x4144, symBinAddr: 0x2C064, symSize: 0x28 } - - { offsetInCU: 0x56F6, offset: 0x96BEC, size: 0x8, addend: 0x0, symName: __ZN2bq6layout15insert_str_utf8EPKcj.cold.2, symObjAddr: 0x416C, symBinAddr: 0x2C08C, symSize: 0x24 } - - { offsetInCU: 0x574F, offset: 0x96C45, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_charEc.cold.1, symObjAddr: 0x4190, symBinAddr: 0x2C0B0, symSize: 0x24 } - - { offsetInCU: 0x57A8, offset: 0x96C9E, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18fill_and_alignmentEj, symObjAddr: 0xD34, symBinAddr: 0x1E304, symSize: 0x190 } - - { offsetInCU: 0x5B76, offset: 0x9706C, size: 0x8, addend: 0x0, symName: __ZN2bq6layout10c20_formatIcEENS0_11format_infoEPKT_i, symObjAddr: 0x3478, symBinAddr: 0x20A20, symSize: 0x1EC } - - { offsetInCU: 0x5CCC, offset: 0x971C2, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_pointerEPKv, symObjAddr: 0x1DEC, symBinAddr: 0x1F3BC, symSize: 0x284 } - - { offsetInCU: 0x604E, offset: 0x97544, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_boolEb, symObjAddr: 0x2070, symBinAddr: 0x1F640, symSize: 0x264 } - - { offsetInCU: 0x6058, offset: 0x9754E, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_boolEb, symObjAddr: 0x2070, symBinAddr: 0x1F640, symSize: 0x264 } - - { offsetInCU: 0x63B4, offset: 0x978AA, size: 0x8, addend: 0x0, symName: __ZN2bq6layout16insert_str_utf16EPKcj, symObjAddr: 0x3170, symBinAddr: 0x20718, symSize: 0x308 } - - { offsetInCU: 0x6658, offset: 0x97B4E, size: 0x8, addend: 0x0, symName: __ZN2bq6layout10c20_formatIcEENS0_11format_infoEPKT_i, symObjAddr: 0x3478, symBinAddr: 0x20A20, symSize: 0x1EC } - - { offsetInCU: 0x6662, offset: 0x97B58, size: 0x8, addend: 0x0, symName: __ZN2bq6layout22insert_integral_signedExi, symObjAddr: 0x2358, symBinAddr: 0x1F900, symSize: 0x534 } - - { offsetInCU: 0x6D55, offset: 0x9824B, size: 0x8, addend: 0x0, symName: __ZN2bq6layout24insert_integral_unsignedEyi, symObjAddr: 0x288C, symBinAddr: 0x1FE34, symSize: 0x528 } - - { offsetInCU: 0x6D5F, offset: 0x98255, size: 0x8, addend: 0x0, symName: __ZN2bq6layout24insert_integral_unsignedEyi, symObjAddr: 0x288C, symBinAddr: 0x1FE34, symSize: 0x528 } - - { offsetInCU: 0x7479, offset: 0x9896F, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_decimalEf, symObjAddr: 0x2DB4, symBinAddr: 0x2035C, symSize: 0x1E0 } - - { offsetInCU: 0x7483, offset: 0x98979, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_decimalEf, symObjAddr: 0x2DB4, symBinAddr: 0x2035C, symSize: 0x1E0 } - - { offsetInCU: 0x770B, offset: 0x98C01, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_decimalEd, symObjAddr: 0x2F94, symBinAddr: 0x2053C, symSize: 0x1DC } - - { offsetInCU: 0x7715, offset: 0x98C0B, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_decimalEd, symObjAddr: 0x2F94, symBinAddr: 0x2053C, symSize: 0x1DC } - - { offsetInCU: 0x7991, offset: 0x98E87, size: 0x8, addend: 0x0, symName: __ZN2bq6layout16insert_str_utf16EPKcj, symObjAddr: 0x3170, symBinAddr: 0x20718, symSize: 0x308 } - - { offsetInCU: 0x799B, offset: 0x98E91, size: 0x8, addend: 0x0, symName: __ZN2bq6layout32python_style_format_content_utf8ERKNS_16log_entry_handleE.cold.2, symObjAddr: 0x41D8, symBinAddr: 0x2C0F8, symSize: 0x28 } - - { offsetInCU: 0x79B2, offset: 0x98EA8, size: 0x8, addend: 0x0, symName: __ZN2bq6layout32python_style_format_content_utf8ERKNS_16log_entry_handleE.cold.4, symObjAddr: 0x4224, symBinAddr: 0x2C144, symSize: 0x24 } - - { offsetInCU: 0x7A0B, offset: 0x98F01, size: 0x8, addend: 0x0, symName: __ZN2bq6layout32python_style_format_content_utf8ERKNS_16log_entry_handleE.cold.1, symObjAddr: 0x41B4, symBinAddr: 0x2C0D4, symSize: 0x24 } - - { offsetInCU: 0x7A64, offset: 0x98F5A, size: 0x8, addend: 0x0, symName: __ZN2bq6layout32python_style_format_content_utf8ERKNS_16log_entry_handleE.cold.5, symObjAddr: 0x4248, symBinAddr: 0x2C168, symSize: 0x24 } - - { offsetInCU: 0x7ABD, offset: 0x98FB3, size: 0x8, addend: 0x0, symName: __ZN2bq6layout32python_style_format_content_utf8ERKNS_16log_entry_handleE.cold.3, symObjAddr: 0x4200, symBinAddr: 0x2C120, symSize: 0x24 } - - { offsetInCU: 0x7B16, offset: 0x9900C, size: 0x8, addend: 0x0, symName: __ZN2bq6layout10c20_formatIDsEENS0_11format_infoEPKT_i, symObjAddr: 0x3664, symBinAddr: 0x20C0C, symSize: 0x1F4 } - - { offsetInCU: 0x7C76, offset: 0x9916C, size: 0x8, addend: 0x0, symName: __ZN2bq6layout13insert_char32EDi, symObjAddr: 0x22FC, symBinAddr: 0x1F8A4, symSize: 0x5C } - - { offsetInCU: 0x7CC4, offset: 0x991BA, size: 0x8, addend: 0x0, symName: __ZN2bq6layout33python_style_format_content_utf16ERKNS_16log_entry_handleE.cold.1, symObjAddr: 0x426C, symBinAddr: 0x2C18C, symSize: 0x28 } - - { offsetInCU: 0x7CDB, offset: 0x991D1, size: 0x8, addend: 0x0, symName: __ZN2bq6layout33python_style_format_content_utf16ERKNS_16log_entry_handleE.cold.3, symObjAddr: 0x42B8, symBinAddr: 0x2C1D8, symSize: 0x24 } - - { offsetInCU: 0x7D34, offset: 0x9922A, size: 0x8, addend: 0x0, symName: __ZN2bq6layout33python_style_format_content_utf16ERKNS_16log_entry_handleE.cold.2, symObjAddr: 0x4294, symBinAddr: 0x2C1B4, symSize: 0x24 } - - { offsetInCU: 0x7D8D, offset: 0x99283, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_pointerEPKv.cold.2, symObjAddr: 0x4300, symBinAddr: 0x2C220, symSize: 0x24 } - - { offsetInCU: 0x7DE6, offset: 0x992DC, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_pointerEPKv.cold.1, symObjAddr: 0x42DC, symBinAddr: 0x2C1FC, symSize: 0x24 } - - { offsetInCU: 0x7E3F, offset: 0x99335, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_boolEb.cold.1, symObjAddr: 0x4324, symBinAddr: 0x2C244, symSize: 0x24 } - - { offsetInCU: 0x7E98, offset: 0x9938E, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_boolEb.cold.2, symObjAddr: 0x4348, symBinAddr: 0x2C268, symSize: 0x24 } - - { offsetInCU: 0x7F2E, offset: 0x99424, size: 0x8, addend: 0x0, symName: __ZN2bq6layout22insert_integral_signedExi.cold.2, symObjAddr: 0x4394, symBinAddr: 0x2C2B4, symSize: 0x24 } - - { offsetInCU: 0x7F87, offset: 0x9947D, size: 0x8, addend: 0x0, symName: __ZN2bq6layout22insert_integral_signedExi.cold.3, symObjAddr: 0x43B8, symBinAddr: 0x2C2D8, symSize: 0x24 } - - { offsetInCU: 0x7FE0, offset: 0x994D6, size: 0x8, addend: 0x0, symName: __ZN2bq6layout22insert_integral_signedExi.cold.1, symObjAddr: 0x436C, symBinAddr: 0x2C28C, symSize: 0x28 } - - { offsetInCU: 0x7FF7, offset: 0x994ED, size: 0x8, addend: 0x0, symName: __ZN2bq6layout22insert_integral_signedExi.cold.4, symObjAddr: 0x43DC, symBinAddr: 0x2C2FC, symSize: 0x24 } - - { offsetInCU: 0x8050, offset: 0x99546, size: 0x8, addend: 0x0, symName: __ZN2bq6layout24insert_integral_unsignedEyi.cold.2, symObjAddr: 0x4428, symBinAddr: 0x2C348, symSize: 0x24 } - - { offsetInCU: 0x80A9, offset: 0x9959F, size: 0x8, addend: 0x0, symName: __ZN2bq6layout24insert_integral_unsignedEyi.cold.3, symObjAddr: 0x444C, symBinAddr: 0x2C36C, symSize: 0x24 } - - { offsetInCU: 0x8102, offset: 0x995F8, size: 0x8, addend: 0x0, symName: __ZN2bq6layout24insert_integral_unsignedEyi.cold.1, symObjAddr: 0x4400, symBinAddr: 0x2C320, symSize: 0x28 } - - { offsetInCU: 0x8119, offset: 0x9960F, size: 0x8, addend: 0x0, symName: __ZN2bq6layout24insert_integral_unsignedEyi.cold.4, symObjAddr: 0x4470, symBinAddr: 0x2C390, symSize: 0x24 } - - { offsetInCU: 0x8172, offset: 0x99668, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_decimalEf.cold.1, symObjAddr: 0x4494, symBinAddr: 0x2C3B4, symSize: 0x24 } - - { offsetInCU: 0x81CB, offset: 0x996C1, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_decimalEd.cold.1, symObjAddr: 0x44B8, symBinAddr: 0x2C3D8, symSize: 0x24 } - - { offsetInCU: 0x8224, offset: 0x9971A, size: 0x8, addend: 0x0, symName: __ZN2bq6layout16insert_str_utf16EPKcj.cold.1, symObjAddr: 0x44DC, symBinAddr: 0x2C3FC, symSize: 0x28 } - - { offsetInCU: 0x823B, offset: 0x99731, size: 0x8, addend: 0x0, symName: __ZN2bq6layout16insert_str_utf16EPKcj.cold.2, symObjAddr: 0x4504, symBinAddr: 0x2C424, symSize: 0x24 } - - { offsetInCU: 0x82A5, offset: 0x9979B, size: 0x8, addend: 0x0, symName: __ZN2bq21_time_zone_str_initerC2Ev, symObjAddr: 0x389C, symBinAddr: 0x20E00, symSize: 0xE4 } - - { offsetInCU: 0x83CB, offset: 0x998C1, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj.cold.7, symObjAddr: 0x4600, symBinAddr: 0x2C520, symSize: 0x24 } - - { offsetInCU: 0x83F8, offset: 0x998EE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj.cold.6, symObjAddr: 0x45DC, symBinAddr: 0x2C4FC, symSize: 0x24 } - - { offsetInCU: 0x8425, offset: 0x9991B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj.cold.5, symObjAddr: 0x45B8, symBinAddr: 0x2C4D8, symSize: 0x24 } - - { offsetInCU: 0x8452, offset: 0x99948, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj.cold.4, symObjAddr: 0x4594, symBinAddr: 0x2C4B4, symSize: 0x24 } - - { offsetInCU: 0x847F, offset: 0x99975, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj.cold.3, symObjAddr: 0x4570, symBinAddr: 0x2C490, symSize: 0x24 } - - { offsetInCU: 0x84AC, offset: 0x999A2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj.cold.2, symObjAddr: 0x454C, symBinAddr: 0x2C46C, symSize: 0x24 } - - { offsetInCU: 0x84D9, offset: 0x999CF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj.cold.1, symObjAddr: 0x4528, symBinAddr: 0x2C448, symSize: 0x24 } - - { offsetInCU: 0x860E, offset: 0x99B04, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12expand_nodesEj.cold.1, symObjAddr: 0x4624, symBinAddr: 0x2C544, symSize: 0x24 } - - { offsetInCU: 0x8650, offset: 0x99B46, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12expand_nodesEj.cold.4, symObjAddr: 0x4690, symBinAddr: 0x2C5B0, symSize: 0x24 } - - { offsetInCU: 0x8692, offset: 0x99B88, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12expand_nodesEj.cold.3, symObjAddr: 0x466C, symBinAddr: 0x2C58C, symSize: 0x24 } - - { offsetInCU: 0x8700, offset: 0x99BF6, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12expand_nodesEj.cold.2, symObjAddr: 0x4648, symBinAddr: 0x2C568, symSize: 0x24 } - - { offsetInCU: 0x8758, offset: 0x99C4E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12expand_nodesEj.cold.5, symObjAddr: 0x46B4, symBinAddr: 0x2C5D4, symSize: 0x24 } - - { offsetInCU: 0x87FD, offset: 0x99CF3, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.2, symObjAddr: 0x4700, symBinAddr: 0x2C620, symSize: 0x24 } - - { offsetInCU: 0x8855, offset: 0x99D4B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.9, symObjAddr: 0x4800, symBinAddr: 0x2C720, symSize: 0x24 } - - { offsetInCU: 0x8898, offset: 0x99D8E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.7, symObjAddr: 0x47B4, symBinAddr: 0x2C6D4, symSize: 0x24 } - - { offsetInCU: 0x88C5, offset: 0x99DBB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.1, symObjAddr: 0x46D8, symBinAddr: 0x2C5F8, symSize: 0x28 } - - { offsetInCU: 0x88DC, offset: 0x99DD2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.5, symObjAddr: 0x476C, symBinAddr: 0x2C68C, symSize: 0x24 } - - { offsetInCU: 0x8909, offset: 0x99DFF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.10, symObjAddr: 0x4824, symBinAddr: 0x2C744, symSize: 0x24 } - - { offsetInCU: 0x894C, offset: 0x99E42, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.6, symObjAddr: 0x4790, symBinAddr: 0x2C6B0, symSize: 0x24 } - - { offsetInCU: 0x8979, offset: 0x99E6F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.4, symObjAddr: 0x4748, symBinAddr: 0x2C668, symSize: 0x24 } - - { offsetInCU: 0x89A6, offset: 0x99E9C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.3, symObjAddr: 0x4724, symBinAddr: 0x2C644, symSize: 0x24 } - - { offsetInCU: 0x89D3, offset: 0x99EC9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.8, symObjAddr: 0x47D8, symBinAddr: 0x2C6F8, symSize: 0x28 } - - { offsetInCU: 0x89EF, offset: 0x99EE5, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x4848, symBinAddr: 0x214C8, symSize: 0x8 } - - { offsetInCU: 0x8A06, offset: 0x99EFC, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x4850, symBinAddr: 0x214D0, symSize: 0x8 } - - { offsetInCU: 0x8A1D, offset: 0x99F13, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x4858, symBinAddr: 0x214D8, symSize: 0x8 } - - { offsetInCU: 0x59, offset: 0x99FB6, size: 0x8, addend: 0x0, symName: __ZN2bqL14empty_snapshotE, symObjAddr: 0x54630, symBinAddr: 0x35768, symSize: 0x0 } - - { offsetInCU: 0x56AC, offset: 0x9F609, size: 0x8, addend: 0x0, symName: __ZN2bq7log_impC1Ev, symObjAddr: 0x80, symBinAddr: 0x217B4, symSize: 0x80 } - - { offsetInCU: 0x59E1, offset: 0x9F93E, size: 0x8, addend: 0x0, symName: __ZN2bq7log_impD2Ev, symObjAddr: 0x100, symBinAddr: 0x21834, symSize: 0x17C } - - { offsetInCU: 0x5ED6, offset: 0x9FE33, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp5clearEv, symObjAddr: 0x27C, symBinAddr: 0x219B0, symSize: 0x16C } - - { offsetInCU: 0x6595, offset: 0xA04F2, size: 0x8, addend: 0x0, symName: __ZN2bq7log_impD1Ev, symObjAddr: 0x420, symBinAddr: 0x21B1C, symSize: 0x4 } - - { offsetInCU: 0x65C3, offset: 0xA0520, size: 0x8, addend: 0x0, symName: __ZN2bq7log_impD1Ev, symObjAddr: 0x420, symBinAddr: 0x21B1C, symSize: 0x4 } - - { offsetInCU: 0x6D63, offset: 0xA0CC0, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE, symObjAddr: 0x424, symBinAddr: 0x21B20, symSize: 0xFF8 } - - { offsetInCU: 0x9BB1, offset: 0xA3B0E, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE6insertIJyEEEvNS_14array_iteratorIyS1_EEDpOT_, symObjAddr: 0x3980, symBinAddr: 0x24204, symSize: 0x134 } - - { offsetInCU: 0xA158, offset: 0xA40B5, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12add_appenderERKNS_11string_baseIcEERKNS_14property_valueE, symObjAddr: 0x15A4, symBinAddr: 0x22B18, symSize: 0x600 } - - { offsetInCU: 0xA162, offset: 0xA40BF, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12add_appenderERKNS_11string_baseIcEERKNS_14property_valueE, symObjAddr: 0x15A4, symBinAddr: 0x22B18, symSize: 0x600 } - - { offsetInCU: 0xB101, offset: 0xA505E, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE6insertIJyEEEvNS_14array_iteratorIyS1_EEDpOT_, symObjAddr: 0x3980, symBinAddr: 0x24204, symSize: 0x134 } - - { offsetInCU: 0xB36E, offset: 0xA52CB, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIPNS_13appender_baseELm0EE6insertIJS2_EEEvNS_21array_iterator_inlineIS2_S3_EEDpOT_, symObjAddr: 0x3AB4, symBinAddr: 0x24338, symSize: 0x134 } - - { offsetInCU: 0xB384, offset: 0xA52E1, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.13, symObjAddr: 0x3ECC, symBinAddr: 0x2CA08, symSize: 0x28 } - - { offsetInCU: 0xB3C5, offset: 0xA5322, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.1, symObjAddr: 0x3D1C, symBinAddr: 0x2C858, symSize: 0x24 } - - { offsetInCU: 0xB431, offset: 0xA538E, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.2, symObjAddr: 0x3D40, symBinAddr: 0x2C87C, symSize: 0x24 } - - { offsetInCU: 0xB49D, offset: 0xA53FA, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.8, symObjAddr: 0x3E18, symBinAddr: 0x2C954, symSize: 0x24 } - - { offsetInCU: 0xB509, offset: 0xA5466, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.9, symObjAddr: 0x3E3C, symBinAddr: 0x2C978, symSize: 0x24 } - - { offsetInCU: 0xB575, offset: 0xA54D2, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.10, symObjAddr: 0x3E60, symBinAddr: 0x2C99C, symSize: 0x24 } - - { offsetInCU: 0xB5E1, offset: 0xA553E, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.3, symObjAddr: 0x3D64, symBinAddr: 0x2C8A0, symSize: 0x24 } - - { offsetInCU: 0xB64D, offset: 0xA55AA, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.4, symObjAddr: 0x3D88, symBinAddr: 0x2C8C4, symSize: 0x24 } - - { offsetInCU: 0xB6B9, offset: 0xA5616, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.5, symObjAddr: 0x3DAC, symBinAddr: 0x2C8E8, symSize: 0x24 } - - { offsetInCU: 0xB725, offset: 0xA5682, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.6, symObjAddr: 0x3DD0, symBinAddr: 0x2C90C, symSize: 0x24 } - - { offsetInCU: 0xB791, offset: 0xA56EE, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.12, symObjAddr: 0x3EA8, symBinAddr: 0x2C9E4, symSize: 0x24 } - - { offsetInCU: 0xB7BD, offset: 0xA571A, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.11, symObjAddr: 0x3E84, symBinAddr: 0x2C9C0, symSize: 0x24 } - - { offsetInCU: 0xB7E9, offset: 0xA5746, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.14, symObjAddr: 0x3EF4, symBinAddr: 0x2CA30, symSize: 0x24 } - - { offsetInCU: 0xB855, offset: 0xA57B2, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.15, symObjAddr: 0x3F18, symBinAddr: 0x2CA54, symSize: 0x24 } - - { offsetInCU: 0xB8C1, offset: 0xA581E, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.7, symObjAddr: 0x3DF4, symBinAddr: 0x2C930, symSize: 0x24 } - - { offsetInCU: 0xBD82, offset: 0xA5CDF, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIPNS_13appender_baseELm0EE6insertIJS2_EEEvNS_21array_iterator_inlineIS2_S3_EEDpOT_, symObjAddr: 0x3AB4, symBinAddr: 0x24338, symSize: 0x134 } - - { offsetInCU: 0xBFE6, offset: 0xA5F43, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x3BE8, symBinAddr: 0x2446C, symSize: 0x134 } - - { offsetInCU: 0xBFFC, offset: 0xA5F59, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12add_appenderERKNS_11string_baseIcEERKNS_14property_valueE.cold.1, symObjAddr: 0x3F88, symBinAddr: 0x2CA78, symSize: 0x24 } - - { offsetInCU: 0xC08B, offset: 0xA5FE8, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE, symObjAddr: 0x1C2C, symBinAddr: 0x23118, symSize: 0xA10 } - - { offsetInCU: 0xD972, offset: 0xA78CF, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.1, symObjAddr: 0x3FAC, symBinAddr: 0x2CA9C, symSize: 0x24 } - - { offsetInCU: 0xD9DE, offset: 0xA793B, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.5, symObjAddr: 0x403C, symBinAddr: 0x2CB2C, symSize: 0x24 } - - { offsetInCU: 0xDA4A, offset: 0xA79A7, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.6, symObjAddr: 0x4060, symBinAddr: 0x2CB50, symSize: 0x24 } - - { offsetInCU: 0xDAB6, offset: 0xA7A13, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.2, symObjAddr: 0x3FD0, symBinAddr: 0x2CAC0, symSize: 0x24 } - - { offsetInCU: 0xDB22, offset: 0xA7A7F, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.7, symObjAddr: 0x4084, symBinAddr: 0x2CB74, symSize: 0x24 } - - { offsetInCU: 0xDB8E, offset: 0xA7AEB, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.3, symObjAddr: 0x3FF4, symBinAddr: 0x2CAE4, symSize: 0x24 } - - { offsetInCU: 0xDBFA, offset: 0xA7B57, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.4, symObjAddr: 0x4018, symBinAddr: 0x2CB08, symSize: 0x24 } - - { offsetInCU: 0xDC66, offset: 0xA7BC3, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.8, symObjAddr: 0x40A8, symBinAddr: 0x2CB98, symSize: 0x24 } - - { offsetInCU: 0xDCD2, offset: 0xA7C2F, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.9, symObjAddr: 0x40CC, symBinAddr: 0x2CBBC, symSize: 0x24 } - - { offsetInCU: 0xDD3E, offset: 0xA7C9B, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp10set_configERKNS_11string_baseIcEE, symObjAddr: 0x2644, symBinAddr: 0x23B28, symSize: 0x34 } - - { offsetInCU: 0xDD8F, offset: 0xA7CEC, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp10set_configERKNS_11string_baseIcEE, symObjAddr: 0x2644, symBinAddr: 0x23B28, symSize: 0x34 } - - { offsetInCU: 0xDE8E, offset: 0xA7DEB, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp15enable_snapshotEj, symObjAddr: 0x27C4, symBinAddr: 0x23B5C, symSize: 0x5C } - - { offsetInCU: 0xDF3A, offset: 0xA7E97, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp20take_snapshot_stringEb, symObjAddr: 0x2820, symBinAddr: 0x23BB8, symSize: 0x18 } - - { offsetInCU: 0xDF77, offset: 0xA7ED4, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp23release_snapshot_stringEv, symObjAddr: 0x2838, symBinAddr: 0x23BD0, symSize: 0x10 } - - { offsetInCU: 0xDFA0, offset: 0xA7EFD, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp8get_nameEv, symObjAddr: 0x2848, symBinAddr: 0x23BE0, symSize: 0x8 } - - { offsetInCU: 0xE0C5, offset: 0xA8022, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp7processEb, symObjAddr: 0x2850, symBinAddr: 0x23BE8, symSize: 0x27C } - - { offsetInCU: 0xE5C0, offset: 0xA851D, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12sync_processEv, symObjAddr: 0x2B84, symBinAddr: 0x23E64, symSize: 0x38 } - - { offsetInCU: 0xE675, offset: 0xA85D2, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp10get_layoutEv, symObjAddr: 0x2BBC, symBinAddr: 0x23E9C, symSize: 0x8 } - - { offsetInCU: 0xE69E, offset: 0xA85FB, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp20get_categories_countEv, symObjAddr: 0x2BC4, symBinAddr: 0x23EA4, symSize: 0x8 } - - { offsetInCU: 0xE6C9, offset: 0xA8626, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp20get_categories_countEv, symObjAddr: 0x2BC4, symBinAddr: 0x23EA4, symSize: 0x8 } - - { offsetInCU: 0xE6E7, offset: 0xA8644, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp26get_category_name_by_indexEj, symObjAddr: 0x2BCC, symBinAddr: 0x23EAC, symSize: 0x10 } - - { offsetInCU: 0xE721, offset: 0xA867E, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp26get_category_name_by_indexEj, symObjAddr: 0x2BCC, symBinAddr: 0x23EAC, symSize: 0x10 } - - { offsetInCU: 0xE73F, offset: 0xA869C, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp19get_categories_nameEv, symObjAddr: 0x2BDC, symBinAddr: 0x23EBC, symSize: 0x8 } - - { offsetInCU: 0xE93A, offset: 0xA8897, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp26get_appender_by_vague_nameERKNS_11string_baseIcEE, symObjAddr: 0x2C74, symBinAddr: 0x23EC4, symSize: 0x340 } - - { offsetInCU: 0xF98C, offset: 0xA98E9, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x3BE8, symBinAddr: 0x2446C, symSize: 0x134 } - - { offsetInCU: 0xFBF9, offset: 0xA9B56, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.1, symObjAddr: 0x3D1C, symBinAddr: 0x2C858, symSize: 0x24 } - - { offsetInCU: 0xFC0F, offset: 0xA9B6C, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp26get_appender_by_vague_nameERKNS_11string_baseIcEE.cold.3, symObjAddr: 0x4138, symBinAddr: 0x2CC28, symSize: 0x28 } - - { offsetInCU: 0xFC3C, offset: 0xA9B99, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp26get_appender_by_vague_nameERKNS_11string_baseIcEE.cold.4, symObjAddr: 0x4160, symBinAddr: 0x2CC50, symSize: 0x24 } - - { offsetInCU: 0xFC7F, offset: 0xA9BDC, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp26get_appender_by_vague_nameERKNS_11string_baseIcEE.cold.5, symObjAddr: 0x4184, symBinAddr: 0x2CC74, symSize: 0x24 } - - { offsetInCU: 0xFCEC, offset: 0xA9C49, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp26get_appender_by_vague_nameERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x40F0, symBinAddr: 0x2CBE0, symSize: 0x24 } - - { offsetInCU: 0xFD59, offset: 0xA9CB6, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp26get_appender_by_vague_nameERKNS_11string_baseIcEE.cold.2, symObjAddr: 0x4114, symBinAddr: 0x2CC04, symSize: 0x24 } - - { offsetInCU: 0x105D2, offset: 0xAA52F, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE6insertIJyEEEvNS_14array_iteratorIyS1_EEDpOT_.cold.1, symObjAddr: 0x445C, symBinAddr: 0x2CC98, symSize: 0x24 } - - { offsetInCU: 0x105E9, offset: 0xAA546, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE6insertIJyEEEvNS_14array_iteratorIyS1_EEDpOT_.cold.3, symObjAddr: 0x44A4, symBinAddr: 0x2CCE0, symSize: 0x24 } - - { offsetInCU: 0x10616, offset: 0xAA573, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE6insertIJyEEEvNS_14array_iteratorIyS1_EEDpOT_.cold.2, symObjAddr: 0x4480, symBinAddr: 0x2CCBC, symSize: 0x24 } - - { offsetInCU: 0x10786, offset: 0xAA6E3, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIPNS_13appender_baseELm0EE6insertIJS2_EEEvNS_21array_iterator_inlineIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x44C8, symBinAddr: 0x2CD04, symSize: 0x24 } - - { offsetInCU: 0x1079D, offset: 0xAA6FA, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIPNS_13appender_baseELm0EE6insertIJS2_EEEvNS_21array_iterator_inlineIS2_S3_EEDpOT_.cold.3, symObjAddr: 0x4510, symBinAddr: 0x2CD4C, symSize: 0x24 } - - { offsetInCU: 0x107CA, offset: 0xAA727, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIPNS_13appender_baseELm0EE6insertIJS2_EEEvNS_21array_iterator_inlineIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x44EC, symBinAddr: 0x2CD28, symSize: 0x24 } - - { offsetInCU: 0x1095B, offset: 0xAA8B8, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x4534, symBinAddr: 0x2CD70, symSize: 0x24 } - - { offsetInCU: 0x10972, offset: 0xAA8CF, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.3, symObjAddr: 0x457C, symBinAddr: 0x2CDB8, symSize: 0x24 } - - { offsetInCU: 0x1099F, offset: 0xAA8FC, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x4558, symBinAddr: 0x2CD94, symSize: 0x24 } - - { offsetInCU: 0x109CC, offset: 0xAA929, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x45A0, symBinAddr: 0x245A0, symSize: 0x8 } - - { offsetInCU: 0x109E3, offset: 0xAA940, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x45A8, symBinAddr: 0x245A8, symSize: 0x8 } - - { offsetInCU: 0x109FA, offset: 0xAA957, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x45B0, symBinAddr: 0x245B0, symSize: 0x8 } - - { offsetInCU: 0xB40, offset: 0xAB4C1, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmapC1Ev, symObjAddr: 0x8, symBinAddr: 0x245DC, symSize: 0x8 } - - { offsetInCU: 0xB6E, offset: 0xAB4EF, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmapC1Ev, symObjAddr: 0x8, symBinAddr: 0x245DC, symSize: 0x8 } - - { offsetInCU: 0xB87, offset: 0xAB508, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap5clearEv, symObjAddr: 0x20, symBinAddr: 0x245E4, symSize: 0x8 } - - { offsetInCU: 0xE0F, offset: 0xAB790, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelERKNS_11string_baseIcEE, symObjAddr: 0x40, symBinAddr: 0x245EC, symSize: 0x864 } - - { offsetInCU: 0x19D0, offset: 0xAC351, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE18equals_ignore_caseERKS1_, symObjAddr: 0x8A4, symBinAddr: 0x24E50, symSize: 0xB4 } - - { offsetInCU: 0x1B64, offset: 0xAC4E5, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelERKNS_11string_baseIcEE.cold.1, symObjAddr: 0xB3C, symBinAddr: 0x2CDDC, symSize: 0x24 } - - { offsetInCU: 0x1BE0, offset: 0xAC561, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE18equals_ignore_caseERKS1_, symObjAddr: 0x8A4, symBinAddr: 0x24E50, symSize: 0xB4 } - - { offsetInCU: 0x1D09, offset: 0xAC68A, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelERKNS_11string_baseIcEE.cold.1, symObjAddr: 0xB3C, symBinAddr: 0x2CDDC, symSize: 0x24 } - - { offsetInCU: 0x1D75, offset: 0xAC6F6, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelERKNS_11string_baseIcEE.cold.2, symObjAddr: 0xB60, symBinAddr: 0x2CE00, symSize: 0x24 } - - { offsetInCU: 0x1DE1, offset: 0xAC762, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelERKNS_11string_baseIcEE.cold.3, symObjAddr: 0xB84, symBinAddr: 0x2CE24, symSize: 0x24 } - - { offsetInCU: 0x1E4D, offset: 0xAC7CE, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelERKNS_11string_baseIcEE.cold.4, symObjAddr: 0xBA8, symBinAddr: 0x2CE48, symSize: 0x24 } - - { offsetInCU: 0x1EB9, offset: 0xAC83A, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelERKNS_11string_baseIcEE.cold.5, symObjAddr: 0xBCC, symBinAddr: 0x2CE6C, symSize: 0x24 } - - { offsetInCU: 0x1F25, offset: 0xAC8A6, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap10have_levelENS_9log_levelE, symObjAddr: 0x9C8, symBinAddr: 0x24F04, symSize: 0x10 } - - { offsetInCU: 0x1F5B, offset: 0xAC8DC, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap14get_bitmap_ptrEv, symObjAddr: 0x9D8, symBinAddr: 0x24F14, symSize: 0x4 } - - { offsetInCU: 0x2082, offset: 0xACA03, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0xC64, symBinAddr: 0x24F18, symSize: 0x8 } - - { offsetInCU: 0x26, offset: 0xACA40, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerC2Ev, symObjAddr: 0x0, symBinAddr: 0x24F20, symSize: 0x84 } - - { offsetInCU: 0x3F, offset: 0xACA59, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager18static_inst_cache_E, symObjAddr: 0x26778, symBinAddr: 0x359C0, symSize: 0x0 } - - { offsetInCU: 0x3E99, offset: 0xB08B3, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerC2Ev, symObjAddr: 0x0, symBinAddr: 0x24F20, symSize: 0x84 } - - { offsetInCU: 0x40A2, offset: 0xB0ABC, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerC2Ev.cold.1, symObjAddr: 0xF48, symBinAddr: 0x2CE90, symSize: 0x28 } - - { offsetInCU: 0x40D3, offset: 0xB0AED, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerD1Ev, symObjAddr: 0x100, symBinAddr: 0x24FA4, symSize: 0x4 } - - { offsetInCU: 0x4101, offset: 0xB0B1B, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerD1Ev, symObjAddr: 0x100, symBinAddr: 0x24FA4, symSize: 0x4 } - - { offsetInCU: 0x4114, offset: 0xB0B2E, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerD2Ev, symObjAddr: 0x190, symBinAddr: 0x25034, symSize: 0x1A4 } - - { offsetInCU: 0x4651, offset: 0xB106B, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager8instanceEv, symObjAddr: 0x104, symBinAddr: 0x24FA8, symSize: 0x8C } - - { offsetInCU: 0x4BC9, offset: 0xB15E3, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineINS_10unique_ptrINS_7log_impEEELm0EE6insertIJPS2_EEEvNS_21array_iterator_inlineIS3_S4_EEDpOT_, symObjAddr: 0xD20, symBinAddr: 0x25AEC, symSize: 0x228 } - - { offsetInCU: 0x4F98, offset: 0xB19B2, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager10create_logENS_11string_baseIcEERKS2_RKNS_5arrayIS2_Lm0EEE, symObjAddr: 0x334, symBinAddr: 0x251D8, symSize: 0x3F0 } - - { offsetInCU: 0x58F9, offset: 0xB2313, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager12reset_configERKNS_11string_baseIcEES4_, symObjAddr: 0x724, symBinAddr: 0x255C8, symSize: 0x1C8 } - - { offsetInCU: 0x5904, offset: 0xB231E, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineINS_10unique_ptrINS_7log_impEEELm0EE6insertIJPS2_EEEvNS_21array_iterator_inlineIS3_S4_EEDpOT_, symObjAddr: 0xD20, symBinAddr: 0x25AEC, symSize: 0x228 } - - { offsetInCU: 0x5D48, offset: 0xB2762, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerC2Ev.cold.1, symObjAddr: 0xF48, symBinAddr: 0x2CE90, symSize: 0x28 } - - { offsetInCU: 0x5D5E, offset: 0xB2778, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager10create_logENS_11string_baseIcEERKS2_RKNS_5arrayIS2_Lm0EEE.cold.4, symObjAddr: 0xFE4, symBinAddr: 0x2CF2C, symSize: 0x24 } - - { offsetInCU: 0x5D8A, offset: 0xB27A4, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager10create_logENS_11string_baseIcEERKS2_RKNS_5arrayIS2_Lm0EEE.cold.1, symObjAddr: 0xF70, symBinAddr: 0x2CEB8, symSize: 0x24 } - - { offsetInCU: 0x5DB6, offset: 0xB27D0, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager10create_logENS_11string_baseIcEERKS2_RKNS_5arrayIS2_Lm0EEE.cold.5, symObjAddr: 0x1008, symBinAddr: 0x2CF50, symSize: 0x24 } - - { offsetInCU: 0x5DE1, offset: 0xB27FB, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager10create_logENS_11string_baseIcEERKS2_RKNS_5arrayIS2_Lm0EEE.cold.3, symObjAddr: 0xFBC, symBinAddr: 0x2CF04, symSize: 0x28 } - - { offsetInCU: 0x5DF9, offset: 0xB2813, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager10create_logENS_11string_baseIcEERKS2_RKNS_5arrayIS2_Lm0EEE.cold.2, symObjAddr: 0xF94, symBinAddr: 0x2CEDC, symSize: 0x28 } - - { offsetInCU: 0x5E65, offset: 0xB287F, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager12reset_configERKNS_11string_baseIcEES4_, symObjAddr: 0x724, symBinAddr: 0x255C8, symSize: 0x1C8 } - - { offsetInCU: 0x6253, offset: 0xB2C6D, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager12reset_configERKNS_11string_baseIcEES4_.cold.1, symObjAddr: 0x102C, symBinAddr: 0x2CF74, symSize: 0x24 } - - { offsetInCU: 0x63E8, offset: 0xB2E02, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager17process_by_workerEPNS_7log_impEb, symObjAddr: 0x8EC, symBinAddr: 0x25790, symSize: 0xD4 } - - { offsetInCU: 0x666D, offset: 0xB3087, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager15force_flush_allEv, symObjAddr: 0x9C0, symBinAddr: 0x25864, symSize: 0x110 } - - { offsetInCU: 0x6986, offset: 0xB33A0, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager11force_flushEy, symObjAddr: 0xAD0, symBinAddr: 0x25974, symSize: 0xCC } - - { offsetInCU: 0x6B71, offset: 0xB358B, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager12awake_workerEv, symObjAddr: 0xB9C, symBinAddr: 0x25A40, symSize: 0x8 } - - { offsetInCU: 0x6B99, offset: 0xB35B3, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager17get_public_layoutEv, symObjAddr: 0xBA4, symBinAddr: 0x25A48, symSize: 0x8 } - - { offsetInCU: 0x6BC1, offset: 0xB35DB, size: 0x8, addend: 0x0, symName: __ZNK2bq11log_manager14get_logs_countEv, symObjAddr: 0xBAC, symBinAddr: 0x25A50, symSize: 0x8 } - - { offsetInCU: 0x6BEB, offset: 0xB3605, size: 0x8, addend: 0x0, symName: __ZNK2bq11log_manager14get_logs_countEv, symObjAddr: 0xBAC, symBinAddr: 0x25A50, symSize: 0x8 } - - { offsetInCU: 0x6C05, offset: 0xB361F, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager16get_log_by_indexEj, symObjAddr: 0xBB4, symBinAddr: 0x25A58, symSize: 0x94 } - - { offsetInCU: 0x7270, offset: 0xB3C8A, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineINS_10unique_ptrINS_7log_impEEELm0EE6insertIJPS2_EEEvNS_21array_iterator_inlineIS3_S4_EEDpOT_.cold.1, symObjAddr: 0x10E4, symBinAddr: 0x2CF98, symSize: 0x28 } - - { offsetInCU: 0x7288, offset: 0xB3CA2, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineINS_10unique_ptrINS_7log_impEEELm0EE6insertIJPS2_EEEvNS_21array_iterator_inlineIS3_S4_EEDpOT_.cold.3, symObjAddr: 0x1134, symBinAddr: 0x2CFE8, symSize: 0x28 } - - { offsetInCU: 0x72B5, offset: 0xB3CCF, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineINS_10unique_ptrINS_7log_impEEELm0EE6insertIJPS2_EEEvNS_21array_iterator_inlineIS3_S4_EEDpOT_.cold.2, symObjAddr: 0x110C, symBinAddr: 0x2CFC0, symSize: 0x28 } - - { offsetInCU: 0x72E2, offset: 0xB3CFC, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x115C, symBinAddr: 0x25D14, symSize: 0x8 } - - { offsetInCU: 0x31D2, offset: 0xB6EEE, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotC1EPNS_7log_impE, symObjAddr: 0x4C, symBinAddr: 0x25D1C, symSize: 0x4C } - - { offsetInCU: 0x35D9, offset: 0xB72F5, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotD2Ev, symObjAddr: 0x98, symBinAddr: 0x25D68, symSize: 0xD4 } - - { offsetInCU: 0x3A76, offset: 0xB7792, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotD1Ev, symObjAddr: 0x16C, symBinAddr: 0x25E3C, symSize: 0x4 } - - { offsetInCU: 0x3AA4, offset: 0xB77C0, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotD1Ev, symObjAddr: 0x16C, symBinAddr: 0x25E3C, symSize: 0x4 } - - { offsetInCU: 0x3ACE, offset: 0xB77EA, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot17reset_buffer_sizeEj, symObjAddr: 0x170, symBinAddr: 0x25E40, symSize: 0xD0 } - - { offsetInCU: 0x3CBB, offset: 0xB79D7, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot10write_dataEPKhj, symObjAddr: 0x240, symBinAddr: 0x25F10, symSize: 0xF4 } - - { offsetInCU: 0x402B, offset: 0xB7D47, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot20take_snapshot_stringEb, symObjAddr: 0x334, symBinAddr: 0x26004, symSize: 0x1E0 } - - { offsetInCU: 0x46F0, offset: 0xB840C, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot23release_snapshot_stringEv, symObjAddr: 0x7C8, symBinAddr: 0x261E4, symSize: 0xC } - - { offsetInCU: 0x48D4, offset: 0xB85F0, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot23release_snapshot_stringEv, symObjAddr: 0x7C8, symBinAddr: 0x261E4, symSize: 0xC } - - { offsetInCU: 0x48FD, offset: 0xB8619, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot23release_snapshot_stringEv, symObjAddr: 0x7C8, symBinAddr: 0x261E4, symSize: 0xC } - - { offsetInCU: 0x491B, offset: 0xB8637, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot23release_snapshot_stringEv, symObjAddr: 0x7C8, symBinAddr: 0x261E4, symSize: 0xC } - - { offsetInCU: 0x26, offset: 0xB88C4, size: 0x8, addend: 0x0, symName: __ZN2bq11thread_info4initEv, symObjAddr: 0x0, symBinAddr: 0x261F0, symSize: 0xA4 } - - { offsetInCU: 0xABA, offset: 0xB9358, size: 0x8, addend: 0x0, symName: __ZN2bq11thread_info4initEv, symObjAddr: 0x0, symBinAddr: 0x261F0, symSize: 0xA4 } - - { offsetInCU: 0x45, offset: 0xB94BC, size: 0x8, addend: 0x0, symName: __ZN2bqL19log_worker_name_seqE, symObjAddr: 0x1B7B0, symBinAddr: 0x359B0, symSize: 0x0 } - - { offsetInCU: 0x2A77, offset: 0xBBEEE, size: 0x8, addend: 0x0, symName: __ZN2bq10log_workerC1Ev, symObjAddr: 0x50, symBinAddr: 0x26294, symSize: 0x50 } - - { offsetInCU: 0x2B35, offset: 0xBBFAC, size: 0x8, addend: 0x0, symName: __ZN2bq10log_workerD1Ev, symObjAddr: 0xE0, symBinAddr: 0x262E4, symSize: 0x40 } - - { offsetInCU: 0x2B8F, offset: 0xBC006, size: 0x8, addend: 0x0, symName: __ZN2bq10log_workerD0Ev, symObjAddr: 0x120, symBinAddr: 0x26324, symSize: 0x44 } - - { offsetInCU: 0x2DC0, offset: 0xBC237, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker4initENS_15log_thread_modeEPNS_7log_impE, symObjAddr: 0x164, symBinAddr: 0x26368, symSize: 0x174 } - - { offsetInCU: 0x3106, offset: 0xBC57D, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker5awakeEv, symObjAddr: 0x2D8, symBinAddr: 0x264DC, symSize: 0x8 } - - { offsetInCU: 0x3110, offset: 0xBC587, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker4initENS_15log_thread_modeEPNS_7log_impE.cold.1, symObjAddr: 0x468, symBinAddr: 0x2D010, symSize: 0x28 } - - { offsetInCU: 0x317C, offset: 0xBC5F3, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker4initENS_15log_thread_modeEPNS_7log_impE.cold.2, symObjAddr: 0x490, symBinAddr: 0x2D038, symSize: 0x28 } - - { offsetInCU: 0x31E8, offset: 0xBC65F, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker5awakeEv, symObjAddr: 0x2D8, symBinAddr: 0x264DC, symSize: 0x8 } - - { offsetInCU: 0x32AC, offset: 0xBC723, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker20awake_and_wait_beginEPNS_7log_impE, symObjAddr: 0x2E0, symBinAddr: 0x264E4, symSize: 0x60 } - - { offsetInCU: 0x335F, offset: 0xBC7D6, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker19awake_and_wait_joinEv, symObjAddr: 0x340, symBinAddr: 0x26544, symSize: 0x3C } - - { offsetInCU: 0x3440, offset: 0xBC8B7, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker3runEv, symObjAddr: 0x37C, symBinAddr: 0x26580, symSize: 0xE8 } - - { offsetInCU: 0x35F0, offset: 0xBCA67, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker3runEv.cold.1, symObjAddr: 0x4B8, symBinAddr: 0x2D060, symSize: 0x28 } - - { offsetInCU: 0x26, offset: 0xBCAB0, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferC2Ejy, symObjAddr: 0x0, symBinAddr: 0x26668, symSize: 0x1DC } - - { offsetInCU: 0x12B7, offset: 0xBDD41, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferC2Ejy, symObjAddr: 0x0, symBinAddr: 0x26668, symSize: 0x1DC } - - { offsetInCU: 0x177A, offset: 0xBE204, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer17create_memory_mapEjy, symObjAddr: 0x1DC, symBinAddr: 0x26844, symSize: 0x2CC } - - { offsetInCU: 0x1C77, offset: 0xBE701, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer33try_recover_from_exist_memory_mapEv, symObjAddr: 0x560, symBinAddr: 0x26B10, symSize: 0x11C } - - { offsetInCU: 0x205E, offset: 0xBEAE8, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer17create_memory_mapEjy.cold.1, symObjAddr: 0xA54, symBinAddr: 0x2D088, symSize: 0x28 } - - { offsetInCU: 0x2132, offset: 0xBEBBC, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferC1Ejy, symObjAddr: 0x6C8, symBinAddr: 0x26C2C, symSize: 0x4 } - - { offsetInCU: 0x217C, offset: 0xBEC06, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferC1Ejy, symObjAddr: 0x6C8, symBinAddr: 0x26C2C, symSize: 0x4 } - - { offsetInCU: 0x21CE, offset: 0xBEC58, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferD1Ev, symObjAddr: 0x748, symBinAddr: 0x26C30, symSize: 0x4C } - - { offsetInCU: 0x240D, offset: 0xBEE97, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer17alloc_write_chunkEj, symObjAddr: 0x794, symBinAddr: 0x26C7C, symSize: 0x124 } - - { offsetInCU: 0x267C, offset: 0xBF106, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer18commit_write_chunkERKNS_24ring_buffer_write_handleE, symObjAddr: 0x8B8, symBinAddr: 0x26DA0, symSize: 0x24 } - - { offsetInCU: 0x2710, offset: 0xBF19A, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer10begin_readEv, symObjAddr: 0x8DC, symBinAddr: 0x26DC4, symSize: 0x10 } - - { offsetInCU: 0x2775, offset: 0xBF1FF, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer4readEv, symObjAddr: 0x8EC, symBinAddr: 0x26DD4, symSize: 0xA4 } - - { offsetInCU: 0x286B, offset: 0xBF2F5, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer8end_readEv, symObjAddr: 0x990, symBinAddr: 0x26E78, symSize: 0xC4 } - - { offsetInCU: 0x2875, offset: 0xBF2FF, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer4readEv.cold.1, symObjAddr: 0xA7C, symBinAddr: 0x2D0B0, symSize: 0x28 } - - { offsetInCU: 0x288C, offset: 0xBF316, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer8end_readEv, symObjAddr: 0x990, symBinAddr: 0x26E78, symSize: 0xC4 } + - { offsetInCU: 0x31A3, offset: 0x4DB6, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcED1Ev, symObjAddr: 0x50, symBinAddr: 0x4290, symSize: 0x38 } + - { offsetInCU: 0x3331, offset: 0x4F44, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE12insert_batchENS_14array_iteratorIcS1_EENS2_IKcS1_EEm, symObjAddr: 0x7BC, symBinAddr: 0x48F8, symSize: 0x160 } + - { offsetInCU: 0x3602, offset: 0x5215, size: 0x8, addend: 0x0, symName: __ZN2bq8platform21get_stack_trace_utf16EjRPKDsRj, symObjAddr: 0x91C, symBinAddr: 0x4A58, symSize: 0x504 } + - { offsetInCU: 0x36B5, offset: 0x52C8, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIDsED1Ev, symObjAddr: 0x2D0, symBinAddr: 0x440C, symSize: 0x38 } + - { offsetInCU: 0x3833, offset: 0x5446, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE6insertIJcEEEvNS_14array_iteratorIcS1_EEDpOT_, symObjAddr: 0xE20, symBinAddr: 0x4F5C, symSize: 0x154 } + - { offsetInCU: 0x3AD1, offset: 0x56E4, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE12insert_batchENS_14array_iteratorIcS1_EENS2_IKcS1_EEm.cold.1, symObjAddr: 0xF74, symBinAddr: 0x2711C, symSize: 0x28 } + - { offsetInCU: 0x3B93, offset: 0x57A6, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE12insert_batchENS_14array_iteratorIcS1_EENS2_IKcS1_EEm.cold.1, symObjAddr: 0xF74, symBinAddr: 0x2711C, symSize: 0x28 } + - { offsetInCU: 0x3BAA, offset: 0x57BD, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE12insert_batchENS_14array_iteratorIcS1_EENS2_IKcS1_EEm.cold.3, symObjAddr: 0xFC0, symBinAddr: 0x27168, symSize: 0x24 } + - { offsetInCU: 0x3BD7, offset: 0x57EA, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE12insert_batchENS_14array_iteratorIcS1_EENS2_IKcS1_EEm.cold.2, symObjAddr: 0xF9C, symBinAddr: 0x27144, symSize: 0x24 } + - { offsetInCU: 0x3D61, offset: 0x5974, size: 0x8, addend: 0x0, symName: __ZN2bq8platform21get_stack_trace_utf16EjRPKDsRj.cold.1, symObjAddr: 0xFE4, symBinAddr: 0x2718C, symSize: 0x28 } + - { offsetInCU: 0x3D8D, offset: 0x59A0, size: 0x8, addend: 0x0, symName: __ZN2bq8platform21get_stack_trace_utf16EjRPKDsRj.cold.2, symObjAddr: 0x100C, symBinAddr: 0x271B4, symSize: 0x24 } + - { offsetInCU: 0x3DCF, offset: 0x59E2, size: 0x8, addend: 0x0, symName: __ZN2bq8platform21get_stack_trace_utf16EjRPKDsRj.cold.3, symObjAddr: 0x1030, symBinAddr: 0x271D8, symSize: 0x24 } + - { offsetInCU: 0x3E55, offset: 0x5A68, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE6insertIJcEEEvNS_14array_iteratorIcS1_EEDpOT_.cold.1, symObjAddr: 0x1054, symBinAddr: 0x271FC, symSize: 0x28 } + - { offsetInCU: 0x3E6C, offset: 0x5A7F, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE6insertIJcEEEvNS_14array_iteratorIcS1_EEDpOT_.cold.3, symObjAddr: 0x10A0, symBinAddr: 0x27248, symSize: 0x24 } + - { offsetInCU: 0x3E99, offset: 0x5AAC, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIcLm1EE6insertIJcEEEvNS_14array_iteratorIcS1_EEDpOT_.cold.2, symObjAddr: 0x107C, symBinAddr: 0x27224, symSize: 0x24 } + - { offsetInCU: 0x3EC6, offset: 0x5AD9, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x10C4, symBinAddr: 0x50B0, symSize: 0x8 } + - { offsetInCU: 0x3EDD, offset: 0x5AF0, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x10CC, symBinAddr: 0x50B8, symSize: 0x8 } + - { offsetInCU: 0x6A, offset: 0x5B99, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL20file_exclusive_cacheE, symObjAddr: 0x1BC38, symBinAddr: 0x34890, symSize: 0x0 } + - { offsetInCU: 0xF8, offset: 0x5C27, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL20file_exclusive_mutexE, symObjAddr: 0x1BC70, symBinAddr: 0x348C8, symSize: 0x0 } + - { offsetInCU: 0x2A1, offset: 0x5DD0, size: 0x8, addend: 0x0, symName: __ZN2bq8platform13get_file_sizeEPKcRm, symObjAddr: 0x0, symBinAddr: 0x5108, symSize: 0x64 } + - { offsetInCU: 0x315, offset: 0x5E44, size: 0x8, addend: 0x0, symName: __ZN2bq8platform13get_file_sizeERKiRm, symObjAddr: 0x64, symBinAddr: 0x516C, symSize: 0x68 } + - { offsetInCU: 0x382, offset: 0x5EB1, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6is_dirEPKc, symObjAddr: 0xCC, symBinAddr: 0x51D4, symSize: 0x40 } + - { offsetInCU: 0x3CB, offset: 0x5EFA, size: 0x8, addend: 0x0, symName: __ZN2bq8platform15is_regular_fileEPKc, symObjAddr: 0x10C, symBinAddr: 0x5214, symSize: 0x40 } + - { offsetInCU: 0x462, offset: 0x5F91, size: 0x8, addend: 0x0, symName: __ZN2bq8platform8make_dirEPKc, symObjAddr: 0x14C, symBinAddr: 0x5254, symSize: 0x68 } + - { offsetInCU: 0x502, offset: 0x6031, size: 0x8, addend: 0x0, symName: __ZN2bq8platformL18make_dir_recursiveEPc, symObjAddr: 0x1B4, symBinAddr: 0x52BC, symSize: 0x9C } + - { offsetInCU: 0x5ED, offset: 0x611C, size: 0x8, addend: 0x0, symName: __ZN2bq8platform13truncate_fileERKim, symObjAddr: 0x318, symBinAddr: 0x5358, symSize: 0x24 } + - { offsetInCU: 0x669, offset: 0x6198, size: 0x8, addend: 0x0, symName: __ZN2bq8platform24remove_dir_or_file_innerEPcm, symObjAddr: 0x33C, symBinAddr: 0x537C, symSize: 0x160 } + - { offsetInCU: 0x81C, offset: 0x634B, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18remove_dir_or_fileEPKc, symObjAddr: 0x49C, symBinAddr: 0x54DC, symSize: 0xD8 } + - { offsetInCU: 0x96F, offset: 0x649E, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9open_fileEPKcNS0_19file_open_mode_enumERi, symObjAddr: 0x598, symBinAddr: 0x55D8, symSize: 0x1E8 } + - { offsetInCU: 0xD6B, offset: 0x689A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform10close_fileERi, symObjAddr: 0x780, symBinAddr: 0x57C0, symSize: 0xA4 } + - { offsetInCU: 0xDB4, offset: 0x68E3, size: 0x8, addend: 0x0, symName: __ZN2bq8platform10close_fileERi, symObjAddr: 0x780, symBinAddr: 0x57C0, symSize: 0xA4 } + - { offsetInCU: 0xEC5, offset: 0x69F4, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9read_fileERKiPvmRm, symObjAddr: 0x824, symBinAddr: 0x5864, symSize: 0x8C } + - { offsetInCU: 0xF8C, offset: 0x6ABB, size: 0x8, addend: 0x0, symName: __ZN2bq8platform10write_fileERKiPKvmRm, symObjAddr: 0x8B0, symBinAddr: 0x58F0, symSize: 0x8C } + - { offsetInCU: 0x1053, offset: 0x6B82, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9seek_fileERKiNS0_16file_seek_optionEx, symObjAddr: 0x93C, symBinAddr: 0x597C, symSize: 0x48 } + - { offsetInCU: 0x10E1, offset: 0x6C10, size: 0x8, addend: 0x0, symName: __ZN2bq8platform10flush_fileERKi, symObjAddr: 0x984, symBinAddr: 0x59C4, symSize: 0x24 } + - { offsetInCU: 0x111D, offset: 0x6C4C, size: 0x8, addend: 0x0, symName: __ZN2bq8platform17get_all_sub_namesEPKc, symObjAddr: 0x9A8, symBinAddr: 0x59E8, symSize: 0xCC } + - { offsetInCU: 0x2D0C, offset: 0x883B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE12expand_nodesEj, symObjAddr: 0xE64, symBinAddr: 0x5EA4, symSize: 0x1CC } + - { offsetInCU: 0x2EF2, offset: 0x8A21, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseERKS2_, symObjAddr: 0x1030, symBinAddr: 0x6070, symSize: 0xD4 } + - { offsetInCU: 0x385C, offset: 0x938B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEED1Ev, symObjAddr: 0x574, symBinAddr: 0x55B4, symSize: 0x24 } + - { offsetInCU: 0x38B8, offset: 0x93E7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5resetEv, symObjAddr: 0x1244, symBinAddr: 0x6284, symSize: 0xB8 } + - { offsetInCU: 0x39F5, offset: 0x9524, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRPKcEEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x12FC, symBinAddr: 0x633C, symSize: 0x244 } + - { offsetInCU: 0x3CF7, offset: 0x9826, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_, symObjAddr: 0xA74, symBinAddr: 0x5AB4, symSize: 0x21C } + - { offsetInCU: 0x417C, offset: 0x9CAB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj, symObjAddr: 0xC90, symBinAddr: 0x5CD0, symSize: 0x1D4 } + - { offsetInCU: 0x419C, offset: 0x9CCB, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9open_fileEPKcNS0_19file_open_mode_enumERi.cold.2, symObjAddr: 0x16C4, symBinAddr: 0x27290, symSize: 0x24 } + - { offsetInCU: 0x420A, offset: 0x9D39, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9open_fileEPKcNS0_19file_open_mode_enumERi.cold.1, symObjAddr: 0x16A0, symBinAddr: 0x2726C, symSize: 0x24 } + - { offsetInCU: 0x428D, offset: 0x9DBC, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9open_fileEPKcNS0_19file_open_mode_enumERi.cold.3, symObjAddr: 0x16E8, symBinAddr: 0x272B4, symSize: 0x24 } + - { offsetInCU: 0x42FB, offset: 0x9E2A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseERKS2_, symObjAddr: 0x1030, symBinAddr: 0x6070, symSize: 0xD4 } + - { offsetInCU: 0x458D, offset: 0xA0BC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseENS_17hash_map_iteratorIS2_S3_Lb0EEE, symObjAddr: 0x1104, symBinAddr: 0x6144, symSize: 0x140 } + - { offsetInCU: 0x468B, offset: 0xA1BA, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRPKcEEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x12FC, symBinAddr: 0x633C, symSize: 0x244 } + - { offsetInCU: 0x4DAC, offset: 0xA8DB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj, symObjAddr: 0xC90, symBinAddr: 0x5CD0, symSize: 0x1D4 } + - { offsetInCU: 0x50E0, offset: 0xAC0F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE12expand_nodesEj, symObjAddr: 0xE64, symBinAddr: 0x5EA4, symSize: 0x1CC } + - { offsetInCU: 0x50EA, offset: 0xAC19, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.2, symObjAddr: 0x1734, symBinAddr: 0x27300, symSize: 0x24 } + - { offsetInCU: 0x5142, offset: 0xAC71, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.9, symObjAddr: 0x1834, symBinAddr: 0x27400, symSize: 0x24 } + - { offsetInCU: 0x5185, offset: 0xACB4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.7, symObjAddr: 0x17E8, symBinAddr: 0x273B4, symSize: 0x24 } + - { offsetInCU: 0x51B2, offset: 0xACE1, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.1, symObjAddr: 0x170C, symBinAddr: 0x272D8, symSize: 0x28 } + - { offsetInCU: 0x51C9, offset: 0xACF8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.5, symObjAddr: 0x17A0, symBinAddr: 0x2736C, symSize: 0x24 } + - { offsetInCU: 0x51F6, offset: 0xAD25, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.10, symObjAddr: 0x1858, symBinAddr: 0x27424, symSize: 0x24 } + - { offsetInCU: 0x5239, offset: 0xAD68, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.6, symObjAddr: 0x17C4, symBinAddr: 0x27390, symSize: 0x24 } + - { offsetInCU: 0x5266, offset: 0xAD95, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.4, symObjAddr: 0x177C, symBinAddr: 0x27348, symSize: 0x24 } + - { offsetInCU: 0x5293, offset: 0xADC2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.3, symObjAddr: 0x1758, symBinAddr: 0x27324, symSize: 0x24 } + - { offsetInCU: 0x52C0, offset: 0xADEF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE17alloc_node_by_keyERKS2_.cold.8, symObjAddr: 0x180C, symBinAddr: 0x273D8, symSize: 0x28 } + - { offsetInCU: 0x52D7, offset: 0xAE06, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj.cold.7, symObjAddr: 0x1954, symBinAddr: 0x27520, symSize: 0x24 } + - { offsetInCU: 0x5304, offset: 0xAE33, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj.cold.6, symObjAddr: 0x1930, symBinAddr: 0x274FC, symSize: 0x24 } + - { offsetInCU: 0x5331, offset: 0xAE60, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj.cold.5, symObjAddr: 0x190C, symBinAddr: 0x274D8, symSize: 0x24 } + - { offsetInCU: 0x535E, offset: 0xAE8D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj.cold.4, symObjAddr: 0x18E8, symBinAddr: 0x274B4, symSize: 0x24 } + - { offsetInCU: 0x538B, offset: 0xAEBA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj.cold.3, symObjAddr: 0x18C4, symBinAddr: 0x27490, symSize: 0x24 } + - { offsetInCU: 0x53B8, offset: 0xAEE7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj.cold.2, symObjAddr: 0x18A0, symBinAddr: 0x2746C, symSize: 0x24 } + - { offsetInCU: 0x53E5, offset: 0xAF14, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE14expand_bucketsEj.cold.1, symObjAddr: 0x187C, symBinAddr: 0x27448, symSize: 0x24 } + - { offsetInCU: 0x5478, offset: 0xAFA7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE12expand_nodesEj.cold.1, symObjAddr: 0x1978, symBinAddr: 0x27544, symSize: 0x24 } + - { offsetInCU: 0x54BA, offset: 0xAFE9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE12expand_nodesEj.cold.2, symObjAddr: 0x199C, symBinAddr: 0x27568, symSize: 0x24 } + - { offsetInCU: 0x54FC, offset: 0xB02B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE12expand_nodesEj.cold.3, symObjAddr: 0x19C0, symBinAddr: 0x2758C, symSize: 0x24 } + - { offsetInCU: 0x557C, offset: 0xB0AB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseENS_17hash_map_iteratorIS2_S3_Lb0EEE, symObjAddr: 0x1104, symBinAddr: 0x6144, symSize: 0x140 } + - { offsetInCU: 0x5774, offset: 0xB2A3, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5resetEv, symObjAddr: 0x1244, symBinAddr: 0x6284, symSize: 0xB8 } + - { offsetInCU: 0x577E, offset: 0xB2AD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseERKS2_.cold.1, symObjAddr: 0x19E4, symBinAddr: 0x275B0, symSize: 0x24 } + - { offsetInCU: 0x57D6, offset: 0xB305, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseERKS2_.cold.2, symObjAddr: 0x1A08, symBinAddr: 0x275D4, symSize: 0x24 } + - { offsetInCU: 0x5874, offset: 0xB3A3, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseENS_17hash_map_iteratorIS2_S3_Lb0EEE.cold.3, symObjAddr: 0x1A74, symBinAddr: 0x27640, symSize: 0x24 } + - { offsetInCU: 0x58A1, offset: 0xB3D0, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseENS_17hash_map_iteratorIS2_S3_Lb0EEE.cold.1, symObjAddr: 0x1A2C, symBinAddr: 0x275F8, symSize: 0x24 } + - { offsetInCU: 0x590F, offset: 0xB43E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseENS_17hash_map_iteratorIS2_S3_Lb0EEE.cold.5, symObjAddr: 0x1ABC, symBinAddr: 0x27688, symSize: 0x24 } + - { offsetInCU: 0x593C, offset: 0xB46B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseENS_17hash_map_iteratorIS2_S3_Lb0EEE.cold.4, symObjAddr: 0x1A98, symBinAddr: 0x27664, symSize: 0x24 } + - { offsetInCU: 0x5969, offset: 0xB498, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5eraseENS_17hash_map_iteratorIS2_S3_Lb0EEE.cold.2, symObjAddr: 0x1A50, symBinAddr: 0x2761C, symSize: 0x24 } + - { offsetInCU: 0x5996, offset: 0xB4C5, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5resetEv.cold.1, symObjAddr: 0x1AE0, symBinAddr: 0x276AC, symSize: 0x24 } + - { offsetInCU: 0x59D8, offset: 0xB507, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5resetEv.cold.2, symObjAddr: 0x1B04, symBinAddr: 0x276D0, symSize: 0x24 } + - { offsetInCU: 0x5A46, offset: 0xB575, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_8platform20posix_file_node_infoENS1_19file_open_mode_enumEE5resetEv.cold.3, symObjAddr: 0x1B28, symBinAddr: 0x276F4, symSize: 0x24 } + - { offsetInCU: 0x5F07, offset: 0xBA36, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9open_fileEPKcNS0_19file_open_mode_enumERi.cold.1, symObjAddr: 0x16A0, symBinAddr: 0x2726C, symSize: 0x24 } + - { offsetInCU: 0x5F11, offset: 0xBA40, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRPKcEEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x1B4C, symBinAddr: 0x27718, symSize: 0x28 } + - { offsetInCU: 0x5F28, offset: 0xBA57, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRPKcEEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.3, symObjAddr: 0x1B9C, symBinAddr: 0x27768, symSize: 0x28 } + - { offsetInCU: 0x5F55, offset: 0xBA84, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRPKcEEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x1B74, symBinAddr: 0x27740, symSize: 0x28 } + - { offsetInCU: 0x6088, offset: 0xBBB7, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x1C3C, symBinAddr: 0x6580, symSize: 0x8 } + - { offsetInCU: 0x609F, offset: 0xBBCE, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x1C44, symBinAddr: 0x6588, symSize: 0x8 } + - { offsetInCU: 0x904, offset: 0xC50A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variableC1Ev, symObjAddr: 0x40, symBinAddr: 0x6628, symSize: 0x40 } + - { offsetInCU: 0x9B4, offset: 0xC5BA, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variableD1Ev, symObjAddr: 0xB8, symBinAddr: 0x6668, symSize: 0x38 } + - { offsetInCU: 0xA08, offset: 0xC60E, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variable8wait_forERNS0_5mutexEy, symObjAddr: 0x140, symBinAddr: 0x66A0, symSize: 0xD4 } + - { offsetInCU: 0xAFF, offset: 0xC705, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18condition_variable10notify_allEv, symObjAddr: 0x21C, symBinAddr: 0x6774, symSize: 0x8 } + - { offsetInCU: 0x26, offset: 0xC773, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC2Ev, symObjAddr: 0x0, symBinAddr: 0x677C, symSize: 0x94 } + - { offsetInCU: 0xDB2, offset: 0xD4FF, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC2Ev, symObjAddr: 0x0, symBinAddr: 0x677C, symSize: 0x94 } + - { offsetInCU: 0xEE6, offset: 0xD633, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC2Ev.cold.1, symObjAddr: 0x428, symBinAddr: 0x27790, symSize: 0x50 } + - { offsetInCU: 0xEFD, offset: 0xD64A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC1Ev, symObjAddr: 0x94, symBinAddr: 0x6810, symSize: 0x4 } + - { offsetInCU: 0xF2B, offset: 0xD678, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC1Ev, symObjAddr: 0x94, symBinAddr: 0x6810, symSize: 0x4 } + - { offsetInCU: 0xF3E, offset: 0xD68B, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC2Eb, symObjAddr: 0x98, symBinAddr: 0x6814, symSize: 0xA4 } + - { offsetInCU: 0xFE0, offset: 0xD72D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC2Eb.cold.1, symObjAddr: 0x478, symBinAddr: 0x277E0, symSize: 0x50 } + - { offsetInCU: 0xFF7, offset: 0xD744, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC1Eb, symObjAddr: 0x13C, symBinAddr: 0x68B8, symSize: 0x4 } + - { offsetInCU: 0x1038, offset: 0xD785, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexC1Eb, symObjAddr: 0x13C, symBinAddr: 0x68B8, symSize: 0x4 } + - { offsetInCU: 0x1090, offset: 0xD7DD, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutexD1Ev, symObjAddr: 0x1A4, symBinAddr: 0x68BC, symSize: 0x64 } + - { offsetInCU: 0x120F, offset: 0xD95C, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex4lockEv, symObjAddr: 0x208, symBinAddr: 0x6920, symSize: 0x98 } + - { offsetInCU: 0x1329, offset: 0xDA76, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex4lockEv.cold.1, symObjAddr: 0x4C8, symBinAddr: 0x27830, symSize: 0x70 } + - { offsetInCU: 0x1380, offset: 0xDACD, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex6unlockEv, symObjAddr: 0x380, symBinAddr: 0x69B8, symSize: 0xA0 } + - { offsetInCU: 0x147E, offset: 0xDBCB, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex19get_platform_handleEv, symObjAddr: 0x420, symBinAddr: 0x6A58, symSize: 0x8 } + - { offsetInCU: 0x149A, offset: 0xDBE7, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex6unlockEv.cold.1, symObjAddr: 0x5A8, symBinAddr: 0x278A0, symSize: 0x70 } + - { offsetInCU: 0x14F1, offset: 0xDC3E, size: 0x8, addend: 0x0, symName: __ZN2bq8platform5mutex19get_platform_handleEv, symObjAddr: 0x420, symBinAddr: 0x6A58, symSize: 0x8 } + - { offsetInCU: 0x1519, offset: 0xDC66, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x618, symBinAddr: 0x6A60, symSize: 0xC } + - { offsetInCU: 0x1530, offset: 0xDC7D, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x624, symBinAddr: 0x6A6C, symSize: 0x8 } + - { offsetInCU: 0x1547, offset: 0xDC94, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x62C, symBinAddr: 0x6A74, symSize: 0x8 } + - { offsetInCU: 0x26, offset: 0xDCD1, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9spin_lock5yieldEv, symObjAddr: 0x0, symBinAddr: 0x6A7C, symSize: 0x4 } + - { offsetInCU: 0x155C, offset: 0xF207, size: 0x8, addend: 0x0, symName: __ZN2bq8platform9spin_lock5yieldEv, symObjAddr: 0x0, symBinAddr: 0x6A7C, symSize: 0x4 } + - { offsetInCU: 0x15F6, offset: 0xF2A1, size: 0x8, addend: 0x0, symName: __ZN2bq8platform18spin_lock_rw_crazy5yieldEv, symObjAddr: 0x4, symBinAddr: 0x6A80, symSize: 0x4 } + - { offsetInCU: 0x26, offset: 0xF2F8, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread6cancelEv, symObjAddr: 0x0, symBinAddr: 0x6A84, symSize: 0x54 } + - { offsetInCU: 0x1012, offset: 0x102E4, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread6cancelEv, symObjAddr: 0x0, symBinAddr: 0x6A84, symSize: 0x54 } + - { offsetInCU: 0x10E7, offset: 0x103B9, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread12is_cancelledEv, symObjAddr: 0x54, symBinAddr: 0x6AD8, symSize: 0x14 } + - { offsetInCU: 0x26, offset: 0x10450, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadC2ENS0_11thread_attrE, symObjAddr: 0x0, symBinAddr: 0x6AEC, symSize: 0x4C } + - { offsetInCU: 0x12E6, offset: 0x11710, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadC2ENS0_11thread_attrE, symObjAddr: 0x0, symBinAddr: 0x6AEC, symSize: 0x4C } + - { offsetInCU: 0x15C9, offset: 0x119F3, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread15set_thread_nameERKNS_11string_baseIcEE, symObjAddr: 0x4C, symBinAddr: 0x6B38, symSize: 0x1A0 } + - { offsetInCU: 0x1AB1, offset: 0x11EDB, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread5startEv, symObjAddr: 0x1EC, symBinAddr: 0x6CD8, symSize: 0x1E4 } + - { offsetInCU: 0x1C73, offset: 0x1209D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread15set_thread_nameERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x8CC, symBinAddr: 0x27910, symSize: 0x24 } + - { offsetInCU: 0x1C7D, offset: 0x120A7, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread15set_thread_nameERKNS_11string_baseIcEE.cold.2, symObjAddr: 0x8F0, symBinAddr: 0x27934, symSize: 0x28 } + - { offsetInCU: 0x1CA9, offset: 0x120D3, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread15set_thread_nameERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x8CC, symBinAddr: 0x27910, symSize: 0x24 } + - { offsetInCU: 0x1CEB, offset: 0x12115, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread15set_thread_nameERKNS_11string_baseIcEE.cold.3, symObjAddr: 0x918, symBinAddr: 0x2795C, symSize: 0x24 } + - { offsetInCU: 0x1DAD, offset: 0x121D7, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread5startEv, symObjAddr: 0x1EC, symBinAddr: 0x6CD8, symSize: 0x1E4 } + - { offsetInCU: 0x224B, offset: 0x12675, size: 0x8, addend: 0x0, symName: __ZN2bq8platform25thread_platform_processor14thread_processEPv, symObjAddr: 0x3D0, symBinAddr: 0x6EBC, symSize: 0x98 } + - { offsetInCU: 0x2439, offset: 0x12863, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread4joinEv, symObjAddr: 0x468, symBinAddr: 0x6F54, symSize: 0x74 } + - { offsetInCU: 0x251F, offset: 0x12949, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread5yieldEv, symObjAddr: 0x4DC, symBinAddr: 0x6FC8, symSize: 0x38 } + - { offsetInCU: 0x25E0, offset: 0x12A0A, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread5sleepEy, symObjAddr: 0x514, symBinAddr: 0x7000, symSize: 0x60 } + - { offsetInCU: 0x262D, offset: 0x12A57, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread9cpu_relaxEv, symObjAddr: 0x574, symBinAddr: 0x7060, symSize: 0x8 } + - { offsetInCU: 0x2699, offset: 0x12AC3, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread23get_current_thread_nameEv, symObjAddr: 0x57C, symBinAddr: 0x7068, symSize: 0xB4 } + - { offsetInCU: 0x2835, offset: 0x12C5F, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread21get_current_thread_idEv, symObjAddr: 0x630, symBinAddr: 0x711C, symSize: 0x3C } + - { offsetInCU: 0x2863, offset: 0x12C8D, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadD2Ev, symObjAddr: 0x66C, symBinAddr: 0x7158, symSize: 0x50 } + - { offsetInCU: 0x2906, offset: 0x12D30, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadD1Ev, symObjAddr: 0x6BC, symBinAddr: 0x71A8, symSize: 0x4 } + - { offsetInCU: 0x292E, offset: 0x12D58, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6threadD0Ev, symObjAddr: 0x6C0, symBinAddr: 0x71AC, symSize: 0x4 } + - { offsetInCU: 0x2956, offset: 0x12D80, size: 0x8, addend: 0x0, symName: __ZN2bq8platform6thread11on_finishedEv, symObjAddr: 0x768, symBinAddr: 0x71B0, symSize: 0x4 } + - { offsetInCU: 0x2A2C, offset: 0x12E56, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x9B0, symBinAddr: 0x71B4, symSize: 0x8 } + - { offsetInCU: 0x3F, offset: 0x12EBA, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18static_inst_cache_E, symObjAddr: 0x3CA08, symBinAddr: 0x35A58, symSize: 0x0 } + - { offsetInCU: 0x170C, offset: 0x14587, size: 0x8, addend: 0x0, symName: __ZN2bqplIcEENS_11string_baseIT_EEPKNS3_9char_typeERKS3_, symObjAddr: 0x1ABC, symBinAddr: 0x87C0, symSize: 0x1B8 } + - { offsetInCU: 0x1B5F, offset: 0x149DA, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE4trimEv, symObjAddr: 0x1C74, symBinAddr: 0x8978, symSize: 0x188 } + - { offsetInCU: 0x2122, offset: 0x14F9D, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12get_base_dirEb, symObjAddr: 0xA8, symBinAddr: 0x71BC, symSize: 0x4 } + - { offsetInCU: 0x2146, offset: 0x14FC1, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12get_base_dirEb, symObjAddr: 0xA8, symBinAddr: 0x71BC, symSize: 0x4 } + - { offsetInCU: 0x22E7, offset: 0x15162, size: 0x8, addend: 0x0, symName: __ZN2bq12file_managerD2Ev, symObjAddr: 0x154, symBinAddr: 0x71C0, symSize: 0x9C } + - { offsetInCU: 0x2463, offset: 0x152DE, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager22flush_all_opened_filesEv, symObjAddr: 0x1F0, symBinAddr: 0x725C, symSize: 0x108 } + - { offsetInCU: 0x2753, offset: 0x155CE, size: 0x8, addend: 0x0, symName: __ZN2bq12file_managerD1Ev, symObjAddr: 0x2F8, symBinAddr: 0x7364, symSize: 0x4 } + - { offsetInCU: 0x2781, offset: 0x155FC, size: 0x8, addend: 0x0, symName: __ZN2bq12file_managerD1Ev, symObjAddr: 0x2F8, symBinAddr: 0x7364, symSize: 0x4 } + - { offsetInCU: 0x27B8, offset: 0x15633, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager8instanceEv, symObjAddr: 0x2FC, symBinAddr: 0x7368, symSize: 0x128 } + - { offsetInCU: 0x2A21, offset: 0x1589C, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager44trans_process_relative_path_to_absolute_pathERKNS_11string_baseIcEEb, symObjAddr: 0x49C, symBinAddr: 0x7490, symSize: 0x104 } + - { offsetInCU: 0x2E32, offset: 0x15CAD, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x3ECC, symBinAddr: 0x9F54, symSize: 0x25C } + - { offsetInCU: 0x2E3C, offset: 0x15CB7, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_, symObjAddr: 0x5CC, symBinAddr: 0x7594, symSize: 0x59C } + - { offsetInCU: 0x46B1, offset: 0x1752C, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE, symObjAddr: 0xB68, symBinAddr: 0x7B30, symSize: 0x590 } + - { offsetInCU: 0x46BB, offset: 0x17536, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE, symObjAddr: 0xB68, symBinAddr: 0x7B30, symSize: 0x590 } + - { offsetInCU: 0x5922, offset: 0x1879D, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager44trans_process_relative_path_to_absolute_pathERKNS_11string_baseIcEEb.cold.1, symObjAddr: 0x4658, symBinAddr: 0x27980, symSize: 0x24 } + - { offsetInCU: 0x5C2D, offset: 0x18AA8, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE7replaceERKS1_S3_, symObjAddr: 0x12AC, symBinAddr: 0x80C0, symSize: 0x198 } + - { offsetInCU: 0x6035, offset: 0x18EB0, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE5splitERKS1_, symObjAddr: 0x18D0, symBinAddr: 0x85D4, symSize: 0x1EC } + - { offsetInCU: 0x66E5, offset: 0x19560, size: 0x8, addend: 0x0, symName: __ZN2bqplIcEENS_11string_baseIT_EEPKNS3_9char_typeERKS3_, symObjAddr: 0x1ABC, symBinAddr: 0x87C0, symSize: 0x1B8 } + - { offsetInCU: 0x66EF, offset: 0x1956A, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.10, symObjAddr: 0x47C0, symBinAddr: 0x27AE8, symSize: 0x24 } + - { offsetInCU: 0x675B, offset: 0x195D6, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.9, symObjAddr: 0x479C, symBinAddr: 0x27AC4, symSize: 0x24 } + - { offsetInCU: 0x67C7, offset: 0x19642, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.8, symObjAddr: 0x4778, symBinAddr: 0x27AA0, symSize: 0x24 } + - { offsetInCU: 0x6833, offset: 0x196AE, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.7, symObjAddr: 0x4754, symBinAddr: 0x27A7C, symSize: 0x24 } + - { offsetInCU: 0x689F, offset: 0x1971A, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.1, symObjAddr: 0x467C, symBinAddr: 0x279A4, symSize: 0x24 } + - { offsetInCU: 0x690B, offset: 0x19786, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.2, symObjAddr: 0x46A0, symBinAddr: 0x279C8, symSize: 0x24 } + - { offsetInCU: 0x6977, offset: 0x197F2, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.3, symObjAddr: 0x46C4, symBinAddr: 0x279EC, symSize: 0x24 } + - { offsetInCU: 0x69E3, offset: 0x1985E, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.4, symObjAddr: 0x46E8, symBinAddr: 0x27A10, symSize: 0x24 } + - { offsetInCU: 0x6A4F, offset: 0x198CA, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.5, symObjAddr: 0x470C, symBinAddr: 0x27A34, symSize: 0x24 } + - { offsetInCU: 0x6ABB, offset: 0x19936, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.6, symObjAddr: 0x4730, symBinAddr: 0x27A58, symSize: 0x24 } + - { offsetInCU: 0x6B27, offset: 0x199A2, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager12combine_pathERKNS_11string_baseIcEES4_.cold.11, symObjAddr: 0x47E4, symBinAddr: 0x27B0C, symSize: 0x24 } + - { offsetInCU: 0x6D6E, offset: 0x19BE9, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x3ECC, symBinAddr: 0x9F54, symSize: 0x25C } + - { offsetInCU: 0x7421, offset: 0x1A29C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x4128, symBinAddr: 0xA1B0, symSize: 0x224 } + - { offsetInCU: 0x7436, offset: 0x1A2B1, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE4trimEv, symObjAddr: 0x1C74, symBinAddr: 0x8978, symSize: 0x188 } + - { offsetInCU: 0x7793, offset: 0x1A60E, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE.cold.5, symObjAddr: 0x4898, symBinAddr: 0x27BC0, symSize: 0x24 } + - { offsetInCU: 0x77FF, offset: 0x1A67A, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x4808, symBinAddr: 0x27B30, symSize: 0x24 } + - { offsetInCU: 0x786B, offset: 0x1A6E6, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE.cold.2, symObjAddr: 0x482C, symBinAddr: 0x27B54, symSize: 0x24 } + - { offsetInCU: 0x78D7, offset: 0x1A752, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE.cold.3, symObjAddr: 0x4850, symBinAddr: 0x27B78, symSize: 0x24 } + - { offsetInCU: 0x7943, offset: 0x1A7BE, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE.cold.4, symObjAddr: 0x4874, symBinAddr: 0x27B9C, symSize: 0x24 } + - { offsetInCU: 0x796F, offset: 0x1A7EA, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18get_lexically_pathERKNS_11string_baseIcEE.cold.6, symObjAddr: 0x48BC, symBinAddr: 0x27BE4, symSize: 0x24 } + - { offsetInCU: 0x7A7B, offset: 0x1A8F6, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE7replaceERKS1_S3_.cold.1, symObjAddr: 0x4928, symBinAddr: 0x27C08, symSize: 0x28 } + - { offsetInCU: 0x7A92, offset: 0x1A90D, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE7replaceERKS1_S3_.cold.2, symObjAddr: 0x4950, symBinAddr: 0x27C30, symSize: 0x24 } + - { offsetInCU: 0x7B42, offset: 0x1A9BD, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager16create_directoryERKNS_11string_baseIcEE, symObjAddr: 0x1554, symBinAddr: 0x8258, symSize: 0x80 } + - { offsetInCU: 0x7CA5, offset: 0x1AB20, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_directory_from_pathERKNS_11string_baseIcEE, symObjAddr: 0x15D4, symBinAddr: 0x82D8, symSize: 0x1B4 } + - { offsetInCU: 0x82AC, offset: 0x1B127, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_file_name_from_pathERKNS_11string_baseIcEE, symObjAddr: 0x1788, symBinAddr: 0x848C, symSize: 0x148 } + - { offsetInCU: 0x82B6, offset: 0x1B131, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_directory_from_pathERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x4974, symBinAddr: 0x27C54, symSize: 0x24 } + - { offsetInCU: 0x82E2, offset: 0x1B15D, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_directory_from_pathERKNS_11string_baseIcEE.cold.2, symObjAddr: 0x4998, symBinAddr: 0x27C78, symSize: 0x24 } + - { offsetInCU: 0x834E, offset: 0x1B1C9, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_directory_from_pathERKNS_11string_baseIcEE.cold.3, symObjAddr: 0x49BC, symBinAddr: 0x27C9C, symSize: 0x24 } + - { offsetInCU: 0x83BA, offset: 0x1B235, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_directory_from_pathERKNS_11string_baseIcEE.cold.4, symObjAddr: 0x49E0, symBinAddr: 0x27CC0, symSize: 0x24 } + - { offsetInCU: 0x83FC, offset: 0x1B277, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_file_name_from_pathERKNS_11string_baseIcEE, symObjAddr: 0x1788, symBinAddr: 0x848C, symSize: 0x148 } + - { offsetInCU: 0x872B, offset: 0x1B5A6, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE5splitERKS1_, symObjAddr: 0x18D0, symBinAddr: 0x85D4, symSize: 0x1EC } + - { offsetInCU: 0x8735, offset: 0x1B5B0, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_file_name_from_pathERKNS_11string_baseIcEE.cold.3, symObjAddr: 0x4A4C, symBinAddr: 0x27D2C, symSize: 0x24 } + - { offsetInCU: 0x8761, offset: 0x1B5DC, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_file_name_from_pathERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x4A04, symBinAddr: 0x27CE4, symSize: 0x24 } + - { offsetInCU: 0x87CD, offset: 0x1B648, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager23get_file_name_from_pathERKNS_11string_baseIcEE.cold.2, symObjAddr: 0x4A28, symBinAddr: 0x27D08, symSize: 0x24 } + - { offsetInCU: 0x8869, offset: 0x1B6E4, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x4128, symBinAddr: 0xA1B0, symSize: 0x224 } + - { offsetInCU: 0x8E86, offset: 0x1BD01, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x434C, symBinAddr: 0xA3D4, symSize: 0x1F8 } + - { offsetInCU: 0x8E9B, offset: 0x1BD16, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE5splitERKS1_.cold.2, symObjAddr: 0x4A94, symBinAddr: 0x27D74, symSize: 0x24 } + - { offsetInCU: 0x8EDE, offset: 0x1BD59, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE5splitERKS1_.cold.1, symObjAddr: 0x4A70, symBinAddr: 0x27D50, symSize: 0x24 } + - { offsetInCU: 0x8F21, offset: 0x1BD9C, size: 0x8, addend: 0x0, symName: __ZN2bqplIcEENS_11string_baseIT_EEPKNS3_9char_typeERKS3_.cold.2, symObjAddr: 0x4ADC, symBinAddr: 0x27DBC, symSize: 0x24 } + - { offsetInCU: 0x8F4E, offset: 0x1BDC9, size: 0x8, addend: 0x0, symName: __ZN2bqplIcEENS_11string_baseIT_EEPKNS3_9char_typeERKS3_.cold.1, symObjAddr: 0x4AB8, symBinAddr: 0x27D98, symSize: 0x24 } + - { offsetInCU: 0x900B, offset: 0x1BE86, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE4trimEv.cold.2, symObjAddr: 0x4B24, symBinAddr: 0x27E04, symSize: 0x24 } + - { offsetInCU: 0x9038, offset: 0x1BEB3, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE4trimEv.cold.1, symObjAddr: 0x4B00, symBinAddr: 0x27DE0, symSize: 0x24 } + - { offsetInCU: 0x907B, offset: 0x1BEF6, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager7is_fileERKNS_11string_baseIcEE, symObjAddr: 0x1E54, symBinAddr: 0x8B00, symSize: 0x58 } + - { offsetInCU: 0x917D, offset: 0x1BFF8, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager18remove_file_or_dirERKNS_11string_baseIcEE, symObjAddr: 0x1EAC, symBinAddr: 0x8B58, symSize: 0xA0 } + - { offsetInCU: 0x929D, offset: 0x1C118, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager27get_sub_dirs_and_files_nameERKNS_11string_baseIcEE, symObjAddr: 0x1F4C, symBinAddr: 0x8BF8, symSize: 0x58 } + - { offsetInCU: 0x94A9, offset: 0x1C324, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcEplEPKc, symObjAddr: 0x2220, symBinAddr: 0x8C50, symSize: 0xFC } + - { offsetInCU: 0x9660, offset: 0x1C4DB, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager31get_file_last_modified_epoch_msERKNS_11string_baseIcEE, symObjAddr: 0x231C, symBinAddr: 0x8D4C, symSize: 0xA0 } + - { offsetInCU: 0x966A, offset: 0x1C4E5, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcEplEPKc.cold.1, symObjAddr: 0x4B6C, symBinAddr: 0x27E28, symSize: 0x24 } + - { offsetInCU: 0x9696, offset: 0x1C511, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager31get_file_last_modified_epoch_msERKNS_11string_baseIcEE, symObjAddr: 0x231C, symBinAddr: 0x8D4C, symSize: 0xA0 } + - { offsetInCU: 0x985B, offset: 0x1C6D6, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager9open_fileERKNS_11string_baseIcEENS_19file_open_mode_enumE, symObjAddr: 0x2448, symBinAddr: 0x8DEC, symSize: 0x360 } + - { offsetInCU: 0xA1F1, offset: 0x1D06C, size: 0x8, addend: 0x0, symName: __ZNK2bq12file_manager13get_file_sizeERKNS_11file_handleE, symObjAddr: 0x27A8, symBinAddr: 0x914C, symSize: 0x154 } + - { offsetInCU: 0xA1FB, offset: 0x1D076, size: 0x8, addend: 0x0, symName: __ZNK2bq12file_manager13get_file_sizeERKNS_11file_handleE, symObjAddr: 0x27A8, symBinAddr: 0x914C, symSize: 0x154 } + - { offsetInCU: 0xA3F8, offset: 0x1D273, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10close_fileERNS_11file_handleE, symObjAddr: 0x3738, symBinAddr: 0x9C4C, symSize: 0x14C } + - { offsetInCU: 0xA9E6, offset: 0x1D861, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x434C, symBinAddr: 0xA3D4, symSize: 0x1F8 } + - { offsetInCU: 0xB05C, offset: 0x1DED7, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE12set_capacityEmb, symObjAddr: 0x4544, symBinAddr: 0xA5CC, symSize: 0x114 } + - { offsetInCU: 0xB071, offset: 0x1DEEC, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager9open_fileERKNS_11string_baseIcEENS_19file_open_mode_enumE.cold.1, symObjAddr: 0x4B90, symBinAddr: 0x27E4C, symSize: 0x28 } + - { offsetInCU: 0xB08D, offset: 0x1DF08, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleD1Ev, symObjAddr: 0x28FC, symBinAddr: 0x92A0, symSize: 0x44 } + - { offsetInCU: 0xB1A9, offset: 0x1E024, size: 0x8, addend: 0x0, symName: __ZNK2bq11file_handle8is_validEv, symObjAddr: 0x2A34, symBinAddr: 0x92E4, symSize: 0xA0 } + - { offsetInCU: 0xB34C, offset: 0x1E1C7, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager9read_fileERKNS_11file_handleEPvmNS0_11seek_optionEx, symObjAddr: 0x34D0, symBinAddr: 0x9B0C, symSize: 0x140 } + - { offsetInCU: 0xB606, offset: 0x1E481, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15append_all_textERKNS_11string_baseIcEES2_, symObjAddr: 0x2CF0, symBinAddr: 0x9384, symSize: 0x200 } + - { offsetInCU: 0xBA70, offset: 0x1E8EB, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10write_fileERKNS_11file_handleEPKvmNS0_11seek_optionEx, symObjAddr: 0x2EF0, symBinAddr: 0x9584, symSize: 0x148 } + - { offsetInCU: 0xBA7A, offset: 0x1E8F5, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager15append_all_textERKNS_11string_baseIcEES2_.cold.1, symObjAddr: 0x4C28, symBinAddr: 0x27E74, symSize: 0x24 } + - { offsetInCU: 0xBAA7, offset: 0x1E922, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10write_fileERKNS_11file_handleEPKvmNS0_11seek_optionEx, symObjAddr: 0x2EF0, symBinAddr: 0x9584, symSize: 0x148 } + - { offsetInCU: 0xBC5D, offset: 0x1EAD8, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10flush_fileERKNS_11file_handleE, symObjAddr: 0x3038, symBinAddr: 0x96CC, symSize: 0x84 } + - { offsetInCU: 0xBC67, offset: 0x1EAE2, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10write_fileERKNS_11file_handleEPKvmNS0_11seek_optionEx.cold.1, symObjAddr: 0x4C4C, symBinAddr: 0x27E98, symSize: 0x24 } + - { offsetInCU: 0xBC7E, offset: 0x1EAF9, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10flush_fileERKNS_11file_handleE, symObjAddr: 0x3038, symBinAddr: 0x96CC, symSize: 0x84 } + - { offsetInCU: 0xBD2C, offset: 0x1EBA7, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager14write_all_textERKNS_11string_baseIcEES2_, symObjAddr: 0x30BC, symBinAddr: 0x9750, symSize: 0x20C } + - { offsetInCU: 0xC1AF, offset: 0x1F02A, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager13truncate_fileERKNS_11file_handleEm, symObjAddr: 0x32C8, symBinAddr: 0x995C, symSize: 0xFC } + - { offsetInCU: 0xC1B9, offset: 0x1F034, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager13truncate_fileERKNS_11file_handleEm, symObjAddr: 0x32C8, symBinAddr: 0x995C, symSize: 0xFC } + - { offsetInCU: 0xC3C2, offset: 0x1F23D, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager14write_all_textERKNS_11string_baseIcEES2_.cold.1, symObjAddr: 0x4C70, symBinAddr: 0x27EBC, symSize: 0x24 } + - { offsetInCU: 0xC3EF, offset: 0x1F26A, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager29get_and_clear_last_file_errorEv, symObjAddr: 0x33C4, symBinAddr: 0x9A58, symSize: 0x2C } + - { offsetInCU: 0xC422, offset: 0x1F29D, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager4seekERKNS_11file_handleENS0_11seek_optionEx, symObjAddr: 0x3448, symBinAddr: 0x9A84, symSize: 0x88 } + - { offsetInCU: 0xC4DD, offset: 0x1F358, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager9read_fileERKNS_11file_handleEPvmNS0_11seek_optionEx.cold.1, symObjAddr: 0x4C94, symBinAddr: 0x27EE0, symSize: 0x28 } + - { offsetInCU: 0xC56A, offset: 0x1F3E5, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager10close_fileERNS_11file_handleE.cold.1, symObjAddr: 0x4CE0, symBinAddr: 0x27F08, symSize: 0x28 } + - { offsetInCU: 0xC5DE, offset: 0x1F459, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleaSERKS0_, symObjAddr: 0x3BB0, symBinAddr: 0x9D98, symSize: 0xF8 } + - { offsetInCU: 0xC8B6, offset: 0x1F731, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handleaSEOS0_, symObjAddr: 0x3CA8, symBinAddr: 0x9E90, symSize: 0x78 } + - { offsetInCU: 0xC962, offset: 0x1F7DD, size: 0x8, addend: 0x0, symName: __ZN2bq11file_handle7invalidEv, symObjAddr: 0x3D20, symBinAddr: 0x9F08, symSize: 0x4C } + - { offsetInCU: 0xCAC7, offset: 0x1F942, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x4DA0, symBinAddr: 0x27F30, symSize: 0x24 } + - { offsetInCU: 0xCADE, offset: 0x1F959, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.4, symObjAddr: 0x4E0C, symBinAddr: 0x27F9C, symSize: 0x24 } + - { offsetInCU: 0xCB0B, offset: 0x1F986, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x4DC4, symBinAddr: 0x27F54, symSize: 0x24 } + - { offsetInCU: 0xCB8E, offset: 0x1FA09, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.3, symObjAddr: 0x4DE8, symBinAddr: 0x27F78, symSize: 0x24 } + - { offsetInCU: 0xCBFF, offset: 0x1FA7A, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x4E30, symBinAddr: 0x27FC0, symSize: 0x24 } + - { offsetInCU: 0xCC16, offset: 0x1FA91, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.3, symObjAddr: 0x4E78, symBinAddr: 0x28008, symSize: 0x24 } + - { offsetInCU: 0xCC43, offset: 0x1FABE, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x4E54, symBinAddr: 0x27FE4, symSize: 0x24 } + - { offsetInCU: 0xCE07, offset: 0x1FC82, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE12set_capacityEmb, symObjAddr: 0x4544, symBinAddr: 0xA5CC, symSize: 0x114 } + - { offsetInCU: 0xD14F, offset: 0x1FFCA, size: 0x8, addend: 0x0, symName: __ZN2bq12file_manager44trans_process_relative_path_to_absolute_pathERKNS_11string_baseIcEEb.cold.1, symObjAddr: 0x4658, symBinAddr: 0x27980, symSize: 0x24 } + - { offsetInCU: 0xD159, offset: 0x1FFD4, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x4E9C, symBinAddr: 0x2802C, symSize: 0x24 } + - { offsetInCU: 0xD170, offset: 0x1FFEB, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x4EC0, symBinAddr: 0x28050, symSize: 0x24 } + - { offsetInCU: 0xD19D, offset: 0x20018, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_12file_manager15file_descriptorELm0EE12set_capacityEmb.cold.1, symObjAddr: 0x4EE4, symBinAddr: 0x28074, symSize: 0x24 } + - { offsetInCU: 0xD1B4, offset: 0x2002F, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x4F08, symBinAddr: 0xA6E0, symSize: 0x8 } + - { offsetInCU: 0xD1CB, offset: 0x20046, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x4F10, symBinAddr: 0xA6E8, symSize: 0x8 } + - { offsetInCU: 0xD1E2, offset: 0x2005D, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x4F18, symBinAddr: 0xA6F0, symSize: 0x8 } + - { offsetInCU: 0xD1F9, offset: 0x20074, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_3, symObjAddr: 0x4F20, symBinAddr: 0xA6F8, symSize: 0x8 } + - { offsetInCU: 0xD210, offset: 0x2008B, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_4, symObjAddr: 0x4F28, symBinAddr: 0xA700, symSize: 0x8 } + - { offsetInCU: 0x1F0A, offset: 0x21FB1, size: 0x8, addend: 0x0, symName: __ZN2bqL10find_splitERNS_11string_baseIcEERKc, symObjAddr: 0xFA8, symBinAddr: 0xB130, symSize: 0x1B8 } + - { offsetInCU: 0x2A81, offset: 0x22B28, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj, symObjAddr: 0x287C, symBinAddr: 0xBE48, symSize: 0x27C } + - { offsetInCU: 0x2FE2, offset: 0x23089, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x2AF8, symBinAddr: 0x28098, symSize: 0x24 } + - { offsetInCU: 0x3082, offset: 0x23129, size: 0x8, addend: 0x0, symName: __ZN2bq8property4loadERKNS_11string_baseIcEE, symObjAddr: 0x74, symBinAddr: 0xA708, symSize: 0xDC } + - { offsetInCU: 0x35D8, offset: 0x2367F, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE, symObjAddr: 0x150, symBinAddr: 0xA7E4, symSize: 0x830 } + - { offsetInCU: 0x5ACE, offset: 0x25B75, size: 0x8, addend: 0x0, symName: __ZN2bq8property3setERKNS_11string_baseIcEES4_, symObjAddr: 0x980, symBinAddr: 0xB014, symSize: 0x11C } + - { offsetInCU: 0x5AD8, offset: 0x25B7F, size: 0x8, addend: 0x0, symName: __ZN2bq8property3setERKNS_11string_baseIcEES4_, symObjAddr: 0x980, symBinAddr: 0xB014, symSize: 0x11C } + - { offsetInCU: 0x6586, offset: 0x2662D, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEC2IRS2_JS5_EEEOT_DpOT0_, symObjAddr: 0x1D1C, symBinAddr: 0xB2E8, symSize: 0xDC } + - { offsetInCU: 0x6DF5, offset: 0x26E9C, size: 0x8, addend: 0x0, symName: __ZN2bqL10find_splitERNS_11string_baseIcEERKc, symObjAddr: 0xFA8, symBinAddr: 0xB130, symSize: 0x1B8 } + - { offsetInCU: 0x6DFF, offset: 0x26EA6, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEC2IRS2_JS5_EEEOT_DpOT0_, symObjAddr: 0x1D1C, symBinAddr: 0xB2E8, symSize: 0xDC } + - { offsetInCU: 0x70DF, offset: 0x27186, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_, symObjAddr: 0x1DF8, symBinAddr: 0xB3C4, symSize: 0x1F8 } + - { offsetInCU: 0x70FD, offset: 0x271A4, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_, symObjAddr: 0x1DF8, symBinAddr: 0xB3C4, symSize: 0x1F8 } + - { offsetInCU: 0x7AF1, offset: 0x27B98, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE12set_capacityEmb, symObjAddr: 0x1FF0, symBinAddr: 0xB5BC, symSize: 0x14C } + - { offsetInCU: 0x7B06, offset: 0x27BAD, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.5, symObjAddr: 0x2B88, symBinAddr: 0x28128, symSize: 0x24 } + - { offsetInCU: 0x7B32, offset: 0x27BD9, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.14, symObjAddr: 0x2CCC, symBinAddr: 0x2826C, symSize: 0x24 } + - { offsetInCU: 0x7B5E, offset: 0x27C05, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.12, symObjAddr: 0x2C84, symBinAddr: 0x28224, symSize: 0x24 } + - { offsetInCU: 0x7BA0, offset: 0x27C47, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.6, symObjAddr: 0x2BAC, symBinAddr: 0x2814C, symSize: 0x24 } + - { offsetInCU: 0x7C0C, offset: 0x27CB3, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.7, symObjAddr: 0x2BD0, symBinAddr: 0x28170, symSize: 0x24 } + - { offsetInCU: 0x7C78, offset: 0x27D1F, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.8, symObjAddr: 0x2BF4, symBinAddr: 0x28194, symSize: 0x24 } + - { offsetInCU: 0x7CE4, offset: 0x27D8B, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.9, symObjAddr: 0x2C18, symBinAddr: 0x281B8, symSize: 0x24 } + - { offsetInCU: 0x7D50, offset: 0x27DF7, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.10, symObjAddr: 0x2C3C, symBinAddr: 0x281DC, symSize: 0x24 } + - { offsetInCU: 0x7DBC, offset: 0x27E63, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.11, symObjAddr: 0x2C60, symBinAddr: 0x28200, symSize: 0x24 } + - { offsetInCU: 0x7E28, offset: 0x27ECF, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x2AF8, symBinAddr: 0x28098, symSize: 0x24 } + - { offsetInCU: 0x7E94, offset: 0x27F3B, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.2, symObjAddr: 0x2B1C, symBinAddr: 0x280BC, symSize: 0x24 } + - { offsetInCU: 0x7F00, offset: 0x27FA7, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.3, symObjAddr: 0x2B40, symBinAddr: 0x280E0, symSize: 0x24 } + - { offsetInCU: 0x7F6C, offset: 0x28013, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.4, symObjAddr: 0x2B64, symBinAddr: 0x28104, symSize: 0x24 } + - { offsetInCU: 0x7FD8, offset: 0x2807F, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.15, symObjAddr: 0x2CF0, symBinAddr: 0x28290, symSize: 0x24 } + - { offsetInCU: 0x8044, offset: 0x280EB, size: 0x8, addend: 0x0, symName: __ZN2bq8property5parseERKNS_11string_baseIcEE.cold.13, symObjAddr: 0x2CA8, symBinAddr: 0x28248, symSize: 0x24 } + - { offsetInCU: 0x8275, offset: 0x2831C, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E32find_index_and_bucket_idx_by_keyERKS2_, symObjAddr: 0x213C, symBinAddr: 0xB708, symSize: 0x120 } + - { offsetInCU: 0x84A2, offset: 0x28549, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRKS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x225C, symBinAddr: 0xB828, symSize: 0x25C } + - { offsetInCU: 0x84AC, offset: 0x28553, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRKS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x225C, symBinAddr: 0xB828, symSize: 0x25C } + - { offsetInCU: 0x8B5F, offset: 0x28C06, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_, symObjAddr: 0x24B8, symBinAddr: 0xBA84, symSize: 0x1E8 } + - { offsetInCU: 0x8B74, offset: 0x28C1B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_, symObjAddr: 0x24B8, symBinAddr: 0xBA84, symSize: 0x1E8 } + - { offsetInCU: 0x8F63, offset: 0x2900A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj, symObjAddr: 0x26A0, symBinAddr: 0xBC6C, symSize: 0x1DC } + - { offsetInCU: 0x8F6D, offset: 0x29014, size: 0x8, addend: 0x0, symName: __ZN2bq8property3setERKNS_11string_baseIcEES4_.cold.2, symObjAddr: 0x2D38, symBinAddr: 0x282D8, symSize: 0x24 } + - { offsetInCU: 0x8FEE, offset: 0x29095, size: 0x8, addend: 0x0, symName: __ZN2bq8property3setERKNS_11string_baseIcEES4_.cold.1, symObjAddr: 0x2D14, symBinAddr: 0x282B4, symSize: 0x24 } + - { offsetInCU: 0x95E4, offset: 0x2968B, size: 0x8, addend: 0x0, symName: __ZN2bqL10find_splitERNS_11string_baseIcEERKc.cold.1, symObjAddr: 0x2E38, symBinAddr: 0x282FC, symSize: 0x24 } + - { offsetInCU: 0x9610, offset: 0x296B7, size: 0x8, addend: 0x0, symName: __ZN2bqL10find_splitERNS_11string_baseIcEERKc.cold.3, symObjAddr: 0x2E80, symBinAddr: 0x28344, symSize: 0x24 } + - { offsetInCU: 0x963C, offset: 0x296E3, size: 0x8, addend: 0x0, symName: __ZN2bqL10find_splitERNS_11string_baseIcEERKc.cold.4, symObjAddr: 0x2EA4, symBinAddr: 0x28368, symSize: 0x24 } + - { offsetInCU: 0x967E, offset: 0x29725, size: 0x8, addend: 0x0, symName: __ZN2bqL10find_splitERNS_11string_baseIcEERKc.cold.2, symObjAddr: 0x2E5C, symBinAddr: 0x28320, symSize: 0x24 } + - { offsetInCU: 0x9A0B, offset: 0x29AB2, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEC2IRS2_JS5_EEEOT_DpOT0_.cold.2, symObjAddr: 0x32BC, symBinAddr: 0x283B0, symSize: 0x24 } + - { offsetInCU: 0x9AA4, offset: 0x29B4B, size: 0x8, addend: 0x0, symName: __ZN2bq5tupleIJNS_11string_baseIcEES2_EEC2IRS2_JS5_EEEOT_DpOT0_.cold.1, symObjAddr: 0x3298, symBinAddr: 0x2838C, symSize: 0x24 } + - { offsetInCU: 0x9DEA, offset: 0x29E91, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE12set_capacityEmb, symObjAddr: 0x1FF0, symBinAddr: 0xB5BC, symSize: 0x14C } + - { offsetInCU: 0xA453, offset: 0x2A4FA, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E32find_index_and_bucket_idx_by_keyERKS2_, symObjAddr: 0x213C, symBinAddr: 0xB708, symSize: 0x120 } + - { offsetInCU: 0xA45D, offset: 0x2A504, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_.cold.1, symObjAddr: 0x32E0, symBinAddr: 0x283D4, symSize: 0x24 } + - { offsetInCU: 0xA474, offset: 0x2A51B, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_.cold.2, symObjAddr: 0x3304, symBinAddr: 0x283F8, symSize: 0x24 } + - { offsetInCU: 0xA4A1, offset: 0x2A548, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJNS_11string_baseIcEES3_EEELm0EE12set_capacityEmb.cold.1, symObjAddr: 0x3328, symBinAddr: 0x2841C, symSize: 0x24 } + - { offsetInCU: 0xA5D4, offset: 0x2A67B, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E32find_index_and_bucket_idx_by_keyERKS2_.cold.1, symObjAddr: 0x334C, symBinAddr: 0x28440, symSize: 0x24 } + - { offsetInCU: 0xA601, offset: 0x2A6A8, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEES2_E32find_index_and_bucket_idx_by_keyERKS2_.cold.2, symObjAddr: 0x3370, symBinAddr: 0x28464, symSize: 0x24 } + - { offsetInCU: 0xA672, offset: 0x2A719, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRKS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x3394, symBinAddr: 0x28488, symSize: 0x24 } + - { offsetInCU: 0xA689, offset: 0x2A730, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRKS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.4, symObjAddr: 0x3400, symBinAddr: 0x284F4, symSize: 0x24 } + - { offsetInCU: 0xA6B6, offset: 0x2A75D, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRKS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x33B8, symBinAddr: 0x284AC, symSize: 0x24 } + - { offsetInCU: 0xA739, offset: 0x2A7E0, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRKS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.3, symObjAddr: 0x33DC, symBinAddr: 0x284D0, symSize: 0x24 } + - { offsetInCU: 0xA7EC, offset: 0x2A893, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj, symObjAddr: 0x26A0, symBinAddr: 0xBC6C, symSize: 0x1DC } + - { offsetInCU: 0xAAE9, offset: 0x2AB90, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj, symObjAddr: 0x287C, symBinAddr: 0xBE48, symSize: 0x27C } + - { offsetInCU: 0xAAF3, offset: 0x2AB9A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.3, symObjAddr: 0x3470, symBinAddr: 0x28564, symSize: 0x24 } + - { offsetInCU: 0xAB4B, offset: 0x2ABF2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.9, symObjAddr: 0x3548, symBinAddr: 0x2863C, symSize: 0x28 } + - { offsetInCU: 0xAB62, offset: 0x2AC09, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.8, symObjAddr: 0x3524, symBinAddr: 0x28618, symSize: 0x24 } + - { offsetInCU: 0xAB8F, offset: 0x2AC36, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.1, symObjAddr: 0x3424, symBinAddr: 0x28518, symSize: 0x28 } + - { offsetInCU: 0xABA6, offset: 0x2AC4D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.6, symObjAddr: 0x34DC, symBinAddr: 0x285D0, symSize: 0x24 } + - { offsetInCU: 0xABD3, offset: 0x2AC7A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.7, symObjAddr: 0x3500, symBinAddr: 0x285F4, symSize: 0x24 } + - { offsetInCU: 0xAC00, offset: 0x2ACA7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.5, symObjAddr: 0x34B8, symBinAddr: 0x285AC, symSize: 0x24 } + - { offsetInCU: 0xAC2D, offset: 0x2ACD4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.4, symObjAddr: 0x3494, symBinAddr: 0x28588, symSize: 0x24 } + - { offsetInCU: 0xAC5A, offset: 0x2AD01, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E17alloc_node_by_keyERKS2_.cold.2, symObjAddr: 0x344C, symBinAddr: 0x28540, symSize: 0x24 } + - { offsetInCU: 0xACDD, offset: 0x2AD84, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj.cold.7, symObjAddr: 0x3648, symBinAddr: 0x2873C, symSize: 0x24 } + - { offsetInCU: 0xAD0A, offset: 0x2ADB1, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj.cold.6, symObjAddr: 0x3624, symBinAddr: 0x28718, symSize: 0x24 } + - { offsetInCU: 0xAD37, offset: 0x2ADDE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj.cold.5, symObjAddr: 0x3600, symBinAddr: 0x286F4, symSize: 0x24 } + - { offsetInCU: 0xAD64, offset: 0x2AE0B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj.cold.4, symObjAddr: 0x35DC, symBinAddr: 0x286D0, symSize: 0x24 } + - { offsetInCU: 0xAD91, offset: 0x2AE38, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj.cold.3, symObjAddr: 0x35B8, symBinAddr: 0x286AC, symSize: 0x24 } + - { offsetInCU: 0xADBE, offset: 0x2AE65, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj.cold.2, symObjAddr: 0x3594, symBinAddr: 0x28688, symSize: 0x24 } + - { offsetInCU: 0xADEB, offset: 0x2AE92, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E14expand_bucketsEj.cold.1, symObjAddr: 0x3570, symBinAddr: 0x28664, symSize: 0x24 } + - { offsetInCU: 0xAE80, offset: 0x2AF27, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj.cold.1, symObjAddr: 0x366C, symBinAddr: 0x28760, symSize: 0x24 } + - { offsetInCU: 0xAEC2, offset: 0x2AF69, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj.cold.6, symObjAddr: 0x3720, symBinAddr: 0x28814, symSize: 0x24 } + - { offsetInCU: 0xAF04, offset: 0x2AFAB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj.cold.5, symObjAddr: 0x36FC, symBinAddr: 0x287F0, symSize: 0x24 } + - { offsetInCU: 0xAF46, offset: 0x2AFED, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj.cold.4, symObjAddr: 0x36D8, symBinAddr: 0x287CC, symSize: 0x24 } + - { offsetInCU: 0xAFB4, offset: 0x2B05B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj.cold.3, symObjAddr: 0x36B4, symBinAddr: 0x287A8, symSize: 0x24 } + - { offsetInCU: 0xB022, offset: 0x2B0C9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj.cold.2, symObjAddr: 0x3690, symBinAddr: 0x28784, symSize: 0x24 } + - { offsetInCU: 0xB07A, offset: 0x2B121, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E12expand_nodesEj.cold.7, symObjAddr: 0x3744, symBinAddr: 0x28838, symSize: 0x24 } + - { offsetInCU: 0xB0BD, offset: 0x2B164, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x3768, symBinAddr: 0xC0C4, symSize: 0x8 } + - { offsetInCU: 0xB0D4, offset: 0x2B17B, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x3770, symBinAddr: 0xC0CC, symSize: 0x8 } + - { offsetInCU: 0xB0EB, offset: 0x2B192, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x3778, symBinAddr: 0xC0D4, symSize: 0x8 } + - { offsetInCU: 0xB102, offset: 0x2B1A9, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_3, symObjAddr: 0x3780, symBinAddr: 0xC0DC, symSize: 0x8 } + - { offsetInCU: 0xB119, offset: 0x2B1C0, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_4, symObjAddr: 0x3788, symBinAddr: 0xC0E4, symSize: 0x8 } + - { offsetInCU: 0xB130, offset: 0x2B1D7, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_5, symObjAddr: 0x3790, symBinAddr: 0xC0EC, symSize: 0x8 } + - { offsetInCU: 0x26, offset: 0x2B228, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE, symObjAddr: 0x0, symBinAddr: 0xC0F4, symSize: 0x204 } + - { offsetInCU: 0x2988, offset: 0x2DB8A, size: 0x8, addend: 0x0, symName: __ZN2bqL30trans_parson_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_, symObjAddr: 0x208, symBinAddr: 0xC2F8, symSize: 0x370 } + - { offsetInCU: 0x35FF, offset: 0x2E801, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueD1Ev, symObjAddr: 0x578, symBinAddr: 0xC668, symSize: 0x24 } + - { offsetInCU: 0x3654, offset: 0x2E856, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_, symObjAddr: 0x3348, symBinAddr: 0xD484, symSize: 0x838 } + - { offsetInCU: 0x5DB8, offset: 0x30FBA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj, symObjAddr: 0x4804, symBinAddr: 0xE2DC, symSize: 0x26C } + - { offsetInCU: 0x6303, offset: 0x31505, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_, symObjAddr: 0x4A70, symBinAddr: 0xE548, symSize: 0x1FC } + - { offsetInCU: 0x699B, offset: 0x31B9D, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE, symObjAddr: 0x0, symBinAddr: 0xC0F4, symSize: 0x204 } + - { offsetInCU: 0x7414, offset: 0x32616, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5resetEv, symObjAddr: 0x3F04, symBinAddr: 0xDCBC, symSize: 0x108 } + - { offsetInCU: 0x741E, offset: 0x32620, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x51A4, symBinAddr: 0x2885C, symSize: 0x24 } + - { offsetInCU: 0x745F, offset: 0x32661, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5resetEv, symObjAddr: 0x3F04, symBinAddr: 0xDCBC, symSize: 0x108 } + - { offsetInCU: 0x7783, offset: 0x32985, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE.cold.4, symObjAddr: 0x5210, symBinAddr: 0x288C8, symSize: 0x24 } + - { offsetInCU: 0x77C4, offset: 0x329C6, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE.cold.2, symObjAddr: 0x51C8, symBinAddr: 0x28880, symSize: 0x24 } + - { offsetInCU: 0x781B, offset: 0x32A1D, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE.cold.5, symObjAddr: 0x5234, symBinAddr: 0x288EC, symSize: 0x24 } + - { offsetInCU: 0x785D, offset: 0x32A5F, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE.cold.3, symObjAddr: 0x51EC, symBinAddr: 0x288A4, symSize: 0x24 } + - { offsetInCU: 0x7F61, offset: 0x33163, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_, symObjAddr: 0x3348, symBinAddr: 0xD484, symSize: 0x838 } + - { offsetInCU: 0x7F6B, offset: 0x3316D, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14copy_data_fromEOS0_, symObjAddr: 0x1760, symBinAddr: 0xC8B4, symSize: 0x1B8 } + - { offsetInCU: 0x83F2, offset: 0x335F4, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value10clear_dataEv, symObjAddr: 0xFF4, symBinAddr: 0xC6E4, symSize: 0x108 } + - { offsetInCU: 0x875B, offset: 0x3395D, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixERKNS_11string_baseIcEE, symObjAddr: 0x1CE0, symBinAddr: 0xCD0C, symSize: 0x2AC } + - { offsetInCU: 0x8F64, offset: 0x34166, size: 0x8, addend: 0x0, symName: __ZN2bqL30trans_parson_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.4, symObjAddr: 0x52C4, symBinAddr: 0x2897C, symSize: 0x28 } + - { offsetInCU: 0x8F90, offset: 0x34192, size: 0x8, addend: 0x0, symName: __ZN2bqL30trans_parson_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.1, symObjAddr: 0x5258, symBinAddr: 0x28910, symSize: 0x24 } + - { offsetInCU: 0x8FFC, offset: 0x341FE, size: 0x8, addend: 0x0, symName: __ZN2bqL30trans_parson_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.6, symObjAddr: 0x5310, symBinAddr: 0x289C8, symSize: 0x24 } + - { offsetInCU: 0x9068, offset: 0x3426A, size: 0x8, addend: 0x0, symName: __ZN2bqL30trans_parson_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.5, symObjAddr: 0x52EC, symBinAddr: 0x289A4, symSize: 0x24 } + - { offsetInCU: 0x90D4, offset: 0x342D6, size: 0x8, addend: 0x0, symName: __ZN2bqL30trans_parson_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.2, symObjAddr: 0x527C, symBinAddr: 0x28934, symSize: 0x24 } + - { offsetInCU: 0x9140, offset: 0x34342, size: 0x8, addend: 0x0, symName: __ZN2bqL30trans_parson_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.3, symObjAddr: 0x52A0, symBinAddr: 0x28958, symSize: 0x24 } + - { offsetInCU: 0x9182, offset: 0x34384, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueD1Ev, symObjAddr: 0x578, symBinAddr: 0xC668, symSize: 0x24 } + - { offsetInCU: 0x940F, offset: 0x34611, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valueixEm, symObjAddr: 0x271C, symBinAddr: 0xD0D8, symSize: 0xEC } + - { offsetInCU: 0x9531, offset: 0x34733, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvxEv, symObjAddr: 0x1540, symBinAddr: 0xC7EC, symSize: 0x34 } + - { offsetInCU: 0x95BD, offset: 0x347BF, size: 0x8, addend: 0x0, symName: __ZN2bq11string_baseIcEC1EPKc, symObjAddr: 0xF9C, symBinAddr: 0xC68C, symSize: 0x58 } + - { offsetInCU: 0x9685, offset: 0x34887, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvNS_11string_baseIcEEEv, symObjAddr: 0x15D0, symBinAddr: 0xC820, symSize: 0x94 } + - { offsetInCU: 0x9811, offset: 0x34A13, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value18get_object_key_setEv, symObjAddr: 0x2920, symBinAddr: 0xD2A4, symSize: 0xD0 } + - { offsetInCU: 0x9A73, offset: 0x34C75, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value10array_sizeEv, symObjAddr: 0x29F0, symBinAddr: 0xD374, symSize: 0x2C } + - { offsetInCU: 0x9A7D, offset: 0x34C7F, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valueixERKNS_11string_baseIcEE, symObjAddr: 0x21C4, symBinAddr: 0xCFB8, symSize: 0x120 } + - { offsetInCU: 0x9DCE, offset: 0x34FD0, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5resetEv, symObjAddr: 0x42EC, symBinAddr: 0xDDC4, symSize: 0x108 } + - { offsetInCU: 0xA124, offset: 0x35326, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE6insertIJPS2_EEEvNS_14array_iteratorIS3_S4_EEDpOT_, symObjAddr: 0x43F4, symBinAddr: 0xDECC, symSize: 0x22C } + - { offsetInCU: 0xA60E, offset: 0x35810, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE6insertIJPS2_EEEvNS_14array_iteratorIS3_S4_EEDpOT_, symObjAddr: 0x43F4, symBinAddr: 0xDECC, symSize: 0x22C } + - { offsetInCU: 0xAB06, offset: 0x35D08, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj, symObjAddr: 0x4620, symBinAddr: 0xE0F8, symSize: 0x1E4 } + - { offsetInCU: 0xAB1B, offset: 0x35D1D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj, symObjAddr: 0x4620, symBinAddr: 0xE0F8, symSize: 0x1E4 } + - { offsetInCU: 0xAE18, offset: 0x3601A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj, symObjAddr: 0x4804, symBinAddr: 0xE2DC, symSize: 0x26C } + - { offsetInCU: 0xAE22, offset: 0x36024, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_, symObjAddr: 0x4A70, symBinAddr: 0xE548, symSize: 0x1FC } + - { offsetInCU: 0xB211, offset: 0x36413, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE32find_index_and_bucket_idx_by_keyERKS2_, symObjAddr: 0x4C6C, symBinAddr: 0xE744, symSize: 0x130 } + - { offsetInCU: 0xB21B, offset: 0x3641D, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvxEv.cold.1, symObjAddr: 0x55E8, symBinAddr: 0x289EC, symSize: 0x24 } + - { offsetInCU: 0xB248, offset: 0x3644A, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvNS_11string_baseIcEEEv.cold.2, symObjAddr: 0x5630, symBinAddr: 0x28A34, symSize: 0x28 } + - { offsetInCU: 0xB275, offset: 0x36477, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_valuecvNS_11string_baseIcEEEv.cold.1, symObjAddr: 0x560C, symBinAddr: 0x28A10, symSize: 0x24 } + - { offsetInCU: 0xB32C, offset: 0x3652E, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14copy_data_fromEOS0_.cold.4, symObjAddr: 0x56C8, symBinAddr: 0x28ACC, symSize: 0x28 } + - { offsetInCU: 0xB359, offset: 0x3655B, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14copy_data_fromEOS0_.cold.1, symObjAddr: 0x5658, symBinAddr: 0x28A5C, symSize: 0x28 } + - { offsetInCU: 0xB386, offset: 0x36588, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14copy_data_fromEOS0_.cold.2, symObjAddr: 0x5680, symBinAddr: 0x28A84, symSize: 0x24 } + - { offsetInCU: 0xB3B3, offset: 0x365B5, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14copy_data_fromEOS0_.cold.3, symObjAddr: 0x56A4, symBinAddr: 0x28AA8, symSize: 0x24 } + - { offsetInCU: 0xB3E0, offset: 0x365E2, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14copy_data_fromEOS0_.cold.5, symObjAddr: 0x56F0, symBinAddr: 0x28AF4, symSize: 0x24 } + - { offsetInCU: 0xB40D, offset: 0x3660F, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value14copy_data_fromEOS0_.cold.6, symObjAddr: 0x5714, symBinAddr: 0x28B18, symSize: 0x24 } + - { offsetInCU: 0xB43A, offset: 0x3663C, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixEm, symObjAddr: 0x1A3C, symBinAddr: 0xCA6C, symSize: 0x2A0 } + - { offsetInCU: 0xBAF7, offset: 0x36CF9, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateINS_5arrayINS_10unique_ptrIS0_EELm0EEES5_EEvOT_RT0_bNS_24enum_property_value_typeE, symObjAddr: 0x2808, symBinAddr: 0xD1C4, symSize: 0xE0 } + - { offsetInCU: 0xBD53, offset: 0x36F55, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixEm.cold.2, symObjAddr: 0x5780, symBinAddr: 0x28B60, symSize: 0x24 } + - { offsetInCU: 0xBD80, offset: 0x36F82, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixEm.cold.3, symObjAddr: 0x57A4, symBinAddr: 0x28B84, symSize: 0x24 } + - { offsetInCU: 0xBDAD, offset: 0x36FAF, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixEm.cold.1, symObjAddr: 0x575C, symBinAddr: 0x28B3C, symSize: 0x24 } + - { offsetInCU: 0xBE7E, offset: 0x37080, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE32find_index_and_bucket_idx_by_keyERKS2_, symObjAddr: 0x4C6C, symBinAddr: 0xE744, symSize: 0x130 } + - { offsetInCU: 0xC0B5, offset: 0x372B7, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixERKNS_11string_baseIcEE.cold.3, symObjAddr: 0x5810, symBinAddr: 0x28BF0, symSize: 0x24 } + - { offsetInCU: 0xC0E2, offset: 0x372E4, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixERKNS_11string_baseIcEE.cold.5, symObjAddr: 0x5858, symBinAddr: 0x28C38, symSize: 0x24 } + - { offsetInCU: 0xC10F, offset: 0x37311, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixERKNS_11string_baseIcEE.cold.4, symObjAddr: 0x5834, symBinAddr: 0x28C14, symSize: 0x24 } + - { offsetInCU: 0xC17C, offset: 0x3737E, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x57C8, symBinAddr: 0x28BA8, symSize: 0x24 } + - { offsetInCU: 0xC1BE, offset: 0x373C0, size: 0x8, addend: 0x0, symName: __ZN2bq14property_valueixERKNS_11string_baseIcEE.cold.2, symObjAddr: 0x57EC, symBinAddr: 0x28BCC, symSize: 0x24 } + - { offsetInCU: 0xC3A9, offset: 0x375AB, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateINS_5arrayINS_10unique_ptrIS0_EELm0EEES5_EEvOT_RT0_bNS_24enum_property_value_typeE.cold.1, symObjAddr: 0x5958, symBinAddr: 0x28C5C, symSize: 0x24 } + - { offsetInCU: 0xC794, offset: 0x37996, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value18create_from_stringERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x51A4, symBinAddr: 0x2885C, symSize: 0x24 } + - { offsetInCU: 0xC7A9, offset: 0x379AB, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value18get_object_key_setEv.cold.1, symObjAddr: 0x597C, symBinAddr: 0x28C80, symSize: 0x24 } + - { offsetInCU: 0xC7EB, offset: 0x379ED, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value18get_object_key_setEv.cold.3, symObjAddr: 0x59C4, symBinAddr: 0x28CC8, symSize: 0x24 } + - { offsetInCU: 0xC82D, offset: 0x37A2F, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value18get_object_key_setEv.cold.2, symObjAddr: 0x59A0, symBinAddr: 0x28CA4, symSize: 0x24 } + - { offsetInCU: 0xC885, offset: 0x37A87, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value18get_object_key_setEv.cold.4, symObjAddr: 0x59E8, symBinAddr: 0x28CEC, symSize: 0x24 } + - { offsetInCU: 0xC8C8, offset: 0x37ACA, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value10array_sizeEv, symObjAddr: 0x29F0, symBinAddr: 0xD374, symSize: 0x2C } + - { offsetInCU: 0xC8ED, offset: 0x37AEF, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value10array_sizeEv, symObjAddr: 0x29F0, symBinAddr: 0xD374, symSize: 0x2C } + - { offsetInCU: 0xC909, offset: 0x37B0B, size: 0x8, addend: 0x0, symName: __ZNK2bq14property_value10array_sizeEv, symObjAddr: 0x29F0, symBinAddr: 0xD374, symSize: 0x2C } + - { offsetInCU: 0xC9B1, offset: 0x37BB3, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateIRKNS_11string_baseIcEES3_EEvOT_RT0_bNS_24enum_property_value_typeE, symObjAddr: 0x2C20, symBinAddr: 0xD3A0, symSize: 0xE4 } + - { offsetInCU: 0xCC2C, offset: 0x37E2E, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateIRKNS_11string_baseIcEES3_EEvOT_RT0_bNS_24enum_property_value_typeE.cold.2, symObjAddr: 0x5A54, symBinAddr: 0x28D34, symSize: 0x24 } + - { offsetInCU: 0xCC58, offset: 0x37E5A, size: 0x8, addend: 0x0, symName: __ZN2bq14property_value22check_and_set_templateIRKNS_11string_baseIcEES3_EEvOT_RT0_bNS_24enum_property_value_typeE.cold.1, symObjAddr: 0x5A30, symBinAddr: 0x28D10, symSize: 0x24 } + - { offsetInCU: 0xD4BD, offset: 0x386BF, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.2, symObjAddr: 0x5CDC, symBinAddr: 0x28D7C, symSize: 0x28 } + - { offsetInCU: 0xD4E9, offset: 0x386EB, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.1, symObjAddr: 0x5CB8, symBinAddr: 0x28D58, symSize: 0x24 } + - { offsetInCU: 0xD56A, offset: 0x3876C, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.3, symObjAddr: 0x5D04, symBinAddr: 0x28DA4, symSize: 0x24 } + - { offsetInCU: 0xD5AC, offset: 0x387AE, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.7, symObjAddr: 0x5D94, symBinAddr: 0x28E34, symSize: 0x24 } + - { offsetInCU: 0xD618, offset: 0x3881A, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.4, symObjAddr: 0x5D28, symBinAddr: 0x28DC8, symSize: 0x24 } + - { offsetInCU: 0xD684, offset: 0x38886, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.5, symObjAddr: 0x5D4C, symBinAddr: 0x28DEC, symSize: 0x24 } + - { offsetInCU: 0xD6C6, offset: 0x388C8, size: 0x8, addend: 0x0, symName: __ZN2bqL23parse_to_property_valueERNS_14property_valueENS_11string_baseIcEERKS3_.cold.6, symObjAddr: 0x5D70, symBinAddr: 0x28E10, symSize: 0x24 } + - { offsetInCU: 0xD899, offset: 0x38A9B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5resetEv.cold.1, symObjAddr: 0x5E94, symBinAddr: 0x28E58, symSize: 0x24 } + - { offsetInCU: 0xD8DB, offset: 0x38ADD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5resetEv.cold.4, symObjAddr: 0x5F00, symBinAddr: 0x28EC4, symSize: 0x24 } + - { offsetInCU: 0xD949, offset: 0x38B4B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5resetEv.cold.3, symObjAddr: 0x5EDC, symBinAddr: 0x28EA0, symSize: 0x24 } + - { offsetInCU: 0xD9B7, offset: 0x38BB9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5resetEv.cold.2, symObjAddr: 0x5EB8, symBinAddr: 0x28E7C, symSize: 0x24 } + - { offsetInCU: 0xDA0F, offset: 0x38C11, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEES2_E5resetEv.cold.5, symObjAddr: 0x5F24, symBinAddr: 0x28EE8, symSize: 0x24 } + - { offsetInCU: 0xDABA, offset: 0x38CBC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5resetEv.cold.1, symObjAddr: 0x5FB8, symBinAddr: 0x28F0C, symSize: 0x24 } + - { offsetInCU: 0xDAFC, offset: 0x38CFE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5resetEv.cold.4, symObjAddr: 0x6024, symBinAddr: 0x28F78, symSize: 0x24 } + - { offsetInCU: 0xDB6A, offset: 0x38D6C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5resetEv.cold.3, symObjAddr: 0x6000, symBinAddr: 0x28F54, symSize: 0x24 } + - { offsetInCU: 0xDBD8, offset: 0x38DDA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5resetEv.cold.2, symObjAddr: 0x5FDC, symBinAddr: 0x28F30, symSize: 0x24 } + - { offsetInCU: 0xDC30, offset: 0x38E32, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE5resetEv.cold.5, symObjAddr: 0x6048, symBinAddr: 0x28F9C, symSize: 0x24 } + - { offsetInCU: 0xDCD9, offset: 0x38EDB, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE6insertIJPS2_EEEvNS_14array_iteratorIS3_S4_EEDpOT_.cold.1, symObjAddr: 0x606C, symBinAddr: 0x28FC0, symSize: 0x24 } + - { offsetInCU: 0xDCF0, offset: 0x38EF2, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE6insertIJPS2_EEEvNS_14array_iteratorIS3_S4_EEDpOT_.cold.3, symObjAddr: 0x60B4, symBinAddr: 0x29008, symSize: 0x24 } + - { offsetInCU: 0xDD1D, offset: 0x38F1F, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_10unique_ptrINS_14property_valueEEELm0EE6insertIJPS2_EEEvNS_14array_iteratorIS3_S4_EEDpOT_.cold.2, symObjAddr: 0x6090, symBinAddr: 0x28FE4, symSize: 0x24 } + - { offsetInCU: 0xDDBB, offset: 0x38FBD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj.cold.7, symObjAddr: 0x61B0, symBinAddr: 0x29104, symSize: 0x24 } + - { offsetInCU: 0xDDE8, offset: 0x38FEA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj.cold.6, symObjAddr: 0x618C, symBinAddr: 0x290E0, symSize: 0x24 } + - { offsetInCU: 0xDE15, offset: 0x39017, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj.cold.5, symObjAddr: 0x6168, symBinAddr: 0x290BC, symSize: 0x24 } + - { offsetInCU: 0xDE42, offset: 0x39044, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj.cold.4, symObjAddr: 0x6144, symBinAddr: 0x29098, symSize: 0x24 } + - { offsetInCU: 0xDE6F, offset: 0x39071, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj.cold.3, symObjAddr: 0x6120, symBinAddr: 0x29074, symSize: 0x24 } + - { offsetInCU: 0xDE9C, offset: 0x3909E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj.cold.2, symObjAddr: 0x60FC, symBinAddr: 0x29050, symSize: 0x24 } + - { offsetInCU: 0xDEC9, offset: 0x390CB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE14expand_bucketsEj.cold.1, symObjAddr: 0x60D8, symBinAddr: 0x2902C, symSize: 0x24 } + - { offsetInCU: 0xDEF6, offset: 0x390F8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj.cold.1, symObjAddr: 0x61D4, symBinAddr: 0x29128, symSize: 0x24 } + - { offsetInCU: 0xDF38, offset: 0x3913A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj.cold.5, symObjAddr: 0x6264, symBinAddr: 0x291B8, symSize: 0x24 } + - { offsetInCU: 0xDF7A, offset: 0x3917C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj.cold.4, symObjAddr: 0x6240, symBinAddr: 0x29194, symSize: 0x24 } + - { offsetInCU: 0xDFBC, offset: 0x391BE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj.cold.3, symObjAddr: 0x621C, symBinAddr: 0x29170, symSize: 0x24 } + - { offsetInCU: 0xE02A, offset: 0x3922C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj.cold.2, symObjAddr: 0x61F8, symBinAddr: 0x2914C, symSize: 0x24 } + - { offsetInCU: 0xE082, offset: 0x39284, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE12expand_nodesEj.cold.6, symObjAddr: 0x6288, symBinAddr: 0x291DC, symSize: 0x24 } + - { offsetInCU: 0xE111, offset: 0x39313, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.3, symObjAddr: 0x62F8, symBinAddr: 0x2924C, symSize: 0x24 } + - { offsetInCU: 0xE169, offset: 0x3936B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.9, symObjAddr: 0x63D0, symBinAddr: 0x29324, symSize: 0x28 } + - { offsetInCU: 0xE180, offset: 0x39382, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.8, symObjAddr: 0x63AC, symBinAddr: 0x29300, symSize: 0x24 } + - { offsetInCU: 0xE1AD, offset: 0x393AF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.1, symObjAddr: 0x62AC, symBinAddr: 0x29200, symSize: 0x28 } + - { offsetInCU: 0xE1C4, offset: 0x393C6, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.6, symObjAddr: 0x6364, symBinAddr: 0x292B8, symSize: 0x24 } + - { offsetInCU: 0xE1F1, offset: 0x393F3, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.7, symObjAddr: 0x6388, symBinAddr: 0x292DC, symSize: 0x24 } + - { offsetInCU: 0xE21E, offset: 0x39420, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.5, symObjAddr: 0x6340, symBinAddr: 0x29294, symSize: 0x24 } + - { offsetInCU: 0xE24B, offset: 0x3944D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.4, symObjAddr: 0x631C, symBinAddr: 0x29270, symSize: 0x24 } + - { offsetInCU: 0xE278, offset: 0x3947A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE17alloc_node_by_keyERKS2_.cold.2, symObjAddr: 0x62D4, symBinAddr: 0x29228, symSize: 0x24 } + - { offsetInCU: 0xE33C, offset: 0x3953E, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE32find_index_and_bucket_idx_by_keyERKS2_.cold.1, symObjAddr: 0x63F8, symBinAddr: 0x2934C, symSize: 0x24 } + - { offsetInCU: 0xE369, offset: 0x3956B, size: 0x8, addend: 0x0, symName: __ZNK2bq8hash_mapINS_11string_baseIcEENS_10unique_ptrINS_14property_valueEEEE32find_index_and_bucket_idx_by_keyERKS2_.cold.2, symObjAddr: 0x641C, symBinAddr: 0x29370, symSize: 0x24 } + - { offsetInCU: 0xE44D, offset: 0x3964F, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x65A8, symBinAddr: 0xE874, symSize: 0x8 } + - { offsetInCU: 0xE464, offset: 0x39666, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x65B0, symBinAddr: 0xE87C, symSize: 0x8 } + - { offsetInCU: 0xE47B, offset: 0x3967D, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x65B8, symBinAddr: 0xE884, symSize: 0x8 } + - { offsetInCU: 0xE492, offset: 0x39694, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_3, symObjAddr: 0x65C0, symBinAddr: 0xE88C, symSize: 0x8 } + - { offsetInCU: 0xE4A9, offset: 0x396AB, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_4, symObjAddr: 0x65C8, symBinAddr: 0xE894, symSize: 0x8 } + - { offsetInCU: 0xE4C0, offset: 0x396C2, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_5, symObjAddr: 0x65D0, symBinAddr: 0xE89C, symSize: 0x8 } + - { offsetInCU: 0xE4D7, offset: 0x396D9, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_6, symObjAddr: 0x65D8, symBinAddr: 0xE8A4, symSize: 0x8 } + - { offsetInCU: 0xE4EE, offset: 0x396F0, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_7, symObjAddr: 0x65E0, symBinAddr: 0xE8AC, symSize: 0x8 } + - { offsetInCU: 0xE505, offset: 0x39707, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_8, symObjAddr: 0x65E8, symBinAddr: 0xE8B4, symSize: 0x8 } + - { offsetInCU: 0xE51C, offset: 0x3971E, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_9, symObjAddr: 0x65F0, symBinAddr: 0xE8BC, symSize: 0x8 } + - { offsetInCU: 0x44, offset: 0x39783, size: 0x8, addend: 0x0, symName: __ZN2bqL14_assert_mutex_E, symObjAddr: 0xA5E8, symBinAddr: 0x34968, symSize: 0x0 } + - { offsetInCU: 0x37B, offset: 0x39ABA, size: 0x8, addend: 0x0, symName: __ZN2bq4util28get_gmt_time_by_epoch_unsafeEy, symObjAddr: 0x390, symBinAddr: 0xE8C4, symSize: 0x40 } + - { offsetInCU: 0x3E6, offset: 0x39B25, size: 0x8, addend: 0x0, symName: __ZN2bq4util30get_local_time_by_epoch_unsafeEy, symObjAddr: 0x4D8, symBinAddr: 0xE904, symSize: 0x40 } + - { offsetInCU: 0x440, offset: 0x39B7F, size: 0x8, addend: 0x0, symName: __ZN2bq4util18log_device_consoleENS_9log_levelEPKcz, symObjAddr: 0x518, symBinAddr: 0xE944, symSize: 0x70 } + - { offsetInCU: 0x4C4, offset: 0x39C03, size: 0x8, addend: 0x0, symName: __ZN2bq4util29log_device_console_plain_textENS_9log_levelEPKc, symObjAddr: 0x588, symBinAddr: 0xE9B4, symSize: 0x8 } + - { offsetInCU: 0x501, offset: 0x39C40, size: 0x8, addend: 0x0, symName: __ZN2bq4util11get_hash_64EPKvm, symObjAddr: 0x5BC, symBinAddr: 0xE9BC, symSize: 0x2C } + - { offsetInCU: 0x562, offset: 0x39CA1, size: 0x8, addend: 0x0, symName: __ZN2bq4util16is_little_endianEv, symObjAddr: 0x5E8, symBinAddr: 0xE9E8, symSize: 0x8 } + - { offsetInCU: 0x588, offset: 0x39CC7, size: 0x8, addend: 0x0, symName: __ZN2bq4util13utf16_to_utf8EPKDsjPcj, symObjAddr: 0x640, symBinAddr: 0xE9F0, symSize: 0x1BC } + - { offsetInCU: 0x644, offset: 0x39D83, size: 0x8, addend: 0x0, symName: __ZN2bq4util13utf8_to_utf16EPKcjPDsj, symObjAddr: 0x7FC, symBinAddr: 0xEBAC, symSize: 0x170 } + - { offsetInCU: 0x64E, offset: 0x39D8D, size: 0x8, addend: 0x0, symName: __ZN2bq4util13utf16_to_utf8EPKDsjPcj.cold.1, symObjAddr: 0xBAC, symBinAddr: 0x29394, symSize: 0x28 } + - { offsetInCU: 0x665, offset: 0x39DA4, size: 0x8, addend: 0x0, symName: __ZN2bq4util13utf8_to_utf16EPKcjPDsj, symObjAddr: 0x7FC, symBinAddr: 0xEBAC, symSize: 0x170 } + - { offsetInCU: 0x72A, offset: 0x39E69, size: 0x8, addend: 0x0, symName: __ZN2bq4util13utf8_to_utf16EPKcjPDsj.cold.1, symObjAddr: 0xBD4, symBinAddr: 0x293BC, symSize: 0x28 } + - { offsetInCU: 0x5C, offset: 0x39EFE, size: 0x8, addend: 0x0, symName: __ZN2bq3apiL19signal_stack_holderE, symObjAddr: 0x2EA10, symBinAddr: 0x34978, symSize: 0x0 } + - { offsetInCU: 0x9F, offset: 0x39F41, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE10registeredE, symObjAddr: 0x2060, symBinAddr: 0x346B0, symSize: 0x0 } + - { offsetInCU: 0x130, offset: 0x39FD2, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE18original_sigactionE, symObjAddr: 0x2068, symBinAddr: 0x346B8, symSize: 0x0 } + - { offsetInCU: 0x148, offset: 0x39FEA, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE7handlerE, symObjAddr: 0x2078, symBinAddr: 0x346C8, symSize: 0x0 } + - { offsetInCU: 0x15C, offset: 0x39FFE, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE10registeredE, symObjAddr: 0x2080, symBinAddr: 0x346D0, symSize: 0x0 } + - { offsetInCU: 0x1E2, offset: 0x3A084, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE18original_sigactionE, symObjAddr: 0x2088, symBinAddr: 0x346D8, symSize: 0x0 } + - { offsetInCU: 0x1FA, offset: 0x3A09C, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE7handlerE, symObjAddr: 0x2098, symBinAddr: 0x346E8, symSize: 0x0 } + - { offsetInCU: 0x20E, offset: 0x3A0B0, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE10registeredE, symObjAddr: 0x20A0, symBinAddr: 0x346F0, symSize: 0x0 } + - { offsetInCU: 0x294, offset: 0x3A136, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE18original_sigactionE, symObjAddr: 0x20A8, symBinAddr: 0x346F8, symSize: 0x0 } + - { offsetInCU: 0x2AC, offset: 0x3A14E, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE7handlerE, symObjAddr: 0x20B8, symBinAddr: 0x34708, symSize: 0x0 } + - { offsetInCU: 0x2C0, offset: 0x3A162, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE10registeredE, symObjAddr: 0x20C0, symBinAddr: 0x34710, symSize: 0x0 } + - { offsetInCU: 0x346, offset: 0x3A1E8, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE18original_sigactionE, symObjAddr: 0x20C8, symBinAddr: 0x34718, symSize: 0x0 } + - { offsetInCU: 0x35E, offset: 0x3A200, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE7handlerE, symObjAddr: 0x20D8, symBinAddr: 0x34728, symSize: 0x0 } + - { offsetInCU: 0x372, offset: 0x3A214, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE10registeredE, symObjAddr: 0x20E0, symBinAddr: 0x34730, symSize: 0x0 } + - { offsetInCU: 0x3F8, offset: 0x3A29A, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE18original_sigactionE, symObjAddr: 0x20E8, symBinAddr: 0x34738, symSize: 0x0 } + - { offsetInCU: 0x410, offset: 0x3A2B2, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE7handlerE, symObjAddr: 0x20F8, symBinAddr: 0x34748, symSize: 0x0 } + - { offsetInCU: 0x424, offset: 0x3A2C6, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE10registeredE, symObjAddr: 0x2100, symBinAddr: 0x34750, symSize: 0x0 } + - { offsetInCU: 0x4AA, offset: 0x3A34C, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE18original_sigactionE, symObjAddr: 0x2108, symBinAddr: 0x34758, symSize: 0x0 } + - { offsetInCU: 0x4C2, offset: 0x3A364, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE7handlerE, symObjAddr: 0x2118, symBinAddr: 0x34768, symSize: 0x0 } + - { offsetInCU: 0x4D0, offset: 0x3A372, size: 0x8, addend: 0x0, symName: __ZN2bq3apiL17log_crash_handlerEiP9__siginfoPv, symObjAddr: 0x144, symBinAddr: 0xEE8C, symSize: 0x30 } + - { offsetInCU: 0x621F, offset: 0x400C1, size: 0x8, addend: 0x0, symName: ___api_get_log_version, symObjAddr: 0x10, symBinAddr: 0xED58, symSize: 0xC } + - { offsetInCU: 0x6256, offset: 0x400F8, size: 0x8, addend: 0x0, symName: __ZN2bq3api24signal_stack_holder_typeD1Ev, symObjAddr: 0x1C, symBinAddr: 0xED64, symSize: 0x28 } + - { offsetInCU: 0x629C, offset: 0x4013E, size: 0x8, addend: 0x0, symName: ___api_enable_auto_crash_handler, symObjAddr: 0x44, symBinAddr: 0xED8C, symSize: 0x4C } + - { offsetInCU: 0x632C, offset: 0x401CE, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x90, symBinAddr: 0xEDD8, symSize: 0xB4 } + - { offsetInCU: 0x63C3, offset: 0x40265, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x174, symBinAddr: 0xEEBC, symSize: 0xB4 } + - { offsetInCU: 0x645A, offset: 0x402FC, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x228, symBinAddr: 0xEF70, symSize: 0xB4 } + - { offsetInCU: 0x64F1, offset: 0x40393, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x2DC, symBinAddr: 0xF024, symSize: 0xB4 } + - { offsetInCU: 0x6588, offset: 0x4042A, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x390, symBinAddr: 0xF0D8, symSize: 0xB4 } + - { offsetInCU: 0x661F, offset: 0x404C1, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE11set_handlerEPFviP9__siginfoPvE, symObjAddr: 0x444, symBinAddr: 0xF18C, symSize: 0xB4 } + - { offsetInCU: 0x6AA8, offset: 0x4094A, size: 0x8, addend: 0x0, symName: ___api_create_log, symObjAddr: 0x4F8, symBinAddr: 0xF240, symSize: 0x27C } + - { offsetInCU: 0x71A7, offset: 0x41049, size: 0x8, addend: 0x0, symName: ___api_log_reset_config, symObjAddr: 0x774, symBinAddr: 0xF4BC, symSize: 0x170 } + - { offsetInCU: 0x750D, offset: 0x413AF, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE9on_signalEiP9__siginfoPv, symObjAddr: 0x1638, symBinAddr: 0xFFDC, symSize: 0x74 } + - { offsetInCU: 0x7522, offset: 0x413C4, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRA1_KcEEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x18F0, symBinAddr: 0x10294, symSize: 0x234 } + - { offsetInCU: 0x7B94, offset: 0x41A36, size: 0x8, addend: 0x0, symName: ___api_create_log.cold.1, symObjAddr: 0x1B24, symBinAddr: 0x293E4, symSize: 0x24 } + - { offsetInCU: 0x7BA9, offset: 0x41A4B, size: 0x8, addend: 0x0, symName: ___api_create_log.cold.3, symObjAddr: 0x1B6C, symBinAddr: 0x2942C, symSize: 0x24 } + - { offsetInCU: 0x7BD5, offset: 0x41A77, size: 0x8, addend: 0x0, symName: ___api_create_log.cold.2, symObjAddr: 0x1B48, symBinAddr: 0x29408, symSize: 0x24 } + - { offsetInCU: 0x7C41, offset: 0x41AE3, size: 0x8, addend: 0x0, symName: ___api_create_log.cold.1, symObjAddr: 0x1B24, symBinAddr: 0x293E4, symSize: 0x24 } + - { offsetInCU: 0x7CAD, offset: 0x41B4F, size: 0x8, addend: 0x0, symName: ___api_log_reset_config, symObjAddr: 0x774, symBinAddr: 0xF4BC, symSize: 0x170 } + - { offsetInCU: 0x80E0, offset: 0x41F82, size: 0x8, addend: 0x0, symName: ___api_log_buffer_alloc, symObjAddr: 0x8E4, symBinAddr: 0xF62C, symSize: 0x15C } + - { offsetInCU: 0x80EA, offset: 0x41F8C, size: 0x8, addend: 0x0, symName: ___api_log_reset_config.cold.2, symObjAddr: 0x1BB4, symBinAddr: 0x29474, symSize: 0x24 } + - { offsetInCU: 0x8156, offset: 0x41FF8, size: 0x8, addend: 0x0, symName: ___api_log_reset_config.cold.1, symObjAddr: 0x1B90, symBinAddr: 0x29450, symSize: 0x24 } + - { offsetInCU: 0x821C, offset: 0x420BE, size: 0x8, addend: 0x0, symName: ___api_log_buffer_alloc, symObjAddr: 0x8E4, symBinAddr: 0xF62C, symSize: 0x15C } + - { offsetInCU: 0x83A7, offset: 0x42249, size: 0x8, addend: 0x0, symName: ___api_log_buffer_commit, symObjAddr: 0xA40, symBinAddr: 0xF788, symSize: 0x74 } + - { offsetInCU: 0x8499, offset: 0x4233B, size: 0x8, addend: 0x0, symName: ___api_set_appenders_enable, symObjAddr: 0xAB4, symBinAddr: 0xF7FC, symSize: 0x128 } + - { offsetInCU: 0x84A3, offset: 0x42345, size: 0x8, addend: 0x0, symName: ___api_log_buffer_commit.cold.1, symObjAddr: 0x1BD8, symBinAddr: 0x29498, symSize: 0x28 } + - { offsetInCU: 0x852F, offset: 0x423D1, size: 0x8, addend: 0x0, symName: ___api_set_appenders_enable, symObjAddr: 0xAB4, symBinAddr: 0xF7FC, symSize: 0x128 } + - { offsetInCU: 0x8885, offset: 0x42727, size: 0x8, addend: 0x0, symName: ___api_get_logs_count, symObjAddr: 0xBDC, symBinAddr: 0xF924, symSize: 0x14 } + - { offsetInCU: 0x888F, offset: 0x42731, size: 0x8, addend: 0x0, symName: ___api_set_appenders_enable.cold.1, symObjAddr: 0x1C00, symBinAddr: 0x294C0, symSize: 0x24 } + - { offsetInCU: 0x88FC, offset: 0x4279E, size: 0x8, addend: 0x0, symName: ___api_get_logs_count, symObjAddr: 0xBDC, symBinAddr: 0xF924, symSize: 0x14 } + - { offsetInCU: 0x892B, offset: 0x427CD, size: 0x8, addend: 0x0, symName: ___api_get_log_id_by_index, symObjAddr: 0xBF0, symBinAddr: 0xF938, symSize: 0x30 } + - { offsetInCU: 0x89CF, offset: 0x42871, size: 0x8, addend: 0x0, symName: ___api_get_log_name_by_id, symObjAddr: 0xC20, symBinAddr: 0xF968, symSize: 0x80 } + - { offsetInCU: 0x8A86, offset: 0x42928, size: 0x8, addend: 0x0, symName: ___api_get_log_categories_count, symObjAddr: 0xCA0, symBinAddr: 0xF9E8, symSize: 0x28 } + - { offsetInCU: 0x8ABE, offset: 0x42960, size: 0x8, addend: 0x0, symName: ___api_get_log_category_name_by_index, symObjAddr: 0xCC8, symBinAddr: 0xFA10, symSize: 0x94 } + - { offsetInCU: 0x8B70, offset: 0x42A12, size: 0x8, addend: 0x0, symName: ___api_get_log_merged_log_level_bitmap_by_log_id, symObjAddr: 0xD5C, symBinAddr: 0xFAA4, symSize: 0x2C } + - { offsetInCU: 0x8BCF, offset: 0x42A71, size: 0x8, addend: 0x0, symName: ___api_get_log_category_masks_array_by_log_id, symObjAddr: 0xD88, symBinAddr: 0xFAD0, symSize: 0x54 } + - { offsetInCU: 0x8C2D, offset: 0x42ACF, size: 0x8, addend: 0x0, symName: ___api_get_log_print_stack_level_bitmap_by_log_id, symObjAddr: 0xDDC, symBinAddr: 0xFB24, symSize: 0x2C } + - { offsetInCU: 0x8C65, offset: 0x42B07, size: 0x8, addend: 0x0, symName: ___api_log_device_console, symObjAddr: 0xE08, symBinAddr: 0xFB50, symSize: 0x4 } + - { offsetInCU: 0x8C9B, offset: 0x42B3D, size: 0x8, addend: 0x0, symName: ___api_force_flush, symObjAddr: 0xE0C, symBinAddr: 0xFB54, symSize: 0x34 } + - { offsetInCU: 0x8CC3, offset: 0x42B65, size: 0x8, addend: 0x0, symName: ___api_get_file_base_dir, symObjAddr: 0xE40, symBinAddr: 0xFB88, symSize: 0x28 } + - { offsetInCU: 0x8D29, offset: 0x42BCB, size: 0x8, addend: 0x0, symName: ___api_log_decoder_create, symObjAddr: 0xE68, symBinAddr: 0xFBB0, symSize: 0xE0 } + - { offsetInCU: 0x8F64, offset: 0x42E06, size: 0x8, addend: 0x0, symName: ___api_log_decoder_decode, symObjAddr: 0xF48, symBinAddr: 0xFC90, symSize: 0x60 } + - { offsetInCU: 0x8F6E, offset: 0x42E10, size: 0x8, addend: 0x0, symName: ___api_log_decoder_create.cold.1, symObjAddr: 0x1C24, symBinAddr: 0x294E4, symSize: 0x24 } + - { offsetInCU: 0x8FF2, offset: 0x42E94, size: 0x8, addend: 0x0, symName: ___api_log_decoder_decode, symObjAddr: 0xF48, symBinAddr: 0xFC90, symSize: 0x60 } + - { offsetInCU: 0x90A9, offset: 0x42F4B, size: 0x8, addend: 0x0, symName: ___api_log_decoder_destroy, symObjAddr: 0xFA8, symBinAddr: 0xFCF0, symSize: 0x24 } + - { offsetInCU: 0x90D1, offset: 0x42F73, size: 0x8, addend: 0x0, symName: ___api_log_decode, symObjAddr: 0xFCC, symBinAddr: 0xFD14, symSize: 0x160 } + - { offsetInCU: 0x950B, offset: 0x433AD, size: 0x8, addend: 0x0, symName: ___api_register_console_callbacks, symObjAddr: 0x112C, symBinAddr: 0xFE74, symSize: 0x4 } + - { offsetInCU: 0x9515, offset: 0x433B7, size: 0x8, addend: 0x0, symName: ___api_log_decode.cold.2, symObjAddr: 0x1C6C, symBinAddr: 0x2952C, symSize: 0x24 } + - { offsetInCU: 0x9582, offset: 0x43424, size: 0x8, addend: 0x0, symName: ___api_log_decode.cold.1, symObjAddr: 0x1C48, symBinAddr: 0x29508, symSize: 0x24 } + - { offsetInCU: 0x95EF, offset: 0x43491, size: 0x8, addend: 0x0, symName: ___api_register_console_callbacks, symObjAddr: 0x112C, symBinAddr: 0xFE74, symSize: 0x4 } + - { offsetInCU: 0x9616, offset: 0x434B8, size: 0x8, addend: 0x0, symName: ___api_unregister_console_callbacks, symObjAddr: 0x1130, symBinAddr: 0xFE78, symSize: 0x4 } + - { offsetInCU: 0x963D, offset: 0x434DF, size: 0x8, addend: 0x0, symName: ___api_set_console_buffer_enable, symObjAddr: 0x1134, symBinAddr: 0xFE7C, symSize: 0x4 } + - { offsetInCU: 0x9669, offset: 0x4350B, size: 0x8, addend: 0x0, symName: ___api_fetch_and_remove_console_buffer, symObjAddr: 0x1138, symBinAddr: 0xFE80, symSize: 0x4 } + - { offsetInCU: 0x96A3, offset: 0x43545, size: 0x8, addend: 0x0, symName: ___api_enable_snapshot, symObjAddr: 0x113C, symBinAddr: 0xFE84, symSize: 0x24 } + - { offsetInCU: 0x96E6, offset: 0x43588, size: 0x8, addend: 0x0, symName: ___api_take_snapshot_string, symObjAddr: 0x1160, symBinAddr: 0xFEA8, symSize: 0x78 } + - { offsetInCU: 0x9784, offset: 0x43626, size: 0x8, addend: 0x0, symName: ___api_release_snapshot_string, symObjAddr: 0x11D8, symBinAddr: 0xFF20, symSize: 0x2C } + - { offsetInCU: 0x97C7, offset: 0x43669, size: 0x8, addend: 0x0, symName: ___api_get_stack_trace, symObjAddr: 0x1204, symBinAddr: 0xFF4C, symSize: 0x48 } + - { offsetInCU: 0x9840, offset: 0x436E2, size: 0x8, addend: 0x0, symName: ___api_get_stack_trace_utf16, symObjAddr: 0x124C, symBinAddr: 0xFF94, symSize: 0x48 } + - { offsetInCU: 0x9CAE, offset: 0x43B50, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi11EE9on_signalEiP9__siginfoPv, symObjAddr: 0x1638, symBinAddr: 0xFFDC, symSize: 0x74 } + - { offsetInCU: 0x9D64, offset: 0x43C06, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi6EE9on_signalEiP9__siginfoPv, symObjAddr: 0x16AC, symBinAddr: 0x10050, symSize: 0x74 } + - { offsetInCU: 0x9E0D, offset: 0x43CAF, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi8EE9on_signalEiP9__siginfoPv, symObjAddr: 0x1720, symBinAddr: 0x100C4, symSize: 0x74 } + - { offsetInCU: 0x9EB6, offset: 0x43D58, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi4EE9on_signalEiP9__siginfoPv, symObjAddr: 0x1794, symBinAddr: 0x10138, symSize: 0x74 } + - { offsetInCU: 0x9F5F, offset: 0x43E01, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi5EE9on_signalEiP9__siginfoPv, symObjAddr: 0x1808, symBinAddr: 0x101AC, symSize: 0x74 } + - { offsetInCU: 0xA008, offset: 0x43EAA, size: 0x8, addend: 0x0, symName: __ZN2bq3api18log_signal_handlerILi10EE9on_signalEiP9__siginfoPv, symObjAddr: 0x187C, symBinAddr: 0x10220, symSize: 0x74 } + - { offsetInCU: 0xA0F6, offset: 0x43F98, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRA1_KcEEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x1D70, symBinAddr: 0x29550, symSize: 0x28 } + - { offsetInCU: 0xA10D, offset: 0x43FAF, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRA1_KcEEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.3, symObjAddr: 0x1DBC, symBinAddr: 0x2959C, symSize: 0x24 } + - { offsetInCU: 0xA13A, offset: 0x43FDC, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_11string_baseIcEELm0EE6insertIJRA1_KcEEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x1D98, symBinAddr: 0x29578, symSize: 0x24 } + - { offsetInCU: 0xA167, offset: 0x44009, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x1DE0, symBinAddr: 0x104C8, symSize: 0x8 } + - { offsetInCU: 0xA17E, offset: 0x44020, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x1DE8, symBinAddr: 0x104D0, symSize: 0x8 } + - { offsetInCU: 0x34ED, offset: 0x475EE, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base23get_config_name_by_typeENS0_13appender_typeE, symObjAddr: 0x278, symBinAddr: 0x10704, symSize: 0xF0 } + - { offsetInCU: 0x350E, offset: 0x4760F, size: 0x8, addend: 0x0, symName: __ZZN2bq13appender_base23get_config_name_by_typeENS0_13appender_typeEE16TYPE_CONFIG_NAME, symObjAddr: 0x2CC40, symBinAddr: 0x34980, symSize: 0x0 } + - { offsetInCU: 0x3C96, offset: 0x47D97, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_baseC2Ev, symObjAddr: 0x0, symBinAddr: 0x10510, symSize: 0xBC } + - { offsetInCU: 0x3F12, offset: 0x48013, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_baseD2Ev, symObjAddr: 0x140, symBinAddr: 0x105CC, symSize: 0x130 } + - { offsetInCU: 0x4231, offset: 0x48332, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_baseD1Ev, symObjAddr: 0x270, symBinAddr: 0x106FC, symSize: 0x4 } + - { offsetInCU: 0x4259, offset: 0x4835A, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_baseD0Ev, symObjAddr: 0x274, symBinAddr: 0x10700, symSize: 0x4 } + - { offsetInCU: 0x44B9, offset: 0x485BA, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base10set_enableEb, symObjAddr: 0x3C0, symBinAddr: 0x107F4, symSize: 0x8 } + - { offsetInCU: 0x44EB, offset: 0x485EC, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base10get_enableEv, symObjAddr: 0x3C8, symBinAddr: 0x107FC, symSize: 0x8 } + - { offsetInCU: 0x48F4, offset: 0x489F5, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE, symObjAddr: 0x3D0, symBinAddr: 0x10804, symSize: 0xAB0 } + - { offsetInCU: 0x6783, offset: 0x4A884, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base3logERKNS_16log_entry_handleE, symObjAddr: 0x1008, symBinAddr: 0x112B4, symSize: 0x74 } + - { offsetInCU: 0x6AB4, offset: 0x4ABB5, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIhLm0EE6insertIJRhEEEvNS_21array_iterator_inlineIhS1_EEDpOT_, symObjAddr: 0x1400, symBinAddr: 0x11328, symSize: 0x128 } + - { offsetInCU: 0x6ACA, offset: 0x4ABCB, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIhLm0EE6insertIJRhEEEvNS_21array_iterator_inlineIhS1_EEDpOT_, symObjAddr: 0x1400, symBinAddr: 0x11328, symSize: 0x128 } + - { offsetInCU: 0x6D27, offset: 0x4AE28, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.1, symObjAddr: 0x1528, symBinAddr: 0x295C0, symSize: 0x24 } + - { offsetInCU: 0x6D3D, offset: 0x4AE3E, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.9, symObjAddr: 0x1648, symBinAddr: 0x296E0, symSize: 0x28 } + - { offsetInCU: 0x6D7E, offset: 0x4AE7F, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.10, symObjAddr: 0x1670, symBinAddr: 0x29708, symSize: 0x24 } + - { offsetInCU: 0x6DEA, offset: 0x4AEEB, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.1, symObjAddr: 0x1528, symBinAddr: 0x295C0, symSize: 0x24 } + - { offsetInCU: 0x6E56, offset: 0x4AF57, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.2, symObjAddr: 0x154C, symBinAddr: 0x295E4, symSize: 0x24 } + - { offsetInCU: 0x6EC2, offset: 0x4AFC3, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.5, symObjAddr: 0x15B8, symBinAddr: 0x29650, symSize: 0x24 } + - { offsetInCU: 0x6F2E, offset: 0x4B02F, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.7, symObjAddr: 0x1600, symBinAddr: 0x29698, symSize: 0x24 } + - { offsetInCU: 0x6F9A, offset: 0x4B09B, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.8, symObjAddr: 0x1624, symBinAddr: 0x296BC, symSize: 0x24 } + - { offsetInCU: 0x7006, offset: 0x4B107, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.11, symObjAddr: 0x1694, symBinAddr: 0x2972C, symSize: 0x24 } + - { offsetInCU: 0x7072, offset: 0x4B173, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.3, symObjAddr: 0x1570, symBinAddr: 0x29608, symSize: 0x24 } + - { offsetInCU: 0x70DE, offset: 0x4B1DF, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.4, symObjAddr: 0x1594, symBinAddr: 0x2962C, symSize: 0x24 } + - { offsetInCU: 0x714A, offset: 0x4B24B, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base4initERKNS_11string_baseIcEERKNS_14property_valueEPKNS_7log_impE.cold.6, symObjAddr: 0x15DC, symBinAddr: 0x29674, symSize: 0x24 } + - { offsetInCU: 0x7325, offset: 0x4B426, size: 0x8, addend: 0x0, symName: __ZN2bq13appender_base3logERKNS_16log_entry_handleE, symObjAddr: 0x1008, symBinAddr: 0x112B4, symSize: 0x74 } + - { offsetInCU: 0x7768, offset: 0x4B869, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIhLm0EE6insertIJRhEEEvNS_21array_iterator_inlineIhS1_EEDpOT_.cold.1, symObjAddr: 0x17E4, symBinAddr: 0x29750, symSize: 0x28 } + - { offsetInCU: 0x777F, offset: 0x4B880, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIhLm0EE6insertIJRhEEEvNS_21array_iterator_inlineIhS1_EEDpOT_.cold.3, symObjAddr: 0x1830, symBinAddr: 0x2979C, symSize: 0x24 } + - { offsetInCU: 0x77AC, offset: 0x4B8AD, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIhLm0EE6insertIJRhEEEvNS_21array_iterator_inlineIhS1_EEDpOT_.cold.2, symObjAddr: 0x180C, symBinAddr: 0x29778, symSize: 0x24 } + - { offsetInCU: 0x77D9, offset: 0x4B8DA, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x1854, symBinAddr: 0x11450, symSize: 0x8 } + - { offsetInCU: 0x77F0, offset: 0x4B8F1, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x185C, symBinAddr: 0x11458, symSize: 0x8 } + - { offsetInCU: 0x3AE7, offset: 0x4F3F3, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE12expand_nodesEj, symObjAddr: 0x15F8, symBinAddr: 0x12720, symSize: 0x1B8 } + - { offsetInCU: 0x3CCD, offset: 0x4F5D9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5resetEv, symObjAddr: 0x17B0, symBinAddr: 0x128D8, symSize: 0x98 } + - { offsetInCU: 0x42AD, offset: 0x4FBB9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbEixERKS4_, symObjAddr: 0x48, symBinAddr: 0x1150C, symSize: 0xDC } + - { offsetInCU: 0x4571, offset: 0x4FE7D, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacks14erase_callbackEPFvyiiPKciE, symObjAddr: 0x124, symBinAddr: 0x115E8, symSize: 0xA8 } + - { offsetInCU: 0x47DD, offset: 0x500E9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_, symObjAddr: 0x1848, symBinAddr: 0x12970, symSize: 0x1F0 } + - { offsetInCU: 0x4BE7, offset: 0x504F3, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbEixERKS4_.cold.1, symObjAddr: 0x1A38, symBinAddr: 0x297C0, symSize: 0x24 } + - { offsetInCU: 0x4BF1, offset: 0x504FD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbEixERKS4_.cold.2, symObjAddr: 0x1A5C, symBinAddr: 0x297E4, symSize: 0x24 } + - { offsetInCU: 0x4C48, offset: 0x50554, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbEixERKS4_.cold.1, symObjAddr: 0x1A38, symBinAddr: 0x297C0, symSize: 0x24 } + - { offsetInCU: 0x4CB4, offset: 0x505C0, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbEixERKS4_.cold.3, symObjAddr: 0x1A80, symBinAddr: 0x29808, symSize: 0x24 } + - { offsetInCU: 0x4D0B, offset: 0x50617, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacks14erase_callbackEPFvyiiPKciE, symObjAddr: 0x124, symBinAddr: 0x115E8, symSize: 0xA8 } + - { offsetInCU: 0x4EE3, offset: 0x507EF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5eraseENS_17hash_map_iteratorIS4_bLb0EEE, symObjAddr: 0x1CC, symBinAddr: 0x11690, symSize: 0x12C } + - { offsetInCU: 0x4EED, offset: 0x507F9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5eraseENS_17hash_map_iteratorIS4_bLb0EEE, symObjAddr: 0x1CC, symBinAddr: 0x11690, symSize: 0x12C } + - { offsetInCU: 0x50E5, offset: 0x509F1, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacks4callEyiiPKci, symObjAddr: 0x2F8, symBinAddr: 0x117BC, symSize: 0xEC } + - { offsetInCU: 0x50EF, offset: 0x509FB, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacks14erase_callbackEPFvyiiPKciE.cold.1, symObjAddr: 0x1AA4, symBinAddr: 0x2982C, symSize: 0x24 } + - { offsetInCU: 0x5146, offset: 0x50A52, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacks14erase_callbackEPFvyiiPKciE.cold.2, symObjAddr: 0x1AC8, symBinAddr: 0x29850, symSize: 0x24 } + - { offsetInCU: 0x5207, offset: 0x50B13, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5eraseENS_17hash_map_iteratorIS4_bLb0EEE.cold.3, symObjAddr: 0x1B34, symBinAddr: 0x298BC, symSize: 0x24 } + - { offsetInCU: 0x5234, offset: 0x50B40, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5eraseENS_17hash_map_iteratorIS4_bLb0EEE.cold.1, symObjAddr: 0x1AEC, symBinAddr: 0x29874, symSize: 0x24 } + - { offsetInCU: 0x52A2, offset: 0x50BAE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5eraseENS_17hash_map_iteratorIS4_bLb0EEE.cold.5, symObjAddr: 0x1B7C, symBinAddr: 0x29904, symSize: 0x24 } + - { offsetInCU: 0x52CF, offset: 0x50BDB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5eraseENS_17hash_map_iteratorIS4_bLb0EEE.cold.4, symObjAddr: 0x1B58, symBinAddr: 0x298E0, symSize: 0x24 } + - { offsetInCU: 0x52FC, offset: 0x50C08, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5eraseENS_17hash_map_iteratorIS4_bLb0EEE.cold.2, symObjAddr: 0x1B10, symBinAddr: 0x29898, symSize: 0x24 } + - { offsetInCU: 0x538F, offset: 0x50C9B, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacks4callEyiiPKci, symObjAddr: 0x2F8, symBinAddr: 0x117BC, symSize: 0xEC } + - { offsetInCU: 0x55DE, offset: 0x50EEA, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacks4callEyiiPKci.cold.1, symObjAddr: 0x1BA0, symBinAddr: 0x29928, symSize: 0x24 } + - { offsetInCU: 0x561F, offset: 0x50F2B, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacks4callEyiiPKci.cold.3, symObjAddr: 0x1BE8, symBinAddr: 0x29970, symSize: 0x24 } + - { offsetInCU: 0x5660, offset: 0x50F6C, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacks4callEyiiPKci.cold.2, symObjAddr: 0x1BC4, symBinAddr: 0x2994C, symSize: 0x24 } + - { offsetInCU: 0x56B7, offset: 0x50FC3, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console17console_callbacks4callEyiiPKci.cold.4, symObjAddr: 0x1C0C, symBinAddr: 0x29994, symSize: 0x24 } + - { offsetInCU: 0x5B60, offset: 0x5146C, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console19console_ring_buffer6insertEyiiPKci, symObjAddr: 0x4E4, symBinAddr: 0x118A8, symSize: 0x318 } + - { offsetInCU: 0x60A1, offset: 0x519AD, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console19console_ring_buffer16fetch_and_removeEPFvPvyiiPKciEPKv, symObjAddr: 0x7FC, symBinAddr: 0x11BC0, symSize: 0xC8 } + - { offsetInCU: 0x6274, offset: 0x51B80, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_consoleC1Ev, symObjAddr: 0x8FC, symBinAddr: 0x11C88, symSize: 0x30 } + - { offsetInCU: 0x6483, offset: 0x51D8F, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console25register_console_callbackEPFvyiiPKciE, symObjAddr: 0x92C, symBinAddr: 0x11CB8, symSize: 0x11C } + - { offsetInCU: 0x6810, offset: 0x5211C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj, symObjAddr: 0x1450, symBinAddr: 0x12578, symSize: 0x1A8 } + - { offsetInCU: 0x6AB6, offset: 0x523C2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE12expand_nodesEj, symObjAddr: 0x15F8, symBinAddr: 0x12720, symSize: 0x1B8 } + - { offsetInCU: 0x6AC1, offset: 0x523CD, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console27unregister_console_callbackEPFvyiiPKciE, symObjAddr: 0xAC0, symBinAddr: 0x11DD4, symSize: 0xF8 } + - { offsetInCU: 0x6DD7, offset: 0x526E3, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console25set_console_buffer_enableEb, symObjAddr: 0xBB8, symBinAddr: 0x11ECC, symSize: 0xFC } + - { offsetInCU: 0x70DA, offset: 0x529E6, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console36fetch_and_remove_from_console_bufferEPFvPvyiiPKciEPKv, symObjAddr: 0xCB4, symBinAddr: 0x11FC8, symSize: 0xFC } + - { offsetInCU: 0x7663, offset: 0x52F6F, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console9init_implERKNS_14property_valueE, symObjAddr: 0xDB0, symBinAddr: 0x120C4, symSize: 0x128 } + - { offsetInCU: 0x7C14, offset: 0x53520, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console8log_implERKNS_16log_entry_handleE, symObjAddr: 0xED8, symBinAddr: 0x121EC, symSize: 0x290 } + - { offsetInCU: 0x7DB2, offset: 0x536BE, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console9init_implERKNS_14property_valueE.cold.1, symObjAddr: 0x1C30, symBinAddr: 0x299B8, symSize: 0x24 } + - { offsetInCU: 0x7E1E, offset: 0x5372A, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console9init_implERKNS_14property_valueE.cold.2, symObjAddr: 0x1C54, symBinAddr: 0x299DC, symSize: 0x24 } + - { offsetInCU: 0x7FE0, offset: 0x538EC, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console8log_implERKNS_16log_entry_handleE, symObjAddr: 0xED8, symBinAddr: 0x121EC, symSize: 0x290 } + - { offsetInCU: 0x8721, offset: 0x5402D, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console8log_implERKNS_16log_entry_handleE.cold.1, symObjAddr: 0x1C78, symBinAddr: 0x29A00, symSize: 0x28 } + - { offsetInCU: 0x8828, offset: 0x54134, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_console19console_static_miscD1Ev, symObjAddr: 0x1354, symBinAddr: 0x1247C, symSize: 0x40 } + - { offsetInCU: 0x8936, offset: 0x54242, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5resetEv, symObjAddr: 0x17B0, symBinAddr: 0x128D8, symSize: 0x98 } + - { offsetInCU: 0x8A95, offset: 0x543A1, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_, symObjAddr: 0x1848, symBinAddr: 0x12970, symSize: 0x1F0 } + - { offsetInCU: 0x8AB9, offset: 0x543C5, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_consoleD1Ev, symObjAddr: 0x1394, symBinAddr: 0x124BC, symSize: 0x5C } + - { offsetInCU: 0x8C0C, offset: 0x54518, size: 0x8, addend: 0x0, symName: __ZN2bq16appender_consoleD0Ev, symObjAddr: 0x13F0, symBinAddr: 0x12518, symSize: 0x60 } + - { offsetInCU: 0x8D66, offset: 0x54672, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj.cold.7, symObjAddr: 0x1DEC, symBinAddr: 0x29B00, symSize: 0x24 } + - { offsetInCU: 0x8D93, offset: 0x5469F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj.cold.6, symObjAddr: 0x1DC8, symBinAddr: 0x29ADC, symSize: 0x24 } + - { offsetInCU: 0x8DC0, offset: 0x546CC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj.cold.5, symObjAddr: 0x1DA4, symBinAddr: 0x29AB8, symSize: 0x24 } + - { offsetInCU: 0x8DED, offset: 0x546F9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj.cold.4, symObjAddr: 0x1D80, symBinAddr: 0x29A94, symSize: 0x24 } + - { offsetInCU: 0x8E1A, offset: 0x54726, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj.cold.3, symObjAddr: 0x1D5C, symBinAddr: 0x29A70, symSize: 0x24 } + - { offsetInCU: 0x8E47, offset: 0x54753, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj.cold.2, symObjAddr: 0x1D38, symBinAddr: 0x29A4C, symSize: 0x24 } + - { offsetInCU: 0x8E74, offset: 0x54780, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE14expand_bucketsEj.cold.1, symObjAddr: 0x1D14, symBinAddr: 0x29A28, symSize: 0x24 } + - { offsetInCU: 0x8EB7, offset: 0x547C3, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE12expand_nodesEj.cold.1, symObjAddr: 0x1E10, symBinAddr: 0x29B24, symSize: 0x24 } + - { offsetInCU: 0x8EF9, offset: 0x54805, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE12expand_nodesEj.cold.2, symObjAddr: 0x1E34, symBinAddr: 0x29B48, symSize: 0x24 } + - { offsetInCU: 0x8F3B, offset: 0x54847, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE12expand_nodesEj.cold.3, symObjAddr: 0x1E58, symBinAddr: 0x29B6C, symSize: 0x24 } + - { offsetInCU: 0x8F7E, offset: 0x5488A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5resetEv.cold.2, symObjAddr: 0x1EA0, symBinAddr: 0x29BB4, symSize: 0x24 } + - { offsetInCU: 0x8FEC, offset: 0x548F8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5resetEv.cold.1, symObjAddr: 0x1E7C, symBinAddr: 0x29B90, symSize: 0x24 } + - { offsetInCU: 0x902E, offset: 0x5493A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE5resetEv.cold.3, symObjAddr: 0x1EC4, symBinAddr: 0x29BD8, symSize: 0x24 } + - { offsetInCU: 0x90D3, offset: 0x549DF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.2, symObjAddr: 0x1F10, symBinAddr: 0x29C24, symSize: 0x24 } + - { offsetInCU: 0x912B, offset: 0x54A37, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.9, symObjAddr: 0x2010, symBinAddr: 0x29D24, symSize: 0x24 } + - { offsetInCU: 0x916E, offset: 0x54A7A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.7, symObjAddr: 0x1FC4, symBinAddr: 0x29CD8, symSize: 0x24 } + - { offsetInCU: 0x919C, offset: 0x54AA8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.1, symObjAddr: 0x1EE8, symBinAddr: 0x29BFC, symSize: 0x28 } + - { offsetInCU: 0x91B2, offset: 0x54ABE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.5, symObjAddr: 0x1F7C, symBinAddr: 0x29C90, symSize: 0x24 } + - { offsetInCU: 0x91DF, offset: 0x54AEB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.10, symObjAddr: 0x2034, symBinAddr: 0x29D48, symSize: 0x24 } + - { offsetInCU: 0x9222, offset: 0x54B2E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.6, symObjAddr: 0x1FA0, symBinAddr: 0x29CB4, symSize: 0x24 } + - { offsetInCU: 0x924F, offset: 0x54B5B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.4, symObjAddr: 0x1F58, symBinAddr: 0x29C6C, symSize: 0x24 } + - { offsetInCU: 0x927C, offset: 0x54B88, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.3, symObjAddr: 0x1F34, symBinAddr: 0x29C48, symSize: 0x24 } + - { offsetInCU: 0x92AA, offset: 0x54BB6, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIPFvyiiPKciEbE17alloc_node_by_keyERKS4_.cold.8, symObjAddr: 0x1FE8, symBinAddr: 0x29CFC, symSize: 0x28 } + - { offsetInCU: 0x92C1, offset: 0x54BCD, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x2058, symBinAddr: 0x12B60, symSize: 0x8 } + - { offsetInCU: 0x92D8, offset: 0x54BE4, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x2060, symBinAddr: 0x12B68, symSize: 0x8 } + - { offsetInCU: 0x92EF, offset: 0x54BFB, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x2068, symBinAddr: 0x12B70, symSize: 0x8 } + - { offsetInCU: 0x26, offset: 0x54C3C, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseD2Ev, symObjAddr: 0x0, symBinAddr: 0x12B78, symSize: 0x8C } + - { offsetInCU: 0x49C1, offset: 0x595D7, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseD2Ev, symObjAddr: 0x0, symBinAddr: 0x12B78, symSize: 0x8C } + - { offsetInCU: 0x4B22, offset: 0x59738, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseD1Ev, symObjAddr: 0x8C, symBinAddr: 0x12C04, symSize: 0x4 } + - { offsetInCU: 0x4B4A, offset: 0x59760, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_baseD0Ev, symObjAddr: 0x90, symBinAddr: 0x12C08, symSize: 0x4 } + - { offsetInCU: 0x4DCE, offset: 0x599E4, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base11flush_cacheEv, symObjAddr: 0x9C, symBinAddr: 0x12C0C, symSize: 0x2CC } + - { offsetInCU: 0x53FD, offset: 0x5A013, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base29open_new_indexed_file_by_nameEv, symObjAddr: 0x368, symBinAddr: 0x12ED8, symSize: 0x5DC } + - { offsetInCU: 0x5407, offset: 0x5A01D, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base29open_new_indexed_file_by_nameEv, symObjAddr: 0x368, symBinAddr: 0x12ED8, symSize: 0x5DC } + - { offsetInCU: 0x664F, offset: 0x5B265, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8flush_ioEv, symObjAddr: 0x944, symBinAddr: 0x134B4, symSize: 0x1B8 } + - { offsetInCU: 0x6659, offset: 0x5B26F, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base11flush_cacheEv.cold.1, symObjAddr: 0x25A8, symBinAddr: 0x29D6C, symSize: 0x24 } + - { offsetInCU: 0x66C5, offset: 0x5B2DB, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base11flush_cacheEv.cold.2, symObjAddr: 0x25CC, symBinAddr: 0x29D90, symSize: 0x24 } + - { offsetInCU: 0x6B3F, offset: 0x5B755, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23clear_all_expired_filesEv, symObjAddr: 0x18B0, symBinAddr: 0x14230, symSize: 0x2E8 } + - { offsetInCU: 0x73AF, offset: 0x5BFC5, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21clear_all_limit_filesEv, symObjAddr: 0x1B98, symBinAddr: 0x14518, symSize: 0x478 } + - { offsetInCU: 0x73B9, offset: 0x5BFCF, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21clear_all_limit_filesEv, symObjAddr: 0x1B98, symBinAddr: 0x14518, symSize: 0x478 } + - { offsetInCU: 0x8498, offset: 0x5D0AE, size: 0x8, addend: 0x0, symName: __ZNK2bq18appender_file_base18parse_file_context21log_parse_fail_reasonEPKc, symObjAddr: 0x210C, symBinAddr: 0x14990, symSize: 0x4C } + - { offsetInCU: 0x862C, offset: 0x5D242, size: 0x8, addend: 0x0, symName: '__ZZN2bq18appender_file_base21clear_all_limit_filesEvEN3$_08__invokeEPKvS3_', symObjAddr: 0x22B8, symBinAddr: 0x149DC, symSize: 0x18 } + - { offsetInCU: 0x8647, offset: 0x5D25D, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base30open_file_with_write_exclusiveERKNS_11string_baseIcEE, symObjAddr: 0x17F4, symBinAddr: 0x14174, symSize: 0xBC } + - { offsetInCU: 0x8740, offset: 0x5D356, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base29open_new_indexed_file_by_nameEv.cold.5, symObjAddr: 0x2680, symBinAddr: 0x29E44, symSize: 0x24 } + - { offsetInCU: 0x876D, offset: 0x5D383, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base29open_new_indexed_file_by_nameEv.cold.2, symObjAddr: 0x2614, symBinAddr: 0x29DD8, symSize: 0x24 } + - { offsetInCU: 0x879A, offset: 0x5D3B0, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base29open_new_indexed_file_by_nameEv.cold.1, symObjAddr: 0x25F0, symBinAddr: 0x29DB4, symSize: 0x24 } + - { offsetInCU: 0x8831, offset: 0x5D447, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base29open_new_indexed_file_by_nameEv.cold.4, symObjAddr: 0x265C, symBinAddr: 0x29E20, symSize: 0x24 } + - { offsetInCU: 0x8874, offset: 0x5D48A, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base29open_new_indexed_file_by_nameEv.cold.3, symObjAddr: 0x2638, symBinAddr: 0x29DFC, symSize: 0x24 } + - { offsetInCU: 0x88B6, offset: 0x5D4CC, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8flush_ioEv, symObjAddr: 0x944, symBinAddr: 0x134B4, symSize: 0x1B8 } + - { offsetInCU: 0x8D3F, offset: 0x5D955, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE, symObjAddr: 0xAFC, symBinAddr: 0x1366C, symSize: 0x648 } + - { offsetInCU: 0x8D49, offset: 0x5D95F, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8flush_ioEv.cold.1, symObjAddr: 0x26A4, symBinAddr: 0x29E68, symSize: 0x24 } + - { offsetInCU: 0x8DB5, offset: 0x5D9CB, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8flush_ioEv.cold.2, symObjAddr: 0x26C8, symBinAddr: 0x29E8C, symSize: 0x24 } + - { offsetInCU: 0x8F08, offset: 0x5DB1E, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE, symObjAddr: 0xAFC, symBinAddr: 0x1366C, symSize: 0x648 } + - { offsetInCU: 0xA9CA, offset: 0x5F5E0, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8log_implERKNS_16log_entry_handleE, symObjAddr: 0x12CC, symBinAddr: 0x13CB4, symSize: 0x4 } + - { offsetInCU: 0xA9FF, offset: 0x5F615, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.12, symObjAddr: 0x2878, symBinAddr: 0x2A03C, symSize: 0x24 } + - { offsetInCU: 0xAA40, offset: 0x5F656, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.11, symObjAddr: 0x2854, symBinAddr: 0x2A018, symSize: 0x24 } + - { offsetInCU: 0xAA81, offset: 0x5F697, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.16, symObjAddr: 0x2908, symBinAddr: 0x2A0CC, symSize: 0x28 } + - { offsetInCU: 0xAAC2, offset: 0x5F6D8, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.15, symObjAddr: 0x28E4, symBinAddr: 0x2A0A8, symSize: 0x24 } + - { offsetInCU: 0xAB03, offset: 0x5F719, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.1, symObjAddr: 0x26EC, symBinAddr: 0x29EB0, symSize: 0x24 } + - { offsetInCU: 0xAB6F, offset: 0x5F785, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.2, symObjAddr: 0x2710, symBinAddr: 0x29ED4, symSize: 0x24 } + - { offsetInCU: 0xABDB, offset: 0x5F7F1, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.4, symObjAddr: 0x2758, symBinAddr: 0x29F1C, symSize: 0x24 } + - { offsetInCU: 0xAC47, offset: 0x5F85D, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.5, symObjAddr: 0x277C, symBinAddr: 0x29F40, symSize: 0x24 } + - { offsetInCU: 0xACB3, offset: 0x5F8C9, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.17, symObjAddr: 0x2930, symBinAddr: 0x2A0F4, symSize: 0x24 } + - { offsetInCU: 0xAD1F, offset: 0x5F935, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.7, symObjAddr: 0x27C4, symBinAddr: 0x29F88, symSize: 0x24 } + - { offsetInCU: 0xAD8B, offset: 0x5F9A1, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.9, symObjAddr: 0x280C, symBinAddr: 0x29FD0, symSize: 0x24 } + - { offsetInCU: 0xADF7, offset: 0x5FA0D, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.6, symObjAddr: 0x27A0, symBinAddr: 0x29F64, symSize: 0x24 } + - { offsetInCU: 0xAE63, offset: 0x5FA79, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.8, symObjAddr: 0x27E8, symBinAddr: 0x29FAC, symSize: 0x24 } + - { offsetInCU: 0xAECF, offset: 0x5FAE5, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.13, symObjAddr: 0x289C, symBinAddr: 0x2A060, symSize: 0x24 } + - { offsetInCU: 0xAF3B, offset: 0x5FB51, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.10, symObjAddr: 0x2830, symBinAddr: 0x29FF4, symSize: 0x24 } + - { offsetInCU: 0xAFA7, offset: 0x5FBBD, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.3, symObjAddr: 0x2734, symBinAddr: 0x29EF8, symSize: 0x24 } + - { offsetInCU: 0xB013, offset: 0x5FC29, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base9init_implERKNS_14property_valueE.cold.14, symObjAddr: 0x28C0, symBinAddr: 0x2A084, symSize: 0x24 } + - { offsetInCU: 0xB0F8, offset: 0x5FD0E, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8log_implERKNS_16log_entry_handleE, symObjAddr: 0x12CC, symBinAddr: 0x13CB4, symSize: 0x4 } + - { offsetInCU: 0xB131, offset: 0x5FD47, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base8log_implERKNS_16log_entry_handleE, symObjAddr: 0x12CC, symBinAddr: 0x13CB4, symSize: 0x4 } + - { offsetInCU: 0xB14A, offset: 0x5FD60, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base19refresh_file_handleERKNS_16log_entry_handleE, symObjAddr: 0x12D0, symBinAddr: 0x13CB8, symSize: 0x108 } + - { offsetInCU: 0xB38C, offset: 0x5FFA2, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base12on_file_openEb, symObjAddr: 0x13D8, symBinAddr: 0x13DC0, symSize: 0x4 } + - { offsetInCU: 0xB3BB, offset: 0x5FFD1, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23seek_read_file_absoluteEm, symObjAddr: 0x13DC, symBinAddr: 0x13DC4, symSize: 0x58 } + - { offsetInCU: 0xB4A2, offset: 0x600B8, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21seek_read_file_offsetEi, symObjAddr: 0x1478, symBinAddr: 0x13E1C, symSize: 0x30 } + - { offsetInCU: 0xB50B, offset: 0x60121, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base15read_with_cacheEm, symObjAddr: 0x14A8, symBinAddr: 0x13E4C, symSize: 0x1D8 } + - { offsetInCU: 0xB515, offset: 0x6012B, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21seek_read_file_offsetEi.cold.1, symObjAddr: 0x299C, symBinAddr: 0x2A118, symSize: 0x28 } + - { offsetInCU: 0xB5BC, offset: 0x601D2, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base15read_with_cacheEm, symObjAddr: 0x14A8, symBinAddr: 0x13E4C, symSize: 0x1D8 } + - { offsetInCU: 0xBAAD, offset: 0x606C3, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base22write_with_cache_allocEm, symObjAddr: 0x1680, symBinAddr: 0x14024, symSize: 0xE8 } + - { offsetInCU: 0xBAB7, offset: 0x606CD, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base15read_with_cacheEm.cold.1, symObjAddr: 0x29C4, symBinAddr: 0x2A140, symSize: 0x28 } + - { offsetInCU: 0xBAE3, offset: 0x606F9, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base15read_with_cacheEm.cold.3, symObjAddr: 0x2A10, symBinAddr: 0x2A18C, symSize: 0x28 } + - { offsetInCU: 0xBB0F, offset: 0x60725, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base15read_with_cacheEm.cold.2, symObjAddr: 0x29EC, symBinAddr: 0x2A168, symSize: 0x24 } + - { offsetInCU: 0xBB50, offset: 0x60766, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base22write_with_cache_allocEm, symObjAddr: 0x1680, symBinAddr: 0x14024, symSize: 0xE8 } + - { offsetInCU: 0xBC95, offset: 0x608AB, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23write_with_cache_commitERKNS0_23write_with_cache_handleE, symObjAddr: 0x1768, symBinAddr: 0x1410C, symSize: 0x60 } + - { offsetInCU: 0xBC9F, offset: 0x608B5, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base22write_with_cache_allocEm.cold.1, symObjAddr: 0x2A38, symBinAddr: 0x2A1B4, symSize: 0x24 } + - { offsetInCU: 0xBD16, offset: 0x6092C, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23write_with_cache_commitERKNS0_23write_with_cache_handleE, symObjAddr: 0x1768, symBinAddr: 0x1410C, symSize: 0x60 } + - { offsetInCU: 0xBDB9, offset: 0x609CF, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21get_current_file_sizeEv, symObjAddr: 0x17C8, symBinAddr: 0x1416C, symSize: 0x8 } + - { offsetInCU: 0xBDC3, offset: 0x609D9, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23write_with_cache_commitERKNS0_23write_with_cache_handleE.cold.1, symObjAddr: 0x2A5C, symBinAddr: 0x2A1D8, symSize: 0x28 } + - { offsetInCU: 0xBDEE, offset: 0x60A04, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21get_current_file_sizeEv, symObjAddr: 0x17C8, symBinAddr: 0x1416C, symSize: 0x8 } + - { offsetInCU: 0xBE64, offset: 0x60A7A, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base23clear_all_expired_filesEv.cold.1, symObjAddr: 0x2A84, symBinAddr: 0x2A200, symSize: 0x24 } + - { offsetInCU: 0xC316, offset: 0x60F2C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_, symObjAddr: 0x22D0, symBinAddr: 0x149F4, symSize: 0x194 } + - { offsetInCU: 0xCA6B, offset: 0x61681, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE12set_capacityEmb, symObjAddr: 0x2464, symBinAddr: 0x14B88, symSize: 0x144 } + - { offsetInCU: 0xCA9C, offset: 0x616B2, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21clear_all_limit_filesEv.cold.2, symObjAddr: 0x2ACC, symBinAddr: 0x2A248, symSize: 0x24 } + - { offsetInCU: 0xCADE, offset: 0x616F4, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base21clear_all_limit_filesEv.cold.1, symObjAddr: 0x2AA8, symBinAddr: 0x2A224, symSize: 0x24 } + - { offsetInCU: 0xCBE3, offset: 0x617F9, size: 0x8, addend: 0x0, symName: __ZNK2bq18appender_file_base18parse_file_context21log_parse_fail_reasonEPKc, symObjAddr: 0x210C, symBinAddr: 0x14990, symSize: 0x4C } + - { offsetInCU: 0xCD6B, offset: 0x61981, size: 0x8, addend: 0x0, symName: '__ZZN2bq18appender_file_base21clear_all_limit_filesEvEN3$_08__invokeEPKvS3_', symObjAddr: 0x22B8, symBinAddr: 0x149DC, symSize: 0x18 } + - { offsetInCU: 0xCDA3, offset: 0x619B9, size: 0x8, addend: 0x0, symName: '__ZZN2bq18appender_file_base21clear_all_limit_filesEvEN3$_08__invokeEPKvS3_', symObjAddr: 0x22B8, symBinAddr: 0x149DC, symSize: 0x18 } + - { offsetInCU: 0xCFDF, offset: 0x61BF5, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE12set_capacityEmb, symObjAddr: 0x2464, symBinAddr: 0x14B88, symSize: 0x144 } + - { offsetInCU: 0xD335, offset: 0x61F4B, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_base11flush_cacheEv.cold.1, symObjAddr: 0x25A8, symBinAddr: 0x29D6C, symSize: 0x24 } + - { offsetInCU: 0xD33F, offset: 0x61F55, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_.cold.1, symObjAddr: 0x2B88, symBinAddr: 0x2A26C, symSize: 0x28 } + - { offsetInCU: 0xD356, offset: 0x61F6C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE6insertIJS4_EEEvNS_14array_iteratorIS4_S5_EEDpOT_.cold.2, symObjAddr: 0x2BB0, symBinAddr: 0x2A294, symSize: 0x28 } + - { offsetInCU: 0xD383, offset: 0x61F99, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_5tupleIJyNS_11string_baseIcEEyEEELm0EE12set_capacityEmb.cold.1, symObjAddr: 0x2BD8, symBinAddr: 0x2A2BC, symSize: 0x24 } + - { offsetInCU: 0xD39A, offset: 0x61FB0, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x2BFC, symBinAddr: 0x14CCC, symSize: 0x8 } + - { offsetInCU: 0xD3B1, offset: 0x61FC7, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x2C04, symBinAddr: 0x14CD4, symSize: 0x8 } + - { offsetInCU: 0xD3C8, offset: 0x61FDE, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x2C0C, symBinAddr: 0x14CDC, symSize: 0x8 } + - { offsetInCU: 0x26, offset: 0x6204A, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binary20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0x0, symBinAddr: 0x14CE4, symSize: 0x24C } + - { offsetInCU: 0x3306, offset: 0x6532A, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binary20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0x0, symBinAddr: 0x14CE4, symSize: 0x24C } + - { offsetInCU: 0x3478, offset: 0x6549C, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binary12on_file_openEb, symObjAddr: 0x24C, symBinAddr: 0x14F30, symSize: 0x38 } + - { offsetInCU: 0x34C4, offset: 0x654E8, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_file_binary17write_file_headerEv, symObjAddr: 0x284, symBinAddr: 0x14F68, symSize: 0x138 } + - { offsetInCU: 0x57, offset: 0x656B1, size: 0x8, addend: 0x0, symName: __ZN2bqL28log_file_ext_name_compressedE, symObjAddr: 0x53768, symBinAddr: 0x34AE0, symSize: 0x0 } + - { offsetInCU: 0x542E, offset: 0x6AA88, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed9init_implERKNS_14property_valueE, symObjAddr: 0x0, symBinAddr: 0x150A0, symSize: 0x30 } + - { offsetInCU: 0x54B7, offset: 0x6AB11, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed12on_file_openEb, symObjAddr: 0x30, symBinAddr: 0x150D0, symSize: 0x38 } + - { offsetInCU: 0x5503, offset: 0x6AB5D, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv, symObjAddr: 0x68, symBinAddr: 0x15108, symSize: 0x218 } + - { offsetInCU: 0x5A37, offset: 0x6B091, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv.cold.5, symObjAddr: 0x4348, symBinAddr: 0x2A370, symSize: 0x24 } + - { offsetInCU: 0x5ABB, offset: 0x6B115, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv.cold.2, symObjAddr: 0x42DC, symBinAddr: 0x2A304, symSize: 0x24 } + - { offsetInCU: 0x5B3F, offset: 0x6B199, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv.cold.4, symObjAddr: 0x4324, symBinAddr: 0x2A34C, symSize: 0x24 } + - { offsetInCU: 0x5B97, offset: 0x6B1F1, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv.cold.1, symObjAddr: 0x42B8, symBinAddr: 0x2A2E0, symSize: 0x24 } + - { offsetInCU: 0x5BEF, offset: 0x6B249, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv.cold.6, symObjAddr: 0x436C, symBinAddr: 0x2A394, symSize: 0x24 } + - { offsetInCU: 0x5C48, offset: 0x6B2A2, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv.cold.3, symObjAddr: 0x4300, symBinAddr: 0x2A328, symSize: 0x24 } + - { offsetInCU: 0x5D94, offset: 0x6B3EE, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed17get_file_ext_nameEv, symObjAddr: 0x2B8, symBinAddr: 0x15320, symSize: 0x70 } + - { offsetInCU: 0x5E9A, offset: 0x6B4F4, size: 0x8, addend: 0x0, symName: __ZNK2bq24appender_file_compressed25get_binary_format_versionEv, symObjAddr: 0x328, symBinAddr: 0x15390, symSize: 0x8 } + - { offsetInCU: 0x602E, offset: 0x6B688, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed5resetEv.cold.1, symObjAddr: 0x42B8, symBinAddr: 0x2A2E0, symSize: 0x24 } + - { offsetInCU: 0x6038, offset: 0x6B692, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed17get_file_ext_nameEv.cold.1, symObjAddr: 0x4390, symBinAddr: 0x2A3B8, symSize: 0x24 } + - { offsetInCU: 0x60A5, offset: 0x6B6FF, size: 0x8, addend: 0x0, symName: __ZNK2bq24appender_file_compressed25get_binary_format_versionEv, symObjAddr: 0x328, symBinAddr: 0x15390, symSize: 0x8 } + - { offsetInCU: 0x60ED, offset: 0x6B747, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0x330, symBinAddr: 0x15398, symSize: 0x158 } + - { offsetInCU: 0x6397, offset: 0x6B9F1, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed15parse_log_entryERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE, symObjAddr: 0x1650, symBinAddr: 0x1667C, symSize: 0x3A4 } + - { offsetInCU: 0x6473, offset: 0x6BACD, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed14read_item_dataERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0x488, symBinAddr: 0x154F0, symSize: 0x220 } + - { offsetInCU: 0x654F, offset: 0x6BBA9, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE, symObjAddr: 0x6A8, symBinAddr: 0x15710, symSize: 0xF6C } + - { offsetInCU: 0x815F, offset: 0x6D7B9, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE18fill_uninitializedIDsEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm, symObjAddr: 0x1A18, symBinAddr: 0x16A20, symSize: 0x100 } + - { offsetInCU: 0x824B, offset: 0x6D8A5, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE, symObjAddr: 0x1B18, symBinAddr: 0x16B20, symSize: 0x24D8 } + - { offsetInCU: 0x825E, offset: 0x6D8B8, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.33, symObjAddr: 0x4834, symBinAddr: 0x2A85C, symSize: 0x24 } + - { offsetInCU: 0x82F6, offset: 0x6D950, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.12, symObjAddr: 0x4540, symBinAddr: 0x2A568, symSize: 0x24 } + - { offsetInCU: 0x838E, offset: 0x6D9E8, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.44, symObjAddr: 0x49C0, symBinAddr: 0x2A9E8, symSize: 0x24 } + - { offsetInCU: 0x8411, offset: 0x6DA6B, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.43, symObjAddr: 0x499C, symBinAddr: 0x2A9C4, symSize: 0x24 } + - { offsetInCU: 0x8494, offset: 0x6DAEE, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.23, symObjAddr: 0x46CC, symBinAddr: 0x2A6F4, symSize: 0x24 } + - { offsetInCU: 0x8517, offset: 0x6DB71, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.22, symObjAddr: 0x46A8, symBinAddr: 0x2A6D0, symSize: 0x24 } + - { offsetInCU: 0x859A, offset: 0x6DBF4, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.37, symObjAddr: 0x48C4, symBinAddr: 0x2A8EC, symSize: 0x24 } + - { offsetInCU: 0x861D, offset: 0x6DC77, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.16, symObjAddr: 0x45D0, symBinAddr: 0x2A5F8, symSize: 0x24 } + - { offsetInCU: 0x86A0, offset: 0x6DCFA, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.34, symObjAddr: 0x4858, symBinAddr: 0x2A880, symSize: 0x24 } + - { offsetInCU: 0x8738, offset: 0x6DD92, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.13, symObjAddr: 0x4564, symBinAddr: 0x2A58C, symSize: 0x24 } + - { offsetInCU: 0x87D0, offset: 0x6DE2A, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.45, symObjAddr: 0x49E4, symBinAddr: 0x2AA0C, symSize: 0x24 } + - { offsetInCU: 0x883D, offset: 0x6DE97, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.24, symObjAddr: 0x46F0, symBinAddr: 0x2A718, symSize: 0x24 } + - { offsetInCU: 0x88AA, offset: 0x6DF04, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.42, symObjAddr: 0x4978, symBinAddr: 0x2A9A0, symSize: 0x24 } + - { offsetInCU: 0x892D, offset: 0x6DF87, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.21, symObjAddr: 0x4684, symBinAddr: 0x2A6AC, symSize: 0x24 } + - { offsetInCU: 0x89B0, offset: 0x6E00A, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.32, symObjAddr: 0x4810, symBinAddr: 0x2A838, symSize: 0x24 } + - { offsetInCU: 0x8A1D, offset: 0x6E077, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.2, symObjAddr: 0x43D8, symBinAddr: 0x2A400, symSize: 0x24 } + - { offsetInCU: 0x8A74, offset: 0x6E0CE, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.30, symObjAddr: 0x47C8, symBinAddr: 0x2A7F0, symSize: 0x24 } + - { offsetInCU: 0x8AE1, offset: 0x6E13B, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.27, symObjAddr: 0x475C, symBinAddr: 0x2A784, symSize: 0x24 } + - { offsetInCU: 0x8B79, offset: 0x6E1D3, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.26, symObjAddr: 0x4738, symBinAddr: 0x2A760, symSize: 0x24 } + - { offsetInCU: 0x8BD0, offset: 0x6E22A, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.11, symObjAddr: 0x451C, symBinAddr: 0x2A544, symSize: 0x24 } + - { offsetInCU: 0x8C3D, offset: 0x6E297, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.41, symObjAddr: 0x4954, symBinAddr: 0x2A97C, symSize: 0x24 } + - { offsetInCU: 0x8CC0, offset: 0x6E31A, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.40, symObjAddr: 0x4930, symBinAddr: 0x2A958, symSize: 0x24 } + - { offsetInCU: 0x8D43, offset: 0x6E39D, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.39, symObjAddr: 0x490C, symBinAddr: 0x2A934, symSize: 0x24 } + - { offsetInCU: 0x8DC6, offset: 0x6E420, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.4, symObjAddr: 0x4420, symBinAddr: 0x2A448, symSize: 0x24 } + - { offsetInCU: 0x8E1D, offset: 0x6E477, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.9, symObjAddr: 0x44D4, symBinAddr: 0x2A4FC, symSize: 0x24 } + - { offsetInCU: 0x8E8A, offset: 0x6E4E4, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.6, symObjAddr: 0x4468, symBinAddr: 0x2A490, symSize: 0x24 } + - { offsetInCU: 0x8F22, offset: 0x6E57C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.5, symObjAddr: 0x4444, symBinAddr: 0x2A46C, symSize: 0x24 } + - { offsetInCU: 0x8F79, offset: 0x6E5D3, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.20, symObjAddr: 0x4660, symBinAddr: 0x2A688, symSize: 0x24 } + - { offsetInCU: 0x8FFC, offset: 0x6E656, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.19, symObjAddr: 0x463C, symBinAddr: 0x2A664, symSize: 0x24 } + - { offsetInCU: 0x907F, offset: 0x6E6D9, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.18, symObjAddr: 0x4618, symBinAddr: 0x2A640, symSize: 0x24 } + - { offsetInCU: 0x9102, offset: 0x6E75C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.38, symObjAddr: 0x48E8, symBinAddr: 0x2A910, symSize: 0x24 } + - { offsetInCU: 0x9185, offset: 0x6E7DF, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.17, symObjAddr: 0x45F4, symBinAddr: 0x2A61C, symSize: 0x24 } + - { offsetInCU: 0x9208, offset: 0x6E862, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.46, symObjAddr: 0x4A08, symBinAddr: 0x2AA30, symSize: 0x24 } + - { offsetInCU: 0x9275, offset: 0x6E8CF, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.25, symObjAddr: 0x4714, symBinAddr: 0x2A73C, symSize: 0x24 } + - { offsetInCU: 0x92E2, offset: 0x6E93C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.31, symObjAddr: 0x47EC, symBinAddr: 0x2A814, symSize: 0x24 } + - { offsetInCU: 0x934F, offset: 0x6E9A9, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.29, symObjAddr: 0x47A4, symBinAddr: 0x2A7CC, symSize: 0x24 } + - { offsetInCU: 0x93BC, offset: 0x6EA16, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.28, symObjAddr: 0x4780, symBinAddr: 0x2A7A8, symSize: 0x24 } + - { offsetInCU: 0x9429, offset: 0x6EA83, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.10, symObjAddr: 0x44F8, symBinAddr: 0x2A520, symSize: 0x24 } + - { offsetInCU: 0x9496, offset: 0x6EAF0, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.8, symObjAddr: 0x44B0, symBinAddr: 0x2A4D8, symSize: 0x24 } + - { offsetInCU: 0x9503, offset: 0x6EB5D, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.7, symObjAddr: 0x448C, symBinAddr: 0x2A4B4, symSize: 0x24 } + - { offsetInCU: 0x9570, offset: 0x6EBCA, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.1, symObjAddr: 0x43B4, symBinAddr: 0x2A3DC, symSize: 0x24 } + - { offsetInCU: 0x95F3, offset: 0x6EC4D, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.3, symObjAddr: 0x43FC, symBinAddr: 0x2A424, symSize: 0x24 } + - { offsetInCU: 0x9676, offset: 0x6ECD0, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.35, symObjAddr: 0x487C, symBinAddr: 0x2A8A4, symSize: 0x24 } + - { offsetInCU: 0x970F, offset: 0x6ED69, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.14, symObjAddr: 0x4588, symBinAddr: 0x2A5B0, symSize: 0x24 } + - { offsetInCU: 0x97A8, offset: 0x6EE02, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.36, symObjAddr: 0x48A0, symBinAddr: 0x2A8C8, symSize: 0x24 } + - { offsetInCU: 0x97FF, offset: 0x6EE59, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed22parse_formate_templateERNS_18appender_file_base18parse_file_contextERKNS1_22read_with_cache_handleE.cold.15, symObjAddr: 0x45AC, symBinAddr: 0x2A5D4, symSize: 0x24 } + - { offsetInCU: 0x98FF, offset: 0x6EF59, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIDsLm1EE18fill_uninitializedIDsEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm.cold.1, symObjAddr: 0x4A2C, symBinAddr: 0x2AA54, symSize: 0x24 } + - { offsetInCU: 0x9B00, offset: 0x6F15A, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE, symObjAddr: 0x1B18, symBinAddr: 0x16B20, symSize: 0x24D8 } + - { offsetInCU: 0xC1E5, offset: 0x7183F, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD1Ev, symObjAddr: 0x3FF0, symBinAddr: 0x18FF8, symSize: 0x4 } + - { offsetInCU: 0xC1EF, offset: 0x71849, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.41, symObjAddr: 0x501C, symBinAddr: 0x2B044, symSize: 0x24 } + - { offsetInCU: 0xC287, offset: 0x718E1, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.35, symObjAddr: 0x4F44, symBinAddr: 0x2AF6C, symSize: 0x24 } + - { offsetInCU: 0xC31F, offset: 0x71979, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.15, symObjAddr: 0x4C54, symBinAddr: 0x2AC7C, symSize: 0x24 } + - { offsetInCU: 0xC3B7, offset: 0x71A11, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.9, symObjAddr: 0x4B7C, symBinAddr: 0x2ABA4, symSize: 0x24 } + - { offsetInCU: 0xC44F, offset: 0x71AA9, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.52, symObjAddr: 0x51A8, symBinAddr: 0x2B1D0, symSize: 0x24 } + - { offsetInCU: 0xC4D2, offset: 0x71B2C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.51, symObjAddr: 0x5184, symBinAddr: 0x2B1AC, symSize: 0x24 } + - { offsetInCU: 0xC555, offset: 0x71BAF, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.26, symObjAddr: 0x4DE0, symBinAddr: 0x2AE08, symSize: 0x24 } + - { offsetInCU: 0xC5D8, offset: 0x71C32, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.25, symObjAddr: 0x4DBC, symBinAddr: 0x2ADE4, symSize: 0x24 } + - { offsetInCU: 0xC65B, offset: 0x71CB5, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.45, symObjAddr: 0x50AC, symBinAddr: 0x2B0D4, symSize: 0x24 } + - { offsetInCU: 0xC6DE, offset: 0x71D38, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.19, symObjAddr: 0x4CE4, symBinAddr: 0x2AD0C, symSize: 0x24 } + - { offsetInCU: 0xC761, offset: 0x71DBB, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.42, symObjAddr: 0x5040, symBinAddr: 0x2B068, symSize: 0x24 } + - { offsetInCU: 0xC7F9, offset: 0x71E53, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.16, symObjAddr: 0x4C78, symBinAddr: 0x2ACA0, symSize: 0x24 } + - { offsetInCU: 0xC891, offset: 0x71EEB, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.56, symObjAddr: 0x5238, symBinAddr: 0x2B260, symSize: 0x24 } + - { offsetInCU: 0xC8E9, offset: 0x71F43, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.32, symObjAddr: 0x4ED8, symBinAddr: 0x2AF00, symSize: 0x24 } + - { offsetInCU: 0xC941, offset: 0x71F9B, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.53, symObjAddr: 0x51CC, symBinAddr: 0x2B1F4, symSize: 0x24 } + - { offsetInCU: 0xC9AE, offset: 0x72008, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.27, symObjAddr: 0x4E04, symBinAddr: 0x2AE2C, symSize: 0x24 } + - { offsetInCU: 0xCA1B, offset: 0x72075, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.50, symObjAddr: 0x5160, symBinAddr: 0x2B188, symSize: 0x24 } + - { offsetInCU: 0xCA9E, offset: 0x720F8, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.24, symObjAddr: 0x4D98, symBinAddr: 0x2ADC0, symSize: 0x24 } + - { offsetInCU: 0xCB22, offset: 0x7217C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.30, symObjAddr: 0x4E8C, symBinAddr: 0x2AEB4, symSize: 0x28 } + - { offsetInCU: 0xCB38, offset: 0x72192, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.40, symObjAddr: 0x4FF8, symBinAddr: 0x2B020, symSize: 0x24 } + - { offsetInCU: 0xCBA5, offset: 0x721FF, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.3, symObjAddr: 0x4A9C, symBinAddr: 0x2AAC4, symSize: 0x24 } + - { offsetInCU: 0xCBFC, offset: 0x72256, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.38, symObjAddr: 0x4FB0, symBinAddr: 0x2AFD8, symSize: 0x24 } + - { offsetInCU: 0xCC69, offset: 0x722C3, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.34, symObjAddr: 0x4F20, symBinAddr: 0x2AF48, symSize: 0x24 } + - { offsetInCU: 0xCCC0, offset: 0x7231A, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.14, symObjAddr: 0x4C30, symBinAddr: 0x2AC58, symSize: 0x24 } + - { offsetInCU: 0xCD2D, offset: 0x72387, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.49, symObjAddr: 0x513C, symBinAddr: 0x2B164, symSize: 0x24 } + - { offsetInCU: 0xCDB0, offset: 0x7240A, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.48, symObjAddr: 0x5118, symBinAddr: 0x2B140, symSize: 0x24 } + - { offsetInCU: 0xCE33, offset: 0x7248D, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.47, symObjAddr: 0x50F4, symBinAddr: 0x2B11C, symSize: 0x24 } + - { offsetInCU: 0xCEB6, offset: 0x72510, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.5, symObjAddr: 0x4AE4, symBinAddr: 0x2AB0C, symSize: 0x24 } + - { offsetInCU: 0xCF0D, offset: 0x72567, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.12, symObjAddr: 0x4BE8, symBinAddr: 0x2AC10, symSize: 0x24 } + - { offsetInCU: 0xCF7A, offset: 0x725D4, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.8, symObjAddr: 0x4B58, symBinAddr: 0x2AB80, symSize: 0x24 } + - { offsetInCU: 0xCFD1, offset: 0x7262B, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.23, symObjAddr: 0x4D74, symBinAddr: 0x2AD9C, symSize: 0x24 } + - { offsetInCU: 0xD054, offset: 0x726AE, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.22, symObjAddr: 0x4D50, symBinAddr: 0x2AD78, symSize: 0x24 } + - { offsetInCU: 0xD0D7, offset: 0x72731, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.21, symObjAddr: 0x4D2C, symBinAddr: 0x2AD54, symSize: 0x24 } + - { offsetInCU: 0xD15A, offset: 0x727B4, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.46, symObjAddr: 0x50D0, symBinAddr: 0x2B0F8, symSize: 0x24 } + - { offsetInCU: 0xD1DD, offset: 0x72837, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.20, symObjAddr: 0x4D08, symBinAddr: 0x2AD30, symSize: 0x24 } + - { offsetInCU: 0xD260, offset: 0x728BA, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.57, symObjAddr: 0x525C, symBinAddr: 0x2B284, symSize: 0x24 } + - { offsetInCU: 0xD2B8, offset: 0x72912, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.33, symObjAddr: 0x4EFC, symBinAddr: 0x2AF24, symSize: 0x24 } + - { offsetInCU: 0xD310, offset: 0x7296A, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.54, symObjAddr: 0x51F0, symBinAddr: 0x2B218, symSize: 0x24 } + - { offsetInCU: 0xD37D, offset: 0x729D7, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.28, symObjAddr: 0x4E28, symBinAddr: 0x2AE50, symSize: 0x24 } + - { offsetInCU: 0xD3EA, offset: 0x72A44, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.39, symObjAddr: 0x4FD4, symBinAddr: 0x2AFFC, symSize: 0x24 } + - { offsetInCU: 0xD457, offset: 0x72AB1, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.37, symObjAddr: 0x4F8C, symBinAddr: 0x2AFB4, symSize: 0x24 } + - { offsetInCU: 0xD4C4, offset: 0x72B1E, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.36, symObjAddr: 0x4F68, symBinAddr: 0x2AF90, symSize: 0x24 } + - { offsetInCU: 0xD531, offset: 0x72B8B, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.13, symObjAddr: 0x4C0C, symBinAddr: 0x2AC34, symSize: 0x24 } + - { offsetInCU: 0xD59E, offset: 0x72BF8, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.11, symObjAddr: 0x4BC4, symBinAddr: 0x2ABEC, symSize: 0x24 } + - { offsetInCU: 0xD60B, offset: 0x72C65, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.10, symObjAddr: 0x4BA0, symBinAddr: 0x2ABC8, symSize: 0x24 } + - { offsetInCU: 0xD678, offset: 0x72CD2, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.2, symObjAddr: 0x4A78, symBinAddr: 0x2AAA0, symSize: 0x24 } + - { offsetInCU: 0xD6FB, offset: 0x72D55, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.4, symObjAddr: 0x4AC0, symBinAddr: 0x2AAE8, symSize: 0x24 } + - { offsetInCU: 0xD77F, offset: 0x72DD9, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.7, symObjAddr: 0x4B30, symBinAddr: 0x2AB58, symSize: 0x28 } + - { offsetInCU: 0xD795, offset: 0x72DEF, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.43, symObjAddr: 0x5064, symBinAddr: 0x2B08C, symSize: 0x24 } + - { offsetInCU: 0xD82E, offset: 0x72E88, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.17, symObjAddr: 0x4C9C, symBinAddr: 0x2ACC4, symSize: 0x24 } + - { offsetInCU: 0xD8C7, offset: 0x72F21, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.55, symObjAddr: 0x5214, symBinAddr: 0x2B23C, symSize: 0x24 } + - { offsetInCU: 0xD909, offset: 0x72F63, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.31, symObjAddr: 0x4EB4, symBinAddr: 0x2AEDC, symSize: 0x24 } + - { offsetInCU: 0xD94B, offset: 0x72FA5, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.44, symObjAddr: 0x5088, symBinAddr: 0x2B0B0, symSize: 0x24 } + - { offsetInCU: 0xD9A2, offset: 0x72FFC, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.18, symObjAddr: 0x4CC0, symBinAddr: 0x2ACE8, symSize: 0x24 } + - { offsetInCU: 0xD9F9, offset: 0x73053, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.29, symObjAddr: 0x4E4C, symBinAddr: 0x2AE74, symSize: 0x40 } + - { offsetInCU: 0xDA58, offset: 0x730B2, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.1, symObjAddr: 0x4A50, symBinAddr: 0x2AA78, symSize: 0x28 } + - { offsetInCU: 0xDA6F, offset: 0x730C9, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressed8log_implERKNS_16log_entry_handleE.cold.6, symObjAddr: 0x4B08, symBinAddr: 0x2AB30, symSize: 0x28 } + - { offsetInCU: 0xDA86, offset: 0x730E0, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD1Ev, symObjAddr: 0x3FF0, symBinAddr: 0x18FF8, symSize: 0x4 } + - { offsetInCU: 0xDAA8, offset: 0x73102, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD1Ev, symObjAddr: 0x3FF0, symBinAddr: 0x18FF8, symSize: 0x4 } + - { offsetInCU: 0xDABB, offset: 0x73115, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD2Ev, symObjAddr: 0x4010, symBinAddr: 0x19018, symSize: 0x148 } + - { offsetInCU: 0xDE0C, offset: 0x73466, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD0Ev, symObjAddr: 0x3FF4, symBinAddr: 0x18FFC, symSize: 0x14 } + - { offsetInCU: 0xDE68, offset: 0x734C2, size: 0x8, addend: 0x0, symName: __ZNK2bq24appender_file_compressed19get_appender_formatEv, symObjAddr: 0x4008, symBinAddr: 0x19010, symSize: 0x8 } + - { offsetInCU: 0xDF58, offset: 0x735B2, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD2Ev.cold.5, symObjAddr: 0x5310, symBinAddr: 0x2B338, symSize: 0x24 } + - { offsetInCU: 0xE005, offset: 0x7365F, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD2Ev.cold.2, symObjAddr: 0x52A4, symBinAddr: 0x2B2CC, symSize: 0x24 } + - { offsetInCU: 0xE0B2, offset: 0x7370C, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD2Ev.cold.4, symObjAddr: 0x52EC, symBinAddr: 0x2B314, symSize: 0x24 } + - { offsetInCU: 0xE133, offset: 0x7378D, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD2Ev.cold.1, symObjAddr: 0x5280, symBinAddr: 0x2B2A8, symSize: 0x24 } + - { offsetInCU: 0xE1B4, offset: 0x7380E, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD2Ev.cold.6, symObjAddr: 0x5334, symBinAddr: 0x2B35C, symSize: 0x24 } + - { offsetInCU: 0xE236, offset: 0x73890, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_file_compressedD2Ev.cold.3, symObjAddr: 0x52C8, symBinAddr: 0x2B2F0, symSize: 0x24 } + - { offsetInCU: 0xE3CE, offset: 0x73A28, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x53CC, symBinAddr: 0x19160, symSize: 0x8 } + - { offsetInCU: 0xE3E5, offset: 0x73A3F, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x53D4, symBinAddr: 0x19168, symSize: 0x8 } + - { offsetInCU: 0xE3FC, offset: 0x73A56, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x53DC, symBinAddr: 0x19170, symSize: 0x8 } + - { offsetInCU: 0xE413, offset: 0x73A6D, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_3, symObjAddr: 0x53E4, symBinAddr: 0x19178, symSize: 0x8 } + - { offsetInCU: 0xE42A, offset: 0x73A84, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_4, symObjAddr: 0x53EC, symBinAddr: 0x19180, symSize: 0x8 } + - { offsetInCU: 0x57, offset: 0x73B00, size: 0x8, addend: 0x0, symName: __ZN2bqL21log_file_ext_name_rawE, symObjAddr: 0x12620, symBinAddr: 0x34AF8, symSize: 0x0 } + - { offsetInCU: 0x2CC4, offset: 0x7676D, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_raw8log_implERKNS_16log_entry_handleE, symObjAddr: 0x0, symBinAddr: 0x191FC, symSize: 0x68 } + - { offsetInCU: 0x2E6C, offset: 0x76915, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_raw17get_file_ext_nameEv, symObjAddr: 0xA0, symBinAddr: 0x19264, symSize: 0x70 } + - { offsetInCU: 0x2F72, offset: 0x76A1B, size: 0x8, addend: 0x0, symName: __ZNK2bq17appender_file_raw25get_binary_format_versionEv, symObjAddr: 0x110, symBinAddr: 0x192D4, symSize: 0x8 } + - { offsetInCU: 0x3106, offset: 0x76BAF, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_raw17get_file_ext_nameEv.cold.1, symObjAddr: 0x298, symBinAddr: 0x2B3A8, symSize: 0x28 } + - { offsetInCU: 0x3110, offset: 0x76BB9, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_raw17get_file_ext_nameEv.cold.1, symObjAddr: 0x298, symBinAddr: 0x2B3A8, symSize: 0x28 } + - { offsetInCU: 0x317C, offset: 0x76C25, size: 0x8, addend: 0x0, symName: __ZNK2bq17appender_file_raw25get_binary_format_versionEv, symObjAddr: 0x110, symBinAddr: 0x192D4, symSize: 0x8 } + - { offsetInCU: 0x31DE, offset: 0x76C87, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawD1Ev, symObjAddr: 0x118, symBinAddr: 0x192DC, symSize: 0x4 } + - { offsetInCU: 0x3201, offset: 0x76CAA, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawD1Ev, symObjAddr: 0x118, symBinAddr: 0x192DC, symSize: 0x4 } + - { offsetInCU: 0x321C, offset: 0x76CC5, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawD1Ev, symObjAddr: 0x118, symBinAddr: 0x192DC, symSize: 0x4 } + - { offsetInCU: 0x3250, offset: 0x76CF9, size: 0x8, addend: 0x0, symName: __ZN2bq17appender_file_rawD0Ev, symObjAddr: 0x11C, symBinAddr: 0x192E0, symSize: 0x14 } + - { offsetInCU: 0x32CE, offset: 0x76D77, size: 0x8, addend: 0x0, symName: __ZNK2bq17appender_file_raw19get_appender_formatEv, symObjAddr: 0x130, symBinAddr: 0x192F4, symSize: 0x8 } + - { offsetInCU: 0x57, offset: 0x76F18, size: 0x8, addend: 0x0, symName: __ZN2bqL22log_file_ext_name_textE, symObjAddr: 0x1A938, symBinAddr: 0x34B10, symSize: 0x0 } + - { offsetInCU: 0x3475, offset: 0x7A336, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text8log_implERKNS_16log_entry_handleE, symObjAddr: 0x0, symBinAddr: 0x19374, symSize: 0xCC } + - { offsetInCU: 0x35BB, offset: 0x7A47C, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text20parse_exist_log_fileERNS_18appender_file_base18parse_file_contextE, symObjAddr: 0xCC, symBinAddr: 0x19440, symSize: 0x8 } + - { offsetInCU: 0x35EA, offset: 0x7A4AB, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text12on_file_openEb, symObjAddr: 0xD4, symBinAddr: 0x19448, symSize: 0x4 } + - { offsetInCU: 0x3717, offset: 0x7A5D8, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text17get_file_ext_nameEv, symObjAddr: 0x110, symBinAddr: 0x1944C, symSize: 0x70 } + - { offsetInCU: 0x381D, offset: 0x7A6DE, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textD1Ev, symObjAddr: 0x180, symBinAddr: 0x194BC, symSize: 0x4 } + - { offsetInCU: 0x39B1, offset: 0x7A872, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text17get_file_ext_nameEv.cold.1, symObjAddr: 0x2F8, symBinAddr: 0x2B3F8, symSize: 0x28 } + - { offsetInCU: 0x39BB, offset: 0x7A87C, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_text17get_file_ext_nameEv.cold.1, symObjAddr: 0x2F8, symBinAddr: 0x2B3F8, symSize: 0x28 } + - { offsetInCU: 0x3A46, offset: 0x7A907, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textD1Ev, symObjAddr: 0x180, symBinAddr: 0x194BC, symSize: 0x4 } + - { offsetInCU: 0x3A69, offset: 0x7A92A, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textD1Ev, symObjAddr: 0x180, symBinAddr: 0x194BC, symSize: 0x4 } + - { offsetInCU: 0x3A9C, offset: 0x7A95D, size: 0x8, addend: 0x0, symName: __ZN2bq18appender_file_textD0Ev, symObjAddr: 0x184, symBinAddr: 0x194C0, symSize: 0x14 } + - { offsetInCU: 0x26, offset: 0x7AB04, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base4initERKNS_11file_handleE, symObjAddr: 0x0, symBinAddr: 0x19540, symSize: 0x308 } + - { offsetInCU: 0x25B1, offset: 0x7D08F, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base4initERKNS_11file_handleE, symObjAddr: 0x0, symBinAddr: 0x19540, symSize: 0x308 } + - { offsetInCU: 0x2994, offset: 0x7D472, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base15read_with_cacheEm, symObjAddr: 0x368, symBinAddr: 0x19848, symSize: 0x1E0 } + - { offsetInCU: 0x2E84, offset: 0x7D962, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base6decodeEv, symObjAddr: 0x548, symBinAddr: 0x19A28, symSize: 0xC } + - { offsetInCU: 0x31B5, offset: 0x7DC93, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base4initERKNS_11file_handleE.cold.1, symObjAddr: 0x9CC, symBinAddr: 0x2B448, symSize: 0x24 } + - { offsetInCU: 0x31CA, offset: 0x7DCA8, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base4initERKNS_11file_handleE.cold.1, symObjAddr: 0x9CC, symBinAddr: 0x2B448, symSize: 0x24 } + - { offsetInCU: 0x331D, offset: 0x7DDFB, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base15read_with_cacheEm.cold.1, symObjAddr: 0x9F0, symBinAddr: 0x2B46C, symSize: 0x28 } + - { offsetInCU: 0x3349, offset: 0x7DE27, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base15read_with_cacheEm.cold.3, symObjAddr: 0xA3C, symBinAddr: 0x2B4B8, symSize: 0x28 } + - { offsetInCU: 0x3375, offset: 0x7DE53, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base15read_with_cacheEm.cold.2, symObjAddr: 0xA18, symBinAddr: 0x2B494, symSize: 0x24 } + - { offsetInCU: 0x33B7, offset: 0x7DE95, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base6decodeEv, symObjAddr: 0x548, symBinAddr: 0x19A28, symSize: 0xC } + - { offsetInCU: 0x33F2, offset: 0x7DED0, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base21seek_read_file_offsetEi, symObjAddr: 0x598, symBinAddr: 0x19A34, symSize: 0x88 } + - { offsetInCU: 0x35A5, offset: 0x7E083, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base29do_decode_by_log_entry_handleERKNS_16log_entry_handleE, symObjAddr: 0x628, symBinAddr: 0x19ABC, symSize: 0x178 } + - { offsetInCU: 0x3768, offset: 0x7E246, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_base29do_decode_by_log_entry_handleERKNS_16log_entry_handleE.cold.1, symObjAddr: 0xA64, symBinAddr: 0x2B4E0, symSize: 0x24 } + - { offsetInCU: 0x39B2, offset: 0x7E490, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0xAFC, symBinAddr: 0x19C34, symSize: 0x8 } + - { offsetInCU: 0x26, offset: 0x7E4D1, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed12init_privateEv, symObjAddr: 0x0, symBinAddr: 0x19C3C, symSize: 0x78 } + - { offsetInCU: 0x358D, offset: 0x81A38, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12expand_nodesEj, symObjAddr: 0x2B74, symBinAddr: 0x1C648, symSize: 0x240 } + - { offsetInCU: 0x39E6, offset: 0x81E91, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed26parse_thread_info_templateERKNS_21appender_decoder_base22read_with_cache_handleE.cold.1, symObjAddr: 0x2DB4, symBinAddr: 0x2B50C, symSize: 0x24 } + - { offsetInCU: 0x40BA, offset: 0x82565, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed12init_privateEv, symObjAddr: 0x0, symBinAddr: 0x19C3C, symSize: 0x78 } + - { offsetInCU: 0x427F, offset: 0x8272A, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed14decode_privateEv, symObjAddr: 0x78, symBinAddr: 0x19CB4, symSize: 0x11C } + - { offsetInCU: 0x43EB, offset: 0x82896, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed14read_item_dataEv, symObjAddr: 0x194, symBinAddr: 0x19DD0, symSize: 0x20C } + - { offsetInCU: 0x44AC, offset: 0x82957, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed26parse_thread_info_templateERKNS_21appender_decoder_base22read_with_cache_handleE, symObjAddr: 0x5C0, symBinAddr: 0x1A1FC, symSize: 0x680 } + - { offsetInCU: 0x4774, offset: 0x82C1F, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed15parse_log_entryERKNS_21appender_decoder_base22read_with_cache_handleE, symObjAddr: 0xC40, symBinAddr: 0x1A87C, symSize: 0x111C } + - { offsetInCU: 0x477E, offset: 0x82C29, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed22parse_formate_templateERKNS_21appender_decoder_base22read_with_cache_handleE, symObjAddr: 0x3A0, symBinAddr: 0x19FDC, symSize: 0x220 } + - { offsetInCU: 0x4A81, offset: 0x82F2C, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed15parse_log_entryERKNS_21appender_decoder_base22read_with_cache_handleE, symObjAddr: 0xC40, symBinAddr: 0x1A87C, symSize: 0x111C } + - { offsetInCU: 0x56F5, offset: 0x83BA0, size: 0x8, addend: 0x0, symName: __ZNK2bq27appender_decoder_compressed25get_binary_format_versionEv, symObjAddr: 0x1D5C, symBinAddr: 0x1B998, symSize: 0x8 } + - { offsetInCU: 0x58AC, offset: 0x83D57, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x2540, symBinAddr: 0x1C014, symSize: 0x27C } + - { offsetInCU: 0x60B3, offset: 0x8455E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy, symObjAddr: 0x27BC, symBinAddr: 0x1C290, symSize: 0x20C } + - { offsetInCU: 0x6280, offset: 0x8472B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEixERKy, symObjAddr: 0x1EC4, symBinAddr: 0x1B9A0, symSize: 0x110 } + - { offsetInCU: 0x63AE, offset: 0x84859, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEixERKy, symObjAddr: 0x1EC4, symBinAddr: 0x1B9A0, symSize: 0x110 } + - { offsetInCU: 0x6794, offset: 0x84C3F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE4findERKy, symObjAddr: 0x1FD4, symBinAddr: 0x1BAB0, symSize: 0x9C } + - { offsetInCU: 0x679F, offset: 0x84C4A, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed26parse_thread_info_templateERKNS_21appender_decoder_base22read_with_cache_handleE.cold.1, symObjAddr: 0x2DB4, symBinAddr: 0x2B50C, symSize: 0x24 } + - { offsetInCU: 0x6A8A, offset: 0x84F35, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE4findERKy, symObjAddr: 0x1FD4, symBinAddr: 0x1BAB0, symSize: 0x9C } + - { offsetInCU: 0x6C37, offset: 0x850E2, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE18fill_uninitializedIhEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm, symObjAddr: 0x2070, symBinAddr: 0x1BB4C, symSize: 0xC4 } + - { offsetInCU: 0x6C42, offset: 0x850ED, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE18fill_uninitializedIhEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm, symObjAddr: 0x2070, symBinAddr: 0x1BB4C, symSize: 0xC4 } + - { offsetInCU: 0x6D29, offset: 0x851D4, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressedD1Ev, symObjAddr: 0x2134, symBinAddr: 0x1BC10, symSize: 0xB0 } + - { offsetInCU: 0x6D34, offset: 0x851DF, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed15parse_log_entryERKNS_21appender_decoder_base22read_with_cache_handleE.cold.1, symObjAddr: 0x2DD8, symBinAddr: 0x2B530, symSize: 0x28 } + - { offsetInCU: 0x6D4B, offset: 0x851F6, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed15parse_log_entryERKNS_21appender_decoder_base22read_with_cache_handleE.cold.4, symObjAddr: 0x2E48, symBinAddr: 0x2B5A0, symSize: 0x24 } + - { offsetInCU: 0x6D8D, offset: 0x85238, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed15parse_log_entryERKNS_21appender_decoder_base22read_with_cache_handleE.cold.3, symObjAddr: 0x2E24, symBinAddr: 0x2B57C, symSize: 0x24 } + - { offsetInCU: 0x6DCF, offset: 0x8527A, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressed15parse_log_entryERKNS_21appender_decoder_base22read_with_cache_handleE.cold.2, symObjAddr: 0x2E00, symBinAddr: 0x2B558, symSize: 0x24 } + - { offsetInCU: 0x6E11, offset: 0x852BC, size: 0x8, addend: 0x0, symName: __ZNK2bq27appender_decoder_compressed25get_binary_format_versionEv, symObjAddr: 0x1D5C, symBinAddr: 0x1B998, symSize: 0x8 } + - { offsetInCU: 0x7120, offset: 0x855CB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy, symObjAddr: 0x27BC, symBinAddr: 0x1C290, symSize: 0x20C } + - { offsetInCU: 0x7562, offset: 0x85A0D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj, symObjAddr: 0x29C8, symBinAddr: 0x1C49C, symSize: 0x1AC } + - { offsetInCU: 0x756D, offset: 0x85A18, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEixERKy.cold.3, symObjAddr: 0x2F28, symBinAddr: 0x2B60C, symSize: 0x24 } + - { offsetInCU: 0x75C4, offset: 0x85A6F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEixERKy.cold.2, symObjAddr: 0x2F04, symBinAddr: 0x2B5E8, symSize: 0x24 } + - { offsetInCU: 0x7630, offset: 0x85ADB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEixERKy.cold.1, symObjAddr: 0x2EE0, symBinAddr: 0x2B5C4, symSize: 0x24 } + - { offsetInCU: 0x7671, offset: 0x85B1C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEEixERKy.cold.4, symObjAddr: 0x2F4C, symBinAddr: 0x2B630, symSize: 0x24 } + - { offsetInCU: 0x76C8, offset: 0x85B73, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE4findERKy.cold.1, symObjAddr: 0x2F70, symBinAddr: 0x2B654, symSize: 0x24 } + - { offsetInCU: 0x770A, offset: 0x85BB5, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE4findERKy.cold.2, symObjAddr: 0x2F94, symBinAddr: 0x2B678, symSize: 0x24 } + - { offsetInCU: 0x774C, offset: 0x85BF7, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIhLm0EE18fill_uninitializedIhEENS_9enable_ifIXsr2bq6is_podIT_EE5valueEvE4typeEm.cold.1, symObjAddr: 0x2FB8, symBinAddr: 0x2B69C, symSize: 0x24 } + - { offsetInCU: 0x7874, offset: 0x85D1F, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressedD1Ev, symObjAddr: 0x2134, symBinAddr: 0x1BC10, symSize: 0xB0 } + - { offsetInCU: 0x7AB1, offset: 0x85F5C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE5resetEv, symObjAddr: 0x237C, symBinAddr: 0x1BE58, symSize: 0xE4 } + - { offsetInCU: 0x7D26, offset: 0x861D1, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_baseD1Ev, symObjAddr: 0x2460, symBinAddr: 0x2B504, symSize: 0x4 } + - { offsetInCU: 0x7D31, offset: 0x861DC, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_baseD2Ev, symObjAddr: 0x2298, symBinAddr: 0x1BD74, symSize: 0xE4 } + - { offsetInCU: 0x8048, offset: 0x864F3, size: 0x8, addend: 0x0, symName: __ZN2bq27appender_decoder_compressedD0Ev, symObjAddr: 0x21E4, symBinAddr: 0x1BCC0, symSize: 0xB4 } + - { offsetInCU: 0x8430, offset: 0x868DB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE5resetEv, symObjAddr: 0x2468, symBinAddr: 0x1BF3C, symSize: 0xD8 } + - { offsetInCU: 0x86A8, offset: 0x86B53, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x2540, symBinAddr: 0x1C014, symSize: 0x27C } + - { offsetInCU: 0x87C5, offset: 0x86C70, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE5resetEv.cold.1, symObjAddr: 0x2FDC, symBinAddr: 0x2B6C0, symSize: 0x24 } + - { offsetInCU: 0x8807, offset: 0x86CB2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE5resetEv.cold.3, symObjAddr: 0x3024, symBinAddr: 0x2B708, symSize: 0x24 } + - { offsetInCU: 0x8875, offset: 0x86D20, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE5resetEv.cold.2, symObjAddr: 0x3000, symBinAddr: 0x2B6E4, symSize: 0x24 } + - { offsetInCU: 0x88CD, offset: 0x86D78, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE5resetEv.cold.4, symObjAddr: 0x3048, symBinAddr: 0x2B72C, symSize: 0x24 } + - { offsetInCU: 0x8910, offset: 0x86DBB, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_baseD1Ev, symObjAddr: 0x2460, symBinAddr: 0x2B504, symSize: 0x4 } + - { offsetInCU: 0x8939, offset: 0x86DE4, size: 0x8, addend: 0x0, symName: __ZN2bq21appender_decoder_baseD0Ev, symObjAddr: 0x2464, symBinAddr: 0x2B508, symSize: 0x4 } + - { offsetInCU: 0x8A91, offset: 0x86F3C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE5resetEv.cold.1, symObjAddr: 0x306C, symBinAddr: 0x2B750, symSize: 0x24 } + - { offsetInCU: 0x8AD3, offset: 0x86F7E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE5resetEv.cold.3, symObjAddr: 0x30B4, symBinAddr: 0x2B798, symSize: 0x24 } + - { offsetInCU: 0x8B41, offset: 0x86FEC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE5resetEv.cold.2, symObjAddr: 0x3090, symBinAddr: 0x2B774, symSize: 0x24 } + - { offsetInCU: 0x8B99, offset: 0x87044, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE5resetEv.cold.4, symObjAddr: 0x30D8, symBinAddr: 0x2B7BC, symSize: 0x24 } + - { offsetInCU: 0x8DE7, offset: 0x87292, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x30FC, symBinAddr: 0x2B7E0, symSize: 0x28 } + - { offsetInCU: 0x8DFE, offset: 0x872A9, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.3, symObjAddr: 0x3148, symBinAddr: 0x2B82C, symSize: 0x28 } + - { offsetInCU: 0x8E2B, offset: 0x872D6, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayINS_27appender_decoder_compressed20decoder_log_templateELm0EE6insertIJS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x3124, symBinAddr: 0x2B808, symSize: 0x24 } + - { offsetInCU: 0x8EDD, offset: 0x87388, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj, symObjAddr: 0x29C8, symBinAddr: 0x1C49C, symSize: 0x1AC } + - { offsetInCU: 0x91BF, offset: 0x8766A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12expand_nodesEj, symObjAddr: 0x2B74, symBinAddr: 0x1C648, symSize: 0x240 } + - { offsetInCU: 0x91CA, offset: 0x87675, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.2, symObjAddr: 0x3198, symBinAddr: 0x2B87C, symSize: 0x24 } + - { offsetInCU: 0x9222, offset: 0x876CD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.9, symObjAddr: 0x3298, symBinAddr: 0x2B97C, symSize: 0x24 } + - { offsetInCU: 0x9265, offset: 0x87710, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.7, symObjAddr: 0x324C, symBinAddr: 0x2B930, symSize: 0x24 } + - { offsetInCU: 0x9292, offset: 0x8773D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.1, symObjAddr: 0x3170, symBinAddr: 0x2B854, symSize: 0x28 } + - { offsetInCU: 0x92A9, offset: 0x87754, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.5, symObjAddr: 0x3204, symBinAddr: 0x2B8E8, symSize: 0x24 } + - { offsetInCU: 0x92D6, offset: 0x87781, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.10, symObjAddr: 0x32BC, symBinAddr: 0x2B9A0, symSize: 0x24 } + - { offsetInCU: 0x9319, offset: 0x877C4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.6, symObjAddr: 0x3228, symBinAddr: 0x2B90C, symSize: 0x24 } + - { offsetInCU: 0x9346, offset: 0x877F1, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.4, symObjAddr: 0x31E0, symBinAddr: 0x2B8C4, symSize: 0x24 } + - { offsetInCU: 0x9373, offset: 0x8781E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.3, symObjAddr: 0x31BC, symBinAddr: 0x2B8A0, symSize: 0x24 } + - { offsetInCU: 0x93A0, offset: 0x8784B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE17alloc_node_by_keyERKy.cold.8, symObjAddr: 0x3270, symBinAddr: 0x2B954, symSize: 0x28 } + - { offsetInCU: 0x93B7, offset: 0x87862, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj.cold.7, symObjAddr: 0x33B8, symBinAddr: 0x2BA9C, symSize: 0x24 } + - { offsetInCU: 0x93E4, offset: 0x8788F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj.cold.6, symObjAddr: 0x3394, symBinAddr: 0x2BA78, symSize: 0x24 } + - { offsetInCU: 0x9411, offset: 0x878BC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj.cold.5, symObjAddr: 0x3370, symBinAddr: 0x2BA54, symSize: 0x24 } + - { offsetInCU: 0x943E, offset: 0x878E9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj.cold.4, symObjAddr: 0x334C, symBinAddr: 0x2BA30, symSize: 0x24 } + - { offsetInCU: 0x946B, offset: 0x87916, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj.cold.3, symObjAddr: 0x3328, symBinAddr: 0x2BA0C, symSize: 0x24 } + - { offsetInCU: 0x9498, offset: 0x87943, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj.cold.2, symObjAddr: 0x3304, symBinAddr: 0x2B9E8, symSize: 0x24 } + - { offsetInCU: 0x94C5, offset: 0x87970, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE14expand_bucketsEj.cold.1, symObjAddr: 0x32E0, symBinAddr: 0x2B9C4, symSize: 0x24 } + - { offsetInCU: 0x954B, offset: 0x879F6, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12expand_nodesEj.cold.1, symObjAddr: 0x33DC, symBinAddr: 0x2BAC0, symSize: 0x24 } + - { offsetInCU: 0x958D, offset: 0x87A38, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12expand_nodesEj.cold.4, symObjAddr: 0x3448, symBinAddr: 0x2BB2C, symSize: 0x24 } + - { offsetInCU: 0x95CF, offset: 0x87A7A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12expand_nodesEj.cold.3, symObjAddr: 0x3424, symBinAddr: 0x2BB08, symSize: 0x24 } + - { offsetInCU: 0x963D, offset: 0x87AE8, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12expand_nodesEj.cold.2, symObjAddr: 0x3400, symBinAddr: 0x2BAE4, symSize: 0x24 } + - { offsetInCU: 0x9695, offset: 0x87B40, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_27appender_decoder_compressed28decoder_thread_info_templateEE12expand_nodesEj.cold.5, symObjAddr: 0x346C, symBinAddr: 0x2BB50, symSize: 0x24 } + - { offsetInCU: 0x96D8, offset: 0x87B83, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x3490, symBinAddr: 0x1C888, symSize: 0x8 } + - { offsetInCU: 0x96EF, offset: 0x87B9A, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x3498, symBinAddr: 0x1C890, symSize: 0x8 } + - { offsetInCU: 0x9706, offset: 0x87BB1, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x34A0, symBinAddr: 0x1C898, symSize: 0x8 } + - { offsetInCU: 0x26, offset: 0x87C0B, size: 0x8, addend: 0x0, symName: __ZN2bq23appender_decoder_helper6decodeERKNS_11string_baseIcEES4_, symObjAddr: 0x0, symBinAddr: 0x1C8A0, symSize: 0x1F0 } + - { offsetInCU: 0x133F, offset: 0x88F24, size: 0x8, addend: 0x0, symName: __ZN2bq23appender_decoder_helper6decodeERKNS_11string_baseIcEES4_, symObjAddr: 0x0, symBinAddr: 0x1C8A0, symSize: 0x1F0 } + - { offsetInCU: 0x2ED6, offset: 0x8C08E, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager8instanceEv, symObjAddr: 0x128, symBinAddr: 0x1CB24, symSize: 0x7C } + - { offsetInCU: 0x2EF7, offset: 0x8C0AF, size: 0x8, addend: 0x0, symName: __ZZN2bq24appender_decoder_manager8instanceEvE4inst, symObjAddr: 0x2B6D8, symBinAddr: 0x34B28, symSize: 0x0 } + - { offsetInCU: 0x2F1B, offset: 0x8C0D3, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE12expand_nodesEj, symObjAddr: 0x810, symBinAddr: 0x1D20C, symSize: 0x1BC } + - { offsetInCU: 0x313E, offset: 0x8C2F6, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5resetEv, symObjAddr: 0x9CC, symBinAddr: 0x1D3C8, symSize: 0xC4 } + - { offsetInCU: 0x34CC, offset: 0x8C684, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj, symObjAddr: 0xE84, symBinAddr: 0x1D48C, symSize: 0x1F0 } + - { offsetInCU: 0x3B93, offset: 0x8CD4B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj, symObjAddr: 0x668, symBinAddr: 0x1D064, symSize: 0x1A8 } + - { offsetInCU: 0x3E75, offset: 0x8D02D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE12expand_nodesEj, symObjAddr: 0x810, symBinAddr: 0x1D20C, symSize: 0x1BC } + - { offsetInCU: 0x3E9E, offset: 0x8D056, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_managerC1Ev, symObjAddr: 0x6C, symBinAddr: 0x1CA90, symSize: 0x6C } + - { offsetInCU: 0x4098, offset: 0x8D250, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5resetEv, symObjAddr: 0x9CC, symBinAddr: 0x1D3C8, symSize: 0xC4 } + - { offsetInCU: 0x432D, offset: 0x8D4E5, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_managerD1Ev, symObjAddr: 0x100, symBinAddr: 0x1CAFC, symSize: 0x28 } + - { offsetInCU: 0x4912, offset: 0x8DACA, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager14create_decoderERKNS_11string_baseIcEERj, symObjAddr: 0x1A4, symBinAddr: 0x1CBA0, symSize: 0x320 } + - { offsetInCU: 0x508A, offset: 0x8E242, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager15destroy_decoderEj, symObjAddr: 0x4C4, symBinAddr: 0x1CEC0, symSize: 0xA8 } + - { offsetInCU: 0x5296, offset: 0x8E44E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj, symObjAddr: 0xE84, symBinAddr: 0x1D48C, symSize: 0x1F0 } + - { offsetInCU: 0x5673, offset: 0x8E82B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseENS_17hash_map_iteratorIjS3_Lb0EEE, symObjAddr: 0x1074, symBinAddr: 0x1D67C, symSize: 0x144 } + - { offsetInCU: 0x567D, offset: 0x8E835, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager14create_decoderERKNS_11string_baseIcEERj.cold.1, symObjAddr: 0x11B8, symBinAddr: 0x2BB74, symSize: 0x24 } + - { offsetInCU: 0x582F, offset: 0x8E9E7, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager15destroy_decoderEj, symObjAddr: 0x4C4, symBinAddr: 0x1CEC0, symSize: 0xA8 } + - { offsetInCU: 0x5A2A, offset: 0x8EBE2, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager18decode_single_itemEjRPKNS_11string_baseIcEE, symObjAddr: 0x56C, symBinAddr: 0x1CF68, symSize: 0xFC } + - { offsetInCU: 0x5A34, offset: 0x8EBEC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseENS_17hash_map_iteratorIjS3_Lb0EEE, symObjAddr: 0x1074, symBinAddr: 0x1D67C, symSize: 0x144 } + - { offsetInCU: 0x5CFF, offset: 0x8EEB7, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager14create_decoderERKNS_11string_baseIcEERj.cold.1, symObjAddr: 0x11B8, symBinAddr: 0x2BB74, symSize: 0x24 } + - { offsetInCU: 0x5D09, offset: 0x8EEC1, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager15destroy_decoderEj.cold.1, symObjAddr: 0x11DC, symBinAddr: 0x2BB98, symSize: 0x24 } + - { offsetInCU: 0x5D76, offset: 0x8EF2E, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager15destroy_decoderEj.cold.2, symObjAddr: 0x1200, symBinAddr: 0x2BBBC, symSize: 0x24 } + - { offsetInCU: 0x5E0B, offset: 0x8EFC3, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager18decode_single_itemEjRPKNS_11string_baseIcEE, symObjAddr: 0x56C, symBinAddr: 0x1CF68, symSize: 0xFC } + - { offsetInCU: 0x6126, offset: 0x8F2DE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj, symObjAddr: 0x668, symBinAddr: 0x1D064, symSize: 0x1A8 } + - { offsetInCU: 0x6130, offset: 0x8F2E8, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager18decode_single_itemEjRPKNS_11string_baseIcEE.cold.3, symObjAddr: 0x126C, symBinAddr: 0x2BC28, symSize: 0x24 } + - { offsetInCU: 0x6187, offset: 0x8F33F, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager18decode_single_itemEjRPKNS_11string_baseIcEE.cold.4, symObjAddr: 0x1290, symBinAddr: 0x2BC4C, symSize: 0x24 } + - { offsetInCU: 0x61DE, offset: 0x8F396, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager18decode_single_itemEjRPKNS_11string_baseIcEE.cold.2, symObjAddr: 0x1248, symBinAddr: 0x2BC04, symSize: 0x24 } + - { offsetInCU: 0x621F, offset: 0x8F3D7, size: 0x8, addend: 0x0, symName: __ZN2bq24appender_decoder_manager18decode_single_itemEjRPKNS_11string_baseIcEE.cold.1, symObjAddr: 0x1224, symBinAddr: 0x2BBE0, symSize: 0x24 } + - { offsetInCU: 0x62A5, offset: 0x8F45D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj.cold.7, symObjAddr: 0x138C, symBinAddr: 0x2BD48, symSize: 0x24 } + - { offsetInCU: 0x62D2, offset: 0x8F48A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj.cold.6, symObjAddr: 0x1368, symBinAddr: 0x2BD24, symSize: 0x24 } + - { offsetInCU: 0x62FF, offset: 0x8F4B7, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj.cold.5, symObjAddr: 0x1344, symBinAddr: 0x2BD00, symSize: 0x24 } + - { offsetInCU: 0x632C, offset: 0x8F4E4, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj.cold.4, symObjAddr: 0x1320, symBinAddr: 0x2BCDC, symSize: 0x24 } + - { offsetInCU: 0x6359, offset: 0x8F511, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj.cold.3, symObjAddr: 0x12FC, symBinAddr: 0x2BCB8, symSize: 0x24 } + - { offsetInCU: 0x6386, offset: 0x8F53E, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj.cold.2, symObjAddr: 0x12D8, symBinAddr: 0x2BC94, symSize: 0x24 } + - { offsetInCU: 0x63B3, offset: 0x8F56B, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE14expand_bucketsEj.cold.1, symObjAddr: 0x12B4, symBinAddr: 0x2BC70, symSize: 0x24 } + - { offsetInCU: 0x645A, offset: 0x8F612, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE12expand_nodesEj.cold.1, symObjAddr: 0x13B0, symBinAddr: 0x2BD6C, symSize: 0x24 } + - { offsetInCU: 0x649C, offset: 0x8F654, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE12expand_nodesEj.cold.2, symObjAddr: 0x13D4, symBinAddr: 0x2BD90, symSize: 0x24 } + - { offsetInCU: 0x64DE, offset: 0x8F696, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE12expand_nodesEj.cold.3, symObjAddr: 0x13F8, symBinAddr: 0x2BDB4, symSize: 0x24 } + - { offsetInCU: 0x65AF, offset: 0x8F767, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5resetEv.cold.1, symObjAddr: 0x141C, symBinAddr: 0x2BDD8, symSize: 0x24 } + - { offsetInCU: 0x65F1, offset: 0x8F7A9, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5resetEv.cold.3, symObjAddr: 0x1464, symBinAddr: 0x2BE20, symSize: 0x24 } + - { offsetInCU: 0x665F, offset: 0x8F817, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5resetEv.cold.2, symObjAddr: 0x1440, symBinAddr: 0x2BDFC, symSize: 0x24 } + - { offsetInCU: 0x66B7, offset: 0x8F86F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5resetEv.cold.4, symObjAddr: 0x1488, symBinAddr: 0x2BE44, symSize: 0x24 } + - { offsetInCU: 0x6B9B, offset: 0x8FD53, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.2, symObjAddr: 0x1684, symBinAddr: 0x2BE90, symSize: 0x24 } + - { offsetInCU: 0x6BF3, offset: 0x8FDAB, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.9, symObjAddr: 0x1784, symBinAddr: 0x2BF90, symSize: 0x24 } + - { offsetInCU: 0x6C36, offset: 0x8FDEE, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.7, symObjAddr: 0x1738, symBinAddr: 0x2BF44, symSize: 0x24 } + - { offsetInCU: 0x6C64, offset: 0x8FE1C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.1, symObjAddr: 0x165C, symBinAddr: 0x2BE68, symSize: 0x28 } + - { offsetInCU: 0x6C7A, offset: 0x8FE32, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.5, symObjAddr: 0x16F0, symBinAddr: 0x2BEFC, symSize: 0x24 } + - { offsetInCU: 0x6CA7, offset: 0x8FE5F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.10, symObjAddr: 0x17A8, symBinAddr: 0x2BFB4, symSize: 0x24 } + - { offsetInCU: 0x6CEA, offset: 0x8FEA2, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.6, symObjAddr: 0x1714, symBinAddr: 0x2BF20, symSize: 0x24 } + - { offsetInCU: 0x6D17, offset: 0x8FECF, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.4, symObjAddr: 0x16CC, symBinAddr: 0x2BED8, symSize: 0x24 } + - { offsetInCU: 0x6D44, offset: 0x8FEFC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.3, symObjAddr: 0x16A8, symBinAddr: 0x2BEB4, symSize: 0x24 } + - { offsetInCU: 0x6D72, offset: 0x8FF2A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE17alloc_node_by_keyERKj.cold.8, symObjAddr: 0x175C, symBinAddr: 0x2BF68, symSize: 0x28 } + - { offsetInCU: 0x6DAA, offset: 0x8FF62, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseENS_17hash_map_iteratorIjS3_Lb0EEE.cold.3, symObjAddr: 0x1814, symBinAddr: 0x2C020, symSize: 0x24 } + - { offsetInCU: 0x6DD7, offset: 0x8FF8F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseENS_17hash_map_iteratorIjS3_Lb0EEE.cold.1, symObjAddr: 0x17CC, symBinAddr: 0x2BFD8, symSize: 0x24 } + - { offsetInCU: 0x6E45, offset: 0x8FFFD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseENS_17hash_map_iteratorIjS3_Lb0EEE.cold.5, symObjAddr: 0x185C, symBinAddr: 0x2C068, symSize: 0x24 } + - { offsetInCU: 0x6E72, offset: 0x9002A, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseENS_17hash_map_iteratorIjS3_Lb0EEE.cold.4, symObjAddr: 0x1838, symBinAddr: 0x2C044, symSize: 0x24 } + - { offsetInCU: 0x6E9F, offset: 0x90057, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIjNS_10unique_ptrINS_21appender_decoder_baseEEEE5eraseENS_17hash_map_iteratorIjS3_Lb0EEE.cold.2, symObjAddr: 0x17F0, symBinAddr: 0x2BFFC, symSize: 0x24 } + - { offsetInCU: 0x6ECD, offset: 0x90085, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x1880, symBinAddr: 0x1D7C0, symSize: 0x8 } + - { offsetInCU: 0x6EE4, offset: 0x9009C, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x1888, symBinAddr: 0x1D7C8, symSize: 0x8 } + - { offsetInCU: 0x26, offset: 0x900DD, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_raw12init_privateEv, symObjAddr: 0x0, symBinAddr: 0x1D7D0, symSize: 0x8 } + - { offsetInCU: 0x1D94, offset: 0x91E4B, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_raw12init_privateEv, symObjAddr: 0x0, symBinAddr: 0x1D7D0, symSize: 0x8 } + - { offsetInCU: 0x1E35, offset: 0x91EEC, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_raw14decode_privateEv, symObjAddr: 0x8, symBinAddr: 0x1D7D8, symSize: 0xB0 } + - { offsetInCU: 0x1EF1, offset: 0x91FA8, size: 0x8, addend: 0x0, symName: __ZNK2bq20appender_decoder_raw25get_binary_format_versionEv, symObjAddr: 0xB8, symBinAddr: 0x1D888, symSize: 0x8 } + - { offsetInCU: 0x1F34, offset: 0x91FEB, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawD1Ev, symObjAddr: 0xC0, symBinAddr: 0x1D890, symSize: 0x4 } + - { offsetInCU: 0x1F57, offset: 0x9200E, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawD1Ev, symObjAddr: 0xC0, symBinAddr: 0x1D890, symSize: 0x4 } + - { offsetInCU: 0x1F73, offset: 0x9202A, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawD1Ev, symObjAddr: 0xC0, symBinAddr: 0x1D890, symSize: 0x4 } + - { offsetInCU: 0x2155, offset: 0x9220C, size: 0x8, addend: 0x0, symName: __ZN2bq20appender_decoder_rawD0Ev, symObjAddr: 0xC4, symBinAddr: 0x1D894, symSize: 0x14 } + - { offsetInCU: 0x57, offset: 0x9289B, size: 0x8, addend: 0x0, symName: __ZN2bqL14_log_level_strE, symObjAddr: 0x2F970, symBinAddr: 0x34B80, symSize: 0x0 } + - { offsetInCU: 0x3EA, offset: 0x92C2E, size: 0x8, addend: 0x0, symName: __ZN2bqL27_time_zone_str_initer_inst_E, symObjAddr: 0x2FA00, symBinAddr: 0x34C10, symSize: 0x0 } + - { offsetInCU: 0x44A, offset: 0x92C8E, size: 0x8, addend: 0x0, symName: __ZN2bqL18_digit_str_initer_E, symObjAddr: 0x2FA38, symBinAddr: 0x34C48, symSize: 0x0 } + - { offsetInCU: 0x153F, offset: 0x93D83, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12expand_nodesEj, symObjAddr: 0x3B2C, symBinAddr: 0x21260, symSize: 0x22C } + - { offsetInCU: 0x1911, offset: 0x94155, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy, symObjAddr: 0x3D58, symBinAddr: 0x2148C, symSize: 0x20C } + - { offsetInCU: 0x2023, offset: 0x94867, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj, symObjAddr: 0x3980, symBinAddr: 0x210B4, symSize: 0x1AC } + - { offsetInCU: 0x2305, offset: 0x94B49, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12expand_nodesEj, symObjAddr: 0x3B2C, symBinAddr: 0x21260, symSize: 0x22C } + - { offsetInCU: 0x232E, offset: 0x94B72, size: 0x8, addend: 0x0, symName: __ZN2bq6layoutC1Ev, symObjAddr: 0xB0, symBinAddr: 0x1D8A8, symSize: 0xB0 } + - { offsetInCU: 0x2623, offset: 0x94E67, size: 0x8, addend: 0x0, symName: __ZN2bq6layout9do_layoutERKNS_16log_entry_handleEbPKNS_5arrayINS_11string_baseIcEELm0EEE, symObjAddr: 0x160, symBinAddr: 0x1D958, symSize: 0x188 } + - { offsetInCU: 0x28A0, offset: 0x950E4, size: 0x8, addend: 0x0, symName: __ZN2bq6layout13layout_prefixERKNS_16log_entry_handleE, symObjAddr: 0x2E8, symBinAddr: 0x1DAE0, symSize: 0x128 } + - { offsetInCU: 0x28AA, offset: 0x950EE, size: 0x8, addend: 0x0, symName: __ZN2bq6layout13layout_prefixERKNS_16log_entry_handleE, symObjAddr: 0x2E8, symBinAddr: 0x1DAE0, symSize: 0x128 } + - { offsetInCU: 0x2B50, offset: 0x95394, size: 0x8, addend: 0x0, symName: __ZN2bq6layout32python_style_format_content_utf8ERKNS_16log_entry_handleE, symObjAddr: 0xEC4, symBinAddr: 0x1E664, symSize: 0x808 } + - { offsetInCU: 0x35A4, offset: 0x95DE8, size: 0x8, addend: 0x0, symName: __ZN2bq6layout33python_style_format_content_utf16ERKNS_16log_entry_handleE, symObjAddr: 0x16CC, symBinAddr: 0x1EE6C, symSize: 0x720 } + - { offsetInCU: 0x35AE, offset: 0x95DF2, size: 0x8, addend: 0x0, symName: __ZN2bq6layout33python_style_format_content_utf16ERKNS_16log_entry_handleE, symObjAddr: 0x16CC, symBinAddr: 0x1EE6C, symSize: 0x720 } + - { offsetInCU: 0x3D2E, offset: 0x96572, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_pointerEPKv, symObjAddr: 0x1DEC, symBinAddr: 0x1F58C, symSize: 0x284 } + - { offsetInCU: 0x3D38, offset: 0x9657C, size: 0x8, addend: 0x0, symName: __ZN2bq6layout9do_layoutERKNS_16log_entry_handleEbPKNS_5arrayINS_11string_baseIcEELm0EEE.cold.1, symObjAddr: 0x3F64, symBinAddr: 0x2C08C, symSize: 0x28 } + - { offsetInCU: 0x3D64, offset: 0x965A8, size: 0x8, addend: 0x0, symName: __ZN2bq6layout9do_layoutERKNS_16log_entry_handleEbPKNS_5arrayINS_11string_baseIcEELm0EEE.cold.2, symObjAddr: 0x3F8C, symBinAddr: 0x2C0B4, symSize: 0x24 } + - { offsetInCU: 0x3E6F, offset: 0x966B3, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_timeERKNS_16log_entry_handleE, symObjAddr: 0x468, symBinAddr: 0x1DC08, symSize: 0x24C } + - { offsetInCU: 0x40C0, offset: 0x96904, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE, symObjAddr: 0x6B4, symBinAddr: 0x1DE54, symSize: 0x3D0 } + - { offsetInCU: 0x40CA, offset: 0x9690E, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE, symObjAddr: 0x6B4, symBinAddr: 0x1DE54, symSize: 0x3D0 } + - { offsetInCU: 0x4843, offset: 0x97087, size: 0x8, addend: 0x0, symName: __ZN2bq6layout15insert_str_utf8EPKcj, symObjAddr: 0xA84, symBinAddr: 0x1E224, symSize: 0x168 } + - { offsetInCU: 0x484D, offset: 0x97091, size: 0x8, addend: 0x0, symName: __ZN2bq6layout15insert_str_utf8EPKcj, symObjAddr: 0xA84, symBinAddr: 0x1E224, symSize: 0x168 } + - { offsetInCU: 0x4A3C, offset: 0x97280, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_charEc, symObjAddr: 0xBEC, symBinAddr: 0x1E38C, symSize: 0x148 } + - { offsetInCU: 0x4A46, offset: 0x9728A, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_charEc, symObjAddr: 0xBEC, symBinAddr: 0x1E38C, symSize: 0x148 } + - { offsetInCU: 0x4BF8, offset: 0x9743C, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18fill_and_alignmentEj, symObjAddr: 0xD34, symBinAddr: 0x1E4D4, symSize: 0x190 } + - { offsetInCU: 0x4C02, offset: 0x97446, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_timeERKNS_16log_entry_handleE.cold.1, symObjAddr: 0x3FD8, symBinAddr: 0x2C0D8, symSize: 0x24 } + - { offsetInCU: 0x4FDB, offset: 0x9781F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy, symObjAddr: 0x3D58, symBinAddr: 0x2148C, symSize: 0x20C } + - { offsetInCU: 0x541D, offset: 0x97C61, size: 0x8, addend: 0x0, symName: __ZN2bq6layout9do_layoutERKNS_16log_entry_handleEbPKNS_5arrayINS_11string_baseIcEELm0EEE.cold.1, symObjAddr: 0x3F64, symBinAddr: 0x2C08C, symSize: 0x28 } + - { offsetInCU: 0x5427, offset: 0x97C6B, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.5, symObjAddr: 0x4090, symBinAddr: 0x2C190, symSize: 0x24 } + - { offsetInCU: 0x5468, offset: 0x97CAC, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.8, symObjAddr: 0x40FC, symBinAddr: 0x2C1FC, symSize: 0x24 } + - { offsetInCU: 0x54BF, offset: 0x97D03, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.1, symObjAddr: 0x3FFC, symBinAddr: 0x2C0FC, symSize: 0x28 } + - { offsetInCU: 0x54D6, offset: 0x97D1A, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.6, symObjAddr: 0x40B4, symBinAddr: 0x2C1B4, symSize: 0x24 } + - { offsetInCU: 0x5542, offset: 0x97D86, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.9, symObjAddr: 0x4120, symBinAddr: 0x2C220, symSize: 0x24 } + - { offsetInCU: 0x5599, offset: 0x97DDD, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.3, symObjAddr: 0x4048, symBinAddr: 0x2C148, symSize: 0x24 } + - { offsetInCU: 0x55DA, offset: 0x97E1E, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.2, symObjAddr: 0x4024, symBinAddr: 0x2C124, symSize: 0x24 } + - { offsetInCU: 0x561B, offset: 0x97E5F, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.7, symObjAddr: 0x40D8, symBinAddr: 0x2C1D8, symSize: 0x24 } + - { offsetInCU: 0x5687, offset: 0x97ECB, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18insert_thread_infoERKNS_16log_entry_handleE.cold.4, symObjAddr: 0x406C, symBinAddr: 0x2C16C, symSize: 0x24 } + - { offsetInCU: 0x56DF, offset: 0x97F23, size: 0x8, addend: 0x0, symName: __ZN2bq6layout15insert_str_utf8EPKcj.cold.1, symObjAddr: 0x4144, symBinAddr: 0x2C244, symSize: 0x28 } + - { offsetInCU: 0x56F6, offset: 0x97F3A, size: 0x8, addend: 0x0, symName: __ZN2bq6layout15insert_str_utf8EPKcj.cold.2, symObjAddr: 0x416C, symBinAddr: 0x2C26C, symSize: 0x24 } + - { offsetInCU: 0x574F, offset: 0x97F93, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_charEc.cold.1, symObjAddr: 0x4190, symBinAddr: 0x2C290, symSize: 0x24 } + - { offsetInCU: 0x57A8, offset: 0x97FEC, size: 0x8, addend: 0x0, symName: __ZN2bq6layout18fill_and_alignmentEj, symObjAddr: 0xD34, symBinAddr: 0x1E4D4, symSize: 0x190 } + - { offsetInCU: 0x5B76, offset: 0x983BA, size: 0x8, addend: 0x0, symName: __ZN2bq6layout10c20_formatIcEENS0_11format_infoEPKT_i, symObjAddr: 0x3478, symBinAddr: 0x20BF0, symSize: 0x1EC } + - { offsetInCU: 0x5CCC, offset: 0x98510, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_pointerEPKv, symObjAddr: 0x1DEC, symBinAddr: 0x1F58C, symSize: 0x284 } + - { offsetInCU: 0x604E, offset: 0x98892, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_boolEb, symObjAddr: 0x2070, symBinAddr: 0x1F810, symSize: 0x264 } + - { offsetInCU: 0x6058, offset: 0x9889C, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_boolEb, symObjAddr: 0x2070, symBinAddr: 0x1F810, symSize: 0x264 } + - { offsetInCU: 0x63B4, offset: 0x98BF8, size: 0x8, addend: 0x0, symName: __ZN2bq6layout16insert_str_utf16EPKcj, symObjAddr: 0x3170, symBinAddr: 0x208E8, symSize: 0x308 } + - { offsetInCU: 0x6658, offset: 0x98E9C, size: 0x8, addend: 0x0, symName: __ZN2bq6layout10c20_formatIcEENS0_11format_infoEPKT_i, symObjAddr: 0x3478, symBinAddr: 0x20BF0, symSize: 0x1EC } + - { offsetInCU: 0x6662, offset: 0x98EA6, size: 0x8, addend: 0x0, symName: __ZN2bq6layout22insert_integral_signedExi, symObjAddr: 0x2358, symBinAddr: 0x1FAD0, symSize: 0x534 } + - { offsetInCU: 0x6D55, offset: 0x99599, size: 0x8, addend: 0x0, symName: __ZN2bq6layout24insert_integral_unsignedEyi, symObjAddr: 0x288C, symBinAddr: 0x20004, symSize: 0x528 } + - { offsetInCU: 0x6D5F, offset: 0x995A3, size: 0x8, addend: 0x0, symName: __ZN2bq6layout24insert_integral_unsignedEyi, symObjAddr: 0x288C, symBinAddr: 0x20004, symSize: 0x528 } + - { offsetInCU: 0x7479, offset: 0x99CBD, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_decimalEf, symObjAddr: 0x2DB4, symBinAddr: 0x2052C, symSize: 0x1E0 } + - { offsetInCU: 0x7483, offset: 0x99CC7, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_decimalEf, symObjAddr: 0x2DB4, symBinAddr: 0x2052C, symSize: 0x1E0 } + - { offsetInCU: 0x770B, offset: 0x99F4F, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_decimalEd, symObjAddr: 0x2F94, symBinAddr: 0x2070C, symSize: 0x1DC } + - { offsetInCU: 0x7715, offset: 0x99F59, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_decimalEd, symObjAddr: 0x2F94, symBinAddr: 0x2070C, symSize: 0x1DC } + - { offsetInCU: 0x7991, offset: 0x9A1D5, size: 0x8, addend: 0x0, symName: __ZN2bq6layout16insert_str_utf16EPKcj, symObjAddr: 0x3170, symBinAddr: 0x208E8, symSize: 0x308 } + - { offsetInCU: 0x799B, offset: 0x9A1DF, size: 0x8, addend: 0x0, symName: __ZN2bq6layout32python_style_format_content_utf8ERKNS_16log_entry_handleE.cold.2, symObjAddr: 0x41D8, symBinAddr: 0x2C2D8, symSize: 0x28 } + - { offsetInCU: 0x79B2, offset: 0x9A1F6, size: 0x8, addend: 0x0, symName: __ZN2bq6layout32python_style_format_content_utf8ERKNS_16log_entry_handleE.cold.4, symObjAddr: 0x4224, symBinAddr: 0x2C324, symSize: 0x24 } + - { offsetInCU: 0x7A0B, offset: 0x9A24F, size: 0x8, addend: 0x0, symName: __ZN2bq6layout32python_style_format_content_utf8ERKNS_16log_entry_handleE.cold.1, symObjAddr: 0x41B4, symBinAddr: 0x2C2B4, symSize: 0x24 } + - { offsetInCU: 0x7A64, offset: 0x9A2A8, size: 0x8, addend: 0x0, symName: __ZN2bq6layout32python_style_format_content_utf8ERKNS_16log_entry_handleE.cold.5, symObjAddr: 0x4248, symBinAddr: 0x2C348, symSize: 0x24 } + - { offsetInCU: 0x7ABD, offset: 0x9A301, size: 0x8, addend: 0x0, symName: __ZN2bq6layout32python_style_format_content_utf8ERKNS_16log_entry_handleE.cold.3, symObjAddr: 0x4200, symBinAddr: 0x2C300, symSize: 0x24 } + - { offsetInCU: 0x7B16, offset: 0x9A35A, size: 0x8, addend: 0x0, symName: __ZN2bq6layout10c20_formatIDsEENS0_11format_infoEPKT_i, symObjAddr: 0x3664, symBinAddr: 0x20DDC, symSize: 0x1F4 } + - { offsetInCU: 0x7C76, offset: 0x9A4BA, size: 0x8, addend: 0x0, symName: __ZN2bq6layout13insert_char32EDi, symObjAddr: 0x22FC, symBinAddr: 0x1FA74, symSize: 0x5C } + - { offsetInCU: 0x7CC4, offset: 0x9A508, size: 0x8, addend: 0x0, symName: __ZN2bq6layout33python_style_format_content_utf16ERKNS_16log_entry_handleE.cold.1, symObjAddr: 0x426C, symBinAddr: 0x2C36C, symSize: 0x28 } + - { offsetInCU: 0x7CDB, offset: 0x9A51F, size: 0x8, addend: 0x0, symName: __ZN2bq6layout33python_style_format_content_utf16ERKNS_16log_entry_handleE.cold.3, symObjAddr: 0x42B8, symBinAddr: 0x2C3B8, symSize: 0x24 } + - { offsetInCU: 0x7D34, offset: 0x9A578, size: 0x8, addend: 0x0, symName: __ZN2bq6layout33python_style_format_content_utf16ERKNS_16log_entry_handleE.cold.2, symObjAddr: 0x4294, symBinAddr: 0x2C394, symSize: 0x24 } + - { offsetInCU: 0x7D8D, offset: 0x9A5D1, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_pointerEPKv.cold.2, symObjAddr: 0x4300, symBinAddr: 0x2C400, symSize: 0x24 } + - { offsetInCU: 0x7DE6, offset: 0x9A62A, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_pointerEPKv.cold.1, symObjAddr: 0x42DC, symBinAddr: 0x2C3DC, symSize: 0x24 } + - { offsetInCU: 0x7E3F, offset: 0x9A683, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_boolEb.cold.1, symObjAddr: 0x4324, symBinAddr: 0x2C424, symSize: 0x24 } + - { offsetInCU: 0x7E98, offset: 0x9A6DC, size: 0x8, addend: 0x0, symName: __ZN2bq6layout11insert_boolEb.cold.2, symObjAddr: 0x4348, symBinAddr: 0x2C448, symSize: 0x24 } + - { offsetInCU: 0x7F2E, offset: 0x9A772, size: 0x8, addend: 0x0, symName: __ZN2bq6layout22insert_integral_signedExi.cold.2, symObjAddr: 0x4394, symBinAddr: 0x2C494, symSize: 0x24 } + - { offsetInCU: 0x7F87, offset: 0x9A7CB, size: 0x8, addend: 0x0, symName: __ZN2bq6layout22insert_integral_signedExi.cold.3, symObjAddr: 0x43B8, symBinAddr: 0x2C4B8, symSize: 0x24 } + - { offsetInCU: 0x7FE0, offset: 0x9A824, size: 0x8, addend: 0x0, symName: __ZN2bq6layout22insert_integral_signedExi.cold.1, symObjAddr: 0x436C, symBinAddr: 0x2C46C, symSize: 0x28 } + - { offsetInCU: 0x7FF7, offset: 0x9A83B, size: 0x8, addend: 0x0, symName: __ZN2bq6layout22insert_integral_signedExi.cold.4, symObjAddr: 0x43DC, symBinAddr: 0x2C4DC, symSize: 0x24 } + - { offsetInCU: 0x8050, offset: 0x9A894, size: 0x8, addend: 0x0, symName: __ZN2bq6layout24insert_integral_unsignedEyi.cold.2, symObjAddr: 0x4428, symBinAddr: 0x2C528, symSize: 0x24 } + - { offsetInCU: 0x80A9, offset: 0x9A8ED, size: 0x8, addend: 0x0, symName: __ZN2bq6layout24insert_integral_unsignedEyi.cold.3, symObjAddr: 0x444C, symBinAddr: 0x2C54C, symSize: 0x24 } + - { offsetInCU: 0x8102, offset: 0x9A946, size: 0x8, addend: 0x0, symName: __ZN2bq6layout24insert_integral_unsignedEyi.cold.1, symObjAddr: 0x4400, symBinAddr: 0x2C500, symSize: 0x28 } + - { offsetInCU: 0x8119, offset: 0x9A95D, size: 0x8, addend: 0x0, symName: __ZN2bq6layout24insert_integral_unsignedEyi.cold.4, symObjAddr: 0x4470, symBinAddr: 0x2C570, symSize: 0x24 } + - { offsetInCU: 0x8172, offset: 0x9A9B6, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_decimalEf.cold.1, symObjAddr: 0x4494, symBinAddr: 0x2C594, symSize: 0x24 } + - { offsetInCU: 0x81CB, offset: 0x9AA0F, size: 0x8, addend: 0x0, symName: __ZN2bq6layout14insert_decimalEd.cold.1, symObjAddr: 0x44B8, symBinAddr: 0x2C5B8, symSize: 0x24 } + - { offsetInCU: 0x8224, offset: 0x9AA68, size: 0x8, addend: 0x0, symName: __ZN2bq6layout16insert_str_utf16EPKcj.cold.1, symObjAddr: 0x44DC, symBinAddr: 0x2C5DC, symSize: 0x28 } + - { offsetInCU: 0x823B, offset: 0x9AA7F, size: 0x8, addend: 0x0, symName: __ZN2bq6layout16insert_str_utf16EPKcj.cold.2, symObjAddr: 0x4504, symBinAddr: 0x2C604, symSize: 0x24 } + - { offsetInCU: 0x82A5, offset: 0x9AAE9, size: 0x8, addend: 0x0, symName: __ZN2bq21_time_zone_str_initerC2Ev, symObjAddr: 0x389C, symBinAddr: 0x20FD0, symSize: 0xE4 } + - { offsetInCU: 0x83CB, offset: 0x9AC0F, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj.cold.7, symObjAddr: 0x4600, symBinAddr: 0x2C700, symSize: 0x24 } + - { offsetInCU: 0x83F8, offset: 0x9AC3C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj.cold.6, symObjAddr: 0x45DC, symBinAddr: 0x2C6DC, symSize: 0x24 } + - { offsetInCU: 0x8425, offset: 0x9AC69, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj.cold.5, symObjAddr: 0x45B8, symBinAddr: 0x2C6B8, symSize: 0x24 } + - { offsetInCU: 0x8452, offset: 0x9AC96, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj.cold.4, symObjAddr: 0x4594, symBinAddr: 0x2C694, symSize: 0x24 } + - { offsetInCU: 0x847F, offset: 0x9ACC3, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj.cold.3, symObjAddr: 0x4570, symBinAddr: 0x2C670, symSize: 0x24 } + - { offsetInCU: 0x84AC, offset: 0x9ACF0, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj.cold.2, symObjAddr: 0x454C, symBinAddr: 0x2C64C, symSize: 0x24 } + - { offsetInCU: 0x84D9, offset: 0x9AD1D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE14expand_bucketsEj.cold.1, symObjAddr: 0x4528, symBinAddr: 0x2C628, symSize: 0x24 } + - { offsetInCU: 0x860E, offset: 0x9AE52, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12expand_nodesEj.cold.1, symObjAddr: 0x4624, symBinAddr: 0x2C724, symSize: 0x24 } + - { offsetInCU: 0x8650, offset: 0x9AE94, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12expand_nodesEj.cold.4, symObjAddr: 0x4690, symBinAddr: 0x2C790, symSize: 0x24 } + - { offsetInCU: 0x8692, offset: 0x9AED6, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12expand_nodesEj.cold.3, symObjAddr: 0x466C, symBinAddr: 0x2C76C, symSize: 0x24 } + - { offsetInCU: 0x8700, offset: 0x9AF44, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12expand_nodesEj.cold.2, symObjAddr: 0x4648, symBinAddr: 0x2C748, symSize: 0x24 } + - { offsetInCU: 0x8758, offset: 0x9AF9C, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE12expand_nodesEj.cold.5, symObjAddr: 0x46B4, symBinAddr: 0x2C7B4, symSize: 0x24 } + - { offsetInCU: 0x87FD, offset: 0x9B041, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.2, symObjAddr: 0x4700, symBinAddr: 0x2C800, symSize: 0x24 } + - { offsetInCU: 0x8855, offset: 0x9B099, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.9, symObjAddr: 0x4800, symBinAddr: 0x2C900, symSize: 0x24 } + - { offsetInCU: 0x8898, offset: 0x9B0DC, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.7, symObjAddr: 0x47B4, symBinAddr: 0x2C8B4, symSize: 0x24 } + - { offsetInCU: 0x88C5, offset: 0x9B109, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.1, symObjAddr: 0x46D8, symBinAddr: 0x2C7D8, symSize: 0x28 } + - { offsetInCU: 0x88DC, offset: 0x9B120, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.5, symObjAddr: 0x476C, symBinAddr: 0x2C86C, symSize: 0x24 } + - { offsetInCU: 0x8909, offset: 0x9B14D, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.10, symObjAddr: 0x4824, symBinAddr: 0x2C924, symSize: 0x24 } + - { offsetInCU: 0x894C, offset: 0x9B190, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.6, symObjAddr: 0x4790, symBinAddr: 0x2C890, symSize: 0x24 } + - { offsetInCU: 0x8979, offset: 0x9B1BD, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.4, symObjAddr: 0x4748, symBinAddr: 0x2C848, symSize: 0x24 } + - { offsetInCU: 0x89A6, offset: 0x9B1EA, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.3, symObjAddr: 0x4724, symBinAddr: 0x2C824, symSize: 0x24 } + - { offsetInCU: 0x89D3, offset: 0x9B217, size: 0x8, addend: 0x0, symName: __ZN2bq8hash_mapIyNS_11string_baseIcEEE17alloc_node_by_keyERKy.cold.8, symObjAddr: 0x47D8, symBinAddr: 0x2C8D8, symSize: 0x28 } + - { offsetInCU: 0x89EF, offset: 0x9B233, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x4848, symBinAddr: 0x21698, symSize: 0x8 } + - { offsetInCU: 0x8A06, offset: 0x9B24A, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x4850, symBinAddr: 0x216A0, symSize: 0x8 } + - { offsetInCU: 0x8A1D, offset: 0x9B261, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x4858, symBinAddr: 0x216A8, symSize: 0x8 } + - { offsetInCU: 0x59, offset: 0x9B304, size: 0x8, addend: 0x0, symName: __ZN2bqL14empty_snapshotE, symObjAddr: 0x54948, symBinAddr: 0x35808, symSize: 0x0 } + - { offsetInCU: 0x58C8, offset: 0xA0B73, size: 0x8, addend: 0x0, symName: __ZN2bq7log_impC1Ev, symObjAddr: 0x80, symBinAddr: 0x21984, symSize: 0x80 } + - { offsetInCU: 0x5BFD, offset: 0xA0EA8, size: 0x8, addend: 0x0, symName: __ZN2bq7log_impD2Ev, symObjAddr: 0x100, symBinAddr: 0x21A04, symSize: 0x17C } + - { offsetInCU: 0x60F2, offset: 0xA139D, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp5clearEv, symObjAddr: 0x27C, symBinAddr: 0x21B80, symSize: 0x16C } + - { offsetInCU: 0x6779, offset: 0xA1A24, size: 0x8, addend: 0x0, symName: __ZN2bq7log_impD1Ev, symObjAddr: 0x420, symBinAddr: 0x21CEC, symSize: 0x4 } + - { offsetInCU: 0x67A7, offset: 0xA1A52, size: 0x8, addend: 0x0, symName: __ZN2bq7log_impD1Ev, symObjAddr: 0x420, symBinAddr: 0x21CEC, symSize: 0x4 } + - { offsetInCU: 0x6F23, offset: 0xA21CE, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE, symObjAddr: 0x424, symBinAddr: 0x21CF0, symSize: 0x1000 } + - { offsetInCU: 0x9D71, offset: 0xA501C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE6insertIJyEEEvNS_14array_iteratorIyS1_EEDpOT_, symObjAddr: 0x3990, symBinAddr: 0x243E4, symSize: 0x134 } + - { offsetInCU: 0xA318, offset: 0xA55C3, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12add_appenderERKNS_11string_baseIcEERKNS_14property_valueE, symObjAddr: 0x15AC, symBinAddr: 0x22CF0, symSize: 0x600 } + - { offsetInCU: 0xA322, offset: 0xA55CD, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12add_appenderERKNS_11string_baseIcEERKNS_14property_valueE, symObjAddr: 0x15AC, symBinAddr: 0x22CF0, symSize: 0x600 } + - { offsetInCU: 0xB2C1, offset: 0xA656C, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE6insertIJyEEEvNS_14array_iteratorIyS1_EEDpOT_, symObjAddr: 0x3990, symBinAddr: 0x243E4, symSize: 0x134 } + - { offsetInCU: 0xB52E, offset: 0xA67D9, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIPNS_13appender_baseELm0EE6insertIJS2_EEEvNS_21array_iterator_inlineIS2_S3_EEDpOT_, symObjAddr: 0x3AC4, symBinAddr: 0x24518, symSize: 0x134 } + - { offsetInCU: 0xB544, offset: 0xA67EF, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.13, symObjAddr: 0x3EDC, symBinAddr: 0x2CBE8, symSize: 0x28 } + - { offsetInCU: 0xB585, offset: 0xA6830, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.1, symObjAddr: 0x3D2C, symBinAddr: 0x2CA38, symSize: 0x24 } + - { offsetInCU: 0xB5F1, offset: 0xA689C, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.2, symObjAddr: 0x3D50, symBinAddr: 0x2CA5C, symSize: 0x24 } + - { offsetInCU: 0xB65D, offset: 0xA6908, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.8, symObjAddr: 0x3E28, symBinAddr: 0x2CB34, symSize: 0x24 } + - { offsetInCU: 0xB6C9, offset: 0xA6974, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.9, symObjAddr: 0x3E4C, symBinAddr: 0x2CB58, symSize: 0x24 } + - { offsetInCU: 0xB735, offset: 0xA69E0, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.10, symObjAddr: 0x3E70, symBinAddr: 0x2CB7C, symSize: 0x24 } + - { offsetInCU: 0xB7A1, offset: 0xA6A4C, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.3, symObjAddr: 0x3D74, symBinAddr: 0x2CA80, symSize: 0x24 } + - { offsetInCU: 0xB80D, offset: 0xA6AB8, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.4, symObjAddr: 0x3D98, symBinAddr: 0x2CAA4, symSize: 0x24 } + - { offsetInCU: 0xB879, offset: 0xA6B24, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.5, symObjAddr: 0x3DBC, symBinAddr: 0x2CAC8, symSize: 0x24 } + - { offsetInCU: 0xB8E5, offset: 0xA6B90, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.6, symObjAddr: 0x3DE0, symBinAddr: 0x2CAEC, symSize: 0x24 } + - { offsetInCU: 0xB951, offset: 0xA6BFC, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.12, symObjAddr: 0x3EB8, symBinAddr: 0x2CBC4, symSize: 0x24 } + - { offsetInCU: 0xB97D, offset: 0xA6C28, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.11, symObjAddr: 0x3E94, symBinAddr: 0x2CBA0, symSize: 0x24 } + - { offsetInCU: 0xB9A9, offset: 0xA6C54, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.14, symObjAddr: 0x3F04, symBinAddr: 0x2CC10, symSize: 0x24 } + - { offsetInCU: 0xBA15, offset: 0xA6CC0, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.15, symObjAddr: 0x3F28, symBinAddr: 0x2CC34, symSize: 0x24 } + - { offsetInCU: 0xBA81, offset: 0xA6D2C, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.7, symObjAddr: 0x3E04, symBinAddr: 0x2CB10, symSize: 0x24 } + - { offsetInCU: 0xBF42, offset: 0xA71ED, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIPNS_13appender_baseELm0EE6insertIJS2_EEEvNS_21array_iterator_inlineIS2_S3_EEDpOT_, symObjAddr: 0x3AC4, symBinAddr: 0x24518, symSize: 0x134 } + - { offsetInCU: 0xC1A6, offset: 0xA7451, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x3BF8, symBinAddr: 0x2464C, symSize: 0x134 } + - { offsetInCU: 0xC1BC, offset: 0xA7467, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12add_appenderERKNS_11string_baseIcEERKNS_14property_valueE.cold.1, symObjAddr: 0x3F98, symBinAddr: 0x2CC58, symSize: 0x24 } + - { offsetInCU: 0xC24B, offset: 0xA74F6, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE, symObjAddr: 0x1C34, symBinAddr: 0x232F0, symSize: 0xA18 } + - { offsetInCU: 0xDB37, offset: 0xA8DE2, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.1, symObjAddr: 0x3FBC, symBinAddr: 0x2CC7C, symSize: 0x24 } + - { offsetInCU: 0xDBA3, offset: 0xA8E4E, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.5, symObjAddr: 0x404C, symBinAddr: 0x2CD0C, symSize: 0x24 } + - { offsetInCU: 0xDC0F, offset: 0xA8EBA, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.6, symObjAddr: 0x4070, symBinAddr: 0x2CD30, symSize: 0x24 } + - { offsetInCU: 0xDC7B, offset: 0xA8F26, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.2, symObjAddr: 0x3FE0, symBinAddr: 0x2CCA0, symSize: 0x24 } + - { offsetInCU: 0xDCE7, offset: 0xA8F92, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.7, symObjAddr: 0x4094, symBinAddr: 0x2CD54, symSize: 0x24 } + - { offsetInCU: 0xDD53, offset: 0xA8FFE, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.3, symObjAddr: 0x4004, symBinAddr: 0x2CCC4, symSize: 0x24 } + - { offsetInCU: 0xDDBF, offset: 0xA906A, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.4, symObjAddr: 0x4028, symBinAddr: 0x2CCE8, symSize: 0x24 } + - { offsetInCU: 0xDE2B, offset: 0xA90D6, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.8, symObjAddr: 0x40B8, symBinAddr: 0x2CD78, symSize: 0x24 } + - { offsetInCU: 0xDE97, offset: 0xA9142, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12reset_configERKNS_14property_valueE.cold.9, symObjAddr: 0x40DC, symBinAddr: 0x2CD9C, symSize: 0x24 } + - { offsetInCU: 0xDF03, offset: 0xA91AE, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp10set_configERKNS_11string_baseIcEE, symObjAddr: 0x2654, symBinAddr: 0x23D08, symSize: 0x34 } + - { offsetInCU: 0xDF54, offset: 0xA91FF, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp10set_configERKNS_11string_baseIcEE, symObjAddr: 0x2654, symBinAddr: 0x23D08, symSize: 0x34 } + - { offsetInCU: 0xE053, offset: 0xA92FE, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp15enable_snapshotEj, symObjAddr: 0x27D4, symBinAddr: 0x23D3C, symSize: 0x5C } + - { offsetInCU: 0xE0FF, offset: 0xA93AA, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp20take_snapshot_stringEb, symObjAddr: 0x2830, symBinAddr: 0x23D98, symSize: 0x18 } + - { offsetInCU: 0xE13C, offset: 0xA93E7, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp23release_snapshot_stringEv, symObjAddr: 0x2848, symBinAddr: 0x23DB0, symSize: 0x10 } + - { offsetInCU: 0xE165, offset: 0xA9410, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp8get_nameEv, symObjAddr: 0x2858, symBinAddr: 0x23DC0, symSize: 0x8 } + - { offsetInCU: 0xE28A, offset: 0xA9535, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp7processEb, symObjAddr: 0x2860, symBinAddr: 0x23DC8, symSize: 0x27C } + - { offsetInCU: 0xE785, offset: 0xA9A30, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp12sync_processEv, symObjAddr: 0x2B94, symBinAddr: 0x24044, symSize: 0x38 } + - { offsetInCU: 0xE83A, offset: 0xA9AE5, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp10get_layoutEv, symObjAddr: 0x2BCC, symBinAddr: 0x2407C, symSize: 0x8 } + - { offsetInCU: 0xE863, offset: 0xA9B0E, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp20get_categories_countEv, symObjAddr: 0x2BD4, symBinAddr: 0x24084, symSize: 0x8 } + - { offsetInCU: 0xE88E, offset: 0xA9B39, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp20get_categories_countEv, symObjAddr: 0x2BD4, symBinAddr: 0x24084, symSize: 0x8 } + - { offsetInCU: 0xE8AC, offset: 0xA9B57, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp26get_category_name_by_indexEj, symObjAddr: 0x2BDC, symBinAddr: 0x2408C, symSize: 0x10 } + - { offsetInCU: 0xE8E6, offset: 0xA9B91, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp26get_category_name_by_indexEj, symObjAddr: 0x2BDC, symBinAddr: 0x2408C, symSize: 0x10 } + - { offsetInCU: 0xE904, offset: 0xA9BAF, size: 0x8, addend: 0x0, symName: __ZNK2bq7log_imp19get_categories_nameEv, symObjAddr: 0x2BEC, symBinAddr: 0x2409C, symSize: 0x8 } + - { offsetInCU: 0xEAF8, offset: 0xA9DA3, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp26get_appender_by_vague_nameERKNS_11string_baseIcEE, symObjAddr: 0x2C84, symBinAddr: 0x240A4, symSize: 0x340 } + - { offsetInCU: 0xFB4A, offset: 0xAADF5, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_, symObjAddr: 0x3BF8, symBinAddr: 0x2464C, symSize: 0x134 } + - { offsetInCU: 0xFDB7, offset: 0xAB062, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp4initERKNS_11string_baseIcEERKNS_14property_valueERKNS_5arrayIS2_Lm0EEE.cold.1, symObjAddr: 0x3D2C, symBinAddr: 0x2CA38, symSize: 0x24 } + - { offsetInCU: 0xFDCD, offset: 0xAB078, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp26get_appender_by_vague_nameERKNS_11string_baseIcEE.cold.3, symObjAddr: 0x4148, symBinAddr: 0x2CE08, symSize: 0x28 } + - { offsetInCU: 0xFDFA, offset: 0xAB0A5, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp26get_appender_by_vague_nameERKNS_11string_baseIcEE.cold.4, symObjAddr: 0x4170, symBinAddr: 0x2CE30, symSize: 0x24 } + - { offsetInCU: 0xFE3D, offset: 0xAB0E8, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp26get_appender_by_vague_nameERKNS_11string_baseIcEE.cold.5, symObjAddr: 0x4194, symBinAddr: 0x2CE54, symSize: 0x24 } + - { offsetInCU: 0xFEAA, offset: 0xAB155, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp26get_appender_by_vague_nameERKNS_11string_baseIcEE.cold.1, symObjAddr: 0x4100, symBinAddr: 0x2CDC0, symSize: 0x24 } + - { offsetInCU: 0xFF17, offset: 0xAB1C2, size: 0x8, addend: 0x0, symName: __ZN2bq7log_imp26get_appender_by_vague_nameERKNS_11string_baseIcEE.cold.2, symObjAddr: 0x4124, symBinAddr: 0x2CDE4, symSize: 0x24 } + - { offsetInCU: 0x1064F, offset: 0xAB8FA, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE6insertIJyEEEvNS_14array_iteratorIyS1_EEDpOT_.cold.1, symObjAddr: 0x446C, symBinAddr: 0x2CE78, symSize: 0x24 } + - { offsetInCU: 0x10666, offset: 0xAB911, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE6insertIJyEEEvNS_14array_iteratorIyS1_EEDpOT_.cold.3, symObjAddr: 0x44B4, symBinAddr: 0x2CEC0, symSize: 0x24 } + - { offsetInCU: 0x10693, offset: 0xAB93E, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIyLm0EE6insertIJyEEEvNS_14array_iteratorIyS1_EEDpOT_.cold.2, symObjAddr: 0x4490, symBinAddr: 0x2CE9C, symSize: 0x24 } + - { offsetInCU: 0x1079D, offset: 0xABA48, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIPNS_13appender_baseELm0EE6insertIJS2_EEEvNS_21array_iterator_inlineIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x44D8, symBinAddr: 0x2CEE4, symSize: 0x24 } + - { offsetInCU: 0x107B4, offset: 0xABA5F, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIPNS_13appender_baseELm0EE6insertIJS2_EEEvNS_21array_iterator_inlineIS2_S3_EEDpOT_.cold.3, symObjAddr: 0x4520, symBinAddr: 0x2CF2C, symSize: 0x24 } + - { offsetInCU: 0x107E1, offset: 0xABA8C, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineIPNS_13appender_baseELm0EE6insertIJS2_EEEvNS_21array_iterator_inlineIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x44FC, symBinAddr: 0x2CF08, symSize: 0x24 } + - { offsetInCU: 0x10907, offset: 0xABBB2, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.1, symObjAddr: 0x4544, symBinAddr: 0x2CF50, symSize: 0x24 } + - { offsetInCU: 0x1091E, offset: 0xABBC9, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.3, symObjAddr: 0x458C, symBinAddr: 0x2CF98, symSize: 0x24 } + - { offsetInCU: 0x1094B, offset: 0xABBF6, size: 0x8, addend: 0x0, symName: __ZN2bq5arrayIPNS_13appender_baseELm0EE6insertIJRS2_EEEvNS_14array_iteratorIS2_S3_EEDpOT_.cold.2, symObjAddr: 0x4568, symBinAddr: 0x2CF74, symSize: 0x24 } + - { offsetInCU: 0x10978, offset: 0xABC23, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x45B0, symBinAddr: 0x24780, symSize: 0x8 } + - { offsetInCU: 0x1098F, offset: 0xABC3A, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_1, symObjAddr: 0x45B8, symBinAddr: 0x24788, symSize: 0x8 } + - { offsetInCU: 0x109A6, offset: 0xABC51, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_2, symObjAddr: 0x45C0, symBinAddr: 0x24790, symSize: 0x8 } + - { offsetInCU: 0xB8B, offset: 0xAC806, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmapC1Ev, symObjAddr: 0x8, symBinAddr: 0x247BC, symSize: 0x8 } + - { offsetInCU: 0xBB9, offset: 0xAC834, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmapC1Ev, symObjAddr: 0x8, symBinAddr: 0x247BC, symSize: 0x8 } + - { offsetInCU: 0xBD2, offset: 0xAC84D, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap5clearEv, symObjAddr: 0x20, symBinAddr: 0x247C4, symSize: 0x8 } + - { offsetInCU: 0xE5A, offset: 0xACAD5, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelERKNS_11string_baseIcEE, symObjAddr: 0x40, symBinAddr: 0x247CC, symSize: 0x864 } + - { offsetInCU: 0x1A1B, offset: 0xAD696, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE18equals_ignore_caseERKS1_, symObjAddr: 0x8A4, symBinAddr: 0x25030, symSize: 0xB4 } + - { offsetInCU: 0x1BAF, offset: 0xAD82A, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelERKNS_11string_baseIcEE.cold.1, symObjAddr: 0xB3C, symBinAddr: 0x2CFBC, symSize: 0x24 } + - { offsetInCU: 0x1C2B, offset: 0xAD8A6, size: 0x8, addend: 0x0, symName: __ZNK2bq11string_baseIcE18equals_ignore_caseERKS1_, symObjAddr: 0x8A4, symBinAddr: 0x25030, symSize: 0xB4 } + - { offsetInCU: 0x1D54, offset: 0xAD9CF, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelERKNS_11string_baseIcEE.cold.1, symObjAddr: 0xB3C, symBinAddr: 0x2CFBC, symSize: 0x24 } + - { offsetInCU: 0x1DC0, offset: 0xADA3B, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelERKNS_11string_baseIcEE.cold.2, symObjAddr: 0xB60, symBinAddr: 0x2CFE0, symSize: 0x24 } + - { offsetInCU: 0x1E2C, offset: 0xADAA7, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelERKNS_11string_baseIcEE.cold.3, symObjAddr: 0xB84, symBinAddr: 0x2D004, symSize: 0x24 } + - { offsetInCU: 0x1E98, offset: 0xADB13, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelERKNS_11string_baseIcEE.cold.4, symObjAddr: 0xBA8, symBinAddr: 0x2D028, symSize: 0x24 } + - { offsetInCU: 0x1F04, offset: 0xADB7F, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap9add_levelERKNS_11string_baseIcEE.cold.5, symObjAddr: 0xBCC, symBinAddr: 0x2D04C, symSize: 0x24 } + - { offsetInCU: 0x1F70, offset: 0xADBEB, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap10have_levelENS_9log_levelE, symObjAddr: 0x9C8, symBinAddr: 0x250E4, symSize: 0x10 } + - { offsetInCU: 0x1FA6, offset: 0xADC21, size: 0x8, addend: 0x0, symName: __ZN2bq16log_level_bitmap14get_bitmap_ptrEv, symObjAddr: 0x9D8, symBinAddr: 0x250F4, symSize: 0x4 } + - { offsetInCU: 0x2095, offset: 0xADD10, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0xC64, symBinAddr: 0x250F8, symSize: 0x8 } + - { offsetInCU: 0x26, offset: 0xADD4D, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerC2Ev, symObjAddr: 0x0, symBinAddr: 0x25100, symSize: 0x84 } + - { offsetInCU: 0x3F, offset: 0xADD66, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager18static_inst_cache_E, symObjAddr: 0x26818, symBinAddr: 0x35A60, symSize: 0x0 } + - { offsetInCU: 0x3D95, offset: 0xB1ABC, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerC2Ev, symObjAddr: 0x0, symBinAddr: 0x25100, symSize: 0x84 } + - { offsetInCU: 0x3F9E, offset: 0xB1CC5, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerC2Ev.cold.1, symObjAddr: 0xF48, symBinAddr: 0x2D070, symSize: 0x28 } + - { offsetInCU: 0x3FCF, offset: 0xB1CF6, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerD1Ev, symObjAddr: 0x100, symBinAddr: 0x25184, symSize: 0x4 } + - { offsetInCU: 0x3FFD, offset: 0xB1D24, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerD1Ev, symObjAddr: 0x100, symBinAddr: 0x25184, symSize: 0x4 } + - { offsetInCU: 0x4010, offset: 0xB1D37, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerD2Ev, symObjAddr: 0x190, symBinAddr: 0x25214, symSize: 0x1A4 } + - { offsetInCU: 0x454D, offset: 0xB2274, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager8instanceEv, symObjAddr: 0x104, symBinAddr: 0x25188, symSize: 0x8C } + - { offsetInCU: 0x4A88, offset: 0xB27AF, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineINS_10unique_ptrINS_7log_impEEELm0EE6insertIJPS2_EEEvNS_21array_iterator_inlineIS3_S4_EEDpOT_, symObjAddr: 0xD20, symBinAddr: 0x25CCC, symSize: 0x228 } + - { offsetInCU: 0x4E57, offset: 0xB2B7E, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager10create_logENS_11string_baseIcEERKS2_RKNS_5arrayIS2_Lm0EEE, symObjAddr: 0x334, symBinAddr: 0x253B8, symSize: 0x3F0 } + - { offsetInCU: 0x57B8, offset: 0xB34DF, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager12reset_configERKNS_11string_baseIcEES4_, symObjAddr: 0x724, symBinAddr: 0x257A8, symSize: 0x1C8 } + - { offsetInCU: 0x57C3, offset: 0xB34EA, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineINS_10unique_ptrINS_7log_impEEELm0EE6insertIJPS2_EEEvNS_21array_iterator_inlineIS3_S4_EEDpOT_, symObjAddr: 0xD20, symBinAddr: 0x25CCC, symSize: 0x228 } + - { offsetInCU: 0x5C07, offset: 0xB392E, size: 0x8, addend: 0x0, symName: __ZN2bq11log_managerC2Ev.cold.1, symObjAddr: 0xF48, symBinAddr: 0x2D070, symSize: 0x28 } + - { offsetInCU: 0x5C1D, offset: 0xB3944, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager10create_logENS_11string_baseIcEERKS2_RKNS_5arrayIS2_Lm0EEE.cold.4, symObjAddr: 0xFE4, symBinAddr: 0x2D10C, symSize: 0x24 } + - { offsetInCU: 0x5C49, offset: 0xB3970, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager10create_logENS_11string_baseIcEERKS2_RKNS_5arrayIS2_Lm0EEE.cold.1, symObjAddr: 0xF70, symBinAddr: 0x2D098, symSize: 0x24 } + - { offsetInCU: 0x5C75, offset: 0xB399C, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager10create_logENS_11string_baseIcEERKS2_RKNS_5arrayIS2_Lm0EEE.cold.5, symObjAddr: 0x1008, symBinAddr: 0x2D130, symSize: 0x24 } + - { offsetInCU: 0x5CA0, offset: 0xB39C7, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager10create_logENS_11string_baseIcEERKS2_RKNS_5arrayIS2_Lm0EEE.cold.3, symObjAddr: 0xFBC, symBinAddr: 0x2D0E4, symSize: 0x28 } + - { offsetInCU: 0x5CB8, offset: 0xB39DF, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager10create_logENS_11string_baseIcEERKS2_RKNS_5arrayIS2_Lm0EEE.cold.2, symObjAddr: 0xF94, symBinAddr: 0x2D0BC, symSize: 0x28 } + - { offsetInCU: 0x5D24, offset: 0xB3A4B, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager12reset_configERKNS_11string_baseIcEES4_, symObjAddr: 0x724, symBinAddr: 0x257A8, symSize: 0x1C8 } + - { offsetInCU: 0x6112, offset: 0xB3E39, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager12reset_configERKNS_11string_baseIcEES4_.cold.1, symObjAddr: 0x102C, symBinAddr: 0x2D154, symSize: 0x24 } + - { offsetInCU: 0x62A2, offset: 0xB3FC9, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager17process_by_workerEPNS_7log_impEb, symObjAddr: 0x8EC, symBinAddr: 0x25970, symSize: 0xD4 } + - { offsetInCU: 0x6527, offset: 0xB424E, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager15force_flush_allEv, symObjAddr: 0x9C0, symBinAddr: 0x25A44, symSize: 0x110 } + - { offsetInCU: 0x6840, offset: 0xB4567, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager11force_flushEy, symObjAddr: 0xAD0, symBinAddr: 0x25B54, symSize: 0xCC } + - { offsetInCU: 0x6A2B, offset: 0xB4752, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager12awake_workerEv, symObjAddr: 0xB9C, symBinAddr: 0x25C20, symSize: 0x8 } + - { offsetInCU: 0x6A53, offset: 0xB477A, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager17get_public_layoutEv, symObjAddr: 0xBA4, symBinAddr: 0x25C28, symSize: 0x8 } + - { offsetInCU: 0x6A7B, offset: 0xB47A2, size: 0x8, addend: 0x0, symName: __ZNK2bq11log_manager14get_logs_countEv, symObjAddr: 0xBAC, symBinAddr: 0x25C30, symSize: 0x8 } + - { offsetInCU: 0x6AA5, offset: 0xB47CC, size: 0x8, addend: 0x0, symName: __ZNK2bq11log_manager14get_logs_countEv, symObjAddr: 0xBAC, symBinAddr: 0x25C30, symSize: 0x8 } + - { offsetInCU: 0x6ABF, offset: 0xB47E6, size: 0x8, addend: 0x0, symName: __ZN2bq11log_manager16get_log_by_indexEj, symObjAddr: 0xBB4, symBinAddr: 0x25C38, symSize: 0x94 } + - { offsetInCU: 0x70F7, offset: 0xB4E1E, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineINS_10unique_ptrINS_7log_impEEELm0EE6insertIJPS2_EEEvNS_21array_iterator_inlineIS3_S4_EEDpOT_.cold.1, symObjAddr: 0x10E4, symBinAddr: 0x2D178, symSize: 0x28 } + - { offsetInCU: 0x710F, offset: 0xB4E36, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineINS_10unique_ptrINS_7log_impEEELm0EE6insertIJPS2_EEEvNS_21array_iterator_inlineIS3_S4_EEDpOT_.cold.3, symObjAddr: 0x1134, symBinAddr: 0x2D1C8, symSize: 0x28 } + - { offsetInCU: 0x713C, offset: 0xB4E63, size: 0x8, addend: 0x0, symName: __ZN2bq12array_inlineINS_10unique_ptrINS_7log_impEEELm0EE6insertIJPS2_EEEvNS_21array_iterator_inlineIS3_S4_EEDpOT_.cold.2, symObjAddr: 0x110C, symBinAddr: 0x2D1A0, symSize: 0x28 } + - { offsetInCU: 0x7169, offset: 0xB4E90, size: 0x8, addend: 0x0, symName: _OUTLINED_FUNCTION_0, symObjAddr: 0x115C, symBinAddr: 0x25EF4, symSize: 0x8 } + - { offsetInCU: 0x3268, offset: 0xB8118, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotC1EPNS_7log_impE, symObjAddr: 0x4C, symBinAddr: 0x25EFC, symSize: 0x4C } + - { offsetInCU: 0x366F, offset: 0xB851F, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotD2Ev, symObjAddr: 0x98, symBinAddr: 0x25F48, symSize: 0xD4 } + - { offsetInCU: 0x3B0C, offset: 0xB89BC, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotD1Ev, symObjAddr: 0x16C, symBinAddr: 0x2601C, symSize: 0x4 } + - { offsetInCU: 0x3B3A, offset: 0xB89EA, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshotD1Ev, symObjAddr: 0x16C, symBinAddr: 0x2601C, symSize: 0x4 } + - { offsetInCU: 0x3B64, offset: 0xB8A14, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot17reset_buffer_sizeEj, symObjAddr: 0x170, symBinAddr: 0x26020, symSize: 0xD0 } + - { offsetInCU: 0x3D51, offset: 0xB8C01, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot10write_dataEPKhj, symObjAddr: 0x240, symBinAddr: 0x260F0, symSize: 0xF4 } + - { offsetInCU: 0x40C1, offset: 0xB8F71, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot20take_snapshot_stringEb, symObjAddr: 0x334, symBinAddr: 0x261E4, symSize: 0x1E0 } + - { offsetInCU: 0x4786, offset: 0xB9636, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot23release_snapshot_stringEv, symObjAddr: 0x7C8, symBinAddr: 0x263C4, symSize: 0xC } + - { offsetInCU: 0x48FF, offset: 0xB97AF, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot23release_snapshot_stringEv, symObjAddr: 0x7C8, symBinAddr: 0x263C4, symSize: 0xC } + - { offsetInCU: 0x4928, offset: 0xB97D8, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot23release_snapshot_stringEv, symObjAddr: 0x7C8, symBinAddr: 0x263C4, symSize: 0xC } + - { offsetInCU: 0x4946, offset: 0xB97F6, size: 0x8, addend: 0x0, symName: __ZN2bq12log_snapshot23release_snapshot_stringEv, symObjAddr: 0x7C8, symBinAddr: 0x263C4, symSize: 0xC } + - { offsetInCU: 0x26, offset: 0xB9A83, size: 0x8, addend: 0x0, symName: __ZN2bq11thread_info4initEv, symObjAddr: 0x0, symBinAddr: 0x263D0, symSize: 0xA4 } + - { offsetInCU: 0xABA, offset: 0xBA517, size: 0x8, addend: 0x0, symName: __ZN2bq11thread_info4initEv, symObjAddr: 0x0, symBinAddr: 0x263D0, symSize: 0xA4 } + - { offsetInCU: 0x45, offset: 0xBA67B, size: 0x8, addend: 0x0, symName: __ZN2bqL19log_worker_name_seqE, symObjAddr: 0x1B7AC, symBinAddr: 0x35A50, symSize: 0x0 } + - { offsetInCU: 0x2A77, offset: 0xBD0AD, size: 0x8, addend: 0x0, symName: __ZN2bq10log_workerC1Ev, symObjAddr: 0x50, symBinAddr: 0x26474, symSize: 0x50 } + - { offsetInCU: 0x2B35, offset: 0xBD16B, size: 0x8, addend: 0x0, symName: __ZN2bq10log_workerD1Ev, symObjAddr: 0xE0, symBinAddr: 0x264C4, symSize: 0x40 } + - { offsetInCU: 0x2B8F, offset: 0xBD1C5, size: 0x8, addend: 0x0, symName: __ZN2bq10log_workerD0Ev, symObjAddr: 0x120, symBinAddr: 0x26504, symSize: 0x44 } + - { offsetInCU: 0x2DC0, offset: 0xBD3F6, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker4initENS_15log_thread_modeEPNS_7log_impE, symObjAddr: 0x164, symBinAddr: 0x26548, symSize: 0x174 } + - { offsetInCU: 0x3106, offset: 0xBD73C, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker5awakeEv, symObjAddr: 0x2D8, symBinAddr: 0x266BC, symSize: 0x8 } + - { offsetInCU: 0x3110, offset: 0xBD746, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker4initENS_15log_thread_modeEPNS_7log_impE.cold.1, symObjAddr: 0x468, symBinAddr: 0x2D1F0, symSize: 0x28 } + - { offsetInCU: 0x317C, offset: 0xBD7B2, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker4initENS_15log_thread_modeEPNS_7log_impE.cold.2, symObjAddr: 0x490, symBinAddr: 0x2D218, symSize: 0x28 } + - { offsetInCU: 0x31E8, offset: 0xBD81E, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker5awakeEv, symObjAddr: 0x2D8, symBinAddr: 0x266BC, symSize: 0x8 } + - { offsetInCU: 0x32AC, offset: 0xBD8E2, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker20awake_and_wait_beginEPNS_7log_impE, symObjAddr: 0x2E0, symBinAddr: 0x266C4, symSize: 0x60 } + - { offsetInCU: 0x335F, offset: 0xBD995, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker19awake_and_wait_joinEv, symObjAddr: 0x340, symBinAddr: 0x26724, symSize: 0x3C } + - { offsetInCU: 0x3440, offset: 0xBDA76, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker3runEv, symObjAddr: 0x37C, symBinAddr: 0x26760, symSize: 0xE8 } + - { offsetInCU: 0x35F0, offset: 0xBDC26, size: 0x8, addend: 0x0, symName: __ZN2bq10log_worker3runEv.cold.1, symObjAddr: 0x4B8, symBinAddr: 0x2D240, symSize: 0x28 } + - { offsetInCU: 0x26, offset: 0xBDC6F, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferC2Ejy, symObjAddr: 0x0, symBinAddr: 0x26848, symSize: 0x1DC } + - { offsetInCU: 0x12B7, offset: 0xBEF00, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferC2Ejy, symObjAddr: 0x0, symBinAddr: 0x26848, symSize: 0x1DC } + - { offsetInCU: 0x177A, offset: 0xBF3C3, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer17create_memory_mapEjy, symObjAddr: 0x1DC, symBinAddr: 0x26A24, symSize: 0x2CC } + - { offsetInCU: 0x1C77, offset: 0xBF8C0, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer33try_recover_from_exist_memory_mapEv, symObjAddr: 0x560, symBinAddr: 0x26CF0, symSize: 0x11C } + - { offsetInCU: 0x205E, offset: 0xBFCA7, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer17create_memory_mapEjy.cold.1, symObjAddr: 0xA54, symBinAddr: 0x2D268, symSize: 0x28 } + - { offsetInCU: 0x2132, offset: 0xBFD7B, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferC1Ejy, symObjAddr: 0x6C8, symBinAddr: 0x26E0C, symSize: 0x4 } + - { offsetInCU: 0x217C, offset: 0xBFDC5, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferC1Ejy, symObjAddr: 0x6C8, symBinAddr: 0x26E0C, symSize: 0x4 } + - { offsetInCU: 0x21CE, offset: 0xBFE17, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_bufferD1Ev, symObjAddr: 0x748, symBinAddr: 0x26E10, symSize: 0x4C } + - { offsetInCU: 0x240D, offset: 0xC0056, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer17alloc_write_chunkEj, symObjAddr: 0x794, symBinAddr: 0x26E5C, symSize: 0x124 } + - { offsetInCU: 0x267C, offset: 0xC02C5, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer18commit_write_chunkERKNS_24ring_buffer_write_handleE, symObjAddr: 0x8B8, symBinAddr: 0x26F80, symSize: 0x24 } + - { offsetInCU: 0x2710, offset: 0xC0359, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer10begin_readEv, symObjAddr: 0x8DC, symBinAddr: 0x26FA4, symSize: 0x10 } + - { offsetInCU: 0x2775, offset: 0xC03BE, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer4readEv, symObjAddr: 0x8EC, symBinAddr: 0x26FB4, symSize: 0xA4 } + - { offsetInCU: 0x286B, offset: 0xC04B4, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer8end_readEv, symObjAddr: 0x990, symBinAddr: 0x27058, symSize: 0xC4 } + - { offsetInCU: 0x2875, offset: 0xC04BE, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer4readEv.cold.1, symObjAddr: 0xA7C, symBinAddr: 0x2D290, symSize: 0x28 } + - { offsetInCU: 0x288C, offset: 0xC04D5, size: 0x8, addend: 0x0, symName: __ZN2bq11ring_buffer8end_readEv, symObjAddr: 0x990, symBinAddr: 0x27058, symSize: 0xC4 } ... diff --git a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/BqLog b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/BqLog index 7cb89e0..cdb3161 100755 Binary files a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/BqLog and b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/BqLog differ diff --git a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/array_def.h b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/array_def.h index 61fa7c0..22a1893 100644 --- a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/array_def.h +++ b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/array_def.h @@ -48,26 +48,20 @@ namespace bq { template BQ_ARRAY_ITER_CLS_NAME& operator=(const BQ_ARRAY_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); BQ_ARRAY_ITER_CLS_NAME& operator++(); BQ_ARRAY_ITER_CLS_NAME operator++(int32_t); @@ -133,11 +127,11 @@ namespace bq { const value_type& operator[](size_type idx) const; - template - bool operator==(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); - template - bool operator!=(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); BQ_ARRAY_CLS_NAME& operator=(const BQ_ARRAY_CLS_NAME& rhs); diff --git a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/array_impl.h b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/array_impl.h index 87b5746..d82f47f 100644 --- a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/array_impl.h +++ b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/array_impl.h @@ -50,60 +50,53 @@ namespace bq { return *this; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ == rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ == array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ != rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ != array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ < rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ < array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ <= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ <= array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ > rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ > array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ >= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ >= array2.data_; } - template - template - BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type BQ_ARRAY_ITER_CLS_NAME::operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not sub two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ - rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not sub two bq::array_iterator generated from different bq::array"); + return array1.data_ - array2.data_; } template @@ -315,26 +308,24 @@ namespace bq { return data_[idx]; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator==(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - if (size_ != rhs.size_) { + if (array1.size() != array2.size()) { return false; } - for (size_type i = 0; i < size_; ++i) { - if (this->operator[](i) != rhs[i]) { + for (typename BQ_ARRAY_CLS_NAME::size_type i = 0; i < array1.size(); ++i) { + if (array1[i] != array2[i]) { return false; } } return true; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator!=(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - return !operator==(rhs); + return !(array1 == array2); } template diff --git a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/hash_map_def.h b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/hash_map_def.h index 1d69fb4..27b1ab4 100644 --- a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/hash_map_def.h +++ b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/hash_map_def.h @@ -77,6 +77,7 @@ namespace bq { typedef const pair_type& const_pair_type_ref; private: + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; container_type_ptr parent_; size_type node_index_; size_type bucket_idx_; @@ -103,11 +104,10 @@ namespace bq { template BQ_HASH_MAP_ITER_CLS_NAME& operator=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); + template + friend bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); BQ_HASH_MAP_ITER_CLS_NAME& operator++(); @@ -181,7 +181,7 @@ namespace bq { // we need manually control the destructive behaviour of every node item. bq::array didn't meets our needs because it has its own destructive logic. value_node_buffer_head nodes_; - constexpr static size_type BQ_BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; size_type size_; size_type head_; size_type tail_; diff --git a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/hash_map_impl.h b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/hash_map_impl.h index 7d07675..3c0898d 100644 --- a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/hash_map_impl.h +++ b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/hash_map_impl.h @@ -34,31 +34,29 @@ namespace bq { return *this; } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - if (rhs.node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX - && node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (map1.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX + && map2.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) { return true; } - return (node_index_ == rhs.node_index_) - && (parent_ == rhs.parent_) - && (bucket_idx_ == rhs.bucket_idx_); + return (map1.node_index_ == map2.node_index_) + && (map1.parent_ == map2.parent_) + && (map1.bucket_idx_ == map2.bucket_idx_); } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - return !(*this == rhs); + return !(map1 == map2); } template BQ_HASH_MAP_INLINE BQ_HASH_MAP_ITER_CLS_NAME& BQ_HASH_MAP_ITER_CLS_NAME::operator++() { node_index_ = parent_->get_next_node_index(node_index_); - bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; + bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; return *this; } @@ -105,9 +103,9 @@ namespace bq { BQ_HASH_MAP_INLINE BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_CLS_NAME(size_type init_bucket_size /* = 0 */) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(init_bucket_size); expand_nodes(buckets_size()); } @@ -124,9 +122,9 @@ namespace bq { , nodes_(decltype(nodes_)()) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(rhs.buckets_size()); expand_nodes(rhs.nodes_size()); for (BQ_HASH_MAP_CLS_NAME::const_iterator iter = rhs.begin(); iter != rhs.end(); ++iter) { @@ -147,9 +145,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -250,9 +248,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -272,12 +270,12 @@ namespace bq { auto& cur_node = nodes_[where_it.node_index_]; size_type prev_index = cur_node.prev; size_type next_index = cur_node.next; - if (prev_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[prev_index].next = cur_node.next; } else { head_ = cur_node.next; } - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[next_index].prev = cur_node.prev; } else { tail_ = cur_node.prev; @@ -286,11 +284,11 @@ namespace bq { // buckets size_type bucket_index = where_it.bucket_idx_; if (where_it.node_index_ == buckets_[bucket_index]) { - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX + if (next_index != BQ_HASH_MAP_INVALID_INDEX && nodes_[next_index].bucket_idx == bucket_index) { buckets_[bucket_index] = next_index; } else { - buckets_[bucket_index] = BQ_BQ_HASH_MAP_INVALID_INDEX; + buckets_[bucket_index] = BQ_HASH_MAP_INVALID_INDEX; } } @@ -316,7 +314,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::begin() { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -325,7 +323,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::begin() const { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return const_iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -334,19 +332,19 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::end() { - return iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::end() const { - return const_iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return const_iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_CLS_NAME::iterator_legal_check(const const_iterator& iter) const { - if (iter.node_index_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (iter.node_index_ == BQ_HASH_MAP_INVALID_INDEX) { return false; } if (iter.parent_ != this) { @@ -385,16 +383,16 @@ namespace bq { if (nodes_size() > 0) { free_ = 0; for (typename decltype(nodes_)::size_type i = 0; i < nodes_.size(); ++i) { - nodes_[i].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[i].prev = BQ_HASH_MAP_INVALID_INDEX; nodes_[i].next = static_cast(i) + 1; } - nodes_[nodes_.size() - 1].next = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[nodes_.size() - 1].next = BQ_HASH_MAP_INVALID_INDEX; } else { - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } size_ = 0; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -414,9 +412,9 @@ namespace bq { nodes_.size_ = 0; } size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -474,8 +472,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_prev_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].prev; } @@ -483,8 +481,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_next_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].next; } @@ -508,7 +506,7 @@ namespace bq { size_type cnt = 0; #endif size_type index = head_; - while (index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (index != BQ_HASH_MAP_INVALID_INDEX) { #ifndef NDEBUG cnt++; #endif @@ -519,7 +517,7 @@ namespace bq { size_type bucket_idx = get_bucket_index_by_key(cur_node.entry.key()); cur_node.bucket_idx = bucket_idx; size_type& bucket_value_ref = buckets_[bucket_idx]; - if (bucket_value_ref == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (bucket_value_ref == BQ_HASH_MAP_INVALID_INDEX) { bucket_value_ref = cur_index; } else if (cur_node.prev != bucket_value_ref) { size_type old_prev = cur_node.prev; @@ -528,34 +526,34 @@ namespace bq { size_type new_prev = bucket_value_ref; size_type new_next = nodes_[new_prev].next; - if (old_prev != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_prev != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_prev].next = old_next; } - if (old_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_next].prev = old_prev; } cur_node.prev = new_prev; cur_node.next = new_next; nodes_[new_prev].next = cur_index; - if (new_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (new_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[new_next].prev = cur_index; } if (tail_ == cur_index) { tail_ = old_prev; } if (cur_node.prev == cur_node.next) { - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; } } } #ifndef NDEBUG assert(buckets_size() == capacity); assert(cnt == this->size()); - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[head_].prev == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[head_].prev == BQ_HASH_MAP_INVALID_INDEX); } - if (tail_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[tail_].next == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (tail_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[tail_].next == BQ_HASH_MAP_INVALID_INDEX); } #endif } @@ -577,7 +575,7 @@ namespace bq { new_data[i].next = nodes_[i].next; } for (size_type i = new_space; i > old_space; --i) { - new_data[i - 1].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + new_data[i - 1].prev = BQ_HASH_MAP_INVALID_INDEX; new_data[i - 1].next = free_; free_ = i - 1; } @@ -596,15 +594,15 @@ namespace bq { template BQ_HASH_MAP_INLINE BQ_HASH_MAP_KV_CLS_NAME::size_type, typename BQ_HASH_MAP_CLS_NAME::size_type> BQ_HASH_MAP_CLS_NAME::find_index_and_bucket_idx_by_key(const_key_type_ref key) const { - size_type index = BQ_BQ_HASH_MAP_INVALID_INDEX; - size_type bucket_idx = BQ_BQ_HASH_MAP_INVALID_INDEX; + size_type index = BQ_HASH_MAP_INVALID_INDEX; + size_type bucket_idx = BQ_HASH_MAP_INVALID_INDEX; if (buckets_size() > 0) { bucket_idx = get_bucket_index_by_key(key); size_type valid_index = buckets_[bucket_idx]; - while (valid_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (valid_index != BQ_HASH_MAP_INVALID_INDEX) { auto& node = nodes_[valid_index]; if (node.bucket_idx != bucket_idx) { - valid_index = BQ_BQ_HASH_MAP_INVALID_INDEX; + valid_index = BQ_HASH_MAP_INVALID_INDEX; break; } if (node.entry.key() == key) { @@ -626,16 +624,16 @@ namespace bq { } // This must be called after expand_buckets because it will reform the buckets and nodes. auto node_bucket_indices_pair = find_index_and_bucket_idx_by_key(key); - assert(node_bucket_indices_pair.key() == BQ_BQ_HASH_MAP_INVALID_INDEX && "key already exist"); + assert(node_bucket_indices_pair.key() == BQ_HASH_MAP_INVALID_INDEX && "key already exist"); auto bucket_idx = node_bucket_indices_pair.value(); - if (free_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (free_ == BQ_HASH_MAP_INVALID_INDEX) { expand_nodes(nodes_size() + 1); } size_type& target_bucket_value = buckets_[bucket_idx]; size_type next_node_index = target_bucket_value; - size_type prev_node_index = (target_bucket_value == BQ_BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; - assert(free_ != BQ_BQ_HASH_MAP_INVALID_INDEX); + size_type prev_node_index = (target_bucket_value == BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; + assert(free_ != BQ_HASH_MAP_INVALID_INDEX); size_type new_index = free_; free_ = nodes_[new_index].next; @@ -644,13 +642,13 @@ namespace bq { new_node.next = next_node_index; new_node.prev = prev_node_index; new_node.bucket_idx = bucket_idx; - if (prev_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& prev_node = nodes_[prev_node_index]; prev_node.next = new_index; } else { head_ = new_index; } - if (next_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& next_node = nodes_[next_node_index]; next_node.prev = new_index; } else { diff --git a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/string.h b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/string.h index 5161f36..2ee5d83 100644 --- a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/string.h +++ b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/string.h @@ -121,7 +121,7 @@ namespace bq { string_base(string_base&& rhs) noexcept; string_base(const char_type* str); - + string_base(const char_type* str, size_t char_count); template ::value || is_std_string_view_compatible::value) && !bq::is_same>::value, void>> diff --git a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/string_impl.h b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/string_impl.h index ed68757..43e6192 100644 --- a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/string_impl.h +++ b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_common/types/string_impl.h @@ -158,7 +158,6 @@ namespace bq { insert_batch(begin(), const_iterator(str, nullptr), char_count); } - template template inline bq::string_base::string_base(const S& rhs) diff --git a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_log/bq_log.h b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_log/bq_log.h index 503d237..df6db44 100644 --- a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_log/bq_log.h +++ b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_log/bq_log.h @@ -117,27 +117,45 @@ namespace bq { /// static void unregister_console_callback(bq::type_func_ptr_console_callback callback); + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + /// + static void set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + static bool fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback); + /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer. /// /// c style char*(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> console(bq::log_level level, const STR& str); /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer /// /// std::string or bq::string(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> console(bq::log_level level, const STR& str); public: /// diff --git a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_log/misc/bq_log_api.h b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_log/misc/bq_log_api.h index 9d8e276..21266e9 100644 --- a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_log/misc/bq_log_api.h +++ b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_log/misc/bq_log_api.h @@ -198,14 +198,31 @@ namespace bq { /// /// /// - BQ_API void __register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); /// /// Unregister a console callback /// /// /// - BQ_API void __unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + + /// + /// set console appender buffer enable or not + /// + /// + /// + BQ_API void __api_set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// + /// path through parameter that will pass to on_console_callback + /// True if the console appender buffer is not empty, otherwise False is returned. + BQ_API bool __api_fetch_and_remove_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback on_console_callback, const void* pass_through_param); /// /// The snapshot feature is disabled by default, as it consumes some performance overhead. diff --git a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_log/misc/bq_log_def.h b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_log/misc/bq_log_def.h index 3c14649..591dee6 100644 --- a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_log/misc/bq_log_def.h +++ b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_log/misc/bq_log_def.h @@ -166,6 +166,14 @@ namespace bq { failed_io_error }; + /// + /// `content` is a C-style string and end with '\0'; + /// typedef void(BQ_STDCALL* type_func_ptr_console_callback)(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + /// + /// `content` is a C-style string and end with '\0'; + /// + typedef void(BQ_STDCALL* type_func_ptr_console_buffer_fetch_callback)(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + } diff --git a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_log/misc/bq_log_impl.h b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_log/misc/bq_log_impl.h index 8ae928d..168ee72 100644 --- a/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_log/misc/bq_log_impl.h +++ b/dist/dynamic_lib/ios/RelWithDebInfo/BqLog.framework/Headers/bq_log/misc/bq_log_impl.h @@ -155,22 +155,38 @@ namespace bq { inline void log::register_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__register_console_callbacks(callback); + bq::api::__api_register_console_callbacks(callback); } inline void log::unregister_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__unregister_console_callbacks(callback); + bq::api::__api_unregister_console_callbacks(callback); + } + + inline void log::set_console_buffer_enable(bool enable) + { + bq::api::__api_set_console_buffer_enable(enable); + } + + inline void BQ_STDCALL fetch_and_remove_console_buffer_callback_wrapper(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + bq::type_func_ptr_console_callback real_callback = (bq::type_func_ptr_console_callback)pass_through_param; + real_callback(log_id, category_idx, log_level, content, length); + } + + inline bool log::fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback) + { + return bq::api::__api_fetch_and_remove_console_buffer(fetch_and_remove_console_buffer_callback_wrapper, (const void*)on_console_callback); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str.c_str()); } diff --git a/dist/dynamic_lib/ios/Release/BqLog.framework/BqLog b/dist/dynamic_lib/ios/Release/BqLog.framework/BqLog index e222c35..a04037c 100755 Binary files a/dist/dynamic_lib/ios/Release/BqLog.framework/BqLog and b/dist/dynamic_lib/ios/Release/BqLog.framework/BqLog differ diff --git a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/array_def.h b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/array_def.h index 61fa7c0..22a1893 100644 --- a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/array_def.h +++ b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/array_def.h @@ -48,26 +48,20 @@ namespace bq { template BQ_ARRAY_ITER_CLS_NAME& operator=(const BQ_ARRAY_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); BQ_ARRAY_ITER_CLS_NAME& operator++(); BQ_ARRAY_ITER_CLS_NAME operator++(int32_t); @@ -133,11 +127,11 @@ namespace bq { const value_type& operator[](size_type idx) const; - template - bool operator==(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); - template - bool operator!=(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); BQ_ARRAY_CLS_NAME& operator=(const BQ_ARRAY_CLS_NAME& rhs); diff --git a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/array_impl.h b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/array_impl.h index 87b5746..d82f47f 100644 --- a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/array_impl.h +++ b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/array_impl.h @@ -50,60 +50,53 @@ namespace bq { return *this; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ == rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ == array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ != rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ != array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ < rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ < array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ <= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ <= array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ > rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ > array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ >= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ >= array2.data_; } - template - template - BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type BQ_ARRAY_ITER_CLS_NAME::operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not sub two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ - rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not sub two bq::array_iterator generated from different bq::array"); + return array1.data_ - array2.data_; } template @@ -315,26 +308,24 @@ namespace bq { return data_[idx]; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator==(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - if (size_ != rhs.size_) { + if (array1.size() != array2.size()) { return false; } - for (size_type i = 0; i < size_; ++i) { - if (this->operator[](i) != rhs[i]) { + for (typename BQ_ARRAY_CLS_NAME::size_type i = 0; i < array1.size(); ++i) { + if (array1[i] != array2[i]) { return false; } } return true; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator!=(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - return !operator==(rhs); + return !(array1 == array2); } template diff --git a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/hash_map_def.h b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/hash_map_def.h index 1d69fb4..27b1ab4 100644 --- a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/hash_map_def.h +++ b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/hash_map_def.h @@ -77,6 +77,7 @@ namespace bq { typedef const pair_type& const_pair_type_ref; private: + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; container_type_ptr parent_; size_type node_index_; size_type bucket_idx_; @@ -103,11 +104,10 @@ namespace bq { template BQ_HASH_MAP_ITER_CLS_NAME& operator=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); + template + friend bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); BQ_HASH_MAP_ITER_CLS_NAME& operator++(); @@ -181,7 +181,7 @@ namespace bq { // we need manually control the destructive behaviour of every node item. bq::array didn't meets our needs because it has its own destructive logic. value_node_buffer_head nodes_; - constexpr static size_type BQ_BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; size_type size_; size_type head_; size_type tail_; diff --git a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/hash_map_impl.h b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/hash_map_impl.h index 7d07675..3c0898d 100644 --- a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/hash_map_impl.h +++ b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/hash_map_impl.h @@ -34,31 +34,29 @@ namespace bq { return *this; } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - if (rhs.node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX - && node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (map1.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX + && map2.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) { return true; } - return (node_index_ == rhs.node_index_) - && (parent_ == rhs.parent_) - && (bucket_idx_ == rhs.bucket_idx_); + return (map1.node_index_ == map2.node_index_) + && (map1.parent_ == map2.parent_) + && (map1.bucket_idx_ == map2.bucket_idx_); } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - return !(*this == rhs); + return !(map1 == map2); } template BQ_HASH_MAP_INLINE BQ_HASH_MAP_ITER_CLS_NAME& BQ_HASH_MAP_ITER_CLS_NAME::operator++() { node_index_ = parent_->get_next_node_index(node_index_); - bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; + bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; return *this; } @@ -105,9 +103,9 @@ namespace bq { BQ_HASH_MAP_INLINE BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_CLS_NAME(size_type init_bucket_size /* = 0 */) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(init_bucket_size); expand_nodes(buckets_size()); } @@ -124,9 +122,9 @@ namespace bq { , nodes_(decltype(nodes_)()) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(rhs.buckets_size()); expand_nodes(rhs.nodes_size()); for (BQ_HASH_MAP_CLS_NAME::const_iterator iter = rhs.begin(); iter != rhs.end(); ++iter) { @@ -147,9 +145,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -250,9 +248,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -272,12 +270,12 @@ namespace bq { auto& cur_node = nodes_[where_it.node_index_]; size_type prev_index = cur_node.prev; size_type next_index = cur_node.next; - if (prev_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[prev_index].next = cur_node.next; } else { head_ = cur_node.next; } - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[next_index].prev = cur_node.prev; } else { tail_ = cur_node.prev; @@ -286,11 +284,11 @@ namespace bq { // buckets size_type bucket_index = where_it.bucket_idx_; if (where_it.node_index_ == buckets_[bucket_index]) { - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX + if (next_index != BQ_HASH_MAP_INVALID_INDEX && nodes_[next_index].bucket_idx == bucket_index) { buckets_[bucket_index] = next_index; } else { - buckets_[bucket_index] = BQ_BQ_HASH_MAP_INVALID_INDEX; + buckets_[bucket_index] = BQ_HASH_MAP_INVALID_INDEX; } } @@ -316,7 +314,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::begin() { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -325,7 +323,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::begin() const { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return const_iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -334,19 +332,19 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::end() { - return iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::end() const { - return const_iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return const_iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_CLS_NAME::iterator_legal_check(const const_iterator& iter) const { - if (iter.node_index_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (iter.node_index_ == BQ_HASH_MAP_INVALID_INDEX) { return false; } if (iter.parent_ != this) { @@ -385,16 +383,16 @@ namespace bq { if (nodes_size() > 0) { free_ = 0; for (typename decltype(nodes_)::size_type i = 0; i < nodes_.size(); ++i) { - nodes_[i].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[i].prev = BQ_HASH_MAP_INVALID_INDEX; nodes_[i].next = static_cast(i) + 1; } - nodes_[nodes_.size() - 1].next = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[nodes_.size() - 1].next = BQ_HASH_MAP_INVALID_INDEX; } else { - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } size_ = 0; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -414,9 +412,9 @@ namespace bq { nodes_.size_ = 0; } size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -474,8 +472,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_prev_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].prev; } @@ -483,8 +481,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_next_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].next; } @@ -508,7 +506,7 @@ namespace bq { size_type cnt = 0; #endif size_type index = head_; - while (index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (index != BQ_HASH_MAP_INVALID_INDEX) { #ifndef NDEBUG cnt++; #endif @@ -519,7 +517,7 @@ namespace bq { size_type bucket_idx = get_bucket_index_by_key(cur_node.entry.key()); cur_node.bucket_idx = bucket_idx; size_type& bucket_value_ref = buckets_[bucket_idx]; - if (bucket_value_ref == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (bucket_value_ref == BQ_HASH_MAP_INVALID_INDEX) { bucket_value_ref = cur_index; } else if (cur_node.prev != bucket_value_ref) { size_type old_prev = cur_node.prev; @@ -528,34 +526,34 @@ namespace bq { size_type new_prev = bucket_value_ref; size_type new_next = nodes_[new_prev].next; - if (old_prev != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_prev != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_prev].next = old_next; } - if (old_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_next].prev = old_prev; } cur_node.prev = new_prev; cur_node.next = new_next; nodes_[new_prev].next = cur_index; - if (new_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (new_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[new_next].prev = cur_index; } if (tail_ == cur_index) { tail_ = old_prev; } if (cur_node.prev == cur_node.next) { - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; } } } #ifndef NDEBUG assert(buckets_size() == capacity); assert(cnt == this->size()); - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[head_].prev == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[head_].prev == BQ_HASH_MAP_INVALID_INDEX); } - if (tail_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[tail_].next == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (tail_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[tail_].next == BQ_HASH_MAP_INVALID_INDEX); } #endif } @@ -577,7 +575,7 @@ namespace bq { new_data[i].next = nodes_[i].next; } for (size_type i = new_space; i > old_space; --i) { - new_data[i - 1].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + new_data[i - 1].prev = BQ_HASH_MAP_INVALID_INDEX; new_data[i - 1].next = free_; free_ = i - 1; } @@ -596,15 +594,15 @@ namespace bq { template BQ_HASH_MAP_INLINE BQ_HASH_MAP_KV_CLS_NAME::size_type, typename BQ_HASH_MAP_CLS_NAME::size_type> BQ_HASH_MAP_CLS_NAME::find_index_and_bucket_idx_by_key(const_key_type_ref key) const { - size_type index = BQ_BQ_HASH_MAP_INVALID_INDEX; - size_type bucket_idx = BQ_BQ_HASH_MAP_INVALID_INDEX; + size_type index = BQ_HASH_MAP_INVALID_INDEX; + size_type bucket_idx = BQ_HASH_MAP_INVALID_INDEX; if (buckets_size() > 0) { bucket_idx = get_bucket_index_by_key(key); size_type valid_index = buckets_[bucket_idx]; - while (valid_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (valid_index != BQ_HASH_MAP_INVALID_INDEX) { auto& node = nodes_[valid_index]; if (node.bucket_idx != bucket_idx) { - valid_index = BQ_BQ_HASH_MAP_INVALID_INDEX; + valid_index = BQ_HASH_MAP_INVALID_INDEX; break; } if (node.entry.key() == key) { @@ -626,16 +624,16 @@ namespace bq { } // This must be called after expand_buckets because it will reform the buckets and nodes. auto node_bucket_indices_pair = find_index_and_bucket_idx_by_key(key); - assert(node_bucket_indices_pair.key() == BQ_BQ_HASH_MAP_INVALID_INDEX && "key already exist"); + assert(node_bucket_indices_pair.key() == BQ_HASH_MAP_INVALID_INDEX && "key already exist"); auto bucket_idx = node_bucket_indices_pair.value(); - if (free_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (free_ == BQ_HASH_MAP_INVALID_INDEX) { expand_nodes(nodes_size() + 1); } size_type& target_bucket_value = buckets_[bucket_idx]; size_type next_node_index = target_bucket_value; - size_type prev_node_index = (target_bucket_value == BQ_BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; - assert(free_ != BQ_BQ_HASH_MAP_INVALID_INDEX); + size_type prev_node_index = (target_bucket_value == BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; + assert(free_ != BQ_HASH_MAP_INVALID_INDEX); size_type new_index = free_; free_ = nodes_[new_index].next; @@ -644,13 +642,13 @@ namespace bq { new_node.next = next_node_index; new_node.prev = prev_node_index; new_node.bucket_idx = bucket_idx; - if (prev_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& prev_node = nodes_[prev_node_index]; prev_node.next = new_index; } else { head_ = new_index; } - if (next_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& next_node = nodes_[next_node_index]; next_node.prev = new_index; } else { diff --git a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/string.h b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/string.h index 5161f36..2ee5d83 100644 --- a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/string.h +++ b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/string.h @@ -121,7 +121,7 @@ namespace bq { string_base(string_base&& rhs) noexcept; string_base(const char_type* str); - + string_base(const char_type* str, size_t char_count); template ::value || is_std_string_view_compatible::value) && !bq::is_same>::value, void>> diff --git a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/string_impl.h b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/string_impl.h index ed68757..43e6192 100644 --- a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/string_impl.h +++ b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_common/types/string_impl.h @@ -158,7 +158,6 @@ namespace bq { insert_batch(begin(), const_iterator(str, nullptr), char_count); } - template template inline bq::string_base::string_base(const S& rhs) diff --git a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_log/bq_log.h b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_log/bq_log.h index 503d237..df6db44 100644 --- a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_log/bq_log.h +++ b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_log/bq_log.h @@ -117,27 +117,45 @@ namespace bq { /// static void unregister_console_callback(bq::type_func_ptr_console_callback callback); + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + /// + static void set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + static bool fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback); + /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer. /// /// c style char*(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> console(bq::log_level level, const STR& str); /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer /// /// std::string or bq::string(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> console(bq::log_level level, const STR& str); public: /// diff --git a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_log/misc/bq_log_api.h b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_log/misc/bq_log_api.h index 9d8e276..21266e9 100644 --- a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_log/misc/bq_log_api.h +++ b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_log/misc/bq_log_api.h @@ -198,14 +198,31 @@ namespace bq { /// /// /// - BQ_API void __register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); /// /// Unregister a console callback /// /// /// - BQ_API void __unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + + /// + /// set console appender buffer enable or not + /// + /// + /// + BQ_API void __api_set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// + /// path through parameter that will pass to on_console_callback + /// True if the console appender buffer is not empty, otherwise False is returned. + BQ_API bool __api_fetch_and_remove_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback on_console_callback, const void* pass_through_param); /// /// The snapshot feature is disabled by default, as it consumes some performance overhead. diff --git a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_log/misc/bq_log_def.h b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_log/misc/bq_log_def.h index 3c14649..591dee6 100644 --- a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_log/misc/bq_log_def.h +++ b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_log/misc/bq_log_def.h @@ -166,6 +166,14 @@ namespace bq { failed_io_error }; + /// + /// `content` is a C-style string and end with '\0'; + /// typedef void(BQ_STDCALL* type_func_ptr_console_callback)(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + /// + /// `content` is a C-style string and end with '\0'; + /// + typedef void(BQ_STDCALL* type_func_ptr_console_buffer_fetch_callback)(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + } diff --git a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_log/misc/bq_log_impl.h b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_log/misc/bq_log_impl.h index 8ae928d..168ee72 100644 --- a/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_log/misc/bq_log_impl.h +++ b/dist/dynamic_lib/ios/Release/BqLog.framework/Headers/bq_log/misc/bq_log_impl.h @@ -155,22 +155,38 @@ namespace bq { inline void log::register_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__register_console_callbacks(callback); + bq::api::__api_register_console_callbacks(callback); } inline void log::unregister_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__unregister_console_callbacks(callback); + bq::api::__api_unregister_console_callbacks(callback); + } + + inline void log::set_console_buffer_enable(bool enable) + { + bq::api::__api_set_console_buffer_enable(enable); + } + + inline void BQ_STDCALL fetch_and_remove_console_buffer_callback_wrapper(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + bq::type_func_ptr_console_callback real_callback = (bq::type_func_ptr_console_callback)pass_through_param; + real_callback(log_id, category_idx, log_level, content, length); + } + + inline bool log::fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback) + { + return bq::api::__api_fetch_and_remove_console_buffer(fetch_and_remove_console_buffer_callback_wrapper, (const void*)on_console_callback); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str.c_str()); } diff --git a/dist/dynamic_lib/linux/Debug/libBqLog.so b/dist/dynamic_lib/linux/Debug/libBqLog.so index 558b22d..a3e9f70 100644 Binary files a/dist/dynamic_lib/linux/Debug/libBqLog.so and b/dist/dynamic_lib/linux/Debug/libBqLog.so differ diff --git a/dist/dynamic_lib/linux/MinSizeRel/libBqLog.so b/dist/dynamic_lib/linux/MinSizeRel/libBqLog.so index 7c4d657..1e10103 100644 Binary files a/dist/dynamic_lib/linux/MinSizeRel/libBqLog.so and b/dist/dynamic_lib/linux/MinSizeRel/libBqLog.so differ diff --git a/dist/dynamic_lib/linux/RelWithDebInfo/libBqLog.so b/dist/dynamic_lib/linux/RelWithDebInfo/libBqLog.so index 27fece8..82388d0 100644 Binary files a/dist/dynamic_lib/linux/RelWithDebInfo/libBqLog.so and b/dist/dynamic_lib/linux/RelWithDebInfo/libBqLog.so differ diff --git a/dist/dynamic_lib/linux/Release/libBqLog.so b/dist/dynamic_lib/linux/Release/libBqLog.so index d6eb22e..0389d48 100644 Binary files a/dist/dynamic_lib/linux/Release/libBqLog.so and b/dist/dynamic_lib/linux/Release/libBqLog.so differ diff --git a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/BqLog b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/BqLog index 1321694..f6be555 100755 Binary files a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/BqLog and b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/BqLog differ diff --git a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h index 61fa7c0..22a1893 100644 --- a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h +++ b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h @@ -48,26 +48,20 @@ namespace bq { template BQ_ARRAY_ITER_CLS_NAME& operator=(const BQ_ARRAY_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); BQ_ARRAY_ITER_CLS_NAME& operator++(); BQ_ARRAY_ITER_CLS_NAME operator++(int32_t); @@ -133,11 +127,11 @@ namespace bq { const value_type& operator[](size_type idx) const; - template - bool operator==(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); - template - bool operator!=(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); BQ_ARRAY_CLS_NAME& operator=(const BQ_ARRAY_CLS_NAME& rhs); diff --git a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h index 87b5746..d82f47f 100644 --- a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h +++ b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h @@ -50,60 +50,53 @@ namespace bq { return *this; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ == rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ == array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ != rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ != array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ < rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ < array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ <= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ <= array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ > rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ > array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ >= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ >= array2.data_; } - template - template - BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type BQ_ARRAY_ITER_CLS_NAME::operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not sub two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ - rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not sub two bq::array_iterator generated from different bq::array"); + return array1.data_ - array2.data_; } template @@ -315,26 +308,24 @@ namespace bq { return data_[idx]; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator==(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - if (size_ != rhs.size_) { + if (array1.size() != array2.size()) { return false; } - for (size_type i = 0; i < size_; ++i) { - if (this->operator[](i) != rhs[i]) { + for (typename BQ_ARRAY_CLS_NAME::size_type i = 0; i < array1.size(); ++i) { + if (array1[i] != array2[i]) { return false; } } return true; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator!=(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - return !operator==(rhs); + return !(array1 == array2); } template diff --git a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h index 1d69fb4..27b1ab4 100644 --- a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h +++ b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h @@ -77,6 +77,7 @@ namespace bq { typedef const pair_type& const_pair_type_ref; private: + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; container_type_ptr parent_; size_type node_index_; size_type bucket_idx_; @@ -103,11 +104,10 @@ namespace bq { template BQ_HASH_MAP_ITER_CLS_NAME& operator=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); + template + friend bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); BQ_HASH_MAP_ITER_CLS_NAME& operator++(); @@ -181,7 +181,7 @@ namespace bq { // we need manually control the destructive behaviour of every node item. bq::array didn't meets our needs because it has its own destructive logic. value_node_buffer_head nodes_; - constexpr static size_type BQ_BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; size_type size_; size_type head_; size_type tail_; diff --git a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h index 7d07675..3c0898d 100644 --- a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h +++ b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h @@ -34,31 +34,29 @@ namespace bq { return *this; } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - if (rhs.node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX - && node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (map1.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX + && map2.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) { return true; } - return (node_index_ == rhs.node_index_) - && (parent_ == rhs.parent_) - && (bucket_idx_ == rhs.bucket_idx_); + return (map1.node_index_ == map2.node_index_) + && (map1.parent_ == map2.parent_) + && (map1.bucket_idx_ == map2.bucket_idx_); } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - return !(*this == rhs); + return !(map1 == map2); } template BQ_HASH_MAP_INLINE BQ_HASH_MAP_ITER_CLS_NAME& BQ_HASH_MAP_ITER_CLS_NAME::operator++() { node_index_ = parent_->get_next_node_index(node_index_); - bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; + bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; return *this; } @@ -105,9 +103,9 @@ namespace bq { BQ_HASH_MAP_INLINE BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_CLS_NAME(size_type init_bucket_size /* = 0 */) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(init_bucket_size); expand_nodes(buckets_size()); } @@ -124,9 +122,9 @@ namespace bq { , nodes_(decltype(nodes_)()) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(rhs.buckets_size()); expand_nodes(rhs.nodes_size()); for (BQ_HASH_MAP_CLS_NAME::const_iterator iter = rhs.begin(); iter != rhs.end(); ++iter) { @@ -147,9 +145,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -250,9 +248,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -272,12 +270,12 @@ namespace bq { auto& cur_node = nodes_[where_it.node_index_]; size_type prev_index = cur_node.prev; size_type next_index = cur_node.next; - if (prev_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[prev_index].next = cur_node.next; } else { head_ = cur_node.next; } - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[next_index].prev = cur_node.prev; } else { tail_ = cur_node.prev; @@ -286,11 +284,11 @@ namespace bq { // buckets size_type bucket_index = where_it.bucket_idx_; if (where_it.node_index_ == buckets_[bucket_index]) { - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX + if (next_index != BQ_HASH_MAP_INVALID_INDEX && nodes_[next_index].bucket_idx == bucket_index) { buckets_[bucket_index] = next_index; } else { - buckets_[bucket_index] = BQ_BQ_HASH_MAP_INVALID_INDEX; + buckets_[bucket_index] = BQ_HASH_MAP_INVALID_INDEX; } } @@ -316,7 +314,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::begin() { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -325,7 +323,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::begin() const { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return const_iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -334,19 +332,19 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::end() { - return iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::end() const { - return const_iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return const_iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_CLS_NAME::iterator_legal_check(const const_iterator& iter) const { - if (iter.node_index_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (iter.node_index_ == BQ_HASH_MAP_INVALID_INDEX) { return false; } if (iter.parent_ != this) { @@ -385,16 +383,16 @@ namespace bq { if (nodes_size() > 0) { free_ = 0; for (typename decltype(nodes_)::size_type i = 0; i < nodes_.size(); ++i) { - nodes_[i].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[i].prev = BQ_HASH_MAP_INVALID_INDEX; nodes_[i].next = static_cast(i) + 1; } - nodes_[nodes_.size() - 1].next = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[nodes_.size() - 1].next = BQ_HASH_MAP_INVALID_INDEX; } else { - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } size_ = 0; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -414,9 +412,9 @@ namespace bq { nodes_.size_ = 0; } size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -474,8 +472,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_prev_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].prev; } @@ -483,8 +481,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_next_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].next; } @@ -508,7 +506,7 @@ namespace bq { size_type cnt = 0; #endif size_type index = head_; - while (index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (index != BQ_HASH_MAP_INVALID_INDEX) { #ifndef NDEBUG cnt++; #endif @@ -519,7 +517,7 @@ namespace bq { size_type bucket_idx = get_bucket_index_by_key(cur_node.entry.key()); cur_node.bucket_idx = bucket_idx; size_type& bucket_value_ref = buckets_[bucket_idx]; - if (bucket_value_ref == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (bucket_value_ref == BQ_HASH_MAP_INVALID_INDEX) { bucket_value_ref = cur_index; } else if (cur_node.prev != bucket_value_ref) { size_type old_prev = cur_node.prev; @@ -528,34 +526,34 @@ namespace bq { size_type new_prev = bucket_value_ref; size_type new_next = nodes_[new_prev].next; - if (old_prev != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_prev != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_prev].next = old_next; } - if (old_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_next].prev = old_prev; } cur_node.prev = new_prev; cur_node.next = new_next; nodes_[new_prev].next = cur_index; - if (new_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (new_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[new_next].prev = cur_index; } if (tail_ == cur_index) { tail_ = old_prev; } if (cur_node.prev == cur_node.next) { - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; } } } #ifndef NDEBUG assert(buckets_size() == capacity); assert(cnt == this->size()); - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[head_].prev == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[head_].prev == BQ_HASH_MAP_INVALID_INDEX); } - if (tail_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[tail_].next == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (tail_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[tail_].next == BQ_HASH_MAP_INVALID_INDEX); } #endif } @@ -577,7 +575,7 @@ namespace bq { new_data[i].next = nodes_[i].next; } for (size_type i = new_space; i > old_space; --i) { - new_data[i - 1].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + new_data[i - 1].prev = BQ_HASH_MAP_INVALID_INDEX; new_data[i - 1].next = free_; free_ = i - 1; } @@ -596,15 +594,15 @@ namespace bq { template BQ_HASH_MAP_INLINE BQ_HASH_MAP_KV_CLS_NAME::size_type, typename BQ_HASH_MAP_CLS_NAME::size_type> BQ_HASH_MAP_CLS_NAME::find_index_and_bucket_idx_by_key(const_key_type_ref key) const { - size_type index = BQ_BQ_HASH_MAP_INVALID_INDEX; - size_type bucket_idx = BQ_BQ_HASH_MAP_INVALID_INDEX; + size_type index = BQ_HASH_MAP_INVALID_INDEX; + size_type bucket_idx = BQ_HASH_MAP_INVALID_INDEX; if (buckets_size() > 0) { bucket_idx = get_bucket_index_by_key(key); size_type valid_index = buckets_[bucket_idx]; - while (valid_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (valid_index != BQ_HASH_MAP_INVALID_INDEX) { auto& node = nodes_[valid_index]; if (node.bucket_idx != bucket_idx) { - valid_index = BQ_BQ_HASH_MAP_INVALID_INDEX; + valid_index = BQ_HASH_MAP_INVALID_INDEX; break; } if (node.entry.key() == key) { @@ -626,16 +624,16 @@ namespace bq { } // This must be called after expand_buckets because it will reform the buckets and nodes. auto node_bucket_indices_pair = find_index_and_bucket_idx_by_key(key); - assert(node_bucket_indices_pair.key() == BQ_BQ_HASH_MAP_INVALID_INDEX && "key already exist"); + assert(node_bucket_indices_pair.key() == BQ_HASH_MAP_INVALID_INDEX && "key already exist"); auto bucket_idx = node_bucket_indices_pair.value(); - if (free_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (free_ == BQ_HASH_MAP_INVALID_INDEX) { expand_nodes(nodes_size() + 1); } size_type& target_bucket_value = buckets_[bucket_idx]; size_type next_node_index = target_bucket_value; - size_type prev_node_index = (target_bucket_value == BQ_BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; - assert(free_ != BQ_BQ_HASH_MAP_INVALID_INDEX); + size_type prev_node_index = (target_bucket_value == BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; + assert(free_ != BQ_HASH_MAP_INVALID_INDEX); size_type new_index = free_; free_ = nodes_[new_index].next; @@ -644,13 +642,13 @@ namespace bq { new_node.next = next_node_index; new_node.prev = prev_node_index; new_node.bucket_idx = bucket_idx; - if (prev_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& prev_node = nodes_[prev_node_index]; prev_node.next = new_index; } else { head_ = new_index; } - if (next_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& next_node = nodes_[next_node_index]; next_node.prev = new_index; } else { diff --git a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h index 5161f36..2ee5d83 100644 --- a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h +++ b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h @@ -121,7 +121,7 @@ namespace bq { string_base(string_base&& rhs) noexcept; string_base(const char_type* str); - + string_base(const char_type* str, size_t char_count); template ::value || is_std_string_view_compatible::value) && !bq::is_same>::value, void>> diff --git a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h index ed68757..43e6192 100644 --- a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h +++ b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h @@ -158,7 +158,6 @@ namespace bq { insert_batch(begin(), const_iterator(str, nullptr), char_count); } - template template inline bq::string_base::string_base(const S& rhs) diff --git a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h index 503d237..df6db44 100644 --- a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h +++ b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h @@ -117,27 +117,45 @@ namespace bq { /// static void unregister_console_callback(bq::type_func_ptr_console_callback callback); + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + /// + static void set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + static bool fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback); + /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer. /// /// c style char*(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> console(bq::log_level level, const STR& str); /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer /// /// std::string or bq::string(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> console(bq::log_level level, const STR& str); public: /// diff --git a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h index 9d8e276..21266e9 100644 --- a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h +++ b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h @@ -198,14 +198,31 @@ namespace bq { /// /// /// - BQ_API void __register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); /// /// Unregister a console callback /// /// /// - BQ_API void __unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + + /// + /// set console appender buffer enable or not + /// + /// + /// + BQ_API void __api_set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// + /// path through parameter that will pass to on_console_callback + /// True if the console appender buffer is not empty, otherwise False is returned. + BQ_API bool __api_fetch_and_remove_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback on_console_callback, const void* pass_through_param); /// /// The snapshot feature is disabled by default, as it consumes some performance overhead. diff --git a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h index 3c14649..591dee6 100644 --- a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h +++ b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h @@ -166,6 +166,14 @@ namespace bq { failed_io_error }; + /// + /// `content` is a C-style string and end with '\0'; + /// typedef void(BQ_STDCALL* type_func_ptr_console_callback)(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + /// + /// `content` is a C-style string and end with '\0'; + /// + typedef void(BQ_STDCALL* type_func_ptr_console_buffer_fetch_callback)(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + } diff --git a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h index 8ae928d..168ee72 100644 --- a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h +++ b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h @@ -155,22 +155,38 @@ namespace bq { inline void log::register_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__register_console_callbacks(callback); + bq::api::__api_register_console_callbacks(callback); } inline void log::unregister_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__unregister_console_callbacks(callback); + bq::api::__api_unregister_console_callbacks(callback); + } + + inline void log::set_console_buffer_enable(bool enable) + { + bq::api::__api_set_console_buffer_enable(enable); + } + + inline void BQ_STDCALL fetch_and_remove_console_buffer_callback_wrapper(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + bq::type_func_ptr_console_callback real_callback = (bq::type_func_ptr_console_callback)pass_through_param; + real_callback(log_id, category_idx, log_level, content, length); + } + + inline bool log::fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback) + { + return bq::api::__api_fetch_and_remove_console_buffer(fetch_and_remove_console_buffer_callback_wrapper, (const void*)on_console_callback); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str.c_str()); } diff --git a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources index 51074f0..49ab446 100644 --- a/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources +++ b/dist/dynamic_lib/mac/Debug/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources @@ -57,14 +57,14 @@ hash2 - /QzuVBc1sW385rw6zwz+FR1sgMXFA16qZ2udNj3Q1Qw= + NxeDAoFrBQuLDnL1TC4kNUgkbK38W6rtqaak5bJipqk= Headers/bq_common/types/array_impl.h hash2 - x2wMHsHC7UysADx6R9tZ+cShynTHYgNiaZoJc8nQNWI= + CUXJ7fgCvclaodHbm/p+BPus8pTi+epVHVK2XLnd38U= Headers/bq_common/types/basic_types.h @@ -85,14 +85,14 @@ hash2 - zt3vNEm99ehzfRlD0ZaNKkHYmo6mRWiJSGmQ4mLLwvw= + srQQWqHVmRuu4rV03Yxmfg+LzomlWNG2YLGNbyuVzhY= Headers/bq_common/types/hash_map_impl.h hash2 - z6x6dtjZWjHKJPdBcZOQAd4RlHrE5lclFS+TumdLOzs= + ZuntT6tkS2N2LP27YiciQ3Y7QKT9r+iu6k7wLB0ERac= Headers/bq_common/types/optional.h @@ -106,14 +106,14 @@ hash2 - kU4dsk3lOdzf3X9iTTMhykM8OiHBR1+0XunrAE6iy9w= + Ji1DDfG8qr4dZQ8iTN7BZKTymCtZrfOBAwGvHAWw8Qc= Headers/bq_common/types/string_impl.h hash2 - WuyX9aI+UOoSOIPzawF8TX0/NSsAwxoC2zrP8/NP1co= + Uv0hQ16v7jzj9CRqzgzJgNZIVcA7zUTvULyJ24gWJh4= Headers/bq_common/types/type_tools.h @@ -148,28 +148,28 @@ hash2 - ONj3oS3g793vMiqr4FlsNe4IPMCLv4XFfwnjnbdpUFA= + B+IhgWKtC91IrLCq72TVevlq36z/cdVfuRqD+mq/wL8= Headers/bq_log/misc/bq_log_api.h hash2 - MdncWEJytGhqCdIbPw1JzWWsb2312mZxntqgxNAdGLA= + WJyLCoLU0HcOL32CCDF21ZRy0899fWcrypj5fkWS3+g= Headers/bq_log/misc/bq_log_def.h hash2 - WNR5a+m+efx2hJPcXXTL/oAk/NmMlVLPNWYL6g2hSbg= + TSyrbQNsnFrzSOi5AyviokTasT7M/IrlgiYh1kwdwkI= Headers/bq_log/misc/bq_log_impl.h hash2 - erP8ajj0AZWUYD1XbAJ8CsnfA8ZL7NDMMJcKYHuLC6I= + +32c5+ajYkjFSjrJZPcjNCTvcMdXhW7OCQgr5zZpaIU= Headers/bq_log/misc/bq_log_wrapper_tools.h diff --git a/dist/dynamic_lib/mac/Debug/libBqLog.dylib b/dist/dynamic_lib/mac/Debug/libBqLog.dylib index 51a4212..ee7fc53 100755 Binary files a/dist/dynamic_lib/mac/Debug/libBqLog.dylib and b/dist/dynamic_lib/mac/Debug/libBqLog.dylib differ diff --git a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/BqLog b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/BqLog index d00f000..8da955c 100755 Binary files a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/BqLog and b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/BqLog differ diff --git a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h index 61fa7c0..22a1893 100644 --- a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h +++ b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h @@ -48,26 +48,20 @@ namespace bq { template BQ_ARRAY_ITER_CLS_NAME& operator=(const BQ_ARRAY_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); BQ_ARRAY_ITER_CLS_NAME& operator++(); BQ_ARRAY_ITER_CLS_NAME operator++(int32_t); @@ -133,11 +127,11 @@ namespace bq { const value_type& operator[](size_type idx) const; - template - bool operator==(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); - template - bool operator!=(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); BQ_ARRAY_CLS_NAME& operator=(const BQ_ARRAY_CLS_NAME& rhs); diff --git a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h index 87b5746..d82f47f 100644 --- a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h +++ b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h @@ -50,60 +50,53 @@ namespace bq { return *this; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ == rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ == array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ != rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ != array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ < rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ < array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ <= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ <= array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ > rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ > array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ >= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ >= array2.data_; } - template - template - BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type BQ_ARRAY_ITER_CLS_NAME::operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not sub two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ - rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not sub two bq::array_iterator generated from different bq::array"); + return array1.data_ - array2.data_; } template @@ -315,26 +308,24 @@ namespace bq { return data_[idx]; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator==(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - if (size_ != rhs.size_) { + if (array1.size() != array2.size()) { return false; } - for (size_type i = 0; i < size_; ++i) { - if (this->operator[](i) != rhs[i]) { + for (typename BQ_ARRAY_CLS_NAME::size_type i = 0; i < array1.size(); ++i) { + if (array1[i] != array2[i]) { return false; } } return true; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator!=(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - return !operator==(rhs); + return !(array1 == array2); } template diff --git a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h index 1d69fb4..27b1ab4 100644 --- a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h +++ b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h @@ -77,6 +77,7 @@ namespace bq { typedef const pair_type& const_pair_type_ref; private: + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; container_type_ptr parent_; size_type node_index_; size_type bucket_idx_; @@ -103,11 +104,10 @@ namespace bq { template BQ_HASH_MAP_ITER_CLS_NAME& operator=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); + template + friend bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); BQ_HASH_MAP_ITER_CLS_NAME& operator++(); @@ -181,7 +181,7 @@ namespace bq { // we need manually control the destructive behaviour of every node item. bq::array didn't meets our needs because it has its own destructive logic. value_node_buffer_head nodes_; - constexpr static size_type BQ_BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; size_type size_; size_type head_; size_type tail_; diff --git a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h index 7d07675..3c0898d 100644 --- a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h +++ b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h @@ -34,31 +34,29 @@ namespace bq { return *this; } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - if (rhs.node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX - && node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (map1.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX + && map2.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) { return true; } - return (node_index_ == rhs.node_index_) - && (parent_ == rhs.parent_) - && (bucket_idx_ == rhs.bucket_idx_); + return (map1.node_index_ == map2.node_index_) + && (map1.parent_ == map2.parent_) + && (map1.bucket_idx_ == map2.bucket_idx_); } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - return !(*this == rhs); + return !(map1 == map2); } template BQ_HASH_MAP_INLINE BQ_HASH_MAP_ITER_CLS_NAME& BQ_HASH_MAP_ITER_CLS_NAME::operator++() { node_index_ = parent_->get_next_node_index(node_index_); - bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; + bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; return *this; } @@ -105,9 +103,9 @@ namespace bq { BQ_HASH_MAP_INLINE BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_CLS_NAME(size_type init_bucket_size /* = 0 */) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(init_bucket_size); expand_nodes(buckets_size()); } @@ -124,9 +122,9 @@ namespace bq { , nodes_(decltype(nodes_)()) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(rhs.buckets_size()); expand_nodes(rhs.nodes_size()); for (BQ_HASH_MAP_CLS_NAME::const_iterator iter = rhs.begin(); iter != rhs.end(); ++iter) { @@ -147,9 +145,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -250,9 +248,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -272,12 +270,12 @@ namespace bq { auto& cur_node = nodes_[where_it.node_index_]; size_type prev_index = cur_node.prev; size_type next_index = cur_node.next; - if (prev_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[prev_index].next = cur_node.next; } else { head_ = cur_node.next; } - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[next_index].prev = cur_node.prev; } else { tail_ = cur_node.prev; @@ -286,11 +284,11 @@ namespace bq { // buckets size_type bucket_index = where_it.bucket_idx_; if (where_it.node_index_ == buckets_[bucket_index]) { - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX + if (next_index != BQ_HASH_MAP_INVALID_INDEX && nodes_[next_index].bucket_idx == bucket_index) { buckets_[bucket_index] = next_index; } else { - buckets_[bucket_index] = BQ_BQ_HASH_MAP_INVALID_INDEX; + buckets_[bucket_index] = BQ_HASH_MAP_INVALID_INDEX; } } @@ -316,7 +314,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::begin() { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -325,7 +323,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::begin() const { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return const_iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -334,19 +332,19 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::end() { - return iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::end() const { - return const_iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return const_iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_CLS_NAME::iterator_legal_check(const const_iterator& iter) const { - if (iter.node_index_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (iter.node_index_ == BQ_HASH_MAP_INVALID_INDEX) { return false; } if (iter.parent_ != this) { @@ -385,16 +383,16 @@ namespace bq { if (nodes_size() > 0) { free_ = 0; for (typename decltype(nodes_)::size_type i = 0; i < nodes_.size(); ++i) { - nodes_[i].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[i].prev = BQ_HASH_MAP_INVALID_INDEX; nodes_[i].next = static_cast(i) + 1; } - nodes_[nodes_.size() - 1].next = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[nodes_.size() - 1].next = BQ_HASH_MAP_INVALID_INDEX; } else { - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } size_ = 0; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -414,9 +412,9 @@ namespace bq { nodes_.size_ = 0; } size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -474,8 +472,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_prev_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].prev; } @@ -483,8 +481,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_next_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].next; } @@ -508,7 +506,7 @@ namespace bq { size_type cnt = 0; #endif size_type index = head_; - while (index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (index != BQ_HASH_MAP_INVALID_INDEX) { #ifndef NDEBUG cnt++; #endif @@ -519,7 +517,7 @@ namespace bq { size_type bucket_idx = get_bucket_index_by_key(cur_node.entry.key()); cur_node.bucket_idx = bucket_idx; size_type& bucket_value_ref = buckets_[bucket_idx]; - if (bucket_value_ref == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (bucket_value_ref == BQ_HASH_MAP_INVALID_INDEX) { bucket_value_ref = cur_index; } else if (cur_node.prev != bucket_value_ref) { size_type old_prev = cur_node.prev; @@ -528,34 +526,34 @@ namespace bq { size_type new_prev = bucket_value_ref; size_type new_next = nodes_[new_prev].next; - if (old_prev != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_prev != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_prev].next = old_next; } - if (old_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_next].prev = old_prev; } cur_node.prev = new_prev; cur_node.next = new_next; nodes_[new_prev].next = cur_index; - if (new_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (new_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[new_next].prev = cur_index; } if (tail_ == cur_index) { tail_ = old_prev; } if (cur_node.prev == cur_node.next) { - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; } } } #ifndef NDEBUG assert(buckets_size() == capacity); assert(cnt == this->size()); - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[head_].prev == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[head_].prev == BQ_HASH_MAP_INVALID_INDEX); } - if (tail_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[tail_].next == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (tail_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[tail_].next == BQ_HASH_MAP_INVALID_INDEX); } #endif } @@ -577,7 +575,7 @@ namespace bq { new_data[i].next = nodes_[i].next; } for (size_type i = new_space; i > old_space; --i) { - new_data[i - 1].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + new_data[i - 1].prev = BQ_HASH_MAP_INVALID_INDEX; new_data[i - 1].next = free_; free_ = i - 1; } @@ -596,15 +594,15 @@ namespace bq { template BQ_HASH_MAP_INLINE BQ_HASH_MAP_KV_CLS_NAME::size_type, typename BQ_HASH_MAP_CLS_NAME::size_type> BQ_HASH_MAP_CLS_NAME::find_index_and_bucket_idx_by_key(const_key_type_ref key) const { - size_type index = BQ_BQ_HASH_MAP_INVALID_INDEX; - size_type bucket_idx = BQ_BQ_HASH_MAP_INVALID_INDEX; + size_type index = BQ_HASH_MAP_INVALID_INDEX; + size_type bucket_idx = BQ_HASH_MAP_INVALID_INDEX; if (buckets_size() > 0) { bucket_idx = get_bucket_index_by_key(key); size_type valid_index = buckets_[bucket_idx]; - while (valid_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (valid_index != BQ_HASH_MAP_INVALID_INDEX) { auto& node = nodes_[valid_index]; if (node.bucket_idx != bucket_idx) { - valid_index = BQ_BQ_HASH_MAP_INVALID_INDEX; + valid_index = BQ_HASH_MAP_INVALID_INDEX; break; } if (node.entry.key() == key) { @@ -626,16 +624,16 @@ namespace bq { } // This must be called after expand_buckets because it will reform the buckets and nodes. auto node_bucket_indices_pair = find_index_and_bucket_idx_by_key(key); - assert(node_bucket_indices_pair.key() == BQ_BQ_HASH_MAP_INVALID_INDEX && "key already exist"); + assert(node_bucket_indices_pair.key() == BQ_HASH_MAP_INVALID_INDEX && "key already exist"); auto bucket_idx = node_bucket_indices_pair.value(); - if (free_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (free_ == BQ_HASH_MAP_INVALID_INDEX) { expand_nodes(nodes_size() + 1); } size_type& target_bucket_value = buckets_[bucket_idx]; size_type next_node_index = target_bucket_value; - size_type prev_node_index = (target_bucket_value == BQ_BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; - assert(free_ != BQ_BQ_HASH_MAP_INVALID_INDEX); + size_type prev_node_index = (target_bucket_value == BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; + assert(free_ != BQ_HASH_MAP_INVALID_INDEX); size_type new_index = free_; free_ = nodes_[new_index].next; @@ -644,13 +642,13 @@ namespace bq { new_node.next = next_node_index; new_node.prev = prev_node_index; new_node.bucket_idx = bucket_idx; - if (prev_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& prev_node = nodes_[prev_node_index]; prev_node.next = new_index; } else { head_ = new_index; } - if (next_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& next_node = nodes_[next_node_index]; next_node.prev = new_index; } else { diff --git a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h index 5161f36..2ee5d83 100644 --- a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h +++ b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h @@ -121,7 +121,7 @@ namespace bq { string_base(string_base&& rhs) noexcept; string_base(const char_type* str); - + string_base(const char_type* str, size_t char_count); template ::value || is_std_string_view_compatible::value) && !bq::is_same>::value, void>> diff --git a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h index ed68757..43e6192 100644 --- a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h +++ b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h @@ -158,7 +158,6 @@ namespace bq { insert_batch(begin(), const_iterator(str, nullptr), char_count); } - template template inline bq::string_base::string_base(const S& rhs) diff --git a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h index 503d237..df6db44 100644 --- a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h +++ b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h @@ -117,27 +117,45 @@ namespace bq { /// static void unregister_console_callback(bq::type_func_ptr_console_callback callback); + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + /// + static void set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + static bool fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback); + /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer. /// /// c style char*(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> console(bq::log_level level, const STR& str); /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer /// /// std::string or bq::string(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> console(bq::log_level level, const STR& str); public: /// diff --git a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h index 9d8e276..21266e9 100644 --- a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h +++ b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h @@ -198,14 +198,31 @@ namespace bq { /// /// /// - BQ_API void __register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); /// /// Unregister a console callback /// /// /// - BQ_API void __unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + + /// + /// set console appender buffer enable or not + /// + /// + /// + BQ_API void __api_set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// + /// path through parameter that will pass to on_console_callback + /// True if the console appender buffer is not empty, otherwise False is returned. + BQ_API bool __api_fetch_and_remove_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback on_console_callback, const void* pass_through_param); /// /// The snapshot feature is disabled by default, as it consumes some performance overhead. diff --git a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h index 3c14649..591dee6 100644 --- a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h +++ b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h @@ -166,6 +166,14 @@ namespace bq { failed_io_error }; + /// + /// `content` is a C-style string and end with '\0'; + /// typedef void(BQ_STDCALL* type_func_ptr_console_callback)(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + /// + /// `content` is a C-style string and end with '\0'; + /// + typedef void(BQ_STDCALL* type_func_ptr_console_buffer_fetch_callback)(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + } diff --git a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h index 8ae928d..168ee72 100644 --- a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h +++ b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h @@ -155,22 +155,38 @@ namespace bq { inline void log::register_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__register_console_callbacks(callback); + bq::api::__api_register_console_callbacks(callback); } inline void log::unregister_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__unregister_console_callbacks(callback); + bq::api::__api_unregister_console_callbacks(callback); + } + + inline void log::set_console_buffer_enable(bool enable) + { + bq::api::__api_set_console_buffer_enable(enable); + } + + inline void BQ_STDCALL fetch_and_remove_console_buffer_callback_wrapper(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + bq::type_func_ptr_console_callback real_callback = (bq::type_func_ptr_console_callback)pass_through_param; + real_callback(log_id, category_idx, log_level, content, length); + } + + inline bool log::fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback) + { + return bq::api::__api_fetch_and_remove_console_buffer(fetch_and_remove_console_buffer_callback_wrapper, (const void*)on_console_callback); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str.c_str()); } diff --git a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources index 51074f0..49ab446 100644 --- a/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources +++ b/dist/dynamic_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources @@ -57,14 +57,14 @@ hash2 - /QzuVBc1sW385rw6zwz+FR1sgMXFA16qZ2udNj3Q1Qw= + NxeDAoFrBQuLDnL1TC4kNUgkbK38W6rtqaak5bJipqk= Headers/bq_common/types/array_impl.h hash2 - x2wMHsHC7UysADx6R9tZ+cShynTHYgNiaZoJc8nQNWI= + CUXJ7fgCvclaodHbm/p+BPus8pTi+epVHVK2XLnd38U= Headers/bq_common/types/basic_types.h @@ -85,14 +85,14 @@ hash2 - zt3vNEm99ehzfRlD0ZaNKkHYmo6mRWiJSGmQ4mLLwvw= + srQQWqHVmRuu4rV03Yxmfg+LzomlWNG2YLGNbyuVzhY= Headers/bq_common/types/hash_map_impl.h hash2 - z6x6dtjZWjHKJPdBcZOQAd4RlHrE5lclFS+TumdLOzs= + ZuntT6tkS2N2LP27YiciQ3Y7QKT9r+iu6k7wLB0ERac= Headers/bq_common/types/optional.h @@ -106,14 +106,14 @@ hash2 - kU4dsk3lOdzf3X9iTTMhykM8OiHBR1+0XunrAE6iy9w= + Ji1DDfG8qr4dZQ8iTN7BZKTymCtZrfOBAwGvHAWw8Qc= Headers/bq_common/types/string_impl.h hash2 - WuyX9aI+UOoSOIPzawF8TX0/NSsAwxoC2zrP8/NP1co= + Uv0hQ16v7jzj9CRqzgzJgNZIVcA7zUTvULyJ24gWJh4= Headers/bq_common/types/type_tools.h @@ -148,28 +148,28 @@ hash2 - ONj3oS3g793vMiqr4FlsNe4IPMCLv4XFfwnjnbdpUFA= + B+IhgWKtC91IrLCq72TVevlq36z/cdVfuRqD+mq/wL8= Headers/bq_log/misc/bq_log_api.h hash2 - MdncWEJytGhqCdIbPw1JzWWsb2312mZxntqgxNAdGLA= + WJyLCoLU0HcOL32CCDF21ZRy0899fWcrypj5fkWS3+g= Headers/bq_log/misc/bq_log_def.h hash2 - WNR5a+m+efx2hJPcXXTL/oAk/NmMlVLPNWYL6g2hSbg= + TSyrbQNsnFrzSOi5AyviokTasT7M/IrlgiYh1kwdwkI= Headers/bq_log/misc/bq_log_impl.h hash2 - erP8ajj0AZWUYD1XbAJ8CsnfA8ZL7NDMMJcKYHuLC6I= + +32c5+ajYkjFSjrJZPcjNCTvcMdXhW7OCQgr5zZpaIU= Headers/bq_log/misc/bq_log_wrapper_tools.h diff --git a/dist/dynamic_lib/mac/MinSizeRel/libBqLog.dylib b/dist/dynamic_lib/mac/MinSizeRel/libBqLog.dylib index f59407a..61ef3a0 100755 Binary files a/dist/dynamic_lib/mac/MinSizeRel/libBqLog.dylib and b/dist/dynamic_lib/mac/MinSizeRel/libBqLog.dylib differ diff --git a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/BqLog b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/BqLog index 2721b05..e949b51 100755 Binary files a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/BqLog and b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/BqLog differ diff --git a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h index 61fa7c0..22a1893 100644 --- a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h +++ b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h @@ -48,26 +48,20 @@ namespace bq { template BQ_ARRAY_ITER_CLS_NAME& operator=(const BQ_ARRAY_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); BQ_ARRAY_ITER_CLS_NAME& operator++(); BQ_ARRAY_ITER_CLS_NAME operator++(int32_t); @@ -133,11 +127,11 @@ namespace bq { const value_type& operator[](size_type idx) const; - template - bool operator==(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); - template - bool operator!=(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); BQ_ARRAY_CLS_NAME& operator=(const BQ_ARRAY_CLS_NAME& rhs); diff --git a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h index 87b5746..d82f47f 100644 --- a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h +++ b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h @@ -50,60 +50,53 @@ namespace bq { return *this; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ == rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ == array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ != rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ != array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ < rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ < array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ <= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ <= array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ > rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ > array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ >= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ >= array2.data_; } - template - template - BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type BQ_ARRAY_ITER_CLS_NAME::operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not sub two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ - rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not sub two bq::array_iterator generated from different bq::array"); + return array1.data_ - array2.data_; } template @@ -315,26 +308,24 @@ namespace bq { return data_[idx]; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator==(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - if (size_ != rhs.size_) { + if (array1.size() != array2.size()) { return false; } - for (size_type i = 0; i < size_; ++i) { - if (this->operator[](i) != rhs[i]) { + for (typename BQ_ARRAY_CLS_NAME::size_type i = 0; i < array1.size(); ++i) { + if (array1[i] != array2[i]) { return false; } } return true; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator!=(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - return !operator==(rhs); + return !(array1 == array2); } template diff --git a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h index 1d69fb4..27b1ab4 100644 --- a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h +++ b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h @@ -77,6 +77,7 @@ namespace bq { typedef const pair_type& const_pair_type_ref; private: + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; container_type_ptr parent_; size_type node_index_; size_type bucket_idx_; @@ -103,11 +104,10 @@ namespace bq { template BQ_HASH_MAP_ITER_CLS_NAME& operator=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); + template + friend bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); BQ_HASH_MAP_ITER_CLS_NAME& operator++(); @@ -181,7 +181,7 @@ namespace bq { // we need manually control the destructive behaviour of every node item. bq::array didn't meets our needs because it has its own destructive logic. value_node_buffer_head nodes_; - constexpr static size_type BQ_BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; size_type size_; size_type head_; size_type tail_; diff --git a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h index 7d07675..3c0898d 100644 --- a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h +++ b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h @@ -34,31 +34,29 @@ namespace bq { return *this; } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - if (rhs.node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX - && node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (map1.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX + && map2.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) { return true; } - return (node_index_ == rhs.node_index_) - && (parent_ == rhs.parent_) - && (bucket_idx_ == rhs.bucket_idx_); + return (map1.node_index_ == map2.node_index_) + && (map1.parent_ == map2.parent_) + && (map1.bucket_idx_ == map2.bucket_idx_); } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - return !(*this == rhs); + return !(map1 == map2); } template BQ_HASH_MAP_INLINE BQ_HASH_MAP_ITER_CLS_NAME& BQ_HASH_MAP_ITER_CLS_NAME::operator++() { node_index_ = parent_->get_next_node_index(node_index_); - bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; + bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; return *this; } @@ -105,9 +103,9 @@ namespace bq { BQ_HASH_MAP_INLINE BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_CLS_NAME(size_type init_bucket_size /* = 0 */) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(init_bucket_size); expand_nodes(buckets_size()); } @@ -124,9 +122,9 @@ namespace bq { , nodes_(decltype(nodes_)()) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(rhs.buckets_size()); expand_nodes(rhs.nodes_size()); for (BQ_HASH_MAP_CLS_NAME::const_iterator iter = rhs.begin(); iter != rhs.end(); ++iter) { @@ -147,9 +145,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -250,9 +248,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -272,12 +270,12 @@ namespace bq { auto& cur_node = nodes_[where_it.node_index_]; size_type prev_index = cur_node.prev; size_type next_index = cur_node.next; - if (prev_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[prev_index].next = cur_node.next; } else { head_ = cur_node.next; } - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[next_index].prev = cur_node.prev; } else { tail_ = cur_node.prev; @@ -286,11 +284,11 @@ namespace bq { // buckets size_type bucket_index = where_it.bucket_idx_; if (where_it.node_index_ == buckets_[bucket_index]) { - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX + if (next_index != BQ_HASH_MAP_INVALID_INDEX && nodes_[next_index].bucket_idx == bucket_index) { buckets_[bucket_index] = next_index; } else { - buckets_[bucket_index] = BQ_BQ_HASH_MAP_INVALID_INDEX; + buckets_[bucket_index] = BQ_HASH_MAP_INVALID_INDEX; } } @@ -316,7 +314,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::begin() { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -325,7 +323,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::begin() const { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return const_iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -334,19 +332,19 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::end() { - return iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::end() const { - return const_iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return const_iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_CLS_NAME::iterator_legal_check(const const_iterator& iter) const { - if (iter.node_index_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (iter.node_index_ == BQ_HASH_MAP_INVALID_INDEX) { return false; } if (iter.parent_ != this) { @@ -385,16 +383,16 @@ namespace bq { if (nodes_size() > 0) { free_ = 0; for (typename decltype(nodes_)::size_type i = 0; i < nodes_.size(); ++i) { - nodes_[i].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[i].prev = BQ_HASH_MAP_INVALID_INDEX; nodes_[i].next = static_cast(i) + 1; } - nodes_[nodes_.size() - 1].next = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[nodes_.size() - 1].next = BQ_HASH_MAP_INVALID_INDEX; } else { - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } size_ = 0; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -414,9 +412,9 @@ namespace bq { nodes_.size_ = 0; } size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -474,8 +472,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_prev_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].prev; } @@ -483,8 +481,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_next_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].next; } @@ -508,7 +506,7 @@ namespace bq { size_type cnt = 0; #endif size_type index = head_; - while (index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (index != BQ_HASH_MAP_INVALID_INDEX) { #ifndef NDEBUG cnt++; #endif @@ -519,7 +517,7 @@ namespace bq { size_type bucket_idx = get_bucket_index_by_key(cur_node.entry.key()); cur_node.bucket_idx = bucket_idx; size_type& bucket_value_ref = buckets_[bucket_idx]; - if (bucket_value_ref == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (bucket_value_ref == BQ_HASH_MAP_INVALID_INDEX) { bucket_value_ref = cur_index; } else if (cur_node.prev != bucket_value_ref) { size_type old_prev = cur_node.prev; @@ -528,34 +526,34 @@ namespace bq { size_type new_prev = bucket_value_ref; size_type new_next = nodes_[new_prev].next; - if (old_prev != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_prev != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_prev].next = old_next; } - if (old_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_next].prev = old_prev; } cur_node.prev = new_prev; cur_node.next = new_next; nodes_[new_prev].next = cur_index; - if (new_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (new_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[new_next].prev = cur_index; } if (tail_ == cur_index) { tail_ = old_prev; } if (cur_node.prev == cur_node.next) { - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; } } } #ifndef NDEBUG assert(buckets_size() == capacity); assert(cnt == this->size()); - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[head_].prev == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[head_].prev == BQ_HASH_MAP_INVALID_INDEX); } - if (tail_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[tail_].next == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (tail_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[tail_].next == BQ_HASH_MAP_INVALID_INDEX); } #endif } @@ -577,7 +575,7 @@ namespace bq { new_data[i].next = nodes_[i].next; } for (size_type i = new_space; i > old_space; --i) { - new_data[i - 1].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + new_data[i - 1].prev = BQ_HASH_MAP_INVALID_INDEX; new_data[i - 1].next = free_; free_ = i - 1; } @@ -596,15 +594,15 @@ namespace bq { template BQ_HASH_MAP_INLINE BQ_HASH_MAP_KV_CLS_NAME::size_type, typename BQ_HASH_MAP_CLS_NAME::size_type> BQ_HASH_MAP_CLS_NAME::find_index_and_bucket_idx_by_key(const_key_type_ref key) const { - size_type index = BQ_BQ_HASH_MAP_INVALID_INDEX; - size_type bucket_idx = BQ_BQ_HASH_MAP_INVALID_INDEX; + size_type index = BQ_HASH_MAP_INVALID_INDEX; + size_type bucket_idx = BQ_HASH_MAP_INVALID_INDEX; if (buckets_size() > 0) { bucket_idx = get_bucket_index_by_key(key); size_type valid_index = buckets_[bucket_idx]; - while (valid_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (valid_index != BQ_HASH_MAP_INVALID_INDEX) { auto& node = nodes_[valid_index]; if (node.bucket_idx != bucket_idx) { - valid_index = BQ_BQ_HASH_MAP_INVALID_INDEX; + valid_index = BQ_HASH_MAP_INVALID_INDEX; break; } if (node.entry.key() == key) { @@ -626,16 +624,16 @@ namespace bq { } // This must be called after expand_buckets because it will reform the buckets and nodes. auto node_bucket_indices_pair = find_index_and_bucket_idx_by_key(key); - assert(node_bucket_indices_pair.key() == BQ_BQ_HASH_MAP_INVALID_INDEX && "key already exist"); + assert(node_bucket_indices_pair.key() == BQ_HASH_MAP_INVALID_INDEX && "key already exist"); auto bucket_idx = node_bucket_indices_pair.value(); - if (free_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (free_ == BQ_HASH_MAP_INVALID_INDEX) { expand_nodes(nodes_size() + 1); } size_type& target_bucket_value = buckets_[bucket_idx]; size_type next_node_index = target_bucket_value; - size_type prev_node_index = (target_bucket_value == BQ_BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; - assert(free_ != BQ_BQ_HASH_MAP_INVALID_INDEX); + size_type prev_node_index = (target_bucket_value == BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; + assert(free_ != BQ_HASH_MAP_INVALID_INDEX); size_type new_index = free_; free_ = nodes_[new_index].next; @@ -644,13 +642,13 @@ namespace bq { new_node.next = next_node_index; new_node.prev = prev_node_index; new_node.bucket_idx = bucket_idx; - if (prev_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& prev_node = nodes_[prev_node_index]; prev_node.next = new_index; } else { head_ = new_index; } - if (next_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& next_node = nodes_[next_node_index]; next_node.prev = new_index; } else { diff --git a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h index 5161f36..2ee5d83 100644 --- a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h +++ b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h @@ -121,7 +121,7 @@ namespace bq { string_base(string_base&& rhs) noexcept; string_base(const char_type* str); - + string_base(const char_type* str, size_t char_count); template ::value || is_std_string_view_compatible::value) && !bq::is_same>::value, void>> diff --git a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h index ed68757..43e6192 100644 --- a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h +++ b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h @@ -158,7 +158,6 @@ namespace bq { insert_batch(begin(), const_iterator(str, nullptr), char_count); } - template template inline bq::string_base::string_base(const S& rhs) diff --git a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h index 503d237..df6db44 100644 --- a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h +++ b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h @@ -117,27 +117,45 @@ namespace bq { /// static void unregister_console_callback(bq::type_func_ptr_console_callback callback); + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + /// + static void set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + static bool fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback); + /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer. /// /// c style char*(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> console(bq::log_level level, const STR& str); /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer /// /// std::string or bq::string(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> console(bq::log_level level, const STR& str); public: /// diff --git a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h index 9d8e276..21266e9 100644 --- a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h +++ b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h @@ -198,14 +198,31 @@ namespace bq { /// /// /// - BQ_API void __register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); /// /// Unregister a console callback /// /// /// - BQ_API void __unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + + /// + /// set console appender buffer enable or not + /// + /// + /// + BQ_API void __api_set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// + /// path through parameter that will pass to on_console_callback + /// True if the console appender buffer is not empty, otherwise False is returned. + BQ_API bool __api_fetch_and_remove_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback on_console_callback, const void* pass_through_param); /// /// The snapshot feature is disabled by default, as it consumes some performance overhead. diff --git a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h index 3c14649..591dee6 100644 --- a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h +++ b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h @@ -166,6 +166,14 @@ namespace bq { failed_io_error }; + /// + /// `content` is a C-style string and end with '\0'; + /// typedef void(BQ_STDCALL* type_func_ptr_console_callback)(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + /// + /// `content` is a C-style string and end with '\0'; + /// + typedef void(BQ_STDCALL* type_func_ptr_console_buffer_fetch_callback)(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + } diff --git a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h index 8ae928d..168ee72 100644 --- a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h +++ b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h @@ -155,22 +155,38 @@ namespace bq { inline void log::register_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__register_console_callbacks(callback); + bq::api::__api_register_console_callbacks(callback); } inline void log::unregister_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__unregister_console_callbacks(callback); + bq::api::__api_unregister_console_callbacks(callback); + } + + inline void log::set_console_buffer_enable(bool enable) + { + bq::api::__api_set_console_buffer_enable(enable); + } + + inline void BQ_STDCALL fetch_and_remove_console_buffer_callback_wrapper(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + bq::type_func_ptr_console_callback real_callback = (bq::type_func_ptr_console_callback)pass_through_param; + real_callback(log_id, category_idx, log_level, content, length); + } + + inline bool log::fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback) + { + return bq::api::__api_fetch_and_remove_console_buffer(fetch_and_remove_console_buffer_callback_wrapper, (const void*)on_console_callback); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str.c_str()); } diff --git a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources index 51074f0..49ab446 100644 --- a/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources +++ b/dist/dynamic_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources @@ -57,14 +57,14 @@ hash2 - /QzuVBc1sW385rw6zwz+FR1sgMXFA16qZ2udNj3Q1Qw= + NxeDAoFrBQuLDnL1TC4kNUgkbK38W6rtqaak5bJipqk= Headers/bq_common/types/array_impl.h hash2 - x2wMHsHC7UysADx6R9tZ+cShynTHYgNiaZoJc8nQNWI= + CUXJ7fgCvclaodHbm/p+BPus8pTi+epVHVK2XLnd38U= Headers/bq_common/types/basic_types.h @@ -85,14 +85,14 @@ hash2 - zt3vNEm99ehzfRlD0ZaNKkHYmo6mRWiJSGmQ4mLLwvw= + srQQWqHVmRuu4rV03Yxmfg+LzomlWNG2YLGNbyuVzhY= Headers/bq_common/types/hash_map_impl.h hash2 - z6x6dtjZWjHKJPdBcZOQAd4RlHrE5lclFS+TumdLOzs= + ZuntT6tkS2N2LP27YiciQ3Y7QKT9r+iu6k7wLB0ERac= Headers/bq_common/types/optional.h @@ -106,14 +106,14 @@ hash2 - kU4dsk3lOdzf3X9iTTMhykM8OiHBR1+0XunrAE6iy9w= + Ji1DDfG8qr4dZQ8iTN7BZKTymCtZrfOBAwGvHAWw8Qc= Headers/bq_common/types/string_impl.h hash2 - WuyX9aI+UOoSOIPzawF8TX0/NSsAwxoC2zrP8/NP1co= + Uv0hQ16v7jzj9CRqzgzJgNZIVcA7zUTvULyJ24gWJh4= Headers/bq_common/types/type_tools.h @@ -148,28 +148,28 @@ hash2 - ONj3oS3g793vMiqr4FlsNe4IPMCLv4XFfwnjnbdpUFA= + B+IhgWKtC91IrLCq72TVevlq36z/cdVfuRqD+mq/wL8= Headers/bq_log/misc/bq_log_api.h hash2 - MdncWEJytGhqCdIbPw1JzWWsb2312mZxntqgxNAdGLA= + WJyLCoLU0HcOL32CCDF21ZRy0899fWcrypj5fkWS3+g= Headers/bq_log/misc/bq_log_def.h hash2 - WNR5a+m+efx2hJPcXXTL/oAk/NmMlVLPNWYL6g2hSbg= + TSyrbQNsnFrzSOi5AyviokTasT7M/IrlgiYh1kwdwkI= Headers/bq_log/misc/bq_log_impl.h hash2 - erP8ajj0AZWUYD1XbAJ8CsnfA8ZL7NDMMJcKYHuLC6I= + +32c5+ajYkjFSjrJZPcjNCTvcMdXhW7OCQgr5zZpaIU= Headers/bq_log/misc/bq_log_wrapper_tools.h diff --git a/dist/dynamic_lib/mac/RelWithDebInfo/libBqLog.dylib b/dist/dynamic_lib/mac/RelWithDebInfo/libBqLog.dylib index 4eca4dd..92139d7 100755 Binary files a/dist/dynamic_lib/mac/RelWithDebInfo/libBqLog.dylib and b/dist/dynamic_lib/mac/RelWithDebInfo/libBqLog.dylib differ diff --git a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/BqLog b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/BqLog index 40c6aa9..7ec4f6e 100755 Binary files a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/BqLog and b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/BqLog differ diff --git a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h index 61fa7c0..22a1893 100644 --- a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h +++ b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h @@ -48,26 +48,20 @@ namespace bq { template BQ_ARRAY_ITER_CLS_NAME& operator=(const BQ_ARRAY_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); BQ_ARRAY_ITER_CLS_NAME& operator++(); BQ_ARRAY_ITER_CLS_NAME operator++(int32_t); @@ -133,11 +127,11 @@ namespace bq { const value_type& operator[](size_type idx) const; - template - bool operator==(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); - template - bool operator!=(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); BQ_ARRAY_CLS_NAME& operator=(const BQ_ARRAY_CLS_NAME& rhs); diff --git a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h index 87b5746..d82f47f 100644 --- a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h +++ b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h @@ -50,60 +50,53 @@ namespace bq { return *this; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ == rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ == array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ != rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ != array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ < rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ < array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ <= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ <= array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ > rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ > array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ >= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ >= array2.data_; } - template - template - BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type BQ_ARRAY_ITER_CLS_NAME::operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not sub two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ - rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not sub two bq::array_iterator generated from different bq::array"); + return array1.data_ - array2.data_; } template @@ -315,26 +308,24 @@ namespace bq { return data_[idx]; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator==(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - if (size_ != rhs.size_) { + if (array1.size() != array2.size()) { return false; } - for (size_type i = 0; i < size_; ++i) { - if (this->operator[](i) != rhs[i]) { + for (typename BQ_ARRAY_CLS_NAME::size_type i = 0; i < array1.size(); ++i) { + if (array1[i] != array2[i]) { return false; } } return true; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator!=(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - return !operator==(rhs); + return !(array1 == array2); } template diff --git a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h index 1d69fb4..27b1ab4 100644 --- a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h +++ b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h @@ -77,6 +77,7 @@ namespace bq { typedef const pair_type& const_pair_type_ref; private: + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; container_type_ptr parent_; size_type node_index_; size_type bucket_idx_; @@ -103,11 +104,10 @@ namespace bq { template BQ_HASH_MAP_ITER_CLS_NAME& operator=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); + template + friend bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); BQ_HASH_MAP_ITER_CLS_NAME& operator++(); @@ -181,7 +181,7 @@ namespace bq { // we need manually control the destructive behaviour of every node item. bq::array didn't meets our needs because it has its own destructive logic. value_node_buffer_head nodes_; - constexpr static size_type BQ_BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; size_type size_; size_type head_; size_type tail_; diff --git a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h index 7d07675..3c0898d 100644 --- a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h +++ b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h @@ -34,31 +34,29 @@ namespace bq { return *this; } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - if (rhs.node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX - && node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (map1.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX + && map2.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) { return true; } - return (node_index_ == rhs.node_index_) - && (parent_ == rhs.parent_) - && (bucket_idx_ == rhs.bucket_idx_); + return (map1.node_index_ == map2.node_index_) + && (map1.parent_ == map2.parent_) + && (map1.bucket_idx_ == map2.bucket_idx_); } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - return !(*this == rhs); + return !(map1 == map2); } template BQ_HASH_MAP_INLINE BQ_HASH_MAP_ITER_CLS_NAME& BQ_HASH_MAP_ITER_CLS_NAME::operator++() { node_index_ = parent_->get_next_node_index(node_index_); - bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; + bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; return *this; } @@ -105,9 +103,9 @@ namespace bq { BQ_HASH_MAP_INLINE BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_CLS_NAME(size_type init_bucket_size /* = 0 */) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(init_bucket_size); expand_nodes(buckets_size()); } @@ -124,9 +122,9 @@ namespace bq { , nodes_(decltype(nodes_)()) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(rhs.buckets_size()); expand_nodes(rhs.nodes_size()); for (BQ_HASH_MAP_CLS_NAME::const_iterator iter = rhs.begin(); iter != rhs.end(); ++iter) { @@ -147,9 +145,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -250,9 +248,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -272,12 +270,12 @@ namespace bq { auto& cur_node = nodes_[where_it.node_index_]; size_type prev_index = cur_node.prev; size_type next_index = cur_node.next; - if (prev_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[prev_index].next = cur_node.next; } else { head_ = cur_node.next; } - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[next_index].prev = cur_node.prev; } else { tail_ = cur_node.prev; @@ -286,11 +284,11 @@ namespace bq { // buckets size_type bucket_index = where_it.bucket_idx_; if (where_it.node_index_ == buckets_[bucket_index]) { - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX + if (next_index != BQ_HASH_MAP_INVALID_INDEX && nodes_[next_index].bucket_idx == bucket_index) { buckets_[bucket_index] = next_index; } else { - buckets_[bucket_index] = BQ_BQ_HASH_MAP_INVALID_INDEX; + buckets_[bucket_index] = BQ_HASH_MAP_INVALID_INDEX; } } @@ -316,7 +314,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::begin() { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -325,7 +323,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::begin() const { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return const_iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -334,19 +332,19 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::end() { - return iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::end() const { - return const_iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return const_iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_CLS_NAME::iterator_legal_check(const const_iterator& iter) const { - if (iter.node_index_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (iter.node_index_ == BQ_HASH_MAP_INVALID_INDEX) { return false; } if (iter.parent_ != this) { @@ -385,16 +383,16 @@ namespace bq { if (nodes_size() > 0) { free_ = 0; for (typename decltype(nodes_)::size_type i = 0; i < nodes_.size(); ++i) { - nodes_[i].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[i].prev = BQ_HASH_MAP_INVALID_INDEX; nodes_[i].next = static_cast(i) + 1; } - nodes_[nodes_.size() - 1].next = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[nodes_.size() - 1].next = BQ_HASH_MAP_INVALID_INDEX; } else { - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } size_ = 0; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -414,9 +412,9 @@ namespace bq { nodes_.size_ = 0; } size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -474,8 +472,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_prev_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].prev; } @@ -483,8 +481,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_next_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].next; } @@ -508,7 +506,7 @@ namespace bq { size_type cnt = 0; #endif size_type index = head_; - while (index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (index != BQ_HASH_MAP_INVALID_INDEX) { #ifndef NDEBUG cnt++; #endif @@ -519,7 +517,7 @@ namespace bq { size_type bucket_idx = get_bucket_index_by_key(cur_node.entry.key()); cur_node.bucket_idx = bucket_idx; size_type& bucket_value_ref = buckets_[bucket_idx]; - if (bucket_value_ref == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (bucket_value_ref == BQ_HASH_MAP_INVALID_INDEX) { bucket_value_ref = cur_index; } else if (cur_node.prev != bucket_value_ref) { size_type old_prev = cur_node.prev; @@ -528,34 +526,34 @@ namespace bq { size_type new_prev = bucket_value_ref; size_type new_next = nodes_[new_prev].next; - if (old_prev != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_prev != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_prev].next = old_next; } - if (old_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_next].prev = old_prev; } cur_node.prev = new_prev; cur_node.next = new_next; nodes_[new_prev].next = cur_index; - if (new_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (new_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[new_next].prev = cur_index; } if (tail_ == cur_index) { tail_ = old_prev; } if (cur_node.prev == cur_node.next) { - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; } } } #ifndef NDEBUG assert(buckets_size() == capacity); assert(cnt == this->size()); - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[head_].prev == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[head_].prev == BQ_HASH_MAP_INVALID_INDEX); } - if (tail_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[tail_].next == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (tail_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[tail_].next == BQ_HASH_MAP_INVALID_INDEX); } #endif } @@ -577,7 +575,7 @@ namespace bq { new_data[i].next = nodes_[i].next; } for (size_type i = new_space; i > old_space; --i) { - new_data[i - 1].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + new_data[i - 1].prev = BQ_HASH_MAP_INVALID_INDEX; new_data[i - 1].next = free_; free_ = i - 1; } @@ -596,15 +594,15 @@ namespace bq { template BQ_HASH_MAP_INLINE BQ_HASH_MAP_KV_CLS_NAME::size_type, typename BQ_HASH_MAP_CLS_NAME::size_type> BQ_HASH_MAP_CLS_NAME::find_index_and_bucket_idx_by_key(const_key_type_ref key) const { - size_type index = BQ_BQ_HASH_MAP_INVALID_INDEX; - size_type bucket_idx = BQ_BQ_HASH_MAP_INVALID_INDEX; + size_type index = BQ_HASH_MAP_INVALID_INDEX; + size_type bucket_idx = BQ_HASH_MAP_INVALID_INDEX; if (buckets_size() > 0) { bucket_idx = get_bucket_index_by_key(key); size_type valid_index = buckets_[bucket_idx]; - while (valid_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (valid_index != BQ_HASH_MAP_INVALID_INDEX) { auto& node = nodes_[valid_index]; if (node.bucket_idx != bucket_idx) { - valid_index = BQ_BQ_HASH_MAP_INVALID_INDEX; + valid_index = BQ_HASH_MAP_INVALID_INDEX; break; } if (node.entry.key() == key) { @@ -626,16 +624,16 @@ namespace bq { } // This must be called after expand_buckets because it will reform the buckets and nodes. auto node_bucket_indices_pair = find_index_and_bucket_idx_by_key(key); - assert(node_bucket_indices_pair.key() == BQ_BQ_HASH_MAP_INVALID_INDEX && "key already exist"); + assert(node_bucket_indices_pair.key() == BQ_HASH_MAP_INVALID_INDEX && "key already exist"); auto bucket_idx = node_bucket_indices_pair.value(); - if (free_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (free_ == BQ_HASH_MAP_INVALID_INDEX) { expand_nodes(nodes_size() + 1); } size_type& target_bucket_value = buckets_[bucket_idx]; size_type next_node_index = target_bucket_value; - size_type prev_node_index = (target_bucket_value == BQ_BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; - assert(free_ != BQ_BQ_HASH_MAP_INVALID_INDEX); + size_type prev_node_index = (target_bucket_value == BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; + assert(free_ != BQ_HASH_MAP_INVALID_INDEX); size_type new_index = free_; free_ = nodes_[new_index].next; @@ -644,13 +642,13 @@ namespace bq { new_node.next = next_node_index; new_node.prev = prev_node_index; new_node.bucket_idx = bucket_idx; - if (prev_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& prev_node = nodes_[prev_node_index]; prev_node.next = new_index; } else { head_ = new_index; } - if (next_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& next_node = nodes_[next_node_index]; next_node.prev = new_index; } else { diff --git a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h index 5161f36..2ee5d83 100644 --- a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h +++ b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h @@ -121,7 +121,7 @@ namespace bq { string_base(string_base&& rhs) noexcept; string_base(const char_type* str); - + string_base(const char_type* str, size_t char_count); template ::value || is_std_string_view_compatible::value) && !bq::is_same>::value, void>> diff --git a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h index ed68757..43e6192 100644 --- a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h +++ b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h @@ -158,7 +158,6 @@ namespace bq { insert_batch(begin(), const_iterator(str, nullptr), char_count); } - template template inline bq::string_base::string_base(const S& rhs) diff --git a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h index 503d237..df6db44 100644 --- a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h +++ b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h @@ -117,27 +117,45 @@ namespace bq { /// static void unregister_console_callback(bq::type_func_ptr_console_callback callback); + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + /// + static void set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + static bool fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback); + /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer. /// /// c style char*(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> console(bq::log_level level, const STR& str); /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer /// /// std::string or bq::string(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> console(bq::log_level level, const STR& str); public: /// diff --git a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h index 9d8e276..21266e9 100644 --- a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h +++ b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h @@ -198,14 +198,31 @@ namespace bq { /// /// /// - BQ_API void __register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); /// /// Unregister a console callback /// /// /// - BQ_API void __unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + + /// + /// set console appender buffer enable or not + /// + /// + /// + BQ_API void __api_set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// + /// path through parameter that will pass to on_console_callback + /// True if the console appender buffer is not empty, otherwise False is returned. + BQ_API bool __api_fetch_and_remove_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback on_console_callback, const void* pass_through_param); /// /// The snapshot feature is disabled by default, as it consumes some performance overhead. diff --git a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h index 3c14649..591dee6 100644 --- a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h +++ b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h @@ -166,6 +166,14 @@ namespace bq { failed_io_error }; + /// + /// `content` is a C-style string and end with '\0'; + /// typedef void(BQ_STDCALL* type_func_ptr_console_callback)(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + /// + /// `content` is a C-style string and end with '\0'; + /// + typedef void(BQ_STDCALL* type_func_ptr_console_buffer_fetch_callback)(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + } diff --git a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h index 8ae928d..168ee72 100644 --- a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h +++ b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h @@ -155,22 +155,38 @@ namespace bq { inline void log::register_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__register_console_callbacks(callback); + bq::api::__api_register_console_callbacks(callback); } inline void log::unregister_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__unregister_console_callbacks(callback); + bq::api::__api_unregister_console_callbacks(callback); + } + + inline void log::set_console_buffer_enable(bool enable) + { + bq::api::__api_set_console_buffer_enable(enable); + } + + inline void BQ_STDCALL fetch_and_remove_console_buffer_callback_wrapper(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + bq::type_func_ptr_console_callback real_callback = (bq::type_func_ptr_console_callback)pass_through_param; + real_callback(log_id, category_idx, log_level, content, length); + } + + inline bool log::fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback) + { + return bq::api::__api_fetch_and_remove_console_buffer(fetch_and_remove_console_buffer_callback_wrapper, (const void*)on_console_callback); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str.c_str()); } diff --git a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources index 51074f0..49ab446 100644 --- a/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources +++ b/dist/dynamic_lib/mac/Release/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources @@ -57,14 +57,14 @@ hash2 - /QzuVBc1sW385rw6zwz+FR1sgMXFA16qZ2udNj3Q1Qw= + NxeDAoFrBQuLDnL1TC4kNUgkbK38W6rtqaak5bJipqk= Headers/bq_common/types/array_impl.h hash2 - x2wMHsHC7UysADx6R9tZ+cShynTHYgNiaZoJc8nQNWI= + CUXJ7fgCvclaodHbm/p+BPus8pTi+epVHVK2XLnd38U= Headers/bq_common/types/basic_types.h @@ -85,14 +85,14 @@ hash2 - zt3vNEm99ehzfRlD0ZaNKkHYmo6mRWiJSGmQ4mLLwvw= + srQQWqHVmRuu4rV03Yxmfg+LzomlWNG2YLGNbyuVzhY= Headers/bq_common/types/hash_map_impl.h hash2 - z6x6dtjZWjHKJPdBcZOQAd4RlHrE5lclFS+TumdLOzs= + ZuntT6tkS2N2LP27YiciQ3Y7QKT9r+iu6k7wLB0ERac= Headers/bq_common/types/optional.h @@ -106,14 +106,14 @@ hash2 - kU4dsk3lOdzf3X9iTTMhykM8OiHBR1+0XunrAE6iy9w= + Ji1DDfG8qr4dZQ8iTN7BZKTymCtZrfOBAwGvHAWw8Qc= Headers/bq_common/types/string_impl.h hash2 - WuyX9aI+UOoSOIPzawF8TX0/NSsAwxoC2zrP8/NP1co= + Uv0hQ16v7jzj9CRqzgzJgNZIVcA7zUTvULyJ24gWJh4= Headers/bq_common/types/type_tools.h @@ -148,28 +148,28 @@ hash2 - ONj3oS3g793vMiqr4FlsNe4IPMCLv4XFfwnjnbdpUFA= + B+IhgWKtC91IrLCq72TVevlq36z/cdVfuRqD+mq/wL8= Headers/bq_log/misc/bq_log_api.h hash2 - MdncWEJytGhqCdIbPw1JzWWsb2312mZxntqgxNAdGLA= + WJyLCoLU0HcOL32CCDF21ZRy0899fWcrypj5fkWS3+g= Headers/bq_log/misc/bq_log_def.h hash2 - WNR5a+m+efx2hJPcXXTL/oAk/NmMlVLPNWYL6g2hSbg= + TSyrbQNsnFrzSOi5AyviokTasT7M/IrlgiYh1kwdwkI= Headers/bq_log/misc/bq_log_impl.h hash2 - erP8ajj0AZWUYD1XbAJ8CsnfA8ZL7NDMMJcKYHuLC6I= + +32c5+ajYkjFSjrJZPcjNCTvcMdXhW7OCQgr5zZpaIU= Headers/bq_log/misc/bq_log_wrapper_tools.h diff --git a/dist/dynamic_lib/mac/Release/libBqLog.dylib b/dist/dynamic_lib/mac/Release/libBqLog.dylib index e53eae9..2734ae3 100755 Binary files a/dist/dynamic_lib/mac/Release/libBqLog.dylib and b/dist/dynamic_lib/mac/Release/libBqLog.dylib differ diff --git a/dist/dynamic_lib/win64/Debug/BqLog.dll b/dist/dynamic_lib/win64/Debug/BqLog.dll index 490c033..76733cb 100644 Binary files a/dist/dynamic_lib/win64/Debug/BqLog.dll and b/dist/dynamic_lib/win64/Debug/BqLog.dll differ diff --git a/dist/dynamic_lib/win64/Debug/BqLog.lib b/dist/dynamic_lib/win64/Debug/BqLog.lib index 5a187af..027a5da 100644 Binary files a/dist/dynamic_lib/win64/Debug/BqLog.lib and b/dist/dynamic_lib/win64/Debug/BqLog.lib differ diff --git a/dist/dynamic_lib/win64/Debug/BqLog.pdb b/dist/dynamic_lib/win64/Debug/BqLog.pdb index eba9f7b..58a46a1 100644 Binary files a/dist/dynamic_lib/win64/Debug/BqLog.pdb and b/dist/dynamic_lib/win64/Debug/BqLog.pdb differ diff --git a/dist/dynamic_lib/win64/MinSizeRel/BqLog.dll b/dist/dynamic_lib/win64/MinSizeRel/BqLog.dll index a1f638b..bf9efce 100644 Binary files a/dist/dynamic_lib/win64/MinSizeRel/BqLog.dll and b/dist/dynamic_lib/win64/MinSizeRel/BqLog.dll differ diff --git a/dist/dynamic_lib/win64/MinSizeRel/BqLog.lib b/dist/dynamic_lib/win64/MinSizeRel/BqLog.lib index 5a187af..027a5da 100644 Binary files a/dist/dynamic_lib/win64/MinSizeRel/BqLog.lib and b/dist/dynamic_lib/win64/MinSizeRel/BqLog.lib differ diff --git a/dist/dynamic_lib/win64/RelWithDebInfo/BqLog.dll b/dist/dynamic_lib/win64/RelWithDebInfo/BqLog.dll index a30dcfa..a07608b 100644 Binary files a/dist/dynamic_lib/win64/RelWithDebInfo/BqLog.dll and b/dist/dynamic_lib/win64/RelWithDebInfo/BqLog.dll differ diff --git a/dist/dynamic_lib/win64/RelWithDebInfo/BqLog.lib b/dist/dynamic_lib/win64/RelWithDebInfo/BqLog.lib index 5a187af..027a5da 100644 Binary files a/dist/dynamic_lib/win64/RelWithDebInfo/BqLog.lib and b/dist/dynamic_lib/win64/RelWithDebInfo/BqLog.lib differ diff --git a/dist/dynamic_lib/win64/RelWithDebInfo/BqLog.pdb b/dist/dynamic_lib/win64/RelWithDebInfo/BqLog.pdb index 9979f4d..7cf4317 100644 Binary files a/dist/dynamic_lib/win64/RelWithDebInfo/BqLog.pdb and b/dist/dynamic_lib/win64/RelWithDebInfo/BqLog.pdb differ diff --git a/dist/dynamic_lib/win64/Release/BqLog.dll b/dist/dynamic_lib/win64/Release/BqLog.dll index 0b12d24..346d605 100644 Binary files a/dist/dynamic_lib/win64/Release/BqLog.dll and b/dist/dynamic_lib/win64/Release/BqLog.dll differ diff --git a/dist/dynamic_lib/win64/Release/BqLog.lib b/dist/dynamic_lib/win64/Release/BqLog.lib index 5a187af..027a5da 100644 Binary files a/dist/dynamic_lib/win64/Release/BqLog.lib and b/dist/dynamic_lib/win64/Release/BqLog.lib differ diff --git a/dist/static_lib/include/bq_common/types/array_def.h b/dist/static_lib/include/bq_common/types/array_def.h index 61fa7c0..22a1893 100644 --- a/dist/static_lib/include/bq_common/types/array_def.h +++ b/dist/static_lib/include/bq_common/types/array_def.h @@ -48,26 +48,20 @@ namespace bq { template BQ_ARRAY_ITER_CLS_NAME& operator=(const BQ_ARRAY_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); BQ_ARRAY_ITER_CLS_NAME& operator++(); BQ_ARRAY_ITER_CLS_NAME operator++(int32_t); @@ -133,11 +127,11 @@ namespace bq { const value_type& operator[](size_type idx) const; - template - bool operator==(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); - template - bool operator!=(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); BQ_ARRAY_CLS_NAME& operator=(const BQ_ARRAY_CLS_NAME& rhs); diff --git a/dist/static_lib/include/bq_common/types/array_impl.h b/dist/static_lib/include/bq_common/types/array_impl.h index 87b5746..d82f47f 100644 --- a/dist/static_lib/include/bq_common/types/array_impl.h +++ b/dist/static_lib/include/bq_common/types/array_impl.h @@ -50,60 +50,53 @@ namespace bq { return *this; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ == rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ == array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ != rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ != array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ < rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ < array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ <= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ <= array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ > rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ > array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ >= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ >= array2.data_; } - template - template - BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type BQ_ARRAY_ITER_CLS_NAME::operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not sub two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ - rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not sub two bq::array_iterator generated from different bq::array"); + return array1.data_ - array2.data_; } template @@ -315,26 +308,24 @@ namespace bq { return data_[idx]; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator==(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - if (size_ != rhs.size_) { + if (array1.size() != array2.size()) { return false; } - for (size_type i = 0; i < size_; ++i) { - if (this->operator[](i) != rhs[i]) { + for (typename BQ_ARRAY_CLS_NAME::size_type i = 0; i < array1.size(); ++i) { + if (array1[i] != array2[i]) { return false; } } return true; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator!=(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - return !operator==(rhs); + return !(array1 == array2); } template diff --git a/dist/static_lib/include/bq_common/types/hash_map_def.h b/dist/static_lib/include/bq_common/types/hash_map_def.h index 1d69fb4..27b1ab4 100644 --- a/dist/static_lib/include/bq_common/types/hash_map_def.h +++ b/dist/static_lib/include/bq_common/types/hash_map_def.h @@ -77,6 +77,7 @@ namespace bq { typedef const pair_type& const_pair_type_ref; private: + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; container_type_ptr parent_; size_type node_index_; size_type bucket_idx_; @@ -103,11 +104,10 @@ namespace bq { template BQ_HASH_MAP_ITER_CLS_NAME& operator=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); + template + friend bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); BQ_HASH_MAP_ITER_CLS_NAME& operator++(); @@ -181,7 +181,7 @@ namespace bq { // we need manually control the destructive behaviour of every node item. bq::array didn't meets our needs because it has its own destructive logic. value_node_buffer_head nodes_; - constexpr static size_type BQ_BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; size_type size_; size_type head_; size_type tail_; diff --git a/dist/static_lib/include/bq_common/types/hash_map_impl.h b/dist/static_lib/include/bq_common/types/hash_map_impl.h index 7d07675..3c0898d 100644 --- a/dist/static_lib/include/bq_common/types/hash_map_impl.h +++ b/dist/static_lib/include/bq_common/types/hash_map_impl.h @@ -34,31 +34,29 @@ namespace bq { return *this; } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - if (rhs.node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX - && node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (map1.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX + && map2.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) { return true; } - return (node_index_ == rhs.node_index_) - && (parent_ == rhs.parent_) - && (bucket_idx_ == rhs.bucket_idx_); + return (map1.node_index_ == map2.node_index_) + && (map1.parent_ == map2.parent_) + && (map1.bucket_idx_ == map2.bucket_idx_); } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - return !(*this == rhs); + return !(map1 == map2); } template BQ_HASH_MAP_INLINE BQ_HASH_MAP_ITER_CLS_NAME& BQ_HASH_MAP_ITER_CLS_NAME::operator++() { node_index_ = parent_->get_next_node_index(node_index_); - bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; + bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; return *this; } @@ -105,9 +103,9 @@ namespace bq { BQ_HASH_MAP_INLINE BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_CLS_NAME(size_type init_bucket_size /* = 0 */) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(init_bucket_size); expand_nodes(buckets_size()); } @@ -124,9 +122,9 @@ namespace bq { , nodes_(decltype(nodes_)()) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(rhs.buckets_size()); expand_nodes(rhs.nodes_size()); for (BQ_HASH_MAP_CLS_NAME::const_iterator iter = rhs.begin(); iter != rhs.end(); ++iter) { @@ -147,9 +145,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -250,9 +248,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -272,12 +270,12 @@ namespace bq { auto& cur_node = nodes_[where_it.node_index_]; size_type prev_index = cur_node.prev; size_type next_index = cur_node.next; - if (prev_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[prev_index].next = cur_node.next; } else { head_ = cur_node.next; } - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[next_index].prev = cur_node.prev; } else { tail_ = cur_node.prev; @@ -286,11 +284,11 @@ namespace bq { // buckets size_type bucket_index = where_it.bucket_idx_; if (where_it.node_index_ == buckets_[bucket_index]) { - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX + if (next_index != BQ_HASH_MAP_INVALID_INDEX && nodes_[next_index].bucket_idx == bucket_index) { buckets_[bucket_index] = next_index; } else { - buckets_[bucket_index] = BQ_BQ_HASH_MAP_INVALID_INDEX; + buckets_[bucket_index] = BQ_HASH_MAP_INVALID_INDEX; } } @@ -316,7 +314,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::begin() { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -325,7 +323,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::begin() const { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return const_iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -334,19 +332,19 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::end() { - return iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::end() const { - return const_iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return const_iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_CLS_NAME::iterator_legal_check(const const_iterator& iter) const { - if (iter.node_index_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (iter.node_index_ == BQ_HASH_MAP_INVALID_INDEX) { return false; } if (iter.parent_ != this) { @@ -385,16 +383,16 @@ namespace bq { if (nodes_size() > 0) { free_ = 0; for (typename decltype(nodes_)::size_type i = 0; i < nodes_.size(); ++i) { - nodes_[i].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[i].prev = BQ_HASH_MAP_INVALID_INDEX; nodes_[i].next = static_cast(i) + 1; } - nodes_[nodes_.size() - 1].next = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[nodes_.size() - 1].next = BQ_HASH_MAP_INVALID_INDEX; } else { - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } size_ = 0; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -414,9 +412,9 @@ namespace bq { nodes_.size_ = 0; } size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -474,8 +472,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_prev_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].prev; } @@ -483,8 +481,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_next_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].next; } @@ -508,7 +506,7 @@ namespace bq { size_type cnt = 0; #endif size_type index = head_; - while (index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (index != BQ_HASH_MAP_INVALID_INDEX) { #ifndef NDEBUG cnt++; #endif @@ -519,7 +517,7 @@ namespace bq { size_type bucket_idx = get_bucket_index_by_key(cur_node.entry.key()); cur_node.bucket_idx = bucket_idx; size_type& bucket_value_ref = buckets_[bucket_idx]; - if (bucket_value_ref == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (bucket_value_ref == BQ_HASH_MAP_INVALID_INDEX) { bucket_value_ref = cur_index; } else if (cur_node.prev != bucket_value_ref) { size_type old_prev = cur_node.prev; @@ -528,34 +526,34 @@ namespace bq { size_type new_prev = bucket_value_ref; size_type new_next = nodes_[new_prev].next; - if (old_prev != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_prev != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_prev].next = old_next; } - if (old_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_next].prev = old_prev; } cur_node.prev = new_prev; cur_node.next = new_next; nodes_[new_prev].next = cur_index; - if (new_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (new_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[new_next].prev = cur_index; } if (tail_ == cur_index) { tail_ = old_prev; } if (cur_node.prev == cur_node.next) { - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; } } } #ifndef NDEBUG assert(buckets_size() == capacity); assert(cnt == this->size()); - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[head_].prev == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[head_].prev == BQ_HASH_MAP_INVALID_INDEX); } - if (tail_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[tail_].next == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (tail_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[tail_].next == BQ_HASH_MAP_INVALID_INDEX); } #endif } @@ -577,7 +575,7 @@ namespace bq { new_data[i].next = nodes_[i].next; } for (size_type i = new_space; i > old_space; --i) { - new_data[i - 1].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + new_data[i - 1].prev = BQ_HASH_MAP_INVALID_INDEX; new_data[i - 1].next = free_; free_ = i - 1; } @@ -596,15 +594,15 @@ namespace bq { template BQ_HASH_MAP_INLINE BQ_HASH_MAP_KV_CLS_NAME::size_type, typename BQ_HASH_MAP_CLS_NAME::size_type> BQ_HASH_MAP_CLS_NAME::find_index_and_bucket_idx_by_key(const_key_type_ref key) const { - size_type index = BQ_BQ_HASH_MAP_INVALID_INDEX; - size_type bucket_idx = BQ_BQ_HASH_MAP_INVALID_INDEX; + size_type index = BQ_HASH_MAP_INVALID_INDEX; + size_type bucket_idx = BQ_HASH_MAP_INVALID_INDEX; if (buckets_size() > 0) { bucket_idx = get_bucket_index_by_key(key); size_type valid_index = buckets_[bucket_idx]; - while (valid_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (valid_index != BQ_HASH_MAP_INVALID_INDEX) { auto& node = nodes_[valid_index]; if (node.bucket_idx != bucket_idx) { - valid_index = BQ_BQ_HASH_MAP_INVALID_INDEX; + valid_index = BQ_HASH_MAP_INVALID_INDEX; break; } if (node.entry.key() == key) { @@ -626,16 +624,16 @@ namespace bq { } // This must be called after expand_buckets because it will reform the buckets and nodes. auto node_bucket_indices_pair = find_index_and_bucket_idx_by_key(key); - assert(node_bucket_indices_pair.key() == BQ_BQ_HASH_MAP_INVALID_INDEX && "key already exist"); + assert(node_bucket_indices_pair.key() == BQ_HASH_MAP_INVALID_INDEX && "key already exist"); auto bucket_idx = node_bucket_indices_pair.value(); - if (free_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (free_ == BQ_HASH_MAP_INVALID_INDEX) { expand_nodes(nodes_size() + 1); } size_type& target_bucket_value = buckets_[bucket_idx]; size_type next_node_index = target_bucket_value; - size_type prev_node_index = (target_bucket_value == BQ_BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; - assert(free_ != BQ_BQ_HASH_MAP_INVALID_INDEX); + size_type prev_node_index = (target_bucket_value == BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; + assert(free_ != BQ_HASH_MAP_INVALID_INDEX); size_type new_index = free_; free_ = nodes_[new_index].next; @@ -644,13 +642,13 @@ namespace bq { new_node.next = next_node_index; new_node.prev = prev_node_index; new_node.bucket_idx = bucket_idx; - if (prev_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& prev_node = nodes_[prev_node_index]; prev_node.next = new_index; } else { head_ = new_index; } - if (next_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& next_node = nodes_[next_node_index]; next_node.prev = new_index; } else { diff --git a/dist/static_lib/include/bq_common/types/string.h b/dist/static_lib/include/bq_common/types/string.h index 5161f36..2ee5d83 100644 --- a/dist/static_lib/include/bq_common/types/string.h +++ b/dist/static_lib/include/bq_common/types/string.h @@ -121,7 +121,7 @@ namespace bq { string_base(string_base&& rhs) noexcept; string_base(const char_type* str); - + string_base(const char_type* str, size_t char_count); template ::value || is_std_string_view_compatible::value) && !bq::is_same>::value, void>> diff --git a/dist/static_lib/include/bq_common/types/string_impl.h b/dist/static_lib/include/bq_common/types/string_impl.h index ed68757..43e6192 100644 --- a/dist/static_lib/include/bq_common/types/string_impl.h +++ b/dist/static_lib/include/bq_common/types/string_impl.h @@ -158,7 +158,6 @@ namespace bq { insert_batch(begin(), const_iterator(str, nullptr), char_count); } - template template inline bq::string_base::string_base(const S& rhs) diff --git a/dist/static_lib/include/bq_log/bq_log.h b/dist/static_lib/include/bq_log/bq_log.h index 503d237..df6db44 100644 --- a/dist/static_lib/include/bq_log/bq_log.h +++ b/dist/static_lib/include/bq_log/bq_log.h @@ -117,27 +117,45 @@ namespace bq { /// static void unregister_console_callback(bq::type_func_ptr_console_callback callback); + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + /// + static void set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + static bool fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback); + /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer. /// /// c style char*(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> console(bq::log_level level, const STR& str); /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer /// /// std::string or bq::string(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> console(bq::log_level level, const STR& str); public: /// diff --git a/dist/static_lib/include/bq_log/misc/bq_log_api.h b/dist/static_lib/include/bq_log/misc/bq_log_api.h index 9d8e276..21266e9 100644 --- a/dist/static_lib/include/bq_log/misc/bq_log_api.h +++ b/dist/static_lib/include/bq_log/misc/bq_log_api.h @@ -198,14 +198,31 @@ namespace bq { /// /// /// - BQ_API void __register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); /// /// Unregister a console callback /// /// /// - BQ_API void __unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + + /// + /// set console appender buffer enable or not + /// + /// + /// + BQ_API void __api_set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// + /// path through parameter that will pass to on_console_callback + /// True if the console appender buffer is not empty, otherwise False is returned. + BQ_API bool __api_fetch_and_remove_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback on_console_callback, const void* pass_through_param); /// /// The snapshot feature is disabled by default, as it consumes some performance overhead. diff --git a/dist/static_lib/include/bq_log/misc/bq_log_def.h b/dist/static_lib/include/bq_log/misc/bq_log_def.h index 3c14649..591dee6 100644 --- a/dist/static_lib/include/bq_log/misc/bq_log_def.h +++ b/dist/static_lib/include/bq_log/misc/bq_log_def.h @@ -166,6 +166,14 @@ namespace bq { failed_io_error }; + /// + /// `content` is a C-style string and end with '\0'; + /// typedef void(BQ_STDCALL* type_func_ptr_console_callback)(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + /// + /// `content` is a C-style string and end with '\0'; + /// + typedef void(BQ_STDCALL* type_func_ptr_console_buffer_fetch_callback)(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + } diff --git a/dist/static_lib/include/bq_log/misc/bq_log_impl.h b/dist/static_lib/include/bq_log/misc/bq_log_impl.h index 8ae928d..168ee72 100644 --- a/dist/static_lib/include/bq_log/misc/bq_log_impl.h +++ b/dist/static_lib/include/bq_log/misc/bq_log_impl.h @@ -155,22 +155,38 @@ namespace bq { inline void log::register_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__register_console_callbacks(callback); + bq::api::__api_register_console_callbacks(callback); } inline void log::unregister_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__unregister_console_callbacks(callback); + bq::api::__api_unregister_console_callbacks(callback); + } + + inline void log::set_console_buffer_enable(bool enable) + { + bq::api::__api_set_console_buffer_enable(enable); + } + + inline void BQ_STDCALL fetch_and_remove_console_buffer_callback_wrapper(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + bq::type_func_ptr_console_callback real_callback = (bq::type_func_ptr_console_callback)pass_through_param; + real_callback(log_id, category_idx, log_level, content, length); + } + + inline bool log::fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback) + { + return bq::api::__api_fetch_and_remove_console_buffer(fetch_and_remove_console_buffer_callback_wrapper, (const void*)on_console_callback); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str.c_str()); } diff --git a/dist/static_lib/linux/Debug/libBqLog.a b/dist/static_lib/linux/Debug/libBqLog.a index 62fd3be..a4e7a0e 100644 Binary files a/dist/static_lib/linux/Debug/libBqLog.a and b/dist/static_lib/linux/Debug/libBqLog.a differ diff --git a/dist/static_lib/linux/MinSizeRel/libBqLog.a b/dist/static_lib/linux/MinSizeRel/libBqLog.a index e4957a4..ae34539 100644 Binary files a/dist/static_lib/linux/MinSizeRel/libBqLog.a and b/dist/static_lib/linux/MinSizeRel/libBqLog.a differ diff --git a/dist/static_lib/linux/RelWithDebInfo/libBqLog.a b/dist/static_lib/linux/RelWithDebInfo/libBqLog.a index 1c424d5..dee87fb 100644 Binary files a/dist/static_lib/linux/RelWithDebInfo/libBqLog.a and b/dist/static_lib/linux/RelWithDebInfo/libBqLog.a differ diff --git a/dist/static_lib/linux/Release/libBqLog.a b/dist/static_lib/linux/Release/libBqLog.a index c491ce5..0e4fc1d 100644 Binary files a/dist/static_lib/linux/Release/libBqLog.a and b/dist/static_lib/linux/Release/libBqLog.a differ diff --git a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/BqLog b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/BqLog index 09010fd..2b43a5e 100644 Binary files a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/BqLog and b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/BqLog differ diff --git a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h index 61fa7c0..22a1893 100644 --- a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h +++ b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h @@ -48,26 +48,20 @@ namespace bq { template BQ_ARRAY_ITER_CLS_NAME& operator=(const BQ_ARRAY_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); BQ_ARRAY_ITER_CLS_NAME& operator++(); BQ_ARRAY_ITER_CLS_NAME operator++(int32_t); @@ -133,11 +127,11 @@ namespace bq { const value_type& operator[](size_type idx) const; - template - bool operator==(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); - template - bool operator!=(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); BQ_ARRAY_CLS_NAME& operator=(const BQ_ARRAY_CLS_NAME& rhs); diff --git a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h index 87b5746..d82f47f 100644 --- a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h +++ b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h @@ -50,60 +50,53 @@ namespace bq { return *this; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ == rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ == array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ != rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ != array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ < rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ < array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ <= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ <= array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ > rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ > array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ >= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ >= array2.data_; } - template - template - BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type BQ_ARRAY_ITER_CLS_NAME::operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not sub two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ - rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not sub two bq::array_iterator generated from different bq::array"); + return array1.data_ - array2.data_; } template @@ -315,26 +308,24 @@ namespace bq { return data_[idx]; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator==(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - if (size_ != rhs.size_) { + if (array1.size() != array2.size()) { return false; } - for (size_type i = 0; i < size_; ++i) { - if (this->operator[](i) != rhs[i]) { + for (typename BQ_ARRAY_CLS_NAME::size_type i = 0; i < array1.size(); ++i) { + if (array1[i] != array2[i]) { return false; } } return true; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator!=(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - return !operator==(rhs); + return !(array1 == array2); } template diff --git a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h index 1d69fb4..27b1ab4 100644 --- a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h +++ b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h @@ -77,6 +77,7 @@ namespace bq { typedef const pair_type& const_pair_type_ref; private: + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; container_type_ptr parent_; size_type node_index_; size_type bucket_idx_; @@ -103,11 +104,10 @@ namespace bq { template BQ_HASH_MAP_ITER_CLS_NAME& operator=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); + template + friend bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); BQ_HASH_MAP_ITER_CLS_NAME& operator++(); @@ -181,7 +181,7 @@ namespace bq { // we need manually control the destructive behaviour of every node item. bq::array didn't meets our needs because it has its own destructive logic. value_node_buffer_head nodes_; - constexpr static size_type BQ_BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; size_type size_; size_type head_; size_type tail_; diff --git a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h index 7d07675..3c0898d 100644 --- a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h +++ b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h @@ -34,31 +34,29 @@ namespace bq { return *this; } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - if (rhs.node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX - && node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (map1.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX + && map2.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) { return true; } - return (node_index_ == rhs.node_index_) - && (parent_ == rhs.parent_) - && (bucket_idx_ == rhs.bucket_idx_); + return (map1.node_index_ == map2.node_index_) + && (map1.parent_ == map2.parent_) + && (map1.bucket_idx_ == map2.bucket_idx_); } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - return !(*this == rhs); + return !(map1 == map2); } template BQ_HASH_MAP_INLINE BQ_HASH_MAP_ITER_CLS_NAME& BQ_HASH_MAP_ITER_CLS_NAME::operator++() { node_index_ = parent_->get_next_node_index(node_index_); - bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; + bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; return *this; } @@ -105,9 +103,9 @@ namespace bq { BQ_HASH_MAP_INLINE BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_CLS_NAME(size_type init_bucket_size /* = 0 */) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(init_bucket_size); expand_nodes(buckets_size()); } @@ -124,9 +122,9 @@ namespace bq { , nodes_(decltype(nodes_)()) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(rhs.buckets_size()); expand_nodes(rhs.nodes_size()); for (BQ_HASH_MAP_CLS_NAME::const_iterator iter = rhs.begin(); iter != rhs.end(); ++iter) { @@ -147,9 +145,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -250,9 +248,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -272,12 +270,12 @@ namespace bq { auto& cur_node = nodes_[where_it.node_index_]; size_type prev_index = cur_node.prev; size_type next_index = cur_node.next; - if (prev_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[prev_index].next = cur_node.next; } else { head_ = cur_node.next; } - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[next_index].prev = cur_node.prev; } else { tail_ = cur_node.prev; @@ -286,11 +284,11 @@ namespace bq { // buckets size_type bucket_index = where_it.bucket_idx_; if (where_it.node_index_ == buckets_[bucket_index]) { - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX + if (next_index != BQ_HASH_MAP_INVALID_INDEX && nodes_[next_index].bucket_idx == bucket_index) { buckets_[bucket_index] = next_index; } else { - buckets_[bucket_index] = BQ_BQ_HASH_MAP_INVALID_INDEX; + buckets_[bucket_index] = BQ_HASH_MAP_INVALID_INDEX; } } @@ -316,7 +314,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::begin() { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -325,7 +323,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::begin() const { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return const_iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -334,19 +332,19 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::end() { - return iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::end() const { - return const_iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return const_iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_CLS_NAME::iterator_legal_check(const const_iterator& iter) const { - if (iter.node_index_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (iter.node_index_ == BQ_HASH_MAP_INVALID_INDEX) { return false; } if (iter.parent_ != this) { @@ -385,16 +383,16 @@ namespace bq { if (nodes_size() > 0) { free_ = 0; for (typename decltype(nodes_)::size_type i = 0; i < nodes_.size(); ++i) { - nodes_[i].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[i].prev = BQ_HASH_MAP_INVALID_INDEX; nodes_[i].next = static_cast(i) + 1; } - nodes_[nodes_.size() - 1].next = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[nodes_.size() - 1].next = BQ_HASH_MAP_INVALID_INDEX; } else { - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } size_ = 0; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -414,9 +412,9 @@ namespace bq { nodes_.size_ = 0; } size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -474,8 +472,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_prev_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].prev; } @@ -483,8 +481,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_next_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].next; } @@ -508,7 +506,7 @@ namespace bq { size_type cnt = 0; #endif size_type index = head_; - while (index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (index != BQ_HASH_MAP_INVALID_INDEX) { #ifndef NDEBUG cnt++; #endif @@ -519,7 +517,7 @@ namespace bq { size_type bucket_idx = get_bucket_index_by_key(cur_node.entry.key()); cur_node.bucket_idx = bucket_idx; size_type& bucket_value_ref = buckets_[bucket_idx]; - if (bucket_value_ref == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (bucket_value_ref == BQ_HASH_MAP_INVALID_INDEX) { bucket_value_ref = cur_index; } else if (cur_node.prev != bucket_value_ref) { size_type old_prev = cur_node.prev; @@ -528,34 +526,34 @@ namespace bq { size_type new_prev = bucket_value_ref; size_type new_next = nodes_[new_prev].next; - if (old_prev != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_prev != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_prev].next = old_next; } - if (old_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_next].prev = old_prev; } cur_node.prev = new_prev; cur_node.next = new_next; nodes_[new_prev].next = cur_index; - if (new_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (new_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[new_next].prev = cur_index; } if (tail_ == cur_index) { tail_ = old_prev; } if (cur_node.prev == cur_node.next) { - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; } } } #ifndef NDEBUG assert(buckets_size() == capacity); assert(cnt == this->size()); - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[head_].prev == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[head_].prev == BQ_HASH_MAP_INVALID_INDEX); } - if (tail_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[tail_].next == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (tail_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[tail_].next == BQ_HASH_MAP_INVALID_INDEX); } #endif } @@ -577,7 +575,7 @@ namespace bq { new_data[i].next = nodes_[i].next; } for (size_type i = new_space; i > old_space; --i) { - new_data[i - 1].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + new_data[i - 1].prev = BQ_HASH_MAP_INVALID_INDEX; new_data[i - 1].next = free_; free_ = i - 1; } @@ -596,15 +594,15 @@ namespace bq { template BQ_HASH_MAP_INLINE BQ_HASH_MAP_KV_CLS_NAME::size_type, typename BQ_HASH_MAP_CLS_NAME::size_type> BQ_HASH_MAP_CLS_NAME::find_index_and_bucket_idx_by_key(const_key_type_ref key) const { - size_type index = BQ_BQ_HASH_MAP_INVALID_INDEX; - size_type bucket_idx = BQ_BQ_HASH_MAP_INVALID_INDEX; + size_type index = BQ_HASH_MAP_INVALID_INDEX; + size_type bucket_idx = BQ_HASH_MAP_INVALID_INDEX; if (buckets_size() > 0) { bucket_idx = get_bucket_index_by_key(key); size_type valid_index = buckets_[bucket_idx]; - while (valid_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (valid_index != BQ_HASH_MAP_INVALID_INDEX) { auto& node = nodes_[valid_index]; if (node.bucket_idx != bucket_idx) { - valid_index = BQ_BQ_HASH_MAP_INVALID_INDEX; + valid_index = BQ_HASH_MAP_INVALID_INDEX; break; } if (node.entry.key() == key) { @@ -626,16 +624,16 @@ namespace bq { } // This must be called after expand_buckets because it will reform the buckets and nodes. auto node_bucket_indices_pair = find_index_and_bucket_idx_by_key(key); - assert(node_bucket_indices_pair.key() == BQ_BQ_HASH_MAP_INVALID_INDEX && "key already exist"); + assert(node_bucket_indices_pair.key() == BQ_HASH_MAP_INVALID_INDEX && "key already exist"); auto bucket_idx = node_bucket_indices_pair.value(); - if (free_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (free_ == BQ_HASH_MAP_INVALID_INDEX) { expand_nodes(nodes_size() + 1); } size_type& target_bucket_value = buckets_[bucket_idx]; size_type next_node_index = target_bucket_value; - size_type prev_node_index = (target_bucket_value == BQ_BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; - assert(free_ != BQ_BQ_HASH_MAP_INVALID_INDEX); + size_type prev_node_index = (target_bucket_value == BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; + assert(free_ != BQ_HASH_MAP_INVALID_INDEX); size_type new_index = free_; free_ = nodes_[new_index].next; @@ -644,13 +642,13 @@ namespace bq { new_node.next = next_node_index; new_node.prev = prev_node_index; new_node.bucket_idx = bucket_idx; - if (prev_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& prev_node = nodes_[prev_node_index]; prev_node.next = new_index; } else { head_ = new_index; } - if (next_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& next_node = nodes_[next_node_index]; next_node.prev = new_index; } else { diff --git a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h index 5161f36..2ee5d83 100644 --- a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h +++ b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h @@ -121,7 +121,7 @@ namespace bq { string_base(string_base&& rhs) noexcept; string_base(const char_type* str); - + string_base(const char_type* str, size_t char_count); template ::value || is_std_string_view_compatible::value) && !bq::is_same>::value, void>> diff --git a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h index ed68757..43e6192 100644 --- a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h +++ b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h @@ -158,7 +158,6 @@ namespace bq { insert_batch(begin(), const_iterator(str, nullptr), char_count); } - template template inline bq::string_base::string_base(const S& rhs) diff --git a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h index 503d237..df6db44 100644 --- a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h +++ b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h @@ -117,27 +117,45 @@ namespace bq { /// static void unregister_console_callback(bq::type_func_ptr_console_callback callback); + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + /// + static void set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + static bool fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback); + /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer. /// /// c style char*(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> console(bq::log_level level, const STR& str); /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer /// /// std::string or bq::string(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> console(bq::log_level level, const STR& str); public: /// diff --git a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h index 9d8e276..21266e9 100644 --- a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h +++ b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h @@ -198,14 +198,31 @@ namespace bq { /// /// /// - BQ_API void __register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); /// /// Unregister a console callback /// /// /// - BQ_API void __unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + + /// + /// set console appender buffer enable or not + /// + /// + /// + BQ_API void __api_set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// + /// path through parameter that will pass to on_console_callback + /// True if the console appender buffer is not empty, otherwise False is returned. + BQ_API bool __api_fetch_and_remove_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback on_console_callback, const void* pass_through_param); /// /// The snapshot feature is disabled by default, as it consumes some performance overhead. diff --git a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h index 3c14649..591dee6 100644 --- a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h +++ b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h @@ -166,6 +166,14 @@ namespace bq { failed_io_error }; + /// + /// `content` is a C-style string and end with '\0'; + /// typedef void(BQ_STDCALL* type_func_ptr_console_callback)(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + /// + /// `content` is a C-style string and end with '\0'; + /// + typedef void(BQ_STDCALL* type_func_ptr_console_buffer_fetch_callback)(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + } diff --git a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h index 8ae928d..168ee72 100644 --- a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h +++ b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h @@ -155,22 +155,38 @@ namespace bq { inline void log::register_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__register_console_callbacks(callback); + bq::api::__api_register_console_callbacks(callback); } inline void log::unregister_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__unregister_console_callbacks(callback); + bq::api::__api_unregister_console_callbacks(callback); + } + + inline void log::set_console_buffer_enable(bool enable) + { + bq::api::__api_set_console_buffer_enable(enable); + } + + inline void BQ_STDCALL fetch_and_remove_console_buffer_callback_wrapper(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + bq::type_func_ptr_console_callback real_callback = (bq::type_func_ptr_console_callback)pass_through_param; + real_callback(log_id, category_idx, log_level, content, length); + } + + inline bool log::fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback) + { + return bq::api::__api_fetch_and_remove_console_buffer(fetch_and_remove_console_buffer_callback_wrapper, (const void*)on_console_callback); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str.c_str()); } diff --git a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeDirectory b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeDirectory index b36daf3..f96ea96 100644 Binary files a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeDirectory and b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeDirectory differ diff --git a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeRequirements-1 b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeRequirements-1 index c3c4193..80ae7ca 100644 Binary files a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeRequirements-1 and b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeRequirements-1 differ diff --git a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources index 81f4b56..5d796be 100644 --- a/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources +++ b/dist/static_lib/mac/Debug/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources @@ -81,22 +81,22 @@ hash - GbmqYJf7YB1f9a5yS044cyKCj80= + Oo/d/5v2xhYUhv/W+D4JFX41nto= hash2 - /QzuVBc1sW385rw6zwz+FR1sgMXFA16qZ2udNj3Q1Qw= + NxeDAoFrBQuLDnL1TC4kNUgkbK38W6rtqaak5bJipqk= Headers/bq_common/types/array_impl.h hash - i1dmbWtUfFwvgtUJiFbPU2ufQZM= + vdxYLTBpQQmmt2TJgY1m8/7y3q0= hash2 - x2wMHsHC7UysADx6R9tZ+cShynTHYgNiaZoJc8nQNWI= + CUXJ7fgCvclaodHbm/p+BPus8pTi+epVHVK2XLnd38U= Headers/bq_common/types/basic_types.h @@ -125,22 +125,22 @@ hash - 2TXYW06nCHVHU2wJ7Is5ze7tVT0= + 7fb0BGJounL+8JoWEg2J8M8uNos= hash2 - zt3vNEm99ehzfRlD0ZaNKkHYmo6mRWiJSGmQ4mLLwvw= + srQQWqHVmRuu4rV03Yxmfg+LzomlWNG2YLGNbyuVzhY= Headers/bq_common/types/hash_map_impl.h hash - t9ASl07T+dUmk+VPrxEYAFA9Du4= + oZAMKDpRb/YSMAeuDEv9ipQcdGE= hash2 - z6x6dtjZWjHKJPdBcZOQAd4RlHrE5lclFS+TumdLOzs= + ZuntT6tkS2N2LP27YiciQ3Y7QKT9r+iu6k7wLB0ERac= Headers/bq_common/types/optional.h @@ -158,22 +158,22 @@ hash - H0UAP9PY+r45dF7ajN+tw43vYs4= + CnMubcgcS7Rb9cMNLpDYoKLoYUQ= hash2 - kU4dsk3lOdzf3X9iTTMhykM8OiHBR1+0XunrAE6iy9w= + Ji1DDfG8qr4dZQ8iTN7BZKTymCtZrfOBAwGvHAWw8Qc= Headers/bq_common/types/string_impl.h hash - csiR1uCeDhoTBG8bJ3UI9310n4Y= + +LKwumRzQh4MSMT/C/0cI9cMREw= hash2 - WuyX9aI+UOoSOIPzawF8TX0/NSsAwxoC2zrP8/NP1co= + Uv0hQ16v7jzj9CRqzgzJgNZIVcA7zUTvULyJ24gWJh4= Headers/bq_common/types/type_tools.h @@ -224,44 +224,44 @@ hash - hz+IULdNvCm20Sjmh19PNcfq8lw= + wIH/AkrBHj1K2JVUWv3v2W5bj3A= hash2 - ONj3oS3g793vMiqr4FlsNe4IPMCLv4XFfwnjnbdpUFA= + B+IhgWKtC91IrLCq72TVevlq36z/cdVfuRqD+mq/wL8= Headers/bq_log/misc/bq_log_api.h hash - fPP7ShAF9jRSULTgYbXBVHNJqpc= + MUwutA5gBdF8Z9T5qRRwhY7SBJ8= hash2 - MdncWEJytGhqCdIbPw1JzWWsb2312mZxntqgxNAdGLA= + WJyLCoLU0HcOL32CCDF21ZRy0899fWcrypj5fkWS3+g= Headers/bq_log/misc/bq_log_def.h hash - D/o1prQcFjWbvOjevNWHaC8/7eA= + CeloE5hSV/cbrHSYe1sC4lyNnA0= hash2 - WNR5a+m+efx2hJPcXXTL/oAk/NmMlVLPNWYL6g2hSbg= + TSyrbQNsnFrzSOi5AyviokTasT7M/IrlgiYh1kwdwkI= Headers/bq_log/misc/bq_log_impl.h hash - dgyb8dledSAI4FyihXITH6ajuPc= + 6fobxFbINiwDBJhtDgTCxleXYr0= hash2 - erP8ajj0AZWUYD1XbAJ8CsnfA8ZL7NDMMJcKYHuLC6I= + +32c5+ajYkjFSjrJZPcjNCTvcMdXhW7OCQgr5zZpaIU= Headers/bq_log/misc/bq_log_wrapper_tools.h diff --git a/dist/static_lib/mac/Debug/libBqLog.a b/dist/static_lib/mac/Debug/libBqLog.a index 007fc4d..c205b35 100644 Binary files a/dist/static_lib/mac/Debug/libBqLog.a and b/dist/static_lib/mac/Debug/libBqLog.a differ diff --git a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/BqLog b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/BqLog index 875e15b..695052c 100644 Binary files a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/BqLog and b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/BqLog differ diff --git a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h index 61fa7c0..22a1893 100644 --- a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h +++ b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h @@ -48,26 +48,20 @@ namespace bq { template BQ_ARRAY_ITER_CLS_NAME& operator=(const BQ_ARRAY_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); BQ_ARRAY_ITER_CLS_NAME& operator++(); BQ_ARRAY_ITER_CLS_NAME operator++(int32_t); @@ -133,11 +127,11 @@ namespace bq { const value_type& operator[](size_type idx) const; - template - bool operator==(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); - template - bool operator!=(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); BQ_ARRAY_CLS_NAME& operator=(const BQ_ARRAY_CLS_NAME& rhs); diff --git a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h index 87b5746..d82f47f 100644 --- a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h +++ b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h @@ -50,60 +50,53 @@ namespace bq { return *this; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ == rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ == array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ != rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ != array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ < rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ < array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ <= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ <= array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ > rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ > array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ >= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ >= array2.data_; } - template - template - BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type BQ_ARRAY_ITER_CLS_NAME::operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not sub two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ - rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not sub two bq::array_iterator generated from different bq::array"); + return array1.data_ - array2.data_; } template @@ -315,26 +308,24 @@ namespace bq { return data_[idx]; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator==(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - if (size_ != rhs.size_) { + if (array1.size() != array2.size()) { return false; } - for (size_type i = 0; i < size_; ++i) { - if (this->operator[](i) != rhs[i]) { + for (typename BQ_ARRAY_CLS_NAME::size_type i = 0; i < array1.size(); ++i) { + if (array1[i] != array2[i]) { return false; } } return true; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator!=(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - return !operator==(rhs); + return !(array1 == array2); } template diff --git a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h index 1d69fb4..27b1ab4 100644 --- a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h +++ b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h @@ -77,6 +77,7 @@ namespace bq { typedef const pair_type& const_pair_type_ref; private: + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; container_type_ptr parent_; size_type node_index_; size_type bucket_idx_; @@ -103,11 +104,10 @@ namespace bq { template BQ_HASH_MAP_ITER_CLS_NAME& operator=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); + template + friend bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); BQ_HASH_MAP_ITER_CLS_NAME& operator++(); @@ -181,7 +181,7 @@ namespace bq { // we need manually control the destructive behaviour of every node item. bq::array didn't meets our needs because it has its own destructive logic. value_node_buffer_head nodes_; - constexpr static size_type BQ_BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; size_type size_; size_type head_; size_type tail_; diff --git a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h index 7d07675..3c0898d 100644 --- a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h +++ b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h @@ -34,31 +34,29 @@ namespace bq { return *this; } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - if (rhs.node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX - && node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (map1.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX + && map2.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) { return true; } - return (node_index_ == rhs.node_index_) - && (parent_ == rhs.parent_) - && (bucket_idx_ == rhs.bucket_idx_); + return (map1.node_index_ == map2.node_index_) + && (map1.parent_ == map2.parent_) + && (map1.bucket_idx_ == map2.bucket_idx_); } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - return !(*this == rhs); + return !(map1 == map2); } template BQ_HASH_MAP_INLINE BQ_HASH_MAP_ITER_CLS_NAME& BQ_HASH_MAP_ITER_CLS_NAME::operator++() { node_index_ = parent_->get_next_node_index(node_index_); - bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; + bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; return *this; } @@ -105,9 +103,9 @@ namespace bq { BQ_HASH_MAP_INLINE BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_CLS_NAME(size_type init_bucket_size /* = 0 */) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(init_bucket_size); expand_nodes(buckets_size()); } @@ -124,9 +122,9 @@ namespace bq { , nodes_(decltype(nodes_)()) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(rhs.buckets_size()); expand_nodes(rhs.nodes_size()); for (BQ_HASH_MAP_CLS_NAME::const_iterator iter = rhs.begin(); iter != rhs.end(); ++iter) { @@ -147,9 +145,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -250,9 +248,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -272,12 +270,12 @@ namespace bq { auto& cur_node = nodes_[where_it.node_index_]; size_type prev_index = cur_node.prev; size_type next_index = cur_node.next; - if (prev_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[prev_index].next = cur_node.next; } else { head_ = cur_node.next; } - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[next_index].prev = cur_node.prev; } else { tail_ = cur_node.prev; @@ -286,11 +284,11 @@ namespace bq { // buckets size_type bucket_index = where_it.bucket_idx_; if (where_it.node_index_ == buckets_[bucket_index]) { - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX + if (next_index != BQ_HASH_MAP_INVALID_INDEX && nodes_[next_index].bucket_idx == bucket_index) { buckets_[bucket_index] = next_index; } else { - buckets_[bucket_index] = BQ_BQ_HASH_MAP_INVALID_INDEX; + buckets_[bucket_index] = BQ_HASH_MAP_INVALID_INDEX; } } @@ -316,7 +314,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::begin() { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -325,7 +323,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::begin() const { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return const_iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -334,19 +332,19 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::end() { - return iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::end() const { - return const_iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return const_iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_CLS_NAME::iterator_legal_check(const const_iterator& iter) const { - if (iter.node_index_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (iter.node_index_ == BQ_HASH_MAP_INVALID_INDEX) { return false; } if (iter.parent_ != this) { @@ -385,16 +383,16 @@ namespace bq { if (nodes_size() > 0) { free_ = 0; for (typename decltype(nodes_)::size_type i = 0; i < nodes_.size(); ++i) { - nodes_[i].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[i].prev = BQ_HASH_MAP_INVALID_INDEX; nodes_[i].next = static_cast(i) + 1; } - nodes_[nodes_.size() - 1].next = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[nodes_.size() - 1].next = BQ_HASH_MAP_INVALID_INDEX; } else { - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } size_ = 0; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -414,9 +412,9 @@ namespace bq { nodes_.size_ = 0; } size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -474,8 +472,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_prev_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].prev; } @@ -483,8 +481,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_next_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].next; } @@ -508,7 +506,7 @@ namespace bq { size_type cnt = 0; #endif size_type index = head_; - while (index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (index != BQ_HASH_MAP_INVALID_INDEX) { #ifndef NDEBUG cnt++; #endif @@ -519,7 +517,7 @@ namespace bq { size_type bucket_idx = get_bucket_index_by_key(cur_node.entry.key()); cur_node.bucket_idx = bucket_idx; size_type& bucket_value_ref = buckets_[bucket_idx]; - if (bucket_value_ref == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (bucket_value_ref == BQ_HASH_MAP_INVALID_INDEX) { bucket_value_ref = cur_index; } else if (cur_node.prev != bucket_value_ref) { size_type old_prev = cur_node.prev; @@ -528,34 +526,34 @@ namespace bq { size_type new_prev = bucket_value_ref; size_type new_next = nodes_[new_prev].next; - if (old_prev != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_prev != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_prev].next = old_next; } - if (old_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_next].prev = old_prev; } cur_node.prev = new_prev; cur_node.next = new_next; nodes_[new_prev].next = cur_index; - if (new_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (new_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[new_next].prev = cur_index; } if (tail_ == cur_index) { tail_ = old_prev; } if (cur_node.prev == cur_node.next) { - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; } } } #ifndef NDEBUG assert(buckets_size() == capacity); assert(cnt == this->size()); - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[head_].prev == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[head_].prev == BQ_HASH_MAP_INVALID_INDEX); } - if (tail_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[tail_].next == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (tail_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[tail_].next == BQ_HASH_MAP_INVALID_INDEX); } #endif } @@ -577,7 +575,7 @@ namespace bq { new_data[i].next = nodes_[i].next; } for (size_type i = new_space; i > old_space; --i) { - new_data[i - 1].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + new_data[i - 1].prev = BQ_HASH_MAP_INVALID_INDEX; new_data[i - 1].next = free_; free_ = i - 1; } @@ -596,15 +594,15 @@ namespace bq { template BQ_HASH_MAP_INLINE BQ_HASH_MAP_KV_CLS_NAME::size_type, typename BQ_HASH_MAP_CLS_NAME::size_type> BQ_HASH_MAP_CLS_NAME::find_index_and_bucket_idx_by_key(const_key_type_ref key) const { - size_type index = BQ_BQ_HASH_MAP_INVALID_INDEX; - size_type bucket_idx = BQ_BQ_HASH_MAP_INVALID_INDEX; + size_type index = BQ_HASH_MAP_INVALID_INDEX; + size_type bucket_idx = BQ_HASH_MAP_INVALID_INDEX; if (buckets_size() > 0) { bucket_idx = get_bucket_index_by_key(key); size_type valid_index = buckets_[bucket_idx]; - while (valid_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (valid_index != BQ_HASH_MAP_INVALID_INDEX) { auto& node = nodes_[valid_index]; if (node.bucket_idx != bucket_idx) { - valid_index = BQ_BQ_HASH_MAP_INVALID_INDEX; + valid_index = BQ_HASH_MAP_INVALID_INDEX; break; } if (node.entry.key() == key) { @@ -626,16 +624,16 @@ namespace bq { } // This must be called after expand_buckets because it will reform the buckets and nodes. auto node_bucket_indices_pair = find_index_and_bucket_idx_by_key(key); - assert(node_bucket_indices_pair.key() == BQ_BQ_HASH_MAP_INVALID_INDEX && "key already exist"); + assert(node_bucket_indices_pair.key() == BQ_HASH_MAP_INVALID_INDEX && "key already exist"); auto bucket_idx = node_bucket_indices_pair.value(); - if (free_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (free_ == BQ_HASH_MAP_INVALID_INDEX) { expand_nodes(nodes_size() + 1); } size_type& target_bucket_value = buckets_[bucket_idx]; size_type next_node_index = target_bucket_value; - size_type prev_node_index = (target_bucket_value == BQ_BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; - assert(free_ != BQ_BQ_HASH_MAP_INVALID_INDEX); + size_type prev_node_index = (target_bucket_value == BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; + assert(free_ != BQ_HASH_MAP_INVALID_INDEX); size_type new_index = free_; free_ = nodes_[new_index].next; @@ -644,13 +642,13 @@ namespace bq { new_node.next = next_node_index; new_node.prev = prev_node_index; new_node.bucket_idx = bucket_idx; - if (prev_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& prev_node = nodes_[prev_node_index]; prev_node.next = new_index; } else { head_ = new_index; } - if (next_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& next_node = nodes_[next_node_index]; next_node.prev = new_index; } else { diff --git a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h index 5161f36..2ee5d83 100644 --- a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h +++ b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h @@ -121,7 +121,7 @@ namespace bq { string_base(string_base&& rhs) noexcept; string_base(const char_type* str); - + string_base(const char_type* str, size_t char_count); template ::value || is_std_string_view_compatible::value) && !bq::is_same>::value, void>> diff --git a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h index ed68757..43e6192 100644 --- a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h +++ b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h @@ -158,7 +158,6 @@ namespace bq { insert_batch(begin(), const_iterator(str, nullptr), char_count); } - template template inline bq::string_base::string_base(const S& rhs) diff --git a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h index 503d237..df6db44 100644 --- a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h +++ b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h @@ -117,27 +117,45 @@ namespace bq { /// static void unregister_console_callback(bq::type_func_ptr_console_callback callback); + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + /// + static void set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + static bool fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback); + /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer. /// /// c style char*(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> console(bq::log_level level, const STR& str); /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer /// /// std::string or bq::string(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> console(bq::log_level level, const STR& str); public: /// diff --git a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h index 9d8e276..21266e9 100644 --- a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h +++ b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h @@ -198,14 +198,31 @@ namespace bq { /// /// /// - BQ_API void __register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); /// /// Unregister a console callback /// /// /// - BQ_API void __unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + + /// + /// set console appender buffer enable or not + /// + /// + /// + BQ_API void __api_set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// + /// path through parameter that will pass to on_console_callback + /// True if the console appender buffer is not empty, otherwise False is returned. + BQ_API bool __api_fetch_and_remove_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback on_console_callback, const void* pass_through_param); /// /// The snapshot feature is disabled by default, as it consumes some performance overhead. diff --git a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h index 3c14649..591dee6 100644 --- a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h +++ b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h @@ -166,6 +166,14 @@ namespace bq { failed_io_error }; + /// + /// `content` is a C-style string and end with '\0'; + /// typedef void(BQ_STDCALL* type_func_ptr_console_callback)(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + /// + /// `content` is a C-style string and end with '\0'; + /// + typedef void(BQ_STDCALL* type_func_ptr_console_buffer_fetch_callback)(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + } diff --git a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h index 8ae928d..168ee72 100644 --- a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h +++ b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h @@ -155,22 +155,38 @@ namespace bq { inline void log::register_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__register_console_callbacks(callback); + bq::api::__api_register_console_callbacks(callback); } inline void log::unregister_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__unregister_console_callbacks(callback); + bq::api::__api_unregister_console_callbacks(callback); + } + + inline void log::set_console_buffer_enable(bool enable) + { + bq::api::__api_set_console_buffer_enable(enable); + } + + inline void BQ_STDCALL fetch_and_remove_console_buffer_callback_wrapper(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + bq::type_func_ptr_console_callback real_callback = (bq::type_func_ptr_console_callback)pass_through_param; + real_callback(log_id, category_idx, log_level, content, length); + } + + inline bool log::fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback) + { + return bq::api::__api_fetch_and_remove_console_buffer(fetch_and_remove_console_buffer_callback_wrapper, (const void*)on_console_callback); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str.c_str()); } diff --git a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeDirectory b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeDirectory index 85c798f..9550d96 100644 Binary files a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeDirectory and b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeDirectory differ diff --git a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeRequirements-1 b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeRequirements-1 index c830038..6b74c66 100644 Binary files a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeRequirements-1 and b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeRequirements-1 differ diff --git a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources index 81f4b56..5d796be 100644 --- a/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources +++ b/dist/static_lib/mac/MinSizeRel/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources @@ -81,22 +81,22 @@ hash - GbmqYJf7YB1f9a5yS044cyKCj80= + Oo/d/5v2xhYUhv/W+D4JFX41nto= hash2 - /QzuVBc1sW385rw6zwz+FR1sgMXFA16qZ2udNj3Q1Qw= + NxeDAoFrBQuLDnL1TC4kNUgkbK38W6rtqaak5bJipqk= Headers/bq_common/types/array_impl.h hash - i1dmbWtUfFwvgtUJiFbPU2ufQZM= + vdxYLTBpQQmmt2TJgY1m8/7y3q0= hash2 - x2wMHsHC7UysADx6R9tZ+cShynTHYgNiaZoJc8nQNWI= + CUXJ7fgCvclaodHbm/p+BPus8pTi+epVHVK2XLnd38U= Headers/bq_common/types/basic_types.h @@ -125,22 +125,22 @@ hash - 2TXYW06nCHVHU2wJ7Is5ze7tVT0= + 7fb0BGJounL+8JoWEg2J8M8uNos= hash2 - zt3vNEm99ehzfRlD0ZaNKkHYmo6mRWiJSGmQ4mLLwvw= + srQQWqHVmRuu4rV03Yxmfg+LzomlWNG2YLGNbyuVzhY= Headers/bq_common/types/hash_map_impl.h hash - t9ASl07T+dUmk+VPrxEYAFA9Du4= + oZAMKDpRb/YSMAeuDEv9ipQcdGE= hash2 - z6x6dtjZWjHKJPdBcZOQAd4RlHrE5lclFS+TumdLOzs= + ZuntT6tkS2N2LP27YiciQ3Y7QKT9r+iu6k7wLB0ERac= Headers/bq_common/types/optional.h @@ -158,22 +158,22 @@ hash - H0UAP9PY+r45dF7ajN+tw43vYs4= + CnMubcgcS7Rb9cMNLpDYoKLoYUQ= hash2 - kU4dsk3lOdzf3X9iTTMhykM8OiHBR1+0XunrAE6iy9w= + Ji1DDfG8qr4dZQ8iTN7BZKTymCtZrfOBAwGvHAWw8Qc= Headers/bq_common/types/string_impl.h hash - csiR1uCeDhoTBG8bJ3UI9310n4Y= + +LKwumRzQh4MSMT/C/0cI9cMREw= hash2 - WuyX9aI+UOoSOIPzawF8TX0/NSsAwxoC2zrP8/NP1co= + Uv0hQ16v7jzj9CRqzgzJgNZIVcA7zUTvULyJ24gWJh4= Headers/bq_common/types/type_tools.h @@ -224,44 +224,44 @@ hash - hz+IULdNvCm20Sjmh19PNcfq8lw= + wIH/AkrBHj1K2JVUWv3v2W5bj3A= hash2 - ONj3oS3g793vMiqr4FlsNe4IPMCLv4XFfwnjnbdpUFA= + B+IhgWKtC91IrLCq72TVevlq36z/cdVfuRqD+mq/wL8= Headers/bq_log/misc/bq_log_api.h hash - fPP7ShAF9jRSULTgYbXBVHNJqpc= + MUwutA5gBdF8Z9T5qRRwhY7SBJ8= hash2 - MdncWEJytGhqCdIbPw1JzWWsb2312mZxntqgxNAdGLA= + WJyLCoLU0HcOL32CCDF21ZRy0899fWcrypj5fkWS3+g= Headers/bq_log/misc/bq_log_def.h hash - D/o1prQcFjWbvOjevNWHaC8/7eA= + CeloE5hSV/cbrHSYe1sC4lyNnA0= hash2 - WNR5a+m+efx2hJPcXXTL/oAk/NmMlVLPNWYL6g2hSbg= + TSyrbQNsnFrzSOi5AyviokTasT7M/IrlgiYh1kwdwkI= Headers/bq_log/misc/bq_log_impl.h hash - dgyb8dledSAI4FyihXITH6ajuPc= + 6fobxFbINiwDBJhtDgTCxleXYr0= hash2 - erP8ajj0AZWUYD1XbAJ8CsnfA8ZL7NDMMJcKYHuLC6I= + +32c5+ajYkjFSjrJZPcjNCTvcMdXhW7OCQgr5zZpaIU= Headers/bq_log/misc/bq_log_wrapper_tools.h diff --git a/dist/static_lib/mac/MinSizeRel/libBqLog.a b/dist/static_lib/mac/MinSizeRel/libBqLog.a index 1edadb9..5b9780c 100644 Binary files a/dist/static_lib/mac/MinSizeRel/libBqLog.a and b/dist/static_lib/mac/MinSizeRel/libBqLog.a differ diff --git a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/BqLog b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/BqLog index e7b3972..882f1e6 100644 Binary files a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/BqLog and b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/BqLog differ diff --git a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h index 61fa7c0..22a1893 100644 --- a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h +++ b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h @@ -48,26 +48,20 @@ namespace bq { template BQ_ARRAY_ITER_CLS_NAME& operator=(const BQ_ARRAY_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); BQ_ARRAY_ITER_CLS_NAME& operator++(); BQ_ARRAY_ITER_CLS_NAME operator++(int32_t); @@ -133,11 +127,11 @@ namespace bq { const value_type& operator[](size_type idx) const; - template - bool operator==(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); - template - bool operator!=(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); BQ_ARRAY_CLS_NAME& operator=(const BQ_ARRAY_CLS_NAME& rhs); diff --git a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h index 87b5746..d82f47f 100644 --- a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h +++ b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h @@ -50,60 +50,53 @@ namespace bq { return *this; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ == rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ == array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ != rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ != array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ < rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ < array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ <= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ <= array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ > rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ > array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ >= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ >= array2.data_; } - template - template - BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type BQ_ARRAY_ITER_CLS_NAME::operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not sub two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ - rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not sub two bq::array_iterator generated from different bq::array"); + return array1.data_ - array2.data_; } template @@ -315,26 +308,24 @@ namespace bq { return data_[idx]; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator==(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - if (size_ != rhs.size_) { + if (array1.size() != array2.size()) { return false; } - for (size_type i = 0; i < size_; ++i) { - if (this->operator[](i) != rhs[i]) { + for (typename BQ_ARRAY_CLS_NAME::size_type i = 0; i < array1.size(); ++i) { + if (array1[i] != array2[i]) { return false; } } return true; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator!=(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - return !operator==(rhs); + return !(array1 == array2); } template diff --git a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h index 1d69fb4..27b1ab4 100644 --- a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h +++ b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h @@ -77,6 +77,7 @@ namespace bq { typedef const pair_type& const_pair_type_ref; private: + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; container_type_ptr parent_; size_type node_index_; size_type bucket_idx_; @@ -103,11 +104,10 @@ namespace bq { template BQ_HASH_MAP_ITER_CLS_NAME& operator=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); + template + friend bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); BQ_HASH_MAP_ITER_CLS_NAME& operator++(); @@ -181,7 +181,7 @@ namespace bq { // we need manually control the destructive behaviour of every node item. bq::array didn't meets our needs because it has its own destructive logic. value_node_buffer_head nodes_; - constexpr static size_type BQ_BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; size_type size_; size_type head_; size_type tail_; diff --git a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h index 7d07675..3c0898d 100644 --- a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h +++ b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h @@ -34,31 +34,29 @@ namespace bq { return *this; } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - if (rhs.node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX - && node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (map1.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX + && map2.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) { return true; } - return (node_index_ == rhs.node_index_) - && (parent_ == rhs.parent_) - && (bucket_idx_ == rhs.bucket_idx_); + return (map1.node_index_ == map2.node_index_) + && (map1.parent_ == map2.parent_) + && (map1.bucket_idx_ == map2.bucket_idx_); } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - return !(*this == rhs); + return !(map1 == map2); } template BQ_HASH_MAP_INLINE BQ_HASH_MAP_ITER_CLS_NAME& BQ_HASH_MAP_ITER_CLS_NAME::operator++() { node_index_ = parent_->get_next_node_index(node_index_); - bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; + bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; return *this; } @@ -105,9 +103,9 @@ namespace bq { BQ_HASH_MAP_INLINE BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_CLS_NAME(size_type init_bucket_size /* = 0 */) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(init_bucket_size); expand_nodes(buckets_size()); } @@ -124,9 +122,9 @@ namespace bq { , nodes_(decltype(nodes_)()) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(rhs.buckets_size()); expand_nodes(rhs.nodes_size()); for (BQ_HASH_MAP_CLS_NAME::const_iterator iter = rhs.begin(); iter != rhs.end(); ++iter) { @@ -147,9 +145,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -250,9 +248,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -272,12 +270,12 @@ namespace bq { auto& cur_node = nodes_[where_it.node_index_]; size_type prev_index = cur_node.prev; size_type next_index = cur_node.next; - if (prev_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[prev_index].next = cur_node.next; } else { head_ = cur_node.next; } - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[next_index].prev = cur_node.prev; } else { tail_ = cur_node.prev; @@ -286,11 +284,11 @@ namespace bq { // buckets size_type bucket_index = where_it.bucket_idx_; if (where_it.node_index_ == buckets_[bucket_index]) { - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX + if (next_index != BQ_HASH_MAP_INVALID_INDEX && nodes_[next_index].bucket_idx == bucket_index) { buckets_[bucket_index] = next_index; } else { - buckets_[bucket_index] = BQ_BQ_HASH_MAP_INVALID_INDEX; + buckets_[bucket_index] = BQ_HASH_MAP_INVALID_INDEX; } } @@ -316,7 +314,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::begin() { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -325,7 +323,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::begin() const { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return const_iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -334,19 +332,19 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::end() { - return iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::end() const { - return const_iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return const_iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_CLS_NAME::iterator_legal_check(const const_iterator& iter) const { - if (iter.node_index_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (iter.node_index_ == BQ_HASH_MAP_INVALID_INDEX) { return false; } if (iter.parent_ != this) { @@ -385,16 +383,16 @@ namespace bq { if (nodes_size() > 0) { free_ = 0; for (typename decltype(nodes_)::size_type i = 0; i < nodes_.size(); ++i) { - nodes_[i].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[i].prev = BQ_HASH_MAP_INVALID_INDEX; nodes_[i].next = static_cast(i) + 1; } - nodes_[nodes_.size() - 1].next = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[nodes_.size() - 1].next = BQ_HASH_MAP_INVALID_INDEX; } else { - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } size_ = 0; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -414,9 +412,9 @@ namespace bq { nodes_.size_ = 0; } size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -474,8 +472,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_prev_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].prev; } @@ -483,8 +481,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_next_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].next; } @@ -508,7 +506,7 @@ namespace bq { size_type cnt = 0; #endif size_type index = head_; - while (index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (index != BQ_HASH_MAP_INVALID_INDEX) { #ifndef NDEBUG cnt++; #endif @@ -519,7 +517,7 @@ namespace bq { size_type bucket_idx = get_bucket_index_by_key(cur_node.entry.key()); cur_node.bucket_idx = bucket_idx; size_type& bucket_value_ref = buckets_[bucket_idx]; - if (bucket_value_ref == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (bucket_value_ref == BQ_HASH_MAP_INVALID_INDEX) { bucket_value_ref = cur_index; } else if (cur_node.prev != bucket_value_ref) { size_type old_prev = cur_node.prev; @@ -528,34 +526,34 @@ namespace bq { size_type new_prev = bucket_value_ref; size_type new_next = nodes_[new_prev].next; - if (old_prev != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_prev != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_prev].next = old_next; } - if (old_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_next].prev = old_prev; } cur_node.prev = new_prev; cur_node.next = new_next; nodes_[new_prev].next = cur_index; - if (new_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (new_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[new_next].prev = cur_index; } if (tail_ == cur_index) { tail_ = old_prev; } if (cur_node.prev == cur_node.next) { - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; } } } #ifndef NDEBUG assert(buckets_size() == capacity); assert(cnt == this->size()); - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[head_].prev == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[head_].prev == BQ_HASH_MAP_INVALID_INDEX); } - if (tail_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[tail_].next == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (tail_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[tail_].next == BQ_HASH_MAP_INVALID_INDEX); } #endif } @@ -577,7 +575,7 @@ namespace bq { new_data[i].next = nodes_[i].next; } for (size_type i = new_space; i > old_space; --i) { - new_data[i - 1].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + new_data[i - 1].prev = BQ_HASH_MAP_INVALID_INDEX; new_data[i - 1].next = free_; free_ = i - 1; } @@ -596,15 +594,15 @@ namespace bq { template BQ_HASH_MAP_INLINE BQ_HASH_MAP_KV_CLS_NAME::size_type, typename BQ_HASH_MAP_CLS_NAME::size_type> BQ_HASH_MAP_CLS_NAME::find_index_and_bucket_idx_by_key(const_key_type_ref key) const { - size_type index = BQ_BQ_HASH_MAP_INVALID_INDEX; - size_type bucket_idx = BQ_BQ_HASH_MAP_INVALID_INDEX; + size_type index = BQ_HASH_MAP_INVALID_INDEX; + size_type bucket_idx = BQ_HASH_MAP_INVALID_INDEX; if (buckets_size() > 0) { bucket_idx = get_bucket_index_by_key(key); size_type valid_index = buckets_[bucket_idx]; - while (valid_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (valid_index != BQ_HASH_MAP_INVALID_INDEX) { auto& node = nodes_[valid_index]; if (node.bucket_idx != bucket_idx) { - valid_index = BQ_BQ_HASH_MAP_INVALID_INDEX; + valid_index = BQ_HASH_MAP_INVALID_INDEX; break; } if (node.entry.key() == key) { @@ -626,16 +624,16 @@ namespace bq { } // This must be called after expand_buckets because it will reform the buckets and nodes. auto node_bucket_indices_pair = find_index_and_bucket_idx_by_key(key); - assert(node_bucket_indices_pair.key() == BQ_BQ_HASH_MAP_INVALID_INDEX && "key already exist"); + assert(node_bucket_indices_pair.key() == BQ_HASH_MAP_INVALID_INDEX && "key already exist"); auto bucket_idx = node_bucket_indices_pair.value(); - if (free_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (free_ == BQ_HASH_MAP_INVALID_INDEX) { expand_nodes(nodes_size() + 1); } size_type& target_bucket_value = buckets_[bucket_idx]; size_type next_node_index = target_bucket_value; - size_type prev_node_index = (target_bucket_value == BQ_BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; - assert(free_ != BQ_BQ_HASH_MAP_INVALID_INDEX); + size_type prev_node_index = (target_bucket_value == BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; + assert(free_ != BQ_HASH_MAP_INVALID_INDEX); size_type new_index = free_; free_ = nodes_[new_index].next; @@ -644,13 +642,13 @@ namespace bq { new_node.next = next_node_index; new_node.prev = prev_node_index; new_node.bucket_idx = bucket_idx; - if (prev_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& prev_node = nodes_[prev_node_index]; prev_node.next = new_index; } else { head_ = new_index; } - if (next_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& next_node = nodes_[next_node_index]; next_node.prev = new_index; } else { diff --git a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h index 5161f36..2ee5d83 100644 --- a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h +++ b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h @@ -121,7 +121,7 @@ namespace bq { string_base(string_base&& rhs) noexcept; string_base(const char_type* str); - + string_base(const char_type* str, size_t char_count); template ::value || is_std_string_view_compatible::value) && !bq::is_same>::value, void>> diff --git a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h index ed68757..43e6192 100644 --- a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h +++ b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h @@ -158,7 +158,6 @@ namespace bq { insert_batch(begin(), const_iterator(str, nullptr), char_count); } - template template inline bq::string_base::string_base(const S& rhs) diff --git a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h index 503d237..df6db44 100644 --- a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h +++ b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h @@ -117,27 +117,45 @@ namespace bq { /// static void unregister_console_callback(bq::type_func_ptr_console_callback callback); + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + /// + static void set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + static bool fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback); + /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer. /// /// c style char*(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> console(bq::log_level level, const STR& str); /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer /// /// std::string or bq::string(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> console(bq::log_level level, const STR& str); public: /// diff --git a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h index 9d8e276..21266e9 100644 --- a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h +++ b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h @@ -198,14 +198,31 @@ namespace bq { /// /// /// - BQ_API void __register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); /// /// Unregister a console callback /// /// /// - BQ_API void __unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + + /// + /// set console appender buffer enable or not + /// + /// + /// + BQ_API void __api_set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// + /// path through parameter that will pass to on_console_callback + /// True if the console appender buffer is not empty, otherwise False is returned. + BQ_API bool __api_fetch_and_remove_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback on_console_callback, const void* pass_through_param); /// /// The snapshot feature is disabled by default, as it consumes some performance overhead. diff --git a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h index 3c14649..591dee6 100644 --- a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h +++ b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h @@ -166,6 +166,14 @@ namespace bq { failed_io_error }; + /// + /// `content` is a C-style string and end with '\0'; + /// typedef void(BQ_STDCALL* type_func_ptr_console_callback)(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + /// + /// `content` is a C-style string and end with '\0'; + /// + typedef void(BQ_STDCALL* type_func_ptr_console_buffer_fetch_callback)(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + } diff --git a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h index 8ae928d..168ee72 100644 --- a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h +++ b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h @@ -155,22 +155,38 @@ namespace bq { inline void log::register_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__register_console_callbacks(callback); + bq::api::__api_register_console_callbacks(callback); } inline void log::unregister_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__unregister_console_callbacks(callback); + bq::api::__api_unregister_console_callbacks(callback); + } + + inline void log::set_console_buffer_enable(bool enable) + { + bq::api::__api_set_console_buffer_enable(enable); + } + + inline void BQ_STDCALL fetch_and_remove_console_buffer_callback_wrapper(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + bq::type_func_ptr_console_callback real_callback = (bq::type_func_ptr_console_callback)pass_through_param; + real_callback(log_id, category_idx, log_level, content, length); + } + + inline bool log::fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback) + { + return bq::api::__api_fetch_and_remove_console_buffer(fetch_and_remove_console_buffer_callback_wrapper, (const void*)on_console_callback); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str.c_str()); } diff --git a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeDirectory b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeDirectory index e2762e2..8c6b0d7 100644 Binary files a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeDirectory and b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeDirectory differ diff --git a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeRequirements-1 b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeRequirements-1 index 1b44a8a..d9e51d2 100644 Binary files a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeRequirements-1 and b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeRequirements-1 differ diff --git a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources index 81f4b56..5d796be 100644 --- a/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources +++ b/dist/static_lib/mac/RelWithDebInfo/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources @@ -81,22 +81,22 @@ hash - GbmqYJf7YB1f9a5yS044cyKCj80= + Oo/d/5v2xhYUhv/W+D4JFX41nto= hash2 - /QzuVBc1sW385rw6zwz+FR1sgMXFA16qZ2udNj3Q1Qw= + NxeDAoFrBQuLDnL1TC4kNUgkbK38W6rtqaak5bJipqk= Headers/bq_common/types/array_impl.h hash - i1dmbWtUfFwvgtUJiFbPU2ufQZM= + vdxYLTBpQQmmt2TJgY1m8/7y3q0= hash2 - x2wMHsHC7UysADx6R9tZ+cShynTHYgNiaZoJc8nQNWI= + CUXJ7fgCvclaodHbm/p+BPus8pTi+epVHVK2XLnd38U= Headers/bq_common/types/basic_types.h @@ -125,22 +125,22 @@ hash - 2TXYW06nCHVHU2wJ7Is5ze7tVT0= + 7fb0BGJounL+8JoWEg2J8M8uNos= hash2 - zt3vNEm99ehzfRlD0ZaNKkHYmo6mRWiJSGmQ4mLLwvw= + srQQWqHVmRuu4rV03Yxmfg+LzomlWNG2YLGNbyuVzhY= Headers/bq_common/types/hash_map_impl.h hash - t9ASl07T+dUmk+VPrxEYAFA9Du4= + oZAMKDpRb/YSMAeuDEv9ipQcdGE= hash2 - z6x6dtjZWjHKJPdBcZOQAd4RlHrE5lclFS+TumdLOzs= + ZuntT6tkS2N2LP27YiciQ3Y7QKT9r+iu6k7wLB0ERac= Headers/bq_common/types/optional.h @@ -158,22 +158,22 @@ hash - H0UAP9PY+r45dF7ajN+tw43vYs4= + CnMubcgcS7Rb9cMNLpDYoKLoYUQ= hash2 - kU4dsk3lOdzf3X9iTTMhykM8OiHBR1+0XunrAE6iy9w= + Ji1DDfG8qr4dZQ8iTN7BZKTymCtZrfOBAwGvHAWw8Qc= Headers/bq_common/types/string_impl.h hash - csiR1uCeDhoTBG8bJ3UI9310n4Y= + +LKwumRzQh4MSMT/C/0cI9cMREw= hash2 - WuyX9aI+UOoSOIPzawF8TX0/NSsAwxoC2zrP8/NP1co= + Uv0hQ16v7jzj9CRqzgzJgNZIVcA7zUTvULyJ24gWJh4= Headers/bq_common/types/type_tools.h @@ -224,44 +224,44 @@ hash - hz+IULdNvCm20Sjmh19PNcfq8lw= + wIH/AkrBHj1K2JVUWv3v2W5bj3A= hash2 - ONj3oS3g793vMiqr4FlsNe4IPMCLv4XFfwnjnbdpUFA= + B+IhgWKtC91IrLCq72TVevlq36z/cdVfuRqD+mq/wL8= Headers/bq_log/misc/bq_log_api.h hash - fPP7ShAF9jRSULTgYbXBVHNJqpc= + MUwutA5gBdF8Z9T5qRRwhY7SBJ8= hash2 - MdncWEJytGhqCdIbPw1JzWWsb2312mZxntqgxNAdGLA= + WJyLCoLU0HcOL32CCDF21ZRy0899fWcrypj5fkWS3+g= Headers/bq_log/misc/bq_log_def.h hash - D/o1prQcFjWbvOjevNWHaC8/7eA= + CeloE5hSV/cbrHSYe1sC4lyNnA0= hash2 - WNR5a+m+efx2hJPcXXTL/oAk/NmMlVLPNWYL6g2hSbg= + TSyrbQNsnFrzSOi5AyviokTasT7M/IrlgiYh1kwdwkI= Headers/bq_log/misc/bq_log_impl.h hash - dgyb8dledSAI4FyihXITH6ajuPc= + 6fobxFbINiwDBJhtDgTCxleXYr0= hash2 - erP8ajj0AZWUYD1XbAJ8CsnfA8ZL7NDMMJcKYHuLC6I= + +32c5+ajYkjFSjrJZPcjNCTvcMdXhW7OCQgr5zZpaIU= Headers/bq_log/misc/bq_log_wrapper_tools.h diff --git a/dist/static_lib/mac/RelWithDebInfo/libBqLog.a b/dist/static_lib/mac/RelWithDebInfo/libBqLog.a index 5e652a5..87c0ebf 100644 Binary files a/dist/static_lib/mac/RelWithDebInfo/libBqLog.a and b/dist/static_lib/mac/RelWithDebInfo/libBqLog.a differ diff --git a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/BqLog b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/BqLog index b63a0ae..873938d 100644 Binary files a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/BqLog and b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/BqLog differ diff --git a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h index 61fa7c0..22a1893 100644 --- a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h +++ b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_def.h @@ -48,26 +48,20 @@ namespace bq { template BQ_ARRAY_ITER_CLS_NAME& operator=(const BQ_ARRAY_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); BQ_ARRAY_ITER_CLS_NAME& operator++(); BQ_ARRAY_ITER_CLS_NAME operator++(int32_t); @@ -133,11 +127,11 @@ namespace bq { const value_type& operator[](size_type idx) const; - template - bool operator==(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); - template - bool operator!=(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); BQ_ARRAY_CLS_NAME& operator=(const BQ_ARRAY_CLS_NAME& rhs); diff --git a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h index 87b5746..d82f47f 100644 --- a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h +++ b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/array_impl.h @@ -50,60 +50,53 @@ namespace bq { return *this; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ == rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ == array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ != rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ != array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ < rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ < array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ <= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ <= array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ > rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ > array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ >= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ >= array2.data_; } - template - template - BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type BQ_ARRAY_ITER_CLS_NAME::operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not sub two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ - rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not sub two bq::array_iterator generated from different bq::array"); + return array1.data_ - array2.data_; } template @@ -315,26 +308,24 @@ namespace bq { return data_[idx]; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator==(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - if (size_ != rhs.size_) { + if (array1.size() != array2.size()) { return false; } - for (size_type i = 0; i < size_; ++i) { - if (this->operator[](i) != rhs[i]) { + for (typename BQ_ARRAY_CLS_NAME::size_type i = 0; i < array1.size(); ++i) { + if (array1[i] != array2[i]) { return false; } } return true; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator!=(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - return !operator==(rhs); + return !(array1 == array2); } template diff --git a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h index 1d69fb4..27b1ab4 100644 --- a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h +++ b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_def.h @@ -77,6 +77,7 @@ namespace bq { typedef const pair_type& const_pair_type_ref; private: + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; container_type_ptr parent_; size_type node_index_; size_type bucket_idx_; @@ -103,11 +104,10 @@ namespace bq { template BQ_HASH_MAP_ITER_CLS_NAME& operator=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); + template + friend bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); BQ_HASH_MAP_ITER_CLS_NAME& operator++(); @@ -181,7 +181,7 @@ namespace bq { // we need manually control the destructive behaviour of every node item. bq::array didn't meets our needs because it has its own destructive logic. value_node_buffer_head nodes_; - constexpr static size_type BQ_BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; size_type size_; size_type head_; size_type tail_; diff --git a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h index 7d07675..3c0898d 100644 --- a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h +++ b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/hash_map_impl.h @@ -34,31 +34,29 @@ namespace bq { return *this; } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - if (rhs.node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX - && node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (map1.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX + && map2.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) { return true; } - return (node_index_ == rhs.node_index_) - && (parent_ == rhs.parent_) - && (bucket_idx_ == rhs.bucket_idx_); + return (map1.node_index_ == map2.node_index_) + && (map1.parent_ == map2.parent_) + && (map1.bucket_idx_ == map2.bucket_idx_); } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - return !(*this == rhs); + return !(map1 == map2); } template BQ_HASH_MAP_INLINE BQ_HASH_MAP_ITER_CLS_NAME& BQ_HASH_MAP_ITER_CLS_NAME::operator++() { node_index_ = parent_->get_next_node_index(node_index_); - bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; + bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; return *this; } @@ -105,9 +103,9 @@ namespace bq { BQ_HASH_MAP_INLINE BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_CLS_NAME(size_type init_bucket_size /* = 0 */) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(init_bucket_size); expand_nodes(buckets_size()); } @@ -124,9 +122,9 @@ namespace bq { , nodes_(decltype(nodes_)()) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(rhs.buckets_size()); expand_nodes(rhs.nodes_size()); for (BQ_HASH_MAP_CLS_NAME::const_iterator iter = rhs.begin(); iter != rhs.end(); ++iter) { @@ -147,9 +145,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -250,9 +248,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -272,12 +270,12 @@ namespace bq { auto& cur_node = nodes_[where_it.node_index_]; size_type prev_index = cur_node.prev; size_type next_index = cur_node.next; - if (prev_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[prev_index].next = cur_node.next; } else { head_ = cur_node.next; } - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[next_index].prev = cur_node.prev; } else { tail_ = cur_node.prev; @@ -286,11 +284,11 @@ namespace bq { // buckets size_type bucket_index = where_it.bucket_idx_; if (where_it.node_index_ == buckets_[bucket_index]) { - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX + if (next_index != BQ_HASH_MAP_INVALID_INDEX && nodes_[next_index].bucket_idx == bucket_index) { buckets_[bucket_index] = next_index; } else { - buckets_[bucket_index] = BQ_BQ_HASH_MAP_INVALID_INDEX; + buckets_[bucket_index] = BQ_HASH_MAP_INVALID_INDEX; } } @@ -316,7 +314,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::begin() { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -325,7 +323,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::begin() const { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return const_iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -334,19 +332,19 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::end() { - return iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::end() const { - return const_iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return const_iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_CLS_NAME::iterator_legal_check(const const_iterator& iter) const { - if (iter.node_index_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (iter.node_index_ == BQ_HASH_MAP_INVALID_INDEX) { return false; } if (iter.parent_ != this) { @@ -385,16 +383,16 @@ namespace bq { if (nodes_size() > 0) { free_ = 0; for (typename decltype(nodes_)::size_type i = 0; i < nodes_.size(); ++i) { - nodes_[i].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[i].prev = BQ_HASH_MAP_INVALID_INDEX; nodes_[i].next = static_cast(i) + 1; } - nodes_[nodes_.size() - 1].next = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[nodes_.size() - 1].next = BQ_HASH_MAP_INVALID_INDEX; } else { - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } size_ = 0; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -414,9 +412,9 @@ namespace bq { nodes_.size_ = 0; } size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -474,8 +472,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_prev_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].prev; } @@ -483,8 +481,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_next_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].next; } @@ -508,7 +506,7 @@ namespace bq { size_type cnt = 0; #endif size_type index = head_; - while (index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (index != BQ_HASH_MAP_INVALID_INDEX) { #ifndef NDEBUG cnt++; #endif @@ -519,7 +517,7 @@ namespace bq { size_type bucket_idx = get_bucket_index_by_key(cur_node.entry.key()); cur_node.bucket_idx = bucket_idx; size_type& bucket_value_ref = buckets_[bucket_idx]; - if (bucket_value_ref == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (bucket_value_ref == BQ_HASH_MAP_INVALID_INDEX) { bucket_value_ref = cur_index; } else if (cur_node.prev != bucket_value_ref) { size_type old_prev = cur_node.prev; @@ -528,34 +526,34 @@ namespace bq { size_type new_prev = bucket_value_ref; size_type new_next = nodes_[new_prev].next; - if (old_prev != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_prev != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_prev].next = old_next; } - if (old_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_next].prev = old_prev; } cur_node.prev = new_prev; cur_node.next = new_next; nodes_[new_prev].next = cur_index; - if (new_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (new_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[new_next].prev = cur_index; } if (tail_ == cur_index) { tail_ = old_prev; } if (cur_node.prev == cur_node.next) { - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; } } } #ifndef NDEBUG assert(buckets_size() == capacity); assert(cnt == this->size()); - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[head_].prev == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[head_].prev == BQ_HASH_MAP_INVALID_INDEX); } - if (tail_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[tail_].next == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (tail_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[tail_].next == BQ_HASH_MAP_INVALID_INDEX); } #endif } @@ -577,7 +575,7 @@ namespace bq { new_data[i].next = nodes_[i].next; } for (size_type i = new_space; i > old_space; --i) { - new_data[i - 1].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + new_data[i - 1].prev = BQ_HASH_MAP_INVALID_INDEX; new_data[i - 1].next = free_; free_ = i - 1; } @@ -596,15 +594,15 @@ namespace bq { template BQ_HASH_MAP_INLINE BQ_HASH_MAP_KV_CLS_NAME::size_type, typename BQ_HASH_MAP_CLS_NAME::size_type> BQ_HASH_MAP_CLS_NAME::find_index_and_bucket_idx_by_key(const_key_type_ref key) const { - size_type index = BQ_BQ_HASH_MAP_INVALID_INDEX; - size_type bucket_idx = BQ_BQ_HASH_MAP_INVALID_INDEX; + size_type index = BQ_HASH_MAP_INVALID_INDEX; + size_type bucket_idx = BQ_HASH_MAP_INVALID_INDEX; if (buckets_size() > 0) { bucket_idx = get_bucket_index_by_key(key); size_type valid_index = buckets_[bucket_idx]; - while (valid_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (valid_index != BQ_HASH_MAP_INVALID_INDEX) { auto& node = nodes_[valid_index]; if (node.bucket_idx != bucket_idx) { - valid_index = BQ_BQ_HASH_MAP_INVALID_INDEX; + valid_index = BQ_HASH_MAP_INVALID_INDEX; break; } if (node.entry.key() == key) { @@ -626,16 +624,16 @@ namespace bq { } // This must be called after expand_buckets because it will reform the buckets and nodes. auto node_bucket_indices_pair = find_index_and_bucket_idx_by_key(key); - assert(node_bucket_indices_pair.key() == BQ_BQ_HASH_MAP_INVALID_INDEX && "key already exist"); + assert(node_bucket_indices_pair.key() == BQ_HASH_MAP_INVALID_INDEX && "key already exist"); auto bucket_idx = node_bucket_indices_pair.value(); - if (free_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (free_ == BQ_HASH_MAP_INVALID_INDEX) { expand_nodes(nodes_size() + 1); } size_type& target_bucket_value = buckets_[bucket_idx]; size_type next_node_index = target_bucket_value; - size_type prev_node_index = (target_bucket_value == BQ_BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; - assert(free_ != BQ_BQ_HASH_MAP_INVALID_INDEX); + size_type prev_node_index = (target_bucket_value == BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; + assert(free_ != BQ_HASH_MAP_INVALID_INDEX); size_type new_index = free_; free_ = nodes_[new_index].next; @@ -644,13 +642,13 @@ namespace bq { new_node.next = next_node_index; new_node.prev = prev_node_index; new_node.bucket_idx = bucket_idx; - if (prev_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& prev_node = nodes_[prev_node_index]; prev_node.next = new_index; } else { head_ = new_index; } - if (next_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& next_node = nodes_[next_node_index]; next_node.prev = new_index; } else { diff --git a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h index 5161f36..2ee5d83 100644 --- a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h +++ b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string.h @@ -121,7 +121,7 @@ namespace bq { string_base(string_base&& rhs) noexcept; string_base(const char_type* str); - + string_base(const char_type* str, size_t char_count); template ::value || is_std_string_view_compatible::value) && !bq::is_same>::value, void>> diff --git a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h index ed68757..43e6192 100644 --- a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h +++ b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_common/types/string_impl.h @@ -158,7 +158,6 @@ namespace bq { insert_batch(begin(), const_iterator(str, nullptr), char_count); } - template template inline bq::string_base::string_base(const S& rhs) diff --git a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h index 503d237..df6db44 100644 --- a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h +++ b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/bq_log.h @@ -117,27 +117,45 @@ namespace bq { /// static void unregister_console_callback(bq::type_func_ptr_console_callback callback); + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + /// + static void set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + static bool fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback); + /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer. /// /// c style char*(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> console(bq::log_level level, const STR& str); /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer /// /// std::string or bq::string(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> console(bq::log_level level, const STR& str); public: /// diff --git a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h index 9d8e276..21266e9 100644 --- a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h +++ b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_api.h @@ -198,14 +198,31 @@ namespace bq { /// /// /// - BQ_API void __register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); /// /// Unregister a console callback /// /// /// - BQ_API void __unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + + /// + /// set console appender buffer enable or not + /// + /// + /// + BQ_API void __api_set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// + /// path through parameter that will pass to on_console_callback + /// True if the console appender buffer is not empty, otherwise False is returned. + BQ_API bool __api_fetch_and_remove_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback on_console_callback, const void* pass_through_param); /// /// The snapshot feature is disabled by default, as it consumes some performance overhead. diff --git a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h index 3c14649..591dee6 100644 --- a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h +++ b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_def.h @@ -166,6 +166,14 @@ namespace bq { failed_io_error }; + /// + /// `content` is a C-style string and end with '\0'; + /// typedef void(BQ_STDCALL* type_func_ptr_console_callback)(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + /// + /// `content` is a C-style string and end with '\0'; + /// + typedef void(BQ_STDCALL* type_func_ptr_console_buffer_fetch_callback)(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + } diff --git a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h index 8ae928d..168ee72 100644 --- a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h +++ b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/Headers/bq_log/misc/bq_log_impl.h @@ -155,22 +155,38 @@ namespace bq { inline void log::register_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__register_console_callbacks(callback); + bq::api::__api_register_console_callbacks(callback); } inline void log::unregister_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__unregister_console_callbacks(callback); + bq::api::__api_unregister_console_callbacks(callback); + } + + inline void log::set_console_buffer_enable(bool enable) + { + bq::api::__api_set_console_buffer_enable(enable); + } + + inline void BQ_STDCALL fetch_and_remove_console_buffer_callback_wrapper(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + bq::type_func_ptr_console_callback real_callback = (bq::type_func_ptr_console_callback)pass_through_param; + real_callback(log_id, category_idx, log_level, content, length); + } + + inline bool log::fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback) + { + return bq::api::__api_fetch_and_remove_console_buffer(fetch_and_remove_console_buffer_callback_wrapper, (const void*)on_console_callback); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str.c_str()); } diff --git a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeDirectory b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeDirectory index 173ed7b..543548e 100644 Binary files a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeDirectory and b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeDirectory differ diff --git a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeRequirements-1 b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeRequirements-1 index 64cd65b..14276ee 100644 Binary files a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeRequirements-1 and b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeRequirements-1 differ diff --git a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources index 81f4b56..5d796be 100644 --- a/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources +++ b/dist/static_lib/mac/Release/BqLog.framework/Versions/1.0.0/_CodeSignature/CodeResources @@ -81,22 +81,22 @@ hash - GbmqYJf7YB1f9a5yS044cyKCj80= + Oo/d/5v2xhYUhv/W+D4JFX41nto= hash2 - /QzuVBc1sW385rw6zwz+FR1sgMXFA16qZ2udNj3Q1Qw= + NxeDAoFrBQuLDnL1TC4kNUgkbK38W6rtqaak5bJipqk= Headers/bq_common/types/array_impl.h hash - i1dmbWtUfFwvgtUJiFbPU2ufQZM= + vdxYLTBpQQmmt2TJgY1m8/7y3q0= hash2 - x2wMHsHC7UysADx6R9tZ+cShynTHYgNiaZoJc8nQNWI= + CUXJ7fgCvclaodHbm/p+BPus8pTi+epVHVK2XLnd38U= Headers/bq_common/types/basic_types.h @@ -125,22 +125,22 @@ hash - 2TXYW06nCHVHU2wJ7Is5ze7tVT0= + 7fb0BGJounL+8JoWEg2J8M8uNos= hash2 - zt3vNEm99ehzfRlD0ZaNKkHYmo6mRWiJSGmQ4mLLwvw= + srQQWqHVmRuu4rV03Yxmfg+LzomlWNG2YLGNbyuVzhY= Headers/bq_common/types/hash_map_impl.h hash - t9ASl07T+dUmk+VPrxEYAFA9Du4= + oZAMKDpRb/YSMAeuDEv9ipQcdGE= hash2 - z6x6dtjZWjHKJPdBcZOQAd4RlHrE5lclFS+TumdLOzs= + ZuntT6tkS2N2LP27YiciQ3Y7QKT9r+iu6k7wLB0ERac= Headers/bq_common/types/optional.h @@ -158,22 +158,22 @@ hash - H0UAP9PY+r45dF7ajN+tw43vYs4= + CnMubcgcS7Rb9cMNLpDYoKLoYUQ= hash2 - kU4dsk3lOdzf3X9iTTMhykM8OiHBR1+0XunrAE6iy9w= + Ji1DDfG8qr4dZQ8iTN7BZKTymCtZrfOBAwGvHAWw8Qc= Headers/bq_common/types/string_impl.h hash - csiR1uCeDhoTBG8bJ3UI9310n4Y= + +LKwumRzQh4MSMT/C/0cI9cMREw= hash2 - WuyX9aI+UOoSOIPzawF8TX0/NSsAwxoC2zrP8/NP1co= + Uv0hQ16v7jzj9CRqzgzJgNZIVcA7zUTvULyJ24gWJh4= Headers/bq_common/types/type_tools.h @@ -224,44 +224,44 @@ hash - hz+IULdNvCm20Sjmh19PNcfq8lw= + wIH/AkrBHj1K2JVUWv3v2W5bj3A= hash2 - ONj3oS3g793vMiqr4FlsNe4IPMCLv4XFfwnjnbdpUFA= + B+IhgWKtC91IrLCq72TVevlq36z/cdVfuRqD+mq/wL8= Headers/bq_log/misc/bq_log_api.h hash - fPP7ShAF9jRSULTgYbXBVHNJqpc= + MUwutA5gBdF8Z9T5qRRwhY7SBJ8= hash2 - MdncWEJytGhqCdIbPw1JzWWsb2312mZxntqgxNAdGLA= + WJyLCoLU0HcOL32CCDF21ZRy0899fWcrypj5fkWS3+g= Headers/bq_log/misc/bq_log_def.h hash - D/o1prQcFjWbvOjevNWHaC8/7eA= + CeloE5hSV/cbrHSYe1sC4lyNnA0= hash2 - WNR5a+m+efx2hJPcXXTL/oAk/NmMlVLPNWYL6g2hSbg= + TSyrbQNsnFrzSOi5AyviokTasT7M/IrlgiYh1kwdwkI= Headers/bq_log/misc/bq_log_impl.h hash - dgyb8dledSAI4FyihXITH6ajuPc= + 6fobxFbINiwDBJhtDgTCxleXYr0= hash2 - erP8ajj0AZWUYD1XbAJ8CsnfA8ZL7NDMMJcKYHuLC6I= + +32c5+ajYkjFSjrJZPcjNCTvcMdXhW7OCQgr5zZpaIU= Headers/bq_log/misc/bq_log_wrapper_tools.h diff --git a/dist/static_lib/mac/Release/libBqLog.a b/dist/static_lib/mac/Release/libBqLog.a index 44a78f4..fb769b7 100644 Binary files a/dist/static_lib/mac/Release/libBqLog.a and b/dist/static_lib/mac/Release/libBqLog.a differ diff --git a/dist/static_lib/win64/Debug/BqLog.lib b/dist/static_lib/win64/Debug/BqLog.lib index b00e7f7..a772e9f 100644 Binary files a/dist/static_lib/win64/Debug/BqLog.lib and b/dist/static_lib/win64/Debug/BqLog.lib differ diff --git a/dist/static_lib/win64/Debug/BqLog.pdb b/dist/static_lib/win64/Debug/BqLog.pdb index 6c83523..41a0450 100644 Binary files a/dist/static_lib/win64/Debug/BqLog.pdb and b/dist/static_lib/win64/Debug/BqLog.pdb differ diff --git a/dist/static_lib/win64/MinSizeRel/BqLog.lib b/dist/static_lib/win64/MinSizeRel/BqLog.lib index 7c710ad..a27dd00 100644 Binary files a/dist/static_lib/win64/MinSizeRel/BqLog.lib and b/dist/static_lib/win64/MinSizeRel/BqLog.lib differ diff --git a/dist/static_lib/win64/RelWithDebInfo/BqLog.lib b/dist/static_lib/win64/RelWithDebInfo/BqLog.lib index 62af07c..9d8dcc9 100644 Binary files a/dist/static_lib/win64/RelWithDebInfo/BqLog.lib and b/dist/static_lib/win64/RelWithDebInfo/BqLog.lib differ diff --git a/dist/static_lib/win64/RelWithDebInfo/BqLog.pdb b/dist/static_lib/win64/RelWithDebInfo/BqLog.pdb index 4eaee6d..657b0dd 100644 Binary files a/dist/static_lib/win64/RelWithDebInfo/BqLog.pdb and b/dist/static_lib/win64/RelWithDebInfo/BqLog.pdb differ diff --git a/dist/static_lib/win64/Release/BqLog.lib b/dist/static_lib/win64/Release/BqLog.lib index efb35a7..cf0e179 100644 Binary files a/dist/static_lib/win64/Release/BqLog.lib and b/dist/static_lib/win64/Release/BqLog.lib differ diff --git a/include/bq_common/types/array_def.h b/include/bq_common/types/array_def.h index 61fa7c0..22a1893 100644 --- a/include/bq_common/types/array_def.h +++ b/include/bq_common/types/array_def.h @@ -48,26 +48,20 @@ namespace bq { template BQ_ARRAY_ITER_CLS_NAME& operator=(const BQ_ARRAY_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; - - template - diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); + template + friend typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2); BQ_ARRAY_ITER_CLS_NAME& operator++(); BQ_ARRAY_ITER_CLS_NAME operator++(int32_t); @@ -133,11 +127,11 @@ namespace bq { const value_type& operator[](size_type idx) const; - template - bool operator==(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); - template - bool operator!=(const BQ_ARRAY_CLS_NAME& rhs); + template + friend bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2); BQ_ARRAY_CLS_NAME& operator=(const BQ_ARRAY_CLS_NAME& rhs); diff --git a/include/bq_common/types/array_impl.h b/include/bq_common/types/array_impl.h index 87b5746..d82f47f 100644 --- a/include/bq_common/types/array_impl.h +++ b/include/bq_common/types/array_impl.h @@ -50,60 +50,53 @@ namespace bq { return *this; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator==(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ == rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ == array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator!=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ != rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ != array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ < rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ < array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator<=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator<=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ <= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ <= array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ > rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ > array2.data_; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_ITER_CLS_NAME::operator>=(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE bool operator>=(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not compare two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ >= rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not compare two bq::array_iterator generated from different bq::array"); + return array1.data_ >= array2.data_; } - template - template - BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type BQ_ARRAY_ITER_CLS_NAME::operator-(const BQ_ARRAY_ITER_CLS_NAME& rhs) const + template + BQ_ARRAY_INLINE typename BQ_ARRAY_ITER_CLS_NAME::diff_type operator-(const BQ_ARRAY_ITER_CLS_NAME& array1, const BQ_ARRAY_ITER_CLS_NAME& array2) { - assert((array_data_ptr_ == rhs.array_data_ptr_) && "you can not sub two BQ_ARRAY_ITER_CLS_NAME generated from different BQ_ARRAY_CLS_NAME"); - return data_ - rhs.operator->(); + assert((array1.array_data_ptr_ == array2.array_data_ptr_) && "you can not sub two bq::array_iterator generated from different bq::array"); + return array1.data_ - array2.data_; } template @@ -315,26 +308,24 @@ namespace bq { return data_[idx]; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator==(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator==(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - if (size_ != rhs.size_) { + if (array1.size() != array2.size()) { return false; } - for (size_type i = 0; i < size_; ++i) { - if (this->operator[](i) != rhs[i]) { + for (typename BQ_ARRAY_CLS_NAME::size_type i = 0; i < array1.size(); ++i) { + if (array1[i] != array2[i]) { return false; } } return true; } - template - template - BQ_ARRAY_INLINE bool BQ_ARRAY_CLS_NAME::operator!=(const BQ_ARRAY_CLS_NAME& rhs) + template + BQ_ARRAY_INLINE bool operator!=(const BQ_ARRAY_CLS_NAME& array1, const BQ_ARRAY_CLS_NAME& array2) { - return !operator==(rhs); + return !(array1 == array2); } template diff --git a/include/bq_common/types/hash_map_def.h b/include/bq_common/types/hash_map_def.h index 1d69fb4..27b1ab4 100644 --- a/include/bq_common/types/hash_map_def.h +++ b/include/bq_common/types/hash_map_def.h @@ -77,6 +77,7 @@ namespace bq { typedef const pair_type& const_pair_type_ref; private: + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; container_type_ptr parent_; size_type node_index_; size_type bucket_idx_; @@ -103,11 +104,10 @@ namespace bq { template BQ_HASH_MAP_ITER_CLS_NAME& operator=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs); - template - bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; - - template - bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const; + template + friend bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); + template + friend bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2); BQ_HASH_MAP_ITER_CLS_NAME& operator++(); @@ -181,7 +181,7 @@ namespace bq { // we need manually control the destructive behaviour of every node item. bq::array didn't meets our needs because it has its own destructive logic. value_node_buffer_head nodes_; - constexpr static size_type BQ_BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; + constexpr static size_type BQ_HASH_MAP_INVALID_INDEX = (size_type)-1; size_type size_; size_type head_; size_type tail_; diff --git a/include/bq_common/types/hash_map_impl.h b/include/bq_common/types/hash_map_impl.h index 7d07675..3c0898d 100644 --- a/include/bq_common/types/hash_map_impl.h +++ b/include/bq_common/types/hash_map_impl.h @@ -34,31 +34,29 @@ namespace bq { return *this; } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator==(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator==(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - if (rhs.node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX - && node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (map1.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX + && map2.node_index_ == BQ_HASH_MAP_ITER_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) { return true; } - return (node_index_ == rhs.node_index_) - && (parent_ == rhs.parent_) - && (bucket_idx_ == rhs.bucket_idx_); + return (map1.node_index_ == map2.node_index_) + && (map1.parent_ == map2.parent_) + && (map1.bucket_idx_ == map2.bucket_idx_); } - template - template - BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_ITER_CLS_NAME::operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& rhs) const + template + BQ_HASH_MAP_INLINE bool operator!=(const BQ_HASH_MAP_ITER_CLS_NAME& map1, const BQ_HASH_MAP_ITER_CLS_NAME& map2) { - return !(*this == rhs); + return !(map1 == map2); } template BQ_HASH_MAP_INLINE BQ_HASH_MAP_ITER_CLS_NAME& BQ_HASH_MAP_ITER_CLS_NAME::operator++() { node_index_ = parent_->get_next_node_index(node_index_); - bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; + bucket_idx_ = (node_index_ == BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_INVALID_INDEX) ? node_index_ : parent_->nodes_[node_index_].bucket_idx; return *this; } @@ -105,9 +103,9 @@ namespace bq { BQ_HASH_MAP_INLINE BQ_HASH_MAP_CLS_NAME::BQ_HASH_MAP_CLS_NAME(size_type init_bucket_size /* = 0 */) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(init_bucket_size); expand_nodes(buckets_size()); } @@ -124,9 +122,9 @@ namespace bq { , nodes_(decltype(nodes_)()) { size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; expand_buckets(rhs.buckets_size()); expand_nodes(rhs.nodes_size()); for (BQ_HASH_MAP_CLS_NAME::const_iterator iter = rhs.begin(); iter != rhs.end(); ++iter) { @@ -147,9 +145,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -250,9 +248,9 @@ namespace bq { nodes_.size_ = rhs.nodes_.size_; rhs.size_ = 0; - rhs.head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - rhs.free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + rhs.head_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.tail_ = BQ_HASH_MAP_INVALID_INDEX; + rhs.free_ = BQ_HASH_MAP_INVALID_INDEX; rhs.buckets_.data_ = nullptr; rhs.buckets_.size_ = 0; rhs.nodes_.data_ = nullptr; @@ -272,12 +270,12 @@ namespace bq { auto& cur_node = nodes_[where_it.node_index_]; size_type prev_index = cur_node.prev; size_type next_index = cur_node.next; - if (prev_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[prev_index].next = cur_node.next; } else { head_ = cur_node.next; } - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_index != BQ_HASH_MAP_INVALID_INDEX) { nodes_[next_index].prev = cur_node.prev; } else { tail_ = cur_node.prev; @@ -286,11 +284,11 @@ namespace bq { // buckets size_type bucket_index = where_it.bucket_idx_; if (where_it.node_index_ == buckets_[bucket_index]) { - if (next_index != BQ_BQ_HASH_MAP_INVALID_INDEX + if (next_index != BQ_HASH_MAP_INVALID_INDEX && nodes_[next_index].bucket_idx == bucket_index) { buckets_[bucket_index] = next_index; } else { - buckets_[bucket_index] = BQ_BQ_HASH_MAP_INVALID_INDEX; + buckets_[bucket_index] = BQ_HASH_MAP_INVALID_INDEX; } } @@ -316,7 +314,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::begin() { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -325,7 +323,7 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::begin() const { - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { return const_iterator(this, head_, nodes_[head_].bucket_idx); } return end(); @@ -334,19 +332,19 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::iterator BQ_HASH_MAP_CLS_NAME::end() { - return iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::const_iterator BQ_HASH_MAP_CLS_NAME::end() const { - return const_iterator(this, BQ_BQ_HASH_MAP_INVALID_INDEX, BQ_BQ_HASH_MAP_INVALID_INDEX); + return const_iterator(this, BQ_HASH_MAP_INVALID_INDEX, BQ_HASH_MAP_INVALID_INDEX); } template BQ_HASH_MAP_INLINE bool BQ_HASH_MAP_CLS_NAME::iterator_legal_check(const const_iterator& iter) const { - if (iter.node_index_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (iter.node_index_ == BQ_HASH_MAP_INVALID_INDEX) { return false; } if (iter.parent_ != this) { @@ -385,16 +383,16 @@ namespace bq { if (nodes_size() > 0) { free_ = 0; for (typename decltype(nodes_)::size_type i = 0; i < nodes_.size(); ++i) { - nodes_[i].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[i].prev = BQ_HASH_MAP_INVALID_INDEX; nodes_[i].next = static_cast(i) + 1; } - nodes_[nodes_.size() - 1].next = BQ_BQ_HASH_MAP_INVALID_INDEX; + nodes_[nodes_.size() - 1].next = BQ_HASH_MAP_INVALID_INDEX; } else { - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } size_ = 0; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -414,9 +412,9 @@ namespace bq { nodes_.size_ = 0; } size_ = 0; - head_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; - free_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + head_ = BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; + free_ = BQ_HASH_MAP_INVALID_INDEX; } template @@ -474,8 +472,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_prev_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].prev; } @@ -483,8 +481,8 @@ namespace bq { template BQ_HASH_MAP_INLINE typename BQ_HASH_MAP_CLS_NAME::size_type BQ_HASH_MAP_CLS_NAME::get_next_node_index(typename BQ_HASH_MAP_CLS_NAME::size_type node_index) const { - if (node_index == BQ_BQ_HASH_MAP_INVALID_INDEX) { - return BQ_BQ_HASH_MAP_INVALID_INDEX; + if (node_index == BQ_HASH_MAP_INVALID_INDEX) { + return BQ_HASH_MAP_INVALID_INDEX; } return nodes_[node_index].next; } @@ -508,7 +506,7 @@ namespace bq { size_type cnt = 0; #endif size_type index = head_; - while (index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (index != BQ_HASH_MAP_INVALID_INDEX) { #ifndef NDEBUG cnt++; #endif @@ -519,7 +517,7 @@ namespace bq { size_type bucket_idx = get_bucket_index_by_key(cur_node.entry.key()); cur_node.bucket_idx = bucket_idx; size_type& bucket_value_ref = buckets_[bucket_idx]; - if (bucket_value_ref == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (bucket_value_ref == BQ_HASH_MAP_INVALID_INDEX) { bucket_value_ref = cur_index; } else if (cur_node.prev != bucket_value_ref) { size_type old_prev = cur_node.prev; @@ -528,34 +526,34 @@ namespace bq { size_type new_prev = bucket_value_ref; size_type new_next = nodes_[new_prev].next; - if (old_prev != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_prev != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_prev].next = old_next; } - if (old_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (old_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[old_next].prev = old_prev; } cur_node.prev = new_prev; cur_node.next = new_next; nodes_[new_prev].next = cur_index; - if (new_next != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (new_next != BQ_HASH_MAP_INVALID_INDEX) { nodes_[new_next].prev = cur_index; } if (tail_ == cur_index) { tail_ = old_prev; } if (cur_node.prev == cur_node.next) { - tail_ = BQ_BQ_HASH_MAP_INVALID_INDEX; + tail_ = BQ_HASH_MAP_INVALID_INDEX; } } } #ifndef NDEBUG assert(buckets_size() == capacity); assert(cnt == this->size()); - if (head_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[head_].prev == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (head_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[head_].prev == BQ_HASH_MAP_INVALID_INDEX); } - if (tail_ != BQ_BQ_HASH_MAP_INVALID_INDEX) { - assert(nodes_[tail_].next == BQ_BQ_HASH_MAP_INVALID_INDEX); + if (tail_ != BQ_HASH_MAP_INVALID_INDEX) { + assert(nodes_[tail_].next == BQ_HASH_MAP_INVALID_INDEX); } #endif } @@ -577,7 +575,7 @@ namespace bq { new_data[i].next = nodes_[i].next; } for (size_type i = new_space; i > old_space; --i) { - new_data[i - 1].prev = BQ_BQ_HASH_MAP_INVALID_INDEX; + new_data[i - 1].prev = BQ_HASH_MAP_INVALID_INDEX; new_data[i - 1].next = free_; free_ = i - 1; } @@ -596,15 +594,15 @@ namespace bq { template BQ_HASH_MAP_INLINE BQ_HASH_MAP_KV_CLS_NAME::size_type, typename BQ_HASH_MAP_CLS_NAME::size_type> BQ_HASH_MAP_CLS_NAME::find_index_and_bucket_idx_by_key(const_key_type_ref key) const { - size_type index = BQ_BQ_HASH_MAP_INVALID_INDEX; - size_type bucket_idx = BQ_BQ_HASH_MAP_INVALID_INDEX; + size_type index = BQ_HASH_MAP_INVALID_INDEX; + size_type bucket_idx = BQ_HASH_MAP_INVALID_INDEX; if (buckets_size() > 0) { bucket_idx = get_bucket_index_by_key(key); size_type valid_index = buckets_[bucket_idx]; - while (valid_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + while (valid_index != BQ_HASH_MAP_INVALID_INDEX) { auto& node = nodes_[valid_index]; if (node.bucket_idx != bucket_idx) { - valid_index = BQ_BQ_HASH_MAP_INVALID_INDEX; + valid_index = BQ_HASH_MAP_INVALID_INDEX; break; } if (node.entry.key() == key) { @@ -626,16 +624,16 @@ namespace bq { } // This must be called after expand_buckets because it will reform the buckets and nodes. auto node_bucket_indices_pair = find_index_and_bucket_idx_by_key(key); - assert(node_bucket_indices_pair.key() == BQ_BQ_HASH_MAP_INVALID_INDEX && "key already exist"); + assert(node_bucket_indices_pair.key() == BQ_HASH_MAP_INVALID_INDEX && "key already exist"); auto bucket_idx = node_bucket_indices_pair.value(); - if (free_ == BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (free_ == BQ_HASH_MAP_INVALID_INDEX) { expand_nodes(nodes_size() + 1); } size_type& target_bucket_value = buckets_[bucket_idx]; size_type next_node_index = target_bucket_value; - size_type prev_node_index = (target_bucket_value == BQ_BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; - assert(free_ != BQ_BQ_HASH_MAP_INVALID_INDEX); + size_type prev_node_index = (target_bucket_value == BQ_HASH_MAP_INVALID_INDEX) ? tail_ : nodes_[target_bucket_value].prev; + assert(free_ != BQ_HASH_MAP_INVALID_INDEX); size_type new_index = free_; free_ = nodes_[new_index].next; @@ -644,13 +642,13 @@ namespace bq { new_node.next = next_node_index; new_node.prev = prev_node_index; new_node.bucket_idx = bucket_idx; - if (prev_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (prev_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& prev_node = nodes_[prev_node_index]; prev_node.next = new_index; } else { head_ = new_index; } - if (next_node_index != BQ_BQ_HASH_MAP_INVALID_INDEX) { + if (next_node_index != BQ_HASH_MAP_INVALID_INDEX) { auto& next_node = nodes_[next_node_index]; next_node.prev = new_index; } else { diff --git a/include/bq_common/types/string.h b/include/bq_common/types/string.h index 5161f36..2ee5d83 100644 --- a/include/bq_common/types/string.h +++ b/include/bq_common/types/string.h @@ -121,7 +121,7 @@ namespace bq { string_base(string_base&& rhs) noexcept; string_base(const char_type* str); - + string_base(const char_type* str, size_t char_count); template ::value || is_std_string_view_compatible::value) && !bq::is_same>::value, void>> diff --git a/include/bq_common/types/string_impl.h b/include/bq_common/types/string_impl.h index ed68757..43e6192 100644 --- a/include/bq_common/types/string_impl.h +++ b/include/bq_common/types/string_impl.h @@ -158,7 +158,6 @@ namespace bq { insert_batch(begin(), const_iterator(str, nullptr), char_count); } - template template inline bq::string_base::string_base(const S& rhs) diff --git a/include/bq_log/bq_log.h b/include/bq_log/bq_log.h index 503d237..df6db44 100644 --- a/include/bq_log/bq_log.h +++ b/include/bq_log/bq_log.h @@ -117,27 +117,45 @@ namespace bq { /// static void unregister_console_callback(bq::type_func_ptr_console_callback callback); + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + /// + static void set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + static bool fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback); + /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer. /// /// c style char*(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> console(bq::log_level level, const STR& str); /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer /// /// std::string or bq::string(Only utf-8 string supported) /// /// /// template - static bq::enable_if_t>, char*>::value> console(bq::log_level level, const STR& str); + static bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> console(bq::log_level level, const STR& str); public: /// diff --git a/include/bq_log/misc/bq_log_api.h b/include/bq_log/misc/bq_log_api.h index 9d8e276..21266e9 100644 --- a/include/bq_log/misc/bq_log_api.h +++ b/include/bq_log/misc/bq_log_api.h @@ -198,14 +198,31 @@ namespace bq { /// /// /// - BQ_API void __register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); /// /// Unregister a console callback /// /// /// - BQ_API void __unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + BQ_API void __api_unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback); + + /// + /// set console appender buffer enable or not + /// + /// + /// + BQ_API void __api_set_console_buffer_enable(bool enable); + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// + /// path through parameter that will pass to on_console_callback + /// True if the console appender buffer is not empty, otherwise False is returned. + BQ_API bool __api_fetch_and_remove_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback on_console_callback, const void* pass_through_param); /// /// The snapshot feature is disabled by default, as it consumes some performance overhead. diff --git a/include/bq_log/misc/bq_log_def.h b/include/bq_log/misc/bq_log_def.h index 3c14649..591dee6 100644 --- a/include/bq_log/misc/bq_log_def.h +++ b/include/bq_log/misc/bq_log_def.h @@ -166,6 +166,14 @@ namespace bq { failed_io_error }; + /// + /// `content` is a C-style string and end with '\0'; + /// typedef void(BQ_STDCALL* type_func_ptr_console_callback)(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + /// + /// `content` is a C-style string and end with '\0'; + /// + typedef void(BQ_STDCALL* type_func_ptr_console_buffer_fetch_callback)(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + } diff --git a/include/bq_log/misc/bq_log_impl.h b/include/bq_log/misc/bq_log_impl.h index 8ae928d..168ee72 100644 --- a/include/bq_log/misc/bq_log_impl.h +++ b/include/bq_log/misc/bq_log_impl.h @@ -155,22 +155,38 @@ namespace bq { inline void log::register_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__register_console_callbacks(callback); + bq::api::__api_register_console_callbacks(callback); } inline void log::unregister_console_callback(bq::type_func_ptr_console_callback callback) { - bq::api::__unregister_console_callbacks(callback); + bq::api::__api_unregister_console_callbacks(callback); + } + + inline void log::set_console_buffer_enable(bool enable) + { + bq::api::__api_set_console_buffer_enable(enable); + } + + inline void BQ_STDCALL fetch_and_remove_console_buffer_callback_wrapper(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + bq::type_func_ptr_console_callback real_callback = (bq::type_func_ptr_console_callback)pass_through_param; + real_callback(log_id, category_idx, log_level, content, length); + } + + inline bool log::fetch_and_remove_console_buffer(bq::type_func_ptr_console_callback on_console_callback) + { + return bq::api::__api_fetch_and_remove_console_buffer(fetch_and_remove_console_buffer_callback_wrapper, (const void*)on_console_callback); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str); } template - inline bq::enable_if_t>, char*>::value> log::console(bq::log_level level, const STR& str) + inline bq::enable_if_t>, char*>::value || bq::is_same>, const char*>::value)> log::console(bq::log_level level, const STR& str) { bq::api::__api_log_device_console(level, str.c_str()); } diff --git a/src/bq_common/platform/java_misc.cpp b/src/bq_common/platform/java_misc.cpp index 7596034..114ec93 100644 --- a/src/bq_common/platform/java_misc.cpp +++ b/src/bq_common/platform/java_misc.cpp @@ -81,7 +81,10 @@ namespace bq { return java_vm; } - extern "C" jint JNI_OnLoad(JavaVM* vm, void* reserved) +#ifdef __cplusplus + extern "C" { +#endif + JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM* vm, void* reserved) { (void)reserved; java_vm = vm; @@ -97,6 +100,9 @@ namespace bq { } return JNI_VERSION_1_6; } +#ifdef __cplusplus + } +#endif } } #endif diff --git a/src/bq_log/api/bq_impl_log_invoker.h b/src/bq_log/api/bq_impl_log_invoker.h index 8f64db0..3b315da 100644 --- a/src/bq_log/api/bq_impl_log_invoker.h +++ b/src/bq_log/api/bq_impl_log_invoker.h @@ -196,6 +196,20 @@ JNIEXPORT jstring JNICALL Java_bq_impl_log_1invoker__1_1api_1take_1snapshot_1str */ JNIEXPORT void JNICALL Java_bq_impl_log_1invoker__1_1api_1set_1console_1callback(JNIEnv*, jclass, jboolean); +/* + * Class: bq_impl_log_invoker + * Method: __api_set_console_buffer_enable + * Signature: (Z)V + */ +JNIEXPORT void JNICALL Java_bq_impl_log_1invoker__1_1api_1set_1console_1buffer_1enable(JNIEnv*, jclass, jboolean); + +/* + * Class: bq_impl_log_invoker + * Method: __api_fetch_and_remove_console_buffer + * Signature: (Ljava/lang/Object;)Z + */ +JNIEXPORT jboolean JNICALL Java_bq_impl_log_1invoker__1_1api_1fetch_1and_1remove_1console_1buffer(JNIEnv*, jclass, jobject); + #ifdef __cplusplus } #endif diff --git a/src/bq_log/api/bq_log_api.cpp b/src/bq_log/api/bq_log_api.cpp index 4e75485..f658698 100644 --- a/src/bq_log/api/bq_log_api.cpp +++ b/src/bq_log/api/bq_log_api.cpp @@ -64,7 +64,7 @@ namespace bq { BQ_API const char* __api_get_log_version() { - return "1.4.0"; + return "1.4.1"; } #if BQ_POSIX @@ -399,16 +399,26 @@ namespace bq { return appender_decoder_helper::decode(in_file_path, out_file_path); } - BQ_API void __register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback) + BQ_API void __api_register_console_callbacks(bq::type_func_ptr_console_callback on_console_callback) { appender_console::register_console_callback(on_console_callback); } - BQ_API void __unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback) + BQ_API void __api_unregister_console_callbacks(bq::type_func_ptr_console_callback on_console_callback) { appender_console::unregister_console_callback(on_console_callback); } + BQ_API void __api_set_console_buffer_enable(bool enable) + { + appender_console::set_console_buffer_enable(enable); + } + + BQ_API bool __api_fetch_and_remove_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback on_console_callback, const void* pass_through_param) + { + return appender_console::fetch_and_remove_from_console_buffer(on_console_callback, pass_through_param); + } + BQ_API void __api_enable_snapshot(uint64_t log_id, uint32_t snapshot_buffer_size) { bq::log_imp* log = bq::log_manager::get_log_by_id(log_id); diff --git a/src/bq_log/api/bq_log_jni_api.cpp b/src/bq_log/api/bq_log_jni_api.cpp index 26c00b9..e81f76b 100644 --- a/src/bq_log/api/bq_log_jni_api.cpp +++ b/src/bq_log/api/bq_log_jni_api.cpp @@ -389,7 +389,7 @@ JNIEXPORT jstring JNICALL Java_bq_impl_log_1invoker__1_1api_1take_1snapshot_1str return snapshot_str; } -static void BQ_STDCALL java_console_callback(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) +static void BQ_STDCALL jni_console_callback(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) { (void)length; @@ -411,17 +411,52 @@ static void BQ_STDCALL java_console_callback(uint64_t log_id, int32_t category_i * Method: __api_set_console_callback * Signature: (Z)V */ -JNIEXPORT void JNICALL Java_bq_impl_log_1invoker__1_1api_1set_1console_1callback(JNIEnv* env, jclass, jboolean use_cb) +JNIEXPORT void JNICALL Java_bq_impl_log_1invoker__1_1api_1set_1console_1callback(JNIEnv*, jclass, jboolean use_cb) { - (void)env; - if (!use_cb) { - bq::log::register_console_callback(java_console_callback); - return; + if (use_cb) { + bq::log::register_console_callback(jni_console_callback); } else { - bq::log::register_console_callback(java_console_callback); + bq::log::unregister_console_callback(jni_console_callback); } } +/* + * Class: bq_impl_log_invoker + * Method: __api_set_console_buffer_enable + * Signature: (Z)V + */ +JNIEXPORT void JNICALL Java_bq_impl_log_1invoker__1_1api_1set_1console_1buffer_1enable(JNIEnv*, jclass, jboolean enable) +{ + bq::log::set_console_buffer_enable(enable); +} + +static void BQ_STDCALL jni_console_buffer_fetch_callback(void* pass_through_param, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) +{ + jobject callback_obj = (jobject)pass_through_param; + (void)length; + bq::platform::jni_env env_holder; + JNIEnv* env = env_holder.env; + static jclass cls = env->FindClass("bq/log"); + if (!cls) { + return; + } + static jmethodID mid = env->GetStaticMethodID(cls, "native_console_buffer_fetch_and_remove_callbck", "(Lbq/log$console_callbck_delegate;JIILjava/lang/String;)V"); + if (!mid) { + return; + } + jstring message = env->NewStringUTF(content); + env->CallStaticVoidMethod(cls, mid, callback_obj, log_id, category_idx, (int)log_level, message); +} +/* + * Class: bq_impl_log_invoker + * Method: __api_fetch_and_remove_console_buffer + * Signature: (Ljava/lang/Object;)Z + */ +JNIEXPORT jboolean JNICALL Java_bq_impl_log_1invoker__1_1api_1fetch_1and_1remove_1console_1buffer(JNIEnv*, jclass, jobject callback_obj) +{ + return bq::api::__api_fetch_and_remove_console_buffer(jni_console_buffer_fetch_callback, callback_obj); +} + #ifdef __cplusplus } #endif diff --git a/src/bq_log/log/appender/appender_console.cpp b/src/bq_log/log/appender/appender_console.cpp index 8fef4df..43d8d67 100644 --- a/src/bq_log/log/appender/appender_console.cpp +++ b/src/bq_log/log/appender/appender_console.cpp @@ -9,28 +9,218 @@ * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. */ +#include #include "bq_common/bq_common.h" +#include "bq_log/types/ring_buffer.h" #include "bq_log/log/log_imp.h" #include "bq_log/log/appender/appender_console.h" namespace bq { + void appender_console::console_callbacks::register_callback(bq::type_func_ptr_console_callback callback) + { + bq::platform::scoped_mutex lock(mutex_); + callbacks_[callback] = true; + } + + void appender_console::console_callbacks::erase_callback(bq::type_func_ptr_console_callback callback) + { + bq::platform::scoped_mutex lock(mutex_); + auto iter = callbacks_.find(callback); + if (iter != callbacks_.end()) { + callbacks_.erase(iter); + } + } + + void appender_console::console_callbacks::call(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + if (callbacks_.is_empty()) { + return; + } + bq::platform::scoped_mutex lock(mutex_); + for (auto iter = callbacks_.begin(); iter != callbacks_.end(); ++iter) { + bq::type_func_ptr_console_callback callback = iter->key(); + callback(log_id, category_idx, log_level, content, length); + } + } + + appender_console::console_ring_buffer::console_ring_buffer() + : buffer_(new ring_buffer(1024)) + , fetch_lock_(false) + { + buffer_->set_thread_check_enable(false); + } + + appender_console::console_ring_buffer::~console_ring_buffer() + { + if (buffer_) { + delete buffer_; + } + } + + void appender_console::console_ring_buffer::insert(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + if (!is_enable()) { + return; + } + size_t write_length = sizeof(log_id) + sizeof(category_idx) + sizeof(log_level) + sizeof(int32_t) + (size_t)length + 1; + + // try insert + do { + bq::platform::scoped_spin_lock_read_crazy read_lock(insert_lock_); + auto handle = buffer_->alloc_write_chunk((uint32_t)write_length); + if (handle.result == enum_buffer_result_code::success) { + uint8_t* data = handle.data_addr; + *(uint64_t*)data = log_id; + data += sizeof(uint64_t); + *(uint32_t*)data = category_idx; + data += sizeof(uint32_t); + *(int32_t*)data = log_level; + data += sizeof(int32_t); + *(int32_t*)data = length; + data += sizeof(int32_t); + memcpy(data, content, (size_t)length); + data[length] = 0; + } else if (handle.result == enum_buffer_result_code::err_not_enough_space) { + buffer_->commit_write_chunk(handle); + break; + } else { + bq::util::log_device_console(bq::log_level::error, "failed to insert data entry to console buffer, ring_buffer error code:%d", (int32_t)handle.result); + } + buffer_->commit_write_chunk(handle); + return; + } while (0); + + // expand and re-insert + bq::platform::scoped_spin_lock_write_crazy write_lock(insert_lock_); + bq::platform::scoped_mutex mutex_lock(fetch_lock_); + do { + auto handle = buffer_->alloc_write_chunk((uint32_t)write_length); + if (handle.result == enum_buffer_result_code::success) { + uint8_t* data = handle.data_addr; + *(uint64_t*)data = log_id; + data += sizeof(uint64_t); + *(uint32_t*)data = category_idx; + data += sizeof(uint32_t); + *(int32_t*)data = log_level; + data += sizeof(int32_t); + *(int32_t*)data = length; + data += sizeof(int32_t); + memcpy(data, content, (size_t)length); + data[length] = 0; + } else if (handle.result == enum_buffer_result_code::err_not_enough_space) { + buffer_->commit_write_chunk(handle); + break; + } else { + bq::util::log_device_console(bq::log_level::error, "failed to insert data entry to console buffer, ring_buffer error code:%d", (int32_t)handle.result); + } + buffer_->commit_write_chunk(handle); + return; + } while (0); + + uint32_t new_size = buffer_->get_total_blocks_count() * buffer_->get_block_size() + (uint32_t)write_length; + auto new_buffer = new ring_buffer(new_size); + new_buffer->set_thread_check_enable(false); + buffer_->begin_read(); + while (true) { + auto read_handle = buffer_->read(); + if (read_handle.result == enum_buffer_result_code::success) { + auto write_handle = new_buffer->alloc_write_chunk(read_handle.data_size); + if (write_handle.result != enum_buffer_result_code::success) { + bq::util::log_device_console(bq::log_level::error, "failed to copy data entry to new console buffer, ring_buffer error code:%d", (int32_t)write_handle.result); + new_buffer->commit_write_chunk(write_handle); + break; + } + memcpy(write_handle.data_addr, read_handle.data_addr, (size_t)read_handle.data_size); + new_buffer->commit_write_chunk(write_handle); + } else if (read_handle.result == enum_buffer_result_code::err_empty_ring_buffer) { + break; + } else { + bq::util::log_device_console(bq::log_level::error, "failed to read data entry from console buffer to copy, ring_buffer error code:%d", (int32_t)read_handle.result); + break; + } + } + buffer_->end_read(); + + delete buffer_; + buffer_ = new_buffer; + + // insert finally + auto handle = buffer_->alloc_write_chunk((uint32_t)write_length); + if (handle.result == enum_buffer_result_code::success) { + uint8_t* data = handle.data_addr; + *(uint64_t*)data = log_id; + data += sizeof(uint64_t); + *(uint32_t*)data = category_idx; + data += sizeof(uint32_t); + *(int32_t*)data = log_level; + data += sizeof(int32_t); + *(int32_t*)data = length; + data += sizeof(int32_t); + memcpy(data, content, (size_t)length); + data[length] = 0; + } else { + bq::util::log_device_console(bq::log_level::error, "failed to insert data entry to final console buffer, ring_buffer error code:%d", (int32_t)handle.result); + } + buffer_->commit_write_chunk(handle); + } + + bool appender_console::console_ring_buffer::fetch_and_remove(bq::type_func_ptr_console_buffer_fetch_callback callback, const void* pass_through_param) + { + if (!is_enable()) { + return false; + } + + bq::platform::scoped_mutex mutex_lock(fetch_lock_); + buffer_->begin_read(); + auto read_handle = buffer_->read(); + if (read_handle.result == enum_buffer_result_code::success) { + uint8_t* data = read_handle.data_addr; + uint64_t log_id = *(uint64_t*)data; + data += sizeof(uint64_t); + uint32_t category_idx = *(uint32_t*)data; + data += sizeof(uint32_t); + int32_t log_level = *(int32_t*)data; + data += sizeof(int32_t); + int32_t length = *(int32_t*)data; + data += sizeof(int32_t); + char* content = (char*)data; + callback(const_cast(pass_through_param), log_id, category_idx, log_level, content, length); + } else if (read_handle.result == enum_buffer_result_code::err_empty_ring_buffer) { + // do nothing + } else { + bq::util::log_device_console(bq::log_level::error, "failed to fetch data entry from console buffer, ring_buffer error code:%d", (int32_t)read_handle.result); + } + buffer_->end_read(); + return read_handle.result == enum_buffer_result_code::success; + } + + void appender_console::console_ring_buffer::set_enable(bool enable) + { + enable_ = enable; + } + appender_console::appender_console() { } void appender_console::register_console_callback(bq::type_func_ptr_console_callback callback) { - bq::platform::scoped_mutex lock(get_console_mutex()); - get_console_callbacks()[callback] = true; + get_console_misc().callback().register_callback(callback); } void appender_console::unregister_console_callback(bq::type_func_ptr_console_callback callback) { - bq::platform::scoped_mutex lock(get_console_mutex()); - auto iter = get_console_callbacks().find(callback); - if (iter != get_console_callbacks().end()) { - get_console_callbacks().erase(iter); - } + get_console_misc().callback().erase_callback(callback); + } + + void appender_console::set_console_buffer_enable(bool enable) + { + get_console_misc().buffer().set_enable(enable); + } + + bool appender_console::fetch_and_remove_from_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback callback, const void* pass_through_param) + { + return get_console_misc().buffer().fetch_and_remove(callback, pass_through_param); } bool appender_console::init_impl(const bq::property_value& config_obj) @@ -59,23 +249,15 @@ namespace bq { #if !BQ_UNIT_TEST util::log_device_console_plain_text(level, log_entry_cache_.c_str()); #endif - if (get_console_callbacks().size() > 0) { - bq::platform::scoped_mutex lock(get_console_mutex()); - for (auto iter = get_console_callbacks().begin(); iter != get_console_callbacks().end(); ++iter) { - bq::type_func_ptr_console_callback callback = iter->key(); - callback(parent_log_->id(), handle.get_category_idx(), (int32_t)level, log_entry_cache_.c_str(), (int32_t)log_entry_cache_.size()); - } - } + auto& misc = get_console_misc(); + misc.callback().call(parent_log_->id(), handle.get_category_idx(), (int32_t)level, log_entry_cache_.c_str(), (int32_t)log_entry_cache_.size()); + misc.buffer().insert(parent_log_->id(), handle.get_category_idx(), (int32_t)level, log_entry_cache_.c_str(), (int32_t)log_entry_cache_.size()); } - bq::platform::mutex& appender_console::get_console_mutex() + bq::appender_console::console_static_misc& appender_console::get_console_misc() { - static bq::platform::mutex mutex_; - return mutex_; - } - bq::hash_map& appender_console::get_console_callbacks() - { - static bq::hash_map callbacks_; - return callbacks_; + static console_static_misc misc_; + return misc_; } + } diff --git a/src/bq_log/log/appender/appender_console.h b/src/bq_log/log/appender/appender_console.h index 50bc5af..e07fbc7 100644 --- a/src/bq_log/log/appender/appender_console.h +++ b/src/bq_log/log/appender/appender_console.h @@ -18,6 +18,44 @@ namespace bq { class appender_console : public appender_base { + private: + class console_callbacks { + private: + bq::platform::mutex mutex_; + bq::hash_map callbacks_; + + public: + void register_callback(bq::type_func_ptr_console_callback callback); + void erase_callback(bq::type_func_ptr_console_callback callback); + void call(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + }; + + class console_ring_buffer { + private: + bool enable_; + class ring_buffer* buffer_; + bq::platform::mutex fetch_lock_; + bq::platform::spin_lock_rw_crazy insert_lock_; + + public: + console_ring_buffer(); + ~console_ring_buffer(); + void insert(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length); + bool fetch_and_remove(bq::type_func_ptr_console_buffer_fetch_callback callback, const void* pass_through_param); + void set_enable(bool enalbe); + bq_forceinline bool is_enable() const { return enable_; } + }; + + class console_static_misc { + private: + console_callbacks callbacks_; + console_ring_buffer buffer_; + + public: + bq_forceinline console_callbacks& callback() { return callbacks_; } + bq_forceinline console_ring_buffer& buffer() { return buffer_; } + }; + public: appender_console(); @@ -25,13 +63,15 @@ namespace bq { static void register_console_callback(bq::type_func_ptr_console_callback callback); static void unregister_console_callback(bq::type_func_ptr_console_callback callback); + static void set_console_buffer_enable(bool enable); + static bool fetch_and_remove_from_console_buffer(bq::type_func_ptr_console_buffer_fetch_callback callback, const void* pass_through_param); + protected: virtual bool init_impl(const bq::property_value& config_obj) override; virtual void log_impl(const log_entry_handle& handle) override; private: - static bq::platform::mutex& get_console_mutex(); - static bq::hash_map& get_console_callbacks(); + static console_static_misc& get_console_misc(); private: bq::string log_name_prefix_; diff --git a/src/bq_log/log/log_imp.cpp b/src/bq_log/log/log_imp.cpp index d8396d1..8c87085 100644 --- a/src/bq_log/log/log_imp.cpp +++ b/src/bq_log/log/log_imp.cpp @@ -125,16 +125,18 @@ namespace bq { // init print_stack_levels { const auto& print_stack_levels_array = log_config["print_stack_levels"]; - if (!print_stack_levels_array.is_array()) { - util::log_device_console(bq::log_level::info, "bq log info: invalid [print_stack_levels] config"); - } else { - for (typename property_value::array_type::size_type i = 0; i < print_stack_levels_array.array_size(); ++i) { - const auto& level_obj = print_stack_levels_array[i]; - if (!level_obj.is_string()) { - util::log_device_console(bq::log_level::warning, "bq log info: invalid [print_stack_levels] item"); - continue; + if (!print_stack_levels_array.is_null()) { + if (!print_stack_levels_array.is_array()) { + util::log_device_console(bq::log_level::info, "bq log info: invalid [print_stack_levels] config"); + } else { + for (typename property_value::array_type::size_type i = 0; i < print_stack_levels_array.array_size(); ++i) { + const auto& level_obj = print_stack_levels_array[i]; + if (!level_obj.is_string()) { + util::log_device_console(bq::log_level::warning, "bq log info: invalid [print_stack_levels] item"); + continue; + } + print_stack_level_bitmap_.add_level(((string)level_obj).trim()); } - print_stack_level_bitmap_.add_level(((string)level_obj).trim()); } } } @@ -203,16 +205,18 @@ namespace bq { { print_stack_level_bitmap_.clear(); const auto& print_stack_levels_array = log_config["print_stack_levels"]; - if (!print_stack_levels_array.is_array()) { - util::log_device_console(bq::log_level::info, "bq log info: invalid [print_stack_levels] config"); - } else { - for (typename property_value::array_type::size_type i = 0; i < print_stack_levels_array.array_size(); ++i) { - const auto& level_obj = print_stack_levels_array[i]; - if (!level_obj.is_string()) { - util::log_device_console(bq::log_level::warning, "bq log info: invalid [print_stack_levels] item"); - continue; + if (!print_stack_levels_array.is_null()) { + if (!print_stack_levels_array.is_array()) { + util::log_device_console(bq::log_level::info, "bq log info: invalid [print_stack_levels] config"); + } else { + for (typename property_value::array_type::size_type i = 0; i < print_stack_levels_array.array_size(); ++i) { + const auto& level_obj = print_stack_levels_array[i]; + if (!level_obj.is_string()) { + util::log_device_console(bq::log_level::warning, "bq log info: invalid [print_stack_levels] item"); + continue; + } + print_stack_level_bitmap_.add_level(((string)level_obj).trim()); } - print_stack_level_bitmap_.add_level(((string)level_obj).trim()); } } } diff --git a/test/bq_common_test/test_string.h b/test/bq_common_test/test_string.h index d33cca3..7794458 100644 --- a/test/bq_common_test/test_string.h +++ b/test/bq_common_test/test_string.h @@ -207,31 +207,31 @@ namespace bq { result.add_result(!test_str.end_with(u"BBBBBBBBBBBBBBB"), "string end_with test 1"); result.add_result(!test_str.end_with(u"BBBB"), "string end_with test 2"); } - + #if BQ_CPP_17 - //test std::string and std::string_view + // test std::string and std::string_view { std::string std_str_src = "Part1"; std::string_view str_view_src(std_str_src); std_str_src += "Part2"; bq::string bq_str_for_std_str = std_str_src; bq::string bq_str_for_std_str_view = str_view_src; - + result.add_result(bq_str_for_std_str == "Part1Part2", "string trans 1"); result.add_result(bq_str_for_std_str_view == "Part1", "string trans 2"); - + bq::string bq_str1 = "This is Bq Str 1 utf16"; std::string std_str1 = bq_str1; std::string_view std_str_view1 = bq_str1; size_t str1_len = bq_str1.size(); result.add_result(str1_len == std_str1.size() && str1_len == std_str_view1.size(), "bq::string, std::string, std::string_view cast test: utf8 size"); - + result.add_result(memcmp(&bq_str1[0], &std_str1[0], str1_len) == 0, "bq::string, std::string cast test: utf8 equal"); result.add_result(memcmp(&bq_str1[0], &std_str_view1[0], str1_len) == 0, "bq::string, std::string_view cast test: utf8 equal"); - + bq::string bq_str1_from_std_str = std_str1; bq::string bq_str2_from_std_str_view = std_str_view1; - + result.add_result(bq_str1 == bq_str1_from_std_str, "std::string, bq::string cast test: utf8 equal"); result.add_result(bq_str1 == bq_str2_from_std_str_view, "std::string_view, bq::string cast test: utf8 equal"); } @@ -241,13 +241,13 @@ namespace bq { std::u16string_view std_str_view1 = bq_str1; size_t str1_len = bq_str1.size(); result.add_result(str1_len == std_str1.size() && str1_len == std_str_view1.size(), "bq::string, std::string, std::string_view cast test: utf16 size"); - + result.add_result(memcmp(&bq_str1[0], &std_str1[0], str1_len * sizeof(char16_t)) == 0, "bq::string, std::string cast test: utf16 equal"); result.add_result(memcmp(&bq_str1[0], &std_str_view1[0], str1_len * sizeof(char16_t)) == 0, "bq::string, std::string_view cast test: utf16 equal"); - + bq::u16string bq_str1_from_std_str = std_str1; bq::u16string bq_str2_from_std_str_view = std_str_view1; - + result.add_result(bq_str1 == bq_str1_from_std_str, "std::string, bq::string cast test: utf16 equal"); result.add_result(bq_str1 == bq_str2_from_std_str_view, "std::string_view, bq::string cast test: utf16 equal"); } @@ -257,13 +257,13 @@ namespace bq { std::u32string_view std_str_view1 = bq_str1; size_t str1_len = bq_str1.size(); result.add_result(str1_len == std_str1.size() && str1_len == std_str_view1.size(), "bq::string, std::string, std::string_view cast test: utf32 size"); - + result.add_result(memcmp(&bq_str1[0], &std_str1[0], str1_len * sizeof(char32_t)) == 0, "bq::string, std::string cast test: utf32 equal"); result.add_result(memcmp(&bq_str1[0], &std_str_view1[0], str1_len * sizeof(char32_t)) == 0, "bq::string, std::string_view cast test: utf32 equal"); - + bq::u32string bq_str1_from_std_str = std_str1; bq::u32string bq_str2_from_std_str_view = std_str_view1; - + result.add_result(bq_str1 == bq_str1_from_std_str, "std::string, bq::string cast test: utf32 equal"); result.add_result(bq_str1 == bq_str2_from_std_str_view, "std::string_view, bq::string cast test: utf32 equal"); } diff --git a/test/main.cpp b/test/main.cpp index 0cb4d75..fe0dedc 100644 --- a/test/main.cpp +++ b/test/main.cpp @@ -46,7 +46,7 @@ int32_t main() TEST_GROUP(Bq_Log_Test, bq::test, test_utils); TEST_GROUP(Bq_Log_Test, bq::test, test_file_manager); TEST_GROUP(Bq_Log_Test, bq::test, test_thread_atomic); - + TEST_GROUP(Bq_Log_Test, bq::test, test_log); TEST_GROUP(Bq_Log_Test, bq::test, test_ring_buffer); TEST_GROUP_END(Bq_Log_Test); diff --git a/test/test_log.h b/test/test_log.h index 60fc72e..cccef9e 100644 --- a/test/test_log.h +++ b/test/test_log.h @@ -171,6 +171,7 @@ namespace bq { void test_1(test_result& result, const test_category_log& log); void test_2(test_result& result, const test_category_log& log); void test_3(test_result& result, const test_category_log& log); + void test_4(test_result& result, const test_category_log& log); public: virtual test_result test() override @@ -210,6 +211,8 @@ namespace bq { test_3(result, log_inst); snapeshot.cancel(); snapeshot.join(); + + test_4(result, log_inst); return result; } }; diff --git a/test/test_log_4.cpp b/test/test_log_4.cpp new file mode 100644 index 0000000..7bd8fad --- /dev/null +++ b/test/test_log_4.cpp @@ -0,0 +1,157 @@ +/* + * Copyright (C) 2024 THL A29 Limited, a Tencent company. + * BQLOG is licensed under the Apache License, Version 2.0. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + */ +#include "test_log.h" + +namespace bq { + namespace test { + + struct test_4_log_entry { + uint64_t log_id; + int32_t category_idx; + int32_t log_level; + bq::string content; + }; + enum class test_4_check_type { + callback, + fetch + }; + + static bq::platform::thread* test_4_callback_thread_ = nullptr; + static bq::array test_4_fetch_threads_(nullptr, nullptr, nullptr); + static test_result* result_ = nullptr; + static constexpr int32_t total_test_4_test_round_ = 200000; + static bq::platform::spin_lock test_4_lock_; + static bq::platform::atomic left_test_4_round_ = total_test_4_test_round_; + static test_4_check_type test_4_check_status_ = test_4_check_type::callback; + static bq::array test_4_check_array_; + + static bool check(test_4_check_type type, uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + (void)length; + bq::platform::scoped_spin_lock lock(test_4_lock_); + left_test_4_round_.add_fetch(-1); + + bool result = true; + if (test_4_check_array_.is_empty()) { + test_4_check_array_.push_back(test_4_log_entry { log_id, category_idx, log_level, bq::string(content) }); + test_4_check_status_ = type; + } else if (test_4_check_status_ == type) { + test_4_check_array_.push_back(test_4_log_entry { log_id, category_idx, log_level, bq::string(content) }); + } else { + const auto& first = test_4_check_array_[0]; + result = (log_id == first.log_id && category_idx == first.category_idx && log_level == first.log_level && content == first.content); + test_4_check_array_.erase(test_4_check_array_.begin()); + } + if (!result) { + test_4_callback_thread_->cancel(); + for (size_t i = 0; i < test_4_fetch_threads_.size(); ++i) { + test_4_fetch_threads_[i]->cancel(); + } + } + return result; + } + + static void BQ_STDCALL test_4_console_callback(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + bool check_result = check(test_4_check_type::callback, log_id, category_idx, log_level, content, length); + result_->add_result(check_result, "console callback check failed:%s", content); + } + + static void BQ_STDCALL test_4_console_fetch(uint64_t log_id, int32_t category_idx, int32_t log_level, const char* content, int32_t length) + { + bool check_result = check(test_4_check_type::fetch, log_id, category_idx, log_level, content, length); + result_->add_result(check_result, "console callback check failed:%s", content); + } + + class test_4_callback_thread : public bq::platform::thread { + protected: + void run() override + { + bq::log::register_console_callback(test_4_console_callback); + auto log1 = test_category_log::create_log("test_log", R"( + appenders_config.ConsoleAppender.type=console + appenders_config.ConsoleAppender.time_zone=default local time + appenders_config.ConsoleAppender.levels=[all] + log.thread_mode=sync + log.buffer_size=64000000 + )"); + auto log2 = test_category_log::create_log("test_log", R"( + appenders_config.ConsoleAppender.type=console + appenders_config.ConsoleAppender.time_zone=default local time + appenders_config.ConsoleAppender.levels=[all] + log.thread_mode=independent + log.buffer_size=64000000 + )"); + auto log3 = test_category_log::create_log("test_log", R"( + appenders_config.ConsoleAppender.type=console + appenders_config.ConsoleAppender.time_zone=default local time + appenders_config.ConsoleAppender.levels=[all] + log.thread_mode=async + log.buffer_size=64000000 + )"); + for (int32_t i = 0; i < total_test_4_test_round_; ++i) { + if (is_cancelled()) { + break; + } + log1.info(log1.cat.ModuleA.SystemA, "Log1 log, {}", i); + log2.warning(log2.cat.ModuleA.SystemA, "Log2 logLog2 logLog2 logLog2 logLog2 logLog2 logLog2 logLog2 logLog2 logLog2 logLog2 logLog2 logLog2 logLog2 log, {}", i); + log3.fatal(log3.cat.ModuleA.SystemA, u"Log3 logLog3 logLog3 logLog3 logLog3 logLog3 logLog3 logLog3 logLog3 logLog3 logLog3 logLog3 logLog3 logLog3 logLog3 logLog3 logLog3 log, {}", i); + } + log1.force_flush(); + log2.force_flush(); + log3.force_flush(); + bq::log::unregister_console_callback(test_4_console_callback); + } + }; + + class test_4_fetch_thread : public bq::platform::thread { + protected: + void run() override + { + while (left_test_4_round_.load() > 0) { + if (is_cancelled()) { + break; + } + if (!bq::log::fetch_and_remove_console_buffer(test_4_console_fetch)) { + bq::platform::thread::yield(); + } + } + } + }; + + void test_log::test_4(test_result& result, const test_category_log& log_inst) + { + (void)log_inst; + test_output(bq::log_level::info, "console test begin \n"); + result_ = &result; + bq::log::set_console_buffer_enable(true); + test_4_callback_thread_ = new test_4_callback_thread(); + test_4_callback_thread_->start(); + for (size_t i = 0; i < test_4_fetch_threads_.size(); ++i) { + test_4_fetch_threads_[i] = new test_4_fetch_thread(); + test_4_fetch_threads_[i]->start(); + } + test_4_callback_thread_->join(); + delete test_4_callback_thread_; + test_4_callback_thread_ = nullptr; + for (size_t i = 0; i < test_4_fetch_threads_.size(); ++i) { + test_4_fetch_threads_[i]->join(); + delete test_4_fetch_threads_[i]; + test_4_fetch_threads_[i] = nullptr; + } + result_ = nullptr; + + bq::log::set_console_buffer_enable(false); + test_output(bq::log_level::info, "console test finished \n"); + } + } +} diff --git a/wrapper/csharp/src/bq/def/log_types_def.cs b/wrapper/csharp/src/bq/def/log_types_def.cs index 0e505de..cd8959a 100644 --- a/wrapper/csharp/src/bq/def/log_types_def.cs +++ b/wrapper/csharp/src/bq/def/log_types_def.cs @@ -118,4 +118,8 @@ public class log_console_item [UnmanagedFunctionPointer(CallingConvention.Cdecl, CharSet = CharSet.Unicode)] public unsafe delegate void type_func_ptr_console_callback(ulong log_id, int category_idx, int log_level,sbyte* content, int length); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl, CharSet = CharSet.Unicode)] + public unsafe delegate void type_func_ptr_console_buffer_fetch_callback(IntPtr pass_through_param, ulong log_id, int category_idx, int log_level, sbyte* content, int length); + } \ No newline at end of file diff --git a/wrapper/csharp/src/bq/impl/log_invoker.cs b/wrapper/csharp/src/bq/impl/log_invoker.cs index fa83266..d1c601f 100644 --- a/wrapper/csharp/src/bq/impl/log_invoker.cs +++ b/wrapper/csharp/src/bq/impl/log_invoker.cs @@ -90,10 +90,16 @@ public class log_invoker public unsafe static extern bool __api_log_decode(char* in_file, char* out_file); [DllImport(LIB_NAME, CharSet = CharSet.Unicode)] - public static unsafe extern void __register_console_callbacks(type_func_ptr_console_callback on_console_callback); + public static unsafe extern void __api_register_console_callbacks(type_func_ptr_console_callback on_console_callback); [DllImport(LIB_NAME, CharSet = CharSet.Unicode)] - public static unsafe extern void __unregister_console_callbacks(type_func_ptr_console_callback on_console_callback); + public static unsafe extern void __api_unregister_console_callbacks(type_func_ptr_console_callback on_console_callback); + + [DllImport(LIB_NAME, CharSet = CharSet.Unicode)] + public static unsafe extern void __api_set_console_buffer_enable(bool enable); + + [DllImport(LIB_NAME, CharSet = CharSet.Unicode)] + public static unsafe extern bool __api_fetch_and_remove_console_buffer(type_func_ptr_console_buffer_fetch_callback on_console_callback, IntPtr pass_through_param); [DllImport(LIB_NAME, CharSet = CharSet.Unicode)] public unsafe static extern void __api_enable_snapshot(ulong log_id, uint snapshot_buffer_size); diff --git a/wrapper/csharp/src/bq/log.cs b/wrapper/csharp/src/bq/log.cs index ced6153..fda89d3 100644 --- a/wrapper/csharp/src/bq/log.cs +++ b/wrapper/csharp/src/bq/log.cs @@ -11,6 +11,7 @@ */ using System; using System.Collections.Generic; +using System.Runtime.InteropServices; using bq.def; using bq.impl; @@ -212,7 +213,8 @@ public static void force_flush_all_logs() } public delegate void type_console_callback(ulong log_id, int category_idx, bq.def.log_level log_level, string content); - private static type_console_callback console_callback = null; + private static List console_callbacks_ = new List(); + private static System.Threading.ReaderWriterLockSlim console_callbacks_lock_ = new System.Threading.ReaderWriterLockSlim(); /// /// Register a callback that will be invoked whenever a console log message is output. /// This can be used for an external system to monitor console log output. @@ -220,25 +222,34 @@ public static void force_flush_all_logs() /// public static void register_console_callback(type_console_callback callback) { - console_callback = callback; + console_callbacks_lock_.EnterWriteLock(); + console_callbacks_.Add(callback); unsafe { - log_invoker.__register_console_callbacks(new type_func_ptr_console_callback(_native_console_callback_wrapper)); + if(console_callbacks_.Count == 1) + { + log_invoker.__api_register_console_callbacks(new type_func_ptr_console_callback(_native_console_callback_wrapper)); + } } - + console_callbacks_lock_.ExitWriteLock(); } /// /// Unregister console callback. /// /// - public static void unregister_console_callback() + public static void unregister_console_callback(type_console_callback callback) { - console_callback = null; + console_callbacks_lock_.EnterWriteLock(); + console_callbacks_.Remove(callback); unsafe { - log_invoker.__unregister_console_callbacks(new type_func_ptr_console_callback(_native_console_callback_wrapper)); + if (console_callbacks_.Count == 0) + { + log_invoker.__api_unregister_console_callbacks(new type_func_ptr_console_callback(_native_console_callback_wrapper)); + } } + console_callbacks_lock_.ExitWriteLock(); } #if ENABLE_IL2CPP [MonoPInvokeCallback(typeof(type_console_callback))] @@ -246,15 +257,50 @@ public static void unregister_console_callback() private unsafe static void _native_console_callback_wrapper(ulong log_id, int category_idx, int log_level, sbyte* content, int length) { string value = new string(content, 0, length, System.Text.Encoding.UTF8); - if (console_callback != null) + console_callbacks_lock_.EnterReadLock(); + for(int i = 0; i < console_callbacks_.Count; ++i) { - console_callback(log_id, category_idx, (bq.def.log_level)log_level, value); + console_callbacks_[i](log_id, category_idx, (bq.def.log_level)log_level, value); } + console_callbacks_lock_.ExitReadLock(); + } + + /// + /// Enable or disable the console appender buffer. + /// Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + /// we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + /// + /// + public static void set_console_buffer_enable(bool enable) + { + log_invoker.__api_set_console_buffer_enable(enable); + } + + /// + /// Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + /// If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + /// Please ensure not to output synchronized BQ logs within the callback function. + /// + /// A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + /// True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + public static unsafe bool fetch_and_remove_console_buffer(type_console_callback on_console_callback) + { + IntPtr delegate_ptr = Marshal.GetFunctionPointerForDelegate(on_console_callback); + return log_invoker.__api_fetch_and_remove_console_buffer(new type_func_ptr_console_buffer_fetch_callback(_native_console_buffer_fetch_callback_wrapper), delegate_ptr); + } +#if ENABLE_IL2CPP + [MonoPInvokeCallback(typeof(type_console_callback))] +#endif + private unsafe static void _native_console_buffer_fetch_callback_wrapper(IntPtr pass_through_param, ulong log_id, int category_idx, int log_level, sbyte* content, int length) + { + string value = new string(content, 0, length, System.Text.Encoding.UTF8); + type_console_callback recover_callback = (type_console_callback)Marshal.GetDelegateForFunctionPointer(pass_through_param, typeof(type_console_callback)); + recover_callback(log_id, category_idx, (bq.def.log_level)log_level, value); } /// /// Output to console with log_level. - /// Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + /// Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer /// /// /// diff --git a/wrapper/java/src/bq/impl/log_invoker.java b/wrapper/java/src/bq/impl/log_invoker.java index 90e0b0b..8929a1b 100644 --- a/wrapper/java/src/bq/impl/log_invoker.java +++ b/wrapper/java/src/bq/impl/log_invoker.java @@ -66,4 +66,8 @@ public class log_invoker { public static native String __api_take_snapshot_string(long log_id, boolean use_gmt_time); public static native void __api_set_console_callback(boolean enable); + + public static native void __api_set_console_buffer_enable(boolean enable); + + public static native boolean __api_fetch_and_remove_console_buffer(Object callback); } diff --git a/wrapper/java/src/bq/log.java b/wrapper/java/src/bq/log.java index 49c8380..0631989 100644 --- a/wrapper/java/src/bq/log.java +++ b/wrapper/java/src/bq/log.java @@ -12,8 +12,10 @@ */ import java.nio.ByteBuffer; import java.nio.ByteOrder; -import java.util.*; - +import java.util.List; +import java.util.ArrayList; +import java.util.Map; +import java.util.concurrent.ConcurrentLinkedQueue; import bq.def.*; import bq.impl.*; @@ -41,7 +43,8 @@ public interface console_callbck_delegate{ @SuppressWarnings("unused") protected long index = 0L; }; - private static console_callbck_delegate console_callbck_delegate_; + private static ConcurrentLinkedQueue console_callbck_delegates_ = new ConcurrentLinkedQueue(); + private static java.util.concurrent.locks.ReentrantLock console_callback_lock_ = new java.util.concurrent.locks.ReentrantLock(); private long log_id_ = 0; private String name_ = ""; @@ -85,7 +88,15 @@ protected static log get_log_by_id(long log_id) @SuppressWarnings("unused") private static void native_console_callbck(long log_id, int category_idx, int log_level, String content) { - console_callbck_delegate_.callback(log_id, category_idx, log_level, content); + for(console_callbck_delegate callback_obj : console_callbck_delegates_) + { + callback_obj.callback(log_id, category_idx, log_level, content); + } + } + @SuppressWarnings("unused") + private static void native_console_buffer_fetch_and_remove_callbck(console_callbck_delegate callback_obj, long log_id, int category_idx, int log_level, String content) + { + callback_obj.callback(log_id, category_idx, log_level, content); } private boolean is_enable_for(log_category_base category, log_level level) { @@ -226,22 +237,57 @@ public static void force_flush_all_logs() */ public static void register_console_callback(console_callbck_delegate callback) { - console_callbck_delegate_ = callback; - log_invoker.__api_set_console_callback(true); + console_callback_lock_.lock(); + console_callbck_delegates_.offer(callback); + if(console_callbck_delegates_.size() == 1) + { + log_invoker.__api_set_console_callback(true); + } + console_callback_lock_.unlock(); } /** * @param Unregister console callback. */ - public static void unregister_console_callback() + public static void unregister_console_callback(console_callbck_delegate callback) + { + console_callback_lock_.lock(); + console_callbck_delegates_.remove(callback); + if(console_callbck_delegates_.size() == 0) + { + log_invoker.__api_set_console_callback(false); + } + console_callback_lock_.unlock(); + } + + /** + * Enable or disable the console appender buffer. + * Since our wrapper may run in both C# and Java virtual machines, and we do not want to directly invoke callbacks from a native thread, + * we can enable this option. This way, all console outputs will be saved in the buffer until we fetch them. + * @param enable + */ + public static void set_console_buffer_enable(boolean enable) + { + log_invoker.__api_set_console_buffer_enable(enable); + } + + /** + * Fetch and remove a log entry from the console appender buffer in a thread-safe manner. + * If the console appender buffer is not empty, the on_console_callback function will be invoked for this log entry. + * Please ensure not to output synchronized BQ logs within the callback function. + * @param on_console_callback + * A callback function to be invoked for the fetched log entry if the console appender buffer is not empty + * @return + * True if the console appender buffer is not empty and a log entry is fetched; otherwise False is returned. + */ + public static boolean fetch_and_remove_console_buffer(console_callbck_delegate on_console_callback) { - console_callbck_delegate_ = null; - log_invoker.__api_set_console_callback(false); + return log_invoker.__api_fetch_and_remove_console_buffer(on_console_callback); } /** * Output to console with log_level. - * Important: This is not log entry, and can not be caught by console callback with was registered by register_console_callback + * Important: This is not log entry, and can not be caught by console callback which was registered by register_console_callback or fetch_and_remove_console_buffer * @param level * @param str */