Patterns
This commit is contained in:
parent
823a3dd229
commit
80436b092f
|
@ -1,3 +1,3 @@
|
|||
SCRIPT_REL_DIR=$(dirname "${BASH_SOURCE[0]}")
|
||||
$SCRIPT_REL_DIR/build_.sh debug raspi arm64
|
||||
$SCRIPT_REL_DIR/build_.sh debug osx arm64
|
||||
# $SCRIPT_REL_DIR/build_.sh debug wasm intel
|
|
@ -0,0 +1,599 @@
|
|||
typedef struct {
|
||||
Incenter_City_Id city;
|
||||
u32 year;
|
||||
Incenter_Month_Id month;
|
||||
r32 value_0;
|
||||
r32 value_1;
|
||||
r32 value_2;
|
||||
} Incenter_Test_Data_Row;
|
||||
static Incenter_Test_Data_Row test_data[] = {
|
||||
[0] = { city_kiev, 2019, MONTH_Mar, 0.820890464489415f, 0, 0 },
|
||||
[1] = { city_kiev, 2019, MONTH_May, 0.56073407325174f, 0, 0 },
|
||||
[2] = { city_kiev, 2019, MONTH_Oct, 0.637426751346005f, 0, 0 },
|
||||
[3] = { city_kiev, 2019, MONTH_Dec, 0.80862890640556f, 0, 0 },
|
||||
[4] = { city_kiev, 2020, MONTH_Apr, 0.593076391792340f, 0, 0 },
|
||||
[5] = { city_kiev, 2020, MONTH_Jul, 0.858014975913935f, 0, 0 },
|
||||
[6] = { city_kiev, 2020, MONTH_Sep, 0.179765571537987f, 0, 0 },
|
||||
[7] = { city_kiev, 2021, MONTH_Jan, 0.263253469386432f, 0, 0 },
|
||||
[8] = { city_kiev, 2021, MONTH_Mar, 0.841496999918748f, 0, 0 },
|
||||
[9] = { city_kiev, 2021, MONTH_May, 0.537492416903434f, 0, 0 },
|
||||
[10] = { city_kiev, 2021, MONTH_Oct, 0.406981562075466f, 0, 0 },
|
||||
[11] = { city_kiev, 2021, MONTH_Dec, 0.76792105984555f, 0, 0 },
|
||||
[12] = { city_buenos_aires, 2019, MONTH_Mar, 0.877459116126247f, 0, 0 },
|
||||
[13] = { city_buenos_aires, 2019, MONTH_May, 0.2062446538997374f, 0, 0 },
|
||||
[14] = { city_buenos_aires, 2019, MONTH_Oct, 0.984797647735092f, 0, 0 },
|
||||
[15] = { city_buenos_aires, 2019, MONTH_Dec, 0.0672954058701716f, 0, 0 },
|
||||
[16] = { city_buenos_aires, 2020, MONTH_Apr, 0.898576581082917f, 0, 0 },
|
||||
[17] = { city_buenos_aires, 2020, MONTH_Jul, 0.814741645034557f, 0, 0 },
|
||||
[18] = { city_buenos_aires, 2020, MONTH_Sep, 0.3941931609289429f, 0, 0 },
|
||||
[19] = { city_buenos_aires, 2021, MONTH_Jan, 0.284481574114039f, 0, 0 },
|
||||
[20] = { city_buenos_aires, 2021, MONTH_Mar, 0.992958746256462f, 0, 0 },
|
||||
[21] = { city_buenos_aires, 2021, MONTH_May, 0.155064917250535f, 0, 0 },
|
||||
[22] = { city_buenos_aires, 2021, MONTH_Oct, 0.652209624619602f, 0, 0 },
|
||||
[23] = { city_buenos_aires, 2021, MONTH_Dec, 0.740860591751484f, 0, 0 },
|
||||
[24] = { city_canberra, 2019, MONTH_May, 0.1338689937499514f, 0, 0 },
|
||||
[25] = { city_canberra, 2019, MONTH_Aug, 0.0125184520464056f, 0, 0 },
|
||||
[26] = { city_canberra, 2019, MONTH_Nov, 0.3106947788493822f, 0, 0 },
|
||||
[27] = { city_canberra, 2019, MONTH_Dec, 0.614443279576778f, 0, 0 },
|
||||
[28] = { city_canberra, 2020, MONTH_Apr, 0.3821505232456925f, 0, 0 },
|
||||
[29] = { city_canberra, 2020, MONTH_Jul, 0.4925866761524977f, 0, 0 },
|
||||
[30] = { city_canberra, 2020, MONTH_Sep, 0.01402457594644135f, 0, 0 },
|
||||
[31] = { city_canberra, 2021, MONTH_Jan, 0.630246902453805f, 0, 0 },
|
||||
[32] = { city_canberra, 2021, MONTH_Mar, 0.665741155823732f, 0, 0 },
|
||||
[33] = { city_canberra, 2021, MONTH_May, 0.637515374364962f, 0, 0 },
|
||||
[34] = { city_canberra, 2021, MONTH_Oct, 0.435508034652498f, 0, 0 },
|
||||
[35] = { city_canberra, 2021, MONTH_Dec, 0.784267101708750f, 0, 0 },
|
||||
[36] = { city_yerevan, 2019, MONTH_Feb, 0.222480434220212f, 0, 0 },
|
||||
[37] = { city_yerevan, 2019, MONTH_Apr, 0.4029543563896680f, 0, 0 },
|
||||
[38] = { city_yerevan, 2019, MONTH_Jun, 0.0084130412911773f, 0, 0 },
|
||||
[39] = { city_yerevan, 2019, MONTH_Oct, 0.4935333893524508f, 0, 0 },
|
||||
[40] = { city_yerevan, 2020, MONTH_Mar, 0.795608809243028f, 0, 0 },
|
||||
[41] = { city_yerevan, 2020, MONTH_May, 0.871852281333013f, 0, 0 },
|
||||
[42] = { city_yerevan, 2020, MONTH_Oct, 0.757850269654449f, 0, 0 },
|
||||
[43] = { city_yerevan, 2020, MONTH_Dec, 0.305973943715009f, 0, 0 },
|
||||
[44] = { city_yerevan, 2021, MONTH_Mar, 0.575105708333009f, 0, 0 },
|
||||
[45] = { city_yerevan, 2021, MONTH_May, 0.3241565018180455f, 0, 0 },
|
||||
[46] = { city_yerevan, 2021, MONTH_Oct, 0.1391937656411673f, 0, 0 },
|
||||
[47] = { city_yerevan, 2021, MONTH_Dec, 0.408290129008908f, 0, 0 },
|
||||
[48] = { city_bishkek, 2019, MONTH_Feb, 0.854538964489814f, 0, 0 },
|
||||
[49] = { city_bishkek, 2019, MONTH_Apr, 0.867971473415691f, 0, 0 },
|
||||
[50] = { city_bishkek, 2019, MONTH_Jun, 0.979390156498233f, 0, 0 },
|
||||
[51] = { city_bishkek, 2019, MONTH_Oct, 0.828979030987664f, 0, 0 },
|
||||
[52] = { city_bishkek, 2020, MONTH_Apr, 0.145895128700512f, 0, 0 },
|
||||
[53] = { city_bishkek, 2020, MONTH_Jul, 0.803446711367975f, 0, 0 },
|
||||
[54] = { city_bishkek, 2020, MONTH_Sep, 0.3478959543445272f, 0, 0 },
|
||||
[55] = { city_bishkek, 2021, MONTH_Jan, 0.0718423039611171f, 0, 0 },
|
||||
[56] = { city_bishkek, 2021, MONTH_Mar, 0.783607349668768f, 0, 0 },
|
||||
[57] = { city_bishkek, 2021, MONTH_May, 0.721750083937874f, 0, 0 },
|
||||
[58] = { city_bishkek, 2021, MONTH_Oct, 0.2831310963771227f, 0, 0 },
|
||||
[59] = { city_bishkek, 2021, MONTH_Dec, 0.107136773774764f, 0, 0 },
|
||||
[60] = { city_dhaka, 2019, MONTH_Mar, 0.696487045082252f, 0, 0 },
|
||||
[61] = { city_dhaka, 2019, MONTH_May, 0.926874194615664f, 0, 0 },
|
||||
[62] = { city_dhaka, 2019, MONTH_Oct, 0.065784704818257f, 0, 0 },
|
||||
[63] = { city_dhaka, 2019, MONTH_Dec, 0.267978732515615f, 0, 0 },
|
||||
[64] = { city_dhaka, 2020, MONTH_Feb, 0.741594899662727f, 0, 0 },
|
||||
[65] = { city_dhaka, 2020, MONTH_Apr, 0.888792879778451f, 0, 0 },
|
||||
[66] = { city_dhaka, 2020, MONTH_Jun, 0.952616025778708f, 0, 0 },
|
||||
[67] = { city_dhaka, 2020, MONTH_Oct, 0.539424539962102f, 0, 0 },
|
||||
[68] = { city_dhaka, 2021, MONTH_Feb, 0.783291871057349f, 0, 0 },
|
||||
[69] = { city_dhaka, 2021, MONTH_Apr, 0.1670300347942025f, 0, 0 },
|
||||
[70] = { city_dhaka, 2021, MONTH_Jun, 0.916080035896739f, 0, 0 },
|
||||
[71] = { city_dhaka, 2021, MONTH_Oct, 0.04557651966926190f, 0, 0 },
|
||||
[72] = { city_sucre, 2019, MONTH_Feb, 0.905795384338579f, 0, 0 },
|
||||
[73] = { city_sucre, 2019, MONTH_Apr, 0.04894925227303792f, 0, 0 },
|
||||
[74] = { city_sucre, 2019, MONTH_Jun, 0.3974826752695833f, 0, 0 },
|
||||
[75] = { city_sucre, 2019, MONTH_Oct, 0.3240253361391306f, 0, 0 },
|
||||
[76] = { city_sucre, 2020, MONTH_Feb, 0.255506118683492f, 0, 0 },
|
||||
[77] = { city_sucre, 2020, MONTH_Apr, 0.683469845394748f, 0, 0 },
|
||||
[78] = { city_sucre, 2020, MONTH_Jun, 0.0860787488725892f, 0, 0 },
|
||||
[79] = { city_sucre, 2020, MONTH_Oct, 0.480200082551104f, 0, 0 },
|
||||
[80] = { city_sucre, 2021, MONTH_Apr, 0.933388110124702f, 0, 0 },
|
||||
[81] = { city_sucre, 2021, MONTH_Jul, 0.826055726458284f, 0, 0 },
|
||||
[82] = { city_sucre, 2021, MONTH_Sep, 0.655861858686346f, 0, 0 },
|
||||
[83] = { city_sucre, 2022, MONTH_Jan, 0.995135577230638f, 0, 0 },
|
||||
[84] = { city_brasilia, 2019, MONTH_Apr, 0.934349752963540f, 0, 0 },
|
||||
[85] = { city_brasilia, 2019, MONTH_Jul, 0.557085223032821f, 0, 0 },
|
||||
[86] = { city_brasilia, 2019, MONTH_Sep, 0.224253014743045f, 0, 0 },
|
||||
[87] = { city_brasilia, 2020, MONTH_Jan, 0.3792768359577919f, 0, 0 },
|
||||
[88] = { city_brasilia, 2020, MONTH_Feb, 0.134570768681787f, 0, 0 },
|
||||
[89] = { city_brasilia, 2020, MONTH_Apr, 0.2982662489386165f, 0, 0 },
|
||||
[90] = { city_brasilia, 2020, MONTH_Jun, 0.847116114015527f, 0, 0 },
|
||||
[91] = { city_brasilia, 2020, MONTH_Oct, 0.710668345133466f, 0, 0 },
|
||||
[92] = { city_brasilia, 2021, MONTH_Apr, 0.882130538520757f, 0, 0 },
|
||||
[93] = { city_brasilia, 2021, MONTH_Jul, 0.634126485396549f, 0, 0 },
|
||||
[94] = { city_brasilia, 2021, MONTH_Sep, 0.879304288498351f, 0, 0 },
|
||||
[95] = { city_brasilia, 2022, MONTH_Jan, 0.367836889045680f, 0, 0 },
|
||||
[96] = { city_ottawa, 2019, MONTH_Feb, 0.4644661026237456f, 0, 0 },
|
||||
[97] = { city_ottawa, 2019, MONTH_Apr, 0.27044176317875f, 0, 0 },
|
||||
[98] = { city_ottawa, 2019, MONTH_Jun, 0.78502064470336f, 0, 0 },
|
||||
[99] = { city_ottawa, 2019, MONTH_Oct, 0.439787889686537f, 0, 0 },
|
||||
[100] = { city_ottawa, 2020, MONTH_Mar, 0.625070053347673f, 0, 0 },
|
||||
[101] = { city_ottawa, 2020, MONTH_May, 0.854391809397701f, 0, 0 },
|
||||
[102] = { city_ottawa, 2020, MONTH_Oct, 0.1092476526609484f, 0, 0 },
|
||||
[103] = { city_ottawa, 2020, MONTH_Dec, 0.0698930895777035f, 0, 0 },
|
||||
[104] = { city_ottawa, 2021, MONTH_May, 0.0219222869517711f, 0, 0 },
|
||||
[105] = { city_ottawa, 2021, MONTH_Aug, 0.3118047013029038f, 0, 0 },
|
||||
[106] = { city_ottawa, 2021, MONTH_Nov, 0.800964131022624f, 0, 0 },
|
||||
[107] = { city_ottawa, 2021, MONTH_Dec, 0.893928203453701f, 0, 0 },
|
||||
[108] = { city_santiago, 2019, MONTH_Feb, 0.260406662278948f, 0, 0 },
|
||||
[109] = { city_santiago, 2019, MONTH_Apr, 0.0440821965051458f, 0, 0 },
|
||||
[110] = { city_santiago, 2019, MONTH_Jun, 0.03370085386772181f, 0, 0 },
|
||||
[111] = { city_santiago, 2019, MONTH_Oct, 0.0702001450638586f, 0, 0 },
|
||||
[112] = { city_santiago, 2020, MONTH_Mar, 0.66916706280028f, 0, 0 },
|
||||
[113] = { city_santiago, 2020, MONTH_May, 0.394667241732750f, 0, 0 },
|
||||
[114] = { city_santiago, 2020, MONTH_Oct, 0.9696170778040f, 0, 0 },
|
||||
[115] = { city_santiago, 2020, MONTH_Dec, 0.692669953953974f, 0, 0 },
|
||||
[116] = { city_santiago, 2021, MONTH_Feb, 0.885578817071499f, 0, 0 },
|
||||
[117] = { city_santiago, 2021, MONTH_Apr, 0.02248585274337977f, 0, 0 },
|
||||
[118] = { city_santiago, 2021, MONTH_Jun, 0.01661168283700642f, 0, 0 },
|
||||
[119] = { city_santiago, 2021, MONTH_Oct, 0.738806466943267f, 0, 0 },
|
||||
[120] = { city_beijing, 2019, MONTH_Mar, 0.398464980892838f, 0, 0 },
|
||||
[121] = { city_beijing, 2019, MONTH_May, 0.551648164638685f, 0, 0 },
|
||||
[122] = { city_beijing, 2019, MONTH_Oct, 0.021236210735964f, 0, 0 },
|
||||
[123] = { city_beijing, 2019, MONTH_Dec, 0.2339279354599085f, 0, 0 },
|
||||
[124] = { city_beijing, 2020, MONTH_Mar, 0.897658054227696f, 0, 0 },
|
||||
[125] = { city_beijing, 2020, MONTH_May, 0.512517872887249f, 0, 0 },
|
||||
[126] = { city_beijing, 2020, MONTH_Oct, 0.0988590392525249f, 0, 0 },
|
||||
[127] = { city_beijing, 2020, MONTH_Dec, 0.99615807233472f, 0, 0 },
|
||||
[128] = { city_beijing, 2021, MONTH_May, 0.391024451068782f, 0, 0 },
|
||||
[129] = { city_beijing, 2021, MONTH_Aug, 0.591905762173565f, 0, 0 },
|
||||
[130] = { city_beijing, 2021, MONTH_Nov, 0.2283096306364279f, 0, 0 },
|
||||
[131] = { city_beijing, 2021, MONTH_Dec, 0.821811925597835f, 0, 0 },
|
||||
[132] = { city_bogota, 2019, MONTH_Feb, 0.04055961855563494f, 0, 0 },
|
||||
[133] = { city_bogota, 2019, MONTH_Apr, 0.669754494655513f, 0, 0 },
|
||||
[134] = { city_bogota, 2019, MONTH_Jun, 0.701264834768624f, 0, 0 },
|
||||
[135] = { city_bogota, 2019, MONTH_Oct, 0.926643006799590f, 0, 0 },
|
||||
[136] = { city_bogota, 2020, MONTH_May, 0.926535096485845f, 0, 0 },
|
||||
[137] = { city_bogota, 2020, MONTH_Aug, 0.562271964832498f, 0, 0 },
|
||||
[138] = { city_bogota, 2020, MONTH_Nov, 0.1850507621318452f, 0, 0 },
|
||||
[139] = { city_bogota, 2020, MONTH_Dec, 0.1320097943504098f, 0, 0 },
|
||||
[140] = { city_bogota, 2021, MONTH_Apr, 0.2549272436870123f, 0, 0 },
|
||||
[141] = { city_bogota, 2021, MONTH_Jul, 0.655188137041105f, 0, 0 },
|
||||
[142] = { city_bogota, 2021, MONTH_Sep, 0.330150715675793f, 0, 0 },
|
||||
[143] = { city_bogota, 2022, MONTH_Jan, 0.931982538146994f, 0, 0 },
|
||||
[144] = { city_nicosia, 2019, MONTH_Feb, 0.811253678048109f, 0, 0 },
|
||||
[145] = { city_nicosia, 2019, MONTH_Apr, 0.712224222819743f, 0, 0 },
|
||||
[146] = { city_nicosia, 2019, MONTH_Jun, 0.399273172446563f, 0, 0 },
|
||||
[147] = { city_nicosia, 2019, MONTH_Oct, 0.056092503429609f, 0, 0 },
|
||||
[148] = { city_nicosia, 2020, MONTH_Mar, 0.60563587382731f, 0, 0 },
|
||||
[149] = { city_nicosia, 2020, MONTH_May, 0.815528514704807f, 0, 0 },
|
||||
[150] = { city_nicosia, 2020, MONTH_Oct, 0.728314034392938f, 0, 0 },
|
||||
[151] = { city_nicosia, 2020, MONTH_Dec, 0.159377338887028f, 0, 0 },
|
||||
[152] = { city_nicosia, 2021, MONTH_May, 0.533098572342027f, 0, 0 },
|
||||
[153] = { city_nicosia, 2021, MONTH_Aug, 0.4664341277469371f, 0, 0 },
|
||||
[154] = { city_nicosia, 2021, MONTH_Nov, 0.730237961803562f, 0, 0 },
|
||||
[155] = { city_nicosia, 2021, MONTH_Dec, 0.597177425986761f, 0, 0 },
|
||||
[156] = { city_quito, 2019, MONTH_May, 0.3900500941853586f, 0, 0 },
|
||||
[157] = { city_quito, 2019, MONTH_Aug, 0.902510252650640f, 0, 0 },
|
||||
[158] = { city_quito, 2019, MONTH_Nov, 0.50747923203348f, 0, 0 },
|
||||
[159] = { city_quito, 2019, MONTH_Dec, 0.504675362331222f, 0, 0 },
|
||||
[160] = { city_quito, 2020, MONTH_Mar, 0.893239434326622f, 0, 0 },
|
||||
[161] = { city_quito, 2020, MONTH_May, 0.1972236787064364f, 0, 0 },
|
||||
[162] = { city_quito, 2020, MONTH_Oct, 0.461624391667064f, 0, 0 },
|
||||
[163] = { city_quito, 2020, MONTH_Dec, 0.2292995261096597f, 0, 0 },
|
||||
[164] = { city_quito, 2021, MONTH_Apr, 0.67583955263968f, 0, 0 },
|
||||
[165] = { city_quito, 2021, MONTH_Jul, 0.752273762232872f, 0, 0 },
|
||||
[166] = { city_quito, 2021, MONTH_Sep, 0.754769476238442f, 0, 0 },
|
||||
[167] = { city_quito, 2022, MONTH_Jan, 0.522476871813856f, 0, 0 },
|
||||
[168] = { city_cairo, 2019, MONTH_Apr, 0.1225197816901859f, 0, 0 },
|
||||
[169] = { city_cairo, 2019, MONTH_Jul, 0.64021444184204f, 0, 0 },
|
||||
[170] = { city_cairo, 2019, MONTH_Sep, 0.1129228329032401f, 0, 0 },
|
||||
[171] = { city_cairo, 2020, MONTH_Jan, 0.44379330991469f, 0, 0 },
|
||||
[172] = { city_cairo, 2020, MONTH_May, 0.369533191151981f, 0, 0 },
|
||||
[173] = { city_cairo, 2020, MONTH_Aug, 0.087571921991018f, 0, 0 },
|
||||
[174] = { city_cairo, 2020, MONTH_Nov, 0.130023762282846f, 0, 0 },
|
||||
[175] = { city_cairo, 2020, MONTH_Dec, 0.619080240994548f, 0, 0 },
|
||||
[176] = { city_cairo, 2021, MONTH_May, 0.265431673532736f, 0, 0 },
|
||||
[177] = { city_cairo, 2021, MONTH_Aug, 0.0838086831407579f, 0, 0 },
|
||||
[178] = { city_cairo, 2021, MONTH_Nov, 0.002175360042457663f, 0, 0 },
|
||||
[179] = { city_cairo, 2021, MONTH_Dec, 0.342714385178964f, 0, 0 },
|
||||
[180] = { city_addis_ababa, 2019, MONTH_Feb, 0.527483000268353f, 0, 0 },
|
||||
[181] = { city_addis_ababa, 2019, MONTH_Apr, 0.02860178841412208f, 0, 0 },
|
||||
[182] = { city_addis_ababa, 2019, MONTH_Jun, 0.2240604563219019f, 0, 0 },
|
||||
[183] = { city_addis_ababa, 2019, MONTH_Oct, 0.157084009337969f, 0, 0 },
|
||||
[184] = { city_addis_ababa, 2020, MONTH_Apr, 0.469697598033293f, 0, 0 },
|
||||
[185] = { city_addis_ababa, 2020, MONTH_Jul, 0.701891216846054f, 0, 0 },
|
||||
[186] = { city_addis_ababa, 2020, MONTH_Sep, 0.670718895080620f, 0, 0 },
|
||||
[187] = { city_addis_ababa, 2021, MONTH_Jan, 0.2222353125566932f, 0, 0 },
|
||||
[188] = { city_addis_ababa, 2021, MONTH_Mar, 0.739784695704446f, 0, 0 },
|
||||
[189] = { city_addis_ababa, 2021, MONTH_May, 0.296333188085118f, 0, 0 },
|
||||
[190] = { city_addis_ababa, 2021, MONTH_Oct, 0.2272026794508933f, 0, 0 },
|
||||
[191] = { city_addis_ababa, 2021, MONTH_Dec, 0.97410047246957f, 0, 0 },
|
||||
[192] = { city_berlin, 2019, MONTH_May, 0.966330648602629f, 0, 0 },
|
||||
[193] = { city_berlin, 2019, MONTH_Aug, 0.0176205852695634f, 0, 0 },
|
||||
[194] = { city_berlin, 2019, MONTH_Nov, 0.584547668032789f, 0, 0 },
|
||||
[195] = { city_berlin, 2019, MONTH_Dec, 0.0526735938814365f, 0, 0 },
|
||||
[196] = { city_berlin, 2020, MONTH_Feb, 0.00291208011562660f, 0, 0 },
|
||||
[197] = { city_berlin, 2020, MONTH_Apr, 0.46161889811961f, 0, 0 },
|
||||
[198] = { city_berlin, 2020, MONTH_Jun, 0.918717731989696f, 0, 0 },
|
||||
[199] = { city_berlin, 2020, MONTH_Oct, 0.526922668293464f, 0, 0 },
|
||||
[200] = { city_berlin, 2021, MONTH_Feb, 0.407533147535702f, 0, 0 },
|
||||
[201] = { city_berlin, 2021, MONTH_Apr, 0.260631254569428f, 0, 0 },
|
||||
[202] = { city_berlin, 2021, MONTH_Jun, 0.850691099863162f, 0, 0 },
|
||||
[203] = { city_berlin, 2021, MONTH_Oct, 0.447745362619697f, 0, 0 },
|
||||
[204] = { city_athens, 2019, MONTH_Apr, 0.475810196278598f, 0, 0 },
|
||||
[205] = { city_athens, 2019, MONTH_Jul, 0.727351163708599f, 0, 0 },
|
||||
[206] = { city_athens, 2019, MONTH_Sep, 0.1173467409143746f, 0, 0 },
|
||||
[207] = { city_athens, 2020, MONTH_Jan, 0.701133914670033f, 0, 0 },
|
||||
[208] = { city_athens, 2020, MONTH_May, 0.502187471083579f, 0, 0 },
|
||||
[209] = { city_athens, 2020, MONTH_Aug, 0.722469653059002f, 0, 0 },
|
||||
[210] = { city_athens, 2020, MONTH_Nov, 0.0705704436871592f, 0, 0 },
|
||||
[211] = { city_athens, 2020, MONTH_Dec, 0.412202187265480f, 0, 0 },
|
||||
[212] = { city_athens, 2021, MONTH_Apr, 0.789529374678307f, 0, 0 },
|
||||
[213] = { city_athens, 2021, MONTH_Jul, 0.4263051767962031f, 0, 0 },
|
||||
[214] = { city_athens, 2021, MONTH_Sep, 0.422014815723197f, 0, 0 },
|
||||
[215] = { city_athens, 2022, MONTH_Jan, 0.0793089415950993f, 0, 0 },
|
||||
[216] = { city_guatemala_city, 2019, MONTH_Feb, 0.560605380854630f, 0, 0 },
|
||||
[217] = { city_guatemala_city, 2019, MONTH_Apr, 0.3382526681121018f, 0, 0 },
|
||||
[218] = { city_guatemala_city, 2019, MONTH_Jun, 0.395812130966940f, 0, 0 },
|
||||
[219] = { city_guatemala_city, 2019, MONTH_Oct, 0.812327694885220f, 0, 0 },
|
||||
[220] = { city_guatemala_city, 2020, MONTH_May, 0.654610646195839f, 0, 0 },
|
||||
[221] = { city_guatemala_city, 2020, MONTH_Aug, 0.365603885209179f, 0, 0 },
|
||||
[222] = { city_guatemala_city, 2020, MONTH_Nov, 0.299155503687062f, 0, 0 },
|
||||
[223] = { city_guatemala_city, 2020, MONTH_Dec, 0.184138836513171f, 0, 0 },
|
||||
[224] = { city_guatemala_city, 2021, MONTH_Mar, 0.704976319975955f, 0, 0 },
|
||||
[225] = { city_guatemala_city, 2021, MONTH_May, 0.0361929491443968f, 0, 0 },
|
||||
[226] = { city_guatemala_city, 2021, MONTH_Oct, 0.64197021948932f, 0, 0 },
|
||||
[227] = { city_guatemala_city, 2021, MONTH_Dec, 0.729014435225115f, 0, 0 },
|
||||
[228] = { city_jakarta, 2019, MONTH_May, 0.4873064888015896f, 0, 0 },
|
||||
[229] = { city_jakarta, 2019, MONTH_Aug, 0.1332481199937597f, 0, 0 },
|
||||
[230] = { city_jakarta, 2019, MONTH_Nov, 0.745745949826538f, 0, 0 },
|
||||
[231] = { city_jakarta, 2019, MONTH_Dec, 0.677061592008742f, 0, 0 },
|
||||
[232] = { city_jakarta, 2020, MONTH_Feb, 0.097222170637766f, 0, 0 },
|
||||
[233] = { city_jakarta, 2020, MONTH_Apr, 0.454813364724139f, 0, 0 },
|
||||
[234] = { city_jakarta, 2020, MONTH_Jun, 0.599030699042925f, 0, 0 },
|
||||
[235] = { city_jakarta, 2020, MONTH_Oct, 0.4625443588285278f, 0, 0 },
|
||||
[236] = { city_jakarta, 2021, MONTH_Feb, 0.487754108957089f, 0, 0 },
|
||||
[237] = { city_jakarta, 2021, MONTH_Apr, 0.317627211073128f, 0, 0 },
|
||||
[238] = { city_jakarta, 2021, MONTH_Jun, 0.4601649895962731f, 0, 0 },
|
||||
[239] = { city_jakarta, 2021, MONTH_Oct, 0.819518311504193f, 0, 0 },
|
||||
[240] = { city_tehran, 2019, MONTH_Apr, 0.301861333672369f, 0, 0 },
|
||||
[241] = { city_tehran, 2019, MONTH_Jul, 0.690444209645852f, 0, 0 },
|
||||
[242] = { city_tehran, 2019, MONTH_Sep, 0.4404145375380147f, 0, 0 },
|
||||
[243] = { city_tehran, 2020, MONTH_Jan, 0.512216673447640f, 0, 0 },
|
||||
[244] = { city_tehran, 2020, MONTH_Mar, 0.404877102071919f, 0, 0 },
|
||||
[245] = { city_tehran, 2020, MONTH_May, 0.0425131526773253f, 0, 0 },
|
||||
[246] = { city_tehran, 2020, MONTH_Oct, 0.2593536969506149f, 0, 0 },
|
||||
[247] = { city_tehran, 2020, MONTH_Dec, 0.783890028761998f, 0, 0 },
|
||||
[248] = { city_tehran, 2021, MONTH_Mar, 0.94926354604200f, 0, 0 },
|
||||
[249] = { city_tehran, 2021, MONTH_May, 0.0569072784620124f, 0, 0 },
|
||||
[250] = { city_tehran, 2021, MONTH_Oct, 0.577568094487137f, 0, 0 },
|
||||
[251] = { city_tehran, 2021, MONTH_Dec, 0.618906187850862f, 0, 0 },
|
||||
[252] = { city_baghdad, 2019, MONTH_Mar, 0.2041098782632676f, 0, 0 },
|
||||
[253] = { city_baghdad, 2019, MONTH_May, 0.418410741640879f, 0, 0 },
|
||||
[254] = { city_baghdad, 2019, MONTH_Oct, 0.4045113808247624f, 0, 0 },
|
||||
[255] = { city_baghdad, 2019, MONTH_Dec, 0.0935036317264107f, 0, 0 },
|
||||
[256] = { city_baghdad, 2020, MONTH_May, 0.881388063687282f, 0, 0 },
|
||||
[257] = { city_baghdad, 2020, MONTH_Aug, 0.542844838193968f, 0, 0 },
|
||||
[258] = { city_baghdad, 2020, MONTH_Nov, 0.919644994222689f, 0, 0 },
|
||||
[259] = { city_baghdad, 2020, MONTH_Dec, 0.4012535241874899f, 0, 0 },
|
||||
[260] = { city_baghdad, 2021, MONTH_Feb, 0.3336959972932559f, 0, 0 },
|
||||
[261] = { city_baghdad, 2021, MONTH_Apr, 0.1796197721242466f, 0, 0 },
|
||||
[262] = { city_baghdad, 2021, MONTH_Jun, 0.828742767016648f, 0, 0 },
|
||||
[263] = { city_baghdad, 2021, MONTH_Oct, 0.1843548012255065f, 0, 0 },
|
||||
[264] = { city_tokyo, 2019, MONTH_May, 0.155891108992637f, 0, 0 },
|
||||
[265] = { city_tokyo, 2019, MONTH_Aug, 0.710329744155827f, 0, 0 },
|
||||
[266] = { city_tokyo, 2019, MONTH_Nov, 0.767037295899860f, 0, 0 },
|
||||
[267] = { city_tokyo, 2019, MONTH_Dec, 0.3455214091470476f, 0, 0 },
|
||||
[268] = { city_tokyo, 2020, MONTH_Feb, 0.3474433981102914f, 0, 0 },
|
||||
[269] = { city_tokyo, 2020, MONTH_Apr, 0.945631216030701f, 0, 0 },
|
||||
[270] = { city_tokyo, 2020, MONTH_Jun, 0.696669631520124f, 0, 0 },
|
||||
[271] = { city_tokyo, 2020, MONTH_Oct, 0.722151370281128f, 0, 0 },
|
||||
[272] = { city_tokyo, 2021, MONTH_Apr, 0.124744692100837f, 0, 0 },
|
||||
[273] = { city_tokyo, 2021, MONTH_Jul, 0.780248733655871f, 0, 0 },
|
||||
[274] = { city_tokyo, 2021, MONTH_Sep, 0.802652502830138f, 0, 0 },
|
||||
[275] = { city_tokyo, 2022, MONTH_Jan, 0.1950030931830898f, 0, 0 },
|
||||
[276] = { city_amman, 2019, MONTH_Apr, 0.913564776301748f, 0, 0 },
|
||||
[277] = { city_amman, 2019, MONTH_Jul, 0.51995965182440f, 0, 0 },
|
||||
[278] = { city_amman, 2019, MONTH_Sep, 0.0734962371079785f, 0, 0 },
|
||||
[279] = { city_amman, 2020, MONTH_Jan, 0.820928052342723f, 0, 0 },
|
||||
[280] = { city_amman, 2020, MONTH_Feb, 0.858049473312560f, 0, 0 },
|
||||
[281] = { city_amman, 2020, MONTH_Apr, 0.472228820975274f, 0, 0 },
|
||||
[282] = { city_amman, 2020, MONTH_Jun, 0.859450329852867f, 0, 0 },
|
||||
[283] = { city_amman, 2020, MONTH_Oct, 0.734397157087221f, 0, 0 },
|
||||
[284] = { city_amman, 2021, MONTH_Feb, 0.471531691187588f, 0, 0 },
|
||||
[285] = { city_amman, 2021, MONTH_Apr, 0.74666411798262f, 0, 0 },
|
||||
[286] = { city_amman, 2021, MONTH_Jun, 0.0449755300464772f, 0, 0 },
|
||||
[287] = { city_amman, 2021, MONTH_Oct, 0.989728098238887f, 0, 0 },
|
||||
[288] = { city_nairobi, 2019, MONTH_May, 0.353258469908758f, 0, 0 },
|
||||
[289] = { city_nairobi, 2019, MONTH_Aug, 0.637265803224577f, 0, 0 },
|
||||
[290] = { city_nairobi, 2019, MONTH_Nov, 0.652963298166620f, 0, 0 },
|
||||
[291] = { city_nairobi, 2019, MONTH_Dec, 0.980136667400578f, 0, 0 },
|
||||
[292] = { city_nairobi, 2020, MONTH_May, 0.1123254499523785f, 0, 0 },
|
||||
[293] = { city_nairobi, 2020, MONTH_Aug, 0.636340674934326f, 0, 0 },
|
||||
[294] = { city_nairobi, 2020, MONTH_Nov, 0.457205051760276f, 0, 0 },
|
||||
[295] = { city_nairobi, 2020, MONTH_Dec, 0.501683805374266f, 0, 0 },
|
||||
[296] = { city_nairobi, 2021, MONTH_May, 0.287133545101559f, 0, 0 },
|
||||
[297] = { city_nairobi, 2021, MONTH_Aug, 0.613486374545206f, 0, 0 },
|
||||
[298] = { city_nairobi, 2021, MONTH_Nov, 0.664668792823215f, 0, 0 },
|
||||
[299] = { city_nairobi, 2021, MONTH_Dec, 0.460460310851094f, 0, 0 },
|
||||
[300] = { city_beirut, 2019, MONTH_May, 0.2065707928015757f, 0, 0 },
|
||||
[301] = { city_beirut, 2019, MONTH_Aug, 0.0806051251653264f, 0, 0 },
|
||||
[302] = { city_beirut, 2019, MONTH_Nov, 0.312175807704065f, 0, 0 },
|
||||
[303] = { city_beirut, 2019, MONTH_Dec, 0.570445032963265f, 0, 0 },
|
||||
[304] = { city_beirut, 2020, MONTH_May, 0.4971129813508322f, 0, 0 },
|
||||
[305] = { city_beirut, 2020, MONTH_Aug, 0.265179951577338f, 0, 0 },
|
||||
[306] = { city_beirut, 2020, MONTH_Nov, 0.3758296973795538f, 0, 0 },
|
||||
[307] = { city_beirut, 2020, MONTH_Dec, 0.2321419145383638f, 0, 0 },
|
||||
[308] = { city_beirut, 2021, MONTH_Feb, 0.976920552803965f, 0, 0 },
|
||||
[309] = { city_beirut, 2021, MONTH_Apr, 0.571447163905541f, 0, 0 },
|
||||
[310] = { city_beirut, 2021, MONTH_Jun, 0.786651053940900f, 0, 0 },
|
||||
[311] = { city_beirut, 2021, MONTH_Oct, 0.1096868650743059f, 0, 0 },
|
||||
[312] = { city_tripoli, 2019, MONTH_Apr, 0.345925686602871f, 0, 0 },
|
||||
[313] = { city_tripoli, 2019, MONTH_Jul, 0.876290377343576f, 0, 0 },
|
||||
[314] = { city_tripoli, 2019, MONTH_Sep, 0.790275244077456f, 0, 0 },
|
||||
[315] = { city_tripoli, 2020, MONTH_Jan, 0.3965589139790378f, 0, 0 },
|
||||
[316] = { city_tripoli, 2020, MONTH_Mar, 0.285348770715926f, 0, 0 },
|
||||
[317] = { city_tripoli, 2020, MONTH_May, 0.496333626012515f, 0, 0 },
|
||||
[318] = { city_tripoli, 2020, MONTH_Oct, 0.01792744471676621f, 0, 0 },
|
||||
[319] = { city_tripoli, 2020, MONTH_Dec, 0.4947927621449260f, 0, 0 },
|
||||
[320] = { city_tripoli, 2021, MONTH_May, 0.1308448333921825f, 0, 0 },
|
||||
[321] = { city_tripoli, 2021, MONTH_Aug, 0.397296712656376f, 0, 0 },
|
||||
[322] = { city_tripoli, 2021, MONTH_Nov, 0.4494511222856165f, 0, 0 },
|
||||
[323] = { city_tripoli, 2021, MONTH_Dec, 0.918909285370890f, 0, 0 },
|
||||
[324] = { city_kuala_lumpur, 2019, MONTH_Feb, 0.1675625833439882f, 0, 0 },
|
||||
[325] = { city_kuala_lumpur, 2019, MONTH_Apr, 0.729200169873379f, 0, 0 },
|
||||
[326] = { city_kuala_lumpur, 2019, MONTH_Jun, 0.515728121325297f, 0, 0 },
|
||||
[327] = { city_kuala_lumpur, 2019, MONTH_Oct, 0.801495874749624f, 0, 0 },
|
||||
[328] = { city_kuala_lumpur, 2020, MONTH_May, 0.860285410440025f, 0, 0 },
|
||||
[329] = { city_kuala_lumpur, 2020, MONTH_Aug, 0.4333367319964f, 0, 0 },
|
||||
[330] = { city_kuala_lumpur, 2020, MONTH_Nov, 0.373641801398257f, 0, 0 },
|
||||
[331] = { city_kuala_lumpur, 2020, MONTH_Dec, 0.993321214324000f, 0, 0 },
|
||||
[332] = { city_kuala_lumpur, 2021, MONTH_May, 0.955896960620464f, 0, 0 },
|
||||
[333] = { city_kuala_lumpur, 2021, MONTH_Aug, 0.847466374787605f, 0, 0 },
|
||||
[334] = { city_kuala_lumpur, 2021, MONTH_Nov, 0.725930991736956f, 0, 0 },
|
||||
[335] = { city_kuala_lumpur, 2021, MONTH_Dec, 0.0771676585796252f, 0, 0 },
|
||||
[336] = { city_male, 2019, MONTH_May, 0.1185919416224812f, 0, 0 },
|
||||
[337] = { city_male, 2019, MONTH_Aug, 0.1093303633227156f, 0, 0 },
|
||||
[338] = { city_male, 2019, MONTH_Nov, 0.351298531207944f, 0, 0 },
|
||||
[339] = { city_male, 2019, MONTH_Dec, 0.939014019805290f, 0, 0 },
|
||||
[340] = { city_male, 2020, MONTH_May, 0.905825718197400f, 0, 0 },
|
||||
[341] = { city_male, 2020, MONTH_Aug, 0.4774451158431509f, 0, 0 },
|
||||
[342] = { city_male, 2020, MONTH_Nov, 0.865861494206516f, 0, 0 },
|
||||
[343] = { city_male, 2020, MONTH_Dec, 0.3879887276689698f, 0, 0 },
|
||||
[344] = { city_male, 2021, MONTH_Feb, 0.762094702658892f, 0, 0 },
|
||||
[345] = { city_male, 2021, MONTH_Apr, 0.930703136536702f, 0, 0 },
|
||||
[346] = { city_male, 2021, MONTH_Jun, 0.413267471538170f, 0, 0 },
|
||||
[347] = { city_male, 2021, MONTH_Oct, 0.0715077259848261f, 0, 0 },
|
||||
[348] = { city_mexico_city, 2019, MONTH_Mar, 0.282689271758157f, 0, 0 },
|
||||
[349] = { city_mexico_city, 2019, MONTH_May, 0.692801392386349f, 0, 0 },
|
||||
[350] = { city_mexico_city, 2019, MONTH_Oct, 0.856300831164312f, 0, 0 },
|
||||
[351] = { city_mexico_city, 2019, MONTH_Dec, 0.62752648352262f, 0, 0 },
|
||||
[352] = { city_mexico_city, 2020, MONTH_Apr, 0.992877682455008f, 0, 0 },
|
||||
[353] = { city_mexico_city, 2020, MONTH_Jul, 0.3288944801257265f, 0, 0 },
|
||||
[354] = { city_mexico_city, 2020, MONTH_Sep, 0.567301662762395f, 0, 0 },
|
||||
[355] = { city_mexico_city, 2021, MONTH_Jan, 0.653652403202057f, 0, 0 },
|
||||
[356] = { city_mexico_city, 2021, MONTH_Feb, 0.3617368415256383f, 0, 0 },
|
||||
[357] = { city_mexico_city, 2021, MONTH_Apr, 0.1999051783032370f, 0, 0 },
|
||||
[358] = { city_mexico_city, 2021, MONTH_Jun, 0.2234520522974474f, 0, 0 },
|
||||
[359] = { city_mexico_city, 2021, MONTH_Oct, 0.2249265703960294f, 0, 0 },
|
||||
[360] = { city_ulan_bator, 2019, MONTH_Feb, 0.0973111569162685f, 0, 0 },
|
||||
[361] = { city_ulan_bator, 2019, MONTH_Apr, 0.717625035182259f, 0, 0 },
|
||||
[362] = { city_ulan_bator, 2019, MONTH_Jun, 0.68888115436561f, 0, 0 },
|
||||
[363] = { city_ulan_bator, 2019, MONTH_Oct, 0.317598068282712f, 0, 0 },
|
||||
[364] = { city_ulan_bator, 2020, MONTH_Mar, 0.532042281420785f, 0, 0 },
|
||||
[365] = { city_ulan_bator, 2020, MONTH_May, 0.937731820508145f, 0, 0 },
|
||||
[366] = { city_ulan_bator, 2020, MONTH_Oct, 0.1507514606104898f, 0, 0 },
|
||||
[367] = { city_ulan_bator, 2020, MONTH_Dec, 0.0210516496711773f, 0, 0 },
|
||||
[368] = { city_ulan_bator, 2021, MONTH_Feb, 0.695258364407790f, 0, 0 },
|
||||
[369] = { city_ulan_bator, 2021, MONTH_Apr, 0.2133368779237394f, 0, 0 },
|
||||
[370] = { city_ulan_bator, 2021, MONTH_Jun, 0.4350453296437505f, 0, 0 },
|
||||
[371] = { city_ulan_bator, 2021, MONTH_Oct, 0.887232414698376f, 0, 0 },
|
||||
[372] = { city_rabat, 2019, MONTH_Apr, 0.4848684557100414f, 0, 0 },
|
||||
[373] = { city_rabat, 2019, MONTH_Jul, 0.830378389707985f, 0, 0 },
|
||||
[374] = { city_rabat, 2019, MONTH_Sep, 0.267946912678618f, 0, 0 },
|
||||
[375] = { city_rabat, 2020, MONTH_Jan, 0.21686208646062f, 0, 0 },
|
||||
[376] = { city_rabat, 2020, MONTH_Feb, 0.639484185249096f, 0, 0 },
|
||||
[377] = { city_rabat, 2020, MONTH_Apr, 0.795734886425641f, 0, 0 },
|
||||
[378] = { city_rabat, 2020, MONTH_Jun, 0.3544991360983855f, 0, 0 },
|
||||
[379] = { city_rabat, 2020, MONTH_Oct, 0.88478654358351f, 0, 0 },
|
||||
[380] = { city_rabat, 2021, MONTH_Feb, 0.754599832364994f, 0, 0 },
|
||||
[381] = { city_rabat, 2021, MONTH_Apr, 0.4417992899161763f, 0, 0 },
|
||||
[382] = { city_rabat, 2021, MONTH_Jun, 0.607116720946833f, 0, 0 },
|
||||
[383] = { city_rabat, 2021, MONTH_Oct, 0.358623776327881f, 0, 0 },
|
||||
[384] = { city_amsterdam, 2019, MONTH_Feb, 0.731625264443053f, 0, 0 },
|
||||
[385] = { city_amsterdam, 2019, MONTH_Apr, 0.566868738166083f, 0, 0 },
|
||||
[386] = { city_amsterdam, 2019, MONTH_Jun, 0.557667088829960f, 0, 0 },
|
||||
[387] = { city_amsterdam, 2019, MONTH_Oct, 0.4165140225359793f, 0, 0 },
|
||||
[388] = { city_amsterdam, 2020, MONTH_Mar, 0.1369118545708988f, 0, 0 },
|
||||
[389] = { city_amsterdam, 2020, MONTH_May, 0.996381145058562f, 0, 0 },
|
||||
[390] = { city_amsterdam, 2020, MONTH_Oct, 0.567884655995259f, 0, 0 },
|
||||
[391] = { city_amsterdam, 2020, MONTH_Dec, 0.3599824946665225f, 0, 0 },
|
||||
[392] = { city_amsterdam, 2021, MONTH_May, 0.3617612455991281f, 0, 0 },
|
||||
[393] = { city_amsterdam, 2021, MONTH_Aug, 0.145208263117762f, 0, 0 },
|
||||
[394] = { city_amsterdam, 2021, MONTH_Nov, 0.405925018466976f, 0, 0 },
|
||||
[395] = { city_amsterdam, 2021, MONTH_Dec, 0.466865583671862f, 0, 0 },
|
||||
[396] = { city_wellington, 2019, MONTH_Mar, 0.2399790368405242f, 0, 0 },
|
||||
[397] = { city_wellington, 2019, MONTH_May, 0.0513312639497346f, 0, 0 },
|
||||
[398] = { city_wellington, 2019, MONTH_Oct, 0.154820278468702f, 0, 0 },
|
||||
[399] = { city_wellington, 2019, MONTH_Dec, 0.342480035947826f, 0, 0 },
|
||||
[400] = { city_wellington, 2020, MONTH_Feb, 0.02270196410158653f, 0, 0 },
|
||||
[401] = { city_wellington, 2020, MONTH_Apr, 0.549977096428455f, 0, 0 },
|
||||
[402] = { city_wellington, 2020, MONTH_Jun, 0.825352479423318f, 0, 0 },
|
||||
[403] = { city_wellington, 2020, MONTH_Oct, 0.00533147733597216f, 0, 0 },
|
||||
[404] = { city_wellington, 2021, MONTH_May, 0.92165713944193f, 0, 0 },
|
||||
[405] = { city_wellington, 2021, MONTH_Aug, 0.1030939587069419f, 0, 0 },
|
||||
[406] = { city_wellington, 2021, MONTH_Nov, 0.626356522706967f, 0, 0 },
|
||||
[407] = { city_wellington, 2021, MONTH_Dec, 0.202081862772906f, 0, 0 },
|
||||
[408] = { city_managua, 2019, MONTH_Apr, 0.0558278728762413f, 0, 0 },
|
||||
[409] = { city_managua, 2019, MONTH_Jul, 0.4838275959297315f, 0, 0 },
|
||||
[410] = { city_managua, 2019, MONTH_Sep, 0.982787118880607f, 0, 0 },
|
||||
[411] = { city_managua, 2020, MONTH_Jan, 0.0001771442144287149f, 0, 0 },
|
||||
[412] = { city_managua, 2020, MONTH_Feb, 0.924958034469370f, 0, 0 },
|
||||
[413] = { city_managua, 2020, MONTH_Apr, 0.804497555444690f, 0, 0 },
|
||||
[414] = { city_managua, 2020, MONTH_Jun, 0.562726395776656f, 0, 0 },
|
||||
[415] = { city_managua, 2020, MONTH_Oct, 0.323725027619491f, 0, 0 },
|
||||
[416] = { city_managua, 2021, MONTH_Mar, 0.02044880108483926f, 0, 0 },
|
||||
[417] = { city_managua, 2021, MONTH_May, 0.890130453740734f, 0, 0 },
|
||||
[418] = { city_managua, 2021, MONTH_Oct, 0.731841044395474f, 0, 0 },
|
||||
[419] = { city_managua, 2021, MONTH_Dec, 0.884381400825929f, 0, 0 },
|
||||
[420] = { city_abuja, 2019, MONTH_May, 0.66478819034649f, 0, 0 },
|
||||
[421] = { city_abuja, 2019, MONTH_Aug, 0.3457386667673525f, 0, 0 },
|
||||
[422] = { city_abuja, 2019, MONTH_Nov, 0.092988823835393f, 0, 0 },
|
||||
[423] = { city_abuja, 2019, MONTH_Dec, 0.824262528959534f, 0, 0 },
|
||||
[424] = { city_abuja, 2020, MONTH_Apr, 0.61049766413043f, 0, 0 },
|
||||
[425] = { city_abuja, 2020, MONTH_Jul, 0.1304592836307013f, 0, 0 },
|
||||
[426] = { city_abuja, 2020, MONTH_Sep, 0.593187180006649f, 0, 0 },
|
||||
[427] = { city_abuja, 2021, MONTH_Jan, 0.876199072732621f, 0, 0 },
|
||||
[428] = { city_abuja, 2021, MONTH_Mar, 0.0329722159321588f, 0, 0 },
|
||||
[429] = { city_abuja, 2021, MONTH_May, 0.266368310626165f, 0, 0 },
|
||||
[430] = { city_abuja, 2021, MONTH_Oct, 0.475247255909794f, 0, 0 },
|
||||
[431] = { city_abuja, 2021, MONTH_Dec, 0.2181789145549840f, 0, 0 },
|
||||
[432] = { city_islamabad, 2019, MONTH_Feb, 0.689456535686944f, 0, 0 },
|
||||
[433] = { city_islamabad, 2019, MONTH_Apr, 0.0447373363978489f, 0, 0 },
|
||||
[434] = { city_islamabad, 2019, MONTH_Jun, 0.822514095879552f, 0, 0 },
|
||||
[435] = { city_islamabad, 2019, MONTH_Oct, 0.916703876449938f, 0, 0 },
|
||||
[436] = { city_islamabad, 2020, MONTH_Mar, 0.1893115617875816f, 0, 0 },
|
||||
[437] = { city_islamabad, 2020, MONTH_May, 0.86726306770825f, 0, 0 },
|
||||
[438] = { city_islamabad, 2020, MONTH_Oct, 0.905215849243983f, 0, 0 },
|
||||
[439] = { city_islamabad, 2020, MONTH_Dec, 0.254940376897477f, 0, 0 },
|
||||
[440] = { city_islamabad, 2021, MONTH_Mar, 0.281039684229208f, 0, 0 },
|
||||
[441] = { city_islamabad, 2021, MONTH_May, 0.887339106739559f, 0, 0 },
|
||||
[442] = { city_islamabad, 2021, MONTH_Oct, 0.933048865779014f, 0, 0 },
|
||||
[443] = { city_islamabad, 2021, MONTH_Dec, 0.0340736858267484f, 0, 0 },
|
||||
[444] = { city_lima, 2019, MONTH_Feb, 0.328346577769536f, 0, 0 },
|
||||
[445] = { city_lima, 2019, MONTH_Apr, 0.2756724157263651f, 0, 0 },
|
||||
[446] = { city_lima, 2019, MONTH_Jun, 0.609815087863952f, 0, 0 },
|
||||
[447] = { city_lima, 2019, MONTH_Oct, 0.782731155908874f, 0, 0 },
|
||||
[448] = { city_lima, 2020, MONTH_May, 0.000478011020313862f, 0, 0 },
|
||||
[449] = { city_lima, 2020, MONTH_Aug, 0.3235917681085961f, 0, 0 },
|
||||
[450] = { city_lima, 2020, MONTH_Nov, 0.792016455238391f, 0, 0 },
|
||||
[451] = { city_lima, 2020, MONTH_Dec, 0.0868050405329673f, 0, 0 },
|
||||
[452] = { city_lima, 2021, MONTH_Feb, 0.281555206177401f, 0, 0 },
|
||||
[453] = { city_lima, 2021, MONTH_Apr, 0.794656766555093f, 0, 0 },
|
||||
[454] = { city_lima, 2021, MONTH_Jun, 0.934873911408016f, 0, 0 },
|
||||
[455] = { city_lima, 2021, MONTH_Oct, 0.966444893770645f, 0, 0 },
|
||||
[456] = { city_bucharest, 2019, MONTH_Apr, 0.275421524025559f, 0, 0 },
|
||||
[457] = { city_bucharest, 2019, MONTH_Jul, 0.934257554721354f, 0, 0 },
|
||||
[458] = { city_bucharest, 2019, MONTH_Sep, 0.456175571716915f, 0, 0 },
|
||||
[459] = { city_bucharest, 2020, MONTH_Jan, 0.581535351702321f, 0, 0 },
|
||||
[460] = { city_bucharest, 2020, MONTH_Feb, 0.0955369623031351f, 0, 0 },
|
||||
[461] = { city_bucharest, 2020, MONTH_Apr, 0.797724127406068f, 0, 0 },
|
||||
[462] = { city_bucharest, 2020, MONTH_Jun, 0.1158114218862972f, 0, 0 },
|
||||
[463] = { city_bucharest, 2020, MONTH_Oct, 0.60936646395483f, 0, 0 },
|
||||
[464] = { city_bucharest, 2021, MONTH_May, 0.778649374817847f, 0, 0 },
|
||||
[465] = { city_bucharest, 2021, MONTH_Aug, 0.370947549484814f, 0, 0 },
|
||||
[466] = { city_bucharest, 2021, MONTH_Nov, 0.0640963197950903f, 0, 0 },
|
||||
[467] = { city_bucharest, 2021, MONTH_Dec, 0.643541163489257f, 0, 0 },
|
||||
[468] = { city_moscow, 2019, MONTH_Mar, 0.301010635427779f, 0, 0 },
|
||||
[469] = { city_moscow, 2019, MONTH_May, 0.456078321317001f, 0, 0 },
|
||||
[470] = { city_moscow, 2019, MONTH_Oct, 0.0538331203062519f, 0, 0 },
|
||||
[471] = { city_moscow, 2019, MONTH_Dec, 0.75192484013845f, 0, 0 },
|
||||
[472] = { city_moscow, 2020, MONTH_May, 0.872306088053229f, 0, 0 },
|
||||
[473] = { city_moscow, 2020, MONTH_Aug, 0.1239402065770388f, 0, 0 },
|
||||
[474] = { city_moscow, 2020, MONTH_Nov, 0.2020263441001254f, 0, 0 },
|
||||
[475] = { city_moscow, 2020, MONTH_Dec, 0.278274013412570f, 0, 0 },
|
||||
[476] = { city_moscow, 2021, MONTH_May, 0.2488571531010973f, 0, 0 },
|
||||
[477] = { city_moscow, 2021, MONTH_Aug, 0.0489617026735895f, 0, 0 },
|
||||
[478] = { city_moscow, 2021, MONTH_Nov, 0.868455790657478f, 0, 0 },
|
||||
[479] = { city_moscow, 2021, MONTH_Dec, 0.54311463810805f, 0, 0 },
|
||||
[480] = { city_belgrade, 2019, MONTH_May, 0.552246653164450f, 0, 0 },
|
||||
[481] = { city_belgrade, 2019, MONTH_Aug, 0.608445734269070f, 0, 0 },
|
||||
[482] = { city_belgrade, 2019, MONTH_Nov, 0.904417407475315f, 0, 0 },
|
||||
[483] = { city_belgrade, 2019, MONTH_Dec, 0.0706690624583042f, 0, 0 },
|
||||
[484] = { city_belgrade, 2020, MONTH_May, 0.000863732217009305f, 0, 0 },
|
||||
[485] = { city_belgrade, 2020, MONTH_Aug, 0.328824489783167f, 0, 0 },
|
||||
[486] = { city_belgrade, 2020, MONTH_Nov, 0.36976843567074f, 0, 0 },
|
||||
[487] = { city_belgrade, 2020, MONTH_Dec, 0.961964263330105f, 0, 0 },
|
||||
[488] = { city_belgrade, 2021, MONTH_Mar, 0.3057188881540604f, 0, 0 },
|
||||
[489] = { city_belgrade, 2021, MONTH_May, 0.449818470067468f, 0, 0 },
|
||||
[490] = { city_belgrade, 2021, MONTH_Oct, 0.71154904735186f, 0, 0 },
|
||||
[491] = { city_belgrade, 2021, MONTH_Dec, 0.1308593962428957f, 0, 0 },
|
||||
[492] = { city_singapore, 2019, MONTH_Feb, 0.193694292780376f, 0, 0 },
|
||||
[493] = { city_singapore, 2019, MONTH_Apr, 0.318702929890905f, 0, 0 },
|
||||
[494] = { city_singapore, 2019, MONTH_Jun, 0.645215799082995f, 0, 0 },
|
||||
[495] = { city_singapore, 2019, MONTH_Oct, 0.591187969918129f, 0, 0 },
|
||||
[496] = { city_singapore, 2020, MONTH_May, 0.699396534256987f, 0, 0 },
|
||||
[497] = { city_singapore, 2020, MONTH_Aug, 0.2780977621387803f, 0, 0 },
|
||||
[498] = { city_singapore, 2020, MONTH_Nov, 0.455489668769613f, 0, 0 },
|
||||
[499] = { city_singapore, 2020, MONTH_Dec, 0.724372367679592f, 0, 0 },
|
||||
[500] = { city_singapore, 2021, MONTH_Apr, 0.0229979967292621f, 0, 0 },
|
||||
[501] = { city_singapore, 2021, MONTH_Jul, 0.0249669479037042f, 0, 0 },
|
||||
[502] = { city_singapore, 2021, MONTH_Sep, 0.879108640287500f, 0, 0 },
|
||||
[503] = { city_singapore, 2022, MONTH_Jan, 0.612089991020752f, 0, 0 },
|
||||
[504] = { city_seoul, 2019, MONTH_May, 0.277150821785431f, 0, 0 },
|
||||
[505] = { city_seoul, 2019, MONTH_Aug, 0.3348478329043680f, 0, 0 },
|
||||
[506] = { city_seoul, 2019, MONTH_Nov, 0.4503487807607835f, 0, 0 },
|
||||
[507] = { city_seoul, 2019, MONTH_Dec, 0.2103442020665882f, 0, 0 },
|
||||
[508] = { city_seoul, 2020, MONTH_May, 0.3640140905380354f, 0, 0 },
|
||||
[509] = { city_seoul, 2020, MONTH_Aug, 0.706729161499808f, 0, 0 },
|
||||
[510] = { city_seoul, 2020, MONTH_Nov, 0.885612236808133f, 0, 0 },
|
||||
[511] = { city_seoul, 2020, MONTH_Dec, 0.519775809368071f, 0, 0 },
|
||||
[512] = { city_seoul, 2021, MONTH_Apr, 0.732835881732319f, 0, 0 },
|
||||
[513] = { city_seoul, 2021, MONTH_Jul, 0.903712712868978f, 0, 0 },
|
||||
[514] = { city_seoul, 2021, MONTH_Sep, 0.579911957881779f, 0, 0 },
|
||||
[515] = { city_seoul, 2022, MONTH_Jan, 0.523793425841401f, 0, 0 },
|
||||
[516] = { city_tunis, 2019, MONTH_Mar, 0.0982735360423472f, 0, 0 },
|
||||
[517] = { city_tunis, 2019, MONTH_May, 0.2783517128913841f, 0, 0 },
|
||||
[518] = { city_tunis, 2019, MONTH_Oct, 0.0179865221608522f, 0, 0 },
|
||||
[519] = { city_tunis, 2019, MONTH_Dec, 0.594911360748928f, 0, 0 },
|
||||
[520] = { city_tunis, 2020, MONTH_Mar, 0.4492429946395797f, 0, 0 },
|
||||
[521] = { city_tunis, 2020, MONTH_May, 0.285860802759041f, 0, 0 },
|
||||
[522] = { city_tunis, 2020, MONTH_Oct, 0.532021890496857f, 0, 0 },
|
||||
[523] = { city_tunis, 2020, MONTH_Dec, 0.664899909160940f, 0, 0 },
|
||||
[524] = { city_tunis, 2021, MONTH_Apr, 0.373665071634036f, 0, 0 },
|
||||
[525] = { city_tunis, 2021, MONTH_Jul, 0.965776337366f, 0, 0 },
|
||||
[526] = { city_tunis, 2021, MONTH_Sep, 0.659560620156704f, 0, 0 },
|
||||
[527] = { city_tunis, 2022, MONTH_Jan, 0.624321203896919f, 0, 0 },
|
||||
[528] = { city_bangkok, 2019, MONTH_Feb, 0.257845660876937f, 0, 0 },
|
||||
[529] = { city_bangkok, 2019, MONTH_Apr, 0.224888541670249f, 0, 0 },
|
||||
[530] = { city_bangkok, 2019, MONTH_Jun, 0.619847391242953f, 0, 0 },
|
||||
[531] = { city_bangkok, 2019, MONTH_Oct, 0.850551515098475f, 0, 0 },
|
||||
[532] = { city_bangkok, 2020, MONTH_Feb, 0.911861784979914f, 0, 0 },
|
||||
[533] = { city_bangkok, 2020, MONTH_Apr, 0.854345367132697f, 0, 0 },
|
||||
[534] = { city_bangkok, 2020, MONTH_Jun, 0.976580885030065f, 0, 0 },
|
||||
[535] = { city_bangkok, 2020, MONTH_Oct, 0.515880023341469f, 0, 0 },
|
||||
[536] = { city_bangkok, 2021, MONTH_Apr, 0.05074702972151967f, 0, 0 },
|
||||
[537] = { city_bangkok, 2021, MONTH_Jul, 0.4253267917878572f, 0, 0 },
|
||||
[538] = { city_bangkok, 2021, MONTH_Sep, 0.915287731012829f, 0, 0 },
|
||||
[539] = { city_bangkok, 2022, MONTH_Jan, 0.258306431399695f, 0, 0 },
|
||||
[540] = { city_washington_dc, 2019, MONTH_May, 0.643359616915746f, 0, 0 },
|
||||
[541] = { city_washington_dc, 2019, MONTH_Aug, 0.370206005261732f, 0, 0 },
|
||||
[542] = { city_washington_dc, 2019, MONTH_Nov, 0.0623440040458129f, 0, 0 },
|
||||
[543] = { city_washington_dc, 2019, MONTH_Dec, 0.816457481734427f, 0, 0 },
|
||||
[544] = { city_washington_dc, 2020, MONTH_May, 0.538708625763008f, 0, 0 },
|
||||
[545] = { city_washington_dc, 2020, MONTH_Aug, 0.650384533924187f, 0, 0 },
|
||||
[546] = { city_washington_dc, 2020, MONTH_Nov, 0.116951545075829f, 0, 0 },
|
||||
[547] = { city_washington_dc, 2020, MONTH_Dec, 0.148219641272978f, 0, 0 },
|
||||
[548] = { city_washington_dc, 2021, MONTH_Apr, 0.02100655560513664f, 0, 0 },
|
||||
[549] = { city_washington_dc, 2021, MONTH_Jul, 0.871980590290593f, 0, 0 },
|
||||
[550] = { city_washington_dc, 2021, MONTH_Sep, 0.282318232339043f, 0, 0 },
|
||||
[551] = { city_washington_dc, 2022, MONTH_Jan, 0.805829276934675f, 0, 0 },
|
||||
[552] = { city_hanoi, 2019, MONTH_May, 0.41659113260472f, 0, 0 },
|
||||
[553] = { city_hanoi, 2019, MONTH_Aug, 0.1152641995827389f, 0, 0 },
|
||||
[554] = { city_hanoi, 2019, MONTH_Nov, 0.360035965294691f, 0, 0 },
|
||||
[555] = { city_hanoi, 2019, MONTH_Dec, 0.784196077332438f, 0, 0 },
|
||||
[556] = { city_hanoi, 2020, MONTH_May, 0.761414062564656f, 0, 0 },
|
||||
[557] = { city_hanoi, 2020, MONTH_Aug, 0.972249586627066f, 0, 0 },
|
||||
[558] = { city_hanoi, 2020, MONTH_Nov, 0.477242926987743f, 0, 0 },
|
||||
[559] = { city_hanoi, 2020, MONTH_Dec, 0.548426649668160f, 0, 0 },
|
||||
[560] = { city_hanoi, 2021, MONTH_May, 0.548248192976479f, 0, 0 },
|
||||
[561] = { city_hanoi, 2021, MONTH_Aug, 0.591016543120125f, 0, 0 },
|
||||
[562] = { city_hanoi, 2021, MONTH_Nov, 0.788317457936361f, 0, 0 },
|
||||
[563] = { city_hanoi, 2021, MONTH_Dec, 0.800132571339982f, 0, 0 },
|
||||
[564] = { city_harare, 2019, MONTH_Mar, 0.729786759502753f, 0, 0 },
|
||||
[565] = { city_harare, 2019, MONTH_May, 0.907286585478762f, 0, 0 },
|
||||
[566] = { city_harare, 2019, MONTH_Oct, 0.750261430981712f, 0, 0 },
|
||||
[567] = { city_harare, 2019, MONTH_Dec, 0.493438071814215f, 0, 0 },
|
||||
[568] = { city_harare, 2020, MONTH_Feb, 0.65132695252707f, 0, 0 },
|
||||
[569] = { city_harare, 2020, MONTH_Apr, 0.674409513858446f, 0, 0 },
|
||||
[570] = { city_harare, 2020, MONTH_Jun, 0.613534154048466f, 0, 0 },
|
||||
[571] = { city_harare, 2020, MONTH_Oct, 0.332698486042969f, 0, 0 },
|
||||
[572] = { city_harare, 2021, MONTH_Apr, 0.326843377521804f, 0, 0 },
|
||||
[573] = { city_harare, 2021, MONTH_Jul, 0.95259836088787f, 0, 0 },
|
||||
[574] = { city_harare, 2021, MONTH_Sep, 0.634598307047354f, 0, 0 },
|
||||
[575] = { city_harare, 2022, MONTH_Jan, 0.970130180099394f, 0, 0 },
|
||||
[576] = { city_ankara, 2019, MONTH_Feb, 0.1067739057302146f, 0, 0 },
|
||||
[577] = { city_ankara, 2019, MONTH_Apr, 0.636578294822275f, 0, 0 },
|
||||
[578] = { city_ankara, 2019, MONTH_Jun, 0.1065001987771908f, 0, 0 },
|
||||
[579] = { city_ankara, 2019, MONTH_Oct, 0.395046230673565f, 0, 0 },
|
||||
[580] = { city_ankara, 2020, MONTH_May, 0.516626872063971f, 0, 0 },
|
||||
[581] = { city_ankara, 2020, MONTH_Aug, 0.707711604441861f, 0, 0 },
|
||||
[582] = { city_ankara, 2020, MONTH_Nov, 0.492978525577345f, 0, 0 },
|
||||
[583] = { city_ankara, 2020, MONTH_Dec, 0.417615483179953f, 0, 0 },
|
||||
[584] = { city_ankara, 2021, MONTH_Mar, 0.3916401752130632f, 0, 0 },
|
||||
[585] = { city_ankara, 2021, MONTH_May, 0.642573767822410f, 0, 0 },
|
||||
[586] = { city_ankara, 2021, MONTH_Oct, 0.2332685344442790f, 0, 0 },
|
||||
[587] = { city_ankara, 2021, MONTH_Dec, 0.348302140835808f, 0, 0 },
|
||||
};
|
||||
global u32 test_data_len = sizeof(test_data) / sizeof(test_data[0]);
|
|
@ -0,0 +1,588 @@
|
|||
0,city_kiev,2019,MONTH_Mar,0.8208904644894152
|
||||
1,city_kiev,2019,MONTH_May,0.560734073251748
|
||||
2,city_kiev,2019,MONTH_Oct,0.6374267513460055
|
||||
3,city_kiev,2019,MONTH_Dec,0.808628906405562
|
||||
4,city_kiev,2020,MONTH_Apr,0.5930763917923403
|
||||
5,city_kiev,2020,MONTH_Jul,0.8580149759139355
|
||||
6,city_kiev,2020,MONTH_Sep,0.1797655715379879
|
||||
7,city_kiev,2021,MONTH_Jan,0.2632534693864327
|
||||
8,city_kiev,2021,MONTH_Mar,0.8414969999187483
|
||||
9,city_kiev,2021,MONTH_May,0.5374924169034345
|
||||
10,city_kiev,2021,MONTH_Oct,0.4069815620754663
|
||||
11,city_kiev,2021,MONTH_Dec,0.767921059845557
|
||||
12,city_buenos_aires,2019,MONTH_Mar,0.8774591161262479
|
||||
13,city_buenos_aires,2019,MONTH_May,0.20624465389973745
|
||||
14,city_buenos_aires,2019,MONTH_Oct,0.9847976477350923
|
||||
15,city_buenos_aires,2019,MONTH_Dec,0.06729540587017169
|
||||
16,city_buenos_aires,2020,MONTH_Apr,0.8985765810829179
|
||||
17,city_buenos_aires,2020,MONTH_Jul,0.8147416450345571
|
||||
18,city_buenos_aires,2020,MONTH_Sep,0.39419316092894296
|
||||
19,city_buenos_aires,2021,MONTH_Jan,0.2844815741140395
|
||||
20,city_buenos_aires,2021,MONTH_Mar,0.9929587462564623
|
||||
21,city_buenos_aires,2021,MONTH_May,0.1550649172505355
|
||||
22,city_buenos_aires,2021,MONTH_Oct,0.6522096246196023
|
||||
23,city_buenos_aires,2021,MONTH_Dec,0.7408605917514841
|
||||
24,city_canberra,2019,MONTH_May,0.13386899374995143
|
||||
25,city_canberra,2019,MONTH_Aug,0.01251845204640567
|
||||
26,city_canberra,2019,MONTH_Nov,0.31069477884938224
|
||||
27,city_canberra,2019,MONTH_Dec,0.6144432795767782
|
||||
28,city_canberra,2020,MONTH_Apr,0.38215052324569254
|
||||
29,city_canberra,2020,MONTH_Jul,0.49258667615249774
|
||||
30,city_canberra,2020,MONTH_Sep,0.014024575946441353
|
||||
31,city_canberra,2021,MONTH_Jan,0.6302469024538054
|
||||
32,city_canberra,2021,MONTH_Mar,0.6657411558237325
|
||||
33,city_canberra,2021,MONTH_May,0.6375153743649629
|
||||
34,city_canberra,2021,MONTH_Oct,0.4355080346524989
|
||||
35,city_canberra,2021,MONTH_Dec,0.7842671017087504
|
||||
36,city_yerevan,2019,MONTH_Feb,0.2224804342202128
|
||||
37,city_yerevan,2019,MONTH_Apr,0.40295435638966803
|
||||
38,city_yerevan,2019,MONTH_Jun,0.00841304129117737
|
||||
39,city_yerevan,2019,MONTH_Oct,0.49353338935245084
|
||||
40,city_yerevan,2020,MONTH_Mar,0.7956088092430287
|
||||
41,city_yerevan,2020,MONTH_May,0.8718522813330138
|
||||
42,city_yerevan,2020,MONTH_Oct,0.7578502696544491
|
||||
43,city_yerevan,2020,MONTH_Dec,0.3059739437150092
|
||||
44,city_yerevan,2021,MONTH_Mar,0.5751057083330098
|
||||
45,city_yerevan,2021,MONTH_May,0.32415650181804556
|
||||
46,city_yerevan,2021,MONTH_Oct,0.13919376564116737
|
||||
47,city_yerevan,2021,MONTH_Dec,0.4082901290089086
|
||||
48,city_bishkek,2019,MONTH_Feb,0.8545389644898143
|
||||
49,city_bishkek,2019,MONTH_Apr,0.8679714734156914
|
||||
50,city_bishkek,2019,MONTH_Jun,0.9793901564982332
|
||||
51,city_bishkek,2019,MONTH_Oct,0.8289790309876645
|
||||
52,city_bishkek,2020,MONTH_Apr,0.1458951287005129
|
||||
53,city_bishkek,2020,MONTH_Jul,0.8034467113679751
|
||||
54,city_bishkek,2020,MONTH_Sep,0.34789595434452725
|
||||
55,city_bishkek,2021,MONTH_Jan,0.07184230396111713
|
||||
56,city_bishkek,2021,MONTH_Mar,0.7836073496687682
|
||||
57,city_bishkek,2021,MONTH_May,0.7217500839378747
|
||||
58,city_bishkek,2021,MONTH_Oct,0.28313109637712275
|
||||
59,city_bishkek,2021,MONTH_Dec,0.1071367737747645
|
||||
60,city_dhaka,2019,MONTH_Mar,0.6964870450822525
|
||||
61,city_dhaka,2019,MONTH_May,0.9268741946156642
|
||||
62,city_dhaka,2019,MONTH_Oct,0.0657847048182576
|
||||
63,city_dhaka,2019,MONTH_Dec,0.2679787325156153
|
||||
64,city_dhaka,2020,MONTH_Feb,0.7415948996627278
|
||||
65,city_dhaka,2020,MONTH_Apr,0.8887928797784511
|
||||
66,city_dhaka,2020,MONTH_Jun,0.9526160257787081
|
||||
67,city_dhaka,2020,MONTH_Oct,0.5394245399621023
|
||||
68,city_dhaka,2021,MONTH_Feb,0.7832918710573495
|
||||
69,city_dhaka,2021,MONTH_Apr,0.16703003479420253
|
||||
70,city_dhaka,2021,MONTH_Jun,0.9160800358967391
|
||||
71,city_dhaka,2021,MONTH_Oct,0.045576519669261906
|
||||
72,city_sucre,2019,MONTH_Feb,0.9057953843385798
|
||||
73,city_sucre,2019,MONTH_Apr,0.048949252273037924
|
||||
74,city_sucre,2019,MONTH_Jun,0.39748267526958336
|
||||
75,city_sucre,2019,MONTH_Oct,0.32402533613913065
|
||||
76,city_sucre,2020,MONTH_Feb,0.2555061186834925
|
||||
77,city_sucre,2020,MONTH_Apr,0.6834698453947482
|
||||
78,city_sucre,2020,MONTH_Jun,0.08607874887258926
|
||||
79,city_sucre,2020,MONTH_Oct,0.4802000825511048
|
||||
80,city_sucre,2021,MONTH_Apr,0.9333881101247026
|
||||
81,city_sucre,2021,MONTH_Jul,0.8260557264582842
|
||||
82,city_sucre,2021,MONTH_Sep,0.6558618586863463
|
||||
83,city_sucre,2022,MONTH_Jan,0.9951355772306388
|
||||
84,city_brasilia,2019,MONTH_Apr,0.9343497529635403
|
||||
85,city_brasilia,2019,MONTH_Jul,0.5570852230328219
|
||||
86,city_brasilia,2019,MONTH_Sep,0.2242530147430456
|
||||
87,city_brasilia,2020,MONTH_Jan,0.37927683595779194
|
||||
88,city_brasilia,2020,MONTH_Feb,0.1345707686817872
|
||||
89,city_brasilia,2020,MONTH_Apr,0.29826624893861653
|
||||
90,city_brasilia,2020,MONTH_Jun,0.8471161140155271
|
||||
91,city_brasilia,2020,MONTH_Oct,0.7106683451334669
|
||||
92,city_brasilia,2021,MONTH_Apr,0.8821305385207572
|
||||
93,city_brasilia,2021,MONTH_Jul,0.6341264853965499
|
||||
94,city_brasilia,2021,MONTH_Sep,0.8793042884983516
|
||||
95,city_brasilia,2022,MONTH_Jan,0.3678368890456808
|
||||
96,city_ottawa,2019,MONTH_Feb,0.46446610262374566
|
||||
97,city_ottawa,2019,MONTH_Apr,0.270441763178759
|
||||
98,city_ottawa,2019,MONTH_Jun,0.785020644703367
|
||||
99,city_ottawa,2019,MONTH_Oct,0.4397878896865377
|
||||
100,city_ottawa,2020,MONTH_Mar,0.6250700533476734
|
||||
101,city_ottawa,2020,MONTH_May,0.8543918093977015
|
||||
102,city_ottawa,2020,MONTH_Oct,0.10924765266094849
|
||||
103,city_ottawa,2020,MONTH_Dec,0.06989308957770357
|
||||
104,city_ottawa,2021,MONTH_May,0.02192228695177112
|
||||
105,city_ottawa,2021,MONTH_Aug,0.31180470130290383
|
||||
106,city_ottawa,2021,MONTH_Nov,0.8009641310226249
|
||||
107,city_ottawa,2021,MONTH_Dec,0.8939282034537013
|
||||
108,city_santiago,2019,MONTH_Feb,0.2604066622789484
|
||||
109,city_santiago,2019,MONTH_Apr,0.04408219650514589
|
||||
110,city_santiago,2019,MONTH_Jun,0.033700853867721814
|
||||
111,city_santiago,2019,MONTH_Oct,0.07020014506385863
|
||||
112,city_santiago,2020,MONTH_Mar,0.669167062800284
|
||||
113,city_santiago,2020,MONTH_May,0.3946672417327506
|
||||
114,city_santiago,2020,MONTH_Oct,0.96961707780403
|
||||
115,city_santiago,2020,MONTH_Dec,0.6926699539539745
|
||||
116,city_santiago,2021,MONTH_Feb,0.8855788170714998
|
||||
117,city_santiago,2021,MONTH_Apr,0.022485852743379775
|
||||
118,city_santiago,2021,MONTH_Jun,0.016611682837006425
|
||||
119,city_santiago,2021,MONTH_Oct,0.7388064669432675
|
||||
120,city_beijing,2019,MONTH_Mar,0.3984649808928382
|
||||
121,city_beijing,2019,MONTH_May,0.5516481646386852
|
||||
122,city_beijing,2019,MONTH_Oct,0.0212362107359646
|
||||
123,city_beijing,2019,MONTH_Dec,0.23392793545990853
|
||||
124,city_beijing,2020,MONTH_Mar,0.8976580542276967
|
||||
125,city_beijing,2020,MONTH_May,0.5125178728872494
|
||||
126,city_beijing,2020,MONTH_Oct,0.09885903925252493
|
||||
127,city_beijing,2020,MONTH_Dec,0.996158072334728
|
||||
128,city_beijing,2021,MONTH_May,0.3910244510687829
|
||||
129,city_beijing,2021,MONTH_Aug,0.5919057621735655
|
||||
130,city_beijing,2021,MONTH_Nov,0.22830963063642795
|
||||
131,city_beijing,2021,MONTH_Dec,0.8218119255978358
|
||||
132,city_bogota,2019,MONTH_Feb,0.040559618555634946
|
||||
133,city_bogota,2019,MONTH_Apr,0.6697544946555136
|
||||
134,city_bogota,2019,MONTH_Jun,0.7012648347686247
|
||||
135,city_bogota,2019,MONTH_Oct,0.9266430067995907
|
||||
136,city_bogota,2020,MONTH_May,0.9265350964858453
|
||||
137,city_bogota,2020,MONTH_Aug,0.5622719648324987
|
||||
138,city_bogota,2020,MONTH_Nov,0.18505076213184524
|
||||
139,city_bogota,2020,MONTH_Dec,0.13200979435040983
|
||||
140,city_bogota,2021,MONTH_Apr,0.25492724368701236
|
||||
141,city_bogota,2021,MONTH_Jul,0.6551881370411056
|
||||
142,city_bogota,2021,MONTH_Sep,0.3301507156757937
|
||||
143,city_bogota,2022,MONTH_Jan,0.9319825381469947
|
||||
144,city_nicosia,2019,MONTH_Feb,0.8112536780481092
|
||||
145,city_nicosia,2019,MONTH_Apr,0.7122242228197432
|
||||
146,city_nicosia,2019,MONTH_Jun,0.3992731724465637
|
||||
147,city_nicosia,2019,MONTH_Oct,0.0560925034296097
|
||||
148,city_nicosia,2020,MONTH_Mar,0.605635873827316
|
||||
149,city_nicosia,2020,MONTH_May,0.8155285147048078
|
||||
150,city_nicosia,2020,MONTH_Oct,0.7283140343929381
|
||||
151,city_nicosia,2020,MONTH_Dec,0.1593773388870281
|
||||
152,city_nicosia,2021,MONTH_May,0.5330985723420278
|
||||
153,city_nicosia,2021,MONTH_Aug,0.46643412774693715
|
||||
154,city_nicosia,2021,MONTH_Nov,0.7302379618035622
|
||||
155,city_nicosia,2021,MONTH_Dec,0.5971774259867612
|
||||
156,city_quito,2019,MONTH_May,0.39005009418535863
|
||||
157,city_quito,2019,MONTH_Aug,0.9025102526506403
|
||||
158,city_quito,2019,MONTH_Nov,0.507479232033487
|
||||
159,city_quito,2019,MONTH_Dec,0.5046753623312223
|
||||
160,city_quito,2020,MONTH_Mar,0.8932394343266225
|
||||
161,city_quito,2020,MONTH_May,0.19722367870643642
|
||||
162,city_quito,2020,MONTH_Oct,0.4616243916670646
|
||||
163,city_quito,2020,MONTH_Dec,0.22929952610965976
|
||||
164,city_quito,2021,MONTH_Apr,0.675839552639689
|
||||
165,city_quito,2021,MONTH_Jul,0.7522737622328722
|
||||
166,city_quito,2021,MONTH_Sep,0.7547694762384426
|
||||
167,city_quito,2022,MONTH_Jan,0.5224768718138563
|
||||
168,city_cairo,2019,MONTH_Apr,0.12251978169018596
|
||||
169,city_cairo,2019,MONTH_Jul,0.640214441842041
|
||||
170,city_cairo,2019,MONTH_Sep,0.11292283290324012
|
||||
171,city_cairo,2020,MONTH_Jan,0.443793309914693
|
||||
172,city_cairo,2020,MONTH_May,0.3695331911519818
|
||||
173,city_cairo,2020,MONTH_Aug,0.0875719219910186
|
||||
174,city_cairo,2020,MONTH_Nov,0.1300237622828465
|
||||
175,city_cairo,2020,MONTH_Dec,0.6190802409945482
|
||||
176,city_cairo,2021,MONTH_May,0.2654316735327361
|
||||
177,city_cairo,2021,MONTH_Aug,0.08380868314075796
|
||||
178,city_cairo,2021,MONTH_Nov,0.0021753600424576636
|
||||
179,city_cairo,2021,MONTH_Dec,0.3427143851789648
|
||||
180,city_addis_ababa,2019,MONTH_Feb,0.5274830002683538
|
||||
181,city_addis_ababa,2019,MONTH_Apr,0.028601788414122087
|
||||
182,city_addis_ababa,2019,MONTH_Jun,0.22406045632190197
|
||||
183,city_addis_ababa,2019,MONTH_Oct,0.1570840093379693
|
||||
184,city_addis_ababa,2020,MONTH_Apr,0.4696975980332939
|
||||
185,city_addis_ababa,2020,MONTH_Jul,0.7018912168460542
|
||||
186,city_addis_ababa,2020,MONTH_Sep,0.6707188950806201
|
||||
187,city_addis_ababa,2021,MONTH_Jan,0.22223531255669327
|
||||
188,city_addis_ababa,2021,MONTH_Mar,0.7397846957044468
|
||||
189,city_addis_ababa,2021,MONTH_May,0.2963331880851181
|
||||
190,city_addis_ababa,2021,MONTH_Oct,0.22720267945089334
|
||||
191,city_addis_ababa,2021,MONTH_Dec,0.974100472469575
|
||||
192,city_berlin,2019,MONTH_May,0.9663306486026292
|
||||
193,city_berlin,2019,MONTH_Aug,0.01762058526956345
|
||||
194,city_berlin,2019,MONTH_Nov,0.5845476680327896
|
||||
195,city_berlin,2019,MONTH_Dec,0.05267359388143655
|
||||
196,city_berlin,2020,MONTH_Feb,0.002912080115626603
|
||||
197,city_berlin,2020,MONTH_Apr,0.461618898119614
|
||||
198,city_berlin,2020,MONTH_Jun,0.9187177319896965
|
||||
199,city_berlin,2020,MONTH_Oct,0.5269226682934646
|
||||
200,city_berlin,2021,MONTH_Feb,0.4075331475357029
|
||||
201,city_berlin,2021,MONTH_Apr,0.2606312545694286
|
||||
202,city_berlin,2021,MONTH_Jun,0.8506910998631624
|
||||
203,city_berlin,2021,MONTH_Oct,0.4477453626196978
|
||||
204,city_athens,2019,MONTH_Apr,0.4758101962785981
|
||||
205,city_athens,2019,MONTH_Jul,0.7273511637085998
|
||||
206,city_athens,2019,MONTH_Sep,0.11734674091437469
|
||||
207,city_athens,2020,MONTH_Jan,0.7011339146700339
|
||||
208,city_athens,2020,MONTH_May,0.5021874710835791
|
||||
209,city_athens,2020,MONTH_Aug,0.7224696530590028
|
||||
210,city_athens,2020,MONTH_Nov,0.07057044368715926
|
||||
211,city_athens,2020,MONTH_Dec,0.4122021872654802
|
||||
212,city_athens,2021,MONTH_Apr,0.7895293746783079
|
||||
213,city_athens,2021,MONTH_Jul,0.42630517679620317
|
||||
214,city_athens,2021,MONTH_Sep,0.4220148157231979
|
||||
215,city_athens,2022,MONTH_Jan,0.07930894159509938
|
||||
216,city_guatemala_city,2019,MONTH_Feb,0.5606053808546305
|
||||
217,city_guatemala_city,2019,MONTH_Apr,0.33825266811210186
|
||||
218,city_guatemala_city,2019,MONTH_Jun,0.3958121309669401
|
||||
219,city_guatemala_city,2019,MONTH_Oct,0.8123276948852205
|
||||
220,city_guatemala_city,2020,MONTH_May,0.6546106461958394
|
||||
221,city_guatemala_city,2020,MONTH_Aug,0.3656038852091794
|
||||
222,city_guatemala_city,2020,MONTH_Nov,0.2991555036870628
|
||||
223,city_guatemala_city,2020,MONTH_Dec,0.1841388365131713
|
||||
224,city_guatemala_city,2021,MONTH_Mar,0.7049763199759551
|
||||
225,city_guatemala_city,2021,MONTH_May,0.03619294914439686
|
||||
226,city_guatemala_city,2021,MONTH_Oct,0.641970219489322
|
||||
227,city_guatemala_city,2021,MONTH_Dec,0.7290144352251158
|
||||
228,city_jakarta,2019,MONTH_May,0.48730648880158967
|
||||
229,city_jakarta,2019,MONTH_Aug,0.13324811999375974
|
||||
230,city_jakarta,2019,MONTH_Nov,0.7457459498265384
|
||||
231,city_jakarta,2019,MONTH_Dec,0.6770615920087426
|
||||
232,city_jakarta,2020,MONTH_Feb,0.0972221706377665
|
||||
233,city_jakarta,2020,MONTH_Apr,0.4548133647241398
|
||||
234,city_jakarta,2020,MONTH_Jun,0.5990306990429254
|
||||
235,city_jakarta,2020,MONTH_Oct,0.46254435882852785
|
||||
236,city_jakarta,2021,MONTH_Feb,0.4877541089570895
|
||||
237,city_jakarta,2021,MONTH_Apr,0.3176272110731281
|
||||
238,city_jakarta,2021,MONTH_Jun,0.46016498959627317
|
||||
239,city_jakarta,2021,MONTH_Oct,0.8195183115041934
|
||||
240,city_tehran,2019,MONTH_Apr,0.3018613336723692
|
||||
241,city_tehran,2019,MONTH_Jul,0.6904442096458521
|
||||
242,city_tehran,2019,MONTH_Sep,0.44041453753801474
|
||||
243,city_tehran,2020,MONTH_Jan,0.5122166734476404
|
||||
244,city_tehran,2020,MONTH_Mar,0.4048771020719195
|
||||
245,city_tehran,2020,MONTH_May,0.04251315267732536
|
||||
246,city_tehran,2020,MONTH_Oct,0.25935369695061494
|
||||
247,city_tehran,2020,MONTH_Dec,0.7838900287619984
|
||||
248,city_tehran,2021,MONTH_Mar,0.949263546042006
|
||||
249,city_tehran,2021,MONTH_May,0.05690727846201249
|
||||
250,city_tehran,2021,MONTH_Oct,0.5775680944871373
|
||||
251,city_tehran,2021,MONTH_Dec,0.6189061878508625
|
||||
252,city_baghdad,2019,MONTH_Mar,0.20410987826326765
|
||||
253,city_baghdad,2019,MONTH_May,0.4184107416408793
|
||||
254,city_baghdad,2019,MONTH_Oct,0.40451138082476246
|
||||
255,city_baghdad,2019,MONTH_Dec,0.09350363172641074
|
||||
256,city_baghdad,2020,MONTH_May,0.8813880636872825
|
||||
257,city_baghdad,2020,MONTH_Aug,0.5428448381939682
|
||||
258,city_baghdad,2020,MONTH_Nov,0.9196449942226893
|
||||
259,city_baghdad,2020,MONTH_Dec,0.40125352418748994
|
||||
260,city_baghdad,2021,MONTH_Feb,0.33369599729325594
|
||||
261,city_baghdad,2021,MONTH_Apr,0.17961977212424662
|
||||
262,city_baghdad,2021,MONTH_Jun,0.8287427670166482
|
||||
263,city_baghdad,2021,MONTH_Oct,0.18435480122550651
|
||||
264,city_tokyo,2019,MONTH_May,0.1558911089926377
|
||||
265,city_tokyo,2019,MONTH_Aug,0.7103297441558276
|
||||
266,city_tokyo,2019,MONTH_Nov,0.7670372958998607
|
||||
267,city_tokyo,2019,MONTH_Dec,0.34552140914704765
|
||||
268,city_tokyo,2020,MONTH_Feb,0.34744339811029146
|
||||
269,city_tokyo,2020,MONTH_Apr,0.9456312160307011
|
||||
270,city_tokyo,2020,MONTH_Jun,0.6966696315201248
|
||||
271,city_tokyo,2020,MONTH_Oct,0.7221513702811281
|
||||
272,city_tokyo,2021,MONTH_Apr,0.1247446921008375
|
||||
273,city_tokyo,2021,MONTH_Jul,0.7802487336558712
|
||||
274,city_tokyo,2021,MONTH_Sep,0.8026525028301382
|
||||
275,city_tokyo,2022,MONTH_Jan,0.19500309318308984
|
||||
276,city_amman,2019,MONTH_Apr,0.9135647763017481
|
||||
277,city_amman,2019,MONTH_Jul,0.519959651824404
|
||||
278,city_amman,2019,MONTH_Sep,0.07349623710797859
|
||||
279,city_amman,2020,MONTH_Jan,0.8209280523427239
|
||||
280,city_amman,2020,MONTH_Feb,0.8580494733125601
|
||||
281,city_amman,2020,MONTH_Apr,0.4722288209752745
|
||||
282,city_amman,2020,MONTH_Jun,0.8594503298528673
|
||||
283,city_amman,2020,MONTH_Oct,0.7343971570872213
|
||||
284,city_amman,2021,MONTH_Feb,0.4715316911875882
|
||||
285,city_amman,2021,MONTH_Apr,0.746664117982623
|
||||
286,city_amman,2021,MONTH_Jun,0.04497553004647725
|
||||
287,city_amman,2021,MONTH_Oct,0.9897280982388877
|
||||
288,city_nairobi,2019,MONTH_May,0.3532584699087581
|
||||
289,city_nairobi,2019,MONTH_Aug,0.6372658032245778
|
||||
290,city_nairobi,2019,MONTH_Nov,0.6529632981666209
|
||||
291,city_nairobi,2019,MONTH_Dec,0.9801366674005787
|
||||
292,city_nairobi,2020,MONTH_May,0.11232544995237859
|
||||
293,city_nairobi,2020,MONTH_Aug,0.6363406749343267
|
||||
294,city_nairobi,2020,MONTH_Nov,0.4572050517602766
|
||||
295,city_nairobi,2020,MONTH_Dec,0.5016838053742663
|
||||
296,city_nairobi,2021,MONTH_May,0.2871335451015594
|
||||
297,city_nairobi,2021,MONTH_Aug,0.6134863745452062
|
||||
298,city_nairobi,2021,MONTH_Nov,0.6646687928232157
|
||||
299,city_nairobi,2021,MONTH_Dec,0.4604603108510942
|
||||
300,city_beirut,2019,MONTH_May,0.20657079280157575
|
||||
301,city_beirut,2019,MONTH_Aug,0.08060512516532647
|
||||
302,city_beirut,2019,MONTH_Nov,0.3121758077040654
|
||||
303,city_beirut,2019,MONTH_Dec,0.5704450329632651
|
||||
304,city_beirut,2020,MONTH_May,0.49711298135083226
|
||||
305,city_beirut,2020,MONTH_Aug,0.2651799515773383
|
||||
306,city_beirut,2020,MONTH_Nov,0.37582969737955385
|
||||
307,city_beirut,2020,MONTH_Dec,0.23214191453836386
|
||||
308,city_beirut,2021,MONTH_Feb,0.9769205528039658
|
||||
309,city_beirut,2021,MONTH_Apr,0.5714471639055412
|
||||
310,city_beirut,2021,MONTH_Jun,0.7866510539409003
|
||||
311,city_beirut,2021,MONTH_Oct,0.10968686507430592
|
||||
312,city_tripoli,2019,MONTH_Apr,0.3459256866028718
|
||||
313,city_tripoli,2019,MONTH_Jul,0.8762903773435768
|
||||
314,city_tripoli,2019,MONTH_Sep,0.7902752440774569
|
||||
315,city_tripoli,2020,MONTH_Jan,0.39655891397903786
|
||||
316,city_tripoli,2020,MONTH_Mar,0.2853487707159261
|
||||
317,city_tripoli,2020,MONTH_May,0.4963336260125154
|
||||
318,city_tripoli,2020,MONTH_Oct,0.017927444716766217
|
||||
319,city_tripoli,2020,MONTH_Dec,0.49479276214492607
|
||||
320,city_tripoli,2021,MONTH_May,0.13084483339218256
|
||||
321,city_tripoli,2021,MONTH_Aug,0.3972967126563762
|
||||
322,city_tripoli,2021,MONTH_Nov,0.44945112228561657
|
||||
323,city_tripoli,2021,MONTH_Dec,0.9189092853708906
|
||||
324,city_kuala_lumpur,2019,MONTH_Feb,0.16756258334398821
|
||||
325,city_kuala_lumpur,2019,MONTH_Apr,0.7292001698733792
|
||||
326,city_kuala_lumpur,2019,MONTH_Jun,0.5157281213252976
|
||||
327,city_kuala_lumpur,2019,MONTH_Oct,0.8014958747496247
|
||||
328,city_kuala_lumpur,2020,MONTH_May,0.8602854104400254
|
||||
329,city_kuala_lumpur,2020,MONTH_Aug,0.43333673199642
|
||||
330,city_kuala_lumpur,2020,MONTH_Nov,0.3736418013982573
|
||||
331,city_kuala_lumpur,2020,MONTH_Dec,0.9933212143240009
|
||||
332,city_kuala_lumpur,2021,MONTH_May,0.9558969606204645
|
||||
333,city_kuala_lumpur,2021,MONTH_Aug,0.8474663747876059
|
||||
334,city_kuala_lumpur,2021,MONTH_Nov,0.7259309917369569
|
||||
335,city_kuala_lumpur,2021,MONTH_Dec,0.07716765857962526
|
||||
336,city_male,2019,MONTH_May,0.11859194162248121
|
||||
337,city_male,2019,MONTH_Aug,0.10933036332271562
|
||||
338,city_male,2019,MONTH_Nov,0.3512985312079444
|
||||
339,city_male,2019,MONTH_Dec,0.9390140198052906
|
||||
340,city_male,2020,MONTH_May,0.9058257181974001
|
||||
341,city_male,2020,MONTH_Aug,0.47744511584315097
|
||||
342,city_male,2020,MONTH_Nov,0.8658614942065163
|
||||
343,city_male,2020,MONTH_Dec,0.38798872766896986
|
||||
344,city_male,2021,MONTH_Feb,0.7620947026588929
|
||||
345,city_male,2021,MONTH_Apr,0.9307031365367027
|
||||
346,city_male,2021,MONTH_Jun,0.4132674715381708
|
||||
347,city_male,2021,MONTH_Oct,0.07150772598482613
|
||||
348,city_mexico_city,2019,MONTH_Mar,0.2826892717581577
|
||||
349,city_mexico_city,2019,MONTH_May,0.6928013923863494
|
||||
350,city_mexico_city,2019,MONTH_Oct,0.8563008311643129
|
||||
351,city_mexico_city,2019,MONTH_Dec,0.627526483522628
|
||||
352,city_mexico_city,2020,MONTH_Apr,0.9928776824550084
|
||||
353,city_mexico_city,2020,MONTH_Jul,0.32889448012572653
|
||||
354,city_mexico_city,2020,MONTH_Sep,0.5673016627623955
|
||||
355,city_mexico_city,2021,MONTH_Jan,0.6536524032020574
|
||||
356,city_mexico_city,2021,MONTH_Feb,0.36173684152563834
|
||||
357,city_mexico_city,2021,MONTH_Apr,0.19990517830323706
|
||||
358,city_mexico_city,2021,MONTH_Jun,0.22345205229744747
|
||||
359,city_mexico_city,2021,MONTH_Oct,0.22492657039602948
|
||||
360,city_ulan_bator,2019,MONTH_Feb,0.09731115691626857
|
||||
361,city_ulan_bator,2019,MONTH_Apr,0.7176250351822594
|
||||
362,city_ulan_bator,2019,MONTH_Jun,0.688881154365618
|
||||
363,city_ulan_bator,2019,MONTH_Oct,0.3175980682827121
|
||||
364,city_ulan_bator,2020,MONTH_Mar,0.5320422814207855
|
||||
365,city_ulan_bator,2020,MONTH_May,0.9377318205081451
|
||||
366,city_ulan_bator,2020,MONTH_Oct,0.15075146061048983
|
||||
367,city_ulan_bator,2020,MONTH_Dec,0.02105164967117734
|
||||
368,city_ulan_bator,2021,MONTH_Feb,0.6952583644077902
|
||||
369,city_ulan_bator,2021,MONTH_Apr,0.21333687792373945
|
||||
370,city_ulan_bator,2021,MONTH_Jun,0.43504532964375053
|
||||
371,city_ulan_bator,2021,MONTH_Oct,0.8872324146983761
|
||||
372,city_rabat,2019,MONTH_Apr,0.48486845571004145
|
||||
373,city_rabat,2019,MONTH_Jul,0.8303783897079856
|
||||
374,city_rabat,2019,MONTH_Sep,0.2679469126786186
|
||||
375,city_rabat,2020,MONTH_Jan,0.216862086460625
|
||||
376,city_rabat,2020,MONTH_Feb,0.6394841852490968
|
||||
377,city_rabat,2020,MONTH_Apr,0.7957348864256418
|
||||
378,city_rabat,2020,MONTH_Jun,0.35449913609838557
|
||||
379,city_rabat,2020,MONTH_Oct,0.884786543583512
|
||||
380,city_rabat,2021,MONTH_Feb,0.7545998323649945
|
||||
381,city_rabat,2021,MONTH_Apr,0.44179928991617634
|
||||
382,city_rabat,2021,MONTH_Jun,0.6071167209468333
|
||||
383,city_rabat,2021,MONTH_Oct,0.3586237763278812
|
||||
384,city_amsterdam,2019,MONTH_Feb,0.7316252644430535
|
||||
385,city_amsterdam,2019,MONTH_Apr,0.5668687381660837
|
||||
386,city_amsterdam,2019,MONTH_Jun,0.5576670888299602
|
||||
387,city_amsterdam,2019,MONTH_Oct,0.41651402253597936
|
||||
388,city_amsterdam,2020,MONTH_Mar,0.13691185457089883
|
||||
389,city_amsterdam,2020,MONTH_May,0.9963811450585627
|
||||
390,city_amsterdam,2020,MONTH_Oct,0.5678846559952594
|
||||
391,city_amsterdam,2020,MONTH_Dec,0.35998249466652255
|
||||
392,city_amsterdam,2021,MONTH_May,0.36176124559912815
|
||||
393,city_amsterdam,2021,MONTH_Aug,0.1452082631177628
|
||||
394,city_amsterdam,2021,MONTH_Nov,0.4059250184669765
|
||||
395,city_amsterdam,2021,MONTH_Dec,0.4668655836718629
|
||||
396,city_wellington,2019,MONTH_Mar,0.23997903684052424
|
||||
397,city_wellington,2019,MONTH_May,0.05133126394973464
|
||||
398,city_wellington,2019,MONTH_Oct,0.1548202784687026
|
||||
399,city_wellington,2019,MONTH_Dec,0.3424800359478265
|
||||
400,city_wellington,2020,MONTH_Feb,0.022701964101586536
|
||||
401,city_wellington,2020,MONTH_Apr,0.5499770964284553
|
||||
402,city_wellington,2020,MONTH_Jun,0.8253524794233187
|
||||
403,city_wellington,2020,MONTH_Oct,0.005331477335972168
|
||||
404,city_wellington,2021,MONTH_May,0.921657139441937
|
||||
405,city_wellington,2021,MONTH_Aug,0.10309395870694193
|
||||
406,city_wellington,2021,MONTH_Nov,0.6263565227069673
|
||||
407,city_wellington,2021,MONTH_Dec,0.2020818627729063
|
||||
408,city_managua,2019,MONTH_Apr,0.05582787287624136
|
||||
409,city_managua,2019,MONTH_Jul,0.48382759592973157
|
||||
410,city_managua,2019,MONTH_Sep,0.9827871188806075
|
||||
411,city_managua,2020,MONTH_Jan,0.00017714421442871497
|
||||
412,city_managua,2020,MONTH_Feb,0.9249580344693701
|
||||
413,city_managua,2020,MONTH_Apr,0.8044975554446903
|
||||
414,city_managua,2020,MONTH_Jun,0.5627263957766564
|
||||
415,city_managua,2020,MONTH_Oct,0.3237250276194914
|
||||
416,city_managua,2021,MONTH_Mar,0.020448801084839263
|
||||
417,city_managua,2021,MONTH_May,0.8901304537407349
|
||||
418,city_managua,2021,MONTH_Oct,0.7318410443954749
|
||||
419,city_managua,2021,MONTH_Dec,0.8843814008259293
|
||||
420,city_abuja,2019,MONTH_May,0.664788190346494
|
||||
421,city_abuja,2019,MONTH_Aug,0.34573866676735254
|
||||
422,city_abuja,2019,MONTH_Nov,0.0929888238353932
|
||||
423,city_abuja,2019,MONTH_Dec,0.8242625289595346
|
||||
424,city_abuja,2020,MONTH_Apr,0.610497664130435
|
||||
425,city_abuja,2020,MONTH_Jul,0.13045928363070136
|
||||
426,city_abuja,2020,MONTH_Sep,0.5931871800066496
|
||||
427,city_abuja,2021,MONTH_Jan,0.8761990727326217
|
||||
428,city_abuja,2021,MONTH_Mar,0.03297221593215882
|
||||
429,city_abuja,2021,MONTH_May,0.2663683106261656
|
||||
430,city_abuja,2021,MONTH_Oct,0.4752472559097941
|
||||
431,city_abuja,2021,MONTH_Dec,0.21817891455498406
|
||||
432,city_islamabad,2019,MONTH_Feb,0.6894565356869449
|
||||
433,city_islamabad,2019,MONTH_Apr,0.04473733639784894
|
||||
434,city_islamabad,2019,MONTH_Jun,0.8225140958795525
|
||||
435,city_islamabad,2019,MONTH_Oct,0.9167038764499388
|
||||
436,city_islamabad,2020,MONTH_Mar,0.18931156178758168
|
||||
437,city_islamabad,2020,MONTH_May,0.867263067708257
|
||||
438,city_islamabad,2020,MONTH_Oct,0.9052158492439835
|
||||
439,city_islamabad,2020,MONTH_Dec,0.2549403768974773
|
||||
440,city_islamabad,2021,MONTH_Mar,0.2810396842292088
|
||||
441,city_islamabad,2021,MONTH_May,0.8873391067395595
|
||||
442,city_islamabad,2021,MONTH_Oct,0.9330488657790148
|
||||
443,city_islamabad,2021,MONTH_Dec,0.03407368582674841
|
||||
444,city_lima,2019,MONTH_Feb,0.3283465777695367
|
||||
445,city_lima,2019,MONTH_Apr,0.27567241572636514
|
||||
446,city_lima,2019,MONTH_Jun,0.6098150878639521
|
||||
447,city_lima,2019,MONTH_Oct,0.7827311559088742
|
||||
448,city_lima,2020,MONTH_May,0.0004780110203138621
|
||||
449,city_lima,2020,MONTH_Aug,0.32359176810859613
|
||||
450,city_lima,2020,MONTH_Nov,0.7920164552383919
|
||||
451,city_lima,2020,MONTH_Dec,0.08680504053296734
|
||||
452,city_lima,2021,MONTH_Feb,0.2815552061774018
|
||||
453,city_lima,2021,MONTH_Apr,0.7946567665550932
|
||||
454,city_lima,2021,MONTH_Jun,0.9348739114080165
|
||||
455,city_lima,2021,MONTH_Oct,0.9664448937706452
|
||||
456,city_bucharest,2019,MONTH_Apr,0.2754215240255594
|
||||
457,city_bucharest,2019,MONTH_Jul,0.9342575547213549
|
||||
458,city_bucharest,2019,MONTH_Sep,0.4561755717169159
|
||||
459,city_bucharest,2020,MONTH_Jan,0.5815353517023211
|
||||
460,city_bucharest,2020,MONTH_Feb,0.09553696230313513
|
||||
461,city_bucharest,2020,MONTH_Apr,0.7977241274060681
|
||||
462,city_bucharest,2020,MONTH_Jun,0.11581142188629723
|
||||
463,city_bucharest,2020,MONTH_Oct,0.609366463954831
|
||||
464,city_bucharest,2021,MONTH_May,0.7786493748178472
|
||||
465,city_bucharest,2021,MONTH_Aug,0.3709475494848148
|
||||
466,city_bucharest,2021,MONTH_Nov,0.06409631979509034
|
||||
467,city_bucharest,2021,MONTH_Dec,0.6435411634892579
|
||||
468,city_moscow,2019,MONTH_Mar,0.3010106354277793
|
||||
469,city_moscow,2019,MONTH_May,0.4560783213170011
|
||||
470,city_moscow,2019,MONTH_Oct,0.05383312030625198
|
||||
471,city_moscow,2019,MONTH_Dec,0.751924840138458
|
||||
472,city_moscow,2020,MONTH_May,0.8723060880532295
|
||||
473,city_moscow,2020,MONTH_Aug,0.12394020657703886
|
||||
474,city_moscow,2020,MONTH_Nov,0.20202634410012543
|
||||
475,city_moscow,2020,MONTH_Dec,0.2782740134125702
|
||||
476,city_moscow,2021,MONTH_May,0.24885715310109735
|
||||
477,city_moscow,2021,MONTH_Aug,0.04896170267358957
|
||||
478,city_moscow,2021,MONTH_Nov,0.8684557906574781
|
||||
479,city_moscow,2021,MONTH_Dec,0.543114638108053
|
||||
480,city_belgrade,2019,MONTH_May,0.5522466531644503
|
||||
481,city_belgrade,2019,MONTH_Aug,0.6084457342690707
|
||||
482,city_belgrade,2019,MONTH_Nov,0.9044174074753157
|
||||
483,city_belgrade,2019,MONTH_Dec,0.07066906245830429
|
||||
484,city_belgrade,2020,MONTH_May,0.0008637322170093054
|
||||
485,city_belgrade,2020,MONTH_Aug,0.3288244897831679
|
||||
486,city_belgrade,2020,MONTH_Nov,0.369768435670744
|
||||
487,city_belgrade,2020,MONTH_Dec,0.9619642633301051
|
||||
488,city_belgrade,2021,MONTH_Mar,0.30571888815406045
|
||||
489,city_belgrade,2021,MONTH_May,0.4498184700674681
|
||||
490,city_belgrade,2021,MONTH_Oct,0.711549047351862
|
||||
491,city_belgrade,2021,MONTH_Dec,0.13085939624289578
|
||||
492,city_singapore,2019,MONTH_Feb,0.1936942927803761
|
||||
493,city_singapore,2019,MONTH_Apr,0.3187029298909052
|
||||
494,city_singapore,2019,MONTH_Jun,0.6452157990829956
|
||||
495,city_singapore,2019,MONTH_Oct,0.5911879699181295
|
||||
496,city_singapore,2020,MONTH_May,0.6993965342569872
|
||||
497,city_singapore,2020,MONTH_Aug,0.27809776213878035
|
||||
498,city_singapore,2020,MONTH_Nov,0.4554896687696134
|
||||
499,city_singapore,2020,MONTH_Dec,0.7243723676795923
|
||||
500,city_singapore,2021,MONTH_Apr,0.02299799672926217
|
||||
501,city_singapore,2021,MONTH_Jul,0.02496694790370424
|
||||
502,city_singapore,2021,MONTH_Sep,0.8791086402875006
|
||||
503,city_singapore,2022,MONTH_Jan,0.6120899910207525
|
||||
504,city_seoul,2019,MONTH_May,0.2771508217854315
|
||||
505,city_seoul,2019,MONTH_Aug,0.33484783290436804
|
||||
506,city_seoul,2019,MONTH_Nov,0.45034878076078355
|
||||
507,city_seoul,2019,MONTH_Dec,0.21034420206658822
|
||||
508,city_seoul,2020,MONTH_May,0.36401409053803546
|
||||
509,city_seoul,2020,MONTH_Aug,0.7067291614998081
|
||||
510,city_seoul,2020,MONTH_Nov,0.8856122368081336
|
||||
511,city_seoul,2020,MONTH_Dec,0.5197758093680719
|
||||
512,city_seoul,2021,MONTH_Apr,0.7328358817323198
|
||||
513,city_seoul,2021,MONTH_Jul,0.9037127128689783
|
||||
514,city_seoul,2021,MONTH_Sep,0.5799119578817793
|
||||
515,city_seoul,2022,MONTH_Jan,0.5237934258414012
|
||||
516,city_tunis,2019,MONTH_Mar,0.09827353604234723
|
||||
517,city_tunis,2019,MONTH_May,0.27835171289138416
|
||||
518,city_tunis,2019,MONTH_Oct,0.01798652216085228
|
||||
519,city_tunis,2019,MONTH_Dec,0.5949113607489287
|
||||
520,city_tunis,2020,MONTH_Mar,0.44924299463957973
|
||||
521,city_tunis,2020,MONTH_May,0.2858608027590416
|
||||
522,city_tunis,2020,MONTH_Oct,0.5320218904968578
|
||||
523,city_tunis,2020,MONTH_Dec,0.6648999091609407
|
||||
524,city_tunis,2021,MONTH_Apr,0.3736650716340366
|
||||
525,city_tunis,2021,MONTH_Jul,0.9657763373669
|
||||
526,city_tunis,2021,MONTH_Sep,0.6595606201567045
|
||||
527,city_tunis,2022,MONTH_Jan,0.6243212038969197
|
||||
528,city_bangkok,2019,MONTH_Feb,0.2578456608769377
|
||||
529,city_bangkok,2019,MONTH_Apr,0.2248885416702492
|
||||
530,city_bangkok,2019,MONTH_Jun,0.6198473912429538
|
||||
531,city_bangkok,2019,MONTH_Oct,0.8505515150984757
|
||||
532,city_bangkok,2020,MONTH_Feb,0.9118617849799147
|
||||
533,city_bangkok,2020,MONTH_Apr,0.8543453671326979
|
||||
534,city_bangkok,2020,MONTH_Jun,0.9765808850300658
|
||||
535,city_bangkok,2020,MONTH_Oct,0.5158800233414695
|
||||
536,city_bangkok,2021,MONTH_Apr,0.050747029721519676
|
||||
537,city_bangkok,2021,MONTH_Jul,0.42532679178785726
|
||||
538,city_bangkok,2021,MONTH_Sep,0.9152877310128299
|
||||
539,city_bangkok,2022,MONTH_Jan,0.2583064313996952
|
||||
540,city_washington_dc,2019,MONTH_May,0.6433596169157464
|
||||
541,city_washington_dc,2019,MONTH_Aug,0.3702060052617322
|
||||
542,city_washington_dc,2019,MONTH_Nov,0.06234400404581297
|
||||
543,city_washington_dc,2019,MONTH_Dec,0.8164574817344272
|
||||
544,city_washington_dc,2020,MONTH_May,0.5387086257630082
|
||||
545,city_washington_dc,2020,MONTH_Aug,0.6503845339241877
|
||||
546,city_washington_dc,2020,MONTH_Nov,0.1169515450758295
|
||||
547,city_washington_dc,2020,MONTH_Dec,0.1482196412729787
|
||||
548,city_washington_dc,2021,MONTH_Apr,0.021006555605136645
|
||||
549,city_washington_dc,2021,MONTH_Jul,0.8719805902905939
|
||||
550,city_washington_dc,2021,MONTH_Sep,0.2823182323390435
|
||||
551,city_washington_dc,2022,MONTH_Jan,0.8058292769346758
|
||||
552,city_hanoi,2019,MONTH_May,0.416591132604722
|
||||
553,city_hanoi,2019,MONTH_Aug,0.11526419958273892
|
||||
554,city_hanoi,2019,MONTH_Nov,0.3600359652946916
|
||||
555,city_hanoi,2019,MONTH_Dec,0.7841960773324388
|
||||
556,city_hanoi,2020,MONTH_May,0.7614140625646568
|
||||
557,city_hanoi,2020,MONTH_Aug,0.9722495866270668
|
||||
558,city_hanoi,2020,MONTH_Nov,0.4772429269877435
|
||||
559,city_hanoi,2020,MONTH_Dec,0.5484266496681606
|
||||
560,city_hanoi,2021,MONTH_May,0.5482481929764795
|
||||
561,city_hanoi,2021,MONTH_Aug,0.5910165431201254
|
||||
562,city_hanoi,2021,MONTH_Nov,0.7883174579363615
|
||||
563,city_hanoi,2021,MONTH_Dec,0.8001325713399826
|
||||
564,city_harare,2019,MONTH_Mar,0.7297867595027538
|
||||
565,city_harare,2019,MONTH_May,0.9072865854787621
|
||||
566,city_harare,2019,MONTH_Oct,0.7502614309817123
|
||||
567,city_harare,2019,MONTH_Dec,0.4934380718142153
|
||||
568,city_harare,2020,MONTH_Feb,0.651326952527076
|
||||
569,city_harare,2020,MONTH_Apr,0.6744095138584462
|
||||
570,city_harare,2020,MONTH_Jun,0.6135341540484665
|
||||
571,city_harare,2020,MONTH_Oct,0.3326984860429695
|
||||
572,city_harare,2021,MONTH_Apr,0.3268433775218048
|
||||
573,city_harare,2021,MONTH_Jul,0.952598360887876
|
||||
574,city_harare,2021,MONTH_Sep,0.6345983070473546
|
||||
575,city_harare,2022,MONTH_Jan,0.9701301800993941
|
||||
576,city_ankara,2019,MONTH_Feb,0.10677390573021461
|
||||
577,city_ankara,2019,MONTH_Apr,0.6365782948222759
|
||||
578,city_ankara,2019,MONTH_Jun,0.10650019877719086
|
||||
579,city_ankara,2019,MONTH_Oct,0.3950462306735656
|
||||
580,city_ankara,2020,MONTH_May,0.5166268720639717
|
||||
581,city_ankara,2020,MONTH_Aug,0.7077116044418617
|
||||
582,city_ankara,2020,MONTH_Nov,0.4929785255773451
|
||||
583,city_ankara,2020,MONTH_Dec,0.4176154831799538
|
||||
584,city_ankara,2021,MONTH_Mar,0.39164017521306327
|
||||
585,city_ankara,2021,MONTH_May,0.6425737678224106
|
||||
586,city_ankara,2021,MONTH_Oct,0.23326853444427909
|
||||
587,city_ankara,2021,MONTH_Dec,0.3483021408358088
|
|
|
@ -0,0 +1,490 @@
|
|||
0,city_kiev,2019-Jan,0.4135864139,0.01956557108,0.3199632899
|
||||
1,city_kiev,2019-May,0.5108363835,0.8589876789,0.2033754817
|
||||
2,city_kiev,2019-Sep,0.3098831619,0.2965779176,0.8780642384
|
||||
3,city_kiev,2020-Jan,0.6513288588,0.969807378,0.4734936057
|
||||
4,city_kiev,2020-May,0.4017988233,0.08149953656,0.1917572298
|
||||
5,city_kiev,2020-Sep,0.2700455917,0.6525809233,0.3808256497
|
||||
6,city_kiev,2021-Jan,0.9957073392,0.8955640153,0.08200560685
|
||||
7,city_kiev,2021-May,0.08359383932,0.878866307,0.2737393541
|
||||
8,city_kiev,2021-Sep,0.3864062227,0.8355196902,0.1672691656
|
||||
9,city_kiev,2022-Jan,0.03859181836,0.8382749998,0.8116680932
|
||||
10,city_buenos_aires,2019-Jan,0.9308313567,0.6466857107,0.8641769833
|
||||
11,city_buenos_aires,2019-May,0.3700134984,0.7837693637,0.4343937489
|
||||
12,city_buenos_aires,2019-Sep,0.5994078053,0.2148970716,0.2135238874
|
||||
13,city_buenos_aires,2020-Jan,0.4941897857,0.9995185631,0.4317838305
|
||||
14,city_buenos_aires,2020-May,0.3257251742,0.1786902536,0.9581480625
|
||||
15,city_buenos_aires,2020-Sep,0.4133663483,0.4895787017,0.3266269703
|
||||
16,city_buenos_aires,2021-Jan,0.4185051363,0.6196468097,0.8595087401
|
||||
17,city_buenos_aires,2021-May,0.967209952,0.9684863108,0.1240276343
|
||||
18,city_buenos_aires,2021-Sep,0.9547593981,0.4235904569,0.7747874597
|
||||
19,city_buenos_aires,2022-Jan,0.7438244778,0.63418064,0.08865491745
|
||||
20,city_canberra,2019-Jan,0.642174332,0.2388107887,0.4174561786
|
||||
21,city_canberra,2019-May,0.275049574,0.5548509861,0.6932049183
|
||||
22,city_canberra,2019-Sep,0.7137277005,0.2288560273,0.3374528905
|
||||
23,city_canberra,2020-Jan,0.7776833239,0.2323082658,0.412349501
|
||||
24,city_canberra,2020-May,0.240911076,0.7393032141,0.03500517153
|
||||
25,city_canberra,2020-Sep,0.3222924521,0.6443196701,0.8722973134
|
||||
26,city_canberra,2021-Jan,0.03333787808,0.942723093,0.9307922515
|
||||
27,city_canberra,2021-May,0.6754651903,0.8715185605,0.7317628479
|
||||
28,city_canberra,2021-Sep,0.6679682277,0.3739222301,0.1775886144
|
||||
29,city_canberra,2022-Jan,0.5068355685,0.1635081943,0.1361671877
|
||||
30,city_yerevan,2019-Jan,0.2147489967,0.1612449722,0.8831791504
|
||||
31,city_yerevan,2019-May,0.9215334967,0.5782146645,0.4315847514
|
||||
32,city_yerevan,2019-Sep,0.08998384769,0.243931627,0.9968073448
|
||||
33,city_yerevan,2020-Jan,0.6352732643,0.1800861503,0.09468051361
|
||||
34,city_yerevan,2020-May,0.9732926191,0.3591501359,0.2549700998
|
||||
35,city_yerevan,2020-Sep,0.8958159719,0.9162956265,0.1139302618
|
||||
36,city_yerevan,2021-Jan,0.03360279599,0.999251994,0.6504557519
|
||||
37,city_yerevan,2021-May,0.2320210872,0.7948166485,0.3111218033
|
||||
38,city_yerevan,2021-Sep,0.7518920271,0.2746721747,0.1822453912
|
||||
39,city_yerevan,2022-Jan,0.9828234148,0.07410452188,0.8394608475
|
||||
40,city_bishkek,2019-Jan,0.1452622254,0.7491750047,0.9541456661
|
||||
41,city_bishkek,2019-May,0.5750325423,0.03818584404,0.4018200559
|
||||
42,city_bishkek,2019-Sep,0.2234510709,0.8535100292,0.2897079852
|
||||
43,city_bishkek,2020-Jan,0.5124122989,0.5110659435,0.3112428697
|
||||
44,city_bishkek,2020-May,0.6543130255,0.04240204986,0.622299684
|
||||
45,city_bishkek,2020-Sep,0.291880605,0.4159968733,0.2820567858
|
||||
46,city_bishkek,2021-Jan,0.04837900082,0.6784619452,0.1266086804
|
||||
47,city_bishkek,2021-May,0.7297099912,0.5149978596,0.5162051605
|
||||
48,city_bishkek,2021-Sep,0.5357617635,0.1818118381,0.8049034964
|
||||
49,city_bishkek,2022-Jan,0.8776874504,0.526233849,0.5263148206
|
||||
50,city_dhaka,2019-Jan,0.6751063458,0.1258686413,0.1016408419
|
||||
51,city_dhaka,2019-May,0.1479538758,0.137851628,0.5491982115
|
||||
52,city_dhaka,2019-Sep,0.0975619112,0.07457551448,0.03538831459
|
||||
53,city_dhaka,2020-Jan,0.4430038543,0.1828778611,0.2944631539
|
||||
54,city_dhaka,2020-May,0.4983727344,0.2630854991,0.3943451107
|
||||
55,city_dhaka,2020-Sep,0.4484292451,0.2339481189,0.2726949863
|
||||
56,city_dhaka,2021-Jan,0.5386010889,0.6933623389,0.4272398241
|
||||
57,city_dhaka,2021-May,0.8000427347,0.1994170511,0.390616751
|
||||
58,city_dhaka,2021-Sep,0.6004021175,0.3635764249,0.7907815985
|
||||
59,city_dhaka,2022-Jan,0.7859317154,0.9442375658,0.4927301142
|
||||
60,city_sucre,2019-Jan,0.5256472928,0.6907740522,0.615610268
|
||||
61,city_sucre,2019-May,0.09963983779,0.7664825572,0.06144303964
|
||||
62,city_sucre,2019-Sep,0.2666295548,0.8243600228,0.9654478129
|
||||
63,city_sucre,2020-Jan,0.8832832537,0.8316651207,0.506107938
|
||||
64,city_sucre,2020-May,0.5119837485,0.8836395641,0.5570675648
|
||||
65,city_sucre,2020-Sep,0.2845784627,0.9690913465,0.8959150557
|
||||
66,city_sucre,2021-Jan,0.6332564923,0.6389759815,0.1370995872
|
||||
67,city_sucre,2021-May,0.3936684553,0.5841123856,0.7516655319
|
||||
68,city_sucre,2021-Sep,0.2701367573,0.3501915684,0.6336972499
|
||||
69,city_sucre,2022-Jan,0.5919516162,0.4011786881,0.401258499
|
||||
70,city_brasilia,2019-Jan,0.9362317028,0.7884664385,0.422647608
|
||||
71,city_brasilia,2019-May,0.8524471342,0.430337496,0.6524337378
|
||||
72,city_brasilia,2019-Sep,0.3174124746,0.2555113355,0.7316351622
|
||||
73,city_brasilia,2020-Jan,0.7486195535,0.9015460575,0.7223646562
|
||||
74,city_brasilia,2020-May,0.3439380221,0.4736994161,0.2520318998
|
||||
75,city_brasilia,2020-Sep,0.3628079446,0.8676514395,0.03414644115
|
||||
76,city_brasilia,2021-Jan,0.7881248045,0.07831938111,0.1207919623
|
||||
77,city_brasilia,2021-May,0.9250479078,0.8901303748,0.07106044929
|
||||
78,city_brasilia,2021-Sep,0.4424696223,0.1006045971,0.5623995233
|
||||
79,city_brasilia,2022-Jan,0.774905499,0.2060788813,0.8296158878
|
||||
80,city_ottawa,2019-Jan,0.415154305,0.1059680177,0.3308787448
|
||||
81,city_ottawa,2019-May,0.6493463515,0.8937871978,0.3920436129
|
||||
82,city_ottawa,2019-Sep,0.7302853507,0.959377626,0.6185701564
|
||||
83,city_ottawa,2020-Jan,0.7511642768,0.9351348965,0.3946346882
|
||||
84,city_ottawa,2020-May,0.7724624372,0.9600619198,0.7859329103
|
||||
85,city_ottawa,2020-Sep,0.3041129836,0.7255126855,0.5221992715
|
||||
86,city_ottawa,2021-Jan,0.2503068936,0.3966644239,0.9602804747
|
||||
87,city_ottawa,2021-May,0.9312852988,0.3889126695,0.7929940878
|
||||
88,city_ottawa,2021-Sep,0.4981112549,0.1059935693,0.8574743066
|
||||
89,city_ottawa,2022-Jan,0.2752719283,0.719554905,0.6726537328
|
||||
90,city_santiago,2019-Jan,0.7354927387,0.4213001179,0.8802422329
|
||||
91,city_santiago,2019-May,0.7656384917,0.04327784254,0.4415898581
|
||||
92,city_santiago,2019-Sep,0.9611505259,0.6413038085,0.3379016843
|
||||
93,city_santiago,2020-Jan,0.2073040591,0.9427695446,0.6375111631
|
||||
94,city_santiago,2020-May,0.3194905106,0.7217433052,0.5085047009
|
||||
95,city_santiago,2020-Sep,0.3848264613,0.4960023984,0.9355666638
|
||||
96,city_santiago,2021-Jan,0.8416596967,0.8012664085,0.9257390628
|
||||
97,city_santiago,2021-May,0.04492334998,0.5346889758,0.7850799406
|
||||
98,city_santiago,2021-Sep,0.2037147168,0.5946083862,0.2569824786
|
||||
99,city_santiago,2022-Jan,0.1393061974,0.3129179343,0.952991536
|
||||
100,city_beijing,2019-Jan,0.3178648282,0.6780576423,0.310220077
|
||||
101,city_beijing,2019-May,0.08431258495,0.4251703457,0.325551065
|
||||
102,city_beijing,2019-Sep,0.9445905243,0.6002283849,0.2930351001
|
||||
103,city_beijing,2020-Jan,0.2790601521,0.6238888439,0.1195087407
|
||||
104,city_beijing,2020-May,0.7794297238,0.1274087865,0.8642829933
|
||||
105,city_beijing,2020-Sep,0.1180488469,0.6663626158,0.2607091672
|
||||
106,city_beijing,2021-Jan,0.0704770744,0.1823784313,0.266078728
|
||||
107,city_beijing,2021-May,0.6136936433,0.9076039223,0.7423526451
|
||||
108,city_beijing,2021-Sep,0.1818364902,0.8480116889,0.1921589399
|
||||
109,city_beijing,2022-Jan,0.9251074867,0.9359530202,0.1770008157
|
||||
110,city_bogota,2019-Jan,0.624155697,0.03153673702,0.194147822
|
||||
111,city_bogota,2019-May,0.6693112776,0.9194170452,0.7562801226
|
||||
112,city_bogota,2019-Sep,0.2270854552,0.5727321164,0.1383067024
|
||||
113,city_bogota,2020-Jan,0.1680212218,0.9342808077,0.8749805221
|
||||
114,city_bogota,2020-May,0.7202858441,0.9917960947,0.6322514442
|
||||
115,city_bogota,2020-Sep,0.2521898539,0.6263208583,0.4677228154
|
||||
116,city_bogota,2021-Jan,0.1522785431,0.3525519967,0.7373106672
|
||||
117,city_bogota,2021-May,0.5294850571,0.5696053899,0.8817775003
|
||||
118,city_bogota,2021-Sep,0.4124724998,0.8456196102,0.6640041077
|
||||
119,city_bogota,2022-Jan,0.3733020161,0.02006290035,0.7176733233
|
||||
120,city_nicosia,2019-Jan,0.05459926779,0.5053119181,0.7161425568
|
||||
121,city_nicosia,2019-May,0.1106513246,0.05436806241,0.3515319482
|
||||
122,city_nicosia,2019-Sep,0.2890129589,0.5327814479,0.0564076411
|
||||
123,city_nicosia,2020-Jan,0.5163181441,0.6338465939,0.6444040696
|
||||
124,city_nicosia,2020-May,0.368582402,0.2737939017,0.5093951622
|
||||
125,city_nicosia,2020-Sep,0.471424489,0.7035862994,0.2042673249
|
||||
126,city_nicosia,2021-Jan,0.6501679348,0.3863401401,0.06039493853
|
||||
127,city_nicosia,2021-May,0.8365728469,0.9942683732,0.2896511837
|
||||
128,city_nicosia,2021-Sep,0.995211768,0.4426742775,0.2572311547
|
||||
129,city_nicosia,2022-Jan,0.4359362671,0.3118280621,0.6705883368
|
||||
130,city_quito,2019-Jan,0.008417639206,0.3014245876,0.3052574326
|
||||
131,city_quito,2019-May,0.9857935547,0.1817759722,0.6952597878
|
||||
132,city_quito,2019-Sep,0.5276216133,0.130251563,0.3240003865
|
||||
133,city_quito,2020-Jan,0.9035196298,0.05698437866,0.7702244321
|
||||
134,city_quito,2020-May,0.3066932204,0.4436222048,0.260779084
|
||||
135,city_quito,2020-Sep,0.7272718268,0.5725148062,0.9164124193
|
||||
136,city_quito,2021-Jan,0.1059151872,0.08895582061,0.2928971124
|
||||
137,city_quito,2021-May,0.5118712419,0.3026817401,0.4279458258
|
||||
138,city_quito,2021-Sep,0.3330274894,0.4468848481,0.1236207096
|
||||
139,city_quito,2022-Jan,0.1244205704,0.1358899607,0.09450148278
|
||||
140,city_cairo,2019-Jan,0.4615407783,0.9520223142,0.5749502467
|
||||
141,city_cairo,2019-May,0.475409533,0.8210527062,0.4346789398
|
||||
142,city_cairo,2019-Sep,0.8066731319,0.6534694757,0.02837567269
|
||||
143,city_cairo,2020-Jan,0.8670750153,0.3625430406,0.3825884646
|
||||
144,city_cairo,2020-May,0.4951683874,0.3254080811,0.3654370688
|
||||
145,city_cairo,2020-Sep,0.7770142608,0.3716663152,0.7309639163
|
||||
146,city_cairo,2021-Jan,0.7855635031,0.066121297,0.4673674219
|
||||
147,city_cairo,2021-May,0.1730690216,0.6707204192,0.04674807743
|
||||
148,city_cairo,2021-Sep,0.489859121,0.7975075822,0.4092845343
|
||||
149,city_cairo,2022-Jan,0.4026321904,0.3023607084,0.4688463182
|
||||
150,city_addis_ababa,2019-Jan,0.4158713422,0.723030428,0.7597643722
|
||||
151,city_addis_ababa,2019-May,0.6785635739,0.1609066638,0.3381258458
|
||||
152,city_addis_ababa,2019-Sep,0.4569397919,0.526164665,0.1769840336
|
||||
153,city_addis_ababa,2020-Jan,0.6383916423,0.9232172286,0.1182792853
|
||||
154,city_addis_ababa,2020-May,0.7178022526,0.2387936324,0.02385348652
|
||||
155,city_addis_ababa,2020-Sep,0.9849294332,0.7956996228,0.4222712868
|
||||
156,city_addis_ababa,2021-Jan,0.07887778219,0.69387249,0.1295531304
|
||||
157,city_addis_ababa,2021-May,0.1808748003,0.06275186687,0.07472647253
|
||||
158,city_addis_ababa,2021-Sep,0.4839227903,0.4053925375,0.5147437288
|
||||
159,city_addis_ababa,2022-Jan,0.7803588092,0.727980068,0.6142244773
|
||||
160,city_berlin,2019-Jan,0.8326116144,0.1655051488,0.9828841108
|
||||
161,city_berlin,2019-May,0.250598596,0.8092499198,0.2239228888
|
||||
162,city_berlin,2019-Sep,0.8741896975,0.2665338382,0.1668458375
|
||||
163,city_berlin,2020-Jan,0.8399662922,0.7424132106,0.7362431642
|
||||
164,city_berlin,2020-May,0.6234997751,0.1409901662,0.1120024816
|
||||
165,city_berlin,2020-Sep,0.5161994486,0.5217599377,0.2535940892
|
||||
166,city_berlin,2021-Jan,0.1199007456,0.4344814743,0.1242415921
|
||||
167,city_berlin,2021-May,0.7303554923,0.3020973192,0.07171730289
|
||||
168,city_berlin,2021-Sep,0.7721955593,0.1087218774,0.6464209647
|
||||
169,city_berlin,2022-Jan,0.7614676523,0.08317084863,0.2325090714
|
||||
170,city_athens,2019-Jan,0.5327877289,0.9744463465,0.08180874782
|
||||
171,city_athens,2019-May,0.3652119168,0.01078413186,0.3276447375
|
||||
172,city_athens,2019-Sep,0.02943374111,0.9488744953,0.839420683
|
||||
173,city_athens,2020-Jan,0.8262571714,0.3638952168,0.00987960679
|
||||
174,city_athens,2020-May,0.5744768806,0.345623497,0.02740369312
|
||||
175,city_athens,2020-Sep,0.1795134643,0.3635695132,0.5559708634
|
||||
176,city_athens,2021-Jan,0.7699177565,0.392814441,0.61825789
|
||||
177,city_athens,2021-May,0.2212081657,0.9191236281,0.2313453472
|
||||
178,city_athens,2021-Sep,0.6074897578,0.7022955185,0.9424673176
|
||||
179,city_athens,2022-Jan,0.8794169545,0.3645845791,0.03908482265
|
||||
180,city_guatemala_city,2019-Jan,0.2898139176,0.763974548,0.1414512253
|
||||
181,city_guatemala_city,2019-May,0.6106569652,0.8240962332,0.6939830925
|
||||
182,city_guatemala_city,2019-Sep,0.5861384162,0.04609006852,0.8409472079
|
||||
183,city_guatemala_city,2020-Jan,0.7872155024,0.1606561264,0.2650589027
|
||||
184,city_guatemala_city,2020-May,0.1910735766,0.557900717,0.600110758
|
||||
185,city_guatemala_city,2020-Sep,0.6290094549,0.2562474722,0.7560094788
|
||||
186,city_guatemala_city,2021-Jan,0.4257358075,0.1027767675,0.4144983414
|
||||
187,city_guatemala_city,2021-May,0.7099732679,0.08313104975,0.284854386
|
||||
188,city_guatemala_city,2021-Sep,0.892413365,0.5532906407,0.2968339741
|
||||
189,city_guatemala_city,2022-Jan,0.8273477199,0.7395492724,0.9457886281
|
||||
190,city_jakarta,2019-Jan,0.9193766389,0.562096263,0.08597256563
|
||||
191,city_jakarta,2019-May,0.9613467154,0.6769316276,0.6942166445
|
||||
192,city_jakarta,2019-Sep,0.8911849078,0.7562774935,0.931896191
|
||||
193,city_jakarta,2020-Jan,0.4624306474,0.2038734797,0.9108010452
|
||||
194,city_jakarta,2020-May,0.7789672101,0.4319469274,0.5955267956
|
||||
195,city_jakarta,2020-Sep,0.937567279,0.5425494534,0.1971329509
|
||||
196,city_jakarta,2021-Jan,0.05969973106,0.8612950096,0.1110350332
|
||||
197,city_jakarta,2021-May,0.2180583953,0.129191418,0.8485609101
|
||||
198,city_jakarta,2021-Sep,0.5603349001,0.4438715596,0.3221066821
|
||||
199,city_jakarta,2022-Jan,0.5924979531,0.7839538361,0.9407650221
|
||||
200,city_tehran,2019-Jan,0.5292539582,0.9150355842,0.5624261915
|
||||
201,city_tehran,2019-May,0.7509693779,0.2702537133,0.05959118151
|
||||
202,city_tehran,2019-Sep,0.0004306332507,0.5449529067,0.7126608061
|
||||
203,city_tehran,2020-Jan,0.1082794742,0.4536112847,0.9691479921
|
||||
204,city_tehran,2020-May,0.3819988509,0.6632068954,0.5233308183
|
||||
205,city_tehran,2020-Sep,0.9333775196,0.6158183662,0.6980507813
|
||||
206,city_tehran,2021-Jan,0.4710513182,0.05454750359,0.5645271704
|
||||
207,city_tehran,2021-May,0.2485026502,0.7312942592,0.2627718368
|
||||
208,city_tehran,2021-Sep,0.01302679826,0.336700741,0.6003091579
|
||||
209,city_tehran,2022-Jan,0.819297579,0.9598619279,0.6779261352
|
||||
210,city_baghdad,2019-Jan,0.6571740151,0.7467470149,0.6081817043
|
||||
211,city_baghdad,2019-May,0.8853581326,0.7189311143,0.7448624368
|
||||
212,city_baghdad,2019-Sep,0.6146196468,0.6768913331,0.7571456788
|
||||
213,city_baghdad,2020-Jan,0.08117439619,0.8747030021,0.7191705185
|
||||
214,city_baghdad,2020-May,0.3522675259,0.8238104615,0.1537342642
|
||||
215,city_baghdad,2020-Sep,0.2356301438,0.3576600925,0.6118789786
|
||||
216,city_baghdad,2021-Jan,0.4391707399,0.4474647074,0.6430828897
|
||||
217,city_baghdad,2021-May,0.268736745,0.394059054,0.119349115
|
||||
218,city_baghdad,2021-Sep,0.2073373839,0.407147767,0.8267744414
|
||||
219,city_baghdad,2022-Jan,0.01562994523,0.7208303197,0.3132938272
|
||||
220,city_tokyo,2019-Jan,0.8352048365,0.4889643586,0.5708637608
|
||||
221,city_tokyo,2019-May,0.07092244122,0.7175987454,0.548696431
|
||||
222,city_tokyo,2019-Sep,0.435831484,0.7019761931,0.8220189625
|
||||
223,city_tokyo,2020-Jan,0.5223738584,0.9554340802,0.7499007696
|
||||
224,city_tokyo,2020-May,0.303390769,0.9935451138,0.9673256357
|
||||
225,city_tokyo,2020-Sep,0.4384910546,0.06373422983,0.9278227045
|
||||
226,city_tokyo,2021-Jan,0.4244047664,0.8205993601,0.3039457448
|
||||
227,city_tokyo,2021-May,0.01059055428,0.1387852586,0.202489681
|
||||
228,city_tokyo,2021-Sep,0.8243603537,0.01143751208,0.6110956967
|
||||
229,city_tokyo,2022-Jan,0.9934216564,0.5012722622,0.8378971436
|
||||
230,city_amman,2019-Jan,0.1540357106,0.6803451745,0.7406204618
|
||||
231,city_amman,2019-May,0.3376841081,0.8528543434,0.8947938379
|
||||
232,city_amman,2019-Sep,0.8652355208,0.7611803277,0.4579395501
|
||||
233,city_amman,2020-Jan,0.9236248973,0.597652822,0.3755196877
|
||||
234,city_amman,2020-May,0.4995982826,0.924389631,0.306112936
|
||||
235,city_amman,2020-Sep,0.5400326648,0.09029500814,0.474054147
|
||||
236,city_amman,2021-Jan,0.08564701964,0.3066904227,0.7320517679
|
||||
237,city_amman,2021-May,0.4889587211,0.2702591115,0.7290170229
|
||||
238,city_amman,2021-Sep,0.0335487674,0.2504805992,0.7181076944
|
||||
239,city_amman,2022-Jan,0.3418902923,0.8970783354,0.1739518732
|
||||
240,city_nairobi,2019-Jan,0.8272692723,0.2193240076,0.02060070785
|
||||
241,city_nairobi,2019-May,0.25413013,0.273279121,0.9193914915
|
||||
242,city_nairobi,2019-Sep,0.2576763868,0.8634612874,0.4355158525
|
||||
243,city_nairobi,2020-Jan,0.9763060138,0.1430317922,0.6483186049
|
||||
244,city_nairobi,2020-May,0.6939313329,0.5892953211,0.9663935709
|
||||
245,city_nairobi,2020-Sep,0.2764149061,0.1774120717,0.7812622959
|
||||
246,city_nairobi,2021-Jan,0.7707636847,0.8689268495,0.1363146058
|
||||
247,city_nairobi,2021-May,0.9163507683,0.2515377182,0.07565517255
|
||||
248,city_nairobi,2021-Sep,0.7513935872,0.1532284207,0.7363183336
|
||||
249,city_nairobi,2022-Jan,0.1767128894,0.1454489297,0.3971665474
|
||||
250,city_beirut,2019-Jan,0.788339519,0.5127333364,0.8333304991
|
||||
251,city_beirut,2019-May,0.7230935424,0.2298084849,0.5472381483
|
||||
252,city_beirut,2019-Sep,0.5909867246,0.02179296134,0.7592174254
|
||||
253,city_beirut,2020-Jan,0.9340891126,0.8696574846,0.5400465709
|
||||
254,city_beirut,2020-May,0.0276754093,0.8986496952,0.5265469731
|
||||
255,city_beirut,2020-Sep,0.4649235896,0.3356422036,0.5517011162
|
||||
256,city_beirut,2021-Jan,0.7389463326,0.947502386,0.6815278477
|
||||
257,city_beirut,2021-May,0.7670585948,0.6473540111,0.5277366776
|
||||
258,city_beirut,2021-Sep,0.5942151705,0.4821676255,0.1016388854
|
||||
259,city_beirut,2022-Jan,0.5882001691,0.361997451,0.293222771
|
||||
260,city_tripoli,2019-Jan,0.2677810804,0.2357072677,0.3565856652
|
||||
261,city_tripoli,2019-May,0.07104588209,0.5513605839,0.0451456715
|
||||
262,city_tripoli,2019-Sep,0.4257855731,0.616771154,0.5592935074
|
||||
263,city_tripoli,2020-Jan,0.3449656127,0.687252387,0.2071332881
|
||||
264,city_tripoli,2020-May,0.05954930585,0.08429442185,0.5561507364
|
||||
265,city_tripoli,2020-Sep,0.5287426821,0.7518475156,0.605454666
|
||||
266,city_tripoli,2021-Jan,0.926167857,0.4054919777,0.01780159166
|
||||
267,city_tripoli,2021-May,0.1158836845,0.1263661794,0.5107072656
|
||||
268,city_tripoli,2021-Sep,0.3098832321,0.8877507511,0.9402516681
|
||||
269,city_tripoli,2022-Jan,0.2471150536,0.9391734631,0.05978336229
|
||||
270,city_kuala_lumpur,2019-Jan,0.6863528274,0.8697980657,0.2282523362
|
||||
271,city_kuala_lumpur,2019-May,0.8358905297,0.9856091378,0.9827359299
|
||||
272,city_kuala_lumpur,2019-Sep,0.8423115828,0.8475761347,0.6705055844
|
||||
273,city_kuala_lumpur,2020-Jan,0.352567735,0.1954722531,0.2030722961
|
||||
274,city_kuala_lumpur,2020-May,0.04741808923,0.210640203,0.01469151867
|
||||
275,city_kuala_lumpur,2020-Sep,0.957184061,0.4772033411,0.06693120676
|
||||
276,city_kuala_lumpur,2021-Jan,0.8694608057,0.4899108808,0.6298810317
|
||||
277,city_kuala_lumpur,2021-May,0.03785739177,0.215056941,0.4898345725
|
||||
278,city_kuala_lumpur,2021-Sep,0.8474861196,0.8203214118,0.9639926419
|
||||
279,city_kuala_lumpur,2022-Jan,0.09388447049,0.8918711252,0.8982826914
|
||||
280,city_male,2019-Jan,0.9535318247,0.150372675,0.945000347
|
||||
281,city_male,2019-May,0.7412962727,0.003038298983,0.4180035581
|
||||
282,city_male,2019-Sep,0.2345256191,0.9034615199,0.4484671987
|
||||
283,city_male,2020-Jan,0.04034677353,0.1748185368,0.4505723828
|
||||
284,city_male,2020-May,0.5639263503,0.2796195837,0.2018342222
|
||||
285,city_male,2020-Sep,0.2502278203,0.5534360568,0.4339739447
|
||||
286,city_male,2021-Jan,0.3031630191,0.07439445923,0.4700919847
|
||||
287,city_male,2021-May,0.8624679204,0.2578625741,0.09027702491
|
||||
288,city_male,2021-Sep,0.2454379645,0.9075344381,0.05214485101
|
||||
289,city_male,2022-Jan,0.3611491011,0.9851549825,0.4531224627
|
||||
290,city_mexico_city,2019-Jan,0.5367583915,0.258080948,0.6816746827
|
||||
291,city_mexico_city,2019-May,0.9853964418,0.6359366543,0.4883879642
|
||||
292,city_mexico_city,2019-Sep,0.9563011498,0.0299396029,0.9594745399
|
||||
293,city_mexico_city,2020-Jan,0.4688441336,0.8191478053,0.8617118239
|
||||
294,city_mexico_city,2020-May,0.1927625183,0.5748900138,0.8513407749
|
||||
295,city_mexico_city,2020-Sep,0.4454512258,0.5824312156,0.9636387659
|
||||
296,city_mexico_city,2021-Jan,0.9859257045,0.1759599736,0.4286920936
|
||||
297,city_mexico_city,2021-May,0.363776648,0.1809230842,0.2368178691
|
||||
298,city_mexico_city,2021-Sep,0.6824795264,0.2990136144,0.0405011663
|
||||
299,city_mexico_city,2022-Jan,0.8905587395,0.1905990529,0.4882507814
|
||||
300,city_ulan_bator,2019-Jan,0.6741485464,0.717576578,0.4293573811
|
||||
301,city_ulan_bator,2019-May,0.3262047159,0.8716206568,0.5458236269
|
||||
302,city_ulan_bator,2019-Sep,0.6265632177,0.2317454106,0.7036908001
|
||||
303,city_ulan_bator,2020-Jan,0.5113218116,0.221105242,0.888826252
|
||||
304,city_ulan_bator,2020-May,0.3906062072,0.66427438,0.2935980572
|
||||
305,city_ulan_bator,2020-Sep,0.3971036952,0.01783759712,0.8998790336
|
||||
306,city_ulan_bator,2021-Jan,0.2637427101,0.2385390121,0.6249611526
|
||||
307,city_ulan_bator,2021-May,0.912242776,0.08731497158,0.6532080205
|
||||
308,city_ulan_bator,2021-Sep,0.397708583,0.8048328144,0.7926631264
|
||||
309,city_ulan_bator,2022-Jan,0.9942061508,0.2470806419,0.4383188216
|
||||
310,city_rabat,2019-Jan,0.2230411495,0.3676032952,0.4107616888
|
||||
311,city_rabat,2019-May,0.1492052294,0.3892316663,0.1094391123
|
||||
312,city_rabat,2019-Sep,0.5472040034,0.9976653002,0.1954636489
|
||||
313,city_rabat,2020-Jan,0.9966868022,0.2096797583,0.3057921875
|
||||
314,city_rabat,2020-May,0.2045133008,0.2371876672,0.4427255118
|
||||
315,city_rabat,2020-Sep,0.925035033,0.584423711,0.6622095958
|
||||
316,city_rabat,2021-Jan,0.09596785333,0.1155214101,0.9929036089
|
||||
317,city_rabat,2021-May,0.5279036078,0.2882972716,0.2605861754
|
||||
318,city_rabat,2021-Sep,0.9105437212,0.3634054264,0.5256147774
|
||||
319,city_rabat,2022-Jan,0.7458623714,0.1574213382,0.6264820458
|
||||
320,city_amsterdam,2019-Jan,0.799256021,0.3395427351,0.4031577596
|
||||
321,city_amsterdam,2019-May,0.1804581241,0.845954797,0.3228938347
|
||||
322,city_amsterdam,2019-Sep,0.1970508803,0.04130658614,0.5235063506
|
||||
323,city_amsterdam,2020-Jan,0.9242590394,0.1852741273,0.3749524614
|
||||
324,city_amsterdam,2020-May,0.8783562576,0.08261349126,0.3541495132
|
||||
325,city_amsterdam,2020-Sep,0.8995390999,0.8467088641,0.8145635751
|
||||
326,city_amsterdam,2021-Jan,0.6193291884,0.3946284311,0.6509909684
|
||||
327,city_amsterdam,2021-May,0.7058310687,0.2254146029,0.3006021917
|
||||
328,city_amsterdam,2021-Sep,0.6448915078,0.2207063867,0.7670154359
|
||||
329,city_amsterdam,2022-Jan,0.6566724581,0.4963253272,0.5882010246
|
||||
330,city_wellington,2019-Jan,0.975771214,0.7828569709,0.8579568289
|
||||
331,city_wellington,2019-May,0.4808303848,0.2147995042,0.5427822914
|
||||
332,city_wellington,2019-Sep,0.982612098,0.2017583263,0.6818840957
|
||||
333,city_wellington,2020-Jan,0.8282939128,0.0173039828,0.8484000112
|
||||
334,city_wellington,2020-May,0.7067879274,0.1232934138,0.1583243715
|
||||
335,city_wellington,2020-Sep,0.05426185515,0.9523095362,0.8600642333
|
||||
336,city_wellington,2021-Jan,0.849837313,0.6723412286,0.3539009568
|
||||
337,city_wellington,2021-May,0.851419205,0.08734822939,0.3631028432
|
||||
338,city_wellington,2021-Sep,0.5211397365,0.601091111,0.8736619915
|
||||
339,city_wellington,2022-Jan,0.0004370141048,0.7856350051,0.7967341982
|
||||
340,city_managua,2019-Jan,0.4449076437,0.07095081666,0.2226768192
|
||||
341,city_managua,2019-May,0.9058054532,0.9825352592,0.8801532619
|
||||
342,city_managua,2019-Sep,0.4664849351,0.1507856153,0.6859989836
|
||||
343,city_managua,2020-Jan,0.7063256142,0.8480495571,0.6506210446
|
||||
344,city_managua,2020-May,0.5672273277,0.1732735134,0.0473325036
|
||||
345,city_managua,2020-Sep,0.6152126641,0.262875193,0.06784724677
|
||||
346,city_managua,2021-Jan,0.5630548661,0.139303683,0.2497055152
|
||||
347,city_managua,2021-May,0.7090141669,0.6050612033,0.717160999
|
||||
348,city_managua,2021-Sep,0.6726886326,0.3955881513,0.05659926761
|
||||
349,city_managua,2022-Jan,0.5118331134,0.9697227523,0.6694463186
|
||||
350,city_abuja,2019-Jan,0.7215577985,0.8069645818,0.2144030138
|
||||
351,city_abuja,2019-May,0.2389187672,0.1132551265,0.6855980263
|
||||
352,city_abuja,2019-Sep,0.3713433464,0.8430974465,0.7186428163
|
||||
353,city_abuja,2020-Jan,0.3213201344,0.9099336087,0.8449178856
|
||||
354,city_abuja,2020-May,0.8469259071,0.5524627768,0.9260609535
|
||||
355,city_abuja,2020-Sep,0.4366534985,0.4725483191,0.6004087497
|
||||
356,city_abuja,2021-Jan,0.6629119774,0.2245666268,0.2164730197
|
||||
357,city_abuja,2021-May,0.7151602496,0.852215806,0.9994776477
|
||||
358,city_abuja,2021-Sep,0.2657906656,0.8775827085,0.02569985435
|
||||
359,city_abuja,2022-Jan,0.6656366265,0.5595354603,0.3052805174
|
||||
360,city_islamabad,2019-Jan,0.5657435109,0.06594882308,0.05639372024
|
||||
361,city_islamabad,2019-May,0.3617440488,0.8182270972,0.5020515613
|
||||
362,city_islamabad,2019-Sep,0.8972054882,0.5389161919,0.08204922443
|
||||
363,city_islamabad,2020-Jan,0.6361910136,0.7719467598,0.3555156382
|
||||
364,city_islamabad,2020-May,0.5658655482,0.9978291866,0.9204755129
|
||||
365,city_islamabad,2020-Sep,0.5229417395,0.4433901007,0.3977836013
|
||||
366,city_islamabad,2021-Jan,0.9304358199,0.5494074576,0.689688983
|
||||
367,city_islamabad,2021-May,0.04229158644,0.4005375448,0.4328307124
|
||||
368,city_islamabad,2021-Sep,0.3071366189,0.4742819877,0.8376670766
|
||||
369,city_islamabad,2022-Jan,0.9667463886,0.8263189953,0.9260605166
|
||||
370,city_lima,2019-Jan,0.004449000129,0.5359554688,0.5170556156
|
||||
371,city_lima,2019-May,0.0040391066,0.727889608,0.3979039803
|
||||
372,city_lima,2019-Sep,0.4752783789,0.286290551,0.9038587969
|
||||
373,city_lima,2020-Jan,0.5243305401,0.9542521021,0.8437255443
|
||||
374,city_lima,2020-May,0.5189281056,0.9532682341,0.04858519966
|
||||
375,city_lima,2020-Sep,0.9698181754,0.2626736181,0.07547748485
|
||||
376,city_lima,2021-Jan,0.42487374,0.7219955088,0.03794786379
|
||||
377,city_lima,2021-May,0.1580065461,0.7412839844,0.78239396
|
||||
378,city_lima,2021-Sep,0.5313078226,0.6906399598,0.1497155574
|
||||
379,city_lima,2022-Jan,0.7137341222,0.9608880466,0.7117129761
|
||||
380,city_bucharest,2019-Jan,0.9989856747,0.3173551828,0.3589126521
|
||||
381,city_bucharest,2019-May,0.7987576639,0.431771908,0.1180147721
|
||||
382,city_bucharest,2019-Sep,0.4474069189,0.716171076,0.3027452883
|
||||
383,city_bucharest,2020-Jan,0.9724268855,0.3257941961,0.8441895702
|
||||
384,city_bucharest,2020-May,0.9980411751,0.1256631536,0.07115468458
|
||||
385,city_bucharest,2020-Sep,0.1213183636,0.3941146639,0.06092239127
|
||||
386,city_bucharest,2021-Jan,0.4205241143,0.1941809277,0.4877147348
|
||||
387,city_bucharest,2021-May,0.3360387926,0.3922642193,0.2054573166
|
||||
388,city_bucharest,2021-Sep,0.06667197523,0.1235198397,0.5762869522
|
||||
389,city_bucharest,2022-Jan,0.306929458,0.7091646997,0.8807736754
|
||||
390,city_moscow,2019-Jan,0.4884820054,0.3664299465,0.5947931914
|
||||
391,city_moscow,2019-May,0.8045965787,0.645890862,0.6135267009
|
||||
392,city_moscow,2019-Sep,0.5168853064,0.005617348514,0.03449093575
|
||||
393,city_moscow,2020-Jan,0.5083457969,0.1835582116,0.9683744996
|
||||
394,city_moscow,2020-May,0.1155265419,0.02495497214,0.9077392365
|
||||
395,city_moscow,2020-Sep,0.3679246739,0.4012096928,0.1788263876
|
||||
396,city_moscow,2021-Jan,0.04563746129,0.5524970339,0.2758883611
|
||||
397,city_moscow,2021-May,0.874515788,0.5738406989,0.4389562884
|
||||
398,city_moscow,2021-Sep,0.5644210913,0.1248259343,0.3045741317
|
||||
399,city_moscow,2022-Jan,0.02472030916,0.5212881284,0.6865817501
|
||||
400,city_belgrade,2019-Jan,0.2054378336,0.3388140331,0.1560520775
|
||||
401,city_belgrade,2019-May,0.8233419498,0.06099252492,0.3285799916
|
||||
402,city_belgrade,2019-Sep,0.737910215,0.0218623579,0.8147299491
|
||||
403,city_belgrade,2020-Jan,0.9112117631,0.9656860025,0.3786632918
|
||||
404,city_belgrade,2020-May,0.7803837773,0.09974279125,0.003345917394
|
||||
405,city_belgrade,2020-Sep,0.2159103445,0.4208667863,0.306492557
|
||||
406,city_belgrade,2021-Jan,0.8099756545,0.1659555892,0.5686013193
|
||||
407,city_belgrade,2021-May,0.9153223024,0.7262449027,0.5551206235
|
||||
408,city_belgrade,2021-Sep,0.5130398179,0.01271602991,0.9210065704
|
||||
409,city_belgrade,2022-Jan,0.815222032,0.2659741857,0.2871871833
|
||||
410,city_singapore,2019-Jan,0.2134172681,0.8580276605,0.9601842113
|
||||
411,city_singapore,2019-May,0.6023894791,0.4216392972,0.7161700994
|
||||
412,city_singapore,2019-Sep,0.6858661731,0.7862881275,0.2316293129
|
||||
413,city_singapore,2020-Jan,0.6841130768,0.2949128642,0.5366420271
|
||||
414,city_singapore,2020-May,0.498180307,0.47856757,0.5634083248
|
||||
415,city_singapore,2020-Sep,0.005418301445,0.6835751602,0.5749891016
|
||||
416,city_singapore,2021-Jan,0.2189054618,0.9144602713,0.7515237128
|
||||
417,city_singapore,2021-May,0.4224346227,0.2277588726,0.5884623504
|
||||
418,city_singapore,2021-Sep,0.00726630776,0.4287783353,0.9893778021
|
||||
419,city_singapore,2022-Jan,0.415505623,0.5043323742,0.04127731435
|
||||
420,city_seoul,2019-Jan,0.4158292137,0.3235311166,0.3313557261
|
||||
421,city_seoul,2019-May,0.3720615125,0.5183966398,0.5281903814
|
||||
422,city_seoul,2019-Sep,0.2898671082,0.1498256654,0.6543104049
|
||||
423,city_seoul,2020-Jan,0.2590961078,0.03198788857,0.7939989818
|
||||
424,city_seoul,2020-May,0.158505935,0.646670114,0.8497340793
|
||||
425,city_seoul,2020-Sep,0.7733778533,0.8329950401,0.6951126836
|
||||
426,city_seoul,2021-Jan,0.2333382418,0.3836525618,0.7553079657
|
||||
427,city_seoul,2021-May,0.7819967758,0.974315225,0.07959266939
|
||||
428,city_seoul,2021-Sep,0.5964142264,0.248241969,0.6541351389
|
||||
429,city_seoul,2022-Jan,0.90841441,0.1943781343,0.09601869236
|
||||
430,city_tunis,2019-Jan,0.6652183138,0.4894266427,0.4240159206
|
||||
431,city_tunis,2019-May,0.9884960516,0.9755110617,0.06384271908
|
||||
432,city_tunis,2019-Sep,0.680123991,0.3601116984,0.5918194417
|
||||
433,city_tunis,2020-Jan,0.1473826674,0.9219684102,0.513104658
|
||||
434,city_tunis,2020-May,0.7317874879,0.7317059155,0.5088701786
|
||||
435,city_tunis,2020-Sep,0.978750762,0.8405181067,0.9071571207
|
||||
436,city_tunis,2021-Jan,0.4223105477,0.182839254,0.9445235115
|
||||
437,city_tunis,2021-May,0.1376962812,0.3380520816,0.9820850094
|
||||
438,city_tunis,2021-Sep,0.9888050345,0.7938678388,0.4087101449
|
||||
439,city_tunis,2022-Jan,0.08062628741,0.811235545,0.6412991336
|
||||
440,city_bangkok,2019-Jan,0.7740886353,0.00393096204,0.9355208309
|
||||
441,city_bangkok,2019-May,0.9261865051,0.5543156401,0.2301005313
|
||||
442,city_bangkok,2019-Sep,0.0036399897,0.5151920906,0.7759955482
|
||||
443,city_bangkok,2020-Jan,0.4058027436,0.03111692238,0.5575806328
|
||||
444,city_bangkok,2020-May,0.657934059,0.5883429191,0.4110502161
|
||||
445,city_bangkok,2020-Sep,0.2211613657,0.8307157083,0.5495225194
|
||||
446,city_bangkok,2021-Jan,0.9381384113,0.3390859316,0.3941873429
|
||||
447,city_bangkok,2021-May,0.1913245397,0.8985675591,0.1613629563
|
||||
448,city_bangkok,2021-Sep,0.4849294818,0.07434437657,0.212956493
|
||||
449,city_bangkok,2022-Jan,0.5632024472,0.05342124515,0.608214207
|
||||
450,city_washington_d.c.,2019-Jan,0.706354796,0.5566582481,0.3888501308
|
||||
451,city_washington_d.c.,2019-May,0.3967146921,0.6871371398,0.3749746333
|
||||
452,city_washington_d.c.,2019-Sep,0.1461645524,0.07178227096,0.008434495791
|
||||
453,city_washington_d.c.,2020-Jan,0.7767257209,0.6806659613,0.2452377716
|
||||
454,city_washington_d.c.,2020-May,0.03369730849,0.4195955155,0.8280863275
|
||||
455,city_washington_d.c.,2020-Sep,0.7276129361,0.1779246857,0.1500722549
|
||||
456,city_washington_d.c.,2021-Jan,0.9155963204,0.9973251079,0.701925965
|
||||
457,city_washington_d.c.,2021-May,0.1160842378,0.1693766214,0.6736147037
|
||||
458,city_washington_d.c.,2021-Sep,0.4549449302,0.9554399549,0.7586370391
|
||||
459,city_washington_d.c.,2022-Jan,0.4006997702,0.955893003,0.1364601882
|
||||
460,city_hanoi,2019-Jan,0.4131646918,0.6762825725,0.5131651918
|
||||
461,city_hanoi,2019-May,0.219613407,0.4764566921,0.5947576005
|
||||
462,city_hanoi,2019-Sep,0.7775954747,0.5535598775,0.9161480338
|
||||
463,city_hanoi,2020-Jan,0.1749110224,0.03153303649,0.2325527303
|
||||
464,city_hanoi,2020-May,0.6513750193,0.9378385276,0.6723599033
|
||||
465,city_hanoi,2020-Sep,0.8846442259,0.5905572431,0.8375318419
|
||||
466,city_hanoi,2021-Jan,0.04438681781,0.7197215338,0.5135403183
|
||||
467,city_hanoi,2021-May,0.8841873451,0.01386415254,0.9290412269
|
||||
468,city_hanoi,2021-Sep,0.9471121112,0.8845281879,0.4825962156
|
||||
469,city_hanoi,2022-Jan,0.6399693588,0.3162389532,0.351121779
|
||||
470,city_harare,2019-Jan,0.05113965261,0.6079969608,0.7127907344
|
||||
471,city_harare,2019-May,0.5499694149,0.7112740295,0.8657201091
|
||||
472,city_harare,2019-Sep,0.6705953617,0.8481746283,0.7781915229
|
||||
473,city_harare,2020-Jan,0.5448455637,0.761481783,0.3161047732
|
||||
474,city_harare,2020-May,0.02555600558,0.8157707267,0.05503697195
|
||||
475,city_harare,2020-Sep,0.627355327,0.5530698033,0.5992110078
|
||||
476,city_harare,2021-Jan,0.6049262896,0.527575273,0.5758586976
|
||||
477,city_harare,2021-May,0.4274464672,0.22878636,0.1059028406
|
||||
478,city_harare,2021-Sep,0.3598503868,0.4448781561,0.1940659583
|
||||
479,city_harare,2022-Jan,0.2554936994,0.04221218981,0.8283157554
|
||||
480,city_ankara,2019-Jan,0.5773037837,0.2326703291,0.5464883464
|
||||
481,city_ankara,2019-May,0.7535813143,0.4992113773,0.9809685139
|
||||
482,city_ankara,2019-Sep,0.5976797307,0.794414639,0.8742555726
|
||||
483,city_ankara,2020-Jan,0.08520386108,0.8773860695,0.3858137862
|
||||
484,city_ankara,2020-May,0.004111445517,0.8040046923,0.1569392782
|
||||
485,city_ankara,2020-Sep,0.2601369272,0.2083602167,0.8048114997
|
||||
486,city_ankara,2021-Jan,0.06646180846,0.1508074934,0.7621242697
|
||||
487,city_ankara,2021-May,0.2056833359,0.4014711821,0.5422262985
|
||||
488,city_ankara,2021-Sep,0.2211609615,0.7420965859,0.9192380563
|
||||
489,city_ankara,2022-Jan,0.5664276514,0.1191242719,0.5142831272
|
|
Binary file not shown.
Binary file not shown.
|
@ -18,12 +18,26 @@ random_series_create(u32 seed)
|
|||
}
|
||||
|
||||
internal u32
|
||||
random_series_next(Random_Series* s)
|
||||
random_from_u32(u32 input)
|
||||
{
|
||||
u32 result = s->last_value;
|
||||
u32 result = input;
|
||||
result ^= result << 13;
|
||||
result ^= result >> 17;
|
||||
result ^= result << 5;
|
||||
return result;
|
||||
}
|
||||
|
||||
internal r32
|
||||
random_unilateral_from_u32(u32 input)
|
||||
{
|
||||
r32 result = random_from_u32(input) / (r32)(0xFFFFFFFF);
|
||||
return result;
|
||||
}
|
||||
|
||||
internal u32
|
||||
random_series_next(Random_Series* s)
|
||||
{
|
||||
u32 result = random_from_u32(s->last_value);
|
||||
s->last_value = result;
|
||||
return result;
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@ void os_gl_no_error();
|
|||
// type mocking
|
||||
// so far, this is only for platforms that won't be using the editor
|
||||
// but which still need to compile it.
|
||||
#ifndef __gl_glext_h_
|
||||
#if !defined(GL_GLEXT_VERSION)
|
||||
typedef u32 GLsizei;
|
||||
typedef u32 GLuint;
|
||||
typedef u32 GLenum;
|
||||
|
|
|
@ -32,22 +32,6 @@ en_frame(App_State* state)
|
|||
scratch_get(scratch);
|
||||
Assembly_Array assemblies = state->assemblies;
|
||||
|
||||
///////////////////////////////////////
|
||||
// Temp Pattern Simulation
|
||||
|
||||
tt += 1.0f / 60.0f;
|
||||
if (tt > 50) tt = 0;
|
||||
|
||||
r32 hrange = 1;
|
||||
r32 range = hrange * 2;
|
||||
for (u32 i = 0; i < assemblies.len; i++)
|
||||
{
|
||||
Assembly_Pixel_Buffer pixels = assemblies.pixel_buffers[i];
|
||||
//grow_pattern(pixels);
|
||||
//pattern_color(pixels, 0, 0, 0);
|
||||
pattern_demo(pixels);
|
||||
}
|
||||
|
||||
///////////////////////////////////////
|
||||
// Output Data
|
||||
Output_Methods methods = state->output.methods;
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
#include "lumenarium_first.h"
|
||||
#include "user_space/user_space_incenter.cpp"
|
||||
#include "user_space/user_space_incenter.c"
|
||||
|
||||
void
|
||||
sculpture_updated()
|
||||
sculpture_updated(App_State* state, r32 scale, r32 led_size)
|
||||
{
|
||||
#if defined(PLATFORM_SUPPORTS_EDITOR)
|
||||
ed_sculpture_updated();
|
||||
ed_sculpture_updated(state, scale, led_size);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -19,6 +19,8 @@ lumenarium_init(Editor_Desc* ed_desc)
|
|||
|
||||
run_tests();
|
||||
|
||||
//cvtcsv_convert(lit_str("./data/incenter_test_data_clean.csv"));
|
||||
|
||||
scratch_get(scratch);
|
||||
App_Init_Desc desc = incenter_get_init_desc();
|
||||
// TODO(PS): make sure the values make sense in desc
|
||||
|
@ -85,11 +87,11 @@ lumenarium_frame_prepare(App_State* state)
|
|||
internal void
|
||||
lumenarium_frame(App_State* state)
|
||||
{
|
||||
if (has_flag(state->flags, AppState_RunUserSpace)) incenter_frame(state);
|
||||
en_frame(state);
|
||||
#if defined(PLATFORM_SUPPORTS_EDITOR)
|
||||
if (has_flag(state->flags, AppState_RunEditor)) ed_frame(state);
|
||||
#endif
|
||||
if (has_flag(state->flags, AppState_RunUserSpace)) incenter_frame(state);
|
||||
}
|
||||
|
||||
internal void
|
||||
|
|
|
@ -100,7 +100,10 @@ struct Editor_Desc
|
|||
v2 init_window_dim;
|
||||
};
|
||||
|
||||
void sculpture_updated();
|
||||
void sculpture_updated(App_State* state, r32 scale, r32 led_size);
|
||||
|
||||
#include "user_space/user_space_incenter.h"
|
||||
#include "../run_tree/data/incenter_test_data.c"
|
||||
|
||||
#include "engine/lumenarium_engine_assembly.c"
|
||||
#include "engine/lumenarium_engine.c"
|
||||
|
@ -115,4 +118,6 @@ void sculpture_updated();
|
|||
# include "editor/lumenarium_editor.c"
|
||||
#endif
|
||||
|
||||
#include "tools/convert_csv.c"
|
||||
|
||||
#endif //LUMENARIUM_FIRST_H
|
||||
|
|
|
@ -106,9 +106,9 @@ internal void memory_copy(u8* from, u8* to, u64 size);
|
|||
# define min(a,b) (a) > (b) ? (b) : (a)
|
||||
#endif
|
||||
|
||||
#define lerp(a,t,b) (a) + ((1.0f - (t)) * (b))
|
||||
#define clamp(r0,v,r1) min((r1),max((r0),(v)))
|
||||
#define lerp_clamp(a,t,b) clamp((a),lerp((a),(t),(b)),(b))
|
||||
// #define lerp(a,t,b) (a) + ((1.0f - (t)) * (b))
|
||||
// #define clamp(r0,v,r1) min((r1),max((r0),(v)))
|
||||
// #define lerp_clamp(a,t,b) clamp((a),lerp((a),(t),(b)),(b))
|
||||
|
||||
//////////////////////////////////////////////
|
||||
// String
|
||||
|
|
|
@ -31,6 +31,28 @@ pm_smoothstep_v3(v3 p)
|
|||
|
||||
///// vector extensions
|
||||
|
||||
v2 pm_lerp_v2(v2 a, r32 t, v2 b) {
|
||||
return (v2){
|
||||
.x = lerp(a.x, t, b.x),
|
||||
.y = lerp(a.y, t, b.y),
|
||||
};
|
||||
}
|
||||
v3 pm_lerp_v3(v3 a, r32 t, v3 b) {
|
||||
return (v3){
|
||||
.x = lerp(a.x, t, b.x),
|
||||
.y = lerp(a.y, t, b.y),
|
||||
.z = lerp(a.z, t, b.z),
|
||||
};
|
||||
}
|
||||
v4 pm_lerp_v4(v4 a, r32 t, v4 b) {
|
||||
return (v4){
|
||||
.x = lerp(a.x, t, b.x),
|
||||
.y = lerp(a.y, t, b.y),
|
||||
.z = lerp(a.z, t, b.z),
|
||||
.w = lerp(a.w, t, b.w),
|
||||
};
|
||||
}
|
||||
|
||||
v2 pm_abs_v2(v2 v) { return (v2){ .x = fabsf(v.x), .y = fabsf(v.y) }; }
|
||||
v3 pm_abs_v3(v3 v) { return (v3){ .x = fabsf(v.x), .y = fabsf(v.y), .z = fabsf(v.z) }; }
|
||||
v4 pm_abs_v4(v4 v) { return (v4){ .x = fabsf(v.x), .y = fabsf(v.y), .z = fabsf(v.z), .w = fabsf(v.w) }; }
|
||||
|
@ -111,7 +133,7 @@ pm_hash_v3_to_r32(v3 p)
|
|||
v3 p0 = HMM_MultiplyVec3f(p, 0.3183099f);
|
||||
v3 p1 = HMM_AddVec3(p0, (v3){ 0.1f, 0.1f, 0.1f });
|
||||
v3 p2 = pm_fract_v3(p1);
|
||||
v3 p3 = HMM_MultiplyVec3f(p, 17.0f);
|
||||
v3 p3 = HMM_MultiplyVec3f(p2, 17.0f);
|
||||
r32 r0 = fractf(p3.x * p3.y * p3.z * (p3.x + p3.y + p3.z));
|
||||
return r0;
|
||||
}
|
||||
|
@ -152,32 +174,65 @@ pm_noise_v3_to_r32(v3 p)
|
|||
r32 h6 = pm_hash_v3_to_r32(p_fl_6);
|
||||
r32 h7 = pm_hash_v3_to_r32(p_fl_7);
|
||||
|
||||
r32 result = lerp(f.z,
|
||||
lerp(
|
||||
lerp(h0, f.x, h1),
|
||||
f.y,
|
||||
lerp(h2, f.x, h3)
|
||||
),
|
||||
lerp(
|
||||
lerp(h4, f.x, h5),
|
||||
f.y,
|
||||
lerp(h6, f.x, h7)
|
||||
)
|
||||
);
|
||||
r32 h0_1 = lerp(h0, f.x, h1);
|
||||
r32 h2_3 = lerp(h2, f.x, h3);
|
||||
r32 h4_5 = lerp(h4, f.x, h5);
|
||||
r32 h6_7 = lerp(h6, f.x, h7);
|
||||
r32 h01_23 = lerp(h0_1, f.y, h2_3);
|
||||
r32 h45_67 = lerp(h4_5, f.y, h6_7);
|
||||
// r32 result = lerp(
|
||||
// lerp(
|
||||
// lerp(h0, f.x, h1),
|
||||
// f.y,
|
||||
// lerp(h2, f.x, h3)
|
||||
// ),
|
||||
// f.z,
|
||||
// lerp(
|
||||
// lerp(h4, f.x, h5),
|
||||
// f.y,
|
||||
// lerp(h6, f.x, h7)
|
||||
// )
|
||||
// );
|
||||
r32 result = lerp(h01_23, f.z, h45_67);
|
||||
|
||||
assert(result >= 0 && result <= 1);
|
||||
return result;
|
||||
}
|
||||
|
||||
internal r32
|
||||
pm_fmb_3d(v3 p, r32 t)
|
||||
{
|
||||
v3 ts = (v3){t, t, t};
|
||||
r32 tsin = sinf(t);
|
||||
v3 tv = (v3){tsin, tsin, tsin};
|
||||
v3 pp = p;
|
||||
pm_fmb_3d(v3 x, r32 h)
|
||||
{
|
||||
// r32 G = powf(2, -h);
|
||||
// r32 f = 1.0f;
|
||||
// r32 a = 1.0f;
|
||||
// r32 t = 0.0f;
|
||||
// for(s32 i = 0; i < 4; i++)
|
||||
// {
|
||||
// v3 xx = HMM_MultiplyVec3f(x, f);
|
||||
// r32 n = pm_noise_v3_to_r32(xx);
|
||||
// t += a * n;
|
||||
// f *= 2.0f;
|
||||
// a *= G;
|
||||
// }
|
||||
// return (t - .17f) / 1.2f;
|
||||
|
||||
// float t = 0.0;
|
||||
// for(s32 i = 0; i < 4; i++)
|
||||
// {
|
||||
// r32 f = powf(2.0, (r32)(i));
|
||||
// r32 a = powf(f, -h);
|
||||
// r32 n = pm_noise_v3_to_r32(
|
||||
// HMM_MultiplyVec3f(x, f)
|
||||
// );
|
||||
// r32 ns = a * n;
|
||||
// t += ns;
|
||||
// }
|
||||
// return t;
|
||||
|
||||
v3 ts = (v3){h, h, h};
|
||||
v3 pp = x;
|
||||
r32 f = 0.0;
|
||||
|
||||
|
||||
v3 pp0 = HMM_AddVec3(pp, ts);
|
||||
v3 pp1 = HMM_SubtractVec3(pp, ts);
|
||||
|
||||
|
@ -185,8 +240,8 @@ pm_fmb_3d(v3 p, r32 t)
|
|||
f += 0.300000f * pm_noise_v3_to_r32(pp1); pp = HMM_MultiplyVec3f(pp, 2.03);
|
||||
f += 0.125000f * pm_noise_v3_to_r32(pp); pp = HMM_MultiplyVec3f(pp, 2.01);
|
||||
f += 0.062500f * pm_noise_v3_to_r32(pp0); pp = HMM_MultiplyVec3f(pp, 2.04);
|
||||
r32 d = 0.9875f;
|
||||
|
||||
r32 d = 0.9875f;
|
||||
f = f / d;
|
||||
return f;
|
||||
}
|
||||
|
@ -219,4 +274,47 @@ pm_fmb_3d(v3 p, r32 t)
|
|||
// return a.x / a.y;
|
||||
// }
|
||||
|
||||
|
||||
// Color ramps
|
||||
|
||||
typedef struct {
|
||||
r32 pct;
|
||||
v3 color;
|
||||
} Color_Ramp_Anchor;
|
||||
|
||||
typedef struct {
|
||||
Color_Ramp_Anchor anchors[8];
|
||||
u32 anchors_count;
|
||||
} Color_Ramp;
|
||||
|
||||
internal v3
|
||||
color_ramp_eval(Color_Ramp ramp, r32 pct)
|
||||
{
|
||||
// find nearest two anchors
|
||||
// TODO: do a binary search and we just have to assume that the anchors
|
||||
// are in order from least to greatest
|
||||
Color_Ramp_Anchor nearest_below = { .pct = 0, .color = BLACK_V4.xyz };
|
||||
Color_Ramp_Anchor nearest_above = { .pct = 1, .color = BLACK_V4.xyz };
|
||||
r32 dist_below = 1;
|
||||
r32 dist_above = -1;
|
||||
for (u32 i = 0; i < ramp.anchors_count; i++) {
|
||||
Color_Ramp_Anchor anchor = ramp.anchors[i];
|
||||
r32 dist = pct - anchor.pct;
|
||||
if (dist >= 0 && dist_below > dist) {
|
||||
nearest_below = anchor;
|
||||
dist_below = dist;
|
||||
}
|
||||
if (dist <= 0 && dist_above < dist) {
|
||||
nearest_above = anchor;
|
||||
dist_above = dist;
|
||||
}
|
||||
}
|
||||
|
||||
// interpolate between them
|
||||
r32 anchor_range = nearest_above.pct - nearest_below.pct;
|
||||
r32 pct_remapped = (pct - nearest_below.pct) / anchor_range;
|
||||
v3 result = pm_lerp_v3(nearest_below.color, pct_remapped, nearest_above.color);
|
||||
return result;
|
||||
}
|
||||
|
||||
#endif // PATTERNS_MATH_H
|
|
@ -0,0 +1,86 @@
|
|||
char* cvtcsv_header = ""
|
||||
"typedef struct {\n"
|
||||
" Incenter_City_Id city;\n"
|
||||
" u32 year;\n"
|
||||
" Incenter_Month_Id month;\n"
|
||||
" r32 value_0;\n"
|
||||
" r32 value_1;\n"
|
||||
" r32 value_2;\n"
|
||||
"} Incenter_Test_Data_Row;\n";
|
||||
|
||||
internal char*
|
||||
cvtcsv_seek_comma(char* at)
|
||||
{
|
||||
char* result = at;
|
||||
while (*result && *result != ',') { result++; }
|
||||
return result;
|
||||
}
|
||||
|
||||
internal void
|
||||
cvtcsv_process_line(u32 line_number, char* start, char* end, FILE* out)
|
||||
{
|
||||
char* col_end_0 = cvtcsv_seek_comma(start);
|
||||
char* col_end_1 = cvtcsv_seek_comma(col_end_0 + 1);
|
||||
char* col_end_2 = cvtcsv_seek_comma(col_end_1 + 1);
|
||||
char* col_end_3 = cvtcsv_seek_comma(col_end_2 + 1);
|
||||
char* col_end_4 = end - 1; // -1 because line endings are \r\n
|
||||
|
||||
char* col_start_1 = col_end_0 + 1;
|
||||
char* col_start_2 = col_end_1 + 1;
|
||||
char* col_start_3 = col_end_2 + 1;
|
||||
char* col_start_4 = col_end_3 + 1;
|
||||
|
||||
s32 col_len_0 = (u32)(col_end_0 - start);
|
||||
s32 col_len_1 = (u32)(col_end_1 - (col_end_0 + 1));
|
||||
s32 col_len_2 = (u32)(col_end_2 - (col_end_1 + 1));
|
||||
s32 col_len_3 = (u32)(col_end_3 - (col_end_2 + 1));
|
||||
s32 col_len_4 = (u32)(col_end_4 - (col_end_3 + 1));
|
||||
|
||||
fprintf(out, "[%d] = {", line_number);
|
||||
fprintf(out, " %.*s, ", col_len_1, col_start_1); // city id
|
||||
fprintf(out, " %.*s, ", col_len_2, col_start_2); // year
|
||||
fprintf(out, " %.*s, ", col_len_3, col_start_3); // month
|
||||
fprintf(out, " %.*sf, ", col_len_4, col_start_4); // value 1
|
||||
fprintf(out, " 0, 0 },\n");
|
||||
}
|
||||
|
||||
internal void
|
||||
cvtcsv_convert(String path)
|
||||
{
|
||||
// this is hardcoded for a particular kind of csv
|
||||
scratch_get(scratch);
|
||||
File_Handle csv_file = os_file_open(path, FileAccess_Read, FileCreate_OpenExisting);
|
||||
Data csv_data = os_file_read_all(csv_file, scratch.a);
|
||||
String csv = (String){
|
||||
.str = csv_data.base,
|
||||
.len = csv_data.size,
|
||||
.cap = csv_data.size
|
||||
};
|
||||
|
||||
FILE* out = fopen("./data/incenter_test_data.c", "wb");
|
||||
fprintf(out, "%s", cvtcsv_header);
|
||||
fprintf(out, "static Incenter_Test_Data_Row test_data[] = {\n");
|
||||
|
||||
char* at = (char*)csv.str;
|
||||
u32 col = 0;
|
||||
u32 line = 0;
|
||||
char* line_start = at;
|
||||
while (*at != 0)
|
||||
{
|
||||
if (*at == ',') col += 1;
|
||||
if (*at == '\n') {
|
||||
cvtcsv_process_line(line, line_start, at, out);
|
||||
line += 1;
|
||||
col = 0;
|
||||
line_start = at + 1;
|
||||
}
|
||||
at++;
|
||||
}
|
||||
cvtcsv_process_line(line, line_start, at, out);
|
||||
fprintf(out, "};\nglobal u32 test_data_len = sizeof(test_data) / sizeof(test_data[0]);");
|
||||
printf("Done");
|
||||
|
||||
fclose(out);
|
||||
|
||||
scratch_release(scratch);
|
||||
}
|
|
@ -9,6 +9,7 @@ curve_ease_in_out(r32 t)
|
|||
}
|
||||
|
||||
#define incenter_pos_to_unit(p) (v4){ ((p.x / 6.0f) + 0.5f), ((p.y / 6.0f) + 0.5f), ((p.z / 6.0f) + 0.5f), 1.0f }
|
||||
#define incenter_pos_to_bimodal(p) (v4){ (p.x / 3.0f), (p.y / 3.0f), (p.z / 3.0f), 1.0f }
|
||||
|
||||
void
|
||||
test_pattern(Assembly_Pixel_Buffer pixels)
|
||||
|
@ -66,12 +67,93 @@ assembly_pixel_add(Assembly_Pixel a, Assembly_Pixel b)
|
|||
return result;
|
||||
}
|
||||
|
||||
Assembly_Pixel
|
||||
assembly_pixel_add_multi(u32 count, ...)
|
||||
{
|
||||
Assembly_Pixel result = {};
|
||||
va_list args;
|
||||
va_start(args, count);
|
||||
for (u32 i = 0; i < count; i++) {
|
||||
Assembly_Pixel p = va_arg(args, Assembly_Pixel);
|
||||
result.r = u8_add_safe(result.r, p.r);
|
||||
result.g = u8_add_safe(result.g, p.g);
|
||||
result.b = u8_add_safe(result.b, p.b);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
Assembly_Pixel
|
||||
assembly_pixel_scale(Assembly_Pixel p, r32 scale)
|
||||
{
|
||||
Assembly_Pixel result = {
|
||||
.r = (u8)(clamp(0, p.r * scale, 255)),
|
||||
.g = (u8)(clamp(0, p.g * scale, 255)),
|
||||
.b = (u8)(clamp(0, p.b * scale, 255)),
|
||||
};
|
||||
return result;
|
||||
}
|
||||
|
||||
Assembly_Pixel
|
||||
assembly_pixel_scale_u8(u32 r, u32 g, u32 b, r32 scale)
|
||||
{
|
||||
Assembly_Pixel result = {
|
||||
.r = (u8)(clamp(0, r * scale, 255)),
|
||||
.g = (u8)(clamp(0, g * scale, 255)),
|
||||
.b = (u8)(clamp(0, b * scale, 255)),
|
||||
};
|
||||
return result;
|
||||
}
|
||||
|
||||
Assembly_Pixel
|
||||
assembly_pixel_blend(Assembly_Pixel a, Assembly_Pixel b, r32 t)
|
||||
{
|
||||
r32 rf = lerp((r32)a.r, t, (r32)b.r);
|
||||
r32 gf = lerp((r32)a.g, t, (r32)b.g);
|
||||
r32 bf = lerp((r32)a.b, t, (r32)b.b);
|
||||
r32 rc = clamp(0, rf, 255);
|
||||
r32 gc = clamp(0, gf, 255);
|
||||
Assembly_Pixel result = {
|
||||
.r = (u8)rc,
|
||||
.g = (u8)clamp(0, gf, 255),
|
||||
.b = (u8)clamp(0, bf, 255),
|
||||
};
|
||||
return result;
|
||||
}
|
||||
|
||||
v3
|
||||
sun_center_for_pos(v4 p, v4 center, r32 radius, r32 falloff)
|
||||
{
|
||||
v4 p_unit = incenter_pos_to_unit(p);
|
||||
r32 d0 = HMM_LengthVec4(HMM_SubtractVec4(p_unit, center));
|
||||
r32 d1 = falloff - fabsf(d0 - (radius + (0.02f * sinf(tt))));
|
||||
r32 b = d1 / falloff;
|
||||
|
||||
v3 result = {};
|
||||
if (b > 0)
|
||||
{
|
||||
v3 p0 = p.xyz;
|
||||
v3 p1 = HMM_AddVec3(p0, (v3){ tt, -tt, 0 });
|
||||
|
||||
v3 color = {
|
||||
.x = remap_r32(pm_fmb_3d(p0, tt), 0, 1, 0.5, 1),
|
||||
.y = remap_r32(pm_noise_v3_to_r32(p1), 0, 1, 0, 0.3f),
|
||||
.z = 0,
|
||||
};
|
||||
result = HMM_MultiplyVec3f(color, b);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
void
|
||||
sun_center(Assembly_Pixel_Buffer pixels, v4 center, r32 radius, r32 falloff)
|
||||
{
|
||||
for (u32 j = 0; j < pixels.len; j++)
|
||||
{
|
||||
v4 p = incenter_pos_to_unit(pixels.positions[j]);
|
||||
v3 color = sun_center_for_pos(pixels.positions[j], center, radius, falloff);
|
||||
Assembly_Pixel ac = color_v3_to_assembly_pixel(color);
|
||||
pixels.pixels[j] = assembly_pixel_add(ac, pixels.pixels[j]);
|
||||
|
||||
#if 0
|
||||
r32 d0 = HMM_LengthVec4(HMM_SubtractVec4(p, center));
|
||||
r32 d1 = falloff - fabsf(d0 - (radius + (0.02f * sinf(tt))));
|
||||
r32 b = d1 / falloff;
|
||||
|
@ -92,18 +174,21 @@ sun_center(Assembly_Pixel_Buffer pixels, v4 center, r32 radius, r32 falloff)
|
|||
Assembly_Pixel color_1 = assembly_pixel_add(color_0, pixels.pixels[j]);
|
||||
pixels.pixels[j] = color_1;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
grow_pattern_sphere_function(Assembly_Pixel_Buffer pixels, v4 center, r32 radius, r32 falloff)
|
||||
grow_pattern_sphere_function(Assembly_Pixel_Buffer pixels, v4 center, r32 radius, r32 falloff, Assembly_Pixel inner_color)
|
||||
{
|
||||
for (u32 j = 0; j < pixels.len; j++)
|
||||
{
|
||||
v4 p = incenter_pos_to_unit(pixels.positions[j]);
|
||||
r32 d0 = HMM_LengthVec4(HMM_SubtractVec4(p, center));
|
||||
r32 d1 = falloff - fabsf(d0 - (radius + (0.02f * sinf(tt))));
|
||||
r32 b = d1 / falloff;
|
||||
r32 d1 = fabsf(d0 - (radius + (0.02f * sinf(tt))));
|
||||
r32 d2 = falloff - d1;
|
||||
r32 b = d2 / falloff;
|
||||
r32 inner_b = d0 < (radius - falloff) ? 1 : 0;
|
||||
|
||||
v3 color = {
|
||||
.x = 0.5f + 0.5f * sinf(p.x * r32_tau * 4.313f + tt * 1.3f),
|
||||
|
@ -112,13 +197,15 @@ grow_pattern_sphere_function(Assembly_Pixel_Buffer pixels, v4 center, r32 radius
|
|||
};
|
||||
v3 color_b = HMM_MultiplyVec3f(color, b);
|
||||
Assembly_Pixel color_0 = color_v3_to_assembly_pixel(color_b);
|
||||
Assembly_Pixel color_1 = assembly_pixel_add(color_0, pixels.pixels[j]);
|
||||
Assembly_Pixel color_inner = assembly_pixel_scale(inner_color, inner_b);
|
||||
Assembly_Pixel color_1 = assembly_pixel_add_multi(3, color_0, color_inner, pixels.pixels[j]);
|
||||
|
||||
pixels.pixels[j] = color_1;
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
grow_pattern(Assembly_Pixel_Buffer pixels, r32 time)
|
||||
grow_pattern(Assembly_Pixel_Buffer pixels, r32 time, Assembly_Pixel inner_color)
|
||||
{
|
||||
v4 center = (v4){};
|
||||
r32 radius = 0;
|
||||
|
@ -135,15 +222,15 @@ grow_pattern(Assembly_Pixel_Buffer pixels, r32 time)
|
|||
{
|
||||
r32 t = (time - 6) / 4;
|
||||
center = (v4){ 0.5f, 0.5f, 0.5f, 1 };
|
||||
radius = 0.05f + curve_ease_in_out(t) * 0.4f;
|
||||
radius = 0.05f + curve_ease_in_out(t) * 0.6f;
|
||||
falloff = 0.1f - (curve_ease_in_out(t) * 0.05f);
|
||||
}
|
||||
|
||||
grow_pattern_sphere_function(pixels, center, radius, falloff);
|
||||
grow_pattern_sphere_function(pixels, center, radius, falloff, inner_color);
|
||||
}
|
||||
|
||||
void
|
||||
pattern_color(Assembly_Pixel_Buffer pixels, u8 r, u8 g, u8 b)
|
||||
pattern_color(Assembly_Pixel_Buffer pixels, Assembly_Strip_Array strips, u8 r, u8 g, u8 b)
|
||||
{
|
||||
for (u32 j = 0; j < pixels.len; j++)
|
||||
{
|
||||
|
@ -151,6 +238,19 @@ pattern_color(Assembly_Pixel_Buffer pixels, u8 r, u8 g, u8 b)
|
|||
pixels.pixels[j].g = g;
|
||||
pixels.pixels[j].b = b;
|
||||
}
|
||||
|
||||
#if 0
|
||||
for (u32 strip_i = 0; strip_i < strips.len; strip_i++)
|
||||
{
|
||||
Assembly_Strip strip = strips.strips[strip_i];
|
||||
for (u32 led_i = 0; led_i < strip.pixels_len; led_i++)
|
||||
{
|
||||
u32 pixel_index = strip.pixels[led_i];
|
||||
pixels.pixels[pixel_index].r = 0;
|
||||
pixels.pixels[pixel_index].g = 255;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -178,14 +278,225 @@ pattern_blink(Assembly_Pixel_Buffer pixels)
|
|||
pixels.pixels[i].b = 255;
|
||||
}
|
||||
}
|
||||
grow_pattern_sphere_function(pixels, center, o, 0.01f);
|
||||
grow_pattern_sphere_function(pixels, center, o, 0.01f, (Assembly_Pixel){});
|
||||
}
|
||||
|
||||
u32 year = 2019;
|
||||
r32 month = (r32)MONTH_Jan;
|
||||
|
||||
s32
|
||||
test_data_find_nearest_row(Incenter_City_Id city, u32 year, Incenter_Month_Id month)
|
||||
{
|
||||
s32 row_index = -1;
|
||||
s32 nearest = 10000;
|
||||
s32 months = (year * 12) + month;
|
||||
for (s32 i = 0; i < test_data_len; i++)
|
||||
{
|
||||
Incenter_Test_Data_Row row = test_data[i];
|
||||
if (row.city != city) continue;
|
||||
|
||||
s32 row_months = (row.year * 12) + row.month;
|
||||
s32 months_offset = months - row_months;
|
||||
if (months_offset < nearest && months_offset >= 0) {
|
||||
nearest = months_offset;
|
||||
row_index = i;
|
||||
}
|
||||
}
|
||||
return row_index;
|
||||
}
|
||||
|
||||
global r32 city_last_values[city_count] = { -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f, -0.2f,
|
||||
};
|
||||
global r32 city_last_vel[city_count];
|
||||
|
||||
global Assembly_Pixel pixel_white = { 255, 255, 255 };
|
||||
global Assembly_Pixel pixel_black = { 0, 0, 0 };
|
||||
|
||||
void
|
||||
pattern_test_data_scene_hombre(Assembly_Pixel_Buffer pixels, Assembly_Strip_Array strips, Assembly_Pixel color_before_a, Assembly_Pixel color_before_b, Assembly_Pixel color_at, Assembly_Pixel color_after)
|
||||
{
|
||||
Incenter_Test_Data_Row* rows = test_data;
|
||||
|
||||
r32 rand_min = 1000;
|
||||
r32 rand_max = -1000;
|
||||
|
||||
r32 month_delta = 1.0f / 24.0f;
|
||||
if (month >= 11) {
|
||||
s32 x = 5;
|
||||
}
|
||||
for (u32 city = 0; city < city_count; city++)
|
||||
{
|
||||
Assembly_Strip strip = strips.strips[city + 1];
|
||||
s32 data_row = test_data_find_nearest_row(city, year, month);
|
||||
if (data_row < 0) continue;
|
||||
s32 data_row_next = data_row + 1;
|
||||
|
||||
Incenter_Test_Data_Row row_curr = test_data[data_row];
|
||||
r32 target_p = test_data[data_row].value_0;
|
||||
if (data_row_next < test_data_len) {
|
||||
Incenter_Test_Data_Row row_next = test_data[data_row_next];
|
||||
if (row_next.city == row_curr.city)
|
||||
{
|
||||
r32 row_curr_months = (r32)((row_curr.year * 12) + row_curr.month);
|
||||
r32 row_next_months = (r32)((row_next.year * 12) + row_next.month);
|
||||
r32 curr_months = (r32)(year * 12) + month;
|
||||
|
||||
r32 row_month_delta = row_next_months - row_curr_months;
|
||||
r32 delta_from_row_curr = curr_months - row_curr_months;
|
||||
r32 theta = delta_from_row_curr / row_month_delta;
|
||||
|
||||
target_p = lerp(row_curr.value_0 * 0.8f, theta, row_next.value_0 * 0.8f);
|
||||
}
|
||||
}
|
||||
|
||||
r32 last_value = city_last_values[city];
|
||||
r32 dist_to_target = (target_p - last_value);
|
||||
r32 towards_target = dist_to_target > 0 ? 1 : -1;
|
||||
dist_to_target = fabsf(dist_to_target);
|
||||
r32 force_approach = dist_to_target * towards_target * 0.1f;
|
||||
city_last_vel[city] += force_approach;
|
||||
|
||||
r32 max_vel = 0.01f;
|
||||
r32 force_damping = -max(1 - dist_to_target, 0) * (city_last_vel[city]);
|
||||
city_last_vel[city] = clamp(-1 * max_vel, city_last_vel[city] + force_damping, max_vel);
|
||||
|
||||
city_last_values[city] += city_last_vel[city];
|
||||
|
||||
for (u32 led = 0; led < strip.pixels_len; led++)
|
||||
{
|
||||
r32 pct = (r32)(strip.pixels_len - led) / (r32)strip.pixels_len;
|
||||
u32 led_index = strip.pixels[led];
|
||||
v4 led_pos = incenter_pos_to_unit(pixels.positions[led_index]);
|
||||
|
||||
// max(-|pct -pct_r|, 0) ^ 10
|
||||
r32 d0 = (-1 * fabsf(city_last_values[city] - pct)) + 1;
|
||||
r32 d1 = max(0, d0);
|
||||
r32 d2 = powf(d1, 20);
|
||||
r32 d2_inverse = 1 - d2;
|
||||
v3 noise_pos0 = HMM_MultiplyVec3f(HMM_AddVec3(led_pos.xyz, (v3){237, 111 + tt, 923}), 16);
|
||||
r32 at_noise = pm_fmb_3d(noise_pos0, 1);
|
||||
at_noise = pm_smoothstep_r32(at_noise);
|
||||
r32 d3 = d2;
|
||||
|
||||
v3 noise_pos1 = HMM_MultiplyVec3f(HMM_AddVec3(led_pos.xyz, (v3){237, 111 + (tt * 0.3f), 923}), 16);
|
||||
r32 inner_noise = pm_smoothstep_r32(pm_fmb_3d(noise_pos1, 1));
|
||||
|
||||
r32 before = pct < city_last_values[city] ? d2_inverse : 0;
|
||||
r32 after = pct > city_last_values[city] ? d2_inverse : 0;
|
||||
|
||||
Assembly_Pixel color_before_ = assembly_pixel_scale(
|
||||
assembly_pixel_blend(color_before_a, color_before_b, at_noise * at_noise * at_noise),
|
||||
before
|
||||
);
|
||||
Assembly_Pixel color_after_ = assembly_pixel_scale(color_after, after - (0.8f * inner_noise));
|
||||
Assembly_Pixel color_at_ = assembly_pixel_scale(color_at, d3);
|
||||
|
||||
pixels.pixels[led_index] = assembly_pixel_add_multi(3, color_before_, color_after_, color_at_);
|
||||
}
|
||||
}
|
||||
|
||||
month += month_delta;
|
||||
if (month > (r32)MONTH_Dec + 1) {
|
||||
month = (r32)MONTH_Jan;
|
||||
year += 1;
|
||||
if (year > 2022) {
|
||||
year = 2019;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
pattern_demo(Assembly_Pixel_Buffer pixels)
|
||||
pattern_test_data_scene(Assembly_Pixel_Buffer pixels, Assembly_Strip_Array strips)
|
||||
{
|
||||
pattern_color(pixels, 255, 255, 255); // reset
|
||||
return;
|
||||
Incenter_Test_Data_Row* rows = test_data;
|
||||
|
||||
r32 month_delta = 1.0f / 24.0f;
|
||||
if (month >= 11) {
|
||||
s32 x = 5;
|
||||
}
|
||||
for (u32 city = 0; city < city_count; city++)
|
||||
{
|
||||
Assembly_Strip strip = strips.strips[city + 1];
|
||||
s32 data_row = test_data_find_nearest_row(city, year, month);
|
||||
if (data_row < 0) continue;
|
||||
s32 data_row_next = data_row + 1;
|
||||
|
||||
Incenter_Test_Data_Row row_curr = test_data[data_row];
|
||||
r32 percent_r = test_data[data_row].value_0;
|
||||
r32 percent_g = test_data[data_row].value_1;
|
||||
r32 percent_b = test_data[data_row].value_2;
|
||||
if (data_row_next < test_data_len) {
|
||||
Incenter_Test_Data_Row row_next = test_data[data_row_next];
|
||||
if (row_next.city == row_curr.city)
|
||||
{
|
||||
r32 row_curr_months = (r32)((row_curr.year * 12) + row_curr.month);
|
||||
r32 row_next_months = (r32)((row_next.year * 12) + row_next.month);
|
||||
r32 curr_months = (r32)(year * 12) + month;
|
||||
|
||||
r32 row_month_delta = row_next_months - row_curr_months;
|
||||
r32 delta_from_row_curr = curr_months - row_curr_months;
|
||||
r32 theta = delta_from_row_curr / row_month_delta;
|
||||
|
||||
percent_r = lerp(row_curr.value_0, theta, row_next.value_0);
|
||||
percent_g = lerp(row_curr.value_1, theta, row_next.value_1);
|
||||
percent_b = lerp(row_curr.value_2, theta, row_next.value_2);
|
||||
}
|
||||
}
|
||||
|
||||
// printf("%d %f - %f\n", year, month, percent_r);
|
||||
|
||||
for (u32 led = 0; led < strip.pixels_len; led++)
|
||||
{
|
||||
r32 pct = (r32)(strip.pixels_len - led) / (r32)strip.pixels_len;
|
||||
u32 led_index = strip.pixels[led];
|
||||
|
||||
#if 0
|
||||
pixels.pixels[led_index] = (Assembly_Pixel){
|
||||
.r = 32,
|
||||
.g = 32,
|
||||
.b = 32,
|
||||
};
|
||||
|
||||
if (pct <= percent_r) pixels.pixels[led_index].r = 255;
|
||||
if (pct <= percent_g) pixels.pixels[led_index].g = 255;
|
||||
if (pct <= percent_b) pixels.pixels[led_index].b = 255;
|
||||
#else
|
||||
if (pct > percent_r) {
|
||||
pixels.pixels[led_index] = (Assembly_Pixel){
|
||||
.r = 32,
|
||||
.g = 32,
|
||||
.b = 32,
|
||||
};
|
||||
} else {
|
||||
r32 pct_dist = percent_r - pct;
|
||||
r32 ramp = (percent_r - pct_dist) / percent_r;
|
||||
ramp = ramp * ramp;
|
||||
|
||||
pixels.pixels[led_index] = (Assembly_Pixel){
|
||||
.r = 32 + (128 * ramp),
|
||||
.g = 128 + (128 * ramp),
|
||||
.b = 255,
|
||||
};
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
month += month_delta;
|
||||
if (month > (r32)MONTH_Dec + 1) {
|
||||
month = (r32)MONTH_Jan;
|
||||
year += 1;
|
||||
if (year > 2022) {
|
||||
year = 2019;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
pattern_demo(Assembly_Pixel_Buffer pixels, Assembly_Strip_Array strips)
|
||||
{
|
||||
// clear previous frame
|
||||
pattern_color(pixels, strips, 0, 0, 0);
|
||||
|
||||
r32 sun_limit = 5;
|
||||
if (tt < sun_limit)
|
||||
|
@ -200,9 +511,107 @@ pattern_demo(Assembly_Pixel_Buffer pixels)
|
|||
}
|
||||
pattern_blink(pixels);
|
||||
|
||||
Assembly_Pixel data_less_than_color_a = { .r = 32, .g = 128, .b = 255 };
|
||||
Assembly_Pixel data_less_than_color_b = { .r = 32, .g = 255, .b = 128 };
|
||||
Assembly_Pixel data_border_color = { .r = 255, .g = 255, .b = 255 };
|
||||
Assembly_Pixel data_greater_than_color = { .r = 64, .g = 0, .b = 0 };
|
||||
|
||||
r32 grow_delay = 2;
|
||||
if (tt > grow_delay)
|
||||
if (tt > grow_delay && tt < grow_delay + 10)
|
||||
{
|
||||
grow_pattern(pixels, tt - grow_delay);
|
||||
grow_pattern(pixels, tt - grow_delay, data_greater_than_color);
|
||||
}
|
||||
|
||||
if (tt >= grow_delay + 9) {
|
||||
pattern_test_data_scene_hombre(pixels, strips, data_less_than_color_a, data_less_than_color_b, data_border_color, data_greater_than_color);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//////////// MOOD BOARD DEMOS ////////////
|
||||
|
||||
global Color_Ramp aurora_ramp = {
|
||||
.anchors = {
|
||||
[0] = { .pct = 0, .color = { 0, 0, 0 } },
|
||||
[1] = { .pct = .4f, .color = { 0, 0, 0 } },
|
||||
[2] = { .pct = .55f, .color = { 176.f / 255.f, 65.f / 255.f, 36.f / 255.f } },
|
||||
[3] = { .pct = .7f, .color = { 237.f / 255.f, 201.f / 255.f, 138.f / 255.f } },
|
||||
[4] = { .pct = .80f, .color = { 49.f / 255.f, 156.f / 255.f, 255.f / 255.f } },
|
||||
[5] = { .pct = 1.0f, .color = { 49.f / 255.f, 156.f / 255.f, 255.f / 255.f } },
|
||||
},
|
||||
.anchors_count = 5,
|
||||
};
|
||||
|
||||
global Color_Ramp cities_ramp = {
|
||||
.anchors = {
|
||||
[0] = { .pct = 0, .color = { 0, 0, 0 } },
|
||||
[1] = { .pct = .75f, .color = { 0, 0, 0 } },
|
||||
[2] = { .pct = 1, .color = { 255.f / 255.f, 194.f / 255.f, 86.f / 255.5 } },
|
||||
},
|
||||
.anchors_count = 3
|
||||
};
|
||||
|
||||
void
|
||||
pattern_demo_1(Assembly_Pixel_Buffer pixels, Assembly_Strip_Array strips)
|
||||
{
|
||||
for (u32 j = 0; j < pixels.len; j++)
|
||||
{
|
||||
v4 p = pixels.positions[j];
|
||||
v4 p_unit = incenter_pos_to_unit(p);
|
||||
v3 p_offset = HMM_AddVec3(p.xyz, (v3){ 213.145f, 99.321f, 71.3f });
|
||||
v3 p_scaled = HMM_MultiplyVec3f(p_offset, 2);
|
||||
r32 v = pm_fmb_3d(p_scaled, tt);
|
||||
r32 vv = pm_smoothstep_r32(v);
|
||||
v3 color = color_ramp_eval(aurora_ramp, vv);
|
||||
pixels.pixels[j] = color_v3_to_assembly_pixel(color);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
pattern_demo_2(Assembly_Pixel_Buffer pixels, Assembly_Strip_Array strips)
|
||||
{
|
||||
for (u32 city = 0; city < city_count; city++)
|
||||
{
|
||||
Assembly_Strip strip = strips.strips[city + 1];
|
||||
for (u32 led = 0; led < strip.pixels_len; led++)
|
||||
{
|
||||
r32 pct = (r32)(strip.pixels_len - led) / (r32)strip.pixels_len;
|
||||
u32 led_index = strip.pixels[led];
|
||||
|
||||
v3 color = color_ramp_eval(cities_ramp, 1 - pct);
|
||||
pixels.pixels[led_index] = color_v3_to_assembly_pixel(color);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// sunrise
|
||||
void
|
||||
pattern_demo_3(Assembly_Pixel_Buffer pixels, Assembly_Strip_Array strips)
|
||||
{
|
||||
v3 sun_dir = (v3){ sinf(tt), 0, cosf(tt) };
|
||||
for (u32 city = 0; city < city_count; city++)
|
||||
{
|
||||
Assembly_Strip strip = strips.strips[city + 1];
|
||||
for (u32 led = 0; led < strip.pixels_len; led++)
|
||||
{
|
||||
r32 pct = (r32)(strip.pixels_len - led) / (r32)strip.pixels_len;
|
||||
u32 led_index = strip.pixels[led];
|
||||
|
||||
v3 cities_color = color_ramp_eval(cities_ramp, 1 - pct);
|
||||
v4 p = pixels.positions[led_index];
|
||||
v4 p_unit = incenter_pos_to_bimodal(p);
|
||||
r32 d = HMM_DotVec3(p_unit.xyz, sun_dir);
|
||||
r32 dc = clamp(0, d, 1);
|
||||
r32 ds = clamp(0, -1 * d, 1);
|
||||
cities_color = HMM_MultiplyVec3f(cities_color, dc);
|
||||
|
||||
v3 sky_color = { 49.f / 255.f, 156.f / 255.f, 255.f / 255.f };
|
||||
sky_color = HMM_MultiplyVec3f(sky_color, ds);
|
||||
v3 day_color = HMM_AddVec3(sky_color, cities_color);
|
||||
|
||||
v3 sun_color = sun_center_for_pos(pixels.positions[led_index], (v4){0.5f, 0.5f, 0.5f, 1}, .1f, .1f);
|
||||
v3 color = HMM_AddVec3(day_color, sun_color);
|
||||
pixels.pixels[led_index] = color_v3_to_assembly_pixel(color);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,147 @@
|
|||
|
||||
internal App_Init_Desc
|
||||
incenter_get_init_desc()
|
||||
{
|
||||
App_Init_Desc result = {};
|
||||
result.assembly_cap = 4;
|
||||
return result;
|
||||
}
|
||||
|
||||
#define INCENTER_METER 1.0f
|
||||
#define INCENTER_FOOT 0.3048f
|
||||
#define INCENTER_METERS(count) (count) * INCENTER_METER
|
||||
#define INCENTER_FEET(count) (count) * INCENTER_FOOT
|
||||
#define INCENTER_PER_METER(count) INCENTER_METER / (r32)(count)
|
||||
|
||||
internal void
|
||||
incenter_init(App_State* state)
|
||||
{
|
||||
// create a fake sculpture
|
||||
Assembly_Handle ah = assembly_add(&state->assemblies, lit_str("test"), 7043, city_count + 1);
|
||||
//Assembly_Handle ah = assembly_add(&state->assemblies, lit_str("test"), 20000, 150);
|
||||
|
||||
scratch_get(scratch);
|
||||
Allocator* s = scratch.a;
|
||||
|
||||
v3 start_p = (v3){0, 0, 0};
|
||||
|
||||
Assembly_Strip* vertical_strip = assembly_add_strip(&state->assemblies, ah, 123);
|
||||
assembly_strip_create_leds(
|
||||
&state->assemblies,
|
||||
ah,
|
||||
vertical_strip,
|
||||
start_p,
|
||||
(v3){0, INCENTER_FEET(-4.5f), 0},
|
||||
123
|
||||
);
|
||||
|
||||
r32 radius = INCENTER_FEET(10);
|
||||
|
||||
Random_Series rand = random_series_create(hash_djb2_cstr_to_u32("slfsaassdjf"));
|
||||
u32 i = 0;
|
||||
while (i < city_count)
|
||||
//for (u32 i = 0; i < 40; i++)
|
||||
{
|
||||
Incenter_City_Desc city = city_descs[i];
|
||||
|
||||
#if 0
|
||||
// convert lat/lon (degrees) to theta/phi (radians)
|
||||
// lat is in the range -90deg to 90deg
|
||||
// lon is in the range -180deg to 180deg
|
||||
// we want both in the range 0 to 2
|
||||
r32 theta = ((city.lat + 90) / 180.0f) * r32_pi;
|
||||
r32 phi = ((city.lon + 180) / 360.0f) * r32_tau;
|
||||
|
||||
printf("%s - \t\t%f %f -> \t\t%f %f\n",
|
||||
city_strings[city.id],
|
||||
city.lat, city.lon,
|
||||
theta, phi
|
||||
);
|
||||
#else
|
||||
r32 theta = random_series_next_unilateral(&rand) * r32_tau;
|
||||
r32 phi = random_series_next_unilateral(&rand) * r32_tau;
|
||||
#endif
|
||||
|
||||
// spherical to cartesian conversion
|
||||
v3 end_p = {
|
||||
radius * sinf(phi) * cosf(theta),
|
||||
radius * sinf(phi) * sinf(theta),
|
||||
radius * cosf(phi)
|
||||
};
|
||||
|
||||
r32 down = HMM_DotVec3(HMM_NormalizeVec3(end_p), (v3){0, -1, 0});
|
||||
//if (down > 0.7f || down < -0.9f) continue;
|
||||
|
||||
Assembly_Strip* strip = assembly_add_strip(&state->assemblies, ah, 123);
|
||||
strip->output_kind = OutputData_NetworkSACN;
|
||||
strip->sacn_universe = city.sacn_universe;
|
||||
|
||||
assembly_strip_create_leds(&state->assemblies, ah, strip, start_p, end_p, 123);
|
||||
i++;
|
||||
}
|
||||
|
||||
r32 rad = 0.05f;
|
||||
sculpture_updated(state, 5, rad);
|
||||
scratch_release(scratch);
|
||||
}
|
||||
|
||||
internal void
|
||||
incenter_frame_prepare(App_State* state)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
global u32 pattern_sel = 2;
|
||||
|
||||
internal void
|
||||
incenter_frame(App_State* state)
|
||||
{
|
||||
Assembly_Array assemblies = state->assemblies;
|
||||
|
||||
if (input_key_is_down(state->input_state, KeyCode_0)) { tt = 0; pattern_sel = 0; }
|
||||
if (input_key_is_down(state->input_state, KeyCode_1)) { tt = 0; pattern_sel = 1; }
|
||||
if (input_key_is_down(state->input_state, KeyCode_2)) { tt = 0; pattern_sel = 2; }
|
||||
if (input_key_is_down(state->input_state, KeyCode_3)) { tt = 0; pattern_sel = 3; }
|
||||
if (input_key_is_down(state->input_state, KeyCode_4)) { tt = 0; pattern_sel = 4; }
|
||||
if (input_key_is_down(state->input_state, KeyCode_5)) { tt = 0; pattern_sel = 5; }
|
||||
|
||||
///////////////////////////////////////
|
||||
// Temp Pattern Simulation
|
||||
|
||||
tt += 1.0f / 60.0f;
|
||||
if (tt > 50) tt = 0;
|
||||
|
||||
switch (pattern_sel) {
|
||||
case 0: { pattern_color(assemblies.pixel_buffers[0], assemblies.strip_arrays[0], 255, 255, 255); } break;
|
||||
case 1: { pattern_demo_1(assemblies.pixel_buffers[0], assemblies.strip_arrays[0]); } break;
|
||||
case 2: { pattern_demo_2(assemblies.pixel_buffers[0], assemblies.strip_arrays[0]); } break;
|
||||
case 3: { pattern_demo_3(assemblies.pixel_buffers[0], assemblies.strip_arrays[0]); } break;
|
||||
default: { pattern_demo (assemblies.pixel_buffers[0], assemblies.strip_arrays[0]); } break;
|
||||
}
|
||||
|
||||
#if 0
|
||||
r32 hrange = 1;
|
||||
r32 range = hrange * 2;
|
||||
for (u32 i = 0; i < assemblies.len; i++)
|
||||
{
|
||||
Assembly_Pixel_Buffer pixels = assemblies.pixel_buffers[i];
|
||||
//grow_pattern(pixels);
|
||||
//pattern_color(pixels, 0, 0, 0);
|
||||
pattern_demo(pixels, assemblies.strip_arrays[i]);
|
||||
// pattern_test_data_scene_hombre(
|
||||
// pixels,
|
||||
// assemblies.strip_arrays[i],
|
||||
// (Assembly_Pixel){ .r = 32, .g = 128, .b = 255 },
|
||||
// (Assembly_Pixel){ .r = 255, .g = 200, .b = 32 },
|
||||
// (Assembly_Pixel){ .r = 255, .g = 255, .b = 255 },
|
||||
// (Assembly_Pixel){ .r = 64, .g = 0, .b = 0 }
|
||||
// );
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
internal void
|
||||
incenter_cleanup(App_State* state)
|
||||
{
|
||||
|
||||
}
|
|
@ -1,89 +0,0 @@
|
|||
|
||||
internal App_Init_Desc
|
||||
incenter_get_init_desc()
|
||||
{
|
||||
App_Init_Desc result = {};
|
||||
result.assembly_cap = 4;
|
||||
return result;
|
||||
}
|
||||
|
||||
#define INCENTER_METER 1.0f
|
||||
#define INCENTER_FOOT 0.3048f
|
||||
#define INCENTER_METERS(count) (count) * INCENTER_METER
|
||||
#define INCENTER_FEET(count) (count) * INCENTER_FOOT
|
||||
#define INCENTER_PER_METER(count) INCENTER_METER / (r32)(count)
|
||||
|
||||
internal void
|
||||
incenter_init(App_State* state)
|
||||
{
|
||||
// create a fake sculpture
|
||||
Assembly_Handle ah = assembly_add(&state->assemblies, lit_str("test"), 5043, 41);
|
||||
//Assembly_Handle ah = assembly_add(&state->assemblies, lit_str("test"), 20000, 150);
|
||||
|
||||
scratch_get(scratch);
|
||||
Allocator* s = scratch.a;
|
||||
|
||||
v3 start_p = (v3){0, 0, 0};
|
||||
|
||||
Assembly_Strip* vertical_strip = assembly_add_strip(&state->assemblies, ah, 123);
|
||||
assembly_strip_create_leds(
|
||||
&state->assemblies,
|
||||
ah,
|
||||
vertical_strip,
|
||||
start_p,
|
||||
(v3){0, INCENTER_FEET(-4.5f), 0},
|
||||
123
|
||||
);
|
||||
|
||||
r32 radius = INCENTER_FEET(10);
|
||||
|
||||
Random_Series rand = random_series_create(hash_djb2_cstr_to_u32("slfsaassdjf"));
|
||||
u32 i = 0;
|
||||
while (i < 40)
|
||||
//for (u32 i = 0; i < 40; i++)
|
||||
{
|
||||
r32 theta = random_series_next_unilateral(&rand) * r32_tau;
|
||||
r32 phi = random_series_next_unilateral(&rand) * r32_tau;
|
||||
// spherical to cartesian conversion
|
||||
v3 end_p = {
|
||||
radius * sinf(phi) * cosf(theta),
|
||||
radius * sinf(phi) * sinf(theta),
|
||||
radius * cosf(phi)
|
||||
};
|
||||
|
||||
r32 down = HMM_DotVec3(HMM_NormalizeVec3(end_p), (v3){0, -1, 0});
|
||||
if (down > 0.7f || down < -0.9f) continue;
|
||||
|
||||
Assembly_Strip* strip = assembly_add_strip(&state->assemblies, ah, 123);
|
||||
strip->output_kind = OutputData_NetworkSACN;
|
||||
strip->sacn_universe = i;
|
||||
|
||||
|
||||
|
||||
|
||||
assembly_strip_create_leds(&state->assemblies, ah, strip, start_p, end_p, 123);
|
||||
i++;
|
||||
}
|
||||
|
||||
r32 rad = 0.05f;
|
||||
sculpture_updated(state, 5, rad);
|
||||
scratch_release(scratch);
|
||||
}
|
||||
|
||||
internal void
|
||||
incenter_frame_prepare(App_State* state)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
internal void
|
||||
incenter_frame(App_State* state)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
internal void
|
||||
incenter_cleanup(App_State* state)
|
||||
{
|
||||
|
||||
}
|
|
@ -0,0 +1,447 @@
|
|||
typedef struct
|
||||
{
|
||||
u32* city_to_strip_index;
|
||||
u32 city_to_strip_index_len;
|
||||
} Incenter_State;
|
||||
|
||||
enum {
|
||||
city_black_rock = 0,
|
||||
|
||||
city_kiev = 1,
|
||||
city_buenos_aires,
|
||||
city_canberra,
|
||||
city_yerevan,
|
||||
city_bishkek,
|
||||
city_dhaka,
|
||||
city_sucre,
|
||||
city_brasilia,
|
||||
city_ottawa,
|
||||
city_santiago,
|
||||
city_beijing,
|
||||
city_bogota,
|
||||
city_nicosia,
|
||||
city_quito,
|
||||
city_cairo,
|
||||
city_addis_ababa,
|
||||
city_berlin,
|
||||
city_athens,
|
||||
city_guatemala_city,
|
||||
city_jakarta,
|
||||
city_tehran,
|
||||
city_baghdad,
|
||||
city_tokyo,
|
||||
city_amman,
|
||||
city_nairobi,
|
||||
city_beirut,
|
||||
city_tripoli,
|
||||
city_kuala_lumpur,
|
||||
city_male,
|
||||
city_mexico_city,
|
||||
city_ulan_bator,
|
||||
city_rabat,
|
||||
city_amsterdam,
|
||||
city_wellington,
|
||||
city_managua,
|
||||
city_abuja,
|
||||
city_islamabad,
|
||||
city_lima,
|
||||
city_bucharest,
|
||||
city_moscow,
|
||||
city_belgrade,
|
||||
city_singapore,
|
||||
city_seoul,
|
||||
city_tunis,
|
||||
city_bangkok,
|
||||
city_washington_dc,
|
||||
city_hanoi,
|
||||
city_harare,
|
||||
city_ankara,
|
||||
|
||||
city_count,
|
||||
};
|
||||
typedef u32 Incenter_City_Id;
|
||||
|
||||
enum {
|
||||
MONTH_Jan,
|
||||
MONTH_Feb,
|
||||
MONTH_Mar,
|
||||
MONTH_Apr,
|
||||
MONTH_May,
|
||||
MONTH_Jun,
|
||||
MONTH_Jul,
|
||||
MONTH_Aug,
|
||||
MONTH_Sep,
|
||||
MONTH_Oct,
|
||||
MONTH_Nov,
|
||||
MONTH_Dec,
|
||||
};
|
||||
typedef u32 Incenter_Month_Id;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
Incenter_City_Id id;
|
||||
|
||||
r32 lat;
|
||||
r32 lon;
|
||||
|
||||
u32 sacn_universe;
|
||||
|
||||
// TODO: Some way to access this cities strip of leds
|
||||
} Incenter_City_Desc;
|
||||
|
||||
global Incenter_City_Desc city_descs[] = {
|
||||
[city_kiev] = {
|
||||
.id = city_kiev,
|
||||
.lat = 50.4501f,
|
||||
.lon = 30.523399f,
|
||||
.sacn_universe = city_kiev,
|
||||
},
|
||||
[city_buenos_aires] = {
|
||||
.id = city_buenos_aires,
|
||||
.lat = -58.381593f,
|
||||
.lon = -34.603723f,
|
||||
.sacn_universe = city_buenos_aires,
|
||||
},
|
||||
[city_canberra] = {
|
||||
.id = city_canberra,
|
||||
.lat = 149.128684f,
|
||||
.lon = -35.282000f,
|
||||
.sacn_universe = city_canberra,
|
||||
},
|
||||
[city_yerevan] = {
|
||||
.id = city_yerevan,
|
||||
.lat = 44.516667f,
|
||||
.lon = 40.183333f,
|
||||
.sacn_universe = city_yerevan,
|
||||
},
|
||||
[city_bishkek] = {
|
||||
.id = city_bishkek,
|
||||
.lat = 74.612222f,
|
||||
.lon = 42.874722f,
|
||||
.sacn_universe = city_bishkek,
|
||||
},
|
||||
[city_dhaka] = {
|
||||
.id = city_dhaka,
|
||||
.lat = 90.412518f,
|
||||
.lon = 23.810332f,
|
||||
.sacn_universe = city_dhaka,
|
||||
},
|
||||
[city_sucre] = {
|
||||
.id = city_sucre,
|
||||
.lat = -65.261961f,
|
||||
.lon = -19.019585f,
|
||||
.sacn_universe = city_sucre,
|
||||
},
|
||||
[city_brasilia] = {
|
||||
.id = city_brasilia,
|
||||
.lat = -75.697193f,
|
||||
.lon = 45.421530f,
|
||||
.sacn_universe = city_brasilia,
|
||||
},
|
||||
[city_ottawa] = {
|
||||
.id = city_ottawa,
|
||||
.lat = -75.697193f,
|
||||
.lon = 45.421530f,
|
||||
.sacn_universe = city_ottawa,
|
||||
},
|
||||
[city_santiago] = {
|
||||
.id = city_santiago,
|
||||
.lat = -70.641997f,
|
||||
.lon = -33.469120f,
|
||||
.sacn_universe = city_santiago,
|
||||
},
|
||||
[city_beijing] = {
|
||||
.id = city_beijing,
|
||||
.lat = 116.407395f,
|
||||
.lon = 39.904211f,
|
||||
.sacn_universe = city_beijing,
|
||||
},
|
||||
[city_bogota] = {
|
||||
.id = city_bogota,
|
||||
.lat = 33.382988f,
|
||||
.lon = 35.188336f,
|
||||
.sacn_universe = city_bogota,
|
||||
},
|
||||
[city_nicosia] = {
|
||||
.id = city_nicosia,
|
||||
.lat = 33.382988f,
|
||||
.lon = 35.188336f,
|
||||
.sacn_universe = city_nicosia,
|
||||
},
|
||||
[city_quito] = {
|
||||
.id = city_quito,
|
||||
.lat = -78.467838f,
|
||||
.lon = -0.180653f,
|
||||
.sacn_universe = city_quito,
|
||||
},
|
||||
[city_cairo] = {
|
||||
.id = city_cairo,
|
||||
.lat = 31.235712f,
|
||||
.lon = 30.044420f,
|
||||
.sacn_universe = city_cairo,
|
||||
},
|
||||
[city_addis_ababa] = {
|
||||
.id = city_addis_ababa,
|
||||
.lat = 38.757761f,
|
||||
.lon = 8.980603f,
|
||||
.sacn_universe = city_addis_ababa,
|
||||
},
|
||||
[city_berlin] = {
|
||||
.id = city_berlin,
|
||||
.lat = 13.404954f,
|
||||
.lon = 52.520007f,
|
||||
.sacn_universe = city_berlin,
|
||||
},
|
||||
[city_athens] = {
|
||||
.id = city_athens,
|
||||
.lat = 23.729360f,
|
||||
.lon = 37.983917f,
|
||||
.sacn_universe = city_athens,
|
||||
},
|
||||
[city_guatemala_city] = {
|
||||
.id = city_guatemala_city,
|
||||
.lat = -90.506882f,
|
||||
.lon = 14.634915f,
|
||||
.sacn_universe = city_guatemala_city,
|
||||
},
|
||||
[city_jakarta] = {
|
||||
.id = city_jakarta,
|
||||
.lat = 106.845599f,
|
||||
.lon = -6.208763f,
|
||||
.sacn_universe = city_jakarta,
|
||||
},
|
||||
[city_tehran] = {
|
||||
.id = city_tehran,
|
||||
.lat = 35.69439f,
|
||||
.lon = 51.42151f,
|
||||
.sacn_universe = city_tehran,
|
||||
},
|
||||
[city_baghdad] = {
|
||||
.id = city_baghdad,
|
||||
.lat = 33.3302946f,
|
||||
.lon = 44.391758f,
|
||||
.sacn_universe = city_baghdad,
|
||||
},
|
||||
[city_tokyo] = {
|
||||
.id = city_tokyo,
|
||||
.lat = 35.689506f,
|
||||
.lon = 139.6917f,
|
||||
.sacn_universe = city_tokyo,
|
||||
},
|
||||
[city_amman] = {
|
||||
.id = city_amman,
|
||||
.lat = 35.945695f,
|
||||
.lon = 31.956578f,
|
||||
.sacn_universe = city_amman,
|
||||
},
|
||||
[city_nairobi] = {
|
||||
.id = city_nairobi,
|
||||
.lat = 36.821946f,
|
||||
.lon = -1.292066f,
|
||||
.sacn_universe = city_nairobi,
|
||||
},
|
||||
[city_beirut] = {
|
||||
.id = city_beirut,
|
||||
.lat = 35.495479f,
|
||||
.lon = 33.888629f,
|
||||
.sacn_universe = city_beirut,
|
||||
},
|
||||
[city_tripoli] = {
|
||||
.id = city_tripoli,
|
||||
.lat = 13.191338f,
|
||||
.lon = 32.887209f,
|
||||
.sacn_universe = city_tripoli,
|
||||
},
|
||||
[city_kuala_lumpur] = {
|
||||
.id = city_kuala_lumpur,
|
||||
.lat = 101.686855f,
|
||||
.lon = 3.139003f,
|
||||
.sacn_universe = city_kuala_lumpur,
|
||||
},
|
||||
[city_male] = {
|
||||
.id = city_male,
|
||||
.lat = 4.1750931f,
|
||||
.lon = 73.5097742f,
|
||||
.sacn_universe = city_male,
|
||||
},
|
||||
[city_mexico_city] = {
|
||||
.id = city_mexico_city,
|
||||
.lat = -99.133208f,
|
||||
.lon = 19.432608f,
|
||||
.sacn_universe = city_mexico_city,
|
||||
},
|
||||
[city_ulan_bator] = {
|
||||
.id = city_ulan_bator,
|
||||
.lat = 106.905744f,
|
||||
.lon = 47.886399f,
|
||||
.sacn_universe = city_ulan_bator,
|
||||
},
|
||||
[city_rabat] = {
|
||||
.id = city_rabat,
|
||||
.lat = -6.849813f,
|
||||
.lon = 33.971590f,
|
||||
.sacn_universe = city_rabat,
|
||||
},
|
||||
[city_amsterdam] = {
|
||||
.id = city_amsterdam,
|
||||
.lat = 4.895168f,
|
||||
.lon = 52.370216f,
|
||||
.sacn_universe = city_amsterdam,
|
||||
},
|
||||
[city_wellington] = {
|
||||
.id = city_wellington,
|
||||
.lat = 174.776236f,
|
||||
.lon = 41.286460f,
|
||||
.sacn_universe = city_wellington,
|
||||
},
|
||||
[city_managua] = {
|
||||
.id = city_managua,
|
||||
.lat = -86.251389f,
|
||||
.lon = 12.136389f,
|
||||
.sacn_universe = city_managua,
|
||||
},
|
||||
[city_abuja] = {
|
||||
.id = city_abuja,
|
||||
.lat = 7.483333f,
|
||||
.lon = 9.066667f,
|
||||
.sacn_universe = city_abuja,
|
||||
},
|
||||
[city_islamabad] = {
|
||||
.id = city_islamabad,
|
||||
.lat = 73.093146f,
|
||||
.lon = 33.729388f,
|
||||
.sacn_universe = city_islamabad,
|
||||
},
|
||||
[city_lima] = {
|
||||
.id = city_lima,
|
||||
.lat = -77.042793f,
|
||||
.lon = -12.046374f,
|
||||
.sacn_universe = city_lima,
|
||||
},
|
||||
[city_bucharest] = {
|
||||
.id = city_bucharest,
|
||||
.lat = 26.102538f,
|
||||
.lon = 44.426767f,
|
||||
.sacn_universe = city_bucharest,
|
||||
},
|
||||
[city_moscow] = {
|
||||
.id = city_moscow,
|
||||
.lat = 37.617300f,
|
||||
.lon = 55.755826f,
|
||||
.sacn_universe = city_moscow,
|
||||
},
|
||||
[city_belgrade] = {
|
||||
.id = city_belgrade,
|
||||
.lat = 20.448922f,
|
||||
.lon = 44.786568f,
|
||||
.sacn_universe = city_belgrade,
|
||||
},
|
||||
[city_singapore] = {
|
||||
.id = city_singapore,
|
||||
.lat = 103.819836f,
|
||||
.lon = 1.352083f,
|
||||
.sacn_universe = city_singapore,
|
||||
},
|
||||
[city_seoul] = {
|
||||
.id = city_seoul,
|
||||
.lat = 126.977969f,
|
||||
.lon = 37.566535f,
|
||||
.sacn_universe = city_seoul,
|
||||
},
|
||||
[city_tunis] = {
|
||||
.id = city_tunis,
|
||||
.lat = 9.537499f,
|
||||
.lon = 33.886917f,
|
||||
.sacn_universe = city_tunis,
|
||||
},
|
||||
[city_bangkok] = {
|
||||
.id = city_bangkok,
|
||||
.lat = 100.501765f,
|
||||
.lon = 13.756331f,
|
||||
.sacn_universe = city_bangkok,
|
||||
},
|
||||
[city_washington_dc] = {
|
||||
.id = city_washington_dc,
|
||||
.lat = 38.907192f,
|
||||
.lon = -77.036873f,
|
||||
.sacn_universe = city_washington_dc,
|
||||
},
|
||||
[city_hanoi] = {
|
||||
.id = city_hanoi,
|
||||
.lat = 21.027763f,
|
||||
.lon = 105.834160f,
|
||||
.sacn_universe = city_hanoi,
|
||||
},
|
||||
[city_harare] = {
|
||||
.id = city_harare,
|
||||
.lat = -17.825167f,
|
||||
.lon = 31.033510f,
|
||||
.sacn_universe = city_harare,
|
||||
},
|
||||
[city_ankara] = {
|
||||
.id = city_ankara,
|
||||
.lat = 39.933365f,
|
||||
.lon = 32.859741f,
|
||||
.sacn_universe = city_ankara,
|
||||
},
|
||||
|
||||
[city_black_rock] = {
|
||||
.id = city_black_rock,
|
||||
.lat = -90.0f,
|
||||
.lon = 0,
|
||||
.sacn_universe = city_black_rock,
|
||||
},
|
||||
};
|
||||
|
||||
global char* city_strings[] = {
|
||||
"city_black_rock",
|
||||
"city_kiev",
|
||||
"city_buenos_aires",
|
||||
"city_canberra",
|
||||
"city_yerevan",
|
||||
"city_bishkek",
|
||||
"city_dhaka",
|
||||
"city_sucre",
|
||||
"city_brasilia",
|
||||
"city_ottawa",
|
||||
"city_santiago",
|
||||
"city_beijing",
|
||||
"city_bogota",
|
||||
"city_nicosia",
|
||||
"city_quito",
|
||||
"city_cairo",
|
||||
"city_addis_ababa",
|
||||
"city_berlin",
|
||||
"city_athens",
|
||||
"city_guatemala_city",
|
||||
"city_jakarta",
|
||||
"city_tehran",
|
||||
"city_baghdad",
|
||||
"city_tokyo",
|
||||
"city_amman",
|
||||
"city_nairobi",
|
||||
"city_beirut",
|
||||
"city_tripoli",
|
||||
"city_kuala_lumpur",
|
||||
"city_male",
|
||||
"city_mexico_city",
|
||||
"city_ulan_bator",
|
||||
"city_rabat",
|
||||
"city_amsterdam",
|
||||
"city_wellington",
|
||||
"city_managua",
|
||||
"city_abuja",
|
||||
"city_islamabad",
|
||||
"city_lima",
|
||||
"city_bucharest",
|
||||
"city_moscow",
|
||||
"city_belgrade",
|
||||
"city_singapore",
|
||||
"city_seoul",
|
||||
"city_tunis",
|
||||
"city_bangkok",
|
||||
"city_washington_dc",
|
||||
"city_hanoi",
|
||||
"city_harare",
|
||||
"city_ankara",
|
||||
};
|
Loading…
Reference in New Issue