├── board-info.txt ├── libshims ├── lib-watermarkshim.cpp └── Android.mk ├── Android.bp ├── configs └── permissions │ └── camerax-vendor-extensions.xml ├── Android.mk ├── setup-makefiles.sh ├── AndroidProducts.mk ├── libinit ├── Android.bp └── init_xiaomi_alioth.cpp ├── overlay-lineage ├── packages │ └── apps │ │ ├── Aperture │ │ └── app │ │ │ └── src │ │ │ └── main │ │ │ └── res │ │ │ └── values │ │ │ └── config.xml │ │ ├── Dialer │ │ └── java │ │ │ └── com │ │ │ └── android │ │ │ └── incallui │ │ │ └── res │ │ │ └── values │ │ │ └── lineage_config.xml │ │ └── Settings │ │ └── res │ │ └── values │ │ └── config.xml └── frameworks │ └── base │ └── packages │ └── SystemUI │ └── res │ └── values │ └── config.xml ├── overlay ├── AliothSystemUI │ ├── Android.bp │ ├── AndroidManifest.xml │ └── res │ │ ├── values │ │ ├── dimens.xml │ │ └── config.xml │ │ └── drawable │ │ ├── rounded_corner_bottom.xml │ │ ├── rounded_corner_top.xml │ │ └── rounded.xml ├── AliothFrameworks │ ├── Android.bp │ ├── AndroidManifest.xml │ └── res │ │ └── values │ │ └── dimens.xml ├── SettingsProviderM2012K11AC │ ├── Android.bp │ ├── res │ │ └── values │ │ │ └── defaults.xml │ └── AndroidManifest.xml ├── SettingsProviderM2012K11AG │ ├── Android.bp │ ├── res │ │ └── values │ │ │ └── defaults.xml │ └── AndroidManifest.xml ├── SettingsProviderM2012K11AI │ ├── Android.bp │ ├── res │ │ └── values │ │ │ └── defaults.xml │ └── AndroidManifest.xml └── frameworks │ └── base │ ├── packages │ └── SystemUI │ │ └── res │ │ └── values │ │ ├── config.xml │ │ └── dimens.xml │ └── core │ └── res │ └── res │ ├── xml │ └── power_profile.xml │ └── values │ └── config.xml ├── BoardConfig.mk ├── audio ├── tunings.txt ├── audio_policy_engine_configuration.xml ├── audio_karaoke_list.xml ├── mixer_paths_overlay_dynamic.xml ├── audio_configs.xml ├── audio_policy_engine_product_strategies.xml ├── audio_policy_engine_default_stream_volumes.xml ├── audio_policy_engine_stream_volumes.xml ├── sound_trigger_mixer_paths_qrd.xml ├── sound_trigger_mixer_paths.xml ├── sound_trigger_mixer_paths_cdp.xml └── sound_trigger_platform_info.xml ├── superior_alioth.mk ├── superior.dependencies ├── extract-files.sh ├── camera └── camera_cnf.txt ├── reorder-libs.py ├── device.mk └── vendor.prop /board-info.txt: -------------------------------------------------------------------------------- 1 | require board=alioth|aliothin 2 | -------------------------------------------------------------------------------- /libshims/lib-watermarkshim.cpp: -------------------------------------------------------------------------------- 1 | extern "C" { 2 | void _ZN4piex19GetPreviewImageDataEPNS_15StreamInterfaceEPNS_16PreviewImageDataE() {} 3 | } 4 | -------------------------------------------------------------------------------- /Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2022 The LineageOS Project 3 | // 4 | // SPDX-License-Identifier: Apache-2.0 5 | // 6 | 7 | soong_namespace { 8 | } 9 | -------------------------------------------------------------------------------- /configs/permissions/camerax-vendor-extensions.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 6 | -------------------------------------------------------------------------------- /Android.mk: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (C) 2021 The LineageOS Project 3 | # 4 | # SPDX-License-Identifier: Apache-2.0 5 | # 6 | 7 | LOCAL_PATH := $(call my-dir) 8 | 9 | ifeq ($(TARGET_DEVICE),alioth) 10 | include $(call all-makefiles-under,$(LOCAL_PATH)) 11 | endif 12 | -------------------------------------------------------------------------------- /libshims/Android.mk: -------------------------------------------------------------------------------- 1 | LOCAL_PATH := $(call my-dir) 2 | 3 | include $(CLEAR_VARS) 4 | 5 | LOCAL_SRC_FILES := lib-watermarkshim.cpp 6 | LOCAL_MODULE := lib-watermarkshim 7 | LOCAL_MODULE_TAGS := optional 8 | LOCAL_PROPRIETARY_MODULE := true 9 | 10 | include $(BUILD_SHARED_LIBRARY) 11 | -------------------------------------------------------------------------------- /setup-makefiles.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Copyright (C) 2021 The LineageOS Project 4 | # 5 | # SPDX-License-Identifier: Apache-2.0 6 | # 7 | 8 | set -e 9 | 10 | export DEVICE=alioth 11 | export DEVICE_COMMON=sm8250-common 12 | export VENDOR=xiaomi 13 | 14 | "./../../${VENDOR}/${DEVICE_COMMON}/setup-makefiles.sh" "$@" 15 | -------------------------------------------------------------------------------- /AndroidProducts.mk: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (C) 2021 The LineageOS Project 3 | # 4 | # SPDX-License-Identifier: Apache-2.0 5 | # 6 | 7 | PRODUCT_MAKEFILES := \ 8 | $(LOCAL_DIR)/superior_alioth.mk 9 | 10 | COMMON_LUNCH_CHOICES := \ 11 | superior_alioth-user \ 12 | superior_alioth-userdebug \ 13 | superior_alioth-eng 14 | -------------------------------------------------------------------------------- /libinit/Android.bp: -------------------------------------------------------------------------------- 1 | // 2 | // Copyright (C) 2021 The LineageOS Project 3 | // 4 | // SPDX-License-Identifier: Apache-2.0 5 | // 6 | 7 | cc_library_static { 8 | name: "init_xiaomi_alioth", 9 | srcs: ["init_xiaomi_alioth.cpp"], 10 | whole_static_libs: ["//device/xiaomi/sm8250-common:libinit_xiaomi_kona"], 11 | include_dirs: ["system/core/init"], 12 | recovery_available: true, 13 | } 14 | -------------------------------------------------------------------------------- /overlay-lineage/packages/apps/Aperture/app/src/main/res/values/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | true 9 | 10 | 11 | 12 | 4 13 | 5 14 | 6 15 | 7 16 | 17 | 18 | -------------------------------------------------------------------------------- /overlay/AliothSystemUI/Android.bp: -------------------------------------------------------------------------------- 1 | // Copyright (C) 2021 Paranoid Android 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | runtime_resource_overlay { 16 | name: "AliothSystemUI", 17 | sdk_version: "current", 18 | device_specific: true, 19 | } 20 | -------------------------------------------------------------------------------- /overlay/AliothFrameworks/Android.bp: -------------------------------------------------------------------------------- 1 | // Copyright (C) 2021 Paranoid Android 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | runtime_resource_overlay { 16 | name: "AliothFrameworks", 17 | sdk_version: "current", 18 | device_specific: true, 19 | } 20 | -------------------------------------------------------------------------------- /overlay/SettingsProviderM2012K11AC/Android.bp: -------------------------------------------------------------------------------- 1 | // Copyright (C) 2022 Paranoid Android 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | runtime_resource_overlay { 16 | name: "SettingsProviderM2012K11AC", 17 | sdk_version: "current", 18 | product_specific: true, 19 | } 20 | -------------------------------------------------------------------------------- /overlay/SettingsProviderM2012K11AG/Android.bp: -------------------------------------------------------------------------------- 1 | // Copyright (C) 2022 Paranoid Android 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | runtime_resource_overlay { 16 | name: "SettingsProviderM2012K11AG", 17 | sdk_version: "current", 18 | product_specific: true, 19 | } 20 | -------------------------------------------------------------------------------- /overlay/SettingsProviderM2012K11AI/Android.bp: -------------------------------------------------------------------------------- 1 | // Copyright (C) 2022 Paranoid Android 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | runtime_resource_overlay { 16 | name: "SettingsProviderM2012K11AI", 17 | sdk_version: "current", 18 | product_specific: true, 19 | } 20 | -------------------------------------------------------------------------------- /BoardConfig.mk: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (C) 2021 The LineageOS Project 3 | # 4 | # SPDX-License-Identifier: Apache-2.0 5 | # 6 | 7 | # Inherit from sm8250-common 8 | include device/xiaomi/sm8250-common/BoardConfigCommon.mk 9 | 10 | DEVICE_PATH := device/xiaomi/alioth 11 | 12 | BUILD_BROKEN_DUP_RULES := true 13 | 14 | # Board 15 | TARGET_BOARD_INFO_FILE := $(DEVICE_PATH)/board-info.txt 16 | 17 | # Display 18 | TARGET_SCREEN_DENSITY := 420 19 | 20 | # Init 21 | TARGET_INIT_VENDOR_LIB := //$(DEVICE_PATH):init_xiaomi_alioth 22 | TARGET_RECOVERY_DEVICE_MODULES := init_xiaomi_alioth 23 | 24 | # Kernel 25 | TARGET_KERNEL_CONFIG += vendor/alioth_defconfig 26 | 27 | # OTA assert 28 | TARGET_OTA_ASSERT_DEVICE := alioth,aliothin 29 | 30 | # Properties 31 | TARGET_VENDOR_PROP += $(DEVICE_PATH)/vendor.prop 32 | 33 | # Inherit from the proprietary version 34 | include vendor/xiaomi/alioth/BoardConfigVendor.mk 35 | -------------------------------------------------------------------------------- /overlay-lineage/frameworks/base/packages/SystemUI/res/values/config.xml: -------------------------------------------------------------------------------- 1 | 13 | 14 | 15 | false 16 | 17 | -------------------------------------------------------------------------------- /audio/tunings.txt: -------------------------------------------------------------------------------- 1 | EARTUNE_NBARDETEN, 1 2 | LTMTUNE_NDENYQTHRESH, 40 3 | LTMTUNE_NDENYQGAIN, 60 4 | LTMTUNE_NDELPFBLEND, 10 5 | LTMTUNE_NQUANTILE, 12 6 | LTMTUNE_FHSTCOEFFIIR, 0.25 7 | LTMTUNE_NBLACKMAX, 16 8 | LTMTUNE_NWHITEMIN, 240 9 | LTMTUNE_NRNGLIM, 25 10 | LTMTUNE_NHSTLIM, 115 11 | LTMTUNE_NCLPGAP, 48 12 | LTMTUNE_FDECOEFFIIR, 0.25 13 | LTMTUNE_NHSTUPDDEL, 64 14 | LTMTUNE_FLUTCOEFFIIR, 0.5 15 | LTMTUNE_NLUTCNTBLEND, 16 16 | LTMTUNE_FLUTCOEFFMINIIR, 0.10 17 | LTMTUNE_FLUTTHRESHIIR, 0.50 18 | LTMTUNE_NLUTCOEFFLPF, 256 19 | LTMTUNE_NLUTUPDDEL, 64 20 | LTMTUNE_FTMCOEFF, 1.0 21 | LTMTUNE_NTMORDER, 0 22 | LTMTUNE_AFAUTOACECON, 0.25, 0.25, 0.37, 0.5 23 | LTMTUNE_AFAUTOACEBRIL, 0.0, 0.0, 0.0, 0.0 24 | LTMTUNE_AFAUTOACEBRIH, 0.0, 0.0, 0.1, 0.2 25 | LTMTUNE_AFAUTOSATSAT, 1.0, 1.0, 1.0, 1.0 26 | LTMTUNE_AFAUTOSATOFF, 1.0, 1.0, 1.0, 1.0 27 | LTMTUNE_AFAUTODEGAIN, 0.0, 0.35, 0.6, 0.9 28 | LTMTUNE_AFAUTODEOF, 0.0, 0.0, 0.0, 0.0 -------------------------------------------------------------------------------- /overlay/SettingsProviderM2012K11AI/res/values/defaults.xml: -------------------------------------------------------------------------------- 1 | 2 | 19 | 20 | 21 | Mi 11X 22 | 23 | -------------------------------------------------------------------------------- /overlay/SettingsProviderM2012K11AC/res/values/defaults.xml: -------------------------------------------------------------------------------- 1 | 2 | 19 | 20 | 21 | Redmi K40 22 | 23 | -------------------------------------------------------------------------------- /overlay/SettingsProviderM2012K11AG/res/values/defaults.xml: -------------------------------------------------------------------------------- 1 | 2 | 19 | 20 | 21 | POCO F3 22 | 23 | -------------------------------------------------------------------------------- /overlay/AliothFrameworks/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | 15 | 16 | 20 | 21 | -------------------------------------------------------------------------------- /overlay-lineage/packages/apps/Dialer/java/com/android/incallui/res/values/lineage_config.xml: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 19 | false 20 | 21 | -------------------------------------------------------------------------------- /overlay/AliothSystemUI/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 18 | 19 | 23 | 24 | -------------------------------------------------------------------------------- /overlay/AliothSystemUI/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 14 | 15 | 16 | 17 | 55px 18 | 19 | 20 | 1px 21 | 22 | 23 | -------------------------------------------------------------------------------- /superior_alioth.mk: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (C) 2021 The LineageOS Project 3 | # 4 | # SPDX-License-Identifier: Apache-2.0 5 | # 6 | 7 | # Inherit from those products. Most specific first. 8 | $(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk) 9 | $(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk) 10 | 11 | # Inherit some common SuperiorOS stuff. 12 | $(call inherit-product, vendor/superior/config/common.mk) 13 | 14 | # Superior stuff 15 | SUPERIOR_OFFICIAL := true 16 | TARGET_FACE_UNLOCK_SUPPORTED := true 17 | TARGET_ENABLE_BLUR := true 18 | TARGET_SUPPORTS_QUICK_TAP := true 19 | USE_MOTO_CALCULATOR := true 20 | 21 | # Inherit from alioth device 22 | $(call inherit-product, device/xiaomi/alioth/device.mk) 23 | PRODUCT_NAME := superior_alioth 24 | PRODUCT_DEVICE := alioth 25 | PRODUCT_MANUFACTURER := Xiaomi 26 | PRODUCT_BRAND := POCO 27 | PRODUCT_MODEL := POCO F3 28 | TARGET_BOOT_ANIMATION_RES := 1080 29 | 30 | PRODUCT_GMS_CLIENTID_BASE := android-xiaomi 31 | 32 | BUILD_FINGERPRINT := POCO/alioth_global/alioth:12/SKQ1.211006.001/V13.0.6.0.SKHMIXM:user/release-keys 33 | -------------------------------------------------------------------------------- /audio/audio_policy_engine_configuration.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /overlay/SettingsProviderM2012K11AC/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 18 | 19 | 25 | -------------------------------------------------------------------------------- /overlay/SettingsProviderM2012K11AG/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 18 | 19 | 25 | -------------------------------------------------------------------------------- /overlay/SettingsProviderM2012K11AI/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 18 | 19 | 25 | -------------------------------------------------------------------------------- /overlay/AliothSystemUI/res/drawable/rounded_corner_bottom.xml: -------------------------------------------------------------------------------- 1 | 11 | 16 | 17 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /overlay/AliothSystemUI/res/drawable/rounded_corner_top.xml: -------------------------------------------------------------------------------- 1 | 11 | 16 | 17 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /overlay/AliothSystemUI/res/drawable/rounded.xml: -------------------------------------------------------------------------------- 1 | 14 | 19 | 20 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /audio/audio_karaoke_list.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /superior.dependencies: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "repository": "vendor_xiaomi_alioth", 4 | "target_path": "vendor/xiaomi/alioth" 5 | }, 6 | { 7 | "repository": "vendor_xiaomi_sm8250-common", 8 | "target_path": "vendor/xiaomi/sm8250-common" 9 | }, 10 | { 11 | "repository": "device_xiaomi_sm8250-common", 12 | "target_path": "device/xiaomi/sm8250-common" 13 | }, 14 | { 15 | "repository": "kernel_xiaomi_alioth", 16 | "target_path": "kernel/xiaomi/alioth", 17 | "branch": "staging" 18 | }, 19 | { 20 | "repository": "hardware_xiaomi", 21 | "target_path": "hardware/xiaomi", 22 | "branch": "alioth" 23 | }, 24 | { 25 | "repository": "android_packages_resources_devicesettings", 26 | "target_path": "packages/resources/devicesettings", 27 | "branch": "alioth" 28 | }, 29 | { 30 | "repository": "Chaitanyakm/alioth-camera", 31 | "target_path": "vendor/xiaomi/camera", 32 | "branch":"master", 33 | "remote":"gitlab" 34 | }, 35 | { 36 | "repository": "Chaitanyakm/vendor_bcr", 37 | "target_path": "vendor/bcr", 38 | "branch": "main", 39 | "remote": "github" 40 | } 41 | 42 | 43 | ] -------------------------------------------------------------------------------- /extract-files.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Copyright (C) 2021 The LineageOS Project 4 | # 5 | # SPDX-License-Identifier: Apache-2.0 6 | # 7 | 8 | function blob_fixup() { 9 | case "${1}" in 10 | vendor/etc/libnfc-nci.conf) 11 | cat << EOF >> "${2}" 12 | ############################################################################### 13 | # Mifare Tag implementation 14 | # 0: General implementation 15 | # 1: Legacy implementation 16 | LEGACY_MIFARE_READER=0 17 | EOF 18 | ;; 19 | vendor/lib64/vendor.qti.hardware.camera.postproc@1.0-service-impl.so) 20 | "${SIGSCAN}" -p "9A 0A 00 94" -P "1F 20 03 D5" -f "${2}" 21 | ;; 22 | vendor/lib64/hw/camera.qcom.so) 23 | sed -i "s/\x73\x74\x5F\x6C\x69\x63\x65\x6E\x73\x65\x2E\x6C\x69\x63/\x63\x61\x6D\x65\x72\x61\x5F\x63\x6E\x66\x2E\x74\x78\x74/g" "${2}" 24 | ;; 25 | vendor/lib64/camera/components/com.mi.node.watermark.so) 26 | "${PATCHELF}" --add-needed "libpiex_shim.so" "${2}" 27 | ;; 28 | esac 29 | } 30 | 31 | # If we're being sourced by the common script that we called, 32 | # stop right here. No need to go down the rabbit hole. 33 | if [ "${BASH_SOURCE[0]}" != "${0}" ]; then 34 | return 35 | fi 36 | 37 | set -e 38 | 39 | export DEVICE=alioth 40 | export DEVICE_COMMON=sm8250-common 41 | export VENDOR=xiaomi 42 | 43 | "./../../${VENDOR}/${DEVICE_COMMON}/extract-files.sh" "$@" 44 | -------------------------------------------------------------------------------- /overlay/AliothSystemUI/res/values/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 14 | 15 | 16 | 20 | M22,0C19.94,0.01 18.83,0.04 17.73,0.11C16.91,0.17 16.09,0.25 15.3,0.36C14.5,0.48 13.72,0.62 12.95,0.81C11.42,1.19 9.97,1.72 8.65,2.43C7.32,3.14 6.12,4.02 5.08,5.07C4.04,6.11 3.15,7.31 2.44,8.64C1.73,9.97 1.19,11.42 0.82,12.94C0.63,13.7 0.48,14.49 0.37,15.29C0.25,16.09 0.17,16.9 0.12,17.72C0.05,18.82 0.02,19.93 0.01,21.55 21 | 22 | 23 | -------------------------------------------------------------------------------- /overlay-lineage/packages/apps/Settings/res/values/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | 14 | 15 | 16 | true 17 | true 18 | 19 | 20 | true 21 | 22 | 23 | true 24 | 25 | 26 | true 27 | 28 | 29 | -------------------------------------------------------------------------------- /libinit/init_xiaomi_alioth.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2021 The LineageOS Project 3 | * 4 | * SPDX-License-Identifier: Apache-2.0 5 | */ 6 | 7 | #include 8 | #include 9 | 10 | #include "vendor_init.h" 11 | 12 | static const variant_info_t aliothin_info = { 13 | .hwc_value = "INDIA", 14 | .sku_value = "", 15 | 16 | .mod_device = "alioth_in_global", 17 | .brand = "Xiaomi", 18 | .device = "aliothin", 19 | .marketname = "Mi 11X", 20 | .model = "M2012K11AI", 21 | .build_fingerprint = "Mi/aliothin/aliothin:13/TKQ1.220829.002/V14.0.2.0.TKHINXM:user/release-keys", 22 | 23 | .nfc = false, 24 | }; 25 | 26 | static const variant_info_t alioth_global_info = { 27 | .hwc_value = "GLOBAL", 28 | .sku_value = "", 29 | 30 | .mod_device = "alioth_in_global", 31 | .brand = "POCO", 32 | .device = "alioth", 33 | .marketname = "POCO F3", 34 | .model = "M2012K11AG", 35 | .build_fingerprint = "POCO/alioth_global/alioth:13/TKQ1.220829.002/V14.0.4.0.TKHMIXM:user/release-keys", 36 | 37 | .nfc = true, 38 | }; 39 | 40 | static const variant_info_t alioth_info = { 41 | .hwc_value = "", 42 | .sku_value = "", 43 | 44 | .mod_device = "alioth_in_global", 45 | .brand = "Redmi", 46 | .device = "alioth", 47 | .marketname = "K40", 48 | .model = "M2012K11AC", 49 | .build_fingerprint = "Redmi/alioth/alioth:13/TKQ1.220829.002/V14.0.4.0.TKHCNXM:user/release-keys", 50 | 51 | .nfc = true, 52 | }; 53 | 54 | static const std::vector variants = { 55 | aliothin_info, 56 | alioth_global_info, 57 | alioth_info, 58 | }; 59 | 60 | void vendor_load_properties() { 61 | search_variant(variants); 62 | set_dalvik_heap(); 63 | } 64 | -------------------------------------------------------------------------------- /overlay/AliothFrameworks/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 14 | 15 | 16 | 55px 17 | 18 | 19 | 126px 20 | 21 | 22 | 25px 23 | 24 | 27 | 100px 28 | 29 | 31 | 38dp 32 | 28dp 33 | 34 | 35 | 38dp 36 | 37 | -------------------------------------------------------------------------------- /camera/camera_cnf.txt: -------------------------------------------------------------------------------- 1 | ############################################################ 2 | TPmnQaPPrA5eO2LOLggh1VwFuUBAQi6vEmWKy+JON6Act6n6MGo43ZInplaA 3 | PkAWvl1vAK99VbPSAmKaGj3r0ApwMSyO7ARlfli0Rza5rajanjJtMe321Rdi 4 | mCxJUAslvAx8lI51rwJYoblkTVzCMdqbaZ6la/BSCUfYzpPsCdg4Q67gMoKA 5 | m0GdTo2ZG/NkAIInCAxYHFEX3+YA2sM+OXania4E+R23CmRyBcXTB8AseVf7 6 | FwAOVLGy078DgBUpgWdRCP1WDOJJrvTsJ62f4SUwAkJULwdTbXH/7bHAUdiU 7 | FDDYgzs/B89uQVNsnqC7lv1hgHmKGBej2SkYQuidn+m4HdY4I1D4BmqSurJp 8 | NbA9gAkZAb3YwNDyUO3F6eCBhAGQrJjWvebF9Xx0UlAeQ9GdKAEhjCyFrwLA 9 | l32n2JCtKXA7v+iL2R8BBtAQ4fTho588RAB6fo26LpJsic6BrWmAt8dhnecq 10 | 0ryTnaENemXf23KWdj7OLZFQz1J77bXfXjk0z4HMGyJefS1+FGXv7bjSAoct 11 | xbqU87cg5oMCD2GIW0jzp6nBuF8x1MYc5Wlgo3cfQiKWUQWAKRqd56UIuVcP 12 | yA8mAWjAdr4sAP2VY19QwrYUyrPAAD/bhFII/DZAIVCI7mUasbwaVzZoyjAq 13 | DSPyPR2UNhLiTMgfL7YQ1fxUC2YxQJoA5KTZ2sm6a7rG/K+fq0oYO/spitHO 14 | zEuzaAv6ANu9mo2cuMHn4swebZH+X9T86R+OQbhttMuAnSXecs1FhF9eePiV 15 | qbU/bl5ueAlTYGgO2d67IYzYdIdqxo7nam8qy7is 16 | ------------------------------------------------------------ 17 | F/gynyvlxXePc8KOceHbsSKnVGf8bWafLB5WtvUQGEqM63eOqEXWS6PlgOAQ 18 | YCiZ/J4AEXUXH45fYQaeYTd3W/ldAYUOC5Z/eRbmJzp26A/iVpGQSunH8IXx 19 | 8OLZhhh/ttxz4YN/MxvChmz1aDT+AF/Vl+kgw/5lHhAAQlMBH7ywAkYZgACo 20 | j7sPljJG6AiJOxA1GwfovOM6V+2RqYwDHmcO9BOLS6zO+wgf8JqGAIjLPkOG 21 | PZSWOG79yPkEVfGDS/28TLAyYj3dTPAPtrp1rTsAC3omAzvM1iaAle2E5run 22 | I0QtwKzEIoaFgYyOP91M/1oTlCllXCCDwUlQkVecGfiat3FqAam5GQAPDEvK 23 | uAJNKoOcD37XvJjLCRwPmA5AajShfBVxBBmbY+tJO+qRHlBia123MzZQQ4AN 24 | c5VLwME+fzg57VxTgNFl2QPMR7sQn1kD3aEwSAdlqSWZDAnGzpOEBAk29O9V 25 | 230eCArDRZpL1G48vPZ037fyt2X9AnDbbwAeQ8jNaOIpy4odHEHc+6xgKZ/e 26 | dk7AJSmA9vL0EQcOeYC4dwy7A2rqTAMv6lka7ROPXo38IEgOEvw0nZD+t4DA 27 | 730G7OTrt84fgc8JALvS9ql5vhTIAkQ2aJTMMZo0rnYNN3AyoojhSI6jr6EG 28 | DFvxjgXtV8SOCE+OYE8y9Z9sTiAw+IOYegLcN/6QiBYrBs1P0dS83PhmWTWM 29 | AROfMlZrzG5Jg+42i3B8AuWCsWASk/Nx9BAN6K8SUVeAe4wMAW1/pO2zOmWp 30 | n5cADc72lDd0orMTAVHaObIXgQ+ufHh6Mvr6paPQYSuGA4RN191QZlx7g7gu 31 | lR5EAClbgpUbB/OdjONVmcb/aluYmcM9ShpMBwAY9uD/ 32 | ############################################################ 33 | -------------------------------------------------------------------------------- /reorder-libs.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # 3 | # Copyright (C) 2021 The LineageOS Project 4 | # 5 | # SPDX-License-Identifier: Apache-2.0 6 | # 7 | 8 | from functools import cmp_to_key 9 | from locale import LC_ALL, setlocale, strcoll 10 | from pathlib import Path 11 | 12 | FILES = [Path(file) for file in [ 13 | "proprietary-files.txt", 14 | ]] 15 | 16 | setlocale(LC_ALL, "C") 17 | 18 | def strcoll_extract_utils(string1: str, string2: str) -> int: 19 | # Skip logic if one of the string if empty 20 | if not string1 or not string2: 21 | return strcoll(string1, string2) 22 | 23 | # Remove '-' from strings if there, 24 | # it is used to indicate a build target 25 | string1 = string1.removeprefix('-') 26 | string2 = string2.removeprefix('-') 27 | 28 | # If no directories, compare normally 29 | if not "/" in string1 and not "/" in string2: 30 | return strcoll(string1, string2) 31 | 32 | string1_dir = string1.rsplit("/", 1)[0] + "/" 33 | string2_dir = string2.rsplit("/", 1)[0] + "/" 34 | if string1_dir == string2_dir: 35 | # Same directory, compare normally 36 | return strcoll(string1, string2) 37 | 38 | if string1_dir.startswith(string2_dir): 39 | # First string dir is a subdirectory of the second one, 40 | # return string1 > string2 41 | return -1 42 | 43 | if string2_dir.startswith(string1_dir): 44 | # Second string dir is a subdirectory of the first one, 45 | # return string2 > string1 46 | return 1 47 | 48 | # Compare normally 49 | return strcoll(string1, string2) 50 | 51 | for file in FILES: 52 | if not file.is_file(): 53 | print(f"File {str(file)} not found") 54 | continue 55 | 56 | with open(file, 'r') as f: 57 | sections = f.read().split("\n\n") 58 | 59 | ordered_sections = [] 60 | for section in sections: 61 | section_list = [line.strip() for line in section.splitlines()] 62 | section_list.sort(key=cmp_to_key(strcoll_extract_utils)) 63 | ordered_sections.append("\n".join(section_list)) 64 | 65 | with open(file, 'w') as f: 66 | f.write("\n\n".join(ordered_sections).strip() + "\n") 67 | -------------------------------------------------------------------------------- /device.mk: -------------------------------------------------------------------------------- 1 | # 2 | # Copyright (C) 2021 The LineageOS Project 3 | # 4 | # SPDX-License-Identifier: Apache-2.0 5 | # 6 | 7 | # A/B 8 | TARGET_IS_VAB := true 9 | 10 | # Inherit from sm8250-common 11 | $(call inherit-product, device/xiaomi/sm8250-common/kona.mk) 12 | 13 | PRODUCT_AAPT_CONFIG := normal 14 | PRODUCT_AAPT_PREF_CONFIG := xxhdpi 15 | 16 | # APN 17 | PRODUCT_COPY_FILES += \ 18 | $(LOCAL_PATH)/configs/etc/apns-conf.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/apns-conf.xml 19 | 20 | # Audio configs 21 | PRODUCT_COPY_FILES += \ 22 | $(call find-copy-subdir-files,*,$(LOCAL_PATH)/audio/,$(TARGET_COPY_OUT_VENDOR)/etc) 23 | 24 | # Boot animation 25 | TARGET_SCREEN_HEIGHT := 2400 26 | TARGET_SCREEN_WIDTH := 1080 27 | 28 | # Camera 29 | PRODUCT_COPY_FILES += \ 30 | $(LOCAL_PATH)/camera/camera_cnf.txt:$(TARGET_COPY_OUT_VENDOR)/etc/camera/camera_cnf.txt 31 | 32 | PRODUCT_PACKAGES += \ 33 | libpiex_shim 34 | 35 | # Miuicamera 36 | $(call inherit-product-if-exists, vendor/xiaomi/camera/products/miuicamera.mk) 37 | 38 | # Camera Extensions 39 | PRODUCT_SYSTEM_PROPERTIES += \ 40 | ro.camerax.extensions.enabled=true 41 | 42 | # Camera Extensions permissions 43 | PRODUCT_COPY_FILES += \ 44 | $(LOCAL_PATH)/configs/permissions/camerax-vendor-extensions.xml:$(TARGET_COPY_OUT_SYSTEM_EXT)/etc/permissions/camerax-vendor-extensions.xml 45 | 46 | # Dolby Support 47 | TARGET_USES_MIUI_DOLBY := true 48 | 49 | # Dolby Config File 50 | PRODUCT_COPY_FILES += \ 51 | $(LOCAL_PATH)/dolby/config/dax-default.xml:$(TARGET_COPY_OUT_VENDOR)/etc/dolby/dax-default.xml 52 | 53 | # Overlays 54 | DEVICE_PACKAGE_OVERLAYS += \ 55 | $(LOCAL_PATH)/overlay \ 56 | $(LOCAL_PATH)/overlay-lineage 57 | 58 | PRODUCT_PACKAGES += \ 59 | AliothFrameworks \ 60 | AliothSystemUI 61 | 62 | # Set Default Device name according to MIUI 63 | PRODUCT_PACKAGES += \ 64 | SettingsProviderM2012K11AC \ 65 | SettingsProviderM2012K11AG \ 66 | SettingsProviderM2012K11AI 67 | 68 | # Shipping API level 69 | PRODUCT_SHIPPING_API_LEVEL := 30 70 | 71 | # Shims 72 | PRODUCT_PACKAGES += \ 73 | lib-watermarkshim 74 | 75 | # Soong namespaces 76 | PRODUCT_SOONG_NAMESPACES += \ 77 | $(LOCAL_PATH) 78 | 79 | # Inherit from vendor blobs 80 | $(call inherit-product, vendor/xiaomi/alioth/alioth-vendor.mk) 81 | 82 | #Bcr 83 | $(call inherit-product, vendor/bcr/bcr.mk) 84 | -------------------------------------------------------------------------------- /overlay/frameworks/base/packages/SystemUI/res/values/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 19 | 20 | 22 | 23 | 31 | 32 | M 500,52 33 | a 35,35 0 1 0 82,0 35,35 0 1 0 -82,0 34 | Z 35 | 36 | 37 | 38 | 1 39 | 40 | 41 | true 42 | 43 | 44 | false 45 | 46 | 47 | 120 48 | 49 | 60 50 | 51 | -------------------------------------------------------------------------------- /overlay/frameworks/base/packages/SystemUI/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 18 | 19 | 21 | 80px 22 | 23 | 24 | 4dp 25 | 26 | 27 | 4dp 28 | 29 | 34 | 1080px 35 | 36 | 40 | 970px 41 | 42 | 44 | @dimen/physical_fingerprint_sensor_center_screen_location_y 45 | 46 | 47 | 55px 48 | 49 | 50 | @dimen/navigation_side_padding 51 | 52 | -------------------------------------------------------------------------------- /audio/mixer_paths_overlay_dynamic.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /vendor.prop: -------------------------------------------------------------------------------- 1 | # Audio 2 | persist.vendor.audio.delta.refresh=true 3 | persist.vendor.audio.misound.disable=true 4 | ro.audio.monitorRotation=true 5 | ro.vendor.audio.enhance.support=false 6 | ro.vendor.audio.gain.support=true 7 | ro.vendor.audio.karaok.support=true 8 | ro.vendor.audio.ns.support=false 9 | ro.vendor.audio.sfx.audiovisual=false 10 | ro.vendor.audio.soundtrigger.appdefine.cnn.level=35 11 | ro.vendor.audio.soundtrigger.appdefine.gmm.level=55 12 | ro.vendor.audio.soundtrigger.appdefine.gmm.user.level=65 13 | ro.vendor.audio.soundtrigger.appdefine.vop.level=10 14 | ro.vendor.audio.soundtrigger.lowpower=true 15 | ro.vendor.audio.soundtrigger.snr=16 16 | ro.vendor.audio.soundtrigger=sva 17 | ro.vendor.audio.soundtrigger.training.level=50 18 | ro.vendor.audio.soundtrigger.xanzn.cnn.level=80 19 | ro.vendor.audio.soundtrigger.xanzn.gmm.level=45 20 | ro.vendor.audio.soundtrigger.xanzn.gmm.user.level=30 21 | ro.vendor.audio.soundtrigger.xanzn.vop.level=10 22 | ro.vendor.audio.soundtrigger.xatx.cnn.level=45 23 | ro.vendor.audio.soundtrigger.xatx.gmm.level=25 24 | ro.vendor.audio.soundtrigger.xatx.gmm.user.level=40 25 | ro.vendor.audio.soundtrigger.xatx.vop.level=-10 26 | ro.vendor.audio.spk.clean=true 27 | ro.vendor.audio.spk.stereo=true 28 | ro.vendor.audio.support.sound.id=true 29 | ro.vendor.audio.us.type=mius 30 | ro.vendor.audio.zoom.support=true 31 | ro.vendor.audio.zoom.type=1 32 | ro.config.media_vol_steps=16 33 | 34 | # Display 35 | ro.vendor.display.paneltype=2 36 | vendor.display.defer_fps_frame_count=2 37 | 38 | # Haptics 39 | sys.haptic.motor=linear 40 | sys.haptic.infinitelevel=true 41 | sys.haptic.down.weak=0 42 | sys.haptic.down.normal=2.5 43 | sys.haptic.down.strong=5 44 | sys.haptic.down=5,2 45 | sys.haptic.tap.normal=3,2.5 46 | sys.haptic.tap.light=5,2 47 | sys.haptic.flick=5,2 48 | sys.haptic.flick.light=7,2 49 | sys.haptic.switch=9,2 50 | sys.haptic.mesh.heavy=8,2 51 | sys.haptic.mesh.normal=5,2 52 | sys.haptic.mesh.light=5,1 53 | sys.haptic.long.press=0,1 54 | sys.haptic.popup.normal=6,2 55 | sys.haptic.popup.light=6,1 56 | sys.haptic.pickup=2,2 57 | sys.haptic.scroll.edge=7,0 58 | sys.haptic.trigger.drawer=2,0 59 | sys.haptic.hold=4,0 60 | sys.haptic.runin=13 61 | sys.haptic.dynamiceffect=true 62 | sys.haptic.dynamiceffect.richtap=true 63 | sys.haptic.ignoreWhenCamera=true 64 | 65 | # TouchFeature 66 | ro.vendor.touchfeature.type=43 67 | 68 | # prop for amoled panel 69 | ro.vendor.display.type=oled 70 | 71 | # displayfeature use poll to monitor backlight brightness 72 | ro.vendor.xiaomi.bl.poll=true 73 | 74 | # White Point Calibration 75 | ro.vendor.whitepoint_calibration_enable=false 76 | 77 | #Property for display feature histogram/fod 78 | ro.vendor.histogram.enable=true 79 | ro.vendor.fod.dimlayer.enable=true 80 | 81 | # prop for displayfeture cabc/bcbc/dfps 82 | ro.vendor.cabc.enable=false 83 | ro.vendor.bcbc.enable=true 84 | ro.vendor.dfps.enable=false 85 | ro.vendor.smart_dfps.enable=true 86 | 87 | #prop of disable cloud control in video app 88 | ro.vendor.video.decode.only=false 89 | 90 | #for CTS fps 91 | ro.vendor.display.default_fps=60 92 | 93 | # prop for software 12bit bl 94 | ro.vendor.soft_backlight.enable=true 95 | 96 | #logd 8192 grade hbm support 97 | ro.vendor.hbm_backlight.enable=true 98 | 99 | #system property for displayfeature hidl 100 | sys.displayfeature_hidl=true 101 | 102 | #system prop for dc backlight 103 | persist.vendor.dc_backlight.enable=false 104 | persist.vendor.fod.modified.dc_status=false 105 | 106 | #property for dc backlight threshold 107 | persist.vendor.dc_backlight.threshold=440 108 | 109 | #property for display fps switch 110 | persist.vendor.dfps.level=60 111 | persist.vendor.power.dfps.level=0 112 | 113 | #Game color plus 114 | vendor.display.use_layer_ext=0 115 | 116 | # Display Feature 117 | vendor.hbm.enable=true 118 | vendor.display.qdcm.mode_combine=1 119 | persist.vendor.df.extcolor.proc=0 120 | -------------------------------------------------------------------------------- /audio/audio_configs.xml: -------------------------------------------------------------------------------- 1 | 2 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | -------------------------------------------------------------------------------- /audio/audio_policy_engine_product_strategies.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | 19 | 21 | 22 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | -------------------------------------------------------------------------------- /audio/audio_policy_engine_default_stream_volumes.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 17 | 18 | 19 | 20 | 21 | 0,0 22 | 100,0 23 | 24 | 25 | 0,-9600 26 | 100,-9600 27 | 28 | 29 | 30 | 1,-2400 31 | 33,-1800 32 | 66,-1200 33 | 100,-600 34 | 35 | 36 | 37 | 1,-5800 38 | 20,-4000 39 | 60,-1700 40 | 100,0 41 | 42 | 43 | 44 | 1,-4950 45 | 33,-3350 46 | 66,-1700 47 | 100,0 48 | 49 | 50 | 51 | 1,-5800 52 | 20,-4000 53 | 60,-1700 54 | 100,0 55 | 56 | 57 | 58 | 1,-4680 59 | 42,-2070 60 | 85,-540 61 | 100,0 62 | 63 | 64 | 65 | 1,-4950 66 | 33,-3350 67 | 66,-1700 68 | 100,0 69 | 70 | 71 | 72 | 1,-5800 73 | 20,-4000 74 | 60,-2100 75 | 100,-1000 76 | 77 | 78 | 79 | 1,-12700 80 | 20,-8000 81 | 60,-4000 82 | 100,0 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 0,-5800 92 | 20,-4000 93 | 60,-1700 94 | 100,0 95 | 96 | 97 | 98 | 99 | 0,-4950 100 | 33,-3350 101 | 66,-1700 102 | 100,0 103 | 104 | 105 | 106 | 107 | 0,-5800 108 | 20,-4000 109 | 60,-1700 110 | 100,0 111 | 112 | 113 | 114 | 115 | 0,-4950 116 | 33,-3350 117 | 66,-1700 118 | 100,0 119 | 120 | 121 | 122 | 123 | 0,-5800 124 | 20,-4000 125 | 60,-2100 126 | 100,-1000 127 | 128 | 129 | 130 | 131 | 0,-12700 132 | 20,-8000 133 | 60,-4000 134 | 100,0 135 | 136 | 137 | -------------------------------------------------------------------------------- /overlay/frameworks/base/core/res/res/xml/power_profile.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 0.1 4 | 62.66 5 | 503.67 6 | 17.85 7 | 1.35 8 | 0.96 9 | 275.28 10 | 39.57 11 | 24.51 12 | 60.2 13 | 180.22 14 | 960.02 15 | 114.51 16 | 226.02 17 | 98.46 18 | 19 | 1.23 20 | 1.23 21 | 22 | 23 | 4 24 | 3 25 | 1 26 | 27 | 28 | 300000 29 | 403200 30 | 518400 31 | 614400 32 | 691200 33 | 787200 34 | 883200 35 | 979200 36 | 1075200 37 | 1171200 38 | 1248000 39 | 1344000 40 | 1420800 41 | 1516800 42 | 1612800 43 | 1708800 44 | 1804800 45 | 46 | 47 | 51.64 48 | 53.58 49 | 55.51 50 | 56.63 51 | 57.26 52 | 58.99 53 | 59.87 54 | 62.02 55 | 62.96 56 | 64.01 57 | 65.85 58 | 67.21 59 | 69.05 60 | 71.79 61 | 74.46 62 | 76.39 63 | 78.76 64 | 65 | 66 | 710400 67 | 825600 68 | 940800 69 | 1056000 70 | 1171200 71 | 1286400 72 | 1382400 73 | 1478400 74 | 1574400 75 | 1670400 76 | 1766400 77 | 1862400 78 | 1958400 79 | 2054400 80 | 2150400 81 | 2246400 82 | 2342400 83 | 2419200 84 | 85 | 86 | 97.85 87 | 106.38 88 | 114.72 89 | 123.5 90 | 133.05 91 | 144.42 92 | 152.12 93 | 162.39 94 | 174.69 95 | 186.64 96 | 200.43 97 | 232.56 98 | 245.21 99 | 260.78 100 | 282.01 101 | 300.11 102 | 324.37 103 | 348.25 104 | 105 | 106 | 844800 107 | 960000 108 | 1075200 109 | 1190400 110 | 1305600 111 | 1401600 112 | 1516800 113 | 1632000 114 | 1747200 115 | 1862400 116 | 1977600 117 | 2073600 118 | 2169600 119 | 2265600 120 | 2361600 121 | 2457600 122 | 2553600 123 | 2649600 124 | 2745600 125 | 2841600 126 | 127 | 128 | 105.19 129 | 113.56 130 | 122.7 131 | 132.18 132 | 142.49 133 | 150.94 134 | 168.52 135 | 182.35 136 | 199.1 137 | 216.74 138 | 244.09 139 | 262.42 140 | 309.63 141 | 321.28 142 | 332.67 143 | 353.95 144 | 379.05 145 | 409.84 146 | 443.27 147 | 493.34 148 | 149 | 12.91 150 | 7.85 151 | 152 | 22.7 153 | 154 | 4520 155 | 0 156 | 0 157 | 0 158 | 159 | 0 160 | 161 | .0002 162 | .002 163 | .02 164 | .2 165 | 2 166 | 167 | 0 168 | 0 169 | 0 170 | 171 | 0 172 | 0 173 | 0 174 | 0 175 | 0 176 | 177 | 0 178 | 179 | 0 180 | 0 181 | 182 | 0 183 | 3300 184 | 185 | -------------------------------------------------------------------------------- /audio/audio_policy_engine_stream_volumes.xml: -------------------------------------------------------------------------------- 1 | 2 | 16 | 24 | 25 | 26 | 27 | voice_call 28 | 1 29 | 5 30 | 31 | 0,-4200 32 | 33,-2800 33 | 66,-1400 34 | 100,0 35 | 36 | 37 | 0,-2400 38 | 33,-1600 39 | 66,-800 40 | 100,0 41 | 42 | 43 | 0,-2400 44 | 33,-1600 45 | 66,-800 46 | 100,0 47 | 48 | 49 | 50 | 51 | 52 | 53 | system 54 | 0 55 | 15 56 | 57 | 1,-3000 58 | 33,-2600 59 | 66,-2200 60 | 100,-1800 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | ring 70 | 0 71 | 15 72 | 73 | 74 | 1,-2970 75 | 33,-2010 76 | 66,-1020 77 | 100,0 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | music 86 | 0 87 | 150 88 | 89 | 90 | 1,-5978 91 | 13,-4617 92 | 20,-3956 93 | 27,-3368 94 | 33,-3020 95 | 40,-2656 96 | 47,-1885 97 | 53,-1709 98 | 60,-1169 99 | 66,-892 100 | 73,-514 101 | 80,-349 102 | 87,-338 103 | 93,-260 104 | 100,0 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | assistant 113 | 0 114 | 15 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | alarm 124 | 1 125 | 15 126 | 127 | 128 | 0,-2970 129 | 33,-2010 130 | 66,-1020 131 | 100,0 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | notification 140 | 0 141 | 15 142 | 143 | 144 | 1,-2970 145 | 33,-2010 146 | 66,-1020 147 | 100,0 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | bluetooth_sco 156 | 1 157 | 15 158 | 159 | 0,-420 160 | 33,-280 161 | 66,-140 162 | 100,0 163 | 164 | 165 | 0,-2400 166 | 33,-1600 167 | 66,-800 168 | 100,0 169 | 170 | 171 | 0,-4200 172 | 33,-2800 173 | 66,-1400 174 | 100,0 175 | 176 | 177 | 178 | 179 | 180 | 181 | enforced_audible 182 | 0 183 | 7 184 | 185 | 1,-3000 186 | 33,-2600 187 | 66,-2200 188 | 100,-1800 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | dtmf 198 | 0 199 | 15 200 | 201 | 1,-3000 202 | 33,-2600 203 | 66,-2200 204 | 100,-1800 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | tts 214 | 0 215 | 15 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | accessibility 225 | 1 226 | 15 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | -------------------------------------------------------------------------------- /audio/sound_trigger_mixer_paths_qrd.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 243 | 244 | 245 | 246 | 247 | 248 | 249 | 250 | 251 | 252 | 253 | 254 | 255 | 256 | 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | 266 | 267 | 268 | 269 | 270 | 271 | 272 | 273 | 274 | 275 | 276 | 277 | 278 | 279 | 280 | 281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 | 291 | 292 | 293 | 294 | 295 | 296 | 297 | 298 | 299 | 300 | 301 | 302 | 303 | 304 | 305 | 306 | 307 | 308 | 309 | 310 | 311 | 312 | 313 | 314 | 315 | 316 | 317 | 318 | 319 | 320 | 321 | 322 | 323 | 324 | 325 | 326 | 327 | 328 | 329 | 330 | -------------------------------------------------------------------------------- /audio/sound_trigger_mixer_paths.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 243 | 244 | 245 | 246 | 247 | 248 | 249 | 250 | 251 | 252 | 253 | 254 | 255 | 256 | 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | 266 | 267 | 268 | 269 | 270 | 271 | 272 | 273 | 274 | 275 | 276 | 277 | 278 | 279 | 280 | 281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 | 291 | 292 | 293 | 294 | 295 | 296 | 297 | 298 | 299 | 300 | 301 | 302 | 303 | 304 | 305 | 306 | 307 | 308 | 309 | 310 | 311 | 312 | 313 | 314 | 315 | 316 | 317 | 318 | 319 | 320 | 321 | 322 | 323 | 324 | 325 | 326 | 327 | 328 | 329 | 330 | 331 | 332 | 333 | 334 | 335 | -------------------------------------------------------------------------------- /audio/sound_trigger_mixer_paths_cdp.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 243 | 244 | 245 | 246 | 247 | 248 | 249 | 250 | 251 | 252 | 253 | 254 | 255 | 256 | 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | 266 | 267 | 268 | 269 | 270 | 271 | 272 | 273 | 274 | 275 | 276 | 277 | 278 | 279 | 280 | 281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 | 291 | 292 | 293 | 294 | 295 | 296 | 297 | 298 | 299 | 300 | 301 | 302 | 303 | 304 | 305 | 306 | 307 | 308 | 309 | 310 | 311 | 312 | 313 | 314 | 315 | 316 | 317 | 318 | 319 | 320 | 321 | 322 | 323 | 324 | 325 | 326 | 327 | 328 | 329 | 330 | 331 | 332 | 333 | 334 | 335 | 336 | 337 | 338 | 339 | 340 | 341 | 342 | 343 | 344 | 345 | 346 | 347 | 348 | 349 | 350 | 351 | 352 | 353 | 354 | 355 | 356 | 357 | 358 | 359 | 360 | 361 | 362 | 363 | 364 | 365 | 366 | -------------------------------------------------------------------------------- /overlay/frameworks/base/core/res/res/values/config.xml: -------------------------------------------------------------------------------- 1 | 2 | 13 | 14 | 16 | 17 | 18 | 20 | true 21 | 22 | 24 | true 25 | 26 | 27 | true 28 | 29 | 31 | false 32 | 33 | 46 | true 47 | 48 | 50 | vendor.qti.iwlan 51 | 52 | 58 | 59 | 4 60 | 5 61 | 10 62 | 30 63 | 100 64 | 400 65 | 600 66 | 1000 67 | 68 | 69 | 75 | 76 | 800 77 | 800 78 | 500 79 | 500 80 | 500 81 | 500 82 | 500 83 | 500 84 | 85 | 86 | 96 | 97 | 2 98 | 10 99 | 30 100 | 100 101 | 800 102 | 2000 103 | 4000 104 | 105 | 106 | 117 | 118 | 4.5 119 | 6.6 120 | 8.0 121 | 20.0 122 | 24.3 123 | 29.7 124 | 34.0 125 | 46.0 126 | 59.0 127 | 76.0 128 | 81.0 129 | 82.0 130 | 82.0 131 | 82.0 132 | 83.0 133 | 83.0 134 | 83.0 135 | 84.0 136 | 84.0 137 | 85.0 138 | 85.0 139 | 85.0 140 | 85.0 141 | 86.0 142 | 86.0 143 | 87.0 144 | 89.0 145 | 90.0 146 | 91.0 147 | 93.0 148 | 94.0 149 | 96.0 150 | 97.0 151 | 99.0 152 | 100.0 153 | 101.0 154 | 104.0 155 | 105.0 156 | 106.0 157 | 108.0 158 | 109.0 159 | 111.0 160 | 112.0 161 | 114.0 162 | 116.0 163 | 137.0 164 | 157.0 165 | 180.0 166 | 205.0 167 | 226.0 168 | 257.0 169 | 280.0 170 | 295.0 171 | 369.0 172 | 400.0 173 | 416.7 174 | 433.3 175 | 450.0 176 | 466.7 177 | 483.3 178 | 500.0 179 | 512.5 180 | 525.0 181 | 537.5 182 | 550.0 183 | 562.5 184 | 575.0 185 | 587.5 186 | 600.0 187 | 610.0 188 | 620.0 189 | 630.0 190 | 640.0 191 | 650.0 192 | 660.0 193 | 670.0 194 | 680.0 195 | 690.0 196 | 700.0 197 | 705.0 198 | 710.0 199 | 715.0 200 | 720.0 201 | 725.0 202 | 730.0 203 | 735.0 204 | 740.0 205 | 745.0 206 | 750.0 207 | 755.0 208 | 760.0 209 | 765.0 210 | 770.0 211 | 775.0 212 | 800.0 213 | 816.7 214 | 833.3 215 | 850.0 216 | 866.7 217 | 883.3 218 | 900.0 219 | 914.3 220 | 928.6 221 | 942.9 222 | 957.1 223 | 971.4 224 | 985.7 225 | 1000.0 226 | 227 | 228 | 244 | 245 | 1 246 | 2 247 | 4 248 | 6 249 | 8 250 | 10 251 | 15 252 | 20 253 | 25 254 | 30 255 | 35 256 | 40 257 | 45 258 | 50 259 | 55 260 | 60 261 | 65 262 | 70 263 | 75 264 | 80 265 | 85 266 | 90 267 | 95 268 | 100 269 | 120 270 | 140 271 | 160 272 | 180 273 | 200 274 | 220 275 | 240 276 | 260 277 | 280 278 | 300 279 | 320 280 | 340 281 | 360 282 | 380 283 | 400 284 | 420 285 | 440 286 | 460 287 | 480 288 | 500 289 | 700 290 | 900 291 | 1100 292 | 1300 293 | 1500 294 | 1700 295 | 1900 296 | 2200 297 | 2500 298 | 3000 299 | 3500 300 | 4000 301 | 4500 302 | 5000 303 | 5500 304 | 6000 305 | 6500 306 | 7000 307 | 7500 308 | 8000 309 | 8500 310 | 9000 311 | 9500 312 | 10000 313 | 10500 314 | 11000 315 | 11500 316 | 12000 317 | 12500 318 | 13000 319 | 13500 320 | 14000 321 | 14500 322 | 15000 323 | 16000 324 | 17000 325 | 18000 326 | 19000 327 | 20000 328 | 21000 329 | 22000 330 | 23000 331 | 24000 332 | 25000 333 | 26000 334 | 27000 335 | 28000 336 | 29000 337 | 30000 338 | 35000 339 | 40000 340 | 45000 341 | 50000 342 | 55000 343 | 60000 344 | 65000 345 | 70000 346 | 75000 347 | 80000 348 | 85000 349 | 90000 350 | 95000 351 | 100000 352 | 353 | 354 | 360 | 361 | 1 362 | 255 363 | 364 | 365 | 371 | 372 | 4.5 373 | 1000.0 374 | 375 | 376 | 382 | 383 | 2000 384 | 2000 385 | 1000 386 | 1000 387 | 500 388 | 500 389 | 500 390 | 500 391 | 392 | 393 | 399 | 400 | 0 401 | 402 | 403 | 404 | 1 405 | 406 | 412 | 413 | 0 414 | 415 | 416 | 418 | 100% 419 | 420 | 425 | 1000 426 | 1000 427 | 428 | 429 | 154 430 | 431 | 432 | 123 433 | 434 | 436 | 0.0029296875 437 | 438 | 440 | 1.0 441 | 442 | 444 | 0.26171875 445 | 446 | 447 | 14 448 | 449 | 466 | 467 | M -23,52 468 | M 23,52 469 | A 23,23 0 1,0 -23,52 470 | A 23,23 0 1,0 23,52 471 | Z 472 | 473 | 474 | 480 | 481 | M 0,0 482 | H -23 483 | V 75 484 | H 23 485 | V 0 486 | H 0 487 | Z 488 | 489 | 490 | 493 | true 494 | 495 | 496 | true 497 | 498 | 499 | true 500 | 501 | 504 | 505 | @array/config_sfps_sensor_props_0 506 | 507 | 508 | 509 | local:4630946736638489729 510 | 1080 511 | 965 512 | 115 513 | 514 | 515 | 516 | 518 | 0 519 | 520 | 521 | 120 522 | 523 | 524 | 120 525 | 526 | 531 | 2 532 | 533 | 534 | true 535 | 536 | -------------------------------------------------------------------------------- /audio/sound_trigger_platform_info.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 245 | 246 | 247 | 248 | 249 | 250 | 251 | 252 | 253 | 254 | 255 | 256 | 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | 266 | 267 | 268 | 269 | 270 | 271 | 272 | 273 | 274 | 275 | 276 | 277 | 278 | 279 | 280 | 281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 | 291 | 292 | 293 | 294 | 295 | 296 | 297 | 298 | 299 | 300 | 301 | 302 | 303 | 304 | 305 | 306 | 307 | 308 | 309 | 310 | 311 | 312 | 313 | 314 | 315 | 316 | 317 | 318 | 319 | 320 | 321 | 322 | 324 | 325 | 326 | 327 | 328 | 329 | 330 | 331 | 332 | 333 | 334 | 335 | 336 | 337 | 338 | 339 | 340 | 341 | 342 | 343 | 344 | 345 | 346 | 347 | 348 | 349 | 350 | 351 | 352 | 353 | 354 | 355 | 356 | 357 | 358 | 359 | 360 | 361 | 362 | 363 | 364 | 365 | 366 | 367 | 368 | 369 | 370 | 374 | 375 | 376 | 377 | 378 | 379 | 380 | 381 | 382 | 383 | 384 | 385 | 386 | 387 | 388 | 389 | 390 | 391 | 392 | 393 | 394 | 395 | 396 | 397 | 398 | 399 | 400 | 401 | 402 | 403 | 404 | 405 | 406 | 407 | 408 | 409 | 410 | 411 | 412 | 413 | 414 | 415 | 416 | 417 | 418 | 419 | 420 | 421 | 422 | 423 | 424 | 425 | 426 | 427 | 428 | 429 | 430 | 431 | 432 | 433 | 434 | 435 | 436 | 437 | 438 | 439 | 440 | 441 | 442 | 443 | 444 | 445 | 446 | 447 | 448 | 449 | 450 | 451 | 453 | 454 | 455 | 456 | 457 | 458 | 459 | 460 | 461 | 462 | 463 | 464 | 465 | 466 | 467 | 471 | 472 | 473 | 474 | 475 | 476 | 477 | 478 | 479 | 480 | 481 | 482 | 483 | 484 | 485 | 486 | 487 | 488 | 489 | 490 | 491 | 492 | 493 | 494 | 495 | 496 | 497 | 498 | 499 | 500 | 501 | 502 | 503 | 504 | 505 | 507 | 508 | 509 | 510 | 511 | 512 | 513 | 514 | 515 | 516 | 517 | 518 | 519 | 520 | 521 | 522 | 523 | 524 | 525 | 526 | 527 | 528 | 529 | 530 | 531 | 532 | 533 | 534 | 535 | 536 | 537 | 538 | 539 | 540 | 541 | 542 | 543 | 544 | 545 | 546 | 547 | 548 | 549 | 550 | 551 | 552 | 553 | 554 | 555 | 556 | 557 | 558 | 559 | 560 | 561 | 562 | 563 | 564 | 565 | 566 | 567 | 568 | 569 | 570 | 571 | 572 | 573 | 574 | 575 | 576 | 577 | 578 | 579 | 580 | 581 | 582 | 583 | 584 | 585 | 586 | 587 | 588 | 589 | 590 | 592 | 593 | 594 | 595 | 596 | 597 | 598 | 599 | 600 | 601 | 602 | 603 | 604 | 605 | 606 | 607 | 608 | 609 | 610 | 611 | 612 | 613 | 614 | 615 | 616 | 617 | 618 | 619 | 620 | 621 | 622 | 623 | 624 | 625 | 626 | 627 | 628 | 629 | 630 | 631 | 632 | 633 | 634 | 635 | 636 | 637 | 638 | 639 | 640 | 641 | 642 | 644 | 645 | 646 | 647 | 648 | 649 | 650 | 651 | 652 | 653 | 654 | 655 | 656 | 657 | 658 | 659 | 660 | 661 | 662 | 663 | 664 | 665 | 666 | --------------------------------------------------------------------------------