{ "metadata": { "name": "", "signature": "sha256:26395eb934ae63f36b097fd8eb91dae7f5397b03ac8b9f07771eb9053155c424" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "code", "collapsed": false, "input": [ "from abjad import *\n", "%load_ext abjad.ext.ipython" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, { "cell_type": "code", "collapsed": false, "input": [ "from abjad.demos import desordre" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 2 }, { "cell_type": "code", "collapsed": false, "input": [ "pitches = [1,2,3]\n", "notes = scoretools.make_notes(pitches, [(1, 8)])\n", "beam = Beam()\n", "attach(beam, notes)\n", "slur = Slur()\n", "attach(slur, notes)\n", "dynamic = Dynamic('f')\n", "attach(dynamic, notes[0])\n", "dynamic = Dynamic('p')\n", "attach(dynamic, notes[1])" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 3 }, { "cell_type": "code", "collapsed": false, "input": [ "voice_lower = Voice(notes)\n", "voice_lower.name = 'rh_lower'\n", "command = indicatortools.LilyPondCommand('voiceTwo')\n", "attach(command, voice_lower)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 4 }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "n = int(math.ceil(len(pitches) / 2.))\n", "chord = Chord([pitches[0], pitches[0] + 12], (n, 8))\n", "articulation = Articulation('>')\n", "attach(articulation, chord)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 5 }, { "cell_type": "code", "collapsed": false, "input": [ "voice_higher = Voice([chord])\n", "voice_higher.name = 'rh_higher'\n", "command = indicatortools.LilyPondCommand('voiceOne')\n", "attach(command, voice_higher)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 6 }, { "cell_type": "code", "collapsed": false, "input": [ "container = Container([voice_lower, voice_higher])\n", "container.is_simultaneous = True" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 7 }, { "cell_type": "code", "collapsed": false, "input": [ "cell = Staff([container])\n", "show(cell)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\ncHQgOS4xNJ2zXFgAAAAASUVORK5CYII=\n" } ], "prompt_number": 8 }, { "cell_type": "code", "collapsed": false, "input": [ "def make_desordre_cell(pitches):\n", " '''The function constructs and returns a *D\u00e9sordre cell*.\n", " `pitches` is a list of numbers or, more generally, pitch tokens.\n", " '''\n", "\n", " notes = [scoretools.Note(pitch, (1, 8)) for pitch in pitches]\n", " beam = spannertools.Beam()\n", " attach(beam, notes)\n", " slur = spannertools.Slur()\n", " attach(slur, notes)\n", " clef = indicatortools.Dynamic('f')\n", " attach(clef, notes[0])\n", " dynamic = indicatortools.Dynamic('p')\n", " attach(dynamic, notes[1])\n", "\n", " # make the lower voice\n", " lower_voice = scoretools.Voice(notes)\n", " lower_voice.name = 'RH Lower Voice'\n", " command = indicatortools.LilyPondCommand('voiceTwo')\n", " attach(command, lower_voice)\n", " n = int(math.ceil(len(pitches) / 2.))\n", " chord = scoretools.Chord([pitches[0], pitches[0] + 12], (n, 8))\n", " articulation = indicatortools.Articulation('>')\n", " attach(articulation, chord)\n", "\n", " # make the upper voice\n", " upper_voice = scoretools.Voice([chord])\n", " upper_voice.name = 'RH Upper Voice'\n", " command = indicatortools.LilyPondCommand('voiceOne')\n", " attach(command, upper_voice)\n", "\n", " # combine them together\n", " container = scoretools.Container([lower_voice, upper_voice])\n", " container.is_simultaneous = True\n", "\n", " # make all 1/8 beats breakable\n", " for leaf in lower_voice.select_leaves()[:-1]:\n", " bar_line = indicatortools.BarLine('')\n", " attach(bar_line, leaf)\n", "\n", " return container" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 9 }, { "cell_type": "code", "collapsed": false, "input": [ "def make_desordre_measure(pitches):\n", " '''Makes a measure composed of *D\u00e9sordre cells*.\n", "\n", " `pitches` is a list of lists of number (e.g., [[1, 2, 3], [2, 3, 4]])\n", "\n", " The function returns a measure.\n", " '''\n", "\n", " for sequence in pitches:\n", " container = make_desordre_cell(sequence)\n", " time_signature = inspect_(container).get_duration()\n", " time_signature = mathtools.NonreducedFraction(time_signature)\n", " time_signature = time_signature.with_denominator(8)\n", " measure = scoretools.Measure(time_signature, [container])\n", "\n", " return measure" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 10 }, { "cell_type": "code", "collapsed": false, "input": [ "pitches = [[0, 4, 7], [0, 4, 7, 9], [4, 7, 9, 11]]\n", "measure = make_desordre_measure(pitches)\n", "staff = Staff([measure])\n", "show(staff)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "iVBORw0KGgoAAAANSUhEUgAAAIUAAABlCAAAAABG9X9iAAAABGdBTUEAALGPC/xhBQAAAAFzUkdC\nAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAJiS0dE\nAP+Hj8y/AAAACW9GRnMAAABjAAAAGgDkZzHhAAAACXBIWXMAAA+IAAAPiAEWyKWGAAAACXZwQWcA\nAANDAAAEnQBuEIPdAAAFtElEQVRo3u2bvW7rNhSAz5GZhMiNQbQIIHjJQBQo2iEcCtypgHCXTnfR\n1qXoqKnPwK0PoSfRkCfhy6gkJdkSSTmmyMRB0DMEtn7Ij+ePxyQD/WZRVbv95aXA9lc7TgivuytT\naGmrEnOQpFEMJIJRkQbyGSg+gEU+hnd+jEjNKFkoJPuf4pNTdOoDULS4pcHMFC0C1FenoABArk1R\ngZF4ZeSlIABYVfS6FK2GaHsJ0RNUVooaoNGTFFRXpRBgW4PyyhRaFdou0Y6RmcL8bSA6q+elwIEF\n35+iYkehYP4iFCxCvpBCS8wbgSbmupDmiw4U4cO2hAvG/etK2EQXrb2lKhc+oED1SmeuNvggUH+6\nVRQGSapAlxQ9aXoOQ7g6ol0WVeNdFiMEbKkH1ii40PYAGXhQu2wb8EEyQhQpEC5FTTDoFaa7JlR6\njBA3+5wUXdj65rm6wYCpSgvB/mF9imiKWaTutSbgPhRLxY5p5fvxuNdhuqOMpkUqXejCjKwJwdal\ndcTVESdmrYVF+Jqzd0y9G4UJD05ChRZtpJSakUr51hSm8OW9COTHvhJamK5IhQjnhXiKTjDGp8Zm\nFNSGR7Oai40uVgcTSTHm/am9E4UufLEzSXwlF3e4ks82ULh5/xSpJvfYGZXQL6FQNVMW4kpEvhap\nZt7d7Y9fp4wLeydS6yECavsA9cKV2yqwISuKOq8LR/+nvD+9dbQIt+rmE6Tjo3I0hlipSM9S+PPu\n+J163kkNqolVAsYBnMlEjBfESm9nKfx5d9TE8fuRAkz5T4B2enbvzHud25CJKybCHTkUizD09K87\nM/flQtUThdTxgfrVUvj1lg0QFDVdKSMWFK4buPr3VyuOFEwPXtqurdaZkxvaoaXgJONQeG5w4+g/\nSDFE6s4UvkDYWALfASxCbbcb9Hr7eqS6Ych2aOfdmYD7+ilStZ1Ko4DOetGy7jD66UxKwdczuOcG\nwnOmVYv0KIzeK/PJ+M1y/kRrCl3nrGTPGYX03CCGQphh1iZRsMpcrxavDZ2LSygK1w1iKHpq6NvK\nlMDaNkvVcz5SBCzy7702+8Opxb0ThnEUio5K1E5QO9GgqGmpRfSC5OV+MEBILVsoesVQmOhqaIlu\nraNMJFHuLa+84OgGfydSVKeIuR3b3IVm1aBMEPCwPr0S4l5xI3X5O1WPWZd2dcTCwQRx+lW0RRfB\nFejLKaaJCl+yUTR8tHsExWCR4gSRSmHGhV0kxU86TG+/zS+lUSiYyoo2gsLrIJFCHinqy5egs1MM\n7i77Y6J8Gwolnw/kDEUJlDVWKZcv/cZQ2P53xTLTehQd2gzeot9yIsUvs/5X1lxOXC1BLsrwIspG\nCjt+RJhLUZAfz1D0quYsbr98nUK54x/6Z08y2EHS7l2IYh/Xf3YKO/4CX+/f3yHMQhGnf1l4VxMp\nIu1v5CvxC7Ykij1G2t/UUneBOj6J4jamfyt/FI+hy0kUh4j+jdQF/hm8kUTx/eL+Bz3gbyu33usU\nSPeM+Ovq3XehaJ93UDyf2TdIPKN0yTNPCPh43nBpFF9vDs2Z213zdKPryMdXYVMt8p0WT4El4VbW\nB6qTefHD75foK90vup+JVjnZHya5JXYuwbuDvLSNTN7ZVocHMgo9HP6ScVtYn+i81kehmKVQ80lF\n7inmoFACCRHD5xqBmyUwFsWRgUJRXTKXw8pii2bntZQIl/+qyUNBAVQ1LjCzprPLeyxu0zudwm6o\ntcPitK7AK/sLD+KOT6RTzDeC205rhtgN8agDLYkU0/KmnC4MBuHrq9VvogtZam+cTSSVWYevIc45\n0y1Clz1SQGr2D+IaSaVQy62C1jhJFzmLpFM0sNiPFtsOhKRSiGU0kPgDTjko6Oz0obCbIzQqOrJQ\nqNU9k3ej0E7YQNSyyxtQCO0RYsuh1KwUTKuBYJZT+gkUJZEcN5wSzkuhOONZ/mOi7/8DjpKRfw+k\n51sAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTQtMTItMDJUMDk6NDM6NDYrMDA6MDCLSi2yAAAAJXRF\nWHRkYXRlOm1vZGlmeQAyMDE0LTEyLTAyVDA5OjQzOjQ2KzAwOjAw+heVDgAAAB10RVh0U29mdHdh\ncmUAR1BMIEdob3N0c2NyaXB0IDkuMTSds1xYAAAAAElFTkSuQmCC\n" } ], "prompt_number": 11 }, { "cell_type": "code", "collapsed": false, "input": [ "def make_desordre_staff(pitches):\n", " r'''Makes D\u00e9sordre staff.\n", " '''\n", "\n", " staff = scoretools.Staff()\n", " for sequence in pitches:\n", " measure = make_desordre_measure(sequence)\n", " staff.append(measure)\n", " return staff" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 12 }, { "cell_type": "code", "collapsed": false, "input": [ "pitches = [[[-1, 4, 5], [-1, 4, 5, 7, 9]], [[0, 7, 9], [-1, 4, 5, 7, 9]]]\n", "staff = make_desordre_staff(pitches)\n", "show(staff)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\n" } ], "prompt_number": 13 }, { "cell_type": "code", "collapsed": false, "input": [ "def make_desordre_score(pitches):\n", " '''Returns a complete piano staff with Ligeti music.\n", " '''\n", "\n", " assert len(pitches) == 2\n", " piano = instrumenttools.Piano([])\n", " staff_group = StaffGroup(context_name='PianoStaff', name='Piano')\n", " attach(piano, staff_group)\n", "\n", " # build the music\n", " for hand in pitches:\n", " staff = make_desordre_staff(hand)\n", " staff_group.append(staff)\n", "\n", " # set clef and key signature to left hand staff\n", " clef = indicatortools.Clef('bass')\n", " attach(clef, staff_group[1])\n", " key_signature = KeySignature('b', 'major')\n", " attach(key_signature, staff_group[1])\n", "\n", " # wrap the piano staff in a score\n", " score = scoretools.Score([staff_group])\n", "\n", " return score" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 14 }, { "cell_type": "code", "collapsed": false, "input": [ "top = [\n", " [[-1, 4, 5], [-1, 4, 5, 7, 9]],\n", " [[0, 7, 9], [-1, 4, 5, 7, 9]],\n", " [[2, 4, 5, 7, 9], [0, 5, 7]],\n", " [[-3, -1, 0, 2, 4, 5, 7]],\n", " [[-3, 2, 4], [-3, 2, 4, 5, 7]],\n", " [[2, 5, 7], [-3, 9, 11, 12, 14]],\n", " [[4, 5, 7, 9, 11], [2, 4, 5]],\n", " [[-5, 4, 5, 7, 9, 11, 12]],\n", " [[2, 9, 11], [2, 9, 11, 12, 14]],\n", " ]" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 15 }, { "cell_type": "code", "collapsed": false, "input": [ "bottom = [\n", " [[-9, -4, -2], [-9, -4, -2, 1, 3]],\n", " [[-6, -2, 1], [-9, -4, -2, 1, 3]],\n", " [[-4, -2, 1, 3, 6], [-4, -2, 1]],\n", " [[-9, -6, -4, -2, 1, 3, 6, 1]],\n", " [[-6, -2, 1], [-6, -2, 1, 3, -2]],\n", " [[-4, 1, 3], [-6, 3, 6, -6, -4]],\n", " [[-14, -11, -9, -6, -4], [-14, -11, -9]],\n", " [[-11, -2, 1, -6, -4, -2, 1, 3]],\n", " [[-6, 1, 3], [-6, -4, -2, 1, 3]],\n", " ]" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 16 }, { "cell_type": "code", "collapsed": false, "input": [ "score = make_desordre_score([top, bottom])" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 17 }, { "cell_type": "code", "collapsed": false, "input": [ "from abjad.tools import documentationtools\n", "lilypond_file = documentationtools.make_ligeti_example_lilypond_file(score)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 18 }, { "cell_type": "code", "collapsed": false, "input": [ "show(lilypond_file)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "display_data", "png": "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\nuiznZFxJxWqNL3jyGWC/iZna6a5Rb+aLdZE/h15IKEVmV5mDdGdf/qKe6CJsbioYgyupWKnxJU++\ny1GKzK40B+lKXHz+h/g1vljWV2qaSo0vefKVmHA5txKZXW8OYs9+fxDnywkmbr5mvZPryDVUrNb4\nsidfkSmXcyuR2ZXnIFa4YXrFoekaKlZrfNmTr8iky7mVWPQZzEH8TbAZnkpfrqHidWt8Ztrl3Epk\ndrU5SAfSeKz3offhGipet8Znpl3OrURm15qDPB+oR3STMulybikyu94c5PnwM6s44XKuHpmBNn5m\nFSdczr1uLPo8+ZlVnHA5l0pk9pz4aVWcdjmXSmT2nPhpVcQQSo2fVkUModT4aVXEEEqNn1ZFQA2o\nCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAE\nqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVA\nBKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBF\nQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJA\nRUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIi\nQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoC\nIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEq\nAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERAB\nKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQ\nASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAR\nEAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQ\nERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAI\nUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqA\nCFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICK\ngAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESA\nioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVARE\ngIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQE\nRICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJU\nBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiAC\nVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIg\nAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAi\nIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGg\nIiACVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQER\noCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAEqAiIABUB\nEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAV\nARGgIiACVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgA\nFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAEqAiI\nABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgI\niAAVARGgIiACVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASo\nCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAE\nqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVA\nBKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBF\nQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJA\nRUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIi\nQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoC\nIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEq\nAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERAB\nKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQ\nASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAR\nEAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQ\nERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAI\nUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqA\nCFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICK\ngAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESA\nioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVARE\ngIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQE\nRICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJU\nBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiAC\nVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAiIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIg\nAlQERICKgAhQERABKgIiQEVABKgIiAAVARGgIiACVAREgIqACFAREAEqAiJARUAEqAiIABUBEaAi\nIAJUBESAioAIUBEQASoCIkBFQASoCIgAFQERoCIgAlQERICKgAhQERABKgIiQEVABKgIiAAVARGg\nIiACVAREgIoGdusw5f8L17vi1jjtkoa+dxyU8tis43zH3Zod813HcZyZP5fGxySzvfjn+Ot5u0W9\nWCk/c8EDy9TGBiqaiMP4cNiHYWnjtpOKhr3LbR2Hpx1DVth23F75XBofElemGQdij3WWBVlpuwUi\no2J+Rq6lBFQ0Ee98/s9Ziux0rNO8z0oLvyVZmuSb0nKXVvo7b+ukmMcp9bKKe35IkuKn1TESfwrU\nfoz/yHjftUnK29vJMyqomJz+yfNLTkokp4oeKzAtUNFEnDksEyruHH7Q4zTeh2znskMW5oPberfZ\n79ww9hO+bb/ZxDsnDjfZer+JY2fH/B3fu/R38SEnjoNsK/98OKkokg1ZvlVsW8c8mXWSf/oQ8gTF\nfrz3Sx11AggVDz7/Q2W7Yuuwjc/i8GP+//S4IZUOFvPbuZs4SGV2hzy/Y3YHVQhZq1MFpgUqmogP\nm80uEWI4ondkccoScRy3m0MsJmr8/7xbCvf8bwe2kW44cZKka/Gjz/jnxd6lv3Oc7LDeyq0yD7VR\n7sjyrbEfx7vDNj6nvgsPWX6MsiCfusrk4o3vp+XtOX7CnGyXnP5//kF2h8X8xL8blZ3K75yd2ipq\nda7AtEBFE/Fh78aHk4rZ2vWlisfOgc8luSZ8A/83DTLRPznsII7fhvekG3HY1RE///2Qp8Xl2jOV\nBv9nc9xRbVV68lyYk39aJq0y5f3xuVfcxaL/PG2PT/CulcNFOv3//ENBRZWfyCNU2an8ztmpraJW\n5wpMC1Q0waPYo4qZGLNScehVr3hgB9krHva5LPuYiQ5HHLSt7D8yl//1rGL+94Ns6w3vwPy1yiMU\no+BxR7VVqZj3ivLTu/Wxm4qTw34vZRQqcuUOu634VW0vkLpx6m/P/z/+kBZVVPmVekWRX55deuoV\n+Z7nCkwLVDSwc9dpnOwCMXtbx+sw2uz5r/6Gj4XxRsjA/x/zueImDUO298NwwyeV/A97P966O6WJ\nvyn9nZOsxZHmB3kr8wjdOPZDuSNPWW7lOcaH4zRNfVrk5IiNscNhKT814jVXK13vd5uM/6q2l4q/\nTg8yuD7+X/3A9xUZFfM7hMW5osjvSWYncsnnirJWeQUmBiq2UAyVD6dgsxAq874pOS7UZXJrOYo+\n/Z3/MREJbDM9l8rWpObnY3Hk9qz0a3mfrPj//Ie0lKjML2SpMbvS1mIFpwQqDoVHNbu1/d/dzc6w\nk3nrdKj8Ejl+D63gWEDFwWQs6/D31NyRdVo+H47KL2FsjAqOxP8HKyDPdJFNsM4AAAAldEVYdGRh\ndGU6Y3JlYXRlADIwMTQtMTItMDJUMDk6NDM6NTErMDA6MDCCRxOiAAAAJXRFWHRkYXRlOm1vZGlm\neQAyMDE0LTEyLTAyVDA5OjQzOjUxKzAwOjAw8xqrHgAAAB10RVh0U29mdHdhcmUAR1BMIEdob3N0\nc2NyaXB0IDkuMTSds1xYAAAAAElFTkSuQmCC\n" } ], "prompt_number": 19 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }