Adagio in A - Bach

Adagio in A from Toccata, Adagio and Fuge in C (BWV564) by Johann Sebastian Bach, performed by Aart Bergwerf.

Log in to post a comment.

const overTones = 10
const organ = synth.def(
    class {
        constructor(options) {
            this.phase = 0;
        }
        process(note, env, tick, options) {
            this.phase += midi_to_hz(note) * ditty.dt;
            let result = 0;
            for (let i = 0; i < overTones; i++) {
                let attenuation = (overTones - i) / overTones
                result += Math.sin(this.phase * Math.PI * 2 * i) * attenuation
            }
            return result * env.value
        }
    }, { amp: 0.1, attack: 0.05, release: 0.3 }
);

ditty.bpm = 60; // start times and durations are in seconds

var adagio = []

loop( () => {
    adagio.forEach( note => {
        organ.play_timed(note[0], note[1] + 0.5, { duration:note[2] });
    });
}, { name: 'Adagio', sync: 240 });

adagio.push([33, 0.000, 0.398]);
adagio.push([60, 0.000, 1.663]);
adagio.push([69, 0.000, 1.623]);
adagio.push([76, 0.000, 0.100]);
adagio.push([74, 0.106, 0.108]);
adagio.push([76, 0.231, 0.085]);
adagio.push([74, 0.333, 0.071]);
adagio.push([76, 0.415, 1.160]);
adagio.push([45, 0.923, 0.385]);
adagio.push([45, 1.846, 0.400]);
adagio.push([76, 2.690, 0.433]);
adagio.push([33, 2.769, 0.350]);
adagio.push([60, 2.769, 0.446]);
adagio.push([69, 2.769, 0.456]);
adagio.push([76, 3.646, 0.712]);
adagio.push([32, 3.692, 0.387]);
adagio.push([59, 3.692, 1.890]);
adagio.push([71, 3.692, 1.873]);
adagio.push([83, 4.388, 0.142]);
adagio.push([80, 4.587, 0.619]);
adagio.push([44, 4.615, 0.335]);
adagio.push([83, 5.231, 0.146]);
adagio.push([76, 5.467, 0.221]);
adagio.push([44, 5.538, 0.350]);
adagio.push([74, 5.685, 0.187]);
adagio.push([72, 5.888, 0.115]);
adagio.push([74, 6.012, 0.131]);
adagio.push([76, 6.173, 0.085]);
adagio.push([74, 6.281, 0.063]);
adagio.push([76, 6.371, 0.048]);
adagio.push([74, 6.435, 0.058]);
adagio.push([32, 6.462, 0.323]);
adagio.push([64, 6.462, 0.502]);
adagio.push([71, 6.462, 0.494]);
adagio.push([76, 6.494, 0.060]);
adagio.push([74, 6.540, 0.417]);
adagio.push([74, 7.187, 0.083]);
adagio.push([74, 7.342, 0.473]);
adagio.push([33, 7.385, 0.431]);
adagio.push([64, 7.385, 1.838]);
adagio.push([71, 7.385, 0.817]);
adagio.push([72, 7.821, 0.400]);
adagio.push([72, 8.298, 0.921]);
adagio.push([45, 8.308, 0.421]);
adagio.push([69, 8.308, 0.940]);
adagio.push([45, 9.231, 0.463]);
adagio.push([72, 10.094, 0.440]);
adagio.push([33, 10.154, 0.429]);
adagio.push([64, 10.154, 0.410]);
adagio.push([69, 10.154, 0.433]);
adagio.push([72, 11.048, 0.740]);
adagio.push([38, 11.077, 0.512]);
adagio.push([62, 11.077, 1.650]);
adagio.push([65, 11.077, 1.642]);
adagio.push([77, 11.806, 0.167]);
adagio.push([50, 12.000, 0.412]);
adagio.push([74, 12.035, 0.648]);
adagio.push([77, 12.710, 0.146]);
adagio.push([50, 12.923, 0.496]);
adagio.push([70, 12.923, 1.342]);
adagio.push([38, 13.846, 0.400]);
adagio.push([62, 13.846, 0.469]);
adagio.push([65, 13.846, 0.483]);
adagio.push([74, 14.292, 0.350]);
adagio.push([68, 14.719, 0.444]);
adagio.push([38, 14.769, 0.535]);
adagio.push([59, 14.769, 1.496]);
adagio.push([64, 14.769, 1.490]);
adagio.push([66, 15.212, 0.396]);
adagio.push([68, 15.671, 0.704]);
adagio.push([50, 15.692, 0.421]);
adagio.push([50, 16.615, 0.438]);
adagio.push([68, 17.306, 0.137]);
adagio.push([76, 17.498, 0.685]);
adagio.push([38, 17.538, 0.379]);
adagio.push([59, 17.538, 0.431]);
adagio.push([64, 17.538, 0.433]);
adagio.push([68, 18.229, 0.135]);
adagio.push([69, 18.423, 0.460]);
adagio.push([36, 18.462, 0.473]);
adagio.push([57, 18.462, 1.483]);
adagio.push([64, 18.462, 1.500]);
adagio.push([68, 18.902, 0.362]);
adagio.push([69, 19.360, 0.588]);
adagio.push([48, 19.385, 0.319]);
adagio.push([48, 20.308, 0.448]);
adagio.push([69, 20.998, 0.138]);
adagio.push([71, 21.198, 0.671]);
adagio.push([36, 21.231, 0.431]);
adagio.push([64, 21.231, 0.442]);
adagio.push([69, 21.231, 0.431]);
adagio.push([72, 21.888, 0.185]);
adagio.push([74, 22.148, 0.435]);
adagio.push([35, 22.154, 0.448]);
adagio.push([62, 22.154, 1.483]);
adagio.push([69, 22.154, 1.483]);
adagio.push([76, 22.617, 0.173]);
adagio.push([77, 22.819, 0.158]);
adagio.push([47, 23.077, 0.404]);
adagio.push([71, 23.077, 0.454]);
adagio.push([72, 23.550, 0.160]);
adagio.push([74, 23.746, 0.173]);
adagio.push([68, 23.985, 0.613]);
adagio.push([47, 24.000, 0.425]);
adagio.push([74, 24.706, 0.119]);
adagio.push([68, 24.888, 0.619]);
adagio.push([40, 24.923, 0.423]);
adagio.push([59, 24.923, 0.462]);
adagio.push([64, 24.923, 0.446]);
adagio.push([74, 25.604, 0.142]);
adagio.push([74, 25.825, 0.440]);
adagio.push([33, 25.846, 0.402]);
adagio.push([57, 25.846, 1.477]);
adagio.push([64, 25.846, 1.500]);
adagio.push([72, 26.287, 0.317]);
adagio.push([45, 26.769, 0.471]);
adagio.push([72, 26.771, 0.177]);
adagio.push([71, 26.975, 0.200]);
adagio.push([69, 27.212, 0.350]);
adagio.push([78, 27.658, 0.446]);
adagio.push([45, 27.692, 0.483]);
adagio.push([79, 28.137, 0.177]);
adagio.push([81, 28.356, 0.154]);
adagio.push([78, 28.600, 0.465]);
adagio.push([33, 28.615, 0.367]);
adagio.push([69, 28.615, 0.450]);
adagio.push([72, 28.615, 0.444]);
adagio.push([79, 29.088, 0.162]);
adagio.push([81, 29.288, 0.192]);
adagio.push([33, 29.538, 0.467]);
adagio.push([66, 29.538, 1.323]);
adagio.push([71, 29.538, 1.321]);
adagio.push([75, 29.552, 0.404]);
adagio.push([73, 29.990, 0.398]);
adagio.push([75, 30.450, 0.592]);
adagio.push([45, 30.462, 0.394]);
adagio.push([45, 31.385, 0.415]);
adagio.push([75, 32.138, 0.121]);
adagio.push([33, 32.308, 0.373]);
adagio.push([66, 32.308, 0.508]);
adagio.push([71, 32.308, 0.490]);
adagio.push([83, 32.315, 0.642]);
adagio.push([75, 33.013, 0.142]);
adagio.push([76, 33.219, 0.435]);
adagio.push([31, 33.231, 0.454]);
adagio.push([64, 33.231, 1.350]);
adagio.push([71, 33.231, 1.371]);
adagio.push([75, 33.679, 0.413]);
adagio.push([76, 34.152, 0.623]);
adagio.push([43, 34.154, 0.433]);
adagio.push([76, 35.060, 0.438]);
adagio.push([43, 35.077, 0.460]);
adagio.push([78, 35.542, 0.162]);
adagio.push([79, 35.742, 0.208]);
adagio.push([31, 36.000, 0.379]);
adagio.push([64, 36.000, 0.475]);
adagio.push([71, 36.000, 0.490]);
adagio.push([76, 36.012, 0.581]);
adagio.push([79, 36.692, 0.179]);
adagio.push([31, 36.923, 0.462]);
adagio.push([64, 36.923, 1.294]);
adagio.push([69, 36.923, 1.283]);
adagio.push([73, 36.931, 0.419]);
adagio.push([71, 37.377, 0.429]);
adagio.push([43, 37.846, 0.460]);
adagio.push([73, 37.875, 0.438]);
adagio.push([43, 38.769, 0.433]);
adagio.push([81, 38.777, 2.290]);
adagio.push([31, 39.692, 0.425]);
adagio.push([64, 39.692, 0.442]);
adagio.push([73, 39.692, 0.462]);
adagio.push([30, 40.615, 0.475]);
adagio.push([66, 40.615, 1.340]);
adagio.push([75, 40.615, 1.342]);
adagio.push([83, 41.106, 0.154]);
adagio.push([84, 41.292, 0.163]);
adagio.push([81, 41.535, 0.652]);
adagio.push([42, 41.538, 0.419]);
adagio.push([84, 42.211, 0.137]);
adagio.push([75, 42.446, 0.702]);
adagio.push([42, 42.461, 0.394]);
adagio.push([81, 43.173, 0.131]);
adagio.push([79, 43.381, 0.704]);
adagio.push([35, 43.385, 0.381]);
adagio.push([66, 43.385, 0.419]);
adagio.push([75, 43.385, 0.419]);
adagio.push([78, 44.136, 0.108]);
adagio.push([28, 44.308, 0.446]);
adagio.push([64, 44.308, 1.485]);
adagio.push([76, 44.308, 1.475]);
adagio.push([79, 44.317, 1.415]);
adagio.push([40, 45.231, 0.381]);
adagio.push([40, 46.154, 0.388]);
adagio.push([78, 46.854, 0.133]);
adagio.push([79, 47.046, 0.606]);
adagio.push([28, 47.077, 0.338]);
adagio.push([64, 47.077, 0.429]);
adagio.push([71, 47.077, 0.450]);
adagio.push([81, 47.681, 0.123]);
adagio.push([79, 47.883, 0.054]);
adagio.push([77, 47.938, 0.075]);
adagio.push([33, 48.000, 0.413]);
adagio.push([60, 48.000, 1.348]);
adagio.push([69, 48.000, 1.362]);
adagio.push([79, 48.011, 0.062]);
adagio.push([77, 48.086, 0.556]);
adagio.push([76, 48.675, 0.117]);
adagio.push([79, 48.842, 0.065]);
adagio.push([45, 48.923, 0.410]);
adagio.push([77, 48.923, 0.058]);
adagio.push([79, 48.983, 0.069]);
adagio.push([77, 49.067, 0.492]);
adagio.push([76, 49.592, 0.181]);
adagio.push([79, 49.819, 0.213]);
adagio.push([45, 49.846, 0.385]);
adagio.push([77, 50.060, 0.067]);
adagio.push([79, 50.136, 0.060]);
adagio.push([77, 50.213, 0.054]);
adagio.push([79, 50.286, 0.031]);
adagio.push([77, 50.321, 0.067]);
adagio.push([79, 50.379, 0.075]);
adagio.push([77, 50.471, 0.054]);
adagio.push([76, 50.540, 0.077]);
adagio.push([77, 50.665, 0.298]);
adagio.push([33, 50.769, 0.385]);
adagio.push([60, 50.769, 0.517]);
adagio.push([69, 50.769, 0.525]);
adagio.push([79, 50.971, 0.250]);
adagio.push([81, 51.250, 0.215]);
adagio.push([75, 51.473, 0.173]);
adagio.push([34, 51.692, 0.442]);
adagio.push([61, 51.692, 1.481]);
adagio.push([67, 51.692, 1.510]);
adagio.push([76, 51.692, 0.658]);
adagio.push([75, 52.385, 0.140]);
adagio.push([46, 52.615, 0.408]);
adagio.push([76, 52.615, 0.644]);
adagio.push([75, 53.308, 0.113]);
adagio.push([46, 53.538, 0.346]);
adagio.push([76, 53.538, 0.681]);
adagio.push([75, 54.231, 0.142]);
adagio.push([34, 54.461, 0.390]);
adagio.push([61, 54.461, 0.512]);
adagio.push([67, 54.461, 0.485]);
adagio.push([76, 54.461, 0.646]);
adagio.push([75, 55.154, 0.146]);
adagio.push([35, 55.385, 0.483]);
adagio.push([59, 55.385, 1.883]);
adagio.push([67, 55.385, 0.463]);
adagio.push([76, 55.385, 0.475]);
adagio.push([71, 55.846, 0.367]);
adagio.push([78, 55.879, 0.179]);
adagio.push([79, 56.094, 0.194]);
adagio.push([47, 56.308, 0.462]);
adagio.push([69, 56.308, 0.387]);
adagio.push([78, 56.346, 0.408]);
adagio.push([72, 56.769, 0.337]);
adagio.push([79, 56.783, 0.185]);
adagio.push([81, 56.992, 0.175]);
adagio.push([76, 57.215, 0.263]);
adagio.push([47, 57.231, 0.450]);
adagio.push([66, 57.231, 0.496]);
adagio.push([75, 57.492, 0.129]);
adagio.push([76, 57.650, 0.115]);
adagio.push([75, 57.788, 0.067]);
adagio.push([76, 57.886, 0.052]);
adagio.push([75, 57.958, 0.048]);
adagio.push([76, 58.019, 0.062]);
adagio.push([75, 58.085, 0.669]);
adagio.push([35, 58.154, 0.412]);
adagio.push([59, 58.154, 0.377]);
adagio.push([66, 58.154, 0.404]);
adagio.push([76, 58.769, 0.219]);
adagio.push([28, 59.077, 0.435]);
adagio.push([59, 59.077, 1.438]);
adagio.push([68, 59.077, 1.467]);
adagio.push([76, 59.077, 1.627]);
adagio.push([40, 60.000, 0.471]);
adagio.push([40, 60.923, 0.665]);
adagio.push([78, 61.654, 0.127]);
adagio.push([38, 61.846, 0.504]);
adagio.push([64, 61.846, 0.492]);
adagio.push([71, 61.846, 0.490]);
adagio.push([79, 61.852, 0.642]);
adagio.push([78, 62.569, 0.154]);
adagio.push([37, 62.769, 0.527]);
adagio.push([64, 62.769, 1.402]);
adagio.push([69, 62.769, 0.923]);
adagio.push([79, 62.786, 0.625]);
adagio.push([76, 63.513, 0.144]);
adagio.push([49, 63.692, 0.485]);
adagio.push([69, 63.692, 0.560]);
adagio.push([76, 64.356, 0.173]);
adagio.push([79, 64.573, 0.487]);
adagio.push([49, 64.615, 0.498]);
adagio.push([81, 65.100, 0.160]);
adagio.push([82, 65.283, 0.173]);
adagio.push([81, 65.531, 0.635]);
adagio.push([37, 65.538, 0.415]);
adagio.push([64, 65.538, 0.538]);
adagio.push([69, 65.538, 0.544]);
adagio.push([79, 66.215, 0.133]);
adagio.push([79, 66.427, 0.504]);
adagio.push([38, 66.461, 0.477]);
adagio.push([64, 66.461, 0.890]);
adagio.push([69, 66.461, 0.885]);
adagio.push([77, 66.946, 0.385]);
adagio.push([50, 67.385, 0.412]);
adagio.push([62, 67.385, 0.608]);
adagio.push([77, 67.385, 0.583]);
adagio.push([50, 68.308, 0.454]);
adagio.push([76, 69.002, 0.156]);
adagio.push([77, 69.213, 0.675]);
adagio.push([38, 69.231, 0.400]);
adagio.push([62, 69.231, 0.471]);
adagio.push([69, 69.231, 0.485]);
adagio.push([76, 69.938, 0.125]);
adagio.push([35, 70.154, 0.458]);
adagio.push([62, 70.154, 1.700]);
adagio.push([67, 70.154, 0.925]);
adagio.push([77, 70.154, 0.665]);
adagio.push([74, 70.854, 0.165]);
adagio.push([47, 71.077, 0.433]);
adagio.push([67, 71.079, 0.600]);
adagio.push([74, 71.731, 0.158]);
adagio.push([77, 71.936, 0.487]);
adagio.push([47, 72.000, 0.481]);
adagio.push([79, 72.463, 0.173]);
adagio.push([81, 72.675, 0.200]);
adagio.push([35, 72.923, 0.406]);
adagio.push([62, 72.923, 0.492]);
adagio.push([67, 72.923, 0.494]);
adagio.push([79, 72.935, 0.638]);
adagio.push([77, 73.610, 0.135]);
adagio.push([77, 73.811, 0.535]);
adagio.push([36, 73.846, 0.475]);
adagio.push([62, 73.846, 0.913]);
adagio.push([67, 73.846, 0.906]);
adagio.push([76, 74.358, 0.371]);
adagio.push([48, 74.769, 0.452]);
adagio.push([60, 74.769, 0.594]);
adagio.push([76, 74.800, 0.581]);
adagio.push([48, 75.692, 0.488]);
adagio.push([76, 76.415, 0.140]);
adagio.push([77, 76.600, 0.663]);
adagio.push([36, 76.615, 0.410]);
adagio.push([64, 76.615, 0.467]);
adagio.push([69, 76.615, 0.479]);
adagio.push([76, 77.317, 0.146]);
adagio.push([74, 77.529, 0.704]);
adagio.push([32, 77.538, 0.458]);
adagio.push([64, 77.538, 0.940]);
adagio.push([71, 77.538, 0.713]);
adagio.push([71, 78.252, 0.173]);
adagio.push([44, 78.461, 0.392]);
adagio.push([64, 78.479, 0.623]);
adagio.push([71, 79.138, 0.181]);
adagio.push([74, 79.354, 0.485]);
adagio.push([44, 79.385, 0.448]);
adagio.push([76, 79.861, 0.181]);
adagio.push([77, 80.052, 0.104]);
adagio.push([76, 80.246, 0.062]);
adagio.push([32, 80.308, 0.442]);
adagio.push([64, 80.308, 0.506]);
adagio.push([71, 80.308, 0.515]);
adagio.push([74, 80.313, 0.096]);
adagio.push([76, 80.390, 0.067]);
adagio.push([74, 80.479, 0.352]);
adagio.push([74, 80.998, 0.137]);
adagio.push([74, 81.192, 0.483]);
adagio.push([33, 81.231, 0.490]);
adagio.push([64, 81.231, 1.394]);
adagio.push([71, 81.231, 0.758]);
adagio.push([72, 81.688, 0.396]);
adagio.push([72, 82.148, 0.554]);
adagio.push([45, 82.154, 0.442]);
adagio.push([69, 82.154, 0.494]);
adagio.push([45, 83.077, 0.448]);
adagio.push([72, 83.736, 0.171]);
adagio.push([74, 83.969, 0.673]);
adagio.push([33, 84.000, 0.442]);
adagio.push([64, 84.000, 0.521]);
adagio.push([69, 84.000, 0.502]);
adagio.push([72, 84.692, 0.133]);
adagio.push([70, 84.892, 0.713]);
adagio.push([28, 84.923, 0.508]);
adagio.push([60, 84.923, 0.927]);
adagio.push([67, 84.923, 0.687]);
adagio.push([67, 85.610, 0.177]);
adagio.push([40, 85.846, 0.463]);
adagio.push([60, 85.850, 0.623]);
adagio.push([67, 86.521, 0.215]);
adagio.push([70, 86.760, 0.462]);
adagio.push([40, 86.769, 0.469]);
adagio.push([72, 87.252, 0.173]);
adagio.push([74, 87.448, 0.158]);
adagio.push([70, 87.683, 0.377]);
adagio.push([28, 87.692, 0.450]);
adagio.push([60, 87.692, 0.521]);
adagio.push([67, 87.692, 0.538]);
adagio.push([70, 88.379, 0.125]);
adagio.push([70, 88.586, 0.496]);
adagio.push([29, 88.615, 0.458]);
adagio.push([60, 88.615, 1.431]);
adagio.push([67, 88.615, 0.794]);
adagio.push([69, 89.092, 0.381]);
adagio.push([41, 89.538, 0.446]);
adagio.push([65, 89.538, 0.517]);
adagio.push([69, 89.538, 0.637]);
adagio.push([41, 90.461, 0.527]);
adagio.push([69, 91.156, 0.163]);
adagio.push([70, 91.373, 0.656]);
adagio.push([29, 91.385, 0.402]);
adagio.push([57, 91.385, 0.462]);
adagio.push([62, 91.385, 0.481]);
adagio.push([69, 92.085, 0.148]);
adagio.push([37, 92.308, 0.481]);
adagio.push([57, 92.308, 0.925]);
adagio.push([64, 92.308, 0.679]);
adagio.push([67, 92.310, 0.585]);
adagio.push([64, 92.986, 0.173]);
adagio.push([49, 93.231, 0.471]);
adagio.push([57, 93.233, 0.587]);
adagio.push([64, 93.869, 0.187]);
adagio.push([67, 94.108, 0.504]);
adagio.push([49, 94.154, 0.465]);
adagio.push([69, 94.631, 0.194]);
adagio.push([70, 94.831, 0.171]);
adagio.push([67, 95.065, 0.444]);
adagio.push([37, 95.077, 0.440]);
adagio.push([57, 95.077, 0.485]);
adagio.push([64, 95.077, 0.500]);
adagio.push([67, 95.761, 0.112]);
adagio.push([67, 95.994, 0.490]);
adagio.push([38, 96.000, 0.437]);
adagio.push([57, 96.000, 1.435]);
adagio.push([64, 96.000, 0.827]);
adagio.push([65, 96.502, 0.377]);
adagio.push([50, 96.923, 0.467]);
adagio.push([62, 96.923, 0.556]);
adagio.push([65, 96.969, 0.475]);
adagio.push([65, 97.827, 0.223]);
adagio.push([50, 97.846, 0.435]);
adagio.push([64, 98.054, 0.200]);
adagio.push([62, 98.290, 0.296]);
adagio.push([69, 98.744, 0.198]);
adagio.push([38, 98.769, 0.429]);
adagio.push([62, 98.769, 0.473]);
adagio.push([65, 98.769, 0.438]);
adagio.push([67, 98.950, 0.212]);
adagio.push([65, 99.208, 0.313]);
adagio.push([70, 99.665, 0.185]);
adagio.push([31, 99.692, 0.481]);
adagio.push([62, 99.692, 1.688]);
adagio.push([67, 99.692, 0.404]);
adagio.push([69, 99.871, 0.190]);
adagio.push([67, 100.096, 0.344]);
adagio.push([74, 100.608, 0.194]);
adagio.push([43, 100.615, 0.437]);
adagio.push([72, 100.813, 0.200]);
adagio.push([70, 101.050, 0.273]);
adagio.push([43, 101.538, 0.488]);
adagio.push([79, 101.548, 0.404]);
adagio.push([81, 101.979, 0.156]);
adagio.push([82, 102.158, 0.204]);
adagio.push([75, 102.429, 0.715]);
adagio.push([31, 102.461, 0.429]);
adagio.push([67, 102.461, 0.585]);
adagio.push([70, 102.461, 0.600]);
adagio.push([79, 103.158, 0.173]);
adagio.push([31, 103.385, 0.490]);
adagio.push([64, 103.385, 1.388]);
adagio.push([69, 103.385, 1.412]);
adagio.push([79, 103.406, 0.440]);
adagio.push([73, 103.881, 0.402]);
adagio.push([43, 104.308, 0.488]);
adagio.push([73, 104.354, 0.540]);
adagio.push([43, 105.231, 0.521]);
adagio.push([73, 105.992, 0.108]);
adagio.push([31, 106.154, 0.460]);
adagio.push([64, 106.154, 0.673]);
adagio.push([69, 106.154, 0.667]);
adagio.push([81, 106.183, 0.633]);
adagio.push([73, 106.842, 0.152]);
adagio.push([74, 107.056, 0.627]);
adagio.push([29, 107.077, 0.779]);
adagio.push([62, 107.077, 0.750]);
adagio.push([69, 107.077, 0.723]);
adagio.push([76, 107.711, 0.235]);
adagio.push([74, 107.975, 0.240]);
adagio.push([31, 108.000, 0.760]);
adagio.push([64, 108.000, 0.792]);
adagio.push([70, 108.000, 0.773]);
adagio.push([73, 108.221, 0.210]);
adagio.push([74, 108.475, 0.194]);
adagio.push([76, 108.681, 0.183]);
adagio.push([77, 108.902, 0.198]);
adagio.push([33, 108.923, 0.537]);
adagio.push([62, 108.923, 0.800]);
adagio.push([69, 108.923, 0.769]);
adagio.push([76, 109.108, 0.156]);
adagio.push([77, 109.279, 0.135]);
adagio.push([76, 109.442, 0.090]);
adagio.push([77, 109.558, 0.062]);
adagio.push([76, 109.650, 0.044]);
adagio.push([77, 109.713, 0.052]);
adagio.push([76, 109.783, 0.054]);
adagio.push([77, 109.840, 0.054]);
adagio.push([33, 109.846, 0.487]);
adagio.push([61, 109.846, 0.675]);
adagio.push([67, 109.846, 0.698]);
adagio.push([76, 109.898, 0.456]);
adagio.push([74, 110.421, 0.296]);
adagio.push([26, 110.769, 0.573]);
adagio.push([62, 110.769, 1.508]);
adagio.push([65, 110.769, 1.500]);
adagio.push([74, 110.786, 1.367]);
adagio.push([38, 111.692, 0.444]);
adagio.push([38, 112.615, 0.462]);
adagio.push([74, 113.304, 0.171]);
adagio.push([76, 113.515, 0.688]);
adagio.push([26, 113.538, 0.423]);
adagio.push([62, 113.538, 0.475]);
adagio.push([69, 113.538, 0.475]);
adagio.push([77, 114.229, 0.129]);
adagio.push([71, 114.442, 0.721]);
adagio.push([31, 114.461, 0.513]);
adagio.push([62, 114.461, 1.442]);
adagio.push([67, 114.461, 1.413]);
adagio.push([77, 115.204, 0.121]);
adagio.push([43, 115.384, 0.456]);
adagio.push([71, 115.398, 0.679]);
adagio.push([77, 116.092, 0.129]);
adagio.push([43, 116.308, 0.498]);
adagio.push([67, 116.308, 0.673]);
adagio.push([77, 116.965, 0.125]);
adagio.push([76, 117.158, 0.685]);
adagio.push([31, 117.231, 0.419]);
adagio.push([62, 117.231, 0.515]);
adagio.push([67, 117.231, 0.502]);
adagio.push([74, 117.902, 0.163]);
adagio.push([76, 118.106, 1.385]);
adagio.push([36, 118.154, 0.519]);
adagio.push([60, 118.154, 1.658]);
adagio.push([67, 118.154, 1.640]);
adagio.push([48, 119.077, 0.442]);
adagio.push([74, 119.519, 0.412]);
adagio.push([72, 119.971, 0.640]);
adagio.push([48, 120.000, 0.494]);
adagio.push([71, 120.650, 0.158]);
adagio.push([69, 120.861, 0.731]);
adagio.push([36, 120.923, 0.508]);
adagio.push([60, 120.923, 0.556]);
adagio.push([64, 120.923, 0.552]);
adagio.push([67, 121.596, 0.142]);
adagio.push([66, 121.808, 0.715]);
adagio.push([36, 121.846, 0.577]);
adagio.push([57, 121.846, 1.531]);
adagio.push([62, 121.846, 1.542]);
adagio.push([74, 122.546, 0.133]);
adagio.push([66, 122.738, 0.694]);
adagio.push([48, 122.769, 0.613]);
adagio.push([74, 123.448, 0.135]);
adagio.push([68, 123.636, 0.712]);
adagio.push([47, 123.692, 0.563]);
adagio.push([74, 124.354, 0.129]);
adagio.push([72, 124.546, 0.721]);
adagio.push([40, 124.615, 0.519]);
adagio.push([56, 124.615, 0.479]);
adagio.push([64, 124.615, 0.452]);
adagio.push([71, 125.309, 0.129]);
adagio.push([72, 125.511, 1.506]);
adagio.push([33, 125.538, 0.519]);
adagio.push([57, 125.538, 1.679]);
adagio.push([64, 125.538, 1.667]);
adagio.push([45, 126.461, 0.433]);
adagio.push([45, 127.384, 0.440]);
adagio.push([81, 128.036, 0.148]);
adagio.push([79, 128.233, 0.725]);
adagio.push([33, 128.308, 0.438]);
adagio.push([64, 128.308, 0.425]);
adagio.push([72, 128.308, 0.437]);
adagio.push([81, 129.023, 0.100]);
adagio.push([82, 129.196, 0.715]);
adagio.push([26, 129.231, 0.481]);
adagio.push([65, 129.231, 1.138]);
adagio.push([74, 129.231, 0.929]);
adagio.push([77, 129.940, 0.154]);
adagio.push([38, 130.154, 0.433]);
adagio.push([74, 130.159, 0.644]);
adagio.push([77, 130.813, 0.156]);
adagio.push([70, 131.042, 0.704]);
adagio.push([38, 131.077, 0.438]);
adagio.push([77, 131.746, 0.110]);
adagio.push([82, 131.950, 0.623]);
adagio.push([26, 132.000, 0.408]);
adagio.push([62, 132.000, 0.563]);
adagio.push([65, 132.000, 0.537]);
adagio.push([69, 132.636, 0.202]);
adagio.push([68, 132.909, 0.208]);
adagio.push([26, 132.923, 0.660]);
adagio.push([59, 132.923, 0.596]);
adagio.push([64, 132.923, 0.465]);
adagio.push([66, 133.142, 0.221]);
adagio.push([64, 133.388, 0.354]);
adagio.push([38, 133.846, 0.523]);
adagio.push([54, 133.846, 0.485]);
adagio.push([69, 133.854, 0.181]);
adagio.push([68, 134.052, 0.156]);
adagio.push([66, 134.261, 0.265]);
adagio.push([71, 134.746, 0.200]);
adagio.push([38, 134.769, 0.592]);
adagio.push([56, 134.769, 0.562]);
adagio.push([69, 134.959, 0.200]);
adagio.push([68, 135.190, 0.296]);
adagio.push([72, 135.663, 0.279]);
adagio.push([36, 135.692, 0.710]);
adagio.push([57, 135.692, 0.817]);
adagio.push([64, 135.692, 0.388]);
adagio.push([71, 135.938, 0.163]);
adagio.push([69, 136.144, 0.323]);
adagio.push([66, 136.154, 0.350]);
adagio.push([74, 136.596, 0.673]);
adagio.push([35, 136.615, 0.690]);
adagio.push([59, 136.615, 0.794]);
adagio.push([68, 136.615, 0.740]);
adagio.push([76, 137.300, 0.133]);
adagio.push([72, 137.511, 0.673]);
adagio.push([33, 137.538, 0.637]);
adagio.push([60, 137.538, 0.679]);
adagio.push([69, 137.538, 0.715]);
adagio.push([71, 138.219, 0.175]);
adagio.push([62, 138.231, 0.148]);
adagio.push([72, 138.436, 0.244]);
adagio.push([40, 138.461, 0.642]);
adagio.push([64, 138.461, 0.821]);
adagio.push([69, 138.461, 0.737]);
adagio.push([71, 138.690, 0.160]);
adagio.push([72, 138.863, 0.137]);
adagio.push([71, 139.021, 0.092]);
adagio.push([72, 139.148, 0.038]);
adagio.push([71, 139.215, 0.050]);
adagio.push([72, 139.281, 0.056]);
adagio.push([71, 139.352, 0.471]);
adagio.push([28, 139.384, 0.506]);
adagio.push([62, 139.384, 0.612]);
adagio.push([68, 139.384, 0.621]);
adagio.push([69, 139.834, 0.375]);
adagio.push([69, 140.300, 0.008]);
adagio.push([33, 140.308, 1.183]);
adagio.push([60, 140.308, 1.454]);
adagio.push([69, 140.308, 1.454]);
adagio.push([45, 142.154, 0.650]);
adagio.push([81, 142.821, 0.165]);
adagio.push([79, 143.034, 0.679]);
adagio.push([33, 143.077, 0.471]);
adagio.push([64, 143.077, 0.437]);
adagio.push([72, 143.077, 0.438]);
adagio.push([81, 143.767, 0.129]);
adagio.push([82, 143.965, 0.696]);
adagio.push([26, 144.000, 0.631]);
adagio.push([65, 144.000, 0.860]);
adagio.push([74, 144.000, 0.837]);
adagio.push([77, 144.704, 0.129]);
adagio.push([74, 144.911, 0.633]);
adagio.push([38, 144.923, 0.525]);
adagio.push([77, 145.577, 0.150]);
adagio.push([70, 145.794, 0.712]);
adagio.push([38, 145.846, 0.562]);
adagio.push([77, 146.500, 0.127]);
adagio.push([82, 146.721, 0.625]);
adagio.push([26, 146.769, 0.581]);
adagio.push([62, 146.769, 0.512]);
adagio.push([65, 146.769, 0.502]);
adagio.push([69, 147.383, 0.275]);
adagio.push([26, 147.692, 0.665]);
adagio.push([59, 147.692, 0.656]);
adagio.push([64, 147.692, 0.488]);
adagio.push([68, 147.723, 0.221]);
adagio.push([66, 147.956, 0.160]);
adagio.push([64, 148.181, 0.263]);
adagio.push([38, 148.615, 0.531]);
adagio.push([54, 148.615, 0.623]);
adagio.push([69, 148.627, 0.200]);
adagio.push([68, 148.829, 0.171]);
adagio.push([66, 149.033, 0.267]);
adagio.push([71, 149.488, 0.202]);
adagio.push([38, 149.538, 0.690]);
adagio.push([56, 149.538, 0.560]);
adagio.push([69, 149.696, 0.219]);
adagio.push([68, 149.934, 0.267]);
adagio.push([72, 150.444, 0.275]);
adagio.push([36, 150.461, 0.581]);
adagio.push([57, 150.461, 0.798]);
adagio.push([64, 150.461, 0.415]);
adagio.push([71, 150.719, 0.160]);
adagio.push([69, 150.890, 0.260]);
adagio.push([66, 150.923, 0.281]);
adagio.push([74, 151.329, 0.671]);
adagio.push([35, 151.384, 0.602]);
adagio.push([59, 151.384, 0.656]);
adagio.push([68, 151.384, 0.579]);
adagio.push([76, 152.042, 0.137]);
adagio.push([72, 152.250, 0.619]);
adagio.push([33, 152.308, 0.496]);
adagio.push([60, 152.308, 0.712]);
adagio.push([69, 152.308, 0.683]);
adagio.push([62, 152.938, 0.135]);
adagio.push([71, 152.952, 0.179]);
adagio.push([72, 153.181, 0.248]);
adagio.push([40, 153.231, 0.598]);
adagio.push([64, 153.231, 0.825]);
adagio.push([69, 153.231, 0.775]);
adagio.push([71, 153.433, 0.183]);
adagio.push([72, 153.621, 0.150]);
adagio.push([71, 153.786, 0.104]);
adagio.push([72, 153.921, 0.077]);
adagio.push([71, 154.023, 0.060]);
adagio.push([72, 154.100, 0.052]);
adagio.push([28, 154.154, 0.442]);
adagio.push([62, 154.154, 0.488]);
adagio.push([68, 154.154, 0.500]);
adagio.push([71, 154.163, 0.063]);
adagio.push([72, 154.231, 0.067]);
adagio.push([71, 154.300, 0.369]);
adagio.push([69, 154.688, 0.225]);
adagio.push([33, 155.077, 1.858]);
adagio.push([60, 155.077, 1.958]);
adagio.push([69, 155.077, 0.046]);
adagio.push([69, 155.123, 2.254]);
adagio.push([71, 157.371, 0.385]);
adagio.push([72, 157.769, 0.223]);
adagio.push([71, 158.008, 0.119]);
adagio.push([72, 158.134, 0.085]);
adagio.push([71, 158.233, 0.071]);
adagio.push([72, 158.317, 0.071]);
adagio.push([71, 158.386, 0.075]);
adagio.push([69, 158.475, 0.075]);
adagio.push([71, 158.540, 0.077]);
adagio.push([72, 158.656, 0.187]);
adagio.push([71, 158.769, 0.046]);
adagio.push([72, 158.842, 1.317]);
adagio.push([70, 160.150, 0.446]);
adagio.push([69, 160.611, 0.373]);
adagio.push([67, 160.994, 0.392]);
adagio.push([66, 161.396, 0.475]);
adagio.push([64, 161.883, 0.458]);
adagio.push([62, 162.396, 0.487]);
adagio.push([60, 162.881, 0.454]);
adagio.push([58, 163.358, 0.456]);
adagio.push([57, 163.823, 0.473]);
adagio.push([55, 164.273, 0.465]);
adagio.push([54, 164.750, 0.448]);
adagio.push([52, 165.221, 0.458]);
adagio.push([50, 165.715, 0.481]);
adagio.push([72, 166.192, 7.294]);
adagio.push([54, 166.194, 7.315]);
adagio.push([63, 166.196, 7.277]);
adagio.push([46, 166.198, 8.663]);
adagio.push([57, 166.209, 7.156]);
adagio.push([69, 166.213, 5.438]);
adagio.push([34, 166.284, 8.819]);
adagio.push([67, 171.683, 0.790]);
adagio.push([66, 172.590, 0.852]);
adagio.push([70, 173.527, 2.325]);
adagio.push([62, 173.533, 1.846]);
adagio.push([67, 173.533, 2.125]);
adagio.push([55, 173.534, 1.358]);
adagio.push([58, 173.536, 3.644]);
adagio.push([46, 175.392, 1.692]);
adagio.push([61, 175.417, 0.017]);
adagio.push([62, 175.509, 1.473]);
adagio.push([67, 175.758, 1.144]);
adagio.push([68, 175.802, 0.340]);
adagio.push([74, 176.117, 0.112]);
adagio.push([76, 176.206, 0.808]);
adagio.push([77, 177.036, 0.085]);
adagio.push([55, 177.181, 1.860]);
adagio.push([70, 177.183, 1.846]);
adagio.push([76, 177.183, 5.496]);
adagio.push([79, 177.184, 5.485]);
adagio.push([61, 177.186, 5.533]);
adagio.push([64, 177.186, 3.737]);
adagio.push([37, 177.208, 3.608]);
adagio.push([69, 179.088, 0.867]);
adagio.push([57, 179.094, 5.506]);
adagio.push([67, 179.986, 0.879]);
adagio.push([29, 180.842, 1.858]);
adagio.push([69, 180.925, 3.635]);
adagio.push([65, 181.540, 3.069]);
adagio.push([41, 182.723, 1.887]);
adagio.push([77, 182.729, 3.733]);
adagio.push([74, 182.734, 0.946]);
adagio.push([62, 182.738, 3.765]);
adagio.push([72, 183.707, 0.927]);
adagio.push([56, 184.613, 5.490]);
adagio.push([59, 184.619, 3.646]);
adagio.push([74, 184.640, 1.969]);
adagio.push([32, 184.642, 3.588]);
adagio.push([71, 184.642, 1.787]);
adagio.push([76, 186.473, 5.456]);
adagio.push([64, 186.484, 5.369]);
adagio.push([71, 186.606, 3.546]);
adagio.push([74, 187.369, 2.763]);
adagio.push([36, 188.275, 1.813]);
adagio.push([60, 188.302, 3.704]);
adagio.push([48, 190.132, 1.808]);
adagio.push([47, 190.144, 0.017]);
adagio.push([57, 190.150, 3.648]);
adagio.push([72, 190.152, 3.627]);
adagio.push([69, 190.163, 0.865]);
adagio.push([67, 191.096, 0.662]);
adagio.push([39, 191.963, 3.681]);
adagio.push([78, 191.981, 5.498]);
adagio.push([66, 191.998, 2.635]);
adagio.push([63, 192.002, 5.527]);
adagio.push([54, 192.025, 3.540]);
adagio.push([71, 193.842, 0.879]);
adagio.push([59, 193.850, 5.521]);
adagio.push([69, 194.754, 0.821]);
adagio.push([71, 195.611, 2.529]);
adagio.push([67, 195.623, 5.508]);
adagio.push([55, 195.627, 3.775]);
adagio.push([31, 195.654, 1.790]);
adagio.push([43, 197.477, 1.833]);
adagio.push([76, 197.556, 4.269]);
adagio.push([64, 197.563, 4.410]);
adagio.push([71, 198.440, 0.940]);
adagio.push([45, 199.338, 3.654]);
adagio.push([72, 199.382, 4.360]);
adagio.push([69, 199.392, 5.460]);
adagio.push([60, 199.406, 3.577]);
adagio.push([65, 201.267, 3.588]);
adagio.push([76, 202.109, 0.844]);
adagio.push([74, 202.988, 5.363]);
adagio.push([47, 203.006, 3.775]);
adagio.push([62, 203.013, 5.490]);
adagio.push([72, 203.904, 0.933]);
adagio.push([67, 204.863, 0.937]);
adagio.push([71, 204.865, 1.890]);
adagio.push([69, 205.811, 0.927]);
adagio.push([65, 205.817, 1.612]);
adagio.push([40, 206.711, 3.621]);
adagio.push([59, 206.738, 1.785]);
adagio.push([55, 206.744, 3.708]);
adagio.push([67, 206.748, 1.742]);
adagio.push([65, 207.640, 0.852]);
adagio.push([64, 208.515, 0.954]);
adagio.push([60, 208.523, 6.377]);
adagio.push([72, 208.525, 9.363]);
adagio.push([62, 209.484, 0.917]);
adagio.push([67, 210.421, 1.815]);
adagio.push([64, 210.423, 1.896]);
adagio.push([56, 210.429, 6.492]);
adagio.push([36, 211.304, 0.998]);
adagio.push([41, 212.300, 1.854]);
adagio.push([65, 212.325, 1.785]);
adagio.push([47, 213.198, 0.925]);
adagio.push([64, 214.138, 0.879]);
adagio.push([48, 214.142, 3.771]);
adagio.push([36, 214.177, 7.402]);
adagio.push([60, 215.029, 2.781]);
adagio.push([65, 215.934, 4.219]);
adagio.push([55, 216.921, 0.987]);
adagio.push([56, 217.871, 3.610]);
adagio.push([50, 217.888, 3.502]);
adagio.push([53, 217.890, 3.602]);
adagio.push([71, 217.894, 3.569]);
adagio.push([62, 217.902, 3.537]);
adagio.push([68, 220.154, 0.437]);
adagio.push([67, 220.648, 0.423]);
adagio.push([65, 221.100, 0.388]);
adagio.push([72, 221.515, 7.427]);
adagio.push([64, 221.519, 7.425]);
adagio.push([55, 221.521, 7.433]);
adagio.push([60, 221.527, 7.425]);
adagio.push([52, 221.531, 7.417]);
adagio.push([48, 221.536, 7.406]);
adagio.push([24, 221.594, 7.331]);