Merge "TraceProcessor: Add binary RPC interface"
diff --git a/Android.bp b/Android.bp
index dd7c365..1a7af3d 100644
--- a/Android.bp
+++ b/Android.bp
@@ -46,6 +46,7 @@
"src/trace_processor/metrics/android/java_heap_histogram.sql",
"src/trace_processor/metrics/android/java_heap_stats.sql",
"src/trace_processor/metrics/android/mem_stats_priority_breakdown.sql",
+ "src/trace_processor/metrics/android/power_profile_data.sql",
"src/trace_processor/metrics/android/process_counter_span_view.sql",
"src/trace_processor/metrics/android/process_mem.sql",
"src/trace_processor/metrics/android/process_metadata.sql",
diff --git a/BUILD b/BUILD
index 13ad87a..e37ec91 100644
--- a/BUILD
+++ b/BUILD
@@ -770,6 +770,7 @@
"src/trace_processor/metrics/android/java_heap_histogram.sql",
"src/trace_processor/metrics/android/java_heap_stats.sql",
"src/trace_processor/metrics/android/mem_stats_priority_breakdown.sql",
+ "src/trace_processor/metrics/android/power_profile_data.sql",
"src/trace_processor/metrics/android/process_counter_span_view.sql",
"src/trace_processor/metrics/android/process_mem.sql",
"src/trace_processor/metrics/android/process_metadata.sql",
diff --git a/protos/perfetto/trace/perfetto_trace.proto b/protos/perfetto/trace/perfetto_trace.proto
index eb628d0..c62389f 100644
--- a/protos/perfetto/trace/perfetto_trace.proto
+++ b/protos/perfetto/trace/perfetto_trace.proto
@@ -6600,6 +6600,11 @@
// Begin of protos/perfetto/trace/ps/process_tree.proto
+// Metadata about the processes and threads in the trace.
+// Note: this proto was designed to be filled in by traced_probes and should
+// only be populated with accurate information coming from the system. Other
+// trace writers should prefer to fill ThreadDescriptor and ProcessDescriptor
+// in TrackDescriptor.
message ProcessTree {
// Representation of a thread.
message Thread {
diff --git a/protos/perfetto/trace/ps/process_tree.proto b/protos/perfetto/trace/ps/process_tree.proto
index 446c689..67556a3 100644
--- a/protos/perfetto/trace/ps/process_tree.proto
+++ b/protos/perfetto/trace/ps/process_tree.proto
@@ -17,6 +17,11 @@
syntax = "proto2";
package perfetto.protos;
+// Metadata about the processes and threads in the trace.
+// Note: this proto was designed to be filled in by traced_probes and should
+// only be populated with accurate information coming from the system. Other
+// trace writers should prefer to fill ThreadDescriptor and ProcessDescriptor
+// in TrackDescriptor.
message ProcessTree {
// Representation of a thread.
message Thread {
diff --git a/src/trace_processor/metrics/BUILD.gn b/src/trace_processor/metrics/BUILD.gn
index e03814b..088e4bb 100644
--- a/src/trace_processor/metrics/BUILD.gn
+++ b/src/trace_processor/metrics/BUILD.gn
@@ -43,6 +43,7 @@
"android/android_hwui_metric.sql",
"android/java_heap_histogram.sql",
"android/java_heap_stats.sql",
+ "android/power_profile_data.sql",
"android/process_unagg_mem_view.sql",
"android/process_mem.sql",
"android/process_metadata.sql",
diff --git a/src/trace_processor/metrics/android/android_proxy_power.sql b/src/trace_processor/metrics/android/android_proxy_power.sql
index 991b683..36711e3 100644
--- a/src/trace_processor/metrics/android/android_proxy_power.sql
+++ b/src/trace_processor/metrics/android/android_proxy_power.sql
@@ -40,6 +40,7 @@
-- FROM my_slice_power;
SELECT RUN_METRIC('android/android_cpu_agg.sql');
+SELECT RUN_METRIC('android/power_profile_data.sql');
CREATE VIEW device AS
WITH
diff --git a/src/trace_processor/metrics/android/power_profile_data.sql b/src/trace_processor/metrics/android/power_profile_data.sql
new file mode 100644
index 0000000..a91d0d7
--- /dev/null
+++ b/src/trace_processor/metrics/android/power_profile_data.sql
@@ -0,0 +1,1366 @@
+--
+-- Copyright 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
+--
+-- https://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.
+
+INSERT INTO power_profile VALUES
+("marlin", 0, 0, 307200, 11.272),
+("marlin", 0, 0, 384000, 14.842),
+("marlin", 0, 0, 460800, 18.497),
+("marlin", 0, 0, 537600, 22.518),
+("marlin", 0, 0, 614400, 25.967),
+("marlin", 0, 0, 691200, 31.694),
+("marlin", 0, 0, 768000, 37.673),
+("marlin", 0, 0, 844800, 42.859),
+("marlin", 0, 0, 902600, 46.872),
+("marlin", 0, 0, 979200, 57.92),
+("marlin", 0, 0, 1056000, 67.561),
+("marlin", 0, 0, 1132800, 76.303),
+("marlin", 0, 0, 1209600, 87.613),
+("marlin", 0, 0, 1286400, 97.045),
+("marlin", 0, 0, 1363200, 109.544),
+("marlin", 0, 0, 1440000, 122.054),
+("marlin", 0, 0, 1516800, 136.345),
+("marlin", 0, 0, 1593600, 154.435),
+("marlin", 1, 0, 307200, 11.272),
+("marlin", 1, 0, 384000, 14.842),
+("marlin", 1, 0, 460800, 18.497),
+("marlin", 1, 0, 537600, 22.518),
+("marlin", 1, 0, 614400, 25.967),
+("marlin", 1, 0, 691200, 31.694),
+("marlin", 1, 0, 768000, 37.673),
+("marlin", 1, 0, 844800, 42.859),
+("marlin", 1, 0, 902600, 46.872),
+("marlin", 1, 0, 979200, 57.92),
+("marlin", 1, 0, 1056000, 67.561),
+("marlin", 1, 0, 1132800, 76.303),
+("marlin", 1, 0, 1209600, 87.613),
+("marlin", 1, 0, 1286400, 97.045),
+("marlin", 1, 0, 1363200, 109.544),
+("marlin", 1, 0, 1440000, 122.054),
+("marlin", 1, 0, 1516800, 136.345),
+("marlin", 1, 0, 1593600, 154.435),
+("marlin", 2, 1, 307200, 7.055),
+("marlin", 2, 1, 384000, 11.483),
+("marlin", 2, 1, 460800, 14.979),
+("marlin", 2, 1, 537600, 19.642),
+("marlin", 2, 1, 614400, 23.167),
+("marlin", 2, 1, 691200, 27.479),
+("marlin", 2, 1, 748800, 31.632),
+("marlin", 2, 1, 825600, 39.192),
+("marlin", 2, 1, 902400, 47.817),
+("marlin", 2, 1, 979200, 55.659),
+("marlin", 2, 1, 1056000, 64.908),
+("marlin", 2, 1, 1132800, 73.824),
+("marlin", 2, 1, 1209600, 85.299),
+("marlin", 2, 1, 1286400, 96.036),
+("marlin", 2, 1, 1363200, 109.233),
+("marlin", 2, 1, 1440000, 118.56),
+("marlin", 2, 1, 1516800, 132.959),
+("marlin", 2, 1, 1593600, 143.692),
+("marlin", 2, 1, 1670400, 161.378),
+("marlin", 2, 1, 1747200, 180.616),
+("marlin", 2, 1, 1824000, 193.897),
+("marlin", 2, 1, 1900800, 214.361),
+("marlin", 2, 1, 1977600, 238.338),
+("marlin", 2, 1, 2054400, 265.759),
+("marlin", 2, 1, 2150400, 297.918),
+("marlin", 3, 1, 307200, 7.055),
+("marlin", 3, 1, 384000, 11.483),
+("marlin", 3, 1, 460800, 14.979),
+("marlin", 3, 1, 537600, 19.642),
+("marlin", 3, 1, 614400, 23.167),
+("marlin", 3, 1, 691200, 27.479),
+("marlin", 3, 1, 748800, 31.632),
+("marlin", 3, 1, 825600, 39.192),
+("marlin", 3, 1, 902400, 47.817),
+("marlin", 3, 1, 979200, 55.659),
+("marlin", 3, 1, 1056000, 64.908),
+("marlin", 3, 1, 1132800, 73.824),
+("marlin", 3, 1, 1209600, 85.299),
+("marlin", 3, 1, 1286400, 96.036),
+("marlin", 3, 1, 1363200, 109.233),
+("marlin", 3, 1, 1440000, 118.56),
+("marlin", 3, 1, 1516800, 132.959),
+("marlin", 3, 1, 1593600, 143.692),
+("marlin", 3, 1, 1670400, 161.378),
+("marlin", 3, 1, 1747200, 180.616),
+("marlin", 3, 1, 1824000, 193.897),
+("marlin", 3, 1, 1900800, 214.361),
+("marlin", 3, 1, 1977600, 238.338),
+("marlin", 3, 1, 2054400, 265.759),
+("marlin", 3, 1, 2150400, 297.918),
+("sailfish", 0, 0, 307200, 11.272),
+("sailfish", 0, 0, 384000, 14.842),
+("sailfish", 0, 0, 460800, 18.497),
+("sailfish", 0, 0, 537600, 22.518),
+("sailfish", 0, 0, 614400, 25.967),
+("sailfish", 0, 0, 691200, 31.694),
+("sailfish", 0, 0, 768000, 37.673),
+("sailfish", 0, 0, 844800, 42.859),
+("sailfish", 0, 0, 902600, 46.872),
+("sailfish", 0, 0, 979200, 57.92),
+("sailfish", 0, 0, 1056000, 67.561),
+("sailfish", 0, 0, 1132800, 76.303),
+("sailfish", 0, 0, 1209600, 87.613),
+("sailfish", 0, 0, 1286400, 97.045),
+("sailfish", 0, 0, 1363200, 109.544),
+("sailfish", 0, 0, 1440000, 122.054),
+("sailfish", 0, 0, 1516800, 136.345),
+("sailfish", 0, 0, 1593600, 154.435),
+("sailfish", 1, 0, 307200, 11.272),
+("sailfish", 1, 0, 384000, 14.842),
+("sailfish", 1, 0, 460800, 18.497),
+("sailfish", 1, 0, 537600, 22.518),
+("sailfish", 1, 0, 614400, 25.967),
+("sailfish", 1, 0, 691200, 31.694),
+("sailfish", 1, 0, 768000, 37.673),
+("sailfish", 1, 0, 844800, 42.859),
+("sailfish", 1, 0, 902600, 46.872),
+("sailfish", 1, 0, 979200, 57.92),
+("sailfish", 1, 0, 1056000, 67.561),
+("sailfish", 1, 0, 1132800, 76.303),
+("sailfish", 1, 0, 1209600, 87.613),
+("sailfish", 1, 0, 1286400, 97.045),
+("sailfish", 1, 0, 1363200, 109.544),
+("sailfish", 1, 0, 1440000, 122.054),
+("sailfish", 1, 0, 1516800, 136.345),
+("sailfish", 1, 0, 1593600, 154.435),
+("sailfish", 2, 1, 307200, 7.055),
+("sailfish", 2, 1, 384000, 11.483),
+("sailfish", 2, 1, 460800, 14.979),
+("sailfish", 2, 1, 537600, 19.642),
+("sailfish", 2, 1, 614400, 23.167),
+("sailfish", 2, 1, 691200, 27.479),
+("sailfish", 2, 1, 748800, 31.632),
+("sailfish", 2, 1, 825600, 39.192),
+("sailfish", 2, 1, 902400, 47.817),
+("sailfish", 2, 1, 979200, 55.659),
+("sailfish", 2, 1, 1056000, 64.908),
+("sailfish", 2, 1, 1132800, 73.824),
+("sailfish", 2, 1, 1209600, 85.299),
+("sailfish", 2, 1, 1286400, 96.036),
+("sailfish", 2, 1, 1363200, 109.233),
+("sailfish", 2, 1, 1440000, 118.56),
+("sailfish", 2, 1, 1516800, 132.959),
+("sailfish", 2, 1, 1593600, 143.692),
+("sailfish", 2, 1, 1670400, 161.378),
+("sailfish", 2, 1, 1747200, 180.616),
+("sailfish", 2, 1, 1824000, 193.897),
+("sailfish", 2, 1, 1900800, 214.361),
+("sailfish", 2, 1, 1977600, 238.338),
+("sailfish", 2, 1, 2054400, 265.759),
+("sailfish", 2, 1, 2150400, 297.918),
+("sailfish", 3, 1, 307200, 7.055),
+("sailfish", 3, 1, 384000, 11.483),
+("sailfish", 3, 1, 460800, 14.979),
+("sailfish", 3, 1, 537600, 19.642),
+("sailfish", 3, 1, 614400, 23.167),
+("sailfish", 3, 1, 691200, 27.479),
+("sailfish", 3, 1, 748800, 31.632),
+("sailfish", 3, 1, 825600, 39.192),
+("sailfish", 3, 1, 902400, 47.817),
+("sailfish", 3, 1, 979200, 55.659),
+("sailfish", 3, 1, 1056000, 64.908),
+("sailfish", 3, 1, 1132800, 73.824),
+("sailfish", 3, 1, 1209600, 85.299),
+("sailfish", 3, 1, 1286400, 96.036),
+("sailfish", 3, 1, 1363200, 109.233),
+("sailfish", 3, 1, 1440000, 118.56),
+("sailfish", 3, 1, 1516800, 132.959),
+("sailfish", 3, 1, 1593600, 143.692),
+("sailfish", 3, 1, 1670400, 161.378),
+("sailfish", 3, 1, 1747200, 180.616),
+("sailfish", 3, 1, 1824000, 193.897),
+("sailfish", 3, 1, 1900800, 214.361),
+("sailfish", 3, 1, 1977600, 238.338),
+("sailfish", 3, 1, 2054400, 265.759),
+("sailfish", 3, 1, 2150400, 297.918),
+("walleye", 0, 0, 300000, 3.685),
+("walleye", 0, 0, 364800, 3.598),
+("walleye", 0, 0, 441600, 3.621),
+("walleye", 0, 0, 518400, 4.202),
+("walleye", 0, 0, 595200, 4.935),
+("walleye", 0, 0, 672000, 5.633),
+("walleye", 0, 0, 748800, 6.216),
+("walleye", 0, 0, 825600, 6.71),
+("walleye", 0, 0, 883200, 7.557),
+("walleye", 0, 0, 960000, 8.687),
+("walleye", 0, 0, 1036800, 9.882),
+("walleye", 0, 0, 1094400, 10.95),
+("walleye", 0, 0, 1171200, 12.075),
+("walleye", 0, 0, 1248000, 12.875),
+("walleye", 0, 0, 1324800, 14.424),
+("walleye", 0, 0, 1401600, 15.653),
+("walleye", 0, 0, 1478400, 17.345),
+("walleye", 0, 0, 1555200, 18.71),
+("walleye", 0, 0, 1670400, 21.587),
+("walleye", 0, 0, 1747200, 25.43),
+("walleye", 0, 0, 1824000, 27.165),
+("walleye", 0, 0, 1900800, 31.671),
+("walleye", 1, 0, 300000, 3.685),
+("walleye", 1, 0, 364800, 3.598),
+("walleye", 1, 0, 441600, 3.621),
+("walleye", 1, 0, 518400, 4.202),
+("walleye", 1, 0, 595200, 4.935),
+("walleye", 1, 0, 672000, 5.633),
+("walleye", 1, 0, 748800, 6.216),
+("walleye", 1, 0, 825600, 6.71),
+("walleye", 1, 0, 883200, 7.557),
+("walleye", 1, 0, 960000, 8.687),
+("walleye", 1, 0, 1036800, 9.882),
+("walleye", 1, 0, 1094400, 10.95),
+("walleye", 1, 0, 1171200, 12.075),
+("walleye", 1, 0, 1248000, 12.875),
+("walleye", 1, 0, 1324800, 14.424),
+("walleye", 1, 0, 1401600, 15.653),
+("walleye", 1, 0, 1478400, 17.345),
+("walleye", 1, 0, 1555200, 18.71),
+("walleye", 1, 0, 1670400, 21.587),
+("walleye", 1, 0, 1747200, 25.43),
+("walleye", 1, 0, 1824000, 27.165),
+("walleye", 1, 0, 1900800, 31.671),
+("walleye", 2, 0, 300000, 3.685),
+("walleye", 2, 0, 364800, 3.598),
+("walleye", 2, 0, 441600, 3.621),
+("walleye", 2, 0, 518400, 4.202),
+("walleye", 2, 0, 595200, 4.935),
+("walleye", 2, 0, 672000, 5.633),
+("walleye", 2, 0, 748800, 6.216),
+("walleye", 2, 0, 825600, 6.71),
+("walleye", 2, 0, 883200, 7.557),
+("walleye", 2, 0, 960000, 8.687),
+("walleye", 2, 0, 1036800, 9.882),
+("walleye", 2, 0, 1094400, 10.95),
+("walleye", 2, 0, 1171200, 12.075),
+("walleye", 2, 0, 1248000, 12.875),
+("walleye", 2, 0, 1324800, 14.424),
+("walleye", 2, 0, 1401600, 15.653),
+("walleye", 2, 0, 1478400, 17.345),
+("walleye", 2, 0, 1555200, 18.71),
+("walleye", 2, 0, 1670400, 21.587),
+("walleye", 2, 0, 1747200, 25.43),
+("walleye", 2, 0, 1824000, 27.165),
+("walleye", 2, 0, 1900800, 31.671),
+("walleye", 3, 0, 300000, 3.685),
+("walleye", 3, 0, 364800, 3.598),
+("walleye", 3, 0, 441600, 3.621),
+("walleye", 3, 0, 518400, 4.202),
+("walleye", 3, 0, 595200, 4.935),
+("walleye", 3, 0, 672000, 5.633),
+("walleye", 3, 0, 748800, 6.216),
+("walleye", 3, 0, 825600, 6.71),
+("walleye", 3, 0, 883200, 7.557),
+("walleye", 3, 0, 960000, 8.687),
+("walleye", 3, 0, 1036800, 9.882),
+("walleye", 3, 0, 1094400, 10.95),
+("walleye", 3, 0, 1171200, 12.075),
+("walleye", 3, 0, 1248000, 12.875),
+("walleye", 3, 0, 1324800, 14.424),
+("walleye", 3, 0, 1401600, 15.653),
+("walleye", 3, 0, 1478400, 17.345),
+("walleye", 3, 0, 1555200, 18.71),
+("walleye", 3, 0, 1670400, 21.587),
+("walleye", 3, 0, 1747200, 25.43),
+("walleye", 3, 0, 1824000, 27.165),
+("walleye", 3, 0, 1900800, 31.671),
+("walleye", 4, 1, 300000, 10.722),
+("walleye", 4, 1, 345600, 11.52),
+("walleye", 4, 1, 422400, 14.105),
+("walleye", 4, 1, 499200, 16.68),
+("walleye", 4, 1, 576000, 18.946),
+("walleye", 4, 1, 652800, 21.265),
+("walleye", 4, 1, 729600, 23.432),
+("walleye", 4, 1, 806400, 26.019),
+("walleye", 4, 1, 902400, 28.856),
+("walleye", 4, 1, 979200, 31.085),
+("walleye", 4, 1, 1056000, 33.615),
+("walleye", 4, 1, 1132800, 35.76),
+("walleye", 4, 1, 1190400, 40.608),
+("walleye", 4, 1, 1267200, 43.284),
+("walleye", 4, 1, 1344000, 47.347),
+("walleye", 4, 1, 1420800, 52.231),
+("walleye", 4, 1, 1497600, 57.225),
+("walleye", 4, 1, 1574400, 63.138),
+("walleye", 4, 1, 1651200, 69.251),
+("walleye", 4, 1, 1728000, 76.449),
+("walleye", 4, 1, 1804800, 84.71),
+("walleye", 4, 1, 1881600, 102.551),
+("walleye", 4, 1, 1958400, 107.115),
+("walleye", 4, 1, 2035200, 129.689),
+("walleye", 4, 1, 2112000, 135.832),
+("walleye", 4, 1, 2208000, 164.674),
+("walleye", 4, 1, 2265600, 180.279),
+("walleye", 4, 1, 2323200, 197.024),
+("walleye", 4, 1, 2342400, 204.511),
+("walleye", 4, 1, 2361600, 211.886),
+("walleye", 4, 1, 2457600, 212.147),
+("walleye", 5, 1, 300000, 10.722),
+("walleye", 5, 1, 345600, 11.52),
+("walleye", 5, 1, 422400, 14.105),
+("walleye", 5, 1, 499200, 16.68),
+("walleye", 5, 1, 576000, 18.946),
+("walleye", 5, 1, 652800, 21.265),
+("walleye", 5, 1, 729600, 23.432),
+("walleye", 5, 1, 806400, 26.019),
+("walleye", 5, 1, 902400, 28.856),
+("walleye", 5, 1, 979200, 31.085),
+("walleye", 5, 1, 1056000, 33.615),
+("walleye", 5, 1, 1132800, 35.76),
+("walleye", 5, 1, 1190400, 40.608),
+("walleye", 5, 1, 1267200, 43.284),
+("walleye", 5, 1, 1344000, 47.347),
+("walleye", 5, 1, 1420800, 52.231),
+("walleye", 5, 1, 1497600, 57.225),
+("walleye", 5, 1, 1574400, 63.138),
+("walleye", 5, 1, 1651200, 69.251),
+("walleye", 5, 1, 1728000, 76.449),
+("walleye", 5, 1, 1804800, 84.71),
+("walleye", 5, 1, 1881600, 102.551),
+("walleye", 5, 1, 1958400, 107.115),
+("walleye", 5, 1, 2035200, 129.689),
+("walleye", 5, 1, 2112000, 135.832),
+("walleye", 5, 1, 2208000, 164.674),
+("walleye", 5, 1, 2265600, 180.279),
+("walleye", 5, 1, 2323200, 197.024),
+("walleye", 5, 1, 2342400, 204.511),
+("walleye", 5, 1, 2361600, 211.886),
+("walleye", 5, 1, 2457600, 212.147),
+("walleye", 6, 1, 300000, 10.722),
+("walleye", 6, 1, 345600, 11.52),
+("walleye", 6, 1, 422400, 14.105),
+("walleye", 6, 1, 499200, 16.68),
+("walleye", 6, 1, 576000, 18.946),
+("walleye", 6, 1, 652800, 21.265),
+("walleye", 6, 1, 729600, 23.432),
+("walleye", 6, 1, 806400, 26.019),
+("walleye", 6, 1, 902400, 28.856),
+("walleye", 6, 1, 979200, 31.085),
+("walleye", 6, 1, 1056000, 33.615),
+("walleye", 6, 1, 1132800, 35.76),
+("walleye", 6, 1, 1190400, 40.608),
+("walleye", 6, 1, 1267200, 43.284),
+("walleye", 6, 1, 1344000, 47.347),
+("walleye", 6, 1, 1420800, 52.231),
+("walleye", 6, 1, 1497600, 57.225),
+("walleye", 6, 1, 1574400, 63.138),
+("walleye", 6, 1, 1651200, 69.251),
+("walleye", 6, 1, 1728000, 76.449),
+("walleye", 6, 1, 1804800, 84.71),
+("walleye", 6, 1, 1881600, 102.551),
+("walleye", 6, 1, 1958400, 107.115),
+("walleye", 6, 1, 2035200, 129.689),
+("walleye", 6, 1, 2112000, 135.832),
+("walleye", 6, 1, 2208000, 164.674),
+("walleye", 6, 1, 2265600, 180.279),
+("walleye", 6, 1, 2323200, 197.024),
+("walleye", 6, 1, 2342400, 204.511),
+("walleye", 6, 1, 2361600, 211.886),
+("walleye", 6, 1, 2457600, 212.147),
+("walleye", 7, 1, 300000, 10.722),
+("walleye", 7, 1, 345600, 11.52),
+("walleye", 7, 1, 422400, 14.105),
+("walleye", 7, 1, 499200, 16.68),
+("walleye", 7, 1, 576000, 18.946),
+("walleye", 7, 1, 652800, 21.265),
+("walleye", 7, 1, 729600, 23.432),
+("walleye", 7, 1, 806400, 26.019),
+("walleye", 7, 1, 902400, 28.856),
+("walleye", 7, 1, 979200, 31.085),
+("walleye", 7, 1, 1056000, 33.615),
+("walleye", 7, 1, 1132800, 35.76),
+("walleye", 7, 1, 1190400, 40.608),
+("walleye", 7, 1, 1267200, 43.284),
+("walleye", 7, 1, 1344000, 47.347),
+("walleye", 7, 1, 1420800, 52.231),
+("walleye", 7, 1, 1497600, 57.225),
+("walleye", 7, 1, 1574400, 63.138),
+("walleye", 7, 1, 1651200, 69.251),
+("walleye", 7, 1, 1728000, 76.449),
+("walleye", 7, 1, 1804800, 84.71),
+("walleye", 7, 1, 1881600, 102.551),
+("walleye", 7, 1, 1958400, 107.115),
+("walleye", 7, 1, 2035200, 129.689),
+("walleye", 7, 1, 2112000, 135.832),
+("walleye", 7, 1, 2208000, 164.674),
+("walleye", 7, 1, 2265600, 180.279),
+("walleye", 7, 1, 2323200, 197.024),
+("walleye", 7, 1, 2342400, 204.511),
+("walleye", 7, 1, 2361600, 211.886),
+("walleye", 7, 1, 2457600, 212.147),
+("taimen", 0, 0, 300000, 3.685),
+("taimen", 0, 0, 364800, 3.598),
+("taimen", 0, 0, 441600, 3.621),
+("taimen", 0, 0, 518400, 4.202),
+("taimen", 0, 0, 595200, 4.935),
+("taimen", 0, 0, 672000, 5.633),
+("taimen", 0, 0, 748800, 6.216),
+("taimen", 0, 0, 825600, 6.71),
+("taimen", 0, 0, 883200, 7.557),
+("taimen", 0, 0, 960000, 8.687),
+("taimen", 0, 0, 1036800, 9.882),
+("taimen", 0, 0, 1094400, 10.95),
+("taimen", 0, 0, 1171200, 12.075),
+("taimen", 0, 0, 1248000, 12.875),
+("taimen", 0, 0, 1324800, 14.424),
+("taimen", 0, 0, 1401600, 15.653),
+("taimen", 0, 0, 1478400, 17.345),
+("taimen", 0, 0, 1555200, 18.71),
+("taimen", 0, 0, 1670400, 21.587),
+("taimen", 0, 0, 1747200, 25.43),
+("taimen", 0, 0, 1824000, 27.165),
+("taimen", 0, 0, 1900800, 31.671),
+("taimen", 1, 0, 300000, 3.685),
+("taimen", 1, 0, 364800, 3.598),
+("taimen", 1, 0, 441600, 3.621),
+("taimen", 1, 0, 518400, 4.202),
+("taimen", 1, 0, 595200, 4.935),
+("taimen", 1, 0, 672000, 5.633),
+("taimen", 1, 0, 748800, 6.216),
+("taimen", 1, 0, 825600, 6.71),
+("taimen", 1, 0, 883200, 7.557),
+("taimen", 1, 0, 960000, 8.687),
+("taimen", 1, 0, 1036800, 9.882),
+("taimen", 1, 0, 1094400, 10.95),
+("taimen", 1, 0, 1171200, 12.075),
+("taimen", 1, 0, 1248000, 12.875),
+("taimen", 1, 0, 1324800, 14.424),
+("taimen", 1, 0, 1401600, 15.653),
+("taimen", 1, 0, 1478400, 17.345),
+("taimen", 1, 0, 1555200, 18.71),
+("taimen", 1, 0, 1670400, 21.587),
+("taimen", 1, 0, 1747200, 25.43),
+("taimen", 1, 0, 1824000, 27.165),
+("taimen", 1, 0, 1900800, 31.671),
+("taimen", 2, 0, 300000, 3.685),
+("taimen", 2, 0, 364800, 3.598),
+("taimen", 2, 0, 441600, 3.621),
+("taimen", 2, 0, 518400, 4.202),
+("taimen", 2, 0, 595200, 4.935),
+("taimen", 2, 0, 672000, 5.633),
+("taimen", 2, 0, 748800, 6.216),
+("taimen", 2, 0, 825600, 6.71),
+("taimen", 2, 0, 883200, 7.557),
+("taimen", 2, 0, 960000, 8.687),
+("taimen", 2, 0, 1036800, 9.882),
+("taimen", 2, 0, 1094400, 10.95),
+("taimen", 2, 0, 1171200, 12.075),
+("taimen", 2, 0, 1248000, 12.875),
+("taimen", 2, 0, 1324800, 14.424),
+("taimen", 2, 0, 1401600, 15.653),
+("taimen", 2, 0, 1478400, 17.345),
+("taimen", 2, 0, 1555200, 18.71),
+("taimen", 2, 0, 1670400, 21.587),
+("taimen", 2, 0, 1747200, 25.43),
+("taimen", 2, 0, 1824000, 27.165),
+("taimen", 2, 0, 1900800, 31.671),
+("taimen", 3, 0, 300000, 3.685),
+("taimen", 3, 0, 364800, 3.598),
+("taimen", 3, 0, 441600, 3.621),
+("taimen", 3, 0, 518400, 4.202),
+("taimen", 3, 0, 595200, 4.935),
+("taimen", 3, 0, 672000, 5.633),
+("taimen", 3, 0, 748800, 6.216),
+("taimen", 3, 0, 825600, 6.71),
+("taimen", 3, 0, 883200, 7.557),
+("taimen", 3, 0, 960000, 8.687),
+("taimen", 3, 0, 1036800, 9.882),
+("taimen", 3, 0, 1094400, 10.95),
+("taimen", 3, 0, 1171200, 12.075),
+("taimen", 3, 0, 1248000, 12.875),
+("taimen", 3, 0, 1324800, 14.424),
+("taimen", 3, 0, 1401600, 15.653),
+("taimen", 3, 0, 1478400, 17.345),
+("taimen", 3, 0, 1555200, 18.71),
+("taimen", 3, 0, 1670400, 21.587),
+("taimen", 3, 0, 1747200, 25.43),
+("taimen", 3, 0, 1824000, 27.165),
+("taimen", 3, 0, 1900800, 31.671),
+("taimen", 4, 1, 300000, 10.722),
+("taimen", 4, 1, 345600, 11.52),
+("taimen", 4, 1, 422400, 14.105),
+("taimen", 4, 1, 499200, 16.68),
+("taimen", 4, 1, 576000, 18.946),
+("taimen", 4, 1, 652800, 21.265),
+("taimen", 4, 1, 729600, 23.432),
+("taimen", 4, 1, 806400, 26.019),
+("taimen", 4, 1, 902400, 28.856),
+("taimen", 4, 1, 979200, 31.085),
+("taimen", 4, 1, 1056000, 33.615),
+("taimen", 4, 1, 1132800, 35.76),
+("taimen", 4, 1, 1190400, 40.608),
+("taimen", 4, 1, 1267200, 43.284),
+("taimen", 4, 1, 1344000, 47.347),
+("taimen", 4, 1, 1420800, 52.231),
+("taimen", 4, 1, 1497600, 57.225),
+("taimen", 4, 1, 1574400, 63.138),
+("taimen", 4, 1, 1651200, 69.251),
+("taimen", 4, 1, 1728000, 76.449),
+("taimen", 4, 1, 1804800, 84.71),
+("taimen", 4, 1, 1881600, 102.551),
+("taimen", 4, 1, 1958400, 107.115),
+("taimen", 4, 1, 2035200, 129.689),
+("taimen", 4, 1, 2112000, 135.832),
+("taimen", 4, 1, 2208000, 164.674),
+("taimen", 4, 1, 2265600, 180.279),
+("taimen", 4, 1, 2323200, 197.024),
+("taimen", 4, 1, 2342400, 204.511),
+("taimen", 4, 1, 2361600, 211.886),
+("taimen", 4, 1, 2457600, 212.147),
+("taimen", 5, 1, 300000, 10.722),
+("taimen", 5, 1, 345600, 11.52),
+("taimen", 5, 1, 422400, 14.105),
+("taimen", 5, 1, 499200, 16.68),
+("taimen", 5, 1, 576000, 18.946),
+("taimen", 5, 1, 652800, 21.265),
+("taimen", 5, 1, 729600, 23.432),
+("taimen", 5, 1, 806400, 26.019),
+("taimen", 5, 1, 902400, 28.856),
+("taimen", 5, 1, 979200, 31.085),
+("taimen", 5, 1, 1056000, 33.615),
+("taimen", 5, 1, 1132800, 35.76),
+("taimen", 5, 1, 1190400, 40.608),
+("taimen", 5, 1, 1267200, 43.284),
+("taimen", 5, 1, 1344000, 47.347),
+("taimen", 5, 1, 1420800, 52.231),
+("taimen", 5, 1, 1497600, 57.225),
+("taimen", 5, 1, 1574400, 63.138),
+("taimen", 5, 1, 1651200, 69.251),
+("taimen", 5, 1, 1728000, 76.449),
+("taimen", 5, 1, 1804800, 84.71),
+("taimen", 5, 1, 1881600, 102.551),
+("taimen", 5, 1, 1958400, 107.115),
+("taimen", 5, 1, 2035200, 129.689),
+("taimen", 5, 1, 2112000, 135.832),
+("taimen", 5, 1, 2208000, 164.674),
+("taimen", 5, 1, 2265600, 180.279),
+("taimen", 5, 1, 2323200, 197.024),
+("taimen", 5, 1, 2342400, 204.511),
+("taimen", 5, 1, 2361600, 211.886),
+("taimen", 5, 1, 2457600, 212.147),
+("taimen", 6, 1, 300000, 10.722),
+("taimen", 6, 1, 345600, 11.52),
+("taimen", 6, 1, 422400, 14.105),
+("taimen", 6, 1, 499200, 16.68),
+("taimen", 6, 1, 576000, 18.946),
+("taimen", 6, 1, 652800, 21.265),
+("taimen", 6, 1, 729600, 23.432),
+("taimen", 6, 1, 806400, 26.019),
+("taimen", 6, 1, 902400, 28.856),
+("taimen", 6, 1, 979200, 31.085),
+("taimen", 6, 1, 1056000, 33.615),
+("taimen", 6, 1, 1132800, 35.76),
+("taimen", 6, 1, 1190400, 40.608),
+("taimen", 6, 1, 1267200, 43.284),
+("taimen", 6, 1, 1344000, 47.347),
+("taimen", 6, 1, 1420800, 52.231),
+("taimen", 6, 1, 1497600, 57.225),
+("taimen", 6, 1, 1574400, 63.138),
+("taimen", 6, 1, 1651200, 69.251),
+("taimen", 6, 1, 1728000, 76.449),
+("taimen", 6, 1, 1804800, 84.71),
+("taimen", 6, 1, 1881600, 102.551),
+("taimen", 6, 1, 1958400, 107.115),
+("taimen", 6, 1, 2035200, 129.689),
+("taimen", 6, 1, 2112000, 135.832),
+("taimen", 6, 1, 2208000, 164.674),
+("taimen", 6, 1, 2265600, 180.279),
+("taimen", 6, 1, 2323200, 197.024),
+("taimen", 6, 1, 2342400, 204.511),
+("taimen", 6, 1, 2361600, 211.886),
+("taimen", 6, 1, 2457600, 212.147),
+("taimen", 7, 1, 300000, 10.722),
+("taimen", 7, 1, 345600, 11.52),
+("taimen", 7, 1, 422400, 14.105),
+("taimen", 7, 1, 499200, 16.68),
+("taimen", 7, 1, 576000, 18.946),
+("taimen", 7, 1, 652800, 21.265),
+("taimen", 7, 1, 729600, 23.432),
+("taimen", 7, 1, 806400, 26.019),
+("taimen", 7, 1, 902400, 28.856),
+("taimen", 7, 1, 979200, 31.085),
+("taimen", 7, 1, 1056000, 33.615),
+("taimen", 7, 1, 1132800, 35.76),
+("taimen", 7, 1, 1190400, 40.608),
+("taimen", 7, 1, 1267200, 43.284),
+("taimen", 7, 1, 1344000, 47.347),
+("taimen", 7, 1, 1420800, 52.231),
+("taimen", 7, 1, 1497600, 57.225),
+("taimen", 7, 1, 1574400, 63.138),
+("taimen", 7, 1, 1651200, 69.251),
+("taimen", 7, 1, 1728000, 76.449),
+("taimen", 7, 1, 1804800, 84.71),
+("taimen", 7, 1, 1881600, 102.551),
+("taimen", 7, 1, 1958400, 107.115),
+("taimen", 7, 1, 2035200, 129.689),
+("taimen", 7, 1, 2112000, 135.832),
+("taimen", 7, 1, 2208000, 164.674),
+("taimen", 7, 1, 2265600, 180.279),
+("taimen", 7, 1, 2323200, 197.024),
+("taimen", 7, 1, 2342400, 204.511),
+("taimen", 7, 1, 2361600, 211.886),
+("taimen", 7, 1, 2457600, 212.147),
+("crosshatch", 0, 0, 300000, 2.27),
+("crosshatch", 0, 0, 403200, 3.63),
+("crosshatch", 0, 0, 480000, 4.36),
+("crosshatch", 0, 0, 576000, 5.21),
+("crosshatch", 0, 0, 652800, 5.47),
+("crosshatch", 0, 0, 748800, 6.74),
+("crosshatch", 0, 0, 825600, 7.69),
+("crosshatch", 0, 0, 902400, 8.57),
+("crosshatch", 0, 0, 979200, 9.42),
+("crosshatch", 0, 0, 1056000, 10.41),
+("crosshatch", 0, 0, 1132800, 11.56),
+("crosshatch", 0, 0, 1228800, 12.87),
+("crosshatch", 0, 0, 1324800, 14.61),
+("crosshatch", 0, 0, 1420800, 16.49),
+("crosshatch", 0, 0, 1516800, 18.9),
+("crosshatch", 0, 0, 1612800, 21.62),
+("crosshatch", 0, 0, 1689600, 24.47),
+("crosshatch", 0, 0, 1766400, 26.45),
+("crosshatch", 1, 0, 300000, 2.27),
+("crosshatch", 1, 0, 403200, 3.63),
+("crosshatch", 1, 0, 480000, 4.36),
+("crosshatch", 1, 0, 576000, 5.21),
+("crosshatch", 1, 0, 652800, 5.47),
+("crosshatch", 1, 0, 748800, 6.74),
+("crosshatch", 1, 0, 825600, 7.69),
+("crosshatch", 1, 0, 902400, 8.57),
+("crosshatch", 1, 0, 979200, 9.42),
+("crosshatch", 1, 0, 1056000, 10.41),
+("crosshatch", 1, 0, 1132800, 11.56),
+("crosshatch", 1, 0, 1228800, 12.87),
+("crosshatch", 1, 0, 1324800, 14.61),
+("crosshatch", 1, 0, 1420800, 16.49),
+("crosshatch", 1, 0, 1516800, 18.9),
+("crosshatch", 1, 0, 1612800, 21.62),
+("crosshatch", 1, 0, 1689600, 24.47),
+("crosshatch", 1, 0, 1766400, 26.45),
+("crosshatch", 2, 0, 300000, 2.27),
+("crosshatch", 2, 0, 403200, 3.63),
+("crosshatch", 2, 0, 480000, 4.36),
+("crosshatch", 2, 0, 576000, 5.21),
+("crosshatch", 2, 0, 652800, 5.47),
+("crosshatch", 2, 0, 748800, 6.74),
+("crosshatch", 2, 0, 825600, 7.69),
+("crosshatch", 2, 0, 902400, 8.57),
+("crosshatch", 2, 0, 979200, 9.42),
+("crosshatch", 2, 0, 1056000, 10.41),
+("crosshatch", 2, 0, 1132800, 11.56),
+("crosshatch", 2, 0, 1228800, 12.87),
+("crosshatch", 2, 0, 1324800, 14.61),
+("crosshatch", 2, 0, 1420800, 16.49),
+("crosshatch", 2, 0, 1516800, 18.9),
+("crosshatch", 2, 0, 1612800, 21.62),
+("crosshatch", 2, 0, 1689600, 24.47),
+("crosshatch", 2, 0, 1766400, 26.45),
+("crosshatch", 3, 0, 300000, 2.27),
+("crosshatch", 3, 0, 403200, 3.63),
+("crosshatch", 3, 0, 480000, 4.36),
+("crosshatch", 3, 0, 576000, 5.21),
+("crosshatch", 3, 0, 652800, 5.47),
+("crosshatch", 3, 0, 748800, 6.74),
+("crosshatch", 3, 0, 825600, 7.69),
+("crosshatch", 3, 0, 902400, 8.57),
+("crosshatch", 3, 0, 979200, 9.42),
+("crosshatch", 3, 0, 1056000, 10.41),
+("crosshatch", 3, 0, 1132800, 11.56),
+("crosshatch", 3, 0, 1228800, 12.87),
+("crosshatch", 3, 0, 1324800, 14.61),
+("crosshatch", 3, 0, 1420800, 16.49),
+("crosshatch", 3, 0, 1516800, 18.9),
+("crosshatch", 3, 0, 1612800, 21.62),
+("crosshatch", 3, 0, 1689600, 24.47),
+("crosshatch", 3, 0, 1766400, 26.45),
+("crosshatch", 4, 1, 825600, 28.88),
+("crosshatch", 4, 1, 902400, 32.4),
+("crosshatch", 4, 1, 979200, 36.46),
+("crosshatch", 4, 1, 1056000, 39.99),
+("crosshatch", 4, 1, 1209600, 47.23),
+("crosshatch", 4, 1, 1286400, 51.39),
+("crosshatch", 4, 1, 1363200, 56.9),
+("crosshatch", 4, 1, 1459200, 64.26),
+("crosshatch", 4, 1, 1536000, 69.65),
+("crosshatch", 4, 1, 1612800, 75.14),
+("crosshatch", 4, 1, 1689600, 83.16),
+("crosshatch", 4, 1, 1766400, 91.75),
+("crosshatch", 4, 1, 1843200, 100.66),
+("crosshatch", 4, 1, 1920000, 111.45),
+("crosshatch", 4, 1, 1996800, 122.23),
+("crosshatch", 4, 1, 2092800, 143.54),
+("crosshatch", 4, 1, 2169600, 147.54),
+("crosshatch", 4, 1, 2246400, 153.09),
+("crosshatch", 4, 1, 2323200, 166.44),
+("crosshatch", 4, 1, 2400000, 184.69),
+("crosshatch", 4, 1, 2476800, 204.14),
+("crosshatch", 4, 1, 2553600, 223.37),
+("crosshatch", 4, 1, 2649600, 253.77),
+("crosshatch", 5, 1, 825600, 28.88),
+("crosshatch", 5, 1, 902400, 32.4),
+("crosshatch", 5, 1, 979200, 36.46),
+("crosshatch", 5, 1, 1056000, 39.99),
+("crosshatch", 5, 1, 1209600, 47.23),
+("crosshatch", 5, 1, 1286400, 51.39),
+("crosshatch", 5, 1, 1363200, 56.9),
+("crosshatch", 5, 1, 1459200, 64.26),
+("crosshatch", 5, 1, 1536000, 69.65),
+("crosshatch", 5, 1, 1612800, 75.14),
+("crosshatch", 5, 1, 1689600, 83.16),
+("crosshatch", 5, 1, 1766400, 91.75),
+("crosshatch", 5, 1, 1843200, 100.66),
+("crosshatch", 5, 1, 1920000, 111.45),
+("crosshatch", 5, 1, 1996800, 122.23),
+("crosshatch", 5, 1, 2092800, 143.54),
+("crosshatch", 5, 1, 2169600, 147.54),
+("crosshatch", 5, 1, 2246400, 153.09),
+("crosshatch", 5, 1, 2323200, 166.44),
+("crosshatch", 5, 1, 2400000, 184.69),
+("crosshatch", 5, 1, 2476800, 204.14),
+("crosshatch", 5, 1, 2553600, 223.37),
+("crosshatch", 5, 1, 2649600, 253.77),
+("crosshatch", 6, 1, 825600, 28.88),
+("crosshatch", 6, 1, 902400, 32.4),
+("crosshatch", 6, 1, 979200, 36.46),
+("crosshatch", 6, 1, 1056000, 39.99),
+("crosshatch", 6, 1, 1209600, 47.23),
+("crosshatch", 6, 1, 1286400, 51.39),
+("crosshatch", 6, 1, 1363200, 56.9),
+("crosshatch", 6, 1, 1459200, 64.26),
+("crosshatch", 6, 1, 1536000, 69.65),
+("crosshatch", 6, 1, 1612800, 75.14),
+("crosshatch", 6, 1, 1689600, 83.16),
+("crosshatch", 6, 1, 1766400, 91.75),
+("crosshatch", 6, 1, 1843200, 100.66),
+("crosshatch", 6, 1, 1920000, 111.45),
+("crosshatch", 6, 1, 1996800, 122.23),
+("crosshatch", 6, 1, 2092800, 143.54),
+("crosshatch", 6, 1, 2169600, 147.54),
+("crosshatch", 6, 1, 2246400, 153.09),
+("crosshatch", 6, 1, 2323200, 166.44),
+("crosshatch", 6, 1, 2400000, 184.69),
+("crosshatch", 6, 1, 2476800, 204.14),
+("crosshatch", 6, 1, 2553600, 223.37),
+("crosshatch", 6, 1, 2649600, 253.77),
+("crosshatch", 7, 1, 825600, 28.88),
+("crosshatch", 7, 1, 902400, 32.4),
+("crosshatch", 7, 1, 979200, 36.46),
+("crosshatch", 7, 1, 1056000, 39.99),
+("crosshatch", 7, 1, 1209600, 47.23),
+("crosshatch", 7, 1, 1286400, 51.39),
+("crosshatch", 7, 1, 1363200, 56.9),
+("crosshatch", 7, 1, 1459200, 64.26),
+("crosshatch", 7, 1, 1536000, 69.65),
+("crosshatch", 7, 1, 1612800, 75.14),
+("crosshatch", 7, 1, 1689600, 83.16),
+("crosshatch", 7, 1, 1766400, 91.75),
+("crosshatch", 7, 1, 1843200, 100.66),
+("crosshatch", 7, 1, 1920000, 111.45),
+("crosshatch", 7, 1, 1996800, 122.23),
+("crosshatch", 7, 1, 2092800, 143.54),
+("crosshatch", 7, 1, 2169600, 147.54),
+("crosshatch", 7, 1, 2246400, 153.09),
+("crosshatch", 7, 1, 2323200, 166.44),
+("crosshatch", 7, 1, 2400000, 184.69),
+("crosshatch", 7, 1, 2476800, 204.14),
+("crosshatch", 7, 1, 2553600, 223.37),
+("crosshatch", 7, 1, 2649600, 253.77),
+("blueline", 0, 0, 300000, 2.27),
+("blueline", 0, 0, 403200, 3.63),
+("blueline", 0, 0, 480000, 4.36),
+("blueline", 0, 0, 576000, 5.21),
+("blueline", 0, 0, 652800, 5.47),
+("blueline", 0, 0, 748800, 6.74),
+("blueline", 0, 0, 825600, 7.69),
+("blueline", 0, 0, 902400, 8.57),
+("blueline", 0, 0, 979200, 9.42),
+("blueline", 0, 0, 1056000, 10.41),
+("blueline", 0, 0, 1132800, 11.56),
+("blueline", 0, 0, 1228800, 12.87),
+("blueline", 0, 0, 1324800, 14.61),
+("blueline", 0, 0, 1420800, 16.49),
+("blueline", 0, 0, 1516800, 18.9),
+("blueline", 0, 0, 1612800, 21.62),
+("blueline", 0, 0, 1689600, 24.47),
+("blueline", 0, 0, 1766400, 26.45),
+("blueline", 1, 0, 300000, 2.27),
+("blueline", 1, 0, 403200, 3.63),
+("blueline", 1, 0, 480000, 4.36),
+("blueline", 1, 0, 576000, 5.21),
+("blueline", 1, 0, 652800, 5.47),
+("blueline", 1, 0, 748800, 6.74),
+("blueline", 1, 0, 825600, 7.69),
+("blueline", 1, 0, 902400, 8.57),
+("blueline", 1, 0, 979200, 9.42),
+("blueline", 1, 0, 1056000, 10.41),
+("blueline", 1, 0, 1132800, 11.56),
+("blueline", 1, 0, 1228800, 12.87),
+("blueline", 1, 0, 1324800, 14.61),
+("blueline", 1, 0, 1420800, 16.49),
+("blueline", 1, 0, 1516800, 18.9),
+("blueline", 1, 0, 1612800, 21.62),
+("blueline", 1, 0, 1689600, 24.47),
+("blueline", 1, 0, 1766400, 26.45),
+("blueline", 2, 0, 300000, 2.27),
+("blueline", 2, 0, 403200, 3.63),
+("blueline", 2, 0, 480000, 4.36),
+("blueline", 2, 0, 576000, 5.21),
+("blueline", 2, 0, 652800, 5.47),
+("blueline", 2, 0, 748800, 6.74),
+("blueline", 2, 0, 825600, 7.69),
+("blueline", 2, 0, 902400, 8.57),
+("blueline", 2, 0, 979200, 9.42),
+("blueline", 2, 0, 1056000, 10.41),
+("blueline", 2, 0, 1132800, 11.56),
+("blueline", 2, 0, 1228800, 12.87),
+("blueline", 2, 0, 1324800, 14.61),
+("blueline", 2, 0, 1420800, 16.49),
+("blueline", 2, 0, 1516800, 18.9),
+("blueline", 2, 0, 1612800, 21.62),
+("blueline", 2, 0, 1689600, 24.47),
+("blueline", 2, 0, 1766400, 26.45),
+("blueline", 3, 0, 300000, 2.27),
+("blueline", 3, 0, 403200, 3.63),
+("blueline", 3, 0, 480000, 4.36),
+("blueline", 3, 0, 576000, 5.21),
+("blueline", 3, 0, 652800, 5.47),
+("blueline", 3, 0, 748800, 6.74),
+("blueline", 3, 0, 825600, 7.69),
+("blueline", 3, 0, 902400, 8.57),
+("blueline", 3, 0, 979200, 9.42),
+("blueline", 3, 0, 1056000, 10.41),
+("blueline", 3, 0, 1132800, 11.56),
+("blueline", 3, 0, 1228800, 12.87),
+("blueline", 3, 0, 1324800, 14.61),
+("blueline", 3, 0, 1420800, 16.49),
+("blueline", 3, 0, 1516800, 18.9),
+("blueline", 3, 0, 1612800, 21.62),
+("blueline", 3, 0, 1689600, 24.47),
+("blueline", 3, 0, 1766400, 26.45),
+("blueline", 4, 1, 825600, 28.88),
+("blueline", 4, 1, 902400, 32.4),
+("blueline", 4, 1, 979200, 36.46),
+("blueline", 4, 1, 1056000, 39.99),
+("blueline", 4, 1, 1209600, 47.23),
+("blueline", 4, 1, 1286400, 51.39),
+("blueline", 4, 1, 1363200, 56.9),
+("blueline", 4, 1, 1459200, 64.26),
+("blueline", 4, 1, 1536000, 69.65),
+("blueline", 4, 1, 1612800, 75.14),
+("blueline", 4, 1, 1689600, 83.16),
+("blueline", 4, 1, 1766400, 91.75),
+("blueline", 4, 1, 1843200, 100.66),
+("blueline", 4, 1, 1920000, 111.45),
+("blueline", 4, 1, 1996800, 122.23),
+("blueline", 4, 1, 2092800, 143.54),
+("blueline", 4, 1, 2169600, 147.54),
+("blueline", 4, 1, 2246400, 153.09),
+("blueline", 4, 1, 2323200, 166.44),
+("blueline", 4, 1, 2400000, 184.69),
+("blueline", 4, 1, 2476800, 204.14),
+("blueline", 4, 1, 2553600, 223.37),
+("blueline", 4, 1, 2649600, 253.77),
+("blueline", 5, 1, 825600, 28.88),
+("blueline", 5, 1, 902400, 32.4),
+("blueline", 5, 1, 979200, 36.46),
+("blueline", 5, 1, 1056000, 39.99),
+("blueline", 5, 1, 1209600, 47.23),
+("blueline", 5, 1, 1286400, 51.39),
+("blueline", 5, 1, 1363200, 56.9),
+("blueline", 5, 1, 1459200, 64.26),
+("blueline", 5, 1, 1536000, 69.65),
+("blueline", 5, 1, 1612800, 75.14),
+("blueline", 5, 1, 1689600, 83.16),
+("blueline", 5, 1, 1766400, 91.75),
+("blueline", 5, 1, 1843200, 100.66),
+("blueline", 5, 1, 1920000, 111.45),
+("blueline", 5, 1, 1996800, 122.23),
+("blueline", 5, 1, 2092800, 143.54),
+("blueline", 5, 1, 2169600, 147.54),
+("blueline", 5, 1, 2246400, 153.09),
+("blueline", 5, 1, 2323200, 166.44),
+("blueline", 5, 1, 2400000, 184.69),
+("blueline", 5, 1, 2476800, 204.14),
+("blueline", 5, 1, 2553600, 223.37),
+("blueline", 5, 1, 2649600, 253.77),
+("blueline", 6, 1, 825600, 28.88),
+("blueline", 6, 1, 902400, 32.4),
+("blueline", 6, 1, 979200, 36.46),
+("blueline", 6, 1, 1056000, 39.99),
+("blueline", 6, 1, 1209600, 47.23),
+("blueline", 6, 1, 1286400, 51.39),
+("blueline", 6, 1, 1363200, 56.9),
+("blueline", 6, 1, 1459200, 64.26),
+("blueline", 6, 1, 1536000, 69.65),
+("blueline", 6, 1, 1612800, 75.14),
+("blueline", 6, 1, 1689600, 83.16),
+("blueline", 6, 1, 1766400, 91.75),
+("blueline", 6, 1, 1843200, 100.66),
+("blueline", 6, 1, 1920000, 111.45),
+("blueline", 6, 1, 1996800, 122.23),
+("blueline", 6, 1, 2092800, 143.54),
+("blueline", 6, 1, 2169600, 147.54),
+("blueline", 6, 1, 2246400, 153.09),
+("blueline", 6, 1, 2323200, 166.44),
+("blueline", 6, 1, 2400000, 184.69),
+("blueline", 6, 1, 2476800, 204.14),
+("blueline", 6, 1, 2553600, 223.37),
+("blueline", 6, 1, 2649600, 253.77),
+("blueline", 7, 1, 825600, 28.88),
+("blueline", 7, 1, 902400, 32.4),
+("blueline", 7, 1, 979200, 36.46),
+("blueline", 7, 1, 1056000, 39.99),
+("blueline", 7, 1, 1209600, 47.23),
+("blueline", 7, 1, 1286400, 51.39),
+("blueline", 7, 1, 1363200, 56.9),
+("blueline", 7, 1, 1459200, 64.26),
+("blueline", 7, 1, 1536000, 69.65),
+("blueline", 7, 1, 1612800, 75.14),
+("blueline", 7, 1, 1689600, 83.16),
+("blueline", 7, 1, 1766400, 91.75),
+("blueline", 7, 1, 1843200, 100.66),
+("blueline", 7, 1, 1920000, 111.45),
+("blueline", 7, 1, 1996800, 122.23),
+("blueline", 7, 1, 2092800, 143.54),
+("blueline", 7, 1, 2169600, 147.54),
+("blueline", 7, 1, 2246400, 153.09),
+("blueline", 7, 1, 2323200, 166.44),
+("blueline", 7, 1, 2400000, 184.69),
+("blueline", 7, 1, 2476800, 204.14),
+("blueline", 7, 1, 2553600, 223.37),
+("blueline", 7, 1, 2649600, 253.77),
+("bonito", 0, 0, 300000, 15.2466666667),
+("bonito", 0, 0, 576000, 18.2166666667),
+("bonito", 0, 0, 748800, 20.1866666667),
+("bonito", 0, 0, 998400, 23.29),
+("bonito", 0, 0, 1209600, 25.0116666667),
+("bonito", 0, 0, 1324800, 28.485),
+("bonito", 0, 0, 1516800, 31.6866666667),
+("bonito", 0, 0, 1708800, 35.79),
+("bonito", 1, 0, 300000, 15.2466666667),
+("bonito", 1, 0, 576000, 18.2166666667),
+("bonito", 1, 0, 748800, 20.1866666667),
+("bonito", 1, 0, 998400, 23.29),
+("bonito", 1, 0, 1209600, 25.0116666667),
+("bonito", 1, 0, 1324800, 28.485),
+("bonito", 1, 0, 1516800, 31.6866666667),
+("bonito", 1, 0, 1708800, 35.79),
+("bonito", 2, 0, 300000, 15.2466666667),
+("bonito", 2, 0, 576000, 18.2166666667),
+("bonito", 2, 0, 748800, 20.1866666667),
+("bonito", 2, 0, 998400, 23.29),
+("bonito", 2, 0, 1209600, 25.0116666667),
+("bonito", 2, 0, 1324800, 28.485),
+("bonito", 2, 0, 1516800, 31.6866666667),
+("bonito", 2, 0, 1708800, 35.79),
+("bonito", 3, 0, 300000, 15.2466666667),
+("bonito", 3, 0, 576000, 18.2166666667),
+("bonito", 3, 0, 748800, 20.1866666667),
+("bonito", 3, 0, 998400, 23.29),
+("bonito", 3, 0, 1209600, 25.0116666667),
+("bonito", 3, 0, 1324800, 28.485),
+("bonito", 3, 0, 1516800, 31.6866666667),
+("bonito", 3, 0, 1708800, 35.79),
+("bonito", 4, 0, 300000, 15.2466666667),
+("bonito", 4, 0, 576000, 18.2166666667),
+("bonito", 4, 0, 748800, 20.1866666667),
+("bonito", 4, 0, 998400, 23.29),
+("bonito", 4, 0, 1209600, 25.0116666667),
+("bonito", 4, 0, 1324800, 28.485),
+("bonito", 4, 0, 1516800, 31.6866666667),
+("bonito", 4, 0, 1708800, 35.79),
+("bonito", 5, 0, 300000, 15.2466666667),
+("bonito", 5, 0, 576000, 18.2166666667),
+("bonito", 5, 0, 748800, 20.1866666667),
+("bonito", 5, 0, 998400, 23.29),
+("bonito", 5, 0, 1209600, 25.0116666667),
+("bonito", 5, 0, 1324800, 28.485),
+("bonito", 5, 0, 1516800, 31.6866666667),
+("bonito", 5, 0, 1708800, 35.79),
+("bonito", 6, 1, 300000, 24.06),
+("bonito", 6, 1, 652800, 27.56),
+("bonito", 6, 1, 825600, 29.0),
+("bonito", 6, 1, 979200, 31.675),
+("bonito", 6, 1, 1132800, 34.53),
+("bonito", 6, 1, 1363200, 38.885),
+("bonito", 6, 1, 1536000, 43.075),
+("bonito", 6, 1, 1747200, 48.705),
+("bonito", 6, 1, 1843200, 64.57),
+("bonito", 6, 1, 1996800, 69.805),
+("bonito", 6, 1, 2016000, 76.545),
+("bonito", 7, 1, 300000, 24.06),
+("bonito", 7, 1, 652800, 27.56),
+("bonito", 7, 1, 825600, 29.0),
+("bonito", 7, 1, 979200, 31.675),
+("bonito", 7, 1, 1132800, 34.53),
+("bonito", 7, 1, 1363200, 38.885),
+("bonito", 7, 1, 1536000, 43.075),
+("bonito", 7, 1, 1747200, 48.705),
+("bonito", 7, 1, 1843200, 64.57),
+("bonito", 7, 1, 1996800, 69.805),
+("bonito", 7, 1, 2016000, 76.545),
+("sargo", 0, 0, 300000, 15.2466666667),
+("sargo", 0, 0, 576000, 18.2166666667),
+("sargo", 0, 0, 748800, 20.1866666667),
+("sargo", 0, 0, 998400, 23.29),
+("sargo", 0, 0, 1209600, 25.0116666667),
+("sargo", 0, 0, 1324800, 28.485),
+("sargo", 0, 0, 1516800, 31.6866666667),
+("sargo", 0, 0, 1708800, 35.79),
+("sargo", 1, 0, 300000, 15.2466666667),
+("sargo", 1, 0, 576000, 18.2166666667),
+("sargo", 1, 0, 748800, 20.1866666667),
+("sargo", 1, 0, 998400, 23.29),
+("sargo", 1, 0, 1209600, 25.0116666667),
+("sargo", 1, 0, 1324800, 28.485),
+("sargo", 1, 0, 1516800, 31.6866666667),
+("sargo", 1, 0, 1708800, 35.79),
+("sargo", 2, 0, 300000, 15.2466666667),
+("sargo", 2, 0, 576000, 18.2166666667),
+("sargo", 2, 0, 748800, 20.1866666667),
+("sargo", 2, 0, 998400, 23.29),
+("sargo", 2, 0, 1209600, 25.0116666667),
+("sargo", 2, 0, 1324800, 28.485),
+("sargo", 2, 0, 1516800, 31.6866666667),
+("sargo", 2, 0, 1708800, 35.79),
+("sargo", 3, 0, 300000, 15.2466666667),
+("sargo", 3, 0, 576000, 18.2166666667),
+("sargo", 3, 0, 748800, 20.1866666667),
+("sargo", 3, 0, 998400, 23.29),
+("sargo", 3, 0, 1209600, 25.0116666667),
+("sargo", 3, 0, 1324800, 28.485),
+("sargo", 3, 0, 1516800, 31.6866666667),
+("sargo", 3, 0, 1708800, 35.79),
+("sargo", 4, 0, 300000, 15.2466666667),
+("sargo", 4, 0, 576000, 18.2166666667),
+("sargo", 4, 0, 748800, 20.1866666667),
+("sargo", 4, 0, 998400, 23.29),
+("sargo", 4, 0, 1209600, 25.0116666667),
+("sargo", 4, 0, 1324800, 28.485),
+("sargo", 4, 0, 1516800, 31.6866666667),
+("sargo", 4, 0, 1708800, 35.79),
+("sargo", 5, 0, 300000, 15.2466666667),
+("sargo", 5, 0, 576000, 18.2166666667),
+("sargo", 5, 0, 748800, 20.1866666667),
+("sargo", 5, 0, 998400, 23.29),
+("sargo", 5, 0, 1209600, 25.0116666667),
+("sargo", 5, 0, 1324800, 28.485),
+("sargo", 5, 0, 1516800, 31.6866666667),
+("sargo", 5, 0, 1708800, 35.79),
+("sargo", 6, 1, 300000, 24.06),
+("sargo", 6, 1, 652800, 27.56),
+("sargo", 6, 1, 825600, 29.0),
+("sargo", 6, 1, 979200, 31.675),
+("sargo", 6, 1, 1132800, 34.53),
+("sargo", 6, 1, 1363200, 38.885),
+("sargo", 6, 1, 1536000, 43.075),
+("sargo", 6, 1, 1747200, 48.705),
+("sargo", 6, 1, 1843200, 64.57),
+("sargo", 6, 1, 1996800, 69.805),
+("sargo", 6, 1, 2016000, 76.545),
+("sargo", 7, 1, 300000, 24.06),
+("sargo", 7, 1, 652800, 27.56),
+("sargo", 7, 1, 825600, 29.0),
+("sargo", 7, 1, 979200, 31.675),
+("sargo", 7, 1, 1132800, 34.53),
+("sargo", 7, 1, 1363200, 38.885),
+("sargo", 7, 1, 1536000, 43.075),
+("sargo", 7, 1, 1747200, 48.705),
+("sargo", 7, 1, 1843200, 64.57),
+("sargo", 7, 1, 1996800, 69.805),
+("sargo", 7, 1, 2016000, 76.545),
+("coral", 0, 0, 300000, 9.86),
+("coral", 0, 0, 403200, 10.335),
+("coral", 0, 0, 499200, 10.8925),
+("coral", 0, 0, 576000, 11.37),
+("coral", 0, 0, 672000, 11.8),
+("coral", 0, 0, 768000, 12.41),
+("coral", 0, 0, 844800, 12.97),
+("coral", 0, 0, 940800, 13.335),
+("coral", 0, 0, 1036800, 14.1725),
+("coral", 0, 0, 1113600, 14.695),
+("coral", 0, 0, 1209600, 15.3525),
+("coral", 0, 0, 1305600, 16.2775),
+("coral", 0, 0, 1382400, 16.8725),
+("coral", 0, 0, 1478400, 17.6525),
+("coral", 0, 0, 1555200, 18.0975),
+("coral", 0, 0, 1632000, 18.8575),
+("coral", 0, 0, 1708800, 20.0525),
+("coral", 0, 0, 1785600, 21.2625),
+("coral", 1, 0, 300000, 9.86),
+("coral", 1, 0, 403200, 10.335),
+("coral", 1, 0, 499200, 10.8925),
+("coral", 1, 0, 576000, 11.37),
+("coral", 1, 0, 672000, 11.8),
+("coral", 1, 0, 768000, 12.41),
+("coral", 1, 0, 844800, 12.97),
+("coral", 1, 0, 940800, 13.335),
+("coral", 1, 0, 1036800, 14.1725),
+("coral", 1, 0, 1113600, 14.695),
+("coral", 1, 0, 1209600, 15.3525),
+("coral", 1, 0, 1305600, 16.2775),
+("coral", 1, 0, 1382400, 16.8725),
+("coral", 1, 0, 1478400, 17.6525),
+("coral", 1, 0, 1555200, 18.0975),
+("coral", 1, 0, 1632000, 18.8575),
+("coral", 1, 0, 1708800, 20.0525),
+("coral", 1, 0, 1785600, 21.2625),
+("coral", 2, 0, 300000, 9.86),
+("coral", 2, 0, 403200, 10.335),
+("coral", 2, 0, 499200, 10.8925),
+("coral", 2, 0, 576000, 11.37),
+("coral", 2, 0, 672000, 11.8),
+("coral", 2, 0, 768000, 12.41),
+("coral", 2, 0, 844800, 12.97),
+("coral", 2, 0, 940800, 13.335),
+("coral", 2, 0, 1036800, 14.1725),
+("coral", 2, 0, 1113600, 14.695),
+("coral", 2, 0, 1209600, 15.3525),
+("coral", 2, 0, 1305600, 16.2775),
+("coral", 2, 0, 1382400, 16.8725),
+("coral", 2, 0, 1478400, 17.6525),
+("coral", 2, 0, 1555200, 18.0975),
+("coral", 2, 0, 1632000, 18.8575),
+("coral", 2, 0, 1708800, 20.0525),
+("coral", 2, 0, 1785600, 21.2625),
+("coral", 3, 0, 300000, 9.86),
+("coral", 3, 0, 403200, 10.335),
+("coral", 3, 0, 499200, 10.8925),
+("coral", 3, 0, 576000, 11.37),
+("coral", 3, 0, 672000, 11.8),
+("coral", 3, 0, 768000, 12.41),
+("coral", 3, 0, 844800, 12.97),
+("coral", 3, 0, 940800, 13.335),
+("coral", 3, 0, 1036800, 14.1725),
+("coral", 3, 0, 1113600, 14.695),
+("coral", 3, 0, 1209600, 15.3525),
+("coral", 3, 0, 1305600, 16.2775),
+("coral", 3, 0, 1382400, 16.8725),
+("coral", 3, 0, 1478400, 17.6525),
+("coral", 3, 0, 1555200, 18.0975),
+("coral", 3, 0, 1632000, 18.8575),
+("coral", 3, 0, 1708800, 20.0525),
+("coral", 3, 0, 1785600, 21.2625),
+("coral", 4, 1, 710400, 16.7833333333),
+("coral", 4, 1, 825600, 18.3733333333),
+("coral", 4, 1, 940800, 20.4833333333),
+("coral", 4, 1, 1056000, 23.3066666667),
+("coral", 4, 1, 1171200, 25.8266666667),
+("coral", 4, 1, 1286400, 28.45),
+("coral", 4, 1, 1401600, 31.7233333333),
+("coral", 4, 1, 1497600, 34.42),
+("coral", 4, 1, 1612800, 39.3966666667),
+("coral", 4, 1, 1708800, 44.24),
+("coral", 4, 1, 1804800, 47.9433333333),
+("coral", 4, 1, 1920000, 51.97),
+("coral", 4, 1, 2016000, 63.3866666667),
+("coral", 4, 1, 2131200, 71.0366666667),
+("coral", 4, 1, 2227200, 79.32),
+("coral", 4, 1, 2323200, 88.99),
+("coral", 4, 1, 2419200, 100.68),
+("coral", 5, 1, 710400, 16.7833333333),
+("coral", 5, 1, 825600, 18.3733333333),
+("coral", 5, 1, 940800, 20.4833333333),
+("coral", 5, 1, 1056000, 23.3066666667),
+("coral", 5, 1, 1171200, 25.8266666667),
+("coral", 5, 1, 1286400, 28.45),
+("coral", 5, 1, 1401600, 31.7233333333),
+("coral", 5, 1, 1497600, 34.42),
+("coral", 5, 1, 1612800, 39.3966666667),
+("coral", 5, 1, 1708800, 44.24),
+("coral", 5, 1, 1804800, 47.9433333333),
+("coral", 5, 1, 1920000, 51.97),
+("coral", 5, 1, 2016000, 63.3866666667),
+("coral", 5, 1, 2131200, 71.0366666667),
+("coral", 5, 1, 2227200, 79.32),
+("coral", 5, 1, 2323200, 88.99),
+("coral", 5, 1, 2419200, 100.68),
+("coral", 6, 1, 710400, 16.7833333333),
+("coral", 6, 1, 825600, 18.3733333333),
+("coral", 6, 1, 940800, 20.4833333333),
+("coral", 6, 1, 1056000, 23.3066666667),
+("coral", 6, 1, 1171200, 25.8266666667),
+("coral", 6, 1, 1286400, 28.45),
+("coral", 6, 1, 1401600, 31.7233333333),
+("coral", 6, 1, 1497600, 34.42),
+("coral", 6, 1, 1612800, 39.3966666667),
+("coral", 6, 1, 1708800, 44.24),
+("coral", 6, 1, 1804800, 47.9433333333),
+("coral", 6, 1, 1920000, 51.97),
+("coral", 6, 1, 2016000, 63.3866666667),
+("coral", 6, 1, 2131200, 71.0366666667),
+("coral", 6, 1, 2227200, 79.32),
+("coral", 6, 1, 2323200, 88.99),
+("coral", 6, 1, 2419200, 100.68),
+("coral", 7, 2, 825600, 52.7),
+("coral", 7, 2, 940800, 55.9),
+("coral", 7, 2, 1056000, 59.73),
+("coral", 7, 2, 1171200, 63.66),
+("coral", 7, 2, 1286400, 67.28),
+("coral", 7, 2, 1401600, 71.66),
+("coral", 7, 2, 1497600, 76.47),
+("coral", 7, 2, 1612800, 80.92),
+("coral", 7, 2, 1708800, 85.81),
+("coral", 7, 2, 1804800, 93.19),
+("coral", 7, 2, 1920000, 98.06),
+("coral", 7, 2, 2016000, 119.08),
+("coral", 7, 2, 2131200, 127.88),
+("coral", 7, 2, 2227200, 129.85),
+("coral", 7, 2, 2323200, 140.37),
+("coral", 7, 2, 2419200, 151.22),
+("coral", 7, 2, 2534400, 160.73),
+("coral", 7, 2, 2649600, 175.5),
+("coral", 7, 2, 2745600, 186.29),
+("coral", 7, 2, 2841600, 223.89),
+("flame", 0, 0, 300000, 9.86),
+("flame", 0, 0, 403200, 10.335),
+("flame", 0, 0, 499200, 10.8925),
+("flame", 0, 0, 576000, 11.37),
+("flame", 0, 0, 672000, 11.8),
+("flame", 0, 0, 768000, 12.41),
+("flame", 0, 0, 844800, 12.97),
+("flame", 0, 0, 940800, 13.335),
+("flame", 0, 0, 1036800, 14.1725),
+("flame", 0, 0, 1113600, 14.695),
+("flame", 0, 0, 1209600, 15.3525),
+("flame", 0, 0, 1305600, 16.2775),
+("flame", 0, 0, 1382400, 16.8725),
+("flame", 0, 0, 1478400, 17.6525),
+("flame", 0, 0, 1555200, 18.0975),
+("flame", 0, 0, 1632000, 18.8575),
+("flame", 0, 0, 1708800, 20.0525),
+("flame", 0, 0, 1785600, 21.2625),
+("flame", 1, 0, 300000, 9.86),
+("flame", 1, 0, 403200, 10.335),
+("flame", 1, 0, 499200, 10.8925),
+("flame", 1, 0, 576000, 11.37),
+("flame", 1, 0, 672000, 11.8),
+("flame", 1, 0, 768000, 12.41),
+("flame", 1, 0, 844800, 12.97),
+("flame", 1, 0, 940800, 13.335),
+("flame", 1, 0, 1036800, 14.1725),
+("flame", 1, 0, 1113600, 14.695),
+("flame", 1, 0, 1209600, 15.3525),
+("flame", 1, 0, 1305600, 16.2775),
+("flame", 1, 0, 1382400, 16.8725),
+("flame", 1, 0, 1478400, 17.6525),
+("flame", 1, 0, 1555200, 18.0975),
+("flame", 1, 0, 1632000, 18.8575),
+("flame", 1, 0, 1708800, 20.0525),
+("flame", 1, 0, 1785600, 21.2625),
+("flame", 2, 0, 300000, 9.86),
+("flame", 2, 0, 403200, 10.335),
+("flame", 2, 0, 499200, 10.8925),
+("flame", 2, 0, 576000, 11.37),
+("flame", 2, 0, 672000, 11.8),
+("flame", 2, 0, 768000, 12.41),
+("flame", 2, 0, 844800, 12.97),
+("flame", 2, 0, 940800, 13.335),
+("flame", 2, 0, 1036800, 14.1725),
+("flame", 2, 0, 1113600, 14.695),
+("flame", 2, 0, 1209600, 15.3525),
+("flame", 2, 0, 1305600, 16.2775),
+("flame", 2, 0, 1382400, 16.8725),
+("flame", 2, 0, 1478400, 17.6525),
+("flame", 2, 0, 1555200, 18.0975),
+("flame", 2, 0, 1632000, 18.8575),
+("flame", 2, 0, 1708800, 20.0525),
+("flame", 2, 0, 1785600, 21.2625),
+("flame", 3, 0, 300000, 9.86),
+("flame", 3, 0, 403200, 10.335),
+("flame", 3, 0, 499200, 10.8925),
+("flame", 3, 0, 576000, 11.37),
+("flame", 3, 0, 672000, 11.8),
+("flame", 3, 0, 768000, 12.41),
+("flame", 3, 0, 844800, 12.97),
+("flame", 3, 0, 940800, 13.335),
+("flame", 3, 0, 1036800, 14.1725),
+("flame", 3, 0, 1113600, 14.695),
+("flame", 3, 0, 1209600, 15.3525),
+("flame", 3, 0, 1305600, 16.2775),
+("flame", 3, 0, 1382400, 16.8725),
+("flame", 3, 0, 1478400, 17.6525),
+("flame", 3, 0, 1555200, 18.0975),
+("flame", 3, 0, 1632000, 18.8575),
+("flame", 3, 0, 1708800, 20.0525),
+("flame", 3, 0, 1785600, 21.2625),
+("flame", 4, 1, 710400, 16.7833333333),
+("flame", 4, 1, 825600, 18.3733333333),
+("flame", 4, 1, 940800, 20.4833333333),
+("flame", 4, 1, 1056000, 23.3066666667),
+("flame", 4, 1, 1171200, 25.8266666667),
+("flame", 4, 1, 1286400, 28.45),
+("flame", 4, 1, 1401600, 31.7233333333),
+("flame", 4, 1, 1497600, 34.42),
+("flame", 4, 1, 1612800, 39.3966666667),
+("flame", 4, 1, 1708800, 44.24),
+("flame", 4, 1, 1804800, 47.9433333333),
+("flame", 4, 1, 1920000, 51.97),
+("flame", 4, 1, 2016000, 63.3866666667),
+("flame", 4, 1, 2131200, 71.0366666667),
+("flame", 4, 1, 2227200, 79.32),
+("flame", 4, 1, 2323200, 88.99),
+("flame", 4, 1, 2419200, 100.68),
+("flame", 5, 1, 710400, 16.7833333333),
+("flame", 5, 1, 825600, 18.3733333333),
+("flame", 5, 1, 940800, 20.4833333333),
+("flame", 5, 1, 1056000, 23.3066666667),
+("flame", 5, 1, 1171200, 25.8266666667),
+("flame", 5, 1, 1286400, 28.45),
+("flame", 5, 1, 1401600, 31.7233333333),
+("flame", 5, 1, 1497600, 34.42),
+("flame", 5, 1, 1612800, 39.3966666667),
+("flame", 5, 1, 1708800, 44.24),
+("flame", 5, 1, 1804800, 47.9433333333),
+("flame", 5, 1, 1920000, 51.97),
+("flame", 5, 1, 2016000, 63.3866666667),
+("flame", 5, 1, 2131200, 71.0366666667),
+("flame", 5, 1, 2227200, 79.32),
+("flame", 5, 1, 2323200, 88.99),
+("flame", 5, 1, 2419200, 100.68),
+("flame", 6, 1, 710400, 16.7833333333),
+("flame", 6, 1, 825600, 18.3733333333),
+("flame", 6, 1, 940800, 20.4833333333),
+("flame", 6, 1, 1056000, 23.3066666667),
+("flame", 6, 1, 1171200, 25.8266666667),
+("flame", 6, 1, 1286400, 28.45),
+("flame", 6, 1, 1401600, 31.7233333333),
+("flame", 6, 1, 1497600, 34.42),
+("flame", 6, 1, 1612800, 39.3966666667),
+("flame", 6, 1, 1708800, 44.24),
+("flame", 6, 1, 1804800, 47.9433333333),
+("flame", 6, 1, 1920000, 51.97),
+("flame", 6, 1, 2016000, 63.3866666667),
+("flame", 6, 1, 2131200, 71.0366666667),
+("flame", 6, 1, 2227200, 79.32),
+("flame", 6, 1, 2323200, 88.99),
+("flame", 6, 1, 2419200, 100.68),
+("flame", 7, 2, 825600, 52.7),
+("flame", 7, 2, 940800, 55.9),
+("flame", 7, 2, 1056000, 59.73),
+("flame", 7, 2, 1171200, 63.66),
+("flame", 7, 2, 1286400, 67.28),
+("flame", 7, 2, 1401600, 71.66),
+("flame", 7, 2, 1497600, 76.47),
+("flame", 7, 2, 1612800, 80.92),
+("flame", 7, 2, 1708800, 85.81),
+("flame", 7, 2, 1804800, 93.19),
+("flame", 7, 2, 1920000, 98.06),
+("flame", 7, 2, 2016000, 119.08),
+("flame", 7, 2, 2131200, 127.88),
+("flame", 7, 2, 2227200, 129.85),
+("flame", 7, 2, 2323200, 140.37),
+("flame", 7, 2, 2419200, 151.22),
+("flame", 7, 2, 2534400, 160.73),
+("flame", 7, 2, 2649600, 175.5),
+("flame", 7, 2, 2745600, 186.29),
+("flame", 7, 2, 2841600, 223.89);
diff --git a/tools/build_all_configs.py b/tools/build_all_configs.py
index c1e22a0..8f2245c 100755
--- a/tools/build_all_configs.py
+++ b/tools/build_all_configs.py
@@ -13,6 +13,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
+from __future__ import absolute_import
+from __future__ import division
from __future__ import print_function
import argparse
diff --git a/tools/check_include_violations b/tools/check_include_violations
index e308ec7..9b68c7b 100755
--- a/tools/check_include_violations
+++ b/tools/check_include_violations
@@ -19,6 +19,10 @@
# - public includes don't end up depending on private src/ headers.
# - We use consistently <angle brackets> for other libraries.
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+
import os
import re
import subprocess
diff --git a/tools/check_proto_comments b/tools/check_proto_comments
index 97dbce4..c5c3922 100755
--- a/tools/check_proto_comments
+++ b/tools/check_proto_comments
@@ -15,6 +15,10 @@
# This tool checks for inline comments in proto files
+from __future__ import absolute_import
+from __future__ import division
+from __future__ import print_function
+
import os
import re
import subprocess
diff --git a/tools/export_power_profiles.py b/tools/export_power_profiles.py
new file mode 100755
index 0000000..b3198c4
--- /dev/null
+++ b/tools/export_power_profiles.py
@@ -0,0 +1,79 @@
+#!/usr/bin/env vpython
+# Copyright 2020 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+import argparse
+import os
+import sys
+import xml.etree.ElementTree as ET
+
+
+def ExtractValues(xml_path, correction):
+ root = ET.parse(xml_path).getroot()
+
+ speeds = []
+ power = []
+ clusters = []
+ for array in root.iter('array'):
+ if array.get('name') == 'cpu.clusters.cores':
+ clusters = [int(value.text) for value in array.iter('value')]
+ if array.get('name').startswith('cpu.core_speeds.'):
+ speeds.append([int(value.text) for value in array.iter('value')])
+ if array.get('name').startswith('cpu.core_power.'):
+ power.append([float(value.text) for value in array.iter('value')])
+
+ values = []
+ cpu = 0
+ for cluster, n_cpus in enumerate(clusters):
+ for _ in range(n_cpus):
+ for freq, drain in zip(speeds[cluster], power[cluster]):
+ if correction:
+ drain /= n_cpus
+ values.append((cpu, cluster, freq, drain))
+ cpu += 1
+
+ return values
+
+
+def ExportProfiles(device_xmls, sql_path):
+ sql_values = []
+ for device, xml_path, correction in device_xmls:
+ sql_values += [
+ '("%s", %s, %s, %s, %s)' % ((device,) + v)
+ for v in ExtractValues(xml_path, correction == 'yes')
+ ]
+
+ with open(sql_path, 'w') as sql_file:
+ sql_file.write('INSERT INTO power_profile VALUES\n')
+ sql_file.write(',\n'.join(sql_values))
+ sql_file.write(';\n')
+
+
+def main(args):
+ parser = argparse.ArgumentParser(
+ description='Export XML power profile as a SQL INSERT query.',
+ epilog='Example usage:\n'
+ 'python export_power_profiles.py '
+ '--device-xml sailfish sailfish/power_profile.xml no '
+ '--device-xml sargo sargo/power_profile.xml yes '
+ '--output power_profile_data.sql')
+ parser.add_argument(
+ '--device-xml',
+ nargs=3,
+ metavar=('DEVICE', 'XML_FILE', 'CORRECTION'),
+ action='append',
+ help='First argument: device name; second argument: path to the XML '
+ 'file with the device power profile; third argument(yes|no): '
+ 'whether correction is necessary. Can be used multiple times.')
+ parser.add_argument(
+ '--output', metavar='SQL_FILE', help='Path to the output file.')
+
+ args = parser.parse_args(args)
+
+ sql_path = 'result.sql'
+ ExportProfiles(args.device_xml, args.output)
+
+
+if __name__ == '__main__':
+ sys.exit(main(sys.argv[1:]))