diff --git a/audio/bluejay/audio-tables.mk b/audio/bluejay/audio-tables.mk deleted file mode 100644 index 6a2f637..0000000 --- a/audio/bluejay/audio-tables.mk +++ /dev/null @@ -1,51 +0,0 @@ -# -# Copyright (C) 2020 The Android Open-Source Project -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# 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. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -AUDIO_TABLE_FOLDER := bluejay - -# Platform Configuration for AudioHAL / SoundTriggerHAL -PRODUCT_COPY_FILES += \ - device/google/bluejay/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration_bluetooth_legacy_hal.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_bluetooth_legacy_hal.xml \ - device/google/bluejay/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \ - device/google/bluejay/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_configuration_a2dp_offload_disabled.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_a2dp_offload_disabled.xml \ - device/google/bluejay/audio/$(AUDIO_TABLE_FOLDER)/config/audio_platform_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_configuration.xml \ - device/google/bluejay/audio/$(AUDIO_TABLE_FOLDER)/config/sound_trigger_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_configuration.xml \ - device/google/bluejay/audio/$(AUDIO_TABLE_FOLDER)/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml - -# AudioEffectHAL Configuration -PRODUCT_COPY_FILES += \ - device/google/bluejay/audio/$(AUDIO_TABLE_FOLDER)/config/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml - -# Mixer Path Configuration for AudioHAL -PRODUCT_COPY_FILES += \ - device/google/bluejay/audio/$(AUDIO_TABLE_FOLDER)/config/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml - -# Speaker firmware files -SPK_FIRMWARE_PATH := $(AUDIO_TABLE_FOLDER)/cs35l41/fw -SPK_FIRMWARE_FULL_PATH := device/google/bluejay/audio/$(SPK_FIRMWARE_PATH) - -PRODUCT_COPY_FILES += $(call copy-files,$(wildcard $(SPK_FIRMWARE_FULL_PATH)/*),$(TARGET_COPY_OUT_VENDOR)/firmware) - -# Audio tuning -PRODUCT_COPY_FILES += \ - device/google/bluejay/audio/$(AUDIO_TABLE_FOLDER)/tuning/bluenote/recording.gatf:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/recording.gatf \ - device/google/bluejay/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/BLUETOOTH.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/BLUETOOTH.dat \ - device/google/bluejay/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSFREE.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSFREE.dat \ - device/google/bluejay/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HANDSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HANDSET.dat \ - device/google/bluejay/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/HEADSET.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/HEADSET.dat \ - device/google/bluejay/audio/$(AUDIO_TABLE_FOLDER)/tuning/fortemedia/mcps.dat:$(TARGET_COPY_OUT_VENDOR)/etc/aoc/mcps.dat \ - device/google/bluejay/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_config.ini:$(TARGET_COPY_OUT_VENDOR)/etc/waves_config.ini \ - device/google/bluejay/audio/$(AUDIO_TABLE_FOLDER)/tuning/waves/waves_preset.mps:$(TARGET_COPY_OUT_VENDOR)/etc/waves_preset.mps diff --git a/audio/bluejay/config/audio_effects.xml b/audio/bluejay/config/audio_effects.xml deleted file mode 100644 index 1718057..0000000 --- a/audio/bluejay/config/audio_effects.xml +++ /dev/null @@ -1,63 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/audio/bluejay/config/audio_platform_configuration.xml b/audio/bluejay/config/audio_platform_configuration.xml deleted file mode 100644 index f1232f6..0000000 --- a/audio/bluejay/config/audio_platform_configuration.xml +++ /dev/null @@ -1,296 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/audio/bluejay/config/audio_policy_configuration.xml b/audio/bluejay/config/audio_policy_configuration.xml deleted file mode 100644 index 3463cf3..0000000 --- a/audio/bluejay/config/audio_policy_configuration.xml +++ /dev/null @@ -1,248 +0,0 @@ - - - - - - - - - Speaker - Speaker Safe - Earpiece - Built-In Mic - Built-In Back Mic - Telephony Tx - Voice Call And Telephony Rx - Echo Ref In - - Speaker - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/audio/bluejay/config/audio_policy_configuration_a2dp_offload_disabled.xml b/audio/bluejay/config/audio_policy_configuration_a2dp_offload_disabled.xml deleted file mode 100644 index 4de4ec1..0000000 --- a/audio/bluejay/config/audio_policy_configuration_a2dp_offload_disabled.xml +++ /dev/null @@ -1,227 +0,0 @@ - - - - - - - - - Speaker - Speaker Safe - Earpiece - Built-In Mic - Built-In Back Mic - Telephony Tx - Voice Call And Telephony Rx - Echo Ref In - - Speaker - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/audio/bluejay/config/audio_policy_configuration_bluetooth_legacy_hal.xml b/audio/bluejay/config/audio_policy_configuration_bluetooth_legacy_hal.xml deleted file mode 100644 index 2a64248..0000000 --- a/audio/bluejay/config/audio_policy_configuration_bluetooth_legacy_hal.xml +++ /dev/null @@ -1,227 +0,0 @@ - - - - - - - - - Speaker - Speaker Safe - Earpiece - Built-In Mic - Built-In Back Mic - Telephony Tx - Voice Call And Telephony Rx - Echo Ref In - - Speaker - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/audio/bluejay/config/audio_policy_volumes.xml b/audio/bluejay/config/audio_policy_volumes.xml deleted file mode 100644 index 2fc20cb..0000000 --- a/audio/bluejay/config/audio_policy_volumes.xml +++ /dev/null @@ -1,238 +0,0 @@ - - - - - - - 0,-4200 - 33,-2800 - 66,-1400 - 100,0 - - - 0,-2400 - 33,-1600 - 66,-800 - 100,0 - - - 0,-2400 - 33,-1600 - 66,-800 - 100,0 - - - - - 1,-3000 - 33,-2600 - 66,-2200 - 100,-1800 - - - 1,-5000 - 33,-3500 - 66,-2400 - 100,-1600 - - - - - - - 1,-4000 - 33,-2400 - 66,-1200 - 100,0 - - - - - - - 1,-6200 - 28,-3800 - 64,-2000 - 68,-1800 - 72,-1600 - 76,-1400 - 80,-1200 - 88,-850 - 92,-650 - 96,-400 - 100,0 - - - - - - - 0,-4000 - 33,-2400 - 66,-1200 - 100,0 - - - - - - - 1,-4000 - 33,-2400 - 66,-1200 - 100,0 - - - - - - 0,-4200 - 33,-2800 - 66,-1400 - 100,0 - - - 0,-2400 - 33,-1600 - 66,-800 - 100,0 - - - 0,-4200 - 33,-2800 - 66,-1400 - 100,0 - - - - - 1,-3000 - 33,-2600 - 66,-2200 - 100,-1800 - - - 1,-5000 - 33,-3500 - 66,-2400 - 100,-1600 - - - - - - 1,-3000 - 33,-2600 - 66,-2200 - 100,-1800 - - - 1,-6000 - 33,-3000 - 66,-2200 - 100,-1600 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/audio/bluejay/config/mixer_paths.xml b/audio/bluejay/config/mixer_paths.xml deleted file mode 100644 index 790b2c7..0000000 --- a/audio/bluejay/config/mixer_paths.xml +++ /dev/null @@ -1,822 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/audio/bluejay/config/sound_trigger_configuration.xml b/audio/bluejay/config/sound_trigger_configuration.xml deleted file mode 100644 index dbee090..0000000 --- a/audio/bluejay/config/sound_trigger_configuration.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/audio/bluejay/cs35l41/fw/R-cs35l41-dsp1-spk-cali.bin b/audio/bluejay/cs35l41/fw/R-cs35l41-dsp1-spk-cali.bin deleted file mode 100644 index 70bb00c..0000000 Binary files a/audio/bluejay/cs35l41/fw/R-cs35l41-dsp1-spk-cali.bin and /dev/null differ diff --git a/audio/bluejay/cs35l41/fw/R-cs35l41-dsp1-spk-diag.bin b/audio/bluejay/cs35l41/fw/R-cs35l41-dsp1-spk-diag.bin deleted file mode 100644 index 2a1f7dc..0000000 Binary files a/audio/bluejay/cs35l41/fw/R-cs35l41-dsp1-spk-diag.bin and /dev/null differ diff --git a/audio/bluejay/cs35l41/fw/R-cs35l41-dsp1-spk-prot.bin b/audio/bluejay/cs35l41/fw/R-cs35l41-dsp1-spk-prot.bin deleted file mode 100644 index 1d4f772..0000000 Binary files a/audio/bluejay/cs35l41/fw/R-cs35l41-dsp1-spk-prot.bin and /dev/null differ diff --git a/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-cali.bin b/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-cali.bin deleted file mode 100644 index 5e1e319..0000000 Binary files a/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-cali.bin and /dev/null differ diff --git a/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-cali.wmfw b/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-cali.wmfw deleted file mode 100644 index 5530a4d..0000000 Binary files a/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-cali.wmfw and /dev/null differ diff --git a/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-diag.bin b/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-diag.bin deleted file mode 100644 index 8c5870a..0000000 Binary files a/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-diag.bin and /dev/null differ diff --git a/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-diag.wmfw b/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-diag.wmfw deleted file mode 100644 index 616262a..0000000 Binary files a/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-diag.wmfw and /dev/null differ diff --git a/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-prot.bin b/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-prot.bin deleted file mode 100644 index 11d31ea..0000000 Binary files a/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-prot.bin and /dev/null differ diff --git a/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-prot.wmfw b/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-prot.wmfw deleted file mode 100644 index 5530a4d..0000000 Binary files a/audio/bluejay/cs35l41/fw/cs35l41-dsp1-spk-prot.wmfw and /dev/null differ diff --git a/audio/bluejay/tuning/bluenote/exported.xml b/audio/bluejay/tuning/bluenote/exported.xml deleted file mode 100644 index 48a2104..0000000 --- a/audio/bluejay/tuning/bluenote/exported.xml +++ /dev/null @@ -1,298 +0,0 @@ - - - - - 1170956864708935680 - 1170957964220563456 - 3494866978118565888 - - - - 0 - 0 - 0 - 0 - 0.0 - 0.0 - 0.0 - 0.0 - 0.0 - 0 - 0 - 0 - - - 0 - 0 - 0 - 0 - 0.0 - - - 0 - 0 - 0 - 0 - 1 - - 0 - 0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 - - 0,0,0 - - - 3 - 0 - 0 - 0 - - 1 - 0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 - - - 0.0 - 0.0 - 0.0 - 0.0 - 1 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0 - 0.0 - 0.0 - 0.0 - 1.0 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0 - 0.0 - 0.0 - 0.0 - 1 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - - - 0.0 - 0.0 - 0 - 0 - - - - - - - 2323914724061741056 - 2323914741241610240 - - - - - - - - 2323914728356708352 - - - - - - - - 2323915136378601472 - - - - 0 - 0 - 0 - 0 - 0.0 - 0.0 - 0.0 - 0.0 - 0.0 - 0 - 0 - 0 - - - 0 - 0 - 0 - 0 - 0.0 - - - 0 - 0 - 0 - 0 - 1 - - 0 - 0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 - - 0,0,0 - - - 0 - 0 - 0 - 0 - - 1 - 0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 - - - 0.0 - 0.0 - 0.0 - 0.0 - 1 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0 - 0.0 - 0.0 - 0.0 - 1.0 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0 - 0.0 - 0.0 - 0.0 - 1 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - - - 0.0 - 0.0 - 0 - 0 - - - - - - - 2323922832959995904 - - - - 0 - 0 - 0 - 0 - 0.0 - 0.0 - 0.0 - 0.0 - 0.0 - 0 - 0 - 0 - - - 0 - 0 - 0 - 0 - 0.0 - - - 2 - 5 - 4 - 5 - 1 - - 2 - -0.9,0.70000005,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 - - 10,0,0 - - - 3 - 9 - 6 - 10 - - 2 - 2.0,0.5,0.70000005,0.5,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 - - - 0.3 - 0.5 - 0.0 - 0.0 - 1 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0 - 0.0 - 0.0 - 0.0 - 1.0 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0 - 0.0 - 0.0 - 0.0 - 1 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0 - 0.0,0.0,0.0,0.0 - 0.0,0.0,0.0,0.6 - 0.0,0.5,0.0,0.6 - - - 0.70000005 - 0.0 - 0 - 0 - - - - - diff --git a/audio/bluejay/tuning/bluenote/recording.gatf b/audio/bluejay/tuning/bluenote/recording.gatf deleted file mode 100644 index a801174..0000000 Binary files a/audio/bluejay/tuning/bluenote/recording.gatf and /dev/null differ diff --git a/audio/bluejay/tuning/fortemedia/BLUETOOTH.dat b/audio/bluejay/tuning/fortemedia/BLUETOOTH.dat deleted file mode 100644 index 73c5f06..0000000 Binary files a/audio/bluejay/tuning/fortemedia/BLUETOOTH.dat and /dev/null differ diff --git a/audio/bluejay/tuning/fortemedia/HANDSET.dat b/audio/bluejay/tuning/fortemedia/HANDSET.dat deleted file mode 100644 index de9145b..0000000 Binary files a/audio/bluejay/tuning/fortemedia/HANDSET.dat and /dev/null differ diff --git a/audio/bluejay/tuning/fortemedia/HANDSFREE.dat b/audio/bluejay/tuning/fortemedia/HANDSFREE.dat deleted file mode 100644 index 5609b52..0000000 Binary files a/audio/bluejay/tuning/fortemedia/HANDSFREE.dat and /dev/null differ diff --git a/audio/bluejay/tuning/fortemedia/HEADSET.dat b/audio/bluejay/tuning/fortemedia/HEADSET.dat deleted file mode 100644 index 411f875..0000000 Binary files a/audio/bluejay/tuning/fortemedia/HEADSET.dat and /dev/null differ diff --git a/audio/bluejay/tuning/fortemedia/mcps.dat b/audio/bluejay/tuning/fortemedia/mcps.dat deleted file mode 100644 index 04fc100..0000000 Binary files a/audio/bluejay/tuning/fortemedia/mcps.dat and /dev/null differ diff --git a/audio/bluejay/tuning/waves/waves_config.ini b/audio/bluejay/tuning/waves/waves_config.ini deleted file mode 100644 index f330db0..0000000 --- a/audio/bluejay/tuning/waves/waves_config.ini +++ /dev/null @@ -1,55 +0,0 @@ -######################################################################################################## -# (Optional) The supported features list for platform vendors to query from. -# Platform vendors should call maxxaudio_qdsp_is_feature_supported with a string to query from the list. -# This config has no effect in the MaxxAudioQdspHalController. It's only meaningful for platform vendors. -# Putting any value other than 1 would be equivalent to not supported. -######################################################################################################## -[HAL_SUPPORTED_FEATURES] -CUSTOM_ACTION_256=1 - -######################################################################################################## -# This defined the options of supported sample rates. -# This can be configured by Waves or platform vendor. -######################################################################################################## -[HAL_SUPPORTED_SAMPLE_RATES] -SR_COMMON = 48000 - -######################################################################################################## -# (Optional) The subtypes that applies to different angles(0, 90, 180, 270). Can be empty if not applicable. -# This can be configured by Waves or platform vendor. -######################################################################################################## -[HAL_ORIENTATION_SUBTYPES] -OST_SPEAKER = 0:12,90:13,180:12,270:0|13 - -######################################################################################################## -# This defines available preset configurations. -# This should be configured by Waves only unless platform vendor is familiar with MPS structure. -######################################################################################################## -[HAL_SUPPORTED_PRESETS] -SPEAKER_MUSIC = OM:1,SM:2,OST:OST_SPEAKER -SPEAKER_SAFE_MUSIC = OM:10,SM:2,OST:OST_SPEAKER -SPEAKER_SAFE_CALL = OM:10,SM:2,OST:OST_SPEAKER - -######################################################################################################## -# This defines available CONTROL configurations. Only define the CONTROL if you need it. -# The numbers could vary from device to device. -# This can be configured by Waves or platform vendor. -######################################################################################################## -[HAL_SUPPORTED_CONTROLS] -SPEAKER_INSTANCE = INSTANCE:1,DEV:0,SR:SR_COMMON,PRESET:SPEAKER_MUSIC|SPEAKER_SAFE_MUSIC|SPEAKER_SAFE_CALL - -[COEFS_CONVERTER_SETTING] -AlgFxPath=/vendor/lib/libAlgFx_HiFi3z.so -AlgFxPath64=/vendor/lib64/libAlgFx_HiFi3z.so -# do not modify the following if not necessary -#AudioFormatType=0 -#AudioFormatChannels=2 -#AudioFormatSampleRate=48000 -#AudioFormatBitsPerSample=32 -#AudioFormatSampleSize=4 -#AudioFormatIncrement=8 - -[CUSTOM_ACTION_256] -CASE_1=PRIORITY:0,NUMBERS:2:0|1,PRESET:SPEAKER_MUSIC -CASE_2=PRIORITY:1,NUMBERS:1|2|4194304:2|3|4,PRESET:SPEAKER_SAFE_CALL -CASE_3=PRIORITY:2,NUMBERS:1|4194304:0|1,PRESET:SPEAKER_SAFE_MUSIC diff --git a/audio/bluejay/tuning/waves/waves_preset.mps b/audio/bluejay/tuning/waves/waves_preset.mps deleted file mode 100644 index dd74132..0000000 Binary files a/audio/bluejay/tuning/waves/waves_preset.mps and /dev/null differ diff --git a/bluejay/proprietary-files-vendor.txt b/bluejay/proprietary-files-vendor.txt index 95a422f..80627f2 100644 --- a/bluejay/proprietary-files-vendor.txt +++ b/bluejay/proprietary-files-vendor.txt @@ -27,6 +27,7 @@ vendor/bin/hw/battery_mitigation vendor/bin/hw/citadel_updater vendor/bin/hw/citadeld vendor/bin/hw/com.google.edgetpu.tachyon-service +vendor/bin/hw/disable_contaminant_detection.sh vendor/bin/hw/google.hardware.media.c2@1.0-service vendor/bin/hw/gpsd;DISABLE_CHECKELF vendor/bin/hw/init_citadel @@ -39,6 +40,7 @@ vendor/bin/hw/vendor.google.edgetpu_vendor_service@1.0-service vendor/bin/hw/vendor.google.google_battery-service vendor/bin/hw/vendor.google.radioext@1.0-service vendor/bin/init.camera.set-interrupts-ownership +vendor/bin/init.display.sh vendor/bin/init.radio.sh vendor/bin/modem_logging_control vendor/bin/pixelstats-vendor @@ -49,12 +51,32 @@ vendor/bin/shared_modem_platform vendor/bin/sscoredump vendor/bin/trusty_metricsd vendor/bin/twoshay +vendor/bin/ufs_firmware_update.sh vendor/bin/usf_stats vendor/bin/wfc-pkt-router vendor/etc/Khronos/OpenCL/vendors/ARM.icd vendor/etc/Khronos/OpenCL/vendors/ARM32.icd +vendor/etc/aoc/BLUETOOTH.dat +vendor/etc/aoc/HANDSET.dat +vendor/etc/aoc/HANDSFREE.dat +vendor/etc/aoc/HEADSET.dat +vendor/etc/aoc/mcps.dat +vendor/etc/aoc/recording.gatf vendor/etc/atc_profile.json +vendor/etc/audio_effects.xml +vendor/etc/audio_platform_configuration.xml +vendor/etc/audio_policy_configuration.xml +vendor/etc/audio_policy_configuration_a2dp_offload_disabled.xml +vendor/etc/audio_policy_configuration_bluetooth_legacy_hal.xml +vendor/etc/audio_policy_volumes.xml vendor/etc/bluetooth/bt_vendor.conf +vendor/etc/bluetooth_power_limits.csv +vendor/etc/bluetooth_power_limits_CA.csv +vendor/etc/bluetooth_power_limits_G1AZG_EU.csv +vendor/etc/bluetooth_power_limits_GB62Z_EU.csv +vendor/etc/bluetooth_power_limits_GB62Z_US.csv +vendor/etc/bluetooth_power_limits_GX7AS_US.csv +vendor/etc/bluetooth_power_limits_JP.csv vendor/etc/chre/activity.napp_header vendor/etc/chre/activity.so vendor/etc/chre/ar_bridge.napp_header @@ -162,7 +184,15 @@ vendor/etc/database/DbEcc_750.xml vendor/etc/database/DbEcc_DEFAULT.xml vendor/etc/database/DbEcc_ICCID.xml vendor/etc/database/ecc_version +vendor/etc/display_colordata_cal0.pb +vendor/etc/display_colordata_dev_cal0.pb +vendor/etc/display_golden_cal0.pb vendor/etc/displayconfig/display_id_4619827677550801152.xml +vendor/etc/fstab.persist +vendor/etc/gnss/gps.cer +vendor/etc/gnss/gps.xml +vendor/etc/gnss/lhd.conf +vendor/etc/gnss/scd.conf vendor/etc/init/Exynos_C2.rc vendor/etc/init/android.hardware.authsecret-service.citadel.rc vendor/etc/init/android.hardware.bluetooth-service.bcmbtlinux.rc @@ -187,6 +217,11 @@ vendor/etc/init/com.google.edgetpu.tachyon-service.rc vendor/etc/init/dmd.rc vendor/etc/init/fingerprint-goodix.rc vendor/etc/init/google.hardware.media.c2@1.0-service.rc +vendor/etc/init/hw/init.bluejay.rc +vendor/etc/init/hw/init.blueport.rc +vendor/etc/init/hw/init.gs101.rc +vendor/etc/init/hw/init.gs101.storage.rc +vendor/etc/init/hw/init.gs101.usb.rc vendor/etc/init/init.camera.set-interrupts-ownership.rc vendor/etc/init/init.gps.rc vendor/etc/init/init.modem_logging_control.rc @@ -199,9 +234,11 @@ vendor/etc/init/init_dauntless.rc vendor/etc/init/memtrack.rc vendor/etc/init/pixelstats-vendor.gs101.rc vendor/etc/init/pktrouter.rc +vendor/etc/init/pkvm_experiment.rc vendor/etc/init/rfsd.rc vendor/etc/init/rild_exynos.rc vendor/etc/init/samsung.hardware.media.c2@1.2-service.rc +vendor/etc/init/storage.bluejay.rc vendor/etc/init/trusty_metricsd.rc vendor/etc/init/twoshay.rc vendor/etc/init/vendor.google.audiometricext@1.0-service-vendor.rc @@ -210,7 +247,35 @@ vendor/etc/init/vendor.google.edgetpu_vendor_service@1.0-service.rc vendor/etc/init/vendor.google.google_battery-default.rc vendor/etc/init/vendor.google.radioext@1.0-service.rc vendor/etc/input_classifier_model.pb +vendor/etc/libnfc-hal-st-GB17L.conf +vendor/etc/libnfc-hal-st.conf +vendor/etc/libse-gto-hal.conf +vendor/etc/media_codecs.xml vendor/etc/media_codecs_aosp_c2.xml +vendor/etc/media_codecs_c2.xml +vendor/etc/media_codecs_performance.xml +vendor/etc/media_codecs_performance_c2.xml +vendor/etc/media_profiles_V1_0.xml +vendor/etc/mixer_paths.xml +vendor/etc/modem/Pixel_Default.cfg +vendor/etc/modem/Pixel_Default.nprf +vendor/etc/modem/Pixel_Default_metrics.xml +vendor/etc/modem/Pixel_stability.cfg +vendor/etc/modem/Pixel_stability.nprf +vendor/etc/modem/default.cfg +vendor/etc/modem/default.nprf +vendor/etc/modem/default_NAS_RRC.cfg +vendor/etc/modem/default_NAS_RRC.nprf +vendor/etc/modem/default_metrics.xml +vendor/etc/modem/default_network.cfg +vendor/etc/modem/default_network.nprf +vendor/etc/modem/default_stability.cfg +vendor/etc/modem/default_stability.nprf +vendor/etc/modem/gnss_blanking.csv +vendor/etc/modem/logging.conf +vendor/etc/modem/teamfood_default.cfg +vendor/etc/modem/teamfood_default.nprf +vendor/etc/modem/teamfood_default_metrics.xml vendor/etc/modem_stat.conf vendor/etc/open_carrier_info.dat vendor/etc/permissions/android.hardware.strongbox_keystore.xml @@ -219,6 +284,9 @@ vendor/etc/permissions/android.hardware.telephony.ims.singlereg.xml vendor/etc/permissions/android.hardware.telephony.ims.xml vendor/etc/permissions/com.google.android.camera.experimental2021.xml vendor/etc/pixelstats_config.json +vendor/etc/powerhint.json +vendor/etc/powerhint_a0.json +vendor/etc/powerhint_a1.json vendor/etc/public.libraries.txt vendor/etc/seccomp_policy/codec2.vendor.base.policy vendor/etc/seccomp_policy/codec2.vendor.ext.policy @@ -227,8 +295,13 @@ vendor/etc/sensors/hals.conf vendor/etc/sensors/registry/append/motion_state.reg vendor/etc/sensors/registry/bluejay_dev.reg vendor/etc/sensors/registry/bluejay_evt.reg +vendor/etc/sound_trigger_configuration.xml +vendor/etc/task_profiles.json +vendor/etc/thermal_info_config.json +vendor/etc/thermal_info_config_charge.json vendor/etc/touchflow.pb vendor/etc/twoshay_config.json +vendor/etc/ueventd.rc vendor/etc/vintf/manifest/android.hardware.authsecret-service.citadel.xml vendor/etc/vintf/manifest/android.hardware.camera.provider@2.7-service-google-apex.xml vendor/etc/vintf/manifest/android.hardware.contexthub-service.generic.xml @@ -251,6 +324,14 @@ vendor/etc/vintf/manifest/shared_modem_platform.xml vendor/etc/vintf/manifest/vendor.google.battery_mitigation-default.xml vendor/etc/vintf/manifest/vendor.google.edgetpu_vendor_service@1.0-service.xml vendor/etc/vintf/manifest/vendor.google.google_battery-default.xml +vendor/etc/waves_config.ini +vendor/etc/waves_preset.mps +vendor/etc/wifi/coex_table.xml +vendor/etc/wifi/p2p_supplicant_overlay.conf +vendor/etc/wifi/wpa_supplicant_overlay.conf +vendor/firmware/R-cs35l41-dsp1-spk-cali.bin +vendor/firmware/R-cs35l41-dsp1-spk-diag.bin +vendor/firmware/R-cs35l41-dsp1-spk-prot.bin vendor/firmware/SensorHub.patch vendor/firmware/aoc.bin vendor/firmware/bcmdhd.cal @@ -1130,6 +1211,12 @@ vendor/firmware/carrierconfig/manifests/fdc64883650d0581e27a8fcc11ec8c65bd906e80 vendor/firmware/carrierconfig/manifests/ff564f49e5579b05a48f94fa700e0f39ed87d506 vendor/firmware/carrierconfig/manifests_symbolic_link_mapping vendor/firmware/carrierconfig/release-label +vendor/firmware/cs35l41-dsp1-spk-cali.bin +vendor/firmware/cs35l41-dsp1-spk-cali.wmfw +vendor/firmware/cs35l41-dsp1-spk-diag.bin +vendor/firmware/cs35l41-dsp1-spk-diag.wmfw +vendor/firmware/cs35l41-dsp1-spk-prot.bin +vendor/firmware/cs35l41-dsp1-spk-prot.wmfw vendor/firmware/cs40l20.bin vendor/firmware/cs40l25a_cal.bin vendor/firmware/cs40l25a_cal.wmfw diff --git a/bluejay/proprietary-files.txt b/bluejay/proprietary-files.txt index 5b567fa..39dfe43 100644 --- a/bluejay/proprietary-files.txt +++ b/bluejay/proprietary-files.txt @@ -39,6 +39,9 @@ product/priv-app/HotwordEnrollmentXGoogleFUSIONPro/HotwordEnrollmentXGoogleFUSIO # IMS product/etc/sysconfig/allowlist_com.shannon.imsservice.xml +# NFC +product/etc/libnfc-nci.conf + # Permissions product/etc/permissions/privapp-permissions-google-p.xml:product/etc/permissions/privapp-permissions-google-p-lineage.xml product/etc/sysconfig/GoogleCamera_6gb_or_more_ram.xml diff --git a/bluejay/skip-files-vendor.txt b/bluejay/skip-files-vendor.txt index e1e67f2..5b3f83b 100644 --- a/bluejay/skip-files-vendor.txt +++ b/bluejay/skip-files-vendor.txt @@ -103,7 +103,6 @@ bin/hw/android.hardware.thermal-service.pixel bin/hw/android.hardware.usb-service.gs101 bin/hw/android.hardware.usb.gadget-service.gs101 bin/hw/android.hardware.wifi-service -bin/hw/disable_contaminant_detection.sh bin/hw/hostapd bin/hw/wpa_supplicant bin/hwclock @@ -115,7 +114,6 @@ bin/i2ctransfer bin/iconv bin/id bin/ifconfig -bin/init.display.sh bin/inotifyd bin/insmod bin/insmod.sh @@ -228,7 +226,6 @@ bin/truncate bin/trusty_apploader bin/tty bin/uclampset -bin/ufs_firmware_update.sh bin/ulimit bin/umount bin/uname @@ -267,27 +264,8 @@ etc/aidl/le_audio/aidl_audio_set_configurations.bfbs etc/aidl/le_audio/aidl_audio_set_scenarios.bfbs etc/aidl/le_audio/aidl_default_audio_set_configurations.json etc/aidl/le_audio/aidl_default_audio_set_scenarios.json -etc/aoc/BLUETOOTH.dat -etc/aoc/HANDSET.dat -etc/aoc/HANDSFREE.dat -etc/aoc/HEADSET.dat -etc/aoc/mcps.dat -etc/aoc/recording.gatf etc/atrace/atrace_categories.txt -etc/audio_effects.xml -etc/audio_platform_configuration.xml -etc/audio_policy_configuration.xml -etc/audio_policy_configuration_a2dp_offload_disabled.xml -etc/audio_policy_configuration_bluetooth_legacy_hal.xml -etc/audio_policy_volumes.xml etc/bluetooth_audio_policy_configuration_7_0.xml -etc/bluetooth_power_limits.csv -etc/bluetooth_power_limits_CA.csv -etc/bluetooth_power_limits_G1AZG_EU.csv -etc/bluetooth_power_limits_GB62Z_EU.csv -etc/bluetooth_power_limits_GB62Z_US.csv -etc/bluetooth_power_limits_GX7AS_US.csv -etc/bluetooth_power_limits_JP.csv etc/boringssl_self_test.no_zygote.rc etc/boringssl_self_test.zygote32.rc etc/boringssl_self_test.zygote64.rc @@ -295,14 +273,10 @@ etc/boringssl_self_test.zygote64_32.rc etc/bpf/filterPowerSupplyEvents.o etc/build_flags.json etc/default_volume_tables.xml -etc/display_colordata_cal0.pb -etc/display_colordata_dev_cal0.pb -etc/display_golden_cal0.pb etc/fs_config_dirs etc/fs_config_files etc/fstab.gs101 etc/fstab.gs101-fips -etc/fstab.persist etc/fstab.zram.2g etc/fstab.zram.3g etc/fstab.zram.40p @@ -313,10 +287,6 @@ etc/fstab.zram.50p-2g etc/fstab.zram.5g etc/fstab.zram.60p etc/fstab.zram.6g -etc/gnss/gps.cer -etc/gnss/gps.xml -etc/gnss/lhd.conf -etc/gnss/scd.conf etc/group etc/hearing_aid_audio_policy_configuration_7_0.xml etc/init.common.cfg @@ -345,11 +315,6 @@ etc/init/dump_power.rc etc/init/gpu_probe.rc etc/init/health-storage-default.rc etc/init/hostapd.android.rc -etc/init/hw/init.bluejay.rc -etc/init/hw/init.blueport.rc -etc/init/hw/init.gs101.rc -etc/init/hw/init.gs101.storage.rc -etc/init/hw/init.gs101.usb.rc etc/init/init.aoc.rc etc/init/init.fingerprint.dump.rc etc/init/init.module.rc @@ -364,43 +329,13 @@ etc/init/libg3a_ghawb.rc etc/init/nfc-service-default.rc etc/init/pixel-mm-gki.rc etc/init/pixel-thermal-symlinks.rc -etc/init/pkvm_experiment.rc etc/init/rebalance_interrupts-vendor.gs101.rc -etc/init/storage.bluejay.rc etc/init/vndservicemanager.rc etc/libg3a_standalone_gabc_rc etc/libg3a_standalone_gaf_rc etc/libg3a_standalone_ghawb_rc -etc/libnfc-hal-st-GB17L.conf -etc/libnfc-hal-st.conf -etc/libse-gto-hal.conf etc/linker.config.pb -etc/media_codecs.xml -etc/media_codecs_c2.xml -etc/media_codecs_performance.xml -etc/media_codecs_performance_c2.xml -etc/media_profiles_V1_0.xml -etc/mixer_paths.xml etc/mkshrc -etc/modem/Pixel_Default.cfg -etc/modem/Pixel_Default.nprf -etc/modem/Pixel_Default_metrics.xml -etc/modem/Pixel_stability.cfg -etc/modem/Pixel_stability.nprf -etc/modem/default.cfg -etc/modem/default.nprf -etc/modem/default_NAS_RRC.cfg -etc/modem/default_NAS_RRC.nprf -etc/modem/default_metrics.xml -etc/modem/default_network.cfg -etc/modem/default_network.nprf -etc/modem/default_stability.cfg -etc/modem/default_stability.nprf -etc/modem/gnss_blanking.csv -etc/modem/logging.conf -etc/modem/teamfood_default.cfg -etc/modem/teamfood_default.nprf -etc/modem/teamfood_default_metrics.xml etc/passwd etc/permissions/android.hardware.audio.low_latency.xml etc/permissions/android.hardware.audio.pro.xml @@ -458,9 +393,6 @@ etc/permissions/com.nxp.mifare.xml etc/permissions/features_com.android.virt.xml etc/permissions/handheld_core_hardware.xml etc/permissions/vendor.android.hardware.camera.preview-dis.xml -etc/powerhint.json -etc/powerhint_a0.json -etc/powerhint_a1.json etc/r_submix_audio_policy_configuration.xml etc/selinux/genfs_labels_version.txt etc/selinux/plat_pub_versioned.cil @@ -480,12 +412,7 @@ etc/selinux/vendor_sepolicy.cil etc/selinux/vendor_service_contexts etc/selinux/vendor_tee_service_contexts etc/selinux/vndservice_contexts -etc/sound_trigger_configuration.xml etc/sysconfig/component-overrides.xml -etc/task_profiles.json -etc/thermal_info_config.json -etc/thermal_info_config_charge.json -etc/ueventd.rc etc/usb_audio_policy_configuration.xml etc/vintf/compatibility_matrix.xml etc/vintf/manifest.xml @@ -507,21 +434,7 @@ etc/vintf/manifest/android.hardware.wifi.supplicant.xml etc/vintf/manifest/bluetooth_audio.xml etc/vintf/manifest/health-storage-default.xml etc/vintf/manifest/nfc-service-default.xml -etc/waves_config.ini -etc/waves_preset.mps -etc/wifi/coex_table.xml -etc/wifi/p2p_supplicant_overlay.conf etc/wifi/wpa_supplicant.conf -etc/wifi/wpa_supplicant_overlay.conf -firmware/R-cs35l41-dsp1-spk-cali.bin -firmware/R-cs35l41-dsp1-spk-diag.bin -firmware/R-cs35l41-dsp1-spk-prot.bin -firmware/cs35l41-dsp1-spk-cali.bin -firmware/cs35l41-dsp1-spk-cali.wmfw -firmware/cs35l41-dsp1-spk-diag.bin -firmware/cs35l41-dsp1-spk-diag.wmfw -firmware/cs35l41-dsp1-spk-prot.bin -firmware/cs35l41-dsp1-spk-prot.wmfw lib/android.hardware.audio.common-V4-ndk.so lib/android.hardware.audio.common-util.so lib/android.hardware.audio.common@2.0.so diff --git a/bluetooth_power_limits.csv b/bluetooth_power_limits.csv deleted file mode 100644 index a593be6..0000000 --- a/bluetooth_power_limits.csv +++ /dev/null @@ -1,34 +0,0 @@ -Head,BTHotspot,WIFI5Ghz,HotspotVoice,Cell,IMU,BDR_Single_Chain_0,EDR_Single_Chain_0,BLE_Single_Chain_0,BDR_Single_Chain_1,EDR_Single_Chain_1,BLE_Single_Chain_1,BDR_Dual_Chain_0,EDR_Dual_Chain_0,BLE_Dual_Chain_0,BDR_Dual_Chain_1,EDR_Dual_Chain_1,BLE_Dual_Chain_1 -off,off,off,off,off,on,76,76,36,76,76,36,66,66,36,66,66,36 -off,off,off,off,on,on,76,76,36,76,76,36,66,66,36,66,66,36 -off,off,off,on,off,on,76,76,36,76,76,36,66,66,36,66,66,36 -off,off,off,on,on,on,76,76,36,76,76,36,66,66,36,66,66,36 -off,off,on,off,off,on,76,76,36,76,76,36,66,66,36,66,66,36 -off,off,on,off,on,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,off,on,on,off,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,off,on,on,on,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,on,off,off,off,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,on,off,off,on,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,on,off,on,off,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,on,off,on,on,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,on,on,off,off,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,on,on,off,on,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,on,on,on,off,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,on,on,on,on,on,76,76,36,72,72,36,66,66,36,66,66,36 -on,off,off,off,off,any,76,76,36,76,76,36,66,66,36,66,66,36 -on,off,off,off,on,any,76,76,36,76,76,36,66,66,36,66,66,36 -on,off,off,on,off,any,76,76,36,76,76,36,66,66,36,66,66,36 -on,off,off,on,on,any,76,76,36,76,76,36,66,66,36,66,66,36 -on,off,on,off,off,any,76,76,36,76,76,36,66,66,36,66,66,36 -on,off,on,off,on,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,off,on,on,off,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,off,on,on,on,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,on,off,off,off,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,on,off,off,on,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,on,off,on,off,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,on,off,on,on,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,on,on,off,off,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,on,on,off,on,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,on,on,on,off,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,on,on,on,on,any,76,76,36,72,72,36,66,66,36,66,66,36 -off,any,any,any,any,off,76,76,36,76,76,36,66,66,36,66,66,36 diff --git a/bluetooth_power_limits_G1AZG_EU.csv b/bluetooth_power_limits_G1AZG_EU.csv deleted file mode 100644 index a593be6..0000000 --- a/bluetooth_power_limits_G1AZG_EU.csv +++ /dev/null @@ -1,34 +0,0 @@ -Head,BTHotspot,WIFI5Ghz,HotspotVoice,Cell,IMU,BDR_Single_Chain_0,EDR_Single_Chain_0,BLE_Single_Chain_0,BDR_Single_Chain_1,EDR_Single_Chain_1,BLE_Single_Chain_1,BDR_Dual_Chain_0,EDR_Dual_Chain_0,BLE_Dual_Chain_0,BDR_Dual_Chain_1,EDR_Dual_Chain_1,BLE_Dual_Chain_1 -off,off,off,off,off,on,76,76,36,76,76,36,66,66,36,66,66,36 -off,off,off,off,on,on,76,76,36,76,76,36,66,66,36,66,66,36 -off,off,off,on,off,on,76,76,36,76,76,36,66,66,36,66,66,36 -off,off,off,on,on,on,76,76,36,76,76,36,66,66,36,66,66,36 -off,off,on,off,off,on,76,76,36,76,76,36,66,66,36,66,66,36 -off,off,on,off,on,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,off,on,on,off,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,off,on,on,on,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,on,off,off,off,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,on,off,off,on,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,on,off,on,off,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,on,off,on,on,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,on,on,off,off,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,on,on,off,on,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,on,on,on,off,on,76,76,36,72,72,36,66,66,36,66,66,36 -off,on,on,on,on,on,76,76,36,72,72,36,66,66,36,66,66,36 -on,off,off,off,off,any,76,76,36,76,76,36,66,66,36,66,66,36 -on,off,off,off,on,any,76,76,36,76,76,36,66,66,36,66,66,36 -on,off,off,on,off,any,76,76,36,76,76,36,66,66,36,66,66,36 -on,off,off,on,on,any,76,76,36,76,76,36,66,66,36,66,66,36 -on,off,on,off,off,any,76,76,36,76,76,36,66,66,36,66,66,36 -on,off,on,off,on,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,off,on,on,off,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,off,on,on,on,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,on,off,off,off,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,on,off,off,on,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,on,off,on,off,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,on,off,on,on,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,on,on,off,off,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,on,on,off,on,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,on,on,on,off,any,76,76,36,72,72,36,66,66,36,66,66,36 -on,on,on,on,on,any,76,76,36,72,72,36,66,66,36,66,66,36 -off,any,any,any,any,off,76,76,36,76,76,36,66,66,36,66,66,36 diff --git a/bluetooth_power_limits_GB17L_JP.csv b/bluetooth_power_limits_GB17L_JP.csv deleted file mode 100644 index f0a33bc..0000000 --- a/bluetooth_power_limits_GB17L_JP.csv +++ /dev/null @@ -1,34 +0,0 @@ -Head,BTHotspot,WIFI5Ghz,HotspotVoice,Cell,IMU,BDR_Single_Chain_0,EDR_Single_Chain_0,BLE_Single_Chain_0,BDR_Single_Chain_1,EDR_Single_Chain_1,BLE_Single_Chain_1,BDR_Dual_Chain_0,EDR_Dual_Chain_0,BLE_Dual_Chain_0,BDR_Dual_Chain_1,EDR_Dual_Chain_1,BLE_Dual_Chain_1 -off,off,off,off,off,on,64,64,40,64,64,40,56,56,40,56,56,40 -off,off,off,off,on,on,64,64,40,64,64,40,56,56,40,56,56,40 -off,off,off,on,off,on,64,64,40,64,64,40,56,56,40,56,56,40 -off,off,off,on,on,on,64,64,40,64,64,40,56,56,40,56,56,40 -off,off,on,off,off,on,64,64,40,64,64,40,56,56,40,56,56,40 -off,off,on,off,on,on,64,64,40,64,64,40,56,56,40,56,56,40 -off,off,on,on,off,on,64,64,40,64,64,40,56,56,40,56,56,40 -off,off,on,on,on,on,64,64,40,64,64,40,56,56,40,56,56,40 -off,on,off,off,off,on,64,64,40,64,64,40,56,56,40,56,56,40 -off,on,off,off,on,on,64,64,40,64,64,40,56,56,40,56,56,40 -off,on,off,on,off,on,64,64,40,64,64,40,56,56,40,56,56,40 -off,on,off,on,on,on,64,64,40,64,64,40,56,56,40,56,56,40 -off,on,on,off,off,on,64,64,40,64,64,40,56,56,40,56,56,40 -off,on,on,off,on,on,64,64,40,64,64,40,56,56,40,56,56,40 -off,on,on,on,off,on,64,64,40,64,64,40,56,56,40,56,56,40 -off,on,on,on,on,on,64,64,40,64,64,40,56,56,40,56,56,40 -on,off,off,off,off,any,64,64,40,64,64,40,56,56,40,56,56,40 -on,off,off,off,on,any,64,64,40,64,64,40,56,56,40,56,56,40 -on,off,off,on,off,any,64,64,40,64,64,40,56,56,40,56,56,40 -on,off,off,on,on,any,64,64,40,64,64,40,56,56,40,56,56,40 -on,off,on,off,off,any,64,64,40,64,64,40,56,56,40,56,56,40 -on,off,on,off,on,any,64,64,40,64,64,40,56,56,40,56,56,40 -on,off,on,on,off,any,64,64,40,64,64,40,56,56,40,56,56,40 -on,off,on,on,on,any,64,64,40,64,64,40,56,56,40,56,56,40 -on,on,off,off,off,any,64,64,40,64,64,40,56,56,40,56,56,40 -on,on,off,off,on,any,64,64,40,64,64,40,56,56,40,56,56,40 -on,on,off,on,off,any,64,64,40,64,64,40,56,56,40,56,56,40 -on,on,off,on,on,any,64,64,40,64,64,40,56,56,40,56,56,40 -on,on,on,off,off,any,64,64,40,64,64,40,56,56,40,56,56,40 -on,on,on,off,on,any,64,64,40,64,64,40,56,56,40,56,56,40 -on,on,on,on,off,any,64,64,40,64,64,40,56,56,40,56,56,40 -on,on,on,on,on,any,64,64,40,64,64,40,56,56,40,56,56,40 -off,any,any,any,any,off,64,64,40,64,64,40,56,56,40,56,56,40 diff --git a/bluetooth_power_limits_GB62Z_EU.csv b/bluetooth_power_limits_GB62Z_EU.csv deleted file mode 100644 index d5a6f27..0000000 --- a/bluetooth_power_limits_GB62Z_EU.csv +++ /dev/null @@ -1,34 +0,0 @@ -Head,BTHotspot,WIFI5Ghz,HotspotVoice,Cell,IMU,BDR_Single_Chain_0,EDR_Single_Chain_0,BLE_Single_Chain_0,BDR_Single_Chain_1,EDR_Single_Chain_1,BLE_Single_Chain_1,BDR_Dual_Chain_0,EDR_Dual_Chain_0,BLE_Dual_Chain_0,BDR_Dual_Chain_1,EDR_Dual_Chain_1,BLE_Dual_Chain_1 -off,off,off,off,off,on,76,76,48,76,76,34,66,66,48,66,66,34 -off,off,off,off,on,on,76,76,48,76,76,34,66,66,48,66,66,34 -off,off,off,on,off,on,76,76,48,76,76,34,66,66,48,66,66,34 -off,off,off,on,on,on,76,76,48,76,76,34,66,66,48,66,66,34 -off,off,on,off,off,on,76,76,48,76,76,34,66,66,48,66,66,34 -off,off,on,off,on,on,76,76,48,76,76,34,66,66,48,66,66,34 -off,off,on,on,off,on,76,76,48,76,76,34,66,66,48,66,66,34 -off,off,on,on,on,on,76,76,48,76,76,34,66,66,48,66,66,34 -off,on,off,off,off,on,76,76,48,76,76,34,66,66,48,66,66,34 -off,on,off,off,on,on,76,76,48,76,76,34,66,66,48,66,66,34 -off,on,off,on,off,on,76,76,48,76,76,34,66,66,48,66,66,34 -off,on,off,on,on,on,76,76,48,76,76,34,66,66,48,66,66,34 -off,on,on,off,off,on,76,76,48,76,76,34,66,66,48,66,66,34 -off,on,on,off,on,on,76,76,48,76,76,34,66,66,48,66,66,34 -off,on,on,on,off,on,76,76,48,76,76,34,66,66,48,66,66,34 -off,on,on,on,on,on,76,76,48,76,76,34,66,66,48,66,66,34 -on,off,off,off,off,any,76,76,48,76,76,34,66,66,48,66,66,34 -on,off,off,off,on,any,76,76,48,76,76,34,66,66,48,66,66,34 -on,off,off,on,off,any,76,76,48,76,76,34,66,66,48,66,66,34 -on,off,off,on,on,any,76,76,48,76,76,34,66,66,48,66,66,34 -on,off,on,off,off,any,76,76,48,76,76,34,66,66,48,66,66,34 -on,off,on,off,on,any,76,76,48,76,76,34,66,66,48,66,66,34 -on,off,on,on,off,any,76,76,48,76,76,34,66,66,48,66,66,34 -on,off,on,on,on,any,76,76,48,76,76,34,66,66,48,66,66,34 -on,on,off,off,off,any,76,76,48,76,76,34,66,66,48,66,66,34 -on,on,off,off,on,any,76,76,48,76,76,34,66,66,48,66,66,34 -on,on,off,on,off,any,76,76,48,76,76,34,66,66,48,66,66,34 -on,on,off,on,on,any,76,76,48,76,76,34,66,66,48,66,66,34 -on,on,on,off,off,any,76,76,48,76,76,34,66,66,48,66,66,34 -on,on,on,off,on,any,76,76,48,76,76,34,66,66,48,66,66,34 -on,on,on,on,off,any,76,76,48,76,76,34,66,66,48,66,66,34 -on,on,on,on,on,any,76,76,48,76,76,34,66,66,48,66,66,34 -off,any,any,any,any,off,76,76,48,76,76,34,66,66,48,66,66,34 diff --git a/bluetooth_power_limits_GB62Z_US.csv b/bluetooth_power_limits_GB62Z_US.csv deleted file mode 100644 index af742ec..0000000 --- a/bluetooth_power_limits_GB62Z_US.csv +++ /dev/null @@ -1,34 +0,0 @@ -Head,BTHotspot,WIFI5Ghz,HotspotVoice,Cell,IMU,BDR_Single_Chain_0,EDR_Single_Chain_0,BLE_Single_Chain_0,BDR_Single_Chain_1,EDR_Single_Chain_1,BLE_Single_Chain_1,BDR_Dual_Chain_0,EDR_Dual_Chain_0,BLE_Dual_Chain_0,BDR_Dual_Chain_1,EDR_Dual_Chain_1,BLE_Dual_Chain_1 -off,off,off,off,off,on,76,76,68,76,76,76,66,66,66,66,66,66 -off,off,off,off,on,on,76,76,68,76,76,76,66,66,66,66,66,66 -off,off,off,on,off,on,76,76,68,76,76,76,66,66,66,66,66,66 -off,off,off,on,on,on,76,76,68,76,76,76,66,66,66,66,66,66 -off,off,on,off,off,on,76,76,68,76,76,76,66,66,66,66,66,66 -off,off,on,off,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,off,on,on,off,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,off,on,on,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,off,off,off,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,off,off,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,off,on,off,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,off,on,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,on,off,off,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,on,off,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,on,on,off,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,on,on,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -on,off,off,off,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,off,off,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,off,on,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,off,on,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,on,off,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,on,off,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,on,on,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,on,on,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,off,off,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,off,off,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,off,on,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,off,on,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,on,off,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,on,off,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,on,on,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,on,on,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -off,any,any,any,any,off,76,76,68,76,76,76,66,66,66,66,66,66 diff --git a/bluetooth_power_limits_GX7AS_CA.csv b/bluetooth_power_limits_GX7AS_CA.csv deleted file mode 100644 index 6ce2287..0000000 --- a/bluetooth_power_limits_GX7AS_CA.csv +++ /dev/null @@ -1,34 +0,0 @@ -Head,BTHotspot,WIFI5Ghz,HotspotVoice,Cell,IMU,BDR_Single_Chain_0,EDR_Single_Chain_0,BLE_Single_Chain_0,BDR_Single_Chain_1,EDR_Single_Chain_1,BLE_Single_Chain_1,BDR_Dual_Chain_0,EDR_Dual_Chain_0,BLE_Dual_Chain_0,BDR_Dual_Chain_1,EDR_Dual_Chain_1,BLE_Dual_Chain_1 -off,off,off,off,off,on,76,76,76,76,76,76,66,66,66,66,66,66 -off,off,off,off,on,on,76,76,76,76,76,76,66,66,66,66,66,66 -off,off,off,on,off,on,76,76,76,76,76,76,66,66,66,66,66,66 -off,off,off,on,on,on,76,76,76,76,76,76,66,66,66,66,66,66 -off,off,on,off,off,on,76,76,76,76,76,76,66,66,66,66,66,66 -off,off,on,off,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,off,on,on,off,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,off,on,on,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,off,off,off,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,off,off,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,off,on,off,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,off,on,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,on,off,off,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,on,off,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,on,on,off,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,on,on,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -on,off,off,off,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,off,off,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,off,on,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,off,on,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,on,off,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,on,off,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,on,on,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,on,on,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,off,off,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,off,off,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,off,on,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,off,on,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,on,off,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,on,off,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,on,on,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,on,on,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -off,any,any,any,any,off,76,76,76,76,76,76,66,66,66,66,66,66 diff --git a/bluetooth_power_limits_GX7AS_US.csv b/bluetooth_power_limits_GX7AS_US.csv deleted file mode 100644 index 6ce2287..0000000 --- a/bluetooth_power_limits_GX7AS_US.csv +++ /dev/null @@ -1,34 +0,0 @@ -Head,BTHotspot,WIFI5Ghz,HotspotVoice,Cell,IMU,BDR_Single_Chain_0,EDR_Single_Chain_0,BLE_Single_Chain_0,BDR_Single_Chain_1,EDR_Single_Chain_1,BLE_Single_Chain_1,BDR_Dual_Chain_0,EDR_Dual_Chain_0,BLE_Dual_Chain_0,BDR_Dual_Chain_1,EDR_Dual_Chain_1,BLE_Dual_Chain_1 -off,off,off,off,off,on,76,76,76,76,76,76,66,66,66,66,66,66 -off,off,off,off,on,on,76,76,76,76,76,76,66,66,66,66,66,66 -off,off,off,on,off,on,76,76,76,76,76,76,66,66,66,66,66,66 -off,off,off,on,on,on,76,76,76,76,76,76,66,66,66,66,66,66 -off,off,on,off,off,on,76,76,76,76,76,76,66,66,66,66,66,66 -off,off,on,off,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,off,on,on,off,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,off,on,on,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,off,off,off,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,off,off,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,off,on,off,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,off,on,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,on,off,off,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,on,off,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,on,on,off,on,56,56,56,56,56,56,56,56,56,56,56,56 -off,on,on,on,on,on,56,56,56,56,56,56,56,56,56,56,56,56 -on,off,off,off,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,off,off,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,off,on,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,off,on,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,on,off,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,on,off,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,on,on,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,off,on,on,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,off,off,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,off,off,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,off,on,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,off,on,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,on,off,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,on,off,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,on,on,off,any,44,44,44,44,44,44,44,44,44,44,44,44 -on,on,on,on,on,any,44,44,44,44,44,44,44,44,44,44,44,44 -off,any,any,any,any,off,76,76,76,76,76,76,66,66,66,66,66,66 diff --git a/conf/init.bluejay.rc b/conf/init.bluejay.rc deleted file mode 100644 index 496d62b..0000000 --- a/conf/init.bluejay.rc +++ /dev/null @@ -1,52 +0,0 @@ -# Bluejay specific init.rc -import /vendor/etc/init/hw/init.gs101.rc -import /vendor/etc/init/hw/init.blueport.rc - -# Start the twoshay touch service -on property:vendor.device.modules.ready=1 - start twoshay - -# Toggle glove_mode according to touch_sensitivity_mode -on property:persist.vendor.touch_sensitivity_mode=0 && property:sys.boot_completed=1 - write /sys/class/spi_master/spi11/spi11.0/glove_mode 00 - -on property:persist.vendor.touch_sensitivity_mode=1 && property:sys.boot_completed=1 - write /sys/class/spi_master/spi11/spi11.0/glove_mode 01 - -on post-fs-data - # Speaker amp permission - chmod 644 /mnt/vendor/persist/audio/speaker.cal - -# Ensure Camera sound is enforced audible for JP SKU -on property:ro.boot.hardware.sku=GB17L - setprop audio.camerasound.force true - -# charger driver exposes now finer grain control, map demo mode to those properties -# NOTE: demo mode can only be exit wiping data (which reset the persist properties) -on property:sys.retaildemo.enabled=1 - setprop persist.vendor.charge.stop.level 35 - setprop persist.vendor.charge.start.level 30 - -# Haptics -on property:vendor.all.modules.ready=1 - mkdir /mnt/vendor/persist/haptics 0770 system system - chmod 770 /mnt/vendor/persist/haptics - chmod 440 /mnt/vendor/persist/haptics/cs40l26.cal - chown system system /mnt/vendor/persist/haptics - chown system system /mnt/vendor/persist/haptics/cs40l26.cal - - chown system system /sys/bus/i2c/devices/8-0043/calibration/f0_stored - chown system system /sys/bus/i2c/devices/8-0043/calibration/q_stored - chown system system /sys/bus/i2c/devices/8-0043/calibration/redc_stored - chown system system /sys/bus/i2c/devices/8-0043/default/vibe_state - chown system system /sys/bus/i2c/devices/8-0043/default/num_waves - chown system system /sys/bus/i2c/devices/8-0043/default/braking_time_bank - chown system system /sys/bus/i2c/devices/8-0043/default/braking_time_index - chown system system /sys/bus/i2c/devices/8-0043/default/braking_time_ms - chown system system /sys/bus/i2c/devices/8-0043/default/f0_offset - chown system system /sys/bus/i2c/devices/8-0043/default/owt_free_space - chown system system /sys/bus/i2c/devices/8-0043/default/f0_comp_enable - chown system system /sys/bus/i2c/devices/8-0043/default/redc_comp_enable - chown system system /sys/bus/i2c/devices/8-0043/default/delay_before_stop_playback_us - - enable vendor.vibrator.cs40l26 diff --git a/conf/init.blueport.rc b/conf/init.blueport.rc deleted file mode 100644 index 0cf933a..0000000 --- a/conf/init.blueport.rc +++ /dev/null @@ -1,32 +0,0 @@ -# Blueport specific init.rc - -# When ro.vendor.factory=1, add vendor/bin/factory to default path -on init && property:ro.vendor.factory=1 - export PATH /product/bin:/apex/com.android.runtime/bin:/apex/com.android.art/bin:/system_ext/bin:/system/bin:/system/xbin:/odm/bin:/vendor/bin:/vendor/xbin:/vendor/bin/factory - import /vendor/etc/init/hw/init.factory.rc - -on init - # register/nvmem dump - chown system system /sys/bus/nvmem/devices/8-00500/nvmem - # NFC streset tool name - setprop persist.vendor.nfc.streset libstreset21 - setprop persist.vendor.se.streset libstreset21 - -on early-boot - # Wait for insmod_sh to finish all common modules - wait_for_prop vendor.common.modules.ready 1 - start insmod_sh_blueport - -service insmod_sh_blueport /vendor/bin/insmod.sh /vendor_dlkm/etc/init.insmod.${ro.hardware}.cfg - class main - user root - group root system - disabled - oneshot - -on boot && property:ro.vendor.factory=1 - # FTM log folder - mkdir /data/ftmlog 0775 system system - - # Audio test folder - mkdir /data/AudioTest 0775 system system diff --git a/device-bluejay.mk b/device-bluejay.mk index d14ebd9..ec36e4e 100644 --- a/device-bluejay.mk +++ b/device-bluejay.mk @@ -22,43 +22,20 @@ TARGET_KERNEL_PLATFORM_SOURCE := google/gs-$(TARGET_LINUX_KERNEL_VERSION) DEVICE_PACKAGE_OVERLAYS += device/google/bluejay/bluejay/overlay include device/google/bluejay/sepolicy/bluejay-sepolicy.mk -include device/google/bluejay/audio/bluejay/audio-tables.mk include device/google/gs101/device-shipping-common.mk include device/google/gs-common/bcmbt/bluetooth.mk include device/google/gs-common/touch/stm/stm11.mk -# Init files -PRODUCT_COPY_FILES += \ - device/google/bluejay/conf/init.blueport.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.blueport.rc \ - device/google/bluejay/conf/init.bluejay.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.bluejay.rc - # Recovery files PRODUCT_COPY_FILES += \ device/google/gs101/conf/init.recovery.device.rc:$(TARGET_COPY_OUT_RECOVERY)/root/init.recovery.bluejay.rc -# Thermal Config -PRODUCT_COPY_FILES += \ - device/google/bluejay/thermal_info_config_bluejay.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config.json \ - device/google/bluejay/thermal_info_config_charge_bluejay.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config_charge.json - -# Power HAL config -PRODUCT_COPY_FILES += \ - device/google/bluejay/powerhint.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json - # Camera -PRODUCT_COPY_FILES += \ - device/google/bluejay/media_profiles_bluejay.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml - PRODUCT_PROPERTY_OVERRIDES += \ persist.vendor.camera.extended_launch_boost=1 \ persist.vendor.camera.raise_buf_allocation_priority=1 \ persist.vendor.camera.fixed_fps_range_boost=1 -# Display Config -PRODUCT_COPY_FILES += \ - device/google/bluejay/display_colordata_dev_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_colordata_dev_cal0.pb \ - device/google/bluejay/display_golden_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_golden_cal0.pb - # Media Performance Class 12 PRODUCT_PROPERTY_OVERRIDES += ro.odm.build.media_performance_class=31 @@ -69,10 +46,7 @@ PRODUCT_COPY_FILES += \ frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \ frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \ frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.uicc.xml \ - frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml \ - device/google/bluejay/nfc/libnfc-hal-st.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st.conf \ - device/google/bluejay/nfc/libnfc-hal-st-GB17L.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st-GB17L.conf \ - device/google/bluejay/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf + frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml PRODUCT_PACKAGES += \ Tag \ @@ -88,8 +62,7 @@ PRODUCT_PACKAGES += \ PRODUCT_COPY_FILES += \ frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.ese.xml \ - frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \ - device/google/bluejay/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf + frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml DEVICE_MANIFEST_FILE += \ device/google/bluejay/nfc/manifest_se_bluejay.xml @@ -119,16 +92,6 @@ PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.set_idle_timer_ms=0 # Config of primary display frames to reach LHBM peak brightness PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.primarydisplay.lhbm.frames_to_reach_peak_brightness=2 -# Bluetooth Tx power caps for bluejay -PRODUCT_COPY_FILES += \ - device/google/bluejay/bluetooth_power_limits.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits.csv \ - device/google/bluejay/bluetooth_power_limits_GB17L_JP.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_JP.csv \ - device/google/bluejay/bluetooth_power_limits_GX7AS_CA.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_CA.csv \ - device/google/bluejay/bluetooth_power_limits_GB62Z_US.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_GB62Z_US.csv \ - device/google/bluejay/bluetooth_power_limits_GX7AS_US.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_GX7AS_US.csv \ - device/google/bluejay/bluetooth_power_limits_G1AZG_EU.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_G1AZG_EU.csv \ - device/google/bluejay/bluetooth_power_limits_GB62Z_EU.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_GB62Z_EU.csv - # Bluetooth PRODUCT_PRODUCT_PROPERTIES += \ persist.bluetooth.a2dp_aac.vbr_supported=true \ @@ -185,10 +148,6 @@ PRODUCT_PRODUCT_PROPERTIES += \ PRODUCT_PRODUCT_PROPERTIES += \ ro.support_one_handed_mode=true -# GPS xml -PRODUCT_COPY_FILES += \ - device/google/bluejay/gps_user.6.1.xml.b3:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml - # This device is shipped with 32 (Android S V2) PRODUCT_SHIPPING_API_LEVEL := 32 @@ -217,9 +176,6 @@ PRODUCT_PRODUCT_PROPERTIES += \ PRODUCT_PRODUCT_PROPERTIES ?= \ ro.com.google.ime.height_ratio=1.05 -# UFS: the script is used to select the corresponding firmware to run FFU. -PRODUCT_PACKAGES += ufs_firmware_update.sh - # Enable DeviceAsWebcam support PRODUCT_VENDOR_PROPERTIES += \ ro.usb.uvc.enabled=true diff --git a/display_colordata_dev_cal0.pb b/display_colordata_dev_cal0.pb deleted file mode 100644 index 252a819..0000000 Binary files a/display_colordata_dev_cal0.pb and /dev/null differ diff --git a/display_golden_cal0.pb b/display_golden_cal0.pb deleted file mode 100644 index ceb0526..0000000 Binary files a/display_golden_cal0.pb and /dev/null differ diff --git a/gps_user.6.1.xml.b3 b/gps_user.6.1.xml.b3 deleted file mode 100644 index ad4130d..0000000 --- a/gps_user.6.1.xml.b3 +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - - - - - diff --git a/gps_user.xml.b3 b/gps_user.xml.b3 deleted file mode 100644 index 35e76aa..0000000 --- a/gps_user.xml.b3 +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - - - - - diff --git a/media_profiles_bluejay.xml b/media_profiles_bluejay.xml deleted file mode 100644 index 2b333b3..0000000 --- a/media_profiles_bluejay.xml +++ /dev/null @@ -1,1086 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -]> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/nfc/libnfc-hal-st-GB17L.conf b/nfc/libnfc-hal-st-GB17L.conf deleted file mode 100644 index 251410c..0000000 --- a/nfc/libnfc-hal-st-GB17L.conf +++ /dev/null @@ -1,159 +0,0 @@ -########################### Start of libnf-hal-st_aosp.conf ########################### - -############################################################################### -############################################################################### -# ST HAL trace log level -STNFC_HAL_LOGLEVEL=1 -NFC_DEBUG_ENABLED=0 - -############################################################################### -# Vendor specific mode to enable FW (RF & SWP) traces. -STNFC_FW_DEBUG_ENABLED=1 - -############################################################################### -# File used for NFA storage -NFA_STORAGE="/data/nfc" - -############################################################################### -# Keep the nfa storage file. -PRESERVE_STORAGE=1 - -############################################################################### -# In Switch OFF mode (phone switched-off), specify the desired CE mode to -# the controller. -# 0: No card-emulation; DEFAULT -# 1: Switch-off card-emulation enabled -CE_ON_SWITCH_OFF_STATE=1 - -############################################################################### -# Vendor specific mode to support the USB charging mode if VPSIO=1 in switch off. -STNFC_USB_CHARGING_MODE=1 - -############################################################################### -# Vendor Specific Proprietary Protocol & Discovery Configuration -# Set to 0xFF if unsupported -# byte[0] NCI_PROTOCOL_18092_ACTIVE -# byte[1] NCI_PROTOCOL_B_PRIME -# byte[2] NCI_PROTOCOL_DUAL -# byte[3] NCI_PROTOCOL_15693 -# byte[4] NCI_PROTOCOL_KOVIO -# byte[5] NCI_PROTOCOL_MIFARE -# byte[6] NCI_DISCOVERY_TYPE_POLL_KOVIO -# byte[7] NCI_DISCOVERY_TYPE_POLL_B_PRIME -# byte[8] NCI_DISCOVERY_TYPE_LISTEN_B_PRIME -NFA_PROPRIETARY_CFG={05:FF:FF:06:8A:90:77:FF:FF} - -############################################################################### -# Choose the presence-check algorithm for type-4 tag. If not defined, -# the default value is 1. -# 0 NFA_RW_PRES_CHK_DEFAULT; Let stack selects an algorithm -# 1 NFA_RW_PRES_CHK_I_BLOCK; ISO-DEP protocol's empty I-block -# 2 NFA_RW_PRES_CHK_RESET; Deactivate to Sleep, then re-activate -# 3 NFA_RW_PRES_CHK_RB_CH0; Type-4 tag protocol's ReadBinary command on channel 0 -# 4 NFA_RW_PRES_CHK_RB_CH3; Type-4 tag protocol's ReadBinary command on channel 3 -# 5 NFA_RW_PRES_CHK_ISO_DEP_NAK; presence check command ISO-DEP NAK as per NCI2.0 -PRESENCE_CHECK_ALGORITHM=5 - -############################################################################### -# Name of the NCI HAL module to use -# If unset, falls back to nfc_nci.bcm2079x -NCI_HAL_MODULE="nfc_nci.st21nfc" - -############################################################################### -# Allow list to be set at startup. -DEVICE_HOST_ALLOW_LIST={02:C0} - -############################################################################### -# BAIL OUT value for P2P -# Implements algorithm for NFC-DEP protocol priority over ISO-DEP protocol. -POLL_BAIL_OUT_MODE=1 - -############################################################################### -# Extended APDU length for ISO_DEP -ISO_DEP_MAX_TRANSCEIVE=0xFEFF - -############################################################################### -# Configure the NFC Extras to open and use a static pipe. If the value is -# not set or set to 0, then the default is use a dynamic pipe based on a -# destination gate (see NFA_HCI_DEFAULT_DEST_GATE). Note there is a value -# for each EE (ESE/SIM) -OFF_HOST_ESE_PIPE_ID=0x5E -OFF_HOST_SIM_PIPE_ID=0x3E - -############################################################################### -#Set the default Felica T3T System Code OffHost route Location : -#This settings will be used when application does not set this parameter -# host 0x00 -# eSE 0x82 (eSE), 0x86 (eUICC/SPI-SE) -# UICC 0x81 (UICC_1), 0x85 (UICC_2) -DEFAULT_SYS_CODE_ROUTE=0x86 - -############################################################################### -#Set the Felica T3T System Code supported power state: -DEFAULT_SYS_CODE_PWR_STATE=0x3B - -############################################################################### -# Path and Files used for FW update binaries storage -STNFC_FW_PATH_STORAGE="/vendor/firmware" -STNFC_FW_BIN_NAME="/st54j_fw.bin" -STNFC_FW_CONF_NAME="/st54j_conf_GB17L.bin" - -############################################################################### -# Default off-host route for Felica. -# This settings will be used when application does not set this parameter -# host 0x00 -# eSE 0x82 (eSE), 0x86 (eUICC/SPI-SE) -# UICC 0x81 (UICC_1), 0x85 (UICC_2) -DEFAULT_NFCF_ROUTE=0x86 - -############################################################################### -# Configure the default off-host route. -# used for technology A and B routing -# eSE 0x82 (eSE), 0x86 (eUICC/SPI-SE) -# UICC 0x81 (UICC_1), 0x85 (UICC_2) -DEFAULT_OFFHOST_ROUTE=0x81 - -############################################################################### -# Configure the default AID route. -# host 0x00 -# eSE 0x82 (eSE), 0x86 (eUICC/SPI-SE) -# UICC 0x81 (UICC_1), 0x85 (UICC_2) -DEFAULT_ROUTE=0x00 - -############################################################################### -# Configure the NFCEEIDs of offhost UICC. -# UICC 0x81 (UICC_1), 0x85 (UICC_2) -OFFHOST_ROUTE_UICC={81} - -############################################################################### -# Configure the NFCEEIDs of offhost eSEs. -# eSE 0x82 (eSE), 0x86 (eUICC/SPI-SE) -OFFHOST_ROUTE_ESE={86} - -############################################################################### -# Configure the list of NFCEE for the ISO-DEP routing. -# host 0x00 -# eSE 0x82 (eSE), 0x86 (eUICC/SPI-SE) -# UICC 0x81 (UICC_1), 0x85 (UICC_2) -DEFAULT_ISODEP_ROUTE=0x81 - -############################################################################### -# Configure the HAL Clock control -# enable 0x01 -# disable 0x00 default value -STNFC_CONTROL_CLK=0x01 - -################################################################################ -# Configure the ACTIVE_RW timer -# Default 0x00, set 0x01 to enable it -STNFC_ACTIVERW_TIMER=0x01 - -################################################################################ -# Core configuration settings -CORE_CONF_PROP={ 20, 02, 0a, 03, - a1, 01, 1e, - a2, 01, 19, - 80, 01, 01 -} - - diff --git a/nfc/libnfc-hal-st.conf b/nfc/libnfc-hal-st.conf deleted file mode 100644 index 9771486..0000000 --- a/nfc/libnfc-hal-st.conf +++ /dev/null @@ -1,165 +0,0 @@ -########################### Start of libnf-hal-st_aosp.conf ########################### - -############################################################################### -############################################################################### -# ST HAL trace log level -STNFC_HAL_LOGLEVEL=1 -NFC_DEBUG_ENABLED=0 - -############################################################################### -# Vendor specific mode to enable FW (RF & SWP) traces. -STNFC_FW_DEBUG_ENABLED=1 - -############################################################################### -# File used for NFA storage -NFA_STORAGE="/data/nfc" - -############################################################################### -# Keep the nfa storage file. -PRESERVE_STORAGE=1 - -############################################################################### -# In Switch OFF mode (phone switched-off), specify the desired CE mode to -# the controller. -# 0: No card-emulation; DEFAULT -# 1: Switch-off card-emulation enabled -CE_ON_SWITCH_OFF_STATE=1 - -############################################################################### -# Vendor specific mode to support the USB charging mode if VPSIO=1 in switch off. -STNFC_USB_CHARGING_MODE=1 - -############################################################################### -# Vendor Specific Proprietary Protocol & Discovery Configuration -# Set to 0xFF if unsupported -# byte[0] NCI_PROTOCOL_18092_ACTIVE -# byte[1] NCI_PROTOCOL_B_PRIME -# byte[2] NCI_PROTOCOL_DUAL -# byte[3] NCI_PROTOCOL_15693 -# byte[4] NCI_PROTOCOL_KOVIO -# byte[5] NCI_PROTOCOL_MIFARE -# byte[6] NCI_DISCOVERY_TYPE_POLL_KOVIO -# byte[7] NCI_DISCOVERY_TYPE_POLL_B_PRIME -# byte[8] NCI_DISCOVERY_TYPE_LISTEN_B_PRIME -NFA_PROPRIETARY_CFG={05:FF:FF:06:8A:90:77:FF:FF} - -############################################################################### -# Choose the presence-check algorithm for type-4 tag. If not defined, -# the default value is 1. -# 0 NFA_RW_PRES_CHK_DEFAULT; Let stack selects an algorithm -# 1 NFA_RW_PRES_CHK_I_BLOCK; ISO-DEP protocol's empty I-block -# 2 NFA_RW_PRES_CHK_RESET; Deactivate to Sleep, then re-activate -# 3 NFA_RW_PRES_CHK_RB_CH0; Type-4 tag protocol's ReadBinary command on channel 0 -# 4 NFA_RW_PRES_CHK_RB_CH3; Type-4 tag protocol's ReadBinary command on channel 3 -# 5 NFA_RW_PRES_CHK_ISO_DEP_NAK; presence check command ISO-DEP NAK as per NCI2.0 -PRESENCE_CHECK_ALGORITHM=5 - -############################################################################### -# Name of the NCI HAL module to use -# If unset, falls back to nfc_nci.bcm2079x -NCI_HAL_MODULE="nfc_nci.st21nfc" - -############################################################################### -# Allow list to be set at startup. -DEVICE_HOST_ALLOW_LIST={02:C0} - -############################################################################### -# BAIL OUT value for P2P -# Implements algorithm for NFC-DEP protocol priority over ISO-DEP protocol. -POLL_BAIL_OUT_MODE=1 - -############################################################################### -# Extended APDU length for ISO_DEP -ISO_DEP_MAX_TRANSCEIVE=0xFEFF - -############################################################################### -# Configure the NFC Extras to open and use a static pipe. If the value is -# not set or set to 0, then the default is use a dynamic pipe based on a -# destination gate (see NFA_HCI_DEFAULT_DEST_GATE). Note there is a value -# for each EE (ESE/SIM) -OFF_HOST_ESE_PIPE_ID=0x5E -OFF_HOST_SIM_PIPE_ID=0x3E - -############################################################################### -#Set the default Felica T3T System Code OffHost route Location : -#This settings will be used when application does not set this parameter -# host 0x00 -# eSE 0x82 (eSE), 0x86 (eUICC/SPI-SE) -# UICC 0x81 (UICC_1), 0x85 (UICC_2) -DEFAULT_SYS_CODE_ROUTE=0x86 - -############################################################################### -#Set the Felica T3T System Code supported power state: -DEFAULT_SYS_CODE_PWR_STATE=0x3B - -############################################################################### -# Path and Files used for FW update binaries storage -STNFC_FW_PATH_STORAGE="/vendor/firmware" -STNFC_FW_BIN_NAME="/st54j_fw.bin" -STNFC_FW_CONF_NAME="/st54j_conf.bin" - -############################################################################### -# Default off-host route for Felica. -# This settings will be used when application does not set this parameter -# host 0x00 -# eSE 0x82 (eSE), 0x86 (eUICC/SPI-SE) -# UICC 0x81 (UICC_1), 0x85 (UICC_2) -DEFAULT_NFCF_ROUTE=0x86 - -############################################################################### -# Configure the default off-host route. -# used for technology A and B routing -# eSE 0x82 (eSE), 0x86 (eUICC/SPI-SE) -# UICC 0x81 (UICC_1), 0x85 (UICC_2) -DEFAULT_OFFHOST_ROUTE=0x81 - -############################################################################### -# Configure the default AID route. -# host 0x00 -# eSE 0x82 (eSE), 0x86 (eUICC/SPI-SE) -# UICC 0x81 (UICC_1), 0x85 (UICC_2) -DEFAULT_ROUTE=0x00 - -############################################################################### -# Configure the NFCEEIDs of offhost UICC. -# UICC 0x81 (UICC_1), 0x85 (UICC_2) -OFFHOST_ROUTE_UICC={81} - -############################################################################### -# Configure the NFCEEIDs of offhost eSEs. -# eSE 0x82 (eSE), 0x86 (eUICC/SPI-SE) -OFFHOST_ROUTE_ESE={86} - -############################################################################### -# Configure the list of NFCEE for the ISO-DEP routing. -# host 0x00 -# eSE 0x82 (eSE), 0x86 (eUICC/SPI-SE) -# UICC 0x81 (UICC_1), 0x85 (UICC_2) -DEFAULT_ISODEP_ROUTE=0x00 - -############################################################################### -# Configure the HAL Clock control -# enable 0x01 -# disable 0x00 default value -STNFC_CONTROL_CLK=0x01 - -################################################################################ -# Configure the ACTIVE_RW timer -# Default 0x00, set 0x01 to enable it -STNFC_ACTIVERW_TIMER=0x01 - -################################################################################ -# Core configuration settings -CORE_CONF_PROP={ 20, 02, 0a, 03, - a1, 01, 1e, - a2, 01, 19, - 80, 01, 01 -} - -############################################################################### -# Vendor specific mode to enable HAL event log. -HAL_EVENT_LOG_DEBUG_ENABLED=1 - -############################################################################### -# File used for NFC HAL event log storage -HAL_EVENT_LOG_STORAGE="/data/vendor/nfc" diff --git a/nfc/libnfc-nci.conf b/nfc/libnfc-nci.conf deleted file mode 100644 index c17296a..0000000 --- a/nfc/libnfc-nci.conf +++ /dev/null @@ -1,115 +0,0 @@ -############################################################################### -# Application options -NFC_DEBUG_ENABLED=0 - -############################################################################### -# File used for NFA storage -NFA_STORAGE="/data/nfc" - -############################################################################### -# Force UICC to only listen to the following technology(s). -# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h. -# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_B | NFA_TECHNOLOGY_MASK_F -UICC_LISTEN_TECH_MASK=0x07 - -############################################################################### -# Set HOST default listen to the following technology(s). -# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h. -# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_F -# 0x07 = A + B + F -HOST_LISTEN_TECH_MASK=0x07 - -############################################################################### -# AID for Empty Select command -# If specified, this AID will be substituted when an Empty SELECT command is -# detected. The first byte is the length of the AID. Maximum length is 16. -AID_FOR_EMPTY_SELECT={08:A0:00:00:01:51:00:00:00} - -############################################################################### -# When screen is turned off, specify the desired power state of the controller. -# 0: power-off-sleep state; DEFAULT -# 1: full-power state -# 2: screen-off card-emulation (CE4/CE3/CE1 modes are used) -SCREEN_OFF_POWER_STATE=1 - -############################################################################### -# Force tag polling for the following technology(s). -# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h. -# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_B | -# NFA_TECHNOLOGY_MASK_F | NFA_TECHNOLOGY_MASK_ISO15693 | -# NFA_TECHNOLOGY_MASK_B_PRIME | NFA_TECHNOLOGY_MASK_KOVIO | -# NFA_TECHNOLOGY_MASK_ACTIVE -# -# Notable bits: -# NFA_TECHNOLOGY_MASK_A 0x01 /* NFC Technology A */ -# NFA_TECHNOLOGY_MASK_B 0x02 /* NFC Technology B */ -# NFA_TECHNOLOGY_MASK_F 0x04 /* NFC Technology F */ -# NFA_TECHNOLOGY_MASK_ISO15693 0x08 /* Proprietary Technology */ -# NFA_TECHNOLOGY_MASK_KOVIO 0x20 /* Proprietary Technology */ -# NFA_TECHNOLOGY_MASK_ACTIVE 0x40 /* NFC Technology Active */ -POLLING_TECH_MASK=0x2F - -############################################################################### -# Force P2P to only listen for the following technology(s). -# The bits are defined as tNFA_TECHNOLOGY_MASK in nfa_api.h. -# Default is NFA_TECHNOLOGY_MASK_A | NFA_TECHNOLOGY_MASK_F | -# NFA_TECHNOLOGY_MASK_ACTIVE -# -# Notable bits: -# NFA_TECHNOLOGY_MASK_A 0x01 /* NFC Technology A */ -# NFA_TECHNOLOGY_MASK_F 0x04 /* NFC Technology F */ -# NFA_TECHNOLOGY_MASK_ACTIVE 0x40 /* NFC Technology Active */ -P2P_LISTEN_TECH_MASK=0x00 - -PRESERVE_STORAGE=0x01 - -############################################################################### -# Override the stack default for NFA_EE_MAX_EE_SUPPORTED set in nfc_target.h. -# The value is set to 3 by default as it assumes we will discover 0xF2, -# 0xF3, and 0xF4. If a platform will exclude and SE, this value can be reduced -# so that the stack will not wait any longer than necessary. -# Maximum EE supported number -# NXP PN547C2 0x02 -# NXP PN65T 0x03 -# NXP PN548C2 0x02 -# NXP PN66T 0x03 -NFA_MAX_EE_SUPPORTED=0x02 - -############################################################################### -# AID_MATCHING constants -# AID_MATCHING_EXACT_ONLY 0x00 -# AID_MATCHING_EXACT_OR_PREFIX 0x01 -# AID_MATCHING_PREFIX_ONLY 0x02 -# AID_MATCHING_EXACT_OR_SUBSET_OR_PREFIX 0x03 -AID_MATCHING_MODE=0x03 - -############################################################################### -#Set the default Felica T3T System Code : -#This settings will be used when application does not set this parameter -DEFAULT_SYS_CODE={FE:FE} - -############################################################################### -# Value of NIC parameter NFCC_COFNIG_CONTROL -# 0x00 NFCC is not allowed to manage RF configuration -# 0x01 NFCC is allowed to manage RF configuration -NFCC_CONFIG_CONTROL=0x01 - -############################################################################### -#Set if the AID routing should be blocked for the power modes not supported. -NFA_AID_BLOCK_ROUTE=1 - -############################################################################### -#Set the OffHost AID supported power state: -OFFHOST_AID_ROUTE_PWR_STATE=0x3B - -############################################################################### -# Mifare Tag implementation -# 0: General implementation -# 1: Legacy implementation -LEGACY_MIFARE_READER=0 - -############################################################################### -# Nfc recovery implementation -# 0: Crash Nfc Service -# 1: Toggle Nfc state -RECOVERY_OPTION=1 diff --git a/nfc/libse-gto-hal.conf b/nfc/libse-gto-hal.conf deleted file mode 100644 index f4e443d..0000000 --- a/nfc/libse-gto-hal.conf +++ /dev/null @@ -1,2 +0,0 @@ -#Gemalto SPI devnode -GTO_DEV=/dev/st54spi; diff --git a/powerhint.json b/powerhint.json deleted file mode 100644 index d189f65..0000000 --- a/powerhint.json +++ /dev/null @@ -1,2029 +0,0 @@ -{ - "Nodes": [ - { - "Name": "MemFreq", - "Path": "/sys/devices/platform/17000010.devfreq_mif/devfreq/17000010.devfreq_mif/min_freq", - "Values": [ - "3172000", - "1352000", - "1014000", - "421000" - ], - "ResetOnInit": true - }, - { - "Name": "IntFreq", - "Path": "/sys/devices/platform/17000020.devfreq_int/devfreq/17000020.devfreq_int/min_freq", - "Values": [ - "533000", - "100000" - ], - "ResetOnInit": true - }, - { - "Name": "CPULittleClusterMaxFreq", - "Path": "/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq", - "Values": [ - "9999999", - "1098000", - "1401000", - "930000", - "1197000", - "1328000", - "1598000", - "1803000" - ], - "DefaultIndex": 0, - "ResetOnInit": true - }, - { - "Name": "CPULittleClusterMinFreq", - "Path": "/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq", - "Values": [ - "9999999", - "1197000", - "0" - ], - "ResetOnInit": true - }, - { - "Name": "CPULittleClusterDownRateLimitUs", - "Path": "/sys/devices/system/cpu/cpu0/cpufreq/sched_pixel/down_rate_limit_us", - "Values": [ - "5000", - "500" - ], - "DefaultIndex": 0, - "ResetOnInit": true - }, - { - "Name": "CPUMidClusterMaxFreq", - "Path": "/sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq", - "Values": [ - "9999999", - "1024000", - "1197000", - "1491000", - "910000", - "1328000", - "1663000", - "1836000", - "1999000" - ], - "DefaultIndex": 0, - "ResetOnInit": true - }, - { - "Name": "CPUMidClusterMinFreq", - "Path": "/sys/devices/system/cpu/cpu4/cpufreq/scaling_min_freq", - "Values": [ - "9999999", - "1197000", - "0" - ], - "ResetOnInit": true - }, - { - "Name": "CPUMidClusterDownRateLimitUs", - "Path": "/sys/devices/system/cpu/cpu4/cpufreq/sched_pixel/down_rate_limit_us", - "Values": [ - "20000", - "3000" - ], - "DefaultIndex": 0, - "ResetOnInit": true - }, - { - "Name": "CPUBigClusterMaxFreq", - "Path": "/sys/devices/system/cpu/cpu6/cpufreq/scaling_max_freq", - "Values": [ - "9999999", - "984000", - "1426000", - "1826000", - "1277000", - "1582000", - "1745000", - "2048000", - "2401000" - ], - "DefaultIndex": 0, - "ResetOnInit": true - }, - { - "Name": "CPUBigClusterMinFreq", - "Path": "/sys/devices/system/cpu/cpu6/cpufreq/scaling_min_freq", - "Values": [ - "9999999", - "1106000", - "0" - ], - "ResetOnInit": true - }, - { - "Name": "CPUBigClusterDownRateLimitUs", - "Path": "/sys/devices/system/cpu/cpu6/cpufreq/sched_pixel/down_rate_limit_us", - "Values": [ - "20000", - "3000" - ], - "DefaultIndex": 0, - "ResetOnInit": true - }, - { - "Name": "GPUMinFreq", - "Path": "/sys/devices/platform/1c500000.mali/hint_min_freq", - "Values": [ - "762000", - "471000", - "400000", - "302000", - "151000" - ], - "ResetOnInit": true - }, - { - "Name": "DisplayWakeup", - "Path": "/sys/devices/platform/1c300000.drmdecon/early_wakeup", - "Values": [ - "1", - "0" - ] - }, - { - "Name": "CPUUtilThreshold", - "Path": "/proc/vendor_sched/util_threshold", - "Values": [ - "1280", - "1100 1078 1024" - ], - "DefaultIndex": 0, - "ResetOnInit": true - }, - { - "Name": "CPUDVFSHeadroom", - "Path": "/proc/vendor_sched/dvfs_headroom", - "Values": [ - "1280", - "1100", - "1100 1078 1024" - ], - "DefaultIndex": 0, - "ResetOnInit": true - }, - { - "Name": "CPUTaperedDVFSHeadroomEnable", - "Path": "/proc/vendor_sched/tapered_dvfs_headroom_enable", - "Values": [ - "0", - "1" - ], - "DefaultIndex": 0, - "ResetOnInit": true - }, - { - "Name": "MIFTargetLoad", - "Path": "/sys/class/devfreq/17000010.devfreq_mif/interactive/target_load", - "Values": [ - "20 5 80", - "20 10 80" - ], - "ResetOnInit": true - }, - { - "Name": "TAUclampMinOnNiceEnable", - "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_enable", - "Values": [ - "1", - "0" - ], - "ResetOnInit": true - }, - { - "Name": "TAUclampMinOnNiceHighValue", - "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_high_value", - "Values": [ - "765", - "0" - ], - "ResetOnInit": true - }, - { - "Name": "TAUclampMinOnNiceMidValue", - "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_mid_value", - "Values": [ - "390", - "0" - ], - "ResetOnInit": true - }, - { - "Name": "TAUclampMinOnNiceHighPrio", - "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_high_prio", - "Values": [ - "110", - "119", - "120" - ], - "ResetOnInit": true - }, - { - "Name": "TAUclampMinOnNiceMidPrio", - "Path": "/proc/vendor_sched/groups/ta/uclamp_min_on_nice_mid_prio", - "Values": [ - "128", - "139", - "130" - ], - "ResetOnInit": true - }, - { - "Name": "TAUClampBoost", - "Path": "/proc/vendor_sched/groups/ta/uclamp_min", - "Values": [ - "692", - "1" - ], - "ResetOnInit": true - }, - { - "Name": "FGUClampBoost", - "Path": "/proc/vendor_sched/groups/fg/uclamp_min", - "Values": [ - "202", - "0" - ], - "ResetOnInit": true - }, - { - "Name": "MLUclampBoost", - "Path": "/proc/vendor_sched/groups/nnapi/uclamp_min", - "Values": [ - "225", - "640" - ], - "DefaultIndex": 0, - "ResetOnInit": true - }, - { - "Name": "ReducePreferIdle", - "Path": "/proc/vendor_sched/reduce_prefer_idle", - "Values": [ - "0", - "1" - ], - "ResetOnInit": true - }, - { - "Name": "CDPreferIdle", - "Path": "/proc/vendor_sched/groups/cam/prefer_idle", - "Values": [ - "0", - "1" - ], - "ResetOnInit": true - }, - { - "Name": "CDCpuset", - "Path": "/dev/cpuset/camera-daemon/cpus", - "Values": [ - "0-3", - "4-7", - "0-7" - ], - "ResetOnInit": true - }, - { - "Name": "CDHighCpusetCpus", - "Path": "/dev/cpuset/camera-daemon-high-group/cpus", - "Values": [ - "0-3", - "6-7" - ], - "ResetOnInit": true - }, - { - "Name": "CDMidCpusetCpus", - "Path": "/dev/cpuset/camera-daemon-mid-group/cpus", - "Values": [ - "0-3", - "4-5" - ], - "ResetOnInit": true - }, - { - "Name": "CDMidHighCpusetCpus", - "Path": "/dev/cpuset/camera-daemon-mid-high-group/cpus", - "Values": [ - "0-3", - "4-7" - ], - "ResetOnInit": true - }, - { - "Name": "TAPreferHighCap", - "Path": "/proc/vendor_sched/groups/ta/prefer_high_cap", - "Values": [ - "1", - "0" - ], - "ResetOnInit": true - }, - { - "Name": "TAPreferIdle", - "Path": "/proc/vendor_sched/groups/ta/prefer_idle", - "Values": [ - "0", - "1" - ], - "ResetOnInit": true - }, - { - "Name": "TAAutoPreferFit", - "Path": "/proc/vendor_sched/groups/ta/auto_prefer_fit", - "Values": [ - "1", - "0" - ], - "ResetOnInit": true - }, - { - "Name": "TAPreferredIdleMaskMid", - "Path": "/proc/vendor_sched/groups/ta/preferred_idle_mask_mid", - "Values": [ - "0x3f", - "0xf0", - "0xff" - ], - "ResetOnInit": true - }, - { - "Name": "TAPreferredIdleMaskLow", - "Path": "/proc/vendor_sched/groups/ta/preferred_idle_mask_low", - "Values": [ - "0x3f", - "0xf0", - "0xff" - ], - "ResetOnInit": true - }, - { - "Name": "FGPreferIdle", - "Path": "/proc/vendor_sched/groups/fg/prefer_idle", - "Values": [ - "1", - "0" - ], - "DefaultIndex": 0, - "ResetOnInit": true - }, - { - "Name": "CDPreferHighCap", - "Path": "/proc/vendor_sched/groups/cam/prefer_high_cap", - "Values": [ - "1", - "0" - ], - "ResetOnInit": true - }, - { - "Name": "NPITaskPacking", - "Path": "/proc/vendor_sched/npi_packing", - "Values": [ - "0", - "1" - ], - "ResetOnInit": true - }, - { - "Name": "LimitFlashCurrent", - "Path": "vendor.camera.max_flash_current", - "Values": [ - "100", - "1500" - ], - "ResetOnInit": true, - "Type": "Property" - }, - { - "Name": "PowerHALRenderingState", - "Path": "vendor.powerhal.rendering", - "Values": [ - "EXPENSIVE_RENDERING", - "" - ], - "Type": "Property" - }, - { - "Name": "PowerHALCameraRunning", - "Path": "vendor.powerhal.camerarunning", - "Values": [ - "1", - "0" - ], - "Type": "Property", - "ResetOnInit": true - }, - { - "Name": "INTCAMFreq", - "Path": "/sys/devices/platform/17000030.devfreq_intcam/devfreq/17000030.devfreq_intcam/min_freq", - "Values": [ - "664000", - "67000" - ], - "ResetOnInit": true - }, - { - "Name": "TNRFreq", - "Path": "/sys/devices/platform/17000060.devfreq_tnr/devfreq/17000060.devfreq_tnr/min_freq", - "Values": [ - "664000", - "67000" - ], - "ResetOnInit": true - }, - { - "Name": "GPUPowerPolicy", - "Path": "/sys/devices/platform/1c500000.mali/power_policy", - "Values": [ - "always_on", - "adaptive" - ], - "ResetOnInit": true - }, - { - "Name": "BigControlTempSet", - "Path": "/dev/thermal/tz-by-name/BIG/trip_point_2_temp", - "Values": [ - "90000", - "80000" - ], - "DefaultIndex": 0, - "ResetOnInit": false - }, - { - "Name": "MidControlTempSet", - "Path": "/dev/thermal/tz-by-name/MID/trip_point_2_temp", - "Values": [ - "90000", - "80000" - ], - "DefaultIndex": 0, - "ResetOnInit": false - }, - { - "Name": "LittleControlTempSet", - "Path": "/dev/thermal/tz-by-name/LITTLE/trip_point_2_temp", - "Values": [ - "95000", - "80000" - ], - "DefaultIndex": 0, - "ResetOnInit": false - }, - { - "Name": "G3dControlTempSet", - "Path": "/dev/thermal/tz-by-name/G3D/trip_point_2_temp", - "Values": [ - "90000", - "80000" - ], - "DefaultIndex": 0, - "ResetOnInit": false - }, - { - "Name": "BigSwitchOnTempSet", - "Path": "/dev/thermal/tz-by-name/BIG/trip_point_1_temp", - "Values": [ - "70000", - "60000" - ], - "DefaultIndex": 0, - "ResetOnInit": false - }, - { - "Name": "MidSwitchOnTempSet", - "Path": "/dev/thermal/tz-by-name/MID/trip_point_1_temp", - "Values": [ - "70000", - "60000" - ], - "DefaultIndex": 0, - "ResetOnInit": false - }, - { - "Name": "LittleSwitchOnTempSet", - "Path": "/dev/thermal/tz-by-name/LITTLE/trip_point_1_temp", - "Values": [ - "70000", - "60000" - ], - "DefaultIndex": 0, - "ResetOnInit": false - }, - { - "Name": "G3dSwitchOnTempSet", - "Path": "/dev/thermal/tz-by-name/G3D/trip_point_1_temp", - "Values": [ - "70000", - "60000" - ], - "DefaultIndex": 0, - "ResetOnInit": false - }, - { - "Name": "CPU_LITTLE_TSKIN_BYPASS", - "Path": "/dev/thermal/cdev-by-name/thermal-cpufreq-0/user_vote_bypass", - "Values": [ - "0", - "1" - ], - "DefaultIndex": 0 - }, - { - "Name": "CPU_MID_TSKIN_BYPASS", - "Path": "/dev/thermal/cdev-by-name/thermal-cpufreq-1/user_vote_bypass", - "Values": [ - "0", - "1" - ], - "DefaultIndex": 0 - }, - { - "Name": "CPU_BIG_TSKIN_BYPASS", - "Path": "/dev/thermal/cdev-by-name/thermal-cpufreq-2/user_vote_bypass", - "Values": [ - "0", - "1" - ], - "DefaultIndex": 0 - }, - { - "Name": "TRUSTY_VIRTIO_HIGH", - "Path": "/sys/module/trusty_virtio/parameters/use_high_wq", - "Values": [ - "1", - "0" - ] - }, - { - "Name": "TRUSTY_HIGH", - "Path": "/sys/module/trusty_core/parameters/use_high_wq", - "Values": [ - "1", - "0" - ] - }, - { - "Name": "PMU_POLL", - "Path": "/proc/vendor_sched/pmu_poll_enable", - "Values": [ - "0", - "1" - ], - "DefaultIndex": 0 - }, - { - "Name": "Dex2oatThreads", - "Path": "vendor.powerhal.dalvik.vm.dex2oat-threads", - "Values": [ - "1", - "2", - "4", - "6", - "8" - ], - "Type": "Property" - }, - { - "Name": "Dex2oatCPUSet", - "Path": "vendor.powerhal.dalvik.vm.dex2oat-cpu-set", - "Values": [ - "0,1,2,3", - "0,1,2,3,4,5", - "0,1,2,3,4,5,6,7" - ], - "Type": "Property" - }, - { - "Name": "Dex2oatGroup", - "Path": "/proc/vendor_sched/groups/dex2oat/ug", - "Values": [ - "1", - "0" - ], - "DefaultIndex": 0, - "ResetOnInit": true - }, - { - "Name": "AAModeProperty", - "Path": "vendor.powerhal.mode.aa", - "Values": [ - "1", - "0" - ], - "ResetOnInit": true, - "Type": "Property" - }, - { - "Name": "SYSTEM_UI_ADPF_PROFILES", - "Path": ":SYSTEM_UI", - "Values": [ - "SYSTEM_UI_PROFILE" - ], - "DefaultIndex": 0, - "ResetOnInit": true, - "Type": "Event" - } - ], - "Actions": [ - { - "PowerHint": "CDCPUSET_RESTRICTED", - "Node": "CDCpuset", - "Duration": 1000, - "Value": "0-3" - }, - { - "PowerHint": "CDHIGHCPUSETCPUS_RESTRICTED", - "Node": "CDHighCpusetCpus", - "Duration": 1000, - "Value": "0-3" - }, - { - "PowerHint": "CDMIDCPUSETCPUS_RESTRICTED", - "Node": "CDMidCpusetCpus", - "Duration": 1000, - "Value": "0-3" - }, - { - "PowerHint": "CDMIDHIGHCPUSETCPUS_RESTRICTED", - "Node": "CDMidHighCpusetCpus", - "Duration": 1000, - "Value": "0-3" - }, - { - "PowerHint": "LAUNCH", - "Node": "ReducePreferIdle", - "Duration": 5000, - "Value": "0" - }, - { - "PowerHint": "LAUNCH", - "Node": "FGPreferIdle", - "Duration": 5000, - "Value": "1" - }, - { - "PowerHint": "LAUNCH", - "Node": "CPUDVFSHeadroom", - "Duration": 5000, - "Value": "1280" - }, - { - "PowerHint": "LAUNCH", - "Node": "CPUTaperedDVFSHeadroomEnable", - "Duration": 5000, - "Value": "0" - }, - { - "PowerHint": "LAUNCH", - "Node": "CPULittleClusterDownRateLimitUs", - "Duration": 5000, - "Value": "5000" - }, - { - "PowerHint": "LAUNCH", - "Node": "CPUMidClusterDownRateLimitUs", - "Duration": 5000, - "Value": "20000" - }, - { - "PowerHint": "LAUNCH", - "Node": "CPUBigClusterDownRateLimitUs", - "Duration": 5000, - "Value": "20000" - }, - { - "PowerHint": "LAUNCH", - "Node": "CPUBigClusterMaxFreq", - "Duration": 5000, - "Value": "9999999" - }, - { - "PowerHint": "LAUNCH", - "Node": "CPUMidClusterMaxFreq", - "Duration": 5000, - "Value": "9999999" - }, - { - "PowerHint": "LAUNCH", - "Node": "CPULittleClusterMaxFreq", - "Duration": 5000, - "Value": "9999999" - }, - { - "PowerHint": "LAUNCH", - "Node": "TAUClampBoost", - "Duration": 5000, - "Value": "692" - }, - { - "PowerHint": "LAUNCH", - "Node": "FGUClampBoost", - "Duration": 5000, - "Value": "202" - }, - { - "PowerHint": "LAUNCH", - "Node": "MemFreq", - "Duration": 5000, - "Value": "3172000" - }, - { - "PowerHint": "LAUNCH", - "Node": "GPUPowerPolicy", - "Duration": 5000, - "Value": "always_on" - }, - { - "PowerHint": "LAUNCH", - "Node": "NPITaskPacking", - "Duration": 5000, - "Value": "0" - }, - { - "PowerHint": "LAUNCH", - "Node": "TAAutoPreferFit", - "Duration": 5000, - "Value": "1" - }, - { - "PowerHint": "LAUNCH", - "Node": "TAPreferredIdleMaskMid", - "Duration": 5000, - "Value": "0x3f" - }, - { - "PowerHint": "LAUNCH", - "Node": "TAPreferredIdleMaskLow", - "Duration": 5000, - "Value": "0x3f" - }, - { - "PowerHint": "LAUNCH", - "Node": "TAUclampMinOnNiceEnable", - "Duration": 5000, - "Value": "1" - }, - { - "PowerHint": "LAUNCH", - "Node": "TAUclampMinOnNiceHighValue", - "Duration": 5000, - "Value": "765" - }, - { - "PowerHint": "LAUNCH", - "Node": "TAUclampMinOnNiceHighPrio", - "Duration": 5000, - "Value": "110" - }, - { - "PowerHint": "LAUNCH", - "Node": "TAUclampMinOnNiceMidValue", - "Duration": 5000, - "Value": "390" - }, - { - "PowerHint": "LAUNCH", - "Node": "TAUclampMinOnNiceMidPrio", - "Duration": 5000, - "Value": "139" - }, - { - "PowerHint": "LAUNCH", - "Type": "DoHint", - "Value": "LAUNCH_EXTEND" - }, - { - "PowerHint": "LAUNCH_EXTEND", - "Node": "CPUBigClusterMaxFreq", - "Duration": 2000, - "Value": "9999999" - }, - { - "PowerHint": "LAUNCH_EXTEND", - "Node": "CPUMidClusterMaxFreq", - "Duration": 2000, - "Value": "9999999" - }, - { - "PowerHint": "LAUNCH_EXTEND", - "Node": "CPULittleClusterMaxFreq", - "Duration": 2000, - "Value": "9999999" - }, - { - "PowerHint": "DISPLAY_CHANGE", - "Node": "ReducePreferIdle", - "Duration": 5000, - "Value": "0" - }, - { - "PowerHint": "DISPLAY_CHANGE", - "Node": "FGPreferIdle", - "Duration": 5000, - "Value": "1" - }, - { - "PowerHint": "DISPLAY_CHANGE", - "Node": "CPUBigClusterMaxFreq", - "Duration": 5000, - "Value": "9999999" - }, - { - "PowerHint": "DISPLAY_CHANGE", - "Node": "CPUMidClusterMaxFreq", - "Duration": 5000, - "Value": "9999999" - }, - { - "PowerHint": "DISPLAY_CHANGE", - "Node": "CPULittleClusterMaxFreq", - "Duration": 5000, - "Value": "9999999" - }, - { - "PowerHint": "DISPLAY_CHANGE", - "Node": "TAUClampBoost", - "Duration": 5000, - "Value": "692" - }, - { - "PowerHint": "DISPLAY_CHANGE", - "Node": "FGUClampBoost", - "Duration": 5000, - "Value": "202" - }, - { - "PowerHint": "DISPLAY_CHANGE", - "Node": "MemFreq", - "Duration": 5000, - "Value": "3172000" - }, - { - "PowerHint": "DISPLAY_CHANGE", - "Node": "GPUPowerPolicy", - "Duration": 5000, - "Value": "always_on" - }, - { - "PowerHint": "DISPLAY_CHANGE", - "Node": "NPITaskPacking", - "Duration": 5000, - "Value": "0" - }, - { - "PowerHint": "CPU_LOAD_RESET", - "Node": "MemFreq", - "Duration": 33, - "Value": "1014000" - }, - { - "PowerHint": "CAMERA_LAUNCH", - "Node": "MemFreq", - "Duration": 1000, - "Value": "3172000" - }, - { - "PowerHint": "CAMERA_LAUNCH", - "Node": "CPUBigClusterMaxFreq", - "Duration": 1000, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_LAUNCH", - "Node": "CPUBigClusterMinFreq", - "Duration": 1000, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_LAUNCH", - "Node": "CPUMidClusterMaxFreq", - "Duration": 1000, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_LAUNCH", - "Node": "CPUMidClusterMinFreq", - "Duration": 1000, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_LAUNCH", - "Node": "CPULittleClusterMaxFreq", - "Duration": 1000, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_LAUNCH", - "Node": "CPULittleClusterMinFreq", - "Duration": 1000, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_LAUNCH", - "Node": "CDCpuset", - "Duration": 1000, - "Value": "4-7" - }, - { - "PowerHint": "CAMERA_LAUNCH", - "Node": "NPITaskPacking", - "Duration": 1000, - "Value": "0" - }, - { - "PowerHint": "CAMERA_LAUNCH_EXTENDED", - "Node": "CPUBigClusterMaxFreq", - "Duration": 2000, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_LAUNCH_EXTENDED", - "Node": "CPUMidClusterMaxFreq", - "Duration": 2000, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_LAUNCH_EXTENDED", - "Node": "CPULittleClusterMaxFreq", - "Duration": 2000, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_LAUNCH_EXTENDED", - "Node": "NPITaskPacking", - "Duration": 2000, - "Value": "0" - }, - { - "PowerHint": "CAMERA_THERMAL_CPU_THROTTLE", - "Node": "CPUBigClusterMaxFreq", - "Duration": 1000, - "Value": "984000" - }, - { - "PowerHint": "CAMERA_THERMAL_CPU_THROTTLE", - "Node": "CPUMidClusterMaxFreq", - "Duration": 1000, - "Value": "1024000" - }, - { - "PowerHint": "CAMERA_THERMAL_CPU_THROTTLE", - "Node": "CPULittleClusterMaxFreq", - "Duration": 1000, - "Value": "1098000" - }, - { - "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE", - "Node": "CPUBigClusterMaxFreq", - "Duration": 1000, - "Value": "1426000" - }, - { - "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE", - "Node": "CPUMidClusterMaxFreq", - "Duration": 1000, - "Value": "1197000" - }, - { - "PowerHint": "CAMERA_CAPTURE_CPU_THROTTLE", - "Node": "CPULittleClusterMaxFreq", - "Duration": 1000, - "Value": "1401000" - }, - { - "PowerHint": "CAMERA_SHOT", - "Node": "MemFreq", - "Duration": 300, - "Value": "3172000" - }, - { - "PowerHint": "CAMERA_SHOT", - "Node": "CPUBigClusterMaxFreq", - "Duration": 300, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_SHOT", - "Node": "CPUBigClusterMinFreq", - "Duration": 300, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_SHOT", - "Node": "CPUMidClusterMaxFreq", - "Duration": 300, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_SHOT", - "Node": "CPUMidClusterMinFreq", - "Duration": 300, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_BACKEND_BOOST", - "Node": "MemFreq", - "Duration": 1000, - "Value": "3172000" - }, - { - "PowerHint": "CAMERA_BACKEND_BOOST", - "Node": "IntFreq", - "Duration": 1000, - "Value": "533000" - }, - { - "PowerHint": "CAMERA_BACKEND_BOOST", - "Node": "INTCAMFreq", - "Duration": 1000, - "Value": "664000" - }, - { - "PowerHint": "CAMERA_BACKEND_BOOST", - "Node": "TNRFreq", - "Duration": 1000, - "Value": "664000" - }, - { - "PowerHint": "GCA_CAMERA_SHOT_BIGCPU", - "Node": "TAPreferHighCap", - "Duration": 3000, - "Value": "1" - }, - { - "PowerHint": "GCA_CAMERA_SHOT_BIGCPU", - "Node": "CPUBigClusterMaxFreq", - "Duration": 3000, - "Value": "9999999" - }, - { - "PowerHint": "GCA_CAMERA_SHOT_BIGCPU", - "Node": "CPUBigClusterMinFreq", - "Duration": 3000, - "Value": "9999999" - }, - { - "PowerHint": "GCA_CAMERA_SHOT_BIGMIDCPU", - "Node": "TAPreferHighCap", - "Duration": 3000, - "Value": "1" - }, - { - "PowerHint": "GCA_CAMERA_SHOT_BIGMIDCPU", - "Node": "CPUBigClusterMaxFreq", - "Duration": 3000, - "Value": "9999999" - }, - { - "PowerHint": "GCA_CAMERA_SHOT_BIGMIDCPU", - "Node": "CPUBigClusterMinFreq", - "Duration": 3000, - "Value": "9999999" - }, - { - "PowerHint": "GCA_CAMERA_SHOT_BIGMIDCPU", - "Node": "CPUMidClusterMaxFreq", - "Duration": 3000, - "Value": "9999999" - }, - { - "PowerHint": "GCA_CAMERA_SHOT_BIGMIDCPU", - "Node": "CPUMidClusterMinFreq", - "Duration": 3000, - "Value": "9999999" - }, - { - "PowerHint": "GCA_CAMERA_SHOT_ALLCPU", - "Node": "TAPreferHighCap", - "Duration": 3000, - "Value": "1" - }, - { - "PowerHint": "GCA_CAMERA_SHOT_ALLCPU", - "Node": "CPUBigClusterMaxFreq", - "Duration": 3000, - "Value": "9999999" - }, - { - "PowerHint": "GCA_CAMERA_SHOT_ALLCPU", - "Node": "CPUBigClusterMinFreq", - "Duration": 3000, - "Value": "9999999" - }, - { - "PowerHint": "GCA_CAMERA_SHOT_ALLCPU", - "Node": "CPUMidClusterMaxFreq", - "Duration": 3000, - "Value": "9999999" - }, - { - "PowerHint": "GCA_CAMERA_SHOT_ALLCPU", - "Node": "CPUMidClusterMinFreq", - "Duration": 3000, - "Value": "9999999" - }, - { - "PowerHint": "GCA_CAMERA_SHOT_ALLCPU", - "Node": "CPULittleClusterMaxFreq", - "Duration": 3000, - "Value": "9999999" - }, - { - "PowerHint": "GCA_CAMERA_SHOT_ALLCPU", - "Node": "CPULittleClusterMinFreq", - "Duration": 3000, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_STREAMING_EXTREME", - "Node": "PowerHALCameraRunning", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "CAMERA_STREAMING_EXTREME", - "Node": "CPULittleClusterMaxFreq", - "Duration": 0, - "Value": "1401000" - }, - { - "PowerHint": "CAMERA_STREAMING_EXTREME", - "Node": "CPUMidClusterMaxFreq", - "Duration": 0, - "Value": "1491000" - }, - { - "PowerHint": "CAMERA_STREAMING_EXTREME", - "Node": "CPUBigClusterMaxFreq", - "Duration": 0, - "Value": "1826000" - }, - { - "PowerHint": "CAMERA_STREAMING_EXTREME", - "Node": "CDPreferHighCap", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "CAMERA_STREAMING_EXTREME", - "Node": "GPUMinFreq", - "Duration": 0, - "Value": "302000" - }, - { - "PowerHint": "CAMERA_STREAMING_EXTREME", - "Node": "MemFreq", - "Duration": 0, - "Value": "1014000" - }, - { - "PowerHint": "CAMERA_STREAMING_EXTREME", - "Node": "MIFTargetLoad", - "Duration": 0, - "Value": "20 10 80" - }, - { - "PowerHint": "CAMERA_STREAMING_EXTREME", - "Node": "TAPreferHighCap", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "CAMERA_STREAMING_EXTREME", - "Node": "TAPreferIdle", - "Duration": 0, - "Value": "0" - }, - { - "PowerHint": "CAMERA_STREAMING_EXTREME", - "Node": "NPITaskPacking", - "Duration": 0, - "Value": "0" - }, - { - "PowerHint": "CAMERA_STREAMING_HIGH", - "Node": "PowerHALCameraRunning", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "CAMERA_STREAMING_HIGH", - "Node": "CPUUtilThreshold", - "Duration": 0, - "Value": "1100 1078 1024" - }, - { - "PowerHint": "CAMERA_STREAMING_HIGH", - "Node": "CPUDVFSHeadroom", - "Duration": 0, - "Value": "1100 1078 1024" - }, - { - "PowerHint": "CAMERA_STREAMING_HIGH", - "Node": "CPUMidClusterMaxFreq", - "Duration": 0, - "Value": "1491000" - }, - { - "PowerHint": "CAMERA_STREAMING_HIGH", - "Node": "CPUBigClusterMaxFreq", - "Duration": 0, - "Value": "1826000" - }, - { - "PowerHint": "CAMERA_STREAMING_HIGH", - "Node": "CDPreferHighCap", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "CAMERA_STREAMING_HIGH", - "Node": "CPULittleClusterMaxFreq", - "Duration": 0, - "Value": "1401000" - }, - { - "PowerHint": "CAMERA_STREAMING_HIGH", - "Node": "GPUMinFreq", - "Duration": 0, - "Value": "302000" - }, - { - "PowerHint": "CAMERA_STREAMING_HIGH", - "Node": "MemFreq", - "Duration": 0, - "Value": "1014000" - }, - { - "PowerHint": "CAMERA_STREAMING_HIGH", - "Node": "MIFTargetLoad", - "Duration": 0, - "Value": "20 10 80" - }, - { - "PowerHint": "CAMERA_STREAMING_HIGH", - "Node": "TAPreferHighCap", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "CAMERA_STREAMING_HIGH", - "Node": "TAPreferIdle", - "Duration": 0, - "Value": "0" - }, - { - "PowerHint": "CAMERA_STREAMING_HIGH", - "Node": "NPITaskPacking", - "Duration": 0, - "Value": "0" - }, - { - "PowerHint": "CAMERA_STREAMING_STANDARD", - "Node": "PowerHALCameraRunning", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "CAMERA_STREAMING_STANDARD", - "Node": "CDPreferHighCap", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "CAMERA_STREAMING_STANDARD", - "Node": "TAPreferHighCap", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "CAMERA_STREAMING_STANDARD", - "Node": "CPUBigClusterMaxFreq", - "Duration": 0, - "Value": "1826000" - }, - { - "PowerHint": "CAMERA_STREAMING_STANDARD", - "Node": "CPUMidClusterMaxFreq", - "Duration": 0, - "Value": "1491000" - }, - { - "PowerHint": "CAMERA_STREAMING_STANDARD", - "Node": "CPULittleClusterMaxFreq", - "Duration": 0, - "Value": "1401000" - }, - { - "PowerHint": "CAMERA_STREAMING_STANDARD", - "Node": "GPUMinFreq", - "Duration": 0, - "Value": "302000" - }, - { - "PowerHint": "CAMERA_STREAMING_STANDARD", - "Node": "MemFreq", - "Duration": 0, - "Value": "1014000" - }, - { - "PowerHint": "CAMERA_STREAMING_STANDARD", - "Node": "MIFTargetLoad", - "Duration": 0, - "Value": "20 10 80" - }, - { - "PowerHint": "CAMERA_STREAMING_STANDARD", - "Node": "NPITaskPacking", - "Duration": 0, - "Value": "0" - }, - { - "PowerHint": "CAMERA_MULTICAM_BOOST", - "Node": "CPUBigClusterMaxFreq", - "Duration": 100, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_MULTICAM_BOOST", - "Node": "CPUMidClusterMaxFreq", - "Duration": 100, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_MULTICAM_BOOST", - "Node": "CPULittleClusterMaxFreq", - "Duration": 100, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_STREAMING_LOW", - "Node": "PowerHALCameraRunning", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "CAMERA_STREAMING_LOW", - "Node": "CDPreferHighCap", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "CAMERA_STREAMING_LOW", - "Node": "TAPreferHighCap", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "CAMERA_STREAMING_LOW", - "Node": "CDPreferIdle", - "Duration": 0, - "Value": "0" - }, - { - "PowerHint": "CAMERA_STREAMING_LOW", - "Node": "CPUBigClusterMaxFreq", - "Duration": 0, - "Value": "1826000" - }, - { - "PowerHint": "CAMERA_STREAMING_LOW", - "Node": "CPUMidClusterMaxFreq", - "Duration": 0, - "Value": "1491000" - }, - { - "PowerHint": "CAMERA_STREAMING_LOW", - "Node": "CPULittleClusterMaxFreq", - "Duration": 0, - "Value": "1401000" - }, - { - "PowerHint": "CAMERA_STREAMING_LOW", - "Node": "GPUMinFreq", - "Duration": 0, - "Value": "302000" - }, - { - "PowerHint": "CAMERA_STREAMING_LOW", - "Node": "MemFreq", - "Duration": 0, - "Value": "1014000" - }, - { - "PowerHint": "CAMERA_STREAMING_LOW", - "Node": "MIFTargetLoad", - "Duration": 0, - "Value": "20 10 80" - }, - { - "PowerHint": "CAMERA_STREAMING_LOW", - "Node": "NPITaskPacking", - "Duration": 0, - "Value": "0" - }, - { - "PowerHint": "CAMERA_VIDEO_RECORDING", - "Type": "MaskHint", - "Value": "CDCPUSET_RESTRICTED" - }, - { - "PowerHint": "CAMERA_VIDEO_RECORDING", - "Type": "MaskHint", - "Value": "CDHIGHCPUSETCPUS_RESTRICTED" - }, - { - "PowerHint": "CAMERA_VIDEO_RECORDING", - "Type": "MaskHint", - "Value": "CDMIDCPUSETCPUS_RESTRICTED" - }, - { - "PowerHint": "CAMERA_VIDEO_RECORDING", - "Type": "MaskHint", - "Value": "CDMIDHIGHCPUSETCPUS_RESTRICTED" - }, - { - "PowerHint": "CAMERA_FIXED_FPS", - "Node": "MemFreq", - "Duration": 4000, - "Value": "1352000" - }, - { - "PowerHint": "CAMERA_FIXED_FPS", - "Node": "CPUBigClusterMaxFreq", - "Duration": 4000, - "Value": "9999999" - }, - { - "PowerHint": "CAMERA_FIXED_FPS", - "Node": "CPUBigClusterMinFreq", - "Duration": 4000, - "Value": "1106000" - }, - { - "PowerHint": "FIXED_PERFORMANCE", - "Node": "CPUBigClusterMaxFreq", - "Duration": 0, - "Value": "9999999" - }, - { - "PowerHint": "FIXED_PERFORMANCE", - "Node": "CPUBigClusterMinFreq", - "Duration": 0, - "Value": "9999999" - }, - { - "PowerHint": "FIXED_PERFORMANCE", - "Node": "CPUMidClusterMaxFreq", - "Duration": 0, - "Value": "9999999" - }, - { - "PowerHint": "FIXED_PERFORMANCE", - "Node": "CPUMidClusterMinFreq", - "Duration": 0, - "Value": "9999999" - }, - { - "PowerHint": "FIXED_PERFORMANCE", - "Node": "CPULittleClusterMaxFreq", - "Duration": 0, - "Value": "9999999" - }, - { - "PowerHint": "FIXED_PERFORMANCE", - "Node": "CPULittleClusterMinFreq", - "Duration": 0, - "Value": "9999999" - }, - { - "PowerHint": "LOW_POWER_LITTLE_CLUSTER_50", - "Node": "CPULittleClusterMaxFreq", - "Duration": 3600000, - "Value": "930000" - }, - { - "PowerHint": "LOW_POWER_LITTLE_CLUSTER_60", - "Node": "CPULittleClusterMaxFreq", - "Duration": 3600000, - "Value": "1197000" - }, - { - "PowerHint": "LOW_POWER_LITTLE_CLUSTER_70", - "Node": "CPULittleClusterMaxFreq", - "Duration": 3600000, - "Value": "1328000" - }, - { - "PowerHint": "LOW_POWER_LITTLE_CLUSTER_80", - "Node": "CPULittleClusterMaxFreq", - "Duration": 3600000, - "Value": "1598000" - }, - { - "PowerHint": "LOW_POWER_LITTLE_CLUSTER_90", - "Node": "CPULittleClusterMaxFreq", - "Duration": 3600000, - "Value": "1803000" - }, - { - "PowerHint": "LOW_POWER_MID_CLUSTER_50", - "Node": "CPUMidClusterMaxFreq", - "Duration": 3600000, - "Value": "910000" - }, - { - "PowerHint": "LOW_POWER_MID_CLUSTER_60", - "Node": "CPUMidClusterMaxFreq", - "Duration": 3600000, - "Value": "1328000" - }, - { - "PowerHint": "LOW_POWER_MID_CLUSTER_70", - "Node": "CPUMidClusterMaxFreq", - "Duration": 3600000, - "Value": "1663000" - }, - { - "PowerHint": "LOW_POWER_MID_CLUSTER_80", - "Node": "CPUMidClusterMaxFreq", - "Duration": 3600000, - "Value": "1836000" - }, - { - "PowerHint": "LOW_POWER_MID_CLUSTER_90", - "Node": "CPUMidClusterMaxFreq", - "Duration": 3600000, - "Value": "1999000" - }, - { - "PowerHint": "LOW_POWER_CPU_50", - "Node": "CPUBigClusterMaxFreq", - "Duration": 3600000, - "Value": "1277000" - }, - { - "PowerHint": "LOW_POWER_CPU_60", - "Node": "CPUBigClusterMaxFreq", - "Duration": 3600000, - "Value": "1582000" - }, - { - "PowerHint": "LOW_POWER_CPU_70", - "Node": "CPUBigClusterMaxFreq", - "Duration": 3600000, - "Value": "1745000" - }, - { - "PowerHint": "LOW_POWER_CPU_80", - "Node": "CPUBigClusterMaxFreq", - "Duration": 3600000, - "Value": "2048000" - }, - { - "PowerHint": "LOW_POWER_CPU_90", - "Node": "CPUBigClusterMaxFreq", - "Duration": 3600000, - "Value": "2401000" - }, - { - "PowerHint": "LOW_POWER", - "Node": "PMU_POLL", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "REFRESH_60FPS", - "Node": "TAUClampBoost", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "ADPF_DISABLE_TA_BOOST", - "Node": "TAUClampBoost", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "AUTOMOTIVE_PROJECTION", - "Node": "AAModeProperty", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "DISPLAY_IDLE", - "Node": "FGPreferIdle", - "Duration": 0, - "Value": "0" - }, - { - "PowerHint": "DISPLAY_IDLE", - "Node": "TAUClampBoost", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "DISPLAY_IDLE", - "Type": "EndHint", - "Value": "DISPLAY_UPDATE_IMMINENT" - }, - { - "PowerHint": "DISPLAY_IDLE", - "Type": "MaskHint", - "Value":"DISPLAY_UPDATE_IMMINENT", - "EnableProperty": "vendor.powerhal.mode.aa" - }, - { - "PowerHint": "DISPLAY_IDLE", - "Type": "MaskHint", - "Value":"CPU_LOAD_RESET", - "EnableProperty": "vendor.powerhal.mode.aa" - }, - { - "PowerHint": "DISPLAY_UPDATE_IMMINENT", - "Node": "DisplayWakeup", - "Duration": 50, - "Value": "1" - }, - { - "PowerHint": "EXPENSIVE_RENDERING", - "Node": "PowerHALRenderingState", - "Duration": 0, - "Value": "EXPENSIVE_RENDERING" - }, - { - "PowerHint": "EXPENSIVE_RENDERING", - "Node": "GPUMinFreq", - "Duration": 0, - "Value": "400000" - }, - { - "PowerHint": "GAME", - "Node": "CPUDVFSHeadroom", - "Duration": 0, - "Value": "1100" - }, - { - "PowerHint": "GAME", - "Node": "CPUTaperedDVFSHeadroomEnable", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "GAME", - "Node": "CPULittleClusterDownRateLimitUs", - "Duration": 0, - "Value": "500" - }, - { - "PowerHint": "GAME", - "Node": "CPUMidClusterDownRateLimitUs", - "Duration": 0, - "Value": "3000" - }, - { - "PowerHint": "GAME", - "Node": "CPUBigClusterDownRateLimitUs", - "Duration": 0, - "Value": "3000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_LIGHT", - "Node": "PMU_POLL", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_LIGHT", - "Node": "BigControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_LIGHT", - "Node": "MidControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_LIGHT", - "Node": "LittleControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_LIGHT", - "Node": "G3dControlTempSet", - "Duration": 0, - "Value": "80000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_LIGHT", - "Node": "BigSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_LIGHT", - "Node": "MidSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_LIGHT", - "Node": "LittleSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_LIGHT", - "Node": "G3dSwitchOnTempSet", - "Duration": 0, - "Value": "60000" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_LIGHT", - "Node": "Dex2oatThreads", - "Duration": 0, - "Value": "6" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_LIGHT", - "Node": "Dex2oatCPUSet", - "Duration": 0, - "Value": "0,1,2,3,4,5" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_LIGHT", - "Node": "Dex2oatGroup", - "Duration": 0, - "Value": "0" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_MODERATE", - "Node": "Dex2oatThreads", - "Duration": 0, - "Value": "4" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_MODERATE", - "Node": "Dex2oatCPUSet", - "Duration": 0, - "Value": "0,1,2,3" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_CRITICAL", - "Node": "Dex2oatThreads", - "Duration": 0, - "Value": "2" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", - "Node": "CPU_LITTLE_TSKIN_BYPASS", - "Duration": 0, - "Value": "0" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", - "Node": "CPU_MID_TSKIN_BYPASS", - "Duration": 0, - "Value": "0" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", - "Node": "CPU_BIG_TSKIN_BYPASS", - "Duration": 0, - "Value": "0" - }, - { - "PowerHint": "THERMAL_VIRTUAL-SKIN-HINT_EMERGENCY", - "Node": "Dex2oatThreads", - "Duration": 0, - "Value": "1" - }, - { - "PowerHint": "FACE_UNLOCK_BOOST", - "Node": "CPU_LITTLE_TSKIN_BYPASS", - "Duration": 1000, - "Value": "1" - }, - { - "PowerHint": "FACE_UNLOCK_BOOST", - "Node": "CPU_MID_TSKIN_BYPASS", - "Duration": 1000, - "Value": "1" - }, - { - "PowerHint": "FACE_UNLOCK_BOOST", - "Node": "CPU_BIG_TSKIN_BYPASS", - "Duration": 1000, - "Value": "1" - }, - { - "PowerHint": "FP_BOOST", - "Node": "CPUBigClusterMaxFreq", - "Duration": 1000, - "Value": "9999999" - }, - { - "PowerHint": "FP_BOOST", - "Node": "CPUBigClusterMinFreq", - "Duration": 1000, - "Value": "9999999" - }, - { - "PowerHint": "FP_BOOST", - "Node": "CPU_LITTLE_TSKIN_BYPASS", - "Duration": 1000, - "Value": "1" - }, - { - "PowerHint": "FP_BOOST", - "Node": "CPU_MID_TSKIN_BYPASS", - "Duration": 1000, - "Value": "1" - }, - { - "PowerHint": "FP_BOOST", - "Node": "CPU_BIG_TSKIN_BYPASS", - "Duration": 1000, - "Value": "1" - }, - { - "PowerHint": "FP_BOOST", - "Node": "TRUSTY_VIRTIO_HIGH", - "Duration": 1000, - "Value": "1" - }, - { - "PowerHint": "FP_BOOST", - "Node": "TRUSTY_HIGH", - "Duration": 1000, - "Value": "1" - }, - { - "PowerHint": "ML_ACC", - "Node": "MLUclampBoost", - "Duration": 2000, - "Value": "640" - } - ], - "AdpfConfig": [ - { - "Name": "REFRESH_120FPS", - "PID_On": true, - "PID_Po": 2.0, - "PID_Pu": 1.0, - "PID_I": 0.0, - "PID_I_Init": 200, - "PID_I_High": 512, - "PID_I_Low": -30, - "PID_Do": 500.0, - "PID_Du": 0.0, - "UclampMin_On": true, - "UclampMin_Init": 232, - "UclampMin_LoadUp": 480, - "UclampMin_LoadReset": 480, - "UclampMin_High": 480, - "UclampMin_Low": 2, - "UclampMax_EfficientBase": 400, - "UclampMax_EfficientOffset": 200, - "SamplingWindow_P": 1, - "SamplingWindow_I": 0, - "SamplingWindow_D": 1, - "ReportingRateLimitNs": 83333330, - "TargetTimeFactor": 1.0, - "StaleTimeFactor": 15.0, - "HeuristicBoost_On": true, - "HBoostModerateJankThreshold": 2, - "HBoostOffMaxAvgDurRatio": 4.0, - "HBoostSevereJankPidPu": 0.5, - "HBoostSevereJankThreshold": 8, - "HBoostUclampMinCeilingRange": [480, 722], - "HBoostUclampMinFloorRange": [230, 410], - "JankCheckTimeFactor": 1.2, - "LowFrameRateThreshold": 25, - "MaxRecordsNum": 300 - }, - { - "Name": "REFRESH_90FPS", - "PID_On": true, - "PID_Po": 2.0, - "PID_Pu": 1.0, - "PID_I": 0.0, - "PID_I_Init": 200, - "PID_I_High": 512, - "PID_I_Low": -30, - "PID_Do": 500.0, - "PID_Du": 0.0, - "UclampMin_On": true, - "UclampMin_Init": 162, - "UclampMin_LoadUp": 480, - "UclampMin_LoadReset": 480, - "UclampMin_High": 480, - "UclampMin_Low": 2, - "UclampMax_EfficientBase": 400, - "UclampMax_EfficientOffset": 200, - "SamplingWindow_P": 1, - "SamplingWindow_I": 0, - "SamplingWindow_D": 1, - "ReportingRateLimitNs": 111111110, - "TargetTimeFactor": 1.0, - "StaleTimeFactor": 15.0, - "HeuristicBoost_On": true, - "HBoostModerateJankThreshold": 2, - "HBoostOffMaxAvgDurRatio": 4.0, - "HBoostSevereJankPidPu": 0.5, - "HBoostSevereJankThreshold": 8, - "HBoostUclampMinCeilingRange": [480, 722], - "HBoostUclampMinFloorRange": [230, 410], - "JankCheckTimeFactor": 1.2, - "LowFrameRateThreshold": 25, - "MaxRecordsNum": 300 - }, - { - "Name": "REFRESH_60FPS", - "PID_On": true, - "PID_Po": 2.0, - "PID_Pu": 1.0, - "PID_I": 0.0, - "PID_I_Init": 200, - "PID_I_High": 512, - "PID_I_Low": -30, - "PID_Do": 500.0, - "PID_Du": 0.0, - "UclampMin_On": true, - "UclampMin_Init": 162, - "UclampMin_LoadUp": 480, - "UclampMin_LoadReset": 480, - "UclampMin_High": 480, - "UclampMin_Low": 2, - "UclampMax_EfficientBase": 400, - "UclampMax_EfficientOffset": 200, - "SamplingWindow_P": 1, - "SamplingWindow_I": 0, - "SamplingWindow_D": 1, - "ReportingRateLimitNs": 166666660, - "TargetTimeFactor": 1.0, - "StaleTimeFactor": 15.0, - "HeuristicBoost_On": true, - "HBoostModerateJankThreshold": 2, - "HBoostOffMaxAvgDurRatio": 4.0, - "HBoostSevereJankPidPu": 0.5, - "HBoostSevereJankThreshold": 8, - "HBoostUclampMinCeilingRange": [480, 722], - "HBoostUclampMinFloorRange": [230, 410], - "JankCheckTimeFactor": 1.2, - "LowFrameRateThreshold": 25, - "MaxRecordsNum": 300 - }, - { - "Name": "SYSTEM_UI_PROFILE", - "PID_On": true, - "PID_Po": 2.0, - "PID_Pu": 1.0, - "PID_I": 0.0, - "PID_I_Init": 200, - "PID_I_High": 512, - "PID_I_Low": -30, - "PID_Do": 500.0, - "PID_Du": 0.0, - "UclampMin_On": true, - "UclampMin_Init": 162, - "UclampMin_LoadUp": 730, - "UclampMin_LoadReset": 730, - "UclampMin_High": 480, - "UclampMin_Low": 2, - "UclampMax_EfficientBase": 400, - "UclampMax_EfficientOffset": 200, - "SamplingWindow_P": 1, - "SamplingWindow_I": 0, - "SamplingWindow_D": 1, - "ReportingRateLimitNs": 166666660, - "TargetTimeFactor": 1.0, - "StaleTimeFactor": 15.0, - "HeuristicBoost_On": true, - "HBoostModerateJankThreshold": 2, - "HBoostOffMaxAvgDurRatio": 4.0, - "HBoostSevereJankPidPu": 0.5, - "HBoostSevereJankThreshold": 8, - "HBoostUclampMinCeilingRange": [480, 722], - "HBoostUclampMinFloorRange": [230, 410], - "JankCheckTimeFactor": 1.2, - "LowFrameRateThreshold": 25, - "MaxRecordsNum": 300 - } - ] -} diff --git a/storage/Android.bp b/storage/Android.bp deleted file mode 100644 index 595857a..0000000 --- a/storage/Android.bp +++ /dev/null @@ -1,27 +0,0 @@ -// -// Copyright (C) 2017 The Android Open Source Project -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// 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. -// See the License for the specific language governing permissions and -// limitations under the License. - -package { - default_applicable_licenses: [ - "//device/google/bluejay:device_google_bluejay_license", - ], -} - -sh_binary { - name: "ufs_firmware_update.sh", - src: "ufs_firmware_update.sh", - init_rc: ["storage.bluejay.rc"], - vendor: true, -} diff --git a/storage/storage.bluejay.rc b/storage/storage.bluejay.rc deleted file mode 100644 index 9873325..0000000 --- a/storage/storage.bluejay.rc +++ /dev/null @@ -1,7 +0,0 @@ -on property:sys.boot_completed=1 - # Copy ufs firmware to disk - start ufs_firmware_update - -service ufs_firmware_update /vendor/bin/ufs_firmware_update.sh - disabled - oneshot diff --git a/storage/ufs_firmware_update.sh b/storage/ufs_firmware_update.sh deleted file mode 100755 index d118115..0000000 --- a/storage/ufs_firmware_update.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/vendor/bin/sh -# -# The script belongs to the feature of UFS FFU via OTA: go/p23-ffu-ota -# Its purpose is to copy the corresponding firmware into partition for UFS FFU. - -ufs_dev="/dev/sys/block/bootdevice" -fw_dir="/vendor/firmware" -blk_dev="/dev/block/by-name/fips" - -vendor=$(cat ${ufs_dev}/vendor | tr -d "[:space:]") -model=$(cat ${ufs_dev}/model | tr -d "[:space:]") -rev=$(cat ${ufs_dev}/rev | tr -d "[:space:]") - -file=$(find ${fw_dir} -name "*${vendor}${model}${rev}*" | head -n 1) -if [ -n "$file" ]; then - # The first 4KB block at fips partition has been occupied, and unused space begins from 4 KB - # Refer to: go/pixel-mp-ffu-ota-1p - dd if="$file" of=$blk_dev bs=4k seek=1 -fi diff --git a/thermal_info_config_bluejay.json b/thermal_info_config_bluejay.json deleted file mode 100644 index ff0ef0c..0000000 --- a/thermal_info_config_bluejay.json +++ /dev/null @@ -1,697 +0,0 @@ -{ - "Sensors":[ - { - "Name":"neutral_therm", - "Type":"UNKNOWN", - "HotThreshold":[ - "NAN", - "32.0", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "HotHysteresis":[ - 0.0, - 0.9, - 0.0, - 0.0, - 0.0, - 0.0, - 0.0 - ], - "VrThreshold":"NAN", - "Multiplier":0.001, - "PollingDelay":60000, - "PassiveDelay":7000 - }, - { - "Name":"skin_therm1", - "Type":"UNKNOWN", - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"skin_therm2", - "Type":"UNKNOWN", - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"disp_therm", - "Type":"UNKNOWN", - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"gnss_tcxo_therm", - "Type":"UNKNOWN", - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"usb_pwr_therm2", - "Type":"UNKNOWN", - "HotThreshold":[ - "NAN", - "39.0", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "HotHysteresis":[ - "0.0", - "0.9", - "0.0", - "0.0", - "0.0", - "0.0", - "0.0" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"charger_skin_therm", - "Type":"UNKNOWN", - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"quiet_therm", - "Type":"UNKNOWN", - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"VIRTUAL-QUIET-NEUTRAL", - "Type":"UNKNOWN", - "Hidden":true, - "VirtualSensor":true, - "Formula":"WEIGHTED_AVG", - "Combination":[ - "quiet_therm", - "neutral_therm" - ], - "Coefficient":[ - "0.7", - "0.3" - ], - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"VIRTUAL-NEUTRAL-SKIN2", - "Type":"UNKNOWN", - "Hidden":true, - "VirtualSensor":true, - "Formula":"WEIGHTED_AVG", - "Combination":[ - "neutral_therm", - "skin_therm2" - ], - "Coefficient":[ - "0.7", - "0.3" - ], - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"VIRTUAL-NEUTRAL", - "Type":"UNKNOWN", - "Hidden":true, - "VirtualSensor":true, - "Formula":"WEIGHTED_AVG", - "Combination":[ - "neutral_therm", - "skin_therm1", - "disp_therm", - "skin_therm2", - "gnss_tcxo_therm" - ], - "Coefficient":[ - "0.35", - "0.2", - "0.1", - "0.15", - "0.2" - ], - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"VIRTUAL-SKIN", - "Type":"SKIN", - "VirtualSensor":true, - "TriggerSensor":"neutral_therm", - "Formula":"MAXIMUM", - "Combination":["VIRTUAL-NEUTRAL-SKIN2", "VIRTUAL-NEUTRAL", "VIRTUAL-QUIET-NEUTRAL"], - "Coefficient":["1.0", "1.0", "1.0"], - "HotThreshold":["NAN", "39.0", "43.0", "45.0", "47.0", "52.0", "55.0"], - "HotHysteresis":[0.0, 1.9, 1.9, 1.9, 1.9, 1.9, 1.9], - "VrThreshold":"NAN", - "Multiplier":0.001, - "Monitor":true, - "PollingDelay":300000, - "PassiveDelay":7000, - "BindedCdevInfo": [ - { - "CdevRequest": "tpu_cooling", - "LimitInfo": [0, 2, 3, 4, 5, 5, 5] - } - ] - }, - { - "Name":"VIRTUAL-SKIN-HINT", - "Type":"UNKNOWN", - "Hidden":true, - "VirtualSensor":true, - "TriggerSensor":"neutral_therm", - "Formula":"MAXIMUM", - "Combination":["VIRTUAL-SKIN"], - "Coefficient":["1.0"], - "HotThreshold":["NAN", 37.0, 43.0, 45.0, 47.0, 52.0, 55.0], - "HotHysteresis":[0.0, 1.9, 1.9, 1.9, 1.9, 1.9, 1.9], - "Multiplier":0.001, - "SendPowerHint":true, - "PollingDelay":300000, - "PassiveDelay":7000 - }, - { - "Name":"VIRTUAL-SKIN-CPU", - "Type":"UNKNOWN", - "Hidden":true, - "VirtualSensor":true, - "TriggerSensor":"neutral_therm", - "Formula":"MAXIMUM", - "Combination":["VIRTUAL-SKIN"], - "Coefficient":["1.0"], - "HotThreshold":["NAN", 37.0, 39.0, 41.0, 46.5, 52.0, 140.0], - "HotHysteresis":[0.0, 1.9, 1.9, 1.9, 1.9, 1.9, 1.9], - "Multiplier":0.001, - "PollingDelay":300000, - "PassiveDelay":7000, - "PIDInfo": { - "K_Po":["NAN", "NAN", "NAN", 400, "NAN", "NAN", "NAN"], - "K_Pu":["NAN", "NAN", "NAN", 400, "NAN", "NAN", "NAN"], - "K_I":["NAN", "NAN", "NAN", 5, "NAN", "NAN", "NAN"], - "K_D":["NAN", "NAN", "NAN", 0, "NAN", "NAN", "NAN"], - "I_Max":["NAN", "NAN", "NAN", 300, "NAN", "NAN", "NAN"], - "S_Power":["NAN", "NAN", "NAN", 800, "NAN", "NAN", "NAN"], - "MinAllocPower":["NAN", "NAN", "NAN", 800, "NAN", "NAN", "NAN"], - "MaxAllocPower":["NAN", "NAN", "NAN", 10000, "NAN", "NAN", "NAN"], - "I_Cutoff":["NAN", "NAN", "NAN", 2, "NAN", "NAN", "NAN"] - - }, - "BindedCdevInfo": [ - { - "CdevRequest": "thermal-cpufreq-0", - "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1], - "MaxReleaseStep": 1, - "MaxThrottleStep": 1, - "BindedPowerRail": "S4M_VDD_CPUCL0", - "CdevCeiling": [8, 8, 8, 8, 8, 10, 10], - "LimitInfo": [0, 0, 0, 0, 8, 10, 10] - }, - { - "CdevRequest": "thermal-cpufreq-1", - "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1], - "MaxReleaseStep": 1, - "MaxThrottleStep": 1, - "BindedPowerRail": "S3M_VDD_CPUCL1", - "CdevCeiling": [11, 11, 11, 11, 11, 13, 13], - "LimitInfo": [0, 0, 0, 0, 11, 13, 13] - }, - { - "CdevRequest": "thermal-cpufreq-2", - "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1], - "MaxReleaseStep": 1, - "MaxThrottleStep": 1, - "BindedPowerRail": "S2M_VDD_CPUCL2", - "CdevCeiling": [14, 14, 14, 14, 14, 16, 16], - "LimitInfo": [0, 0, 0, 0, 14, 16, 16] - } - ] - }, - { - "Name":"VIRTUAL-SKIN-CPU-GPU", - "Type":"UNKNOWN", - "Hidden":true, - "VirtualSensor":true, - "TriggerSensor":"neutral_therm", - "Formula":"MAXIMUM", - "Combination":["VIRTUAL-SKIN"], - "Coefficient":["1.0"], - "HotThreshold":["NAN", 37.0, 43.0, 45.0, 46.5, 52.0, 140.0], - "HotHysteresis":[0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9], - "Multiplier":0.001, - "PollingDelay":300000, - "PassiveDelay":7000, - "PIDInfo": { - "K_Po":["NAN", "NAN", "NAN", 300, "NAN", "NAN", "NAN"], - "K_Pu":["NAN", "NAN", "NAN", 300, "NAN", "NAN", "NAN"], - "K_I":["NAN", "NAN", "NAN", 5, "NAN", "NAN", "NAN"], - "K_D":["NAN", "NAN", "NAN", 0, "NAN", "NAN", "NAN"], - "I_Max":["NAN", "NAN", "NAN", 700, "NAN", "NAN", "NAN"], - "S_Power":["NAN", "NAN", "NAN", 800, "NAN", "NAN", "NAN"], - "MinAllocPower":["NAN", "NAN", "NAN", 0, "NAN", "NAN", "NAN"], - "MaxAllocPower":["NAN", "NAN", "NAN", 3900, "NAN", "NAN", "NAN"], - "I_Cutoff":["NAN", "NAN", "NAN", 2, "NAN", "NAN", "NAN"] - }, - "BindedCdevInfo": [ - { - "CdevRequest": "thermal-cpufreq-0", - "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1], - "MaxReleaseStep": 1, - "MaxThrottleStep": 1, - "BindedPowerRail": "S4M_VDD_CPUCL0", - "CdevCeiling": [8, 8, 8, 8, 8, 10, 10], - "LimitInfo": [0, 0, 0, 0, 8, 10, 10] - }, - { - "CdevRequest": "thermal-cpufreq-1", - "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1], - "MaxReleaseStep": 1, - "MaxThrottleStep": 1, - "BindedPowerRail": "S3M_VDD_CPUCL1", - "CdevCeiling": [11, 11, 11, 11, 11, 13, 13], - "LimitInfo": [0, 0, 0, 0, 11, 13, 13] - }, - { - "CdevRequest": "thermal-cpufreq-2", - "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1], - "MaxReleaseStep": 1, - "MaxThrottleStep": 1, - "BindedPowerRail": "S2M_VDD_CPUCL2", - "CdevCeiling": [14, 14, 14, 14, 14, 16, 16], - "LimitInfo": [0, 0, 0, 0, 14, 16, 16] - }, - { - "CdevRequest": "thermal-gpufreq-0", - "CdevWeightForPID": [1, 1, 1, 1, 1, 1, 1], - "MaxReleaseStep": 1, - "MaxThrottleStep": 1, - "BindedPowerRail": "S2S_VDD_G3D", - "CdevCeiling": [10, 10, 10, 10, 10, 11, 11], - "LimitInfo": [0, 0, 0, 0, 10, 11, 11] - } - ] - }, - { - "Name":"VIRTUAL-SKIN-CHARGE", - "Type":"UNKNOWN", - "Hidden":true, - "VirtualSensor":true, - "TriggerSensor":"neutral_therm", - "Formula":"MAXIMUM", - "Combination":["VIRTUAL-SKIN"], - "Coefficient":["1.0"], - "HotThreshold":[ - "NAN", - "39.0", - "41.0", - "43.0", - "45.0", - "47.0", - "55.0" - ], - "HotHysteresis":[ - 0.0, - 1.9, - 1.9, - 1.9, - 1.9, - 1.9, - 1.9 - ], - "VrThreshold":"NAN", - "Multiplier":0.001, - "PollingDelay":300000, - "PassiveDelay":7000, - "BindedCdevInfo": [ - { - "CdevRequest": "fcc", - "LimitInfo": [0, 4, 6, 6, 8, 8, 8], - "BindedPowerRail": "POWER_FOR_CHARGING_THROTTLING", - "PowerThreshold": [500, 500, 500, 500, 500, 0, 0], - "CdevFloorWithPowerLink": [0, 0, 3, 6, 6 ,8 ,8], - "ReleaseLogic": "RELEASE_TO_FLOOR", - "ThrottlingWithPowerLink":true - } - ] - }, - { - "Name":"cellular-emergency", - "Type":"POWER_AMPLIFIER", - "VirtualSensor":true, - "TriggerSensor":"neutral_therm", - "Formula":"MAXIMUM", - "Combination":["VIRTUAL-SKIN"], - "Coefficient":["1.0"], - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "54", - "NAN" - ], - "HotHysteresis":[ - "0.0", - "0.0", - "0.0", - "0.0", - "0.0", - "1.9", - "0.0" - ], - "VrThreshold":"NAN", - "Multiplier":0.001, - "Monitor":true, - "PollingDelay":300000, - "PassiveDelay":7000 - }, - { - "Name":"USB2-MINUS-CHG", - "Type":"UNKNOWN", - "Hidden":true, - "VirtualSensor":true, - "Formula":"WEIGHTED_AVG", - "Combination":[ - "usb_pwr_therm2", - "charger_skin_therm" - ], - "Coefficient":[ - "1.0", - "-1.0" - ], - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"VIRTUAL-USB-THROTTLING", - "Type":"USB_PORT", - "Hidden":true, - "VirtualSensor":true, - "Formula":"COUNT_THRESHOLD", - "TriggerSensor":"usb_pwr_therm2", - "Combination":[ - "usb_pwr_therm2", - "USB2-MINUS-CHG" - ], - "Coefficient":[ - "39000", - "7000" - ], - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "2.0", - "NAN", - "NAN" - ], - "BindedCdevInfo":[ - { - "CdevRequest": "usbc-port", - "LimitInfo": [0, 0, 0, 0, 1, 1, 1] - } - ], - "VrThreshold":"NAN", - "Multiplier":1, - "PollingDelay":60000, - "PassiveDelay":7000 - }, - { - "Name":"VIRTUAL-USB-UI", - "Type":"USB_PORT", - "VirtualSensor":true, - "Formula":"COUNT_THRESHOLD", - "TriggerSensor":"usb_pwr_therm2", - "Combination":[ - "usb_pwr_therm2", - "USB2-MINUS-CHG" - ], - "Coefficient":[ - "39000", - "10000" - ], - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "2.0", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":1, - "Monitor":true, - "PollingDelay":60000, - "PassiveDelay":7000 - }, - { - "Name":"battery", - "Type":"BATTERY", - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001, - "Monitor":false - }, - { - "Name":"TPU", - "Type":"NPU", - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - } - ], - "CoolingDevices":[ - { - "Name":"thermal-cpufreq-0", - "Type":"CPU", - "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-0/user_vote", - "PowerRail":"S4M_VDD_CPUCL0" - }, - { - "Name":"thermal-cpufreq-1", - "Type":"CPU", - "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-1/user_vote", - "PowerRail":"S3M_VDD_CPUCL1" - }, - { - "Name":"thermal-cpufreq-2", - "Type":"CPU", - "WritePath":"/dev/thermal/cdev-by-name/thermal-cpufreq-2/user_vote", - "PowerRail":"S2M_VDD_CPUCL2" - }, - { - "Name":"thermal-gpufreq-0", - "Type":"GPU", - "WritePath":"/dev/thermal/cdev-by-name/thermal-gpufreq-0/user_vote", - "PowerRail":"S2S_VDD_G3D" - }, - { - "Name":"tpu_cooling", - "Type":"NPU", - "WritePath":"/dev/thermal/cdev-by-name/tpu_cooling/user_vote" - }, - { - "Name":"fcc", - "Type":"BATTERY" - }, - { - "Name":"usbc-port", - "Type":"BATTERY" - } - ], - "PowerRails":[ - { - "Name":"VSYS_PWR_DISPLAY" - }, - { - "Name":"S2M_VDD_CPUCL2", - "PowerSampleDelay":7000, - "PowerSampleCount":1 - }, - { - "Name":"S3M_VDD_CPUCL1", - "PowerSampleDelay":7000, - "PowerSampleCount":1 - }, - { - "Name":"S4M_VDD_CPUCL0", - "PowerSampleDelay":7000, - "PowerSampleCount":1 - }, - { - "Name":"S2S_VDD_G3D", - "PowerSampleDelay":7000, - "PowerSampleCount":1 - }, - { - "Name":"S5M_VDD_INT" - }, - { - "Name":"S1M_VDD_MIF" - }, - { - "Name":"POWER_FOR_CHARGING_THROTTLING", - "VirtualRails":true, - "Formula":"WEIGHTED_AVG", - "Combination":[ - "VSYS_PWR_DISPLAY", - "S2M_VDD_CPUCL2", - "S3M_VDD_CPUCL1", - "S4M_VDD_CPUCL0", - "S5M_VDD_INT", - "S1M_VDD_MIF", - "S2S_VDD_G3D" - ], - "Coefficient":[ - "1.0", - "1.0", - "1.0", - "1.0", - "1.0", - "1.0", - "1.0" - ], - "PowerSampleDelay":7000, - "PowerSampleCount":1 - } - ], - "Stats": { - "Sensors": { - "RecordWithDefaultThreshold": ["VIRTUAL-SKIN"], - "RecordWithThreshold": [ - { - "Name": "VIRTUAL-SKIN", - "Thresholds": [31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51] - }, - { - "Name": "VIRTUAL-USB-THROTTLING", - "Thresholds": [2.0] - } - ] - }, - "CoolingDevices": { - "RecordVotePerSensor": { - "DefaultThresholdEnableAll": true - } - } - } -} diff --git a/thermal_info_config_charge_bluejay.json b/thermal_info_config_charge_bluejay.json deleted file mode 100644 index f19aa45..0000000 --- a/thermal_info_config_charge_bluejay.json +++ /dev/null @@ -1,406 +0,0 @@ -{ - "Sensors":[ - { - "Name":"neutral_therm", - "Type":"UNKNOWN", - "HotThreshold":[ - "NAN", - "32.0", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "HotHysteresis":[ - 0.0, - 0.9, - 0.0, - 0.0, - 0.0, - 0.0, - 0.0 - ], - "VrThreshold":"NAN", - "Multiplier":0.001, - "PollingDelay":60000, - "PassiveDelay":7000 - }, - { - "Name":"skin_therm1", - "Type":"UNKNOWN", - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"skin_therm2", - "Type":"UNKNOWN", - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"disp_therm", - "Type":"UNKNOWN", - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"gnss_tcxo_therm", - "Type":"UNKNOWN", - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"usb_pwr_therm2", - "Type":"UNKNOWN", - "HotThreshold":[ - "NAN", - "39.0", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "HotHysteresis":[ - "0.0", - "0.9", - "0.0", - "0.0", - "0.0", - "0.0", - "0.0" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"charger_skin_therm", - "Type":"UNKNOWN", - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"quiet_therm", - "Type":"UNKNOWN", - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"VIRTUAL-QUIET-NEUTRAL", - "Type":"UNKNOWN", - "Hidden":true, - "VirtualSensor":true, - "Formula":"WEIGHTED_AVG", - "Combination":[ - "quiet_therm", - "neutral_therm" - ], - "Coefficient":[ - "0.7", - "0.3" - ], - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"VIRTUAL-NEUTRAL-SKIN2", - "Type":"UNKNOWN", - "Hidden":true, - "VirtualSensor":true, - "Formula":"WEIGHTED_AVG", - "Combination":[ - "neutral_therm", - "skin_therm2" - ], - "Coefficient":[ - "0.7", - "0.3" - ], - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"VIRTUAL-NEUTRAL", - "Type":"UNKNOWN", - "Hidden":true, - "VirtualSensor":true, - "Formula":"WEIGHTED_AVG", - "Combination":[ - "neutral_therm", - "skin_therm1", - "disp_therm", - "skin_therm2", - "gnss_tcxo_therm" - ], - "Coefficient":[ - "0.35", - "0.2", - "0.1", - "0.15", - "0.2" - ], - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"VIRTUAL-SKIN-CHARGE", - "Type":"UNKNOWN", - "Hidden":true, - "VirtualSensor":true, - "TriggerSensor":"neutral_therm", - "Formula":"MAXIMUM", - "Combination":[ - "VIRTUAL-NEUTRAL-SKIN2", - "VIRTUAL-NEUTRAL", - "VIRTUAL-QUIET-NEUTRAL" - ], - "Coefficient":[ - "1.0", - "1.0", - "1.0" - ], - "HotThreshold":[ - "NAN", - "39.0", - "41.0", - "43.0", - "45.0", - "47.0", - "55.0" - ], - "HotHysteresis":[ - 0.0, - 1.9, - 1.9, - 1.9, - 1.9, - 1.9, - 1.9 - ], - "VrThreshold":"NAN", - "Multiplier":0.001, - "PollingDelay":300000, - "PassiveDelay":7000, - "BindedCdevInfo": [ - { - "CdevRequest": "fcc", - "LimitInfo": [0, 4, 6, 6, 8, 8, 8], - "BindedPowerRail": "POWER_FOR_CHARGING_THROTTLING", - "PowerThreshold": [500, 500, 500, 500, 500, 0, 0], - "CdevFloorWithPowerLink": [0, 0, 3, 6, 6 ,8 ,8], - "ReleaseLogic": "RELEASE_TO_FLOOR", - "ThrottlingWithPowerLink":true - } - ] - }, - { - "Name":"USB2-MINUS-CHG", - "Type":"UNKNOWN", - "Hidden":true, - "VirtualSensor":true, - "Formula":"WEIGHTED_AVG", - "Combination":[ - "usb_pwr_therm2", - "charger_skin_therm" - ], - "Coefficient":[ - "1.0", - "-1.0" - ], - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN", - "NAN" - ], - "VrThreshold":"NAN", - "Multiplier":0.001 - }, - { - "Name":"VIRTUAL-USB-THROTTLING", - "Type":"USB_PORT", - "Hidden":true, - "VirtualSensor":true, - "Formula":"COUNT_THRESHOLD", - "TriggerSensor":"usb_pwr_therm2", - "Combination":[ - "usb_pwr_therm2", - "USB2-MINUS-CHG" - ], - "Coefficient":[ - "39000", - "7000" - ], - "HotThreshold":[ - "NAN", - "NAN", - "NAN", - "NAN", - "2.0", - "NAN", - "NAN" - ], - "BindedCdevInfo":[ - { - "CdevRequest": "usbc-port", - "LimitInfo": [0, 0, 0, 0, 1, 1, 1] - } - ], - "VrThreshold":"NAN", - "Multiplier":1, - "PollingDelay":60000, - "PassiveDelay":7000 - } - ], - "CoolingDevices":[ - { - "Name":"fcc", - "Type":"BATTERY" - }, - { - "Name":"usbc-port", - "Type":"BATTERY" - } - ], - "PowerRails":[ - { - "Name":"VSYS_PWR_DISPLAY" - }, - { - "Name":"S2M_VDD_CPUCL2", - "PowerSampleDelay":14000, - "PowerSampleCount":5 - }, - { - "Name":"S3M_VDD_CPUCL1", - "PowerSampleDelay":14000, - "PowerSampleCount":5 - }, - { - "Name":"S4M_VDD_CPUCL0", - "PowerSampleDelay":14000, - "PowerSampleCount":5 - }, - { - "Name":"S2S_VDD_G3D", - "PowerSampleDelay":14000, - "PowerSampleCount":5 - }, - { - "Name":"S5M_VDD_INT" - }, - { - "Name":"S1M_VDD_MIF" - }, - { - "Name":"POWER_FOR_CHARGING_THROTTLING", - "VirtualRails":true, - "Formula":"WEIGHTED_AVG", - "Combination":[ - "VSYS_PWR_DISPLAY", - "S2M_VDD_CPUCL2", - "S3M_VDD_CPUCL1", - "S4M_VDD_CPUCL0", - "S5M_VDD_INT", - "S1M_VDD_MIF", - "S2S_VDD_G3D" - ], - "Coefficient":[ - "1.0", - "1.0", - "1.0", - "1.0", - "1.0", - "1.0", - "1.0" - ], - "PowerSampleDelay":14000, - "PowerSampleCount":5 - } - ] -}