Permalink
Cannot retrieve contributors at this time
| /* | |
| * TELEXi Eurorack Module | |
| * (c) 2016 Brendon Cassidy | |
| * MIT License | |
| */ | |
| #include "Arduino.h" | |
| #include "Quantizer.h" | |
| /* | |
| * initializes the quantizer and sets the scale to 0 (usually equal temperment) | |
| */ | |
| Quantizer::Quantizer() { | |
| Quantizer(0); | |
| } | |
| /* | |
| * initializes the quantizer and sets the initial scale | |
| */ | |
| Quantizer::Quantizer(int scale) { | |
| SetScale(scale); | |
| _last.Note = 0; | |
| _last.Value = 0; | |
| _below = 0; | |
| _above = 0; | |
| _noteMode = false; | |
| } | |
| /* | |
| * change the scale of the quantizer | |
| */ | |
| void Quantizer::SetScale(int scale) { | |
| if (scale < scaleCount) | |
| _scale = scale; | |
| } | |
| /* | |
| * quantizes an int (range 0-16383) | |
| */ | |
| QuantizeResponse Quantizer::Quantize(int in) { | |
| QuantizeResponse response; | |
| // deal with negative values | |
| in = in < 0 ? abs(in) : in; | |
| // short circuit if we are within our current bounary | |
| if (in >= _below && in < _above){ | |
| return _last; | |
| } | |
| // if not - we need to find where we are in the list | |
| // hints are a type of skip-list that jumps us to the proper octave | |
| _octave = (int)(in / 1638.3) - 1; | |
| _octave = _octave > 0 ? _octave : 0; | |
| _index = hints[_scale][_octave]; | |
| int distance = 32768; | |
| int distanceTemp = 0; | |
| // find where we can't get any closer then back out | |
| while (_index < notecount[_scale]) { | |
| distanceTemp = abs(in - scales[_scale][_index]); | |
| if (distanceTemp > distance){ | |
| _index--; | |
| break; | |
| } else { | |
| // else increment | |
| distance = distanceTemp; | |
| _index++; | |
| } | |
| } | |
| // move it down to the next to last if we made it to the end | |
| if (_index >= notecount[_scale]) | |
| _index = notecount[_scale] - 1; | |
| // use index to quantize | |
| _current = scales[_scale][_index]; | |
| // set the response | |
| response.Note = _index; | |
| response.Value = _current; | |
| _last = response; | |
| // now set the helper boundries | |
| _above = _index < notecount[_scale] - 1 ? scales[_scale][_index + 1] : 32767; | |
| _below = _index > 0 ? scales[_scale][_index-1] : scales[_scale][_index]; | |
| // similar to a mutable quantize trick to expand the region slightly | |
| // had been doing this using floats - thx for the fixed math tip oliver | |
| _above = ((13 * _current) + (19 * _above)) >> 5; | |
| _below = ((13 * _current) + (19 * _below)) >> 5; | |
| // constrain the above and below values | |
| _above = _above > 32767 ? 32767 : _above; | |
| _below = _below < 0 ? 0 : _below; | |
| return response; | |
| } | |
| /* | |
| * returns the values (0-16383) for a note number; 0 if out of range | |
| */ | |
| float Quantizer::GetValueForNote(int note){ | |
| if (note < notecount[_scale]) | |
| return scales[_scale][note]; | |
| else | |
| return 0; | |
| } | |
| float Quantizer::GetFrequencyForNote(int note){ | |
| return 16.351597831287414 * (pow(2, ((GetValueForNote(note) / 1638.3) - 1.))); | |
| } | |
| // INSERT AUTOGENERATED SCALE CLASS DATA HERE | |
| // scl/~equal_temperament.scl | |
| // Standard 12 Tone Equal Temperament | |
| float Quantizer::scale0[] = { 0.0,136.525,273.05,409.575,546.1,682.625,819.15,955.675,1092.2,1228.725,1365.25,1501.775,1638.3,1774.825,1911.35,2047.875,2184.4,2320.925,2457.45,2593.975,2730.5,2867.025,3003.55,3140.075,3276.6,3413.125,3549.65,3686.175,3822.7,3959.225,4095.75,4232.275,4368.8,4505.325,4641.85,4778.375,4914.9,5051.425,5187.95,5324.475,5461.0,5597.525,5734.05,5870.575,6007.1,6143.625,6280.15,6416.675,6553.2,6689.725,6826.25,6962.775,7099.3,7235.825,7372.35,7508.875,7645.4,7781.925,7918.45,8054.975,8191.5,8328.025,8464.55,8601.075,8737.6,8874.125,9010.65,9147.175,9283.7,9420.225,9556.75,9693.275,9829.8,9966.325,10102.85,10239.375,10375.9,10512.425,10648.95,10785.475,10922.0,11058.525,11195.05,11331.575,11468.1,11604.625,11741.15,11877.675,12014.2,12150.725,12287.25,12423.775,12560.3,12696.825,12833.35,12969.875,13106.4,13242.925,13379.45,13515.975,13652.5,13789.025,13925.55,14062.075,14198.6,14335.125,14471.65,14608.175,14744.7,14881.225,15017.75,15154.275,15290.8,15427.325,15563.85,15700.375,15836.9,15973.425,16109.95,16246.475,16383.0,16519.525 }; | |
| int Quantizer::hints0[] = { 0,13,25,36,49,61,73,85,97,109,121 }; | |
| // scl/pyth_12.scl | |
| // 12-tone Pythagorean scale | |
| float Quantizer::scale1[] = { 0.0,155.20845452,278.388129863,401.567805206,556.776259726,679.955935069,835.164389589,958.344064931,1113.55251945,1236.73219479,1359.91187014,1515.12032466,1638.3,1793.50845452,1916.68812986,2039.86780521,2195.07625973,2318.25593507,2473.46438959,2596.64406493,2751.85251945,2875.03219479,2998.21187014,3153.42032466,3276.6,3431.80845452,3554.98812986,3678.16780521,3833.37625973,3956.55593507,4111.76438959,4234.94406493,4390.15251945,4513.33219479,4636.51187014,4791.72032466,4914.9,5070.10845452,5193.28812986,5316.46780521,5471.67625973,5594.85593507,5750.06438959,5873.24406493,6028.45251945,6151.63219479,6274.81187014,6430.02032466,6553.2,6708.40845452,6831.58812986,6954.76780521,7109.97625973,7233.15593507,7388.36438959,7511.54406493,7666.75251945,7789.93219479,7913.11187014,8068.32032466,8191.5,8346.70845452,8469.88812986,8593.06780521,8748.27625973,8871.45593507,9026.66438959,9149.84406493,9305.05251945,9428.23219479,9551.41187014,9706.62032466,9829.8,9985.00845452,10108.1881299,10231.3678052,10386.5762597,10509.7559351,10664.9643896,10788.1440649,10943.3525195,11066.5321948,11189.7118701,11344.9203247,11468.1,11623.3084545,11746.4881299,11869.6678052,12024.8762597,12148.0559351,12303.2643896,12426.4440649,12581.6525195,12704.8321948,12828.0118701,12983.2203247,13106.4,13261.6084545,13384.7881299,13507.9678052,13663.1762597,13786.3559351,13941.5643896,14064.7440649,14219.9525195,14343.1321948,14466.3118701,14621.5203247,14744.7,14899.9084545,15023.0881299,15146.2678052,15301.4762597,15424.6559351,15579.8643896,15703.0440649,15858.2525195,15981.4321948,16104.6118701,16259.8203247,16383.0,16538.2084545 }; | |
| int Quantizer::hints1[] = { 0,13,25,36,49,61,73,85,97,109,121 }; | |
| // scl/pyth_17.scl | |
| // 17-tone Pythagorean scale. Used in Persian music | |
| float Quantizer::scale2[] = { 0.0,123.179675343,155.20845452,278.388129863,401.567805206,433.596584383,556.776259726,679.955935069,803.135610411,835.164389589,958.344064931,1081.52374027,1113.55251945,1236.73219479,1359.91187014,1391.94064931,1515.12032466,1638.3,1761.47967534,1793.50845452,1916.68812986,2039.86780521,2071.89658438,2195.07625973,2318.25593507,2441.43561041,2473.46438959,2596.64406493,2719.82374027,2751.85251945,2875.03219479,2998.21187014,3030.24064931,3153.42032466,3276.6,3399.77967534,3431.80845452,3554.98812986,3678.16780521,3710.19658438,3833.37625973,3956.55593507,4079.73561041,4111.76438959,4234.94406493,4358.12374027,4390.15251945,4513.33219479,4636.51187014,4668.54064931,4791.72032466,4914.9,5038.07967534,5070.10845452,5193.28812986,5316.46780521,5348.49658438,5471.67625973,5594.85593507,5718.03561041,5750.06438959,5873.24406493,5996.42374027,6028.45251945,6151.63219479,6274.81187014,6306.84064931,6430.02032466,6553.2,6676.37967534,6708.40845452,6831.58812986,6954.76780521,6986.79658438,7109.97625973,7233.15593507,7356.33561041,7388.36438959,7511.54406493,7634.72374027,7666.75251945,7789.93219479,7913.11187014,7945.14064931,8068.32032466,8191.5,8314.67967534,8346.70845452,8469.88812986,8593.06780521,8625.09658438,8748.27625973,8871.45593507,8994.63561041,9026.66438959,9149.84406493,9273.02374027,9305.05251945,9428.23219479,9551.41187014,9583.44064931,9706.62032466,9829.8,9952.97967534,9985.00845452,10108.1881299,10231.3678052,10263.3965844,10386.5762597,10509.7559351,10632.9356104,10664.9643896,10788.1440649,10911.3237403,10943.3525195,11066.5321948,11189.7118701,11221.7406493,11344.9203247,11468.1,11591.2796753,11623.3084545,11746.4881299,11869.6678052,11901.6965844,12024.8762597,12148.0559351,12271.2356104,12303.2643896,12426.4440649,12549.6237403,12581.6525195,12704.8321948,12828.0118701,12860.0406493,12983.2203247,13106.4,13229.5796753,13261.6084545,13384.7881299,13507.9678052,13539.9965844,13663.1762597,13786.3559351,13909.5356104,13941.5643896,14064.7440649,14187.9237403,14219.9525195,14343.1321948,14466.3118701,14498.3406493,14621.5203247,14744.7,14867.8796753,14899.9084545,15023.0881299,15146.2678052,15178.2965844,15301.4762597,15424.6559351,15547.8356104,15579.8643896,15703.0440649,15826.2237403,15858.2525195,15981.4321948,16104.6118701,16136.6406493,16259.8203247,16383.0,16506.1796753 }; | |
| int Quantizer::hints2[] = { 0,18,35,51,69,86,103,120,137,154,171 }; | |
| // scl/vallotti.scl | |
| // Vallotti & Young scale (Vallotti version) also known as Tartini-Vallotti (1754) | |
| float Quantizer::scale3[] = { 0.0,128.51780875,267.7118725,406.90593625,535.423745,685.29406375,808.473745,953.00593625,1086.8618725,1220.71780875,1365.25,1488.42968125,1638.3,1766.81780875,1906.0118725,2045.20593625,2173.723745,2323.59406375,2446.773745,2591.30593625,2725.1618725,2859.01780875,3003.55,3126.72968125,3276.6,3405.11780875,3544.3118725,3683.50593625,3812.023745,3961.89406375,4085.073745,4229.60593625,4363.4618725,4497.31780875,4641.85,4765.02968125,4914.9,5043.41780875,5182.6118725,5321.80593625,5450.323745,5600.19406375,5723.373745,5867.90593625,6001.7618725,6135.61780875,6280.15,6403.32968125,6553.2,6681.71780875,6820.9118725,6960.10593625,7088.623745,7238.49406375,7361.673745,7506.20593625,7640.0618725,7773.91780875,7918.45,8041.62968125,8191.5,8320.01780875,8459.2118725,8598.40593625,8726.923745,8876.79406375,8999.973745,9144.50593625,9278.3618725,9412.21780875,9556.75,9679.92968125,9829.8,9958.31780875,10097.5118725,10236.7059362,10365.223745,10515.0940637,10638.273745,10782.8059362,10916.6618725,11050.5178087,11195.05,11318.2296812,11468.1,11596.6178087,11735.8118725,11875.0059362,12003.523745,12153.3940637,12276.573745,12421.1059362,12554.9618725,12688.8178087,12833.35,12956.5296812,13106.4,13234.9178087,13374.1118725,13513.3059362,13641.823745,13791.6940637,13914.873745,14059.4059362,14193.2618725,14327.1178087,14471.65,14594.8296812,14744.7,14873.2178087,15012.4118725,15151.6059362,15280.123745,15429.9940637,15553.173745,15697.7059362,15831.5618725,15965.4178087,16109.95,16233.1296812,16383.0,16511.5178087 }; | |
| int Quantizer::hints3[] = { 0,13,25,36,49,61,73,85,97,109,121 }; | |
| // scl/carlos_alpha.scl | |
| // Wendy Carlos' Alpha scale with perfect fifth divided in nine | |
| float Quantizer::scale4[] = { 0.0,106.4895,212.979,319.4685,425.958,532.4475,638.937,745.4265,851.916,958.4055,1064.895,1171.3845,1277.874,1384.3635,1490.853,1597.3425,1703.832,1810.3215,1916.811,2023.3005,2129.79,2236.2795,2342.769,2449.2585,2555.748,2662.2375,2768.727,2875.2165,2981.706,3088.1955,3194.685,3301.1745,3407.664,3514.1535,3620.643,3727.1325,3833.622,3940.1115,4046.601,4153.0905,4259.58,4366.0695,4472.559,4579.0485,4685.538,4792.0275,4898.517,5005.0065,5111.496,5217.9855,5324.475,5430.9645,5537.454,5643.9435,5750.433,5856.9225,5963.412,6069.9015,6176.391,6282.8805,6389.37,6495.8595,6602.349,6708.8385,6815.328,6921.8175,7028.307,7134.7965,7241.286,7347.7755,7454.265,7560.7545,7667.244,7773.7335,7880.223,7986.7125,8093.202,8199.6915,8306.181,8412.6705,8519.16,8625.6495,8732.139,8838.6285,8945.118,9051.6075,9158.097,9264.5865,9371.076,9477.5655,9584.055,9690.5445,9797.034,9903.5235,10010.013,10116.5025,10222.992,10329.4815,10435.971,10542.4605,10648.95,10755.4395,10861.929,10968.4185,11074.908,11181.3975,11287.887,11394.3765,11500.866,11607.3555,11713.845,11820.3345,11926.824,12033.3135,12139.803,12246.2925,12352.782,12459.2715,12565.761,12672.2505,12778.74,12885.2295,12991.719,13098.2085,13204.698,13311.1875,13417.677,13524.1665,13630.656,13737.1455,13843.635,13950.1245,14056.614,14163.1035,14269.593,14376.0825,14482.572,14589.0615,14695.551,14802.0405,14908.53,15015.0195,15121.509,15227.9985,15334.488,15440.9775,15547.467,15653.9565,15760.446,15866.9355,15973.425,16079.9145,16186.404,16292.8935,16399.383 }; | |
| int Quantizer::hints4[] = { 0,16,31,47,62,77,93,108,124,139,154 }; | |
| // scl/carlos_beta.scl | |
| // Wendy Carlos' Beta scale with perfect fifth divided by eleven | |
| float Quantizer::scale5[] = { 0.0,87.10295,174.2059,261.30885,348.4118,435.51475,522.6177,609.72065,696.8236,783.92655,871.0295,958.13245,1045.2354,1132.33835,1219.4413,1306.54425,1393.6472,1480.75015,1567.8531,1654.95605,1742.059,1829.16195,1916.2649,2003.36785,2090.4708,2177.57375,2264.6767,2351.77965,2438.8826,2525.98555,2613.0885,2700.19145,2787.2944,2874.39735,2961.5003,3048.60325,3135.7062,3222.80915,3309.9121,3397.01505,3484.118,3571.22095,3658.3239,3745.42685,3832.5298,3919.63275,4006.7357,4093.83865,4180.9416,4268.04455,4355.1475,4442.25045,4529.3534,4616.45635,4703.5593,4790.66225,4877.7652,4964.86815,5051.9711,5139.07405,5226.177,5313.27995,5400.3829,5487.48585,5574.5888,5661.69175,5748.7947,5835.89765,5923.0006,6010.10355,6097.2065,6184.30945,6271.4124,6358.51535,6445.6183,6532.72125,6619.8242,6706.92715,6794.0301,6881.13305,6968.236,7055.33895,7142.4419,7229.54485,7316.6478,7403.75075,7490.8537,7577.95665,7665.0596,7752.16255,7839.2655,7926.36845,8013.4714,8100.57435,8187.6773,8274.78025,8361.8832,8448.98615,8536.0891,8623.19205,8710.295,8797.39795,8884.5009,8971.60385,9058.7068,9145.80975,9232.9127,9320.01565,9407.1186,9494.22155,9581.3245,9668.42745,9755.5304,9842.63335,9929.7363,10016.83925,10103.9422,10191.04515,10278.1481,10365.25105,10452.354,10539.45695,10626.5599,10713.66285,10800.7658,10887.86875,10974.9717,11062.07465,11149.1776,11236.28055,11323.3835,11410.48645,11497.5894,11584.69235,11671.7953,11758.89825,11846.0012,11933.10415,12020.2071,12107.31005,12194.413,12281.51595,12368.6189,12455.72185,12542.8248,12629.92775,12717.0307,12804.13365,12891.2366,12978.33955,13065.4425,13152.54545,13239.6484,13326.75135,13413.8543,13500.95725,13588.0602,13675.16315,13762.2661,13849.36905,13936.472,14023.57495,14110.6779,14197.78085,14284.8838,14371.98675,14459.0897,14546.19265,14633.2956,14720.39855,14807.5015,14894.60445,14981.7074,15068.81035,15155.9133,15243.01625,15330.1192,15417.22215,15504.3251,15591.42805,15678.531,15765.63395,15852.7369,15939.83985,16026.9428,16114.04575,16201.1487,16288.25165,16375.3546,16462.45755 }; | |
| int Quantizer::hints5[] = { 0,19,38,57,76,95,113,132,151,170,189 }; | |
| // scl/carlos_gamma.scl | |
| // Wendy Carlos' Gamma scale with third divided by eleven or fifth by twenty | |
| float Quantizer::scale6[] = { 0.0,47.91890975,95.8378195,143.75672925,191.675639,239.59454875,287.5134585,335.43236825,383.351278,431.27018775,479.1890975,527.10800725,575.026917,622.94582675,670.8647365,718.78364625,766.702556,814.62146575,862.5403755,910.45928525,958.378195,1006.29710475,1054.2160145,1102.13492425,1150.053834,1197.97274375,1245.8916535,1293.81056325,1341.729473,1389.64838275,1437.5672925,1485.48620225,1533.405112,1581.32402175,1629.2429315,1677.16184125,1725.080751,1772.99966075,1820.9185705,1868.83748025,1916.75639,1964.67529975,2012.5942095,2060.51311925,2108.432029,2156.35093875,2204.2698485,2252.18875825,2300.107668,2348.02657775,2395.9454875,2443.86439725,2491.783307,2539.70221675,2587.6211265,2635.54003625,2683.458946,2731.37785575,2779.2967655,2827.21567525,2875.134585,2923.05349475,2970.9724045,3018.89131425,3066.810224,3114.72913375,3162.6480435,3210.56695325,3258.485863,3306.40477275,3354.3236825,3402.24259225,3450.161502,3498.08041175,3545.9993215,3593.91823125,3641.837141,3689.75605075,3737.6749605,3785.59387025,3833.51278,3881.43168975,3929.3505995,3977.26950925,4025.188419,4073.10732875,4121.0262385,4168.94514825,4216.864058,4264.78296775,4312.7018775,4360.62078725,4408.539697,4456.45860675,4504.3775165,4552.29642625,4600.215336,4648.13424575,4696.0531555,4743.97206525,4791.890975,4839.80988475,4887.7287945,4935.64770425,4983.566614,5031.48552375,5079.4044335,5127.32334325,5175.242253,5223.16116275,5271.0800725,5318.99898225,5366.917892,5414.83680175,5462.7557115,5510.67462125,5558.593531,5606.51244075,5654.4313505,5702.35026025,5750.26917,5798.18807975,5846.1069895,5894.02589925,5941.944809,5989.86371875,6037.7826285,6085.70153825,6133.620448,6181.53935775,6229.4582675,6277.37717725,6325.296087,6373.21499675,6421.1339065,6469.05281625,6516.971726,6564.89063575,6612.8095455,6660.72845525,6708.647365,6756.56627475,6804.4851845,6852.40409425,6900.323004,6948.24191375,6996.1608235,7044.07973325,7091.998643,7139.91755275,7187.8364625,7235.75537225,7283.674282,7331.59319175,7379.5121015,7427.43101125,7475.349921,7523.26883075,7571.1877405,7619.10665025,7667.02556,7714.94446975,7762.8633795,7810.78228925,7858.701199,7906.62010875,7954.5390185,8002.45792825,8050.376838,8098.29574775,8146.2146575,8194.13356725,8242.052477,8289.97138675,8337.8902965,8385.80920625,8433.728116,8481.64702575,8529.5659355,8577.48484525,8625.403755,8673.32266475,8721.2415745,8769.16048425,8817.079394,8864.99830375,8912.9172135,8960.83612325,9008.755033,9056.67394275,9104.5928525,9152.51176225,9200.430672,9248.34958175,9296.2684915,9344.18740125,9392.106311,9440.02522075,9487.9441305,9535.86304025,9583.78195,9631.70085975,9679.6197695,9727.53867925,9775.457589,9823.37649875,9871.2954085,9919.21431825,9967.133228,10015.0521377,10062.9710475,10110.8899572,10158.808867,10206.7277767,10254.6466865,10302.5655962,10350.484506,10398.4034157,10446.3223255,10494.2412352,10542.160145,10590.0790547,10637.9979645,10685.9168742,10733.835784,10781.7546937,10829.6736035,10877.5925132,10925.511423,10973.4303327,11021.3492425,11069.2681522,11117.187062,11165.1059717,11213.0248815,11260.9437912,11308.862701,11356.7816107,11404.7005205,11452.6194302,11500.53834,11548.4572497,11596.3761595,11644.2950692,11692.213979,11740.1328887,11788.0517985,11835.9707082,11883.889618,11931.8085277,11979.7274375,12027.6463472,12075.565257,12123.4841667,12171.4030765,12219.3219862,12267.240896,12315.1598057,12363.0787155,12410.9976252,12458.916535,12506.8354447,12554.7543545,12602.6732642,12650.592174,12698.5110837,12746.4299935,12794.3489032,12842.267813,12890.1867227,12938.1056325,12986.0245422,13033.943452,13081.8623617,13129.7812715,13177.7001812,13225.619091,13273.5380007,13321.4569105,13369.3758202,13417.29473,13465.2136397,13513.1325495,13561.0514592,13608.970369,13656.8892787,13704.8081885,13752.7270982,13800.646008,13848.5649177,13896.4838275,13944.4027372,13992.321647,14040.2405567,14088.1594665,14136.0783762,14183.997286,14231.9161957,14279.8351055,14327.7540152,14375.672925,14423.5918347,14471.5107445,14519.4296542,14567.348564,14615.2674737,14663.1863835,14711.1052932,14759.024203,14806.9431127,14854.8620225,14902.7809322,14950.699842,14998.6187517,15046.5376615,15094.4565712,15142.375481,15190.2943907,15238.2133005,15286.1322102,15334.05112,15381.9700297,15429.8889395,15477.8078492,15525.726759,15573.6456687,15621.5645785,15669.4834882,15717.402398,15765.3213077,15813.2402175,15861.1591272,15909.078037,15956.9969467,16004.9158565,16052.8347662,16100.753676,16148.6725857,16196.5914955,16244.5104052,16292.429315,16340.3482247,16388.2671345 }; | |
| int Quantizer::hints6[] = { 0,35,69,103,137,171,206,240,274,308,342 }; | |
| // scl/carlos_harm.scl | |
| // Carlos Harmonic & Ben Johnston's scale of 'Blues' from Suite f.micr.piano (1977) & David Beardsley's scale of 'Science Friction' | |
| float Quantizer::scale7[] = { 0.0,143.29037282,278.388129863,406.179645275,527.414797854,642.733633738,752.686820813,958.344064931,1147.53039023,1236.73219479,1322.68956881,1485.75886279,1638.3,1781.59037282,1916.68812986,2044.47964527,2165.71479785,2281.03363374,2390.98682081,2596.64406493,2785.83039023,2875.03219479,2960.98956881,3124.05886279,3276.6,3419.89037282,3554.98812986,3682.77964527,3804.01479785,3919.33363374,4029.28682081,4234.94406493,4424.13039023,4513.33219479,4599.28956881,4762.35886279,4914.9,5058.19037282,5193.28812986,5321.07964527,5442.31479785,5557.63363374,5667.58682081,5873.24406493,6062.43039023,6151.63219479,6237.58956881,6400.65886279,6553.2,6696.49037282,6831.58812986,6959.37964527,7080.61479785,7195.93363374,7305.88682081,7511.54406493,7700.73039023,7789.93219479,7875.88956881,8038.95886279,8191.5,8334.79037282,8469.88812986,8597.67964527,8718.91479785,8834.23363374,8944.18682081,9149.84406493,9339.03039023,9428.23219479,9514.18956881,9677.25886279,9829.8,9973.09037282,10108.1881299,10235.9796453,10357.2147979,10472.5336337,10582.4868208,10788.1440649,10977.3303902,11066.5321948,11152.4895688,11315.5588628,11468.1,11611.3903728,11746.4881299,11874.2796453,11995.5147979,12110.8336337,12220.7868208,12426.4440649,12615.6303902,12704.8321948,12790.7895688,12953.8588628,13106.4,13249.6903728,13384.7881299,13512.5796453,13633.8147979,13749.1336337,13859.0868208,14064.7440649,14253.9303902,14343.1321948,14429.0895688,14592.1588628,14744.7,14887.9903728,15023.0881299,15150.8796453,15272.1147979,15387.4336337,15497.3868208,15703.0440649,15892.2303902,15981.4321948,16067.3895688,16230.4588628,16383.0,16526.2903728 }; | |
| int Quantizer::hints7[] = { 0,13,25,36,49,61,73,85,97,109,121 }; | |
| // scl/carlos_super.scl | |
| // Carlos Super Just | |
| float Quantizer::scale8[] = { 0.0,143.29037282,278.388129863,430.929267078,527.414797854,679.955935069,752.686820813,958.344064931,1147.53039023,1207.37073292,1322.68956881,1485.75886279,1638.3,1781.59037282,1916.68812986,2069.22926708,2165.71479785,2318.25593507,2390.98682081,2596.64406493,2785.83039023,2845.67073292,2960.98956881,3124.05886279,3276.6,3419.89037282,3554.98812986,3707.52926708,3804.01479785,3956.55593507,4029.28682081,4234.94406493,4424.13039023,4483.97073292,4599.28956881,4762.35886279,4914.9,5058.19037282,5193.28812986,5345.82926708,5442.31479785,5594.85593507,5667.58682081,5873.24406493,6062.43039023,6122.27073292,6237.58956881,6400.65886279,6553.2,6696.49037282,6831.58812986,6984.12926708,7080.61479785,7233.15593507,7305.88682081,7511.54406493,7700.73039023,7760.57073292,7875.88956881,8038.95886279,8191.5,8334.79037282,8469.88812986,8622.42926708,8718.91479785,8871.45593507,8944.18682081,9149.84406493,9339.03039023,9398.87073292,9514.18956881,9677.25886279,9829.8,9973.09037282,10108.1881299,10260.7292671,10357.2147979,10509.7559351,10582.4868208,10788.1440649,10977.3303902,11037.1707329,11152.4895688,11315.5588628,11468.1,11611.3903728,11746.4881299,11899.0292671,11995.5147979,12148.0559351,12220.7868208,12426.4440649,12615.6303902,12675.4707329,12790.7895688,12953.8588628,13106.4,13249.6903728,13384.7881299,13537.3292671,13633.8147979,13786.3559351,13859.0868208,14064.7440649,14253.9303902,14313.7707329,14429.0895688,14592.1588628,14744.7,14887.9903728,15023.0881299,15175.6292671,15272.1147979,15424.6559351,15497.3868208,15703.0440649,15892.2303902,15952.0707329,16067.3895688,16230.4588628,16383.0,16526.2903728 }; | |
| int Quantizer::hints8[] = { 0,13,25,36,49,61,73,85,97,109,121 }; | |
| // scl/kurzweil_arab.scl | |
| // Kurzweil "Empirical Arabic" | |
| float Quantizer::scale9[] = { 0.0,177.4825,245.745,341.3125,484.66375,685.3555,850.55075,963.8665,1073.0865,1170.01925,1269.6825,1515.4275,1638.3,1815.7825,1884.045,1979.6125,2122.96375,2323.6555,2488.85075,2602.1665,2711.3865,2808.31925,2907.9825,3153.7275,3276.6,3454.0825,3522.345,3617.9125,3761.26375,3961.9555,4127.15075,4240.4665,4349.6865,4446.61925,4546.2825,4792.0275,4914.9,5092.3825,5160.645,5256.2125,5399.56375,5600.2555,5765.45075,5878.7665,5987.9865,6084.91925,6184.5825,6430.3275,6553.2,6730.6825,6798.945,6894.5125,7037.86375,7238.5555,7403.75075,7517.0665,7626.2865,7723.21925,7822.8825,8068.6275,8191.5,8368.9825,8437.245,8532.8125,8676.16375,8876.8555,9042.05075,9155.3665,9264.5865,9361.51925,9461.1825,9706.9275,9829.8,10007.2825,10075.545,10171.1125,10314.46375,10515.1555,10680.35075,10793.6665,10902.8865,10999.81925,11099.4825,11345.2275,11468.1,11645.5825,11713.845,11809.4125,11952.76375,12153.4555,12318.65075,12431.9665,12541.1865,12638.11925,12737.7825,12983.5275,13106.4,13283.8825,13352.145,13447.7125,13591.06375,13791.7555,13956.95075,14070.2665,14179.4865,14276.41925,14376.0825,14621.8275,14744.7,14922.1825,14990.445,15086.0125,15229.36375,15430.0555,15595.25075,15708.5665,15817.7865,15914.71925,16014.3825,16260.1275,16383.0,16560.4825 }; | |
| int Quantizer::hints9[] = { 0,13,25,36,49,61,73,85,97,109,121 }; | |
| // scl/kurzweil_ji.scl | |
| // Kurzweil "Just with natural b7th", is Sauveur Just with 7/4 | |
| float Quantizer::scale10[] = { 0.0,96.4855307765,278.388129863,430.929267078,527.414797854,679.955935069,805.802927717,958.344064931,1110.88520215,1207.37073292,1322.68956881,1485.75886279,1638.3,1734.78553078,1916.68812986,2069.22926708,2165.71479785,2318.25593507,2444.10292772,2596.64406493,2749.18520215,2845.67073292,2960.98956881,3124.05886279,3276.6,3373.08553078,3554.98812986,3707.52926708,3804.01479785,3956.55593507,4082.40292772,4234.94406493,4387.48520215,4483.97073292,4599.28956881,4762.35886279,4914.9,5011.38553078,5193.28812986,5345.82926708,5442.31479785,5594.85593507,5720.70292772,5873.24406493,6025.78520215,6122.27073292,6237.58956881,6400.65886279,6553.2,6649.68553078,6831.58812986,6984.12926708,7080.61479785,7233.15593507,7359.00292772,7511.54406493,7664.08520215,7760.57073292,7875.88956881,8038.95886279,8191.5,8287.98553078,8469.88812986,8622.42926708,8718.91479785,8871.45593507,8997.30292772,9149.84406493,9302.38520215,9398.87073292,9514.18956881,9677.25886279,9829.8,9926.28553078,10108.1881299,10260.7292671,10357.2147979,10509.7559351,10635.6029277,10788.1440649,10940.6852021,11037.1707329,11152.4895688,11315.5588628,11468.1,11564.5855308,11746.4881299,11899.0292671,11995.5147979,12148.0559351,12273.9029277,12426.4440649,12578.9852021,12675.4707329,12790.7895688,12953.8588628,13106.4,13202.8855308,13384.7881299,13537.3292671,13633.8147979,13786.3559351,13912.2029277,14064.7440649,14217.2852021,14313.7707329,14429.0895688,14592.1588628,14744.7,14841.1855308,15023.0881299,15175.6292671,15272.1147979,15424.6559351,15550.5029277,15703.0440649,15855.5852021,15952.0707329,16067.3895688,16230.4588628,16383.0,16479.4855308 }; | |
| int Quantizer::hints10[] = { 0,13,25,36,49,61,73,85,97,109,121 }; | |
| // scl/kurzweil_pelogh.scl | |
| // Kurzweil "Empirical Bali/Java Harmonic Pelog" | |
| float Quantizer::scale11[] = { 0.0,206.15275,223.901,374.0785,391.82675,511.96875,659.41575,677.164,1161.82775,1179.576,1328.38825,1346.1365,1638.3,1844.45275,1862.201,2012.3785,2030.12675,2150.26875,2297.71575,2315.464,2800.12775,2817.876,2966.68825,2984.4365,3276.6,3482.75275,3500.501,3650.6785,3668.42675,3788.56875,3936.01575,3953.764,4438.42775,4456.176,4604.98825,4622.7365,4914.9,5121.05275,5138.801,5288.9785,5306.72675,5426.86875,5574.31575,5592.064,6076.72775,6094.476,6243.28825,6261.0365,6553.2,6759.35275,6777.101,6927.2785,6945.02675,7065.16875,7212.61575,7230.364,7715.02775,7732.776,7881.58825,7899.3365,8191.5,8397.65275,8415.401,8565.5785,8583.32675,8703.46875,8850.91575,8868.664,9353.32775,9371.076,9519.88825,9537.6365,9829.8,10035.95275,10053.701,10203.8785,10221.62675,10341.76875,10489.21575,10506.964,10991.62775,11009.376,11158.18825,11175.9365,11468.1,11674.25275,11692.001,11842.1785,11859.92675,11980.06875,12127.51575,12145.264,12629.92775,12647.676,12796.48825,12814.2365,13106.4,13312.55275,13330.301,13480.4785,13498.22675,13618.36875,13765.81575,13783.564,14268.22775,14285.976,14434.78825,14452.5365,14744.7,14950.85275,14968.601,15118.7785,15136.52675,15256.66875,15404.11575,15421.864,15906.52775,15924.276,16073.08825,16090.8365,16383.0,16589.15275 }; | |
| int Quantizer::hints11[] = { 0,13,25,36,49,61,73,85,97,109,121 }; | |
| // scl/kurzweil_pelogm.scl | |
| // Kurzweil "Empirical Bali/Java Melodic Pelog" | |
| float Quantizer::scale12[] = { 0.0,173.38675,193.8655,352.2345,378.17425,505.1425,647.1285,667.60725,1124.966,1145.44475,1287.43075,1307.9095,1638.3,1811.68675,1832.1655,1990.5345,2016.47425,2143.4425,2285.4285,2305.90725,2763.266,2783.74475,2925.73075,2946.2095,3276.6,3449.98675,3470.4655,3628.8345,3654.77425,3781.7425,3923.7285,3944.20725,4401.566,4422.04475,4564.03075,4584.5095,4914.9,5088.28675,5108.7655,5267.1345,5293.07425,5420.0425,5562.0285,5582.50725,6039.866,6060.34475,6202.33075,6222.8095,6553.2,6726.58675,6747.0655,6905.4345,6931.37425,7058.3425,7200.3285,7220.80725,7678.166,7698.64475,7840.63075,7861.1095,8191.5,8364.88675,8385.3655,8543.7345,8569.67425,8696.6425,8838.6285,8859.10725,9316.466,9336.94475,9478.93075,9499.4095,9829.8,10003.18675,10023.6655,10182.0345,10207.97425,10334.9425,10476.9285,10497.40725,10954.766,10975.24475,11117.23075,11137.7095,11468.1,11641.48675,11661.9655,11820.3345,11846.27425,11973.2425,12115.2285,12135.70725,12593.066,12613.54475,12755.53075,12776.0095,13106.4,13279.78675,13300.2655,13458.6345,13484.57425,13611.5425,13753.5285,13774.00725,14231.366,14251.84475,14393.83075,14414.3095,14744.7,14918.08675,14938.5655,15096.9345,15122.87425,15249.8425,15391.8285,15412.30725,15869.666,15890.14475,16032.13075,16052.6095,16383.0,16556.38675 }; | |
| int Quantizer::hints12[] = { 0,13,25,36,49,61,73,85,97,109,121 }; | |
| // scl/kurzweil_slen.scl | |
| // Kurzweil "Empirical Bali/Java Slendro, Siam 7" | |
| float Quantizer::scale13[] = { 0.0,47.78375,234.823,375.44375,468.28075,703.10375,703.10375,937.92675,1029.3985,1170.01925,1358.42375,1404.84225,1638.3,1686.08375,1873.123,2013.74375,2106.58075,2341.40375,2341.40375,2576.22675,2667.6985,2808.31925,2996.72375,3043.14225,3276.6,3324.38375,3511.423,3652.04375,3744.88075,3979.70375,3979.70375,4214.52675,4305.9985,4446.61925,4635.02375,4681.44225,4914.9,4962.68375,5149.723,5290.34375,5383.18075,5618.00375,5618.00375,5852.82675,5944.2985,6084.91925,6273.32375,6319.74225,6553.2,6600.98375,6788.023,6928.64375,7021.48075,7256.30375,7256.30375,7491.12675,7582.5985,7723.21925,7911.62375,7958.04225,8191.5,8239.28375,8426.323,8566.94375,8659.78075,8894.60375,8894.60375,9129.42675,9220.8985,9361.51925,9549.92375,9596.34225,9829.8,9877.58375,10064.623,10205.24375,10298.08075,10532.90375,10532.90375,10767.72675,10859.1985,10999.81925,11188.22375,11234.64225,11468.1,11515.88375,11702.923,11843.54375,11936.38075,12171.20375,12171.20375,12406.02675,12497.4985,12638.11925,12826.52375,12872.94225,13106.4,13154.18375,13341.223,13481.84375,13574.68075,13809.50375,13809.50375,14044.32675,14135.7985,14276.41925,14464.82375,14511.24225,14744.7,14792.48375,14979.523,15120.14375,15212.98075,15447.80375,15447.80375,15682.62675,15774.0985,15914.71925,16103.12375,16149.54225,16383.0,16430.78375 }; | |
| int Quantizer::hints13[] = { 0,13,25,36,49,61,73,85,97,109,121 }; | |
| // scl/kurzweil_tibet.scl | |
| // Kurzweil "Empirical Tibetian Ceremonial" | |
| float Quantizer::scale14[] = { 0.0,79.1845,316.738,423.2275,516.0645,712.6605,843.7245,989.80625,1055.33825,1223.264,1391.18975,1482.6615,1638.3,1717.4845,1955.038,2061.5275,2154.3645,2350.9605,2482.0245,2628.10625,2693.63825,2861.564,3029.48975,3120.9615,3276.6,3355.7845,3593.338,3699.8275,3792.6645,3989.2605,4120.3245,4266.40625,4331.93825,4499.864,4667.78975,4759.2615,4914.9,4994.0845,5231.638,5338.1275,5430.9645,5627.5605,5758.6245,5904.70625,5970.23825,6138.164,6306.08975,6397.5615,6553.2,6632.3845,6869.938,6976.4275,7069.2645,7265.8605,7396.9245,7543.00625,7608.53825,7776.464,7944.38975,8035.8615,8191.5,8270.6845,8508.238,8614.7275,8707.5645,8904.1605,9035.2245,9181.30625,9246.83825,9414.764,9582.68975,9674.1615,9829.8,9908.9845,10146.538,10253.0275,10345.8645,10542.4605,10673.5245,10819.60625,10885.13825,11053.064,11220.98975,11312.4615,11468.1,11547.2845,11784.838,11891.3275,11984.1645,12180.7605,12311.8245,12457.90625,12523.43825,12691.364,12859.28975,12950.7615,13106.4,13185.5845,13423.138,13529.6275,13622.4645,13819.0605,13950.1245,14096.20625,14161.73825,14329.664,14497.58975,14589.0615,14744.7,14823.8845,15061.438,15167.9275,15260.7645,15457.3605,15588.4245,15734.50625,15800.03825,15967.964,16135.88975,16227.3615,16383.0,16462.1845 }; | |
| int Quantizer::hints14[] = { 0,13,25,36,49,61,73,85,97,109,121 }; | |
| // scl/partch_43.scl | |
| // Harry Partch's 43-tone pure scale | |
| float Quantizer::scale15[] = { 0.0,29.3614618719,72.730885745,115.318835884,152.541137215,205.657244118,225.27202296,249.026667991,278.388129863,315.610431193,364.345503876,401.567805206,430.929267078,474.298690951,527.414797854,570.002747993,593.998561056,642.733633738,679.955935069,709.31739694,752.686820813,795.274770953,843.025229047,885.613179187,928.98260306,958.344064931,995.566366262,1044.30143894,1068.29725201,1110.88520215,1164.00130905,1207.37073292,1236.73219479,1273.95449612,1322.68956881,1359.91187014,1389.27333201,1413.02797704,1432.64275588,1485.75886279,1522.98116412,1565.56911426,1608.93853813,1638.3,1667.66146187,1711.03088574,1753.61883588,1790.84113721,1843.95724412,1863.57202296,1887.32666799,1916.68812986,1953.91043119,2002.64550388,2039.86780521,2069.22926708,2112.59869095,2165.71479785,2208.30274799,2232.29856106,2281.03363374,2318.25593507,2347.61739694,2390.98682081,2433.57477095,2481.32522905,2523.91317919,2567.28260306,2596.64406493,2633.86636626,2682.60143894,2706.59725201,2749.18520215,2802.30130905,2845.67073292,2875.03219479,2912.25449612,2960.98956881,2998.21187014,3027.57333201,3051.32797704,3070.94275588,3124.05886279,3161.28116412,3203.86911426,3247.23853813,3276.6,3305.96146187,3349.33088574,3391.91883588,3429.14113721,3482.25724412,3501.87202296,3525.62666799,3554.98812986,3592.21043119,3640.94550388,3678.16780521,3707.52926708,3750.89869095,3804.01479785,3846.60274799,3870.59856106,3919.33363374,3956.55593507,3985.91739694,4029.28682081,4071.87477095,4119.62522905,4162.21317919,4205.58260306,4234.94406493,4272.16636626,4320.90143894,4344.89725201,4387.48520215,4440.60130905,4483.97073292,4513.33219479,4550.55449612,4599.28956881,4636.51187014,4665.87333201,4689.62797704,4709.24275588,4762.35886279,4799.58116412,4842.16911426,4885.53853813,4914.9,4944.26146187,4987.63088574,5030.21883588,5067.44113721,5120.55724412,5140.17202296,5163.92666799,5193.28812986,5230.51043119,5279.24550388,5316.46780521,5345.82926708,5389.19869095,5442.31479785,5484.90274799,5508.89856106,5557.63363374,5594.85593507,5624.21739694,5667.58682081,5710.17477095,5757.92522905,5800.51317919,5843.88260306,5873.24406493,5910.46636626,5959.20143894,5983.19725201,6025.78520215,6078.90130905,6122.27073292,6151.63219479,6188.85449612,6237.58956881,6274.81187014,6304.17333201,6327.92797704,6347.54275588,6400.65886279,6437.88116412,6480.46911426,6523.83853813,6553.2,6582.56146187,6625.93088574,6668.51883588,6705.74113721,6758.85724412,6778.47202296,6802.22666799,6831.58812986,6868.81043119,6917.54550388,6954.76780521,6984.12926708,7027.49869095,7080.61479785,7123.20274799,7147.19856106,7195.93363374,7233.15593507,7262.51739694,7305.88682081,7348.47477095,7396.22522905,7438.81317919,7482.18260306,7511.54406493,7548.76636626,7597.50143894,7621.49725201,7664.08520215,7717.20130905,7760.57073292,7789.93219479,7827.15449612,7875.88956881,7913.11187014,7942.47333201,7966.22797704,7985.84275588,8038.95886279,8076.18116412,8118.76911426,8162.13853813,8191.5,8220.86146187,8264.23088574,8306.81883588,8344.04113721,8397.15724412,8416.77202296,8440.52666799,8469.88812986,8507.11043119,8555.84550388,8593.06780521,8622.42926708,8665.79869095,8718.91479785,8761.50274799,8785.49856106,8834.23363374,8871.45593507,8900.81739694,8944.18682081,8986.77477095,9034.52522905,9077.11317919,9120.48260306,9149.84406493,9187.06636626,9235.80143894,9259.79725201,9302.38520215,9355.50130905,9398.87073292,9428.23219479,9465.45449612,9514.18956881,9551.41187014,9580.77333201,9604.52797704,9624.14275588,9677.25886279,9714.48116412,9757.06911426,9800.43853813,9829.8,9859.16146187,9902.53088574,9945.11883588,9982.34113721,10035.4572441,10055.072023,10078.826668,10108.1881299,10145.4104312,10194.1455039,10231.3678052,10260.7292671,10304.098691,10357.2147979,10399.802748,10423.7985611,10472.5336337,10509.7559351,10539.1173969,10582.4868208,10625.074771,10672.825229,10715.4131792,10758.7826031,10788.1440649,10825.3663663,10874.1014389,10898.097252,10940.6852021,10993.801309,11037.1707329,11066.5321948,11103.7544961,11152.4895688,11189.7118701,11219.073332,11242.827977,11262.4427559,11315.5588628,11352.7811641,11395.3691143,11438.7385381,11468.1,11497.4614619,11540.8308857,11583.4188359,11620.6411372,11673.7572441,11693.372023,11717.126668,11746.4881299,11783.7104312,11832.4455039,11869.6678052,11899.0292671,11942.398691,11995.5147979,12038.102748,12062.0985611,12110.8336337,12148.0559351,12177.4173969,12220.7868208,12263.374771,12311.125229,12353.7131792,12397.0826031,12426.4440649,12463.6663663,12512.4014389,12536.397252,12578.9852021,12632.101309,12675.4707329,12704.8321948,12742.0544961,12790.7895688,12828.0118701,12857.373332,12881.127977,12900.7427559,12953.8588628,12991.0811641,13033.6691143,13077.0385381,13106.4,13135.7614619,13179.1308857,13221.7188359,13258.9411372,13312.0572441,13331.672023,13355.426668,13384.7881299,13422.0104312,13470.7455039,13507.9678052,13537.3292671,13580.698691,13633.8147979,13676.402748,13700.3985611,13749.1336337,13786.3559351,13815.7173969,13859.0868208,13901.674771,13949.425229,13992.0131792,14035.3826031,14064.7440649,14101.9663663,14150.7014389,14174.697252,14217.2852021,14270.401309,14313.7707329,14343.1321948,14380.3544961,14429.0895688,14466.3118701,14495.673332,14519.427977,14539.0427559,14592.1588628,14629.3811641,14671.9691143,14715.3385381,14744.7,14774.0614619,14817.4308857,14860.0188359,14897.2411372,14950.3572441,14969.972023,14993.726668,15023.0881299,15060.3104312,15109.0455039,15146.2678052,15175.6292671,15218.998691,15272.1147979,15314.702748,15338.6985611,15387.4336337,15424.6559351,15454.0173969,15497.3868208,15539.974771,15587.725229,15630.3131792,15673.6826031,15703.0440649,15740.2663663,15789.0014389,15812.997252,15855.5852021,15908.701309,15952.0707329,15981.4321948,16018.6544961,16067.3895688,16104.6118701,16133.973332,16157.727977,16177.3427559,16230.4588628,16267.6811641,16310.2691143,16353.6385381,16383.0,16412.3614619 }; | |
| int Quantizer::hints15[] = { 0,44,87,129,173,216,259,302,345,388,431 }; | |
| // scl/partch_39.scl | |
| // Ur-Partch Keyboard 39 tones, published in Interval | |
| float Quantizer::scale16[] = { 0.0,48.7350726825,72.730885745,109.953187075,152.541137215,205.657244118,249.026667991,278.388129863,315.610431193,364.345503876,430.929267078,474.298690951,527.414797854,570.002747993,593.998561056,642.733633738,679.955935069,733.072041972,752.686820813,795.274770953,843.025229047,885.613179187,905.227958028,958.344064931,995.566366262,1044.30143894,1068.29725201,1110.88520215,1164.00130905,1207.37073292,1273.95449612,1322.68956881,1359.91187014,1389.27333201,1432.64275588,1485.75886279,1528.34681292,1565.56911426,1589.56492732,1638.3,1687.03507268,1711.03088574,1748.25318708,1790.84113721,1843.95724412,1887.32666799,1916.68812986,1953.91043119,2002.64550388,2069.22926708,2112.59869095,2165.71479785,2208.30274799,2232.29856106,2281.03363374,2318.25593507,2371.37204197,2390.98682081,2433.57477095,2481.32522905,2523.91317919,2543.52795803,2596.64406493,2633.86636626,2682.60143894,2706.59725201,2749.18520215,2802.30130905,2845.67073292,2912.25449612,2960.98956881,2998.21187014,3027.57333201,3070.94275588,3124.05886279,3166.64681292,3203.86911426,3227.86492732,3276.6,3325.33507268,3349.33088574,3386.55318708,3429.14113721,3482.25724412,3525.62666799,3554.98812986,3592.21043119,3640.94550388,3707.52926708,3750.89869095,3804.01479785,3846.60274799,3870.59856106,3919.33363374,3956.55593507,4009.67204197,4029.28682081,4071.87477095,4119.62522905,4162.21317919,4181.82795803,4234.94406493,4272.16636626,4320.90143894,4344.89725201,4387.48520215,4440.60130905,4483.97073292,4550.55449612,4599.28956881,4636.51187014,4665.87333201,4709.24275588,4762.35886279,4804.94681292,4842.16911426,4866.16492732,4914.9,4963.63507268,4987.63088574,5024.85318708,5067.44113721,5120.55724412,5163.92666799,5193.28812986,5230.51043119,5279.24550388,5345.82926708,5389.19869095,5442.31479785,5484.90274799,5508.89856106,5557.63363374,5594.85593507,5647.97204197,5667.58682081,5710.17477095,5757.92522905,5800.51317919,5820.12795803,5873.24406493,5910.46636626,5959.20143894,5983.19725201,6025.78520215,6078.90130905,6122.27073292,6188.85449612,6237.58956881,6274.81187014,6304.17333201,6347.54275588,6400.65886279,6443.24681292,6480.46911426,6504.46492732,6553.2,6601.93507268,6625.93088574,6663.15318708,6705.74113721,6758.85724412,6802.22666799,6831.58812986,6868.81043119,6917.54550388,6984.12926708,7027.49869095,7080.61479785,7123.20274799,7147.19856106,7195.93363374,7233.15593507,7286.27204197,7305.88682081,7348.47477095,7396.22522905,7438.81317919,7458.42795803,7511.54406493,7548.76636626,7597.50143894,7621.49725201,7664.08520215,7717.20130905,7760.57073292,7827.15449612,7875.88956881,7913.11187014,7942.47333201,7985.84275588,8038.95886279,8081.54681292,8118.76911426,8142.76492732,8191.5,8240.23507268,8264.23088574,8301.45318708,8344.04113721,8397.15724412,8440.52666799,8469.88812986,8507.11043119,8555.84550388,8622.42926708,8665.79869095,8718.91479785,8761.50274799,8785.49856106,8834.23363374,8871.45593507,8924.57204197,8944.18682081,8986.77477095,9034.52522905,9077.11317919,9096.72795803,9149.84406493,9187.06636626,9235.80143894,9259.79725201,9302.38520215,9355.50130905,9398.87073292,9465.45449612,9514.18956881,9551.41187014,9580.77333201,9624.14275588,9677.25886279,9719.84681292,9757.06911426,9781.06492732,9829.8,9878.53507268,9902.53088574,9939.75318708,9982.34113721,10035.4572441,10078.826668,10108.1881299,10145.4104312,10194.1455039,10260.7292671,10304.098691,10357.2147979,10399.802748,10423.7985611,10472.5336337,10509.7559351,10562.872042,10582.4868208,10625.074771,10672.825229,10715.4131792,10735.027958,10788.1440649,10825.3663663,10874.1014389,10898.097252,10940.6852021,10993.801309,11037.1707329,11103.7544961,11152.4895688,11189.7118701,11219.073332,11262.4427559,11315.5588628,11358.1468129,11395.3691143,11419.3649273,11468.1,11516.8350727,11540.8308857,11578.0531871,11620.6411372,11673.7572441,11717.126668,11746.4881299,11783.7104312,11832.4455039,11899.0292671,11942.398691,11995.5147979,12038.102748,12062.0985611,12110.8336337,12148.0559351,12201.172042,12220.7868208,12263.374771,12311.125229,12353.7131792,12373.327958,12426.4440649,12463.6663663,12512.4014389,12536.397252,12578.9852021,12632.101309,12675.4707329,12742.0544961,12790.7895688,12828.0118701,12857.373332,12900.7427559,12953.8588628,12996.4468129,13033.6691143,13057.6649273,13106.4,13155.1350727,13179.1308857,13216.3531871,13258.9411372,13312.0572441,13355.426668,13384.7881299,13422.0104312,13470.7455039,13537.3292671,13580.698691,13633.8147979,13676.402748,13700.3985611,13749.1336337,13786.3559351,13839.472042,13859.0868208,13901.674771,13949.425229,13992.0131792,14011.627958,14064.7440649,14101.9663663,14150.7014389,14174.697252,14217.2852021,14270.401309,14313.7707329,14380.3544961,14429.0895688,14466.3118701,14495.673332,14539.0427559,14592.1588628,14634.7468129,14671.9691143,14695.9649273,14744.7,14793.4350727,14817.4308857,14854.6531871,14897.2411372,14950.3572441,14993.726668,15023.0881299,15060.3104312,15109.0455039,15175.6292671,15218.998691,15272.1147979,15314.702748,15338.6985611,15387.4336337,15424.6559351,15477.772042,15497.3868208,15539.974771,15587.725229,15630.3131792,15649.927958,15703.0440649,15740.2663663,15789.0014389,15812.997252,15855.5852021,15908.701309,15952.0707329,16018.6544961,16067.3895688,16104.6118701,16133.973332,16177.3427559,16230.4588628,16273.0468129,16310.2691143,16334.2649273,16383.0,16431.7350727 }; | |
| int Quantizer::hints16[] = { 0,40,79,117,157,196,235,274,313,352,391 }; | |
| // scl/partch_37.scl | |
| // From "Exposition on Monophony" 1933, unp. see Ayers, 1/1 vol.9(2) | |
| float Quantizer::scale17[] = { 0.0,48.7350726825,72.730885745,109.953187075,152.541137215,205.657244118,225.27202296,249.026667991,278.388129863,315.610431193,364.345503876,430.929267078,474.298690951,527.414797854,570.002747993,593.998561056,679.955935069,752.686820813,795.274770953,843.025229047,885.613179187,958.344064931,1044.30143894,1068.29725201,1110.88520215,1164.00130905,1207.37073292,1273.95449612,1322.68956881,1359.91187014,1389.27333201,1413.02797704,1432.64275588,1485.75886279,1528.34681292,1565.56911426,1589.56492732,1638.3,1687.03507268,1711.03088574,1748.25318708,1790.84113721,1843.95724412,1863.57202296,1887.32666799,1916.68812986,1953.91043119,2002.64550388,2069.22926708,2112.59869095,2165.71479785,2208.30274799,2232.29856106,2318.25593507,2390.98682081,2433.57477095,2481.32522905,2523.91317919,2596.64406493,2682.60143894,2706.59725201,2749.18520215,2802.30130905,2845.67073292,2912.25449612,2960.98956881,2998.21187014,3027.57333201,3051.32797704,3070.94275588,3124.05886279,3166.64681292,3203.86911426,3227.86492732,3276.6,3325.33507268,3349.33088574,3386.55318708,3429.14113721,3482.25724412,3501.87202296,3525.62666799,3554.98812986,3592.21043119,3640.94550388,3707.52926708,3750.89869095,3804.01479785,3846.60274799,3870.59856106,3956.55593507,4029.28682081,4071.87477095,4119.62522905,4162.21317919,4234.94406493,4320.90143894,4344.89725201,4387.48520215,4440.60130905,4483.97073292,4550.55449612,4599.28956881,4636.51187014,4665.87333201,4689.62797704,4709.24275588,4762.35886279,4804.94681292,4842.16911426,4866.16492732,4914.9,4963.63507268,4987.63088574,5024.85318708,5067.44113721,5120.55724412,5140.17202296,5163.92666799,5193.28812986,5230.51043119,5279.24550388,5345.82926708,5389.19869095,5442.31479785,5484.90274799,5508.89856106,5594.85593507,5667.58682081,5710.17477095,5757.92522905,5800.51317919,5873.24406493,5959.20143894,5983.19725201,6025.78520215,6078.90130905,6122.27073292,6188.85449612,6237.58956881,6274.81187014,6304.17333201,6327.92797704,6347.54275588,6400.65886279,6443.24681292,6480.46911426,6504.46492732,6553.2,6601.93507268,6625.93088574,6663.15318708,6705.74113721,6758.85724412,6778.47202296,6802.22666799,6831.58812986,6868.81043119,6917.54550388,6984.12926708,7027.49869095,7080.61479785,7123.20274799,7147.19856106,7233.15593507,7305.88682081,7348.47477095,7396.22522905,7438.81317919,7511.54406493,7597.50143894,7621.49725201,7664.08520215,7717.20130905,7760.57073292,7827.15449612,7875.88956881,7913.11187014,7942.47333201,7966.22797704,7985.84275588,8038.95886279,8081.54681292,8118.76911426,8142.76492732,8191.5,8240.23507268,8264.23088574,8301.45318708,8344.04113721,8397.15724412,8416.77202296,8440.52666799,8469.88812986,8507.11043119,8555.84550388,8622.42926708,8665.79869095,8718.91479785,8761.50274799,8785.49856106,8871.45593507,8944.18682081,8986.77477095,9034.52522905,9077.11317919,9149.84406493,9235.80143894,9259.79725201,9302.38520215,9355.50130905,9398.87073292,9465.45449612,9514.18956881,9551.41187014,9580.77333201,9604.52797704,9624.14275588,9677.25886279,9719.84681292,9757.06911426,9781.06492732,9829.8,9878.53507268,9902.53088574,9939.75318708,9982.34113721,10035.4572441,10055.072023,10078.826668,10108.1881299,10145.4104312,10194.1455039,10260.7292671,10304.098691,10357.2147979,10399.802748,10423.7985611,10509.7559351,10582.4868208,10625.074771,10672.825229,10715.4131792,10788.1440649,10874.1014389,10898.097252,10940.6852021,10993.801309,11037.1707329,11103.7544961,11152.4895688,11189.7118701,11219.073332,11242.827977,11262.4427559,11315.5588628,11358.1468129,11395.3691143,11419.3649273,11468.1,11516.8350727,11540.8308857,11578.0531871,11620.6411372,11673.7572441,11693.372023,11717.126668,11746.4881299,11783.7104312,11832.4455039,11899.0292671,11942.398691,11995.5147979,12038.102748,12062.0985611,12148.0559351,12220.7868208,12263.374771,12311.125229,12353.7131792,12426.4440649,12512.4014389,12536.397252,12578.9852021,12632.101309,12675.4707329,12742.0544961,12790.7895688,12828.0118701,12857.373332,12881.127977,12900.7427559,12953.8588628,12996.4468129,13033.6691143,13057.6649273,13106.4,13155.1350727,13179.1308857,13216.3531871,13258.9411372,13312.0572441,13331.672023,13355.426668,13384.7881299,13422.0104312,13470.7455039,13537.3292671,13580.698691,13633.8147979,13676.402748,13700.3985611,13786.3559351,13859.0868208,13901.674771,13949.425229,13992.0131792,14064.7440649,14150.7014389,14174.697252,14217.2852021,14270.401309,14313.7707329,14380.3544961,14429.0895688,14466.3118701,14495.673332,14519.427977,14539.0427559,14592.1588628,14634.7468129,14671.9691143,14695.9649273,14744.7,14793.4350727,14817.4308857,14854.6531871,14897.2411372,14950.3572441,14969.972023,14993.726668,15023.0881299,15060.3104312,15109.0455039,15175.6292671,15218.998691,15272.1147979,15314.702748,15338.6985611,15424.6559351,15497.3868208,15539.974771,15587.725229,15630.3131792,15703.0440649,15789.0014389,15812.997252,15855.5852021,15908.701309,15952.0707329,16018.6544961,16067.3895688,16104.6118701,16133.973332,16157.727977,16177.3427559,16230.4588628,16273.0468129,16310.2691143,16334.2649273,16383.0,16431.7350727 }; | |
| int Quantizer::hints17[] = { 0,38,75,111,149,186,223,260,297,334,371 }; | |
| // scl/partch_29.scl | |
| // Partch/Ptolemy 11-limit Diamond | |
| float Quantizer::scale18[] = { 0.0,205.657244118,225.27202296,249.026667991,278.388129863,315.610431193,364.345503876,430.929267078,474.298690951,527.414797854,570.002747993,593.998561056,679.955935069,752.686820813,795.274770953,843.025229047,885.613179187,958.344064931,1044.30143894,1068.29725201,1110.88520215,1164.00130905,1207.37073292,1273.95449612,1322.68956881,1359.91187014,1389.27333201,1413.02797704,1432.64275588,1638.3,1843.95724412,1863.57202296,1887.32666799,1916.68812986,1953.91043119,2002.64550388,2069.22926708,2112.59869095,2165.71479785,2208.30274799,2232.29856106,2318.25593507,2390.98682081,2433.57477095,2481.32522905,2523.91317919,2596.64406493,2682.60143894,2706.59725201,2749.18520215,2802.30130905,2845.67073292,2912.25449612,2960.98956881,2998.21187014,3027.57333201,3051.32797704,3070.94275588,3276.6,3482.25724412,3501.87202296,3525.62666799,3554.98812986,3592.21043119,3640.94550388,3707.52926708,3750.89869095,3804.01479785,3846.60274799,3870.59856106,3956.55593507,4029.28682081,4071.87477095,4119.62522905,4162.21317919,4234.94406493,4320.90143894,4344.89725201,4387.48520215,4440.60130905,4483.97073292,4550.55449612,4599.28956881,4636.51187014,4665.87333201,4689.62797704,4709.24275588,4914.9,5120.55724412,5140.17202296,5163.92666799,5193.28812986,5230.51043119,5279.24550388,5345.82926708,5389.19869095,5442.31479785,5484.90274799,5508.89856106,5594.85593507,5667.58682081,5710.17477095,5757.92522905,5800.51317919,5873.24406493,5959.20143894,5983.19725201,6025.78520215,6078.90130905,6122.27073292,6188.85449612,6237.58956881,6274.81187014,6304.17333201,6327.92797704,6347.54275588,6553.2,6758.85724412,6778.47202296,6802.22666799,6831.58812986,6868.81043119,6917.54550388,6984.12926708,7027.49869095,7080.61479785,7123.20274799,7147.19856106,7233.15593507,7305.88682081,7348.47477095,7396.22522905,7438.81317919,7511.54406493,7597.50143894,7621.49725201,7664.08520215,7717.20130905,7760.57073292,7827.15449612,7875.88956881,7913.11187014,7942.47333201,7966.22797704,7985.84275588,8191.5,8397.15724412,8416.77202296,8440.52666799,8469.88812986,8507.11043119,8555.84550388,8622.42926708,8665.79869095,8718.91479785,8761.50274799,8785.49856106,8871.45593507,8944.18682081,8986.77477095,9034.52522905,9077.11317919,9149.84406493,9235.80143894,9259.79725201,9302.38520215,9355.50130905,9398.87073292,9465.45449612,9514.18956881,9551.41187014,9580.77333201,9604.52797704,9624.14275588,9829.8,10035.4572441,10055.072023,10078.826668,10108.1881299,10145.4104312,10194.1455039,10260.7292671,10304.098691,10357.2147979,10399.802748,10423.7985611,10509.7559351,10582.4868208,10625.074771,10672.825229,10715.4131792,10788.1440649,10874.1014389,10898.097252,10940.6852021,10993.801309,11037.1707329,11103.7544961,11152.4895688,11189.7118701,11219.073332,11242.827977,11262.4427559,11468.1,11673.7572441,11693.372023,11717.126668,11746.4881299,11783.7104312,11832.4455039,11899.0292671,11942.398691,11995.5147979,12038.102748,12062.0985611,12148.0559351,12220.7868208,12263.374771,12311.125229,12353.7131792,12426.4440649,12512.4014389,12536.397252,12578.9852021,12632.101309,12675.4707329,12742.0544961,12790.7895688,12828.0118701,12857.373332,12881.127977,12900.7427559,13106.4,13312.0572441,13331.672023,13355.426668,13384.7881299,13422.0104312,13470.7455039,13537.3292671,13580.698691,13633.8147979,13676.402748,13700.3985611,13786.3559351,13859.0868208,13901.674771,13949.425229,13992.0131792,14064.7440649,14150.7014389,14174.697252,14217.2852021,14270.401309,14313.7707329,14380.3544961,14429.0895688,14466.3118701,14495.673332,14519.427977,14539.0427559,14744.7,14950.3572441,14969.972023,14993.726668,15023.0881299,15060.3104312,15109.0455039,15175.6292671,15218.998691,15272.1147979,15314.702748,15338.6985611,15424.6559351,15497.3868208,15539.974771,15587.725229,15630.3131792,15703.0440649,15789.0014389,15812.997252,15855.5852021,15908.701309,15952.0707329,16018.6544961,16067.3895688,16104.6118701,16133.973332,16157.727977,16177.3427559,16383.0,16588.6572441 }; | |
| int Quantizer::hints18[] = { 0,30,59,87,117,146,175,204,233,262,291 }; | |
| // scl/partch-indian.scl | |
| // Partch's Indian Chromatic, Exposition of Monophony, 1933. | |
| float Quantizer::scale19[] = { 0.0,72.730885745,143.29037282,205.657244118,278.388129863,364.345503876,430.929267078,527.414797854,593.998561056,679.955935069,752.686820813,795.274770953,905.227958028,958.344064931,1044.30143894,1068.29725201,1164.00130905,1236.73219479,1322.68956881,1413.02797704,1485.75886279,1565.56911426,1638.3,1711.03088574,1781.59037282,1843.95724412,1916.68812986,2002.64550388,2069.22926708,2165.71479785,2232.29856106,2318.25593507,2390.98682081,2433.57477095,2543.52795803,2596.64406493,2682.60143894,2706.59725201,2802.30130905,2875.03219479,2960.98956881,3051.32797704,3124.05886279,3203.86911426,3276.6,3349.33088574,3419.89037282,3482.25724412,3554.98812986,3640.94550388,3707.52926708,3804.01479785,3870.59856106,3956.55593507,4029.28682081,4071.87477095,4181.82795803,4234.94406493,4320.90143894,4344.89725201,4440.60130905,4513.33219479,4599.28956881,4689.62797704,4762.35886279,4842.16911426,4914.9,4987.63088574,5058.19037282,5120.55724412,5193.28812986,5279.24550388,5345.82926708,5442.31479785,5508.89856106,5594.85593507,5667.58682081,5710.17477095,5820.12795803,5873.24406493,5959.20143894,5983.19725201,6078.90130905,6151.63219479,6237.58956881,6327.92797704,6400.65886279,6480.46911426,6553.2,6625.93088574,6696.49037282,6758.85724412,6831.58812986,6917.54550388,6984.12926708,7080.61479785,7147.19856106,7233.15593507,7305.88682081,7348.47477095,7458.42795803,7511.54406493,7597.50143894,7621.49725201,7717.20130905,7789.93219479,7875.88956881,7966.22797704,8038.95886279,8118.76911426,8191.5,8264.23088574,8334.79037282,8397.15724412,8469.88812986,8555.84550388,8622.42926708,8718.91479785,8785.49856106,8871.45593507,8944.18682081,8986.77477095,9096.72795803,9149.84406493,9235.80143894,9259.79725201,9355.50130905,9428.23219479,9514.18956881,9604.52797704,9677.25886279,9757.06911426,9829.8,9902.53088574,9973.09037282,10035.4572441,10108.1881299,10194.1455039,10260.7292671,10357.2147979,10423.7985611,10509.7559351,10582.4868208,10625.074771,10735.027958,10788.1440649,10874.1014389,10898.097252,10993.801309,11066.5321948,11152.4895688,11242.827977,11315.5588628,11395.3691143,11468.1,11540.8308857,11611.3903728,11673.7572441,11746.4881299,11832.4455039,11899.0292671,11995.5147979,12062.0985611,12148.0559351,12220.7868208,12263.374771,12373.327958,12426.4440649,12512.4014389,12536.397252,12632.101309,12704.8321948,12790.7895688,12881.127977,12953.8588628,13033.6691143,13106.4,13179.1308857,13249.6903728,13312.0572441,13384.7881299,13470.7455039,13537.3292671,13633.8147979,13700.3985611,13786.3559351,13859.0868208,13901.674771,14011.627958,14064.7440649,14150.7014389,14174.697252,14270.401309,14343.1321948,14429.0895688,14519.427977,14592.1588628,14671.9691143,14744.7,14817.4308857,14887.9903728,14950.3572441,15023.0881299,15109.0455039,15175.6292671,15272.1147979,15338.6985611,15424.6559351,15497.3868208,15539.974771,15649.927958,15703.0440649,15789.0014389,15812.997252,15908.701309,15981.4321948,16067.3895688,16157.727977,16230.4588628,16310.2691143,16383.0,16455.7308857 }; | |
| int Quantizer::hints19[] = { 0,23,45,66,89,111,133,155,177,199,221 }; | |
| // scl/partch-grm.scl | |
| // Partch Greek scales from "Two Studies on Ancient Greek Scales" mixed | |
| float Quantizer::scale20[] = { 0.0,85.9573740126,152.541137215,278.388129863,430.929267078,679.955935069,958.344064931,1044.30143894,1110.88520215,1638.3,1724.25737401,1790.84113721,1916.68812986,2069.22926708,2318.25593507,2596.64406493,2682.60143894,2749.18520215,3276.6,3362.55737401,3429.14113721,3554.98812986,3707.52926708,3956.55593507,4234.94406493,4320.90143894,4387.48520215,4914.9,5000.85737401,5067.44113721,5193.28812986,5345.82926708,5594.85593507,5873.24406493,5959.20143894,6025.78520215,6553.2,6639.15737401,6705.74113721,6831.58812986,6984.12926708,7233.15593507,7511.54406493,7597.50143894,7664.08520215,8191.5,8277.45737401,8344.04113721,8469.88812986,8622.42926708,8871.45593507,9149.84406493,9235.80143894,9302.38520215,9829.8,9915.75737401,9982.34113721,10108.1881299,10260.7292671,10509.7559351,10788.1440649,10874.1014389,10940.6852021,11468.1,11554.057374,11620.6411372,11746.4881299,11899.0292671,12148.0559351,12426.4440649,12512.4014389,12578.9852021,13106.4,13192.357374,13258.9411372,13384.7881299,13537.3292671,13786.3559351,14064.7440649,14150.7014389,14217.2852021,14744.7,14830.657374,14897.2411372,15023.0881299,15175.6292671,15424.6559351,15703.0440649,15789.0014389,15855.5852021,16383.0,16468.957374 }; | |
| int Quantizer::hints20[] = { 0,10,19,27,37,46,55,64,73,82,91 }; | |
| // scl/partch-greek.scl | |
| // Partch Greek scales from "Two Studies on Ancient Greek Scales" on black/white | |
| float Quantizer::scale21[] = { 0.0,0.0,85.9573740126,278.388129863,152.541137215,679.955935069,430.929267078,958.344064931,958.344064931,1044.30143894,1110.88520215,1110.88520215,1638.3,1638.3,1724.25737401,1916.68812986,1790.84113721,2318.25593507,2069.22926708,2596.64406493,2596.64406493,2682.60143894,2749.18520215,2749.18520215,3276.6,3276.6,3362.55737401,3554.98812986,3429.14113721,3956.55593507,3707.52926708,4234.94406493,4234.94406493,4320.90143894,4387.48520215,4387.48520215,4914.9,4914.9,5000.85737401,5193.28812986,5067.44113721,5594.85593507,5345.82926708,5873.24406493,5873.24406493,5959.20143894,6025.78520215,6025.78520215,6553.2,6553.2,6639.15737401,6831.58812986,6705.74113721,7233.15593507,6984.12926708,7511.54406493,7511.54406493,7597.50143894,7664.08520215,7664.08520215,8191.5,8191.5,8277.45737401,8469.88812986,8344.04113721,8871.45593507,8622.42926708,9149.84406493,9149.84406493,9235.80143894,9302.38520215,9302.38520215,9829.8,9829.8,9915.75737401,10108.1881299,9982.34113721,10509.7559351,10260.7292671,10788.1440649,10788.1440649,10874.1014389,10940.6852021,10940.6852021,11468.1,11468.1,11554.057374,11746.4881299,11620.6411372,12148.0559351,11899.0292671,12426.4440649,12426.4440649,12512.4014389,12578.9852021,12578.9852021,13106.4,13106.4,13192.357374,13384.7881299,13258.9411372,13786.3559351,13537.3292671,14064.7440649,14064.7440649,14150.7014389,14217.2852021,14217.2852021,14744.7,14744.7,14830.657374,15023.0881299,14897.2411372,15424.6559351,15175.6292671,15703.0440649,15703.0440649,15789.0014389,15855.5852021,15855.5852021,16383.0,16383.0,16468.957374 }; | |
| int Quantizer::hints21[] = { 0,14,26,36,50,62,74,86,98,110,122 }; | |
| int Quantizer::notecount[] = { 122,122,172,122,155,190,343,122,122,122,122,122,122,122,122,432,392,372,292,222,92,123 }; | |
| float *Quantizer::scales[] = { scale0,scale1,scale2,scale3,scale4,scale5,scale6,scale7,scale8,scale9,scale10,scale11,scale12,scale13,scale14,scale15,scale16,scale17,scale18,scale19,scale20,scale21 }; | |
| int *Quantizer::hints[] = { hints0,hints1,hints2,hints3,hints4,hints5,hints6,hints7,hints8,hints9,hints10,hints11,hints12,hints13,hints14,hints15,hints16,hints17,hints18,hints19,hints20,hints21 }; | |
| // END AUTOGENERATED SCALE CLASS DATA | |