⌈⌋ ⎇ branch:  Bitrhythm


Hex Artifact Content

Artifact 55615909709d0be7d403f45eb8f2383d019d771a2364b725b4a892ecd7ca154f:


0000: 2f 2f 20 4e 6f 74 65 20 63 6f 6f 72 64 69 6e 61  // Note coordina
0010: 74 65 73 20 5b 6f 63 74 61 76 65 2c 20 66 69 66  tes [octave, fif
0020: 74 68 5d 20 72 65 6c 61 74 69 76 65 20 74 6f 20  th] relative to 
0030: 43 0a 6d 6f 64 75 6c 65 2e 65 78 70 6f 72 74 73  C.module.exports
0040: 20 3d 20 7b 0a 20 20 6e 6f 74 65 73 3a 20 7b 0a   = {.  notes: {.
0050: 20 20 20 20 63 3a 20 5b 30 2c 20 30 5d 2c 0a 20      c: [0, 0],. 
0060: 20 20 20 64 3a 20 5b 2d 31 2c 20 32 5d 2c 0a 20     d: [-1, 2],. 
0070: 20 20 20 65 3a 20 5b 2d 32 2c 20 34 5d 2c 0a 20     e: [-2, 4],. 
0080: 20 20 20 66 3a 20 5b 31 2c 20 2d 31 5d 2c 0a 20     f: [1, -1],. 
0090: 20 20 20 67 3a 20 5b 30 2c 20 31 5d 2c 0a 20 20     g: [0, 1],.  
00a0: 20 20 61 3a 20 5b 2d 31 2c 20 33 5d 2c 0a 20 20    a: [-1, 3],.  
00b0: 20 20 62 3a 20 5b 2d 32 2c 20 35 5d 2c 0a 20 20    b: [-2, 5],.  
00c0: 20 20 68 3a 20 5b 2d 32 2c 20 35 5d 0a 20 20 7d    h: [-2, 5].  }
00d0: 2c 0a 0a 20 20 69 6e 74 65 72 76 61 6c 73 3a 20  ,..  intervals: 
00e0: 7b 0a 20 20 20 20 75 6e 69 73 6f 6e 3a 20 5b 30  {.    unison: [0
00f0: 2c 20 30 5d 2c 0a 20 20 20 20 73 65 63 6f 6e 64  , 0],.    second
0100: 3a 20 5b 33 2c 20 2d 35 5d 2c 0a 20 20 20 20 74  : [3, -5],.    t
0110: 68 69 72 64 3a 20 5b 32 2c 20 2d 33 5d 2c 0a 20  hird: [2, -3],. 
0120: 20 20 20 66 6f 75 72 74 68 3a 20 5b 31 2c 20 2d     fourth: [1, -
0130: 31 5d 2c 0a 20 20 20 20 66 69 66 74 68 3a 20 5b  1],.    fifth: [
0140: 30 2c 20 31 5d 2c 0a 20 20 20 20 73 69 78 74 68  0, 1],.    sixth
0150: 3a 20 5b 33 2c 20 2d 34 5d 2c 0a 20 20 20 20 73  : [3, -4],.    s
0160: 65 76 65 6e 74 68 3a 20 5b 32 2c 20 2d 32 5d 2c  eventh: [2, -2],
0170: 0a 20 20 20 20 6f 63 74 61 76 65 3a 20 5b 31 2c  .    octave: [1,
0180: 20 30 5d 0a 20 20 7d 2c 0a 0a 20 20 69 6e 74 65   0].  },..  inte
0190: 72 76 61 6c 46 72 6f 6d 46 69 66 74 68 3a 20 5b  rvalFromFifth: [
01a0: 27 73 65 63 6f 6e 64 27 2c 20 27 73 69 78 74 68  'second', 'sixth
01b0: 27 2c 20 27 74 68 69 72 64 27 2c 20 27 73 65 76  ', 'third', 'sev
01c0: 65 6e 74 68 27 2c 20 27 66 6f 75 72 74 68 27 2c  enth', 'fourth',
01d0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
01e0: 20 20 20 20 20 20 20 20 20 20 27 75 6e 69 73 6f            'uniso
01f0: 6e 27 2c 20 27 66 69 66 74 68 27 5d 2c 0a 0a 20  n', 'fifth'],.. 
0200: 20 69 6e 74 65 72 76 61 6c 73 49 6e 64 65 78 3a   intervalsIndex:
0210: 20 5b 27 75 6e 69 73 6f 6e 27 2c 20 27 73 65 63   ['unison', 'sec
0220: 6f 6e 64 27 2c 20 27 74 68 69 72 64 27 2c 20 27  ond', 'third', '
0230: 66 6f 75 72 74 68 27 2c 20 27 66 69 66 74 68 27  fourth', 'fifth'
0240: 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  ,.              
0250: 20 20 20 20 20 20 20 20 27 73 69 78 74 68 27 2c          'sixth',
0260: 20 27 73 65 76 65 6e 74 68 27 2c 20 27 6f 63 74   'seventh', 'oct
0270: 61 76 65 27 2c 20 27 6e 69 6e 74 68 27 2c 20 27  ave', 'ninth', '
0280: 74 65 6e 74 68 27 2c 0a 20 20 20 20 20 20 20 20  tenth',.        
0290: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 65                'e
02a0: 6c 65 76 65 6e 74 68 27 2c 20 27 74 77 65 6c 66  leventh', 'twelf
02b0: 74 68 27 2c 20 27 74 68 69 72 74 65 65 6e 74 68  th', 'thirteenth
02c0: 27 2c 20 27 66 6f 75 72 74 65 65 6e 74 68 27 2c  ', 'fourteenth',
02d0: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
02e0: 20 20 20 20 20 20 20 27 66 69 66 74 65 65 6e 74         'fifteent
02f0: 68 27 5d 2c 0a 0a 2f 2f 20 6c 69 6e 65 61 72 20  h'],..// linear 
0300: 69 6e 64 65 78 20 74 6f 20 66 69 66 74 68 20 3d  index to fifth =
0310: 20 28 32 20 2a 20 69 6e 64 65 78 20 2b 20 31 29   (2 * index + 1)
0320: 20 25 20 37 0a 20 20 66 69 66 74 68 73 3a 20 5b   % 7.  fifths: [
0330: 27 66 27 2c 20 27 63 27 2c 20 27 67 27 2c 20 27  'f', 'c', 'g', '
0340: 64 27 2c 20 27 61 27 2c 20 27 65 27 2c 20 27 62  d', 'a', 'e', 'b
0350: 27 5d 2c 0a 20 20 61 63 63 69 64 65 6e 74 61 6c  '],.  accidental
0360: 73 3a 20 5b 27 62 62 27 2c 20 27 62 27 2c 20 27  s: ['bb', 'b', '
0370: 27 2c 20 27 23 27 2c 20 27 78 27 5d 2c 0a 0a 20  ', '#', 'x'],.. 
0380: 20 73 68 61 72 70 3a 20 5b 2d 34 2c 20 37 5d 2c   sharp: [-4, 7],
0390: 0a 20 20 41 34 3a 20 5b 33 2c 20 33 5d 2c 0a 0a  .  A4: [3, 3],..
03a0: 20 20 64 75 72 61 74 69 6f 6e 73 3a 20 7b 0a 20    durations: {. 
03b0: 20 20 20 27 30 2e 32 35 27 3a 20 27 6c 6f 6e 67     '0.25': 'long
03c0: 61 27 2c 0a 20 20 20 20 27 30 2e 35 27 3a 20 27  a',.    '0.5': '
03d0: 62 72 65 76 65 27 2c 0a 20 20 20 20 27 31 27 3a  breve',.    '1':
03e0: 20 27 77 68 6f 6c 65 27 2c 0a 20 20 20 20 27 32   'whole',.    '2
03f0: 27 3a 20 27 68 61 6c 66 27 2c 0a 20 20 20 20 27  ': 'half',.    '
0400: 34 27 3a 20 27 71 75 61 72 74 65 72 27 2c 0a 20  4': 'quarter',. 
0410: 20 20 20 27 38 27 3a 20 27 65 69 67 68 74 68 27     '8': 'eighth'
0420: 2c 0a 20 20 20 20 27 31 36 27 3a 20 27 73 69 78  ,.    '16': 'six
0430: 74 65 65 6e 74 68 27 2c 0a 20 20 20 20 27 33 32  teenth',.    '32
0440: 27 3a 20 27 74 68 69 72 74 79 2d 73 65 63 6f 6e  ': 'thirty-secon
0450: 64 27 2c 0a 20 20 20 20 27 36 34 27 3a 20 27 73  d',.    '64': 's
0460: 69 78 74 79 2d 66 6f 75 72 74 68 27 2c 0a 20 20  ixty-fourth',.  
0470: 20 20 27 31 32 38 27 3a 20 27 68 75 6e 64 72 65    '128': 'hundre
0480: 64 2d 74 77 65 6e 74 79 2d 65 69 67 68 74 68 27  d-twenty-eighth'
0490: 0a 20 20 7d 2c 0a 0a 20 20 71 75 61 6c 69 74 79  .  },..  quality
04a0: 4c 6f 6e 67 3a 20 7b 0a 20 20 20 20 50 3a 20 27  Long: {.    P: '
04b0: 70 65 72 66 65 63 74 27 2c 0a 20 20 20 20 4d 3a  perfect',.    M:
04c0: 20 27 6d 61 6a 6f 72 27 2c 0a 20 20 20 20 6d 3a   'major',.    m:
04d0: 20 27 6d 69 6e 6f 72 27 2c 0a 20 20 20 20 41 3a   'minor',.    A:
04e0: 20 27 61 75 67 6d 65 6e 74 65 64 27 2c 0a 20 20   'augmented',.  
04f0: 20 20 41 41 3a 20 27 64 6f 75 62 6c 79 20 61 75    AA: 'doubly au
0500: 67 6d 65 6e 74 65 64 27 2c 0a 20 20 20 20 64 3a  gmented',.    d:
0510: 20 27 64 69 6d 69 6e 69 73 68 65 64 27 2c 0a 20   'diminished',. 
0520: 20 20 20 64 64 3a 20 27 64 6f 75 62 6c 79 20 64     dd: 'doubly d
0530: 69 6d 69 6e 69 73 68 65 64 27 0a 20 20 7d 2c 0a  iminished'.  },.
0540: 0a 20 20 61 6c 74 65 72 61 74 69 6f 6e 73 3a 20  .  alterations: 
0550: 7b 0a 20 20 20 20 70 65 72 66 65 63 74 3a 20 5b  {.    perfect: [
0560: 27 64 64 27 2c 20 27 64 27 2c 20 27 50 27 2c 20  'dd', 'd', 'P', 
0570: 27 41 27 2c 20 27 41 41 27 5d 2c 0a 20 20 20 20  'A', 'AA'],.    
0580: 6d 69 6e 6f 72 3a 20 5b 27 64 64 27 2c 20 27 64  minor: ['dd', 'd
0590: 27 2c 20 27 6d 27 2c 20 27 4d 27 2c 20 27 41 27  ', 'm', 'M', 'A'
05a0: 2c 20 27 41 41 27 5d 0a 20 20 7d 2c 0a 0a 20 20  , 'AA'].  },..  
05b0: 73 79 6d 62 6f 6c 73 3a 20 7b 0a 20 20 20 20 27  symbols: {.    '
05c0: 6d 69 6e 27 3a 20 5b 27 6d 33 27 2c 20 27 50 35  min': ['m3', 'P5
05d0: 27 5d 2c 0a 20 20 20 20 27 6d 27 3a 20 5b 27 6d  '],.    'm': ['m
05e0: 33 27 2c 20 27 50 35 27 5d 2c 0a 20 20 20 20 27  3', 'P5'],.    '
05f0: 2d 27 3a 20 5b 27 6d 33 27 2c 20 27 50 35 27 5d  -': ['m3', 'P5']
0600: 2c 0a 0a 20 20 20 20 27 4d 27 3a 20 5b 27 4d 33  ,..    'M': ['M3
0610: 27 2c 20 27 50 35 27 5d 2c 0a 20 20 20 20 27 27  ', 'P5'],.    ''
0620: 3a 20 5b 27 4d 33 27 2c 20 27 50 35 27 5d 2c 0a  : ['M3', 'P5'],.
0630: 0a 20 20 20 20 27 2b 27 3a 20 5b 27 4d 33 27 2c  .    '+': ['M3',
0640: 20 27 41 35 27 5d 2c 0a 20 20 20 20 27 61 75 67   'A5'],.    'aug
0650: 27 3a 20 5b 27 4d 33 27 2c 20 27 41 35 27 5d 2c  ': ['M3', 'A5'],
0660: 0a 0a 20 20 20 20 27 64 69 6d 27 3a 20 5b 27 6d  ..    'dim': ['m
0670: 33 27 2c 20 27 64 35 27 5d 2c 0a 20 20 20 20 27  3', 'd5'],.    '
0680: 6f 27 3a 20 5b 27 6d 33 27 2c 20 27 64 35 27 5d  o': ['m3', 'd5']
0690: 2c 0a 0a 20 20 20 20 27 6d 61 6a 27 3a 20 5b 27  ,..    'maj': ['
06a0: 4d 33 27 2c 20 27 50 35 27 2c 20 27 4d 37 27 5d  M3', 'P5', 'M7']
06b0: 2c 0a 20 20 20 20 27 64 6f 6d 27 3a 20 5b 27 4d  ,.    'dom': ['M
06c0: 33 27 2c 20 27 50 35 27 2c 20 27 6d 37 27 5d 2c  3', 'P5', 'm7'],
06d0: 0a 20 20 20 20 27 c3 b8 27 3a 20 5b 27 6d 33 27  .    '..': ['m3'
06e0: 2c 20 27 64 35 27 2c 20 27 6d 37 27 5d 2c 0a 0a  , 'd5', 'm7'],..
06f0: 20 20 20 20 27 35 27 3a 20 5b 27 50 35 27 5d 0a      '5': ['P5'].
0700: 20 20 7d 2c 0a 0a 20 20 63 68 6f 72 64 53 68 6f    },..  chordSho
0710: 72 74 3a 20 7b 0a 20 20 20 20 27 6d 61 6a 6f 72  rt: {.    'major
0720: 27 3a 20 27 4d 27 2c 0a 20 20 20 20 27 6d 69 6e  ': 'M',.    'min
0730: 6f 72 27 3a 20 27 6d 27 2c 0a 20 20 20 20 27 61  or': 'm',.    'a
0740: 75 67 6d 65 6e 74 65 64 27 3a 20 27 61 75 67 27  ugmented': 'aug'
0750: 2c 0a 20 20 20 20 27 64 69 6d 69 6e 69 73 68 65  ,.    'diminishe
0760: 64 27 3a 20 27 64 69 6d 27 2c 0a 20 20 20 20 27  d': 'dim',.    '
0770: 68 61 6c 66 2d 64 69 6d 69 6e 69 73 68 65 64 27  half-diminished'
0780: 3a 20 27 37 62 35 27 2c 0a 20 20 20 20 27 70 6f  : '7b5',.    'po
0790: 77 65 72 27 3a 20 27 35 27 2c 0a 20 20 20 20 27  wer': '5',.    '
07a0: 64 6f 6d 69 6e 61 6e 74 27 3a 20 27 37 27 0a 20  dominant': '7'. 
07b0: 20 7d 2c 0a 0a 20 20 73 74 65 70 4e 75 6d 62 65   },..  stepNumbe
07c0: 72 3a 20 7b 0a 20 20 20 20 27 75 6e 69 73 6f 6e  r: {.    'unison
07d0: 27 3a 20 31 2c 0a 20 20 20 20 27 66 69 72 73 74  ': 1,.    'first
07e0: 27 3a 20 31 2c 0a 20 20 20 20 27 73 65 63 6f 6e  ': 1,.    'secon
07f0: 64 27 3a 20 32 2c 0a 20 20 20 20 27 74 68 69 72  d': 2,.    'thir
0800: 64 27 3a 20 33 2c 0a 20 20 20 20 27 66 6f 75 72  d': 3,.    'four
0810: 74 68 27 3a 20 34 2c 0a 20 20 20 20 27 66 69 66  th': 4,.    'fif
0820: 74 68 27 3a 20 35 2c 0a 20 20 20 20 27 73 69 78  th': 5,.    'six
0830: 74 68 27 3a 20 36 2c 0a 20 20 20 20 27 73 65 76  th': 6,.    'sev
0840: 65 6e 74 68 27 3a 20 37 2c 0a 20 20 20 20 27 6f  enth': 7,.    'o
0850: 63 74 61 76 65 27 3a 20 38 2c 0a 20 20 20 20 27  ctave': 8,.    '
0860: 6e 69 6e 74 68 27 3a 20 39 2c 0a 20 20 20 20 27  ninth': 9,.    '
0870: 65 6c 65 76 65 6e 74 68 27 3a 20 31 31 2c 0a 20  eleventh': 11,. 
0880: 20 20 20 27 74 68 69 72 74 65 65 6e 74 68 27 3a     'thirteenth':
0890: 20 31 33 0a 20 20 7d 2c 0a 0a 20 20 2f 2f 20 41   13.  },..  // A
08a0: 64 6a 75 73 74 65 64 20 53 68 65 61 72 65 72 20  djusted Shearer 
08b0: 73 79 6c 6c 61 62 6c 65 73 20 2d 20 43 68 72 6f  syllables - Chro
08c0: 6d 61 74 69 63 20 73 6f 6c 66 65 67 65 20 73 79  matic solfege sy
08d0: 73 74 65 6d 0a 20 20 2f 2f 20 53 6f 6d 65 20 69  stem.  // Some i
08e0: 6e 74 65 72 76 61 6c 73 20 61 72 65 20 6e 6f 74  ntervals are not
08f0: 20 70 72 6f 76 69 64 65 64 20 66 6f 72 2e 20 54   provided for. T
0900: 68 65 73 65 20 69 6e 63 6c 75 64 65 3a 0a 20 20  hese include:.  
0910: 2f 2f 20 64 64 32 20 2d 20 44 6f 75 62 6c 79 20  // dd2 - Doubly 
0920: 64 69 6d 69 6e 69 73 68 65 64 20 73 65 63 6f 6e  diminished secon
0930: 64 0a 20 20 2f 2f 20 64 64 33 20 2d 20 44 6f 75  d.  // dd3 - Dou
0940: 62 6c 79 20 64 69 6d 69 6e 69 73 68 65 64 20 74  bly diminished t
0950: 68 69 72 64 0a 20 20 2f 2f 20 41 41 33 20 2d 20  hird.  // AA3 - 
0960: 44 6f 75 62 6c 79 20 61 75 67 6d 65 6e 74 65 64  Doubly augmented
0970: 20 74 68 69 72 64 0a 20 20 2f 2f 20 64 64 36 20   third.  // dd6 
0980: 2d 20 44 6f 75 62 6c 79 20 64 69 6d 69 6e 69 73  - Doubly diminis
0990: 68 65 64 20 73 69 78 74 68 0a 20 20 2f 2f 20 64  hed sixth.  // d
09a0: 64 37 20 2d 20 44 6f 75 62 6c 79 20 64 69 6d 69  d7 - Doubly dimi
09b0: 6e 69 73 68 65 64 20 73 65 76 65 6e 74 68 0a 20  nished seventh. 
09c0: 20 2f 2f 20 41 41 37 20 2d 20 44 6f 75 62 6c 79   // AA7 - Doubly
09d0: 20 61 75 67 6d 65 6e 74 65 64 20 73 65 76 65 6e   augmented seven
09e0: 74 68 0a 20 20 69 6e 74 65 72 76 61 6c 53 6f 6c  th.  intervalSol
09f0: 66 65 67 65 3a 20 7b 0a 20 20 20 20 27 64 64 31  fege: {.    'dd1
0a00: 27 3a 20 27 64 61 77 27 2c 0a 20 20 20 20 27 64  ': 'daw',.    'd
0a10: 31 27 3a 20 27 64 65 27 2c 0a 20 20 20 20 27 50  1': 'de',.    'P
0a20: 31 27 3a 20 27 64 6f 27 2c 0a 20 20 20 20 27 41  1': 'do',.    'A
0a30: 31 27 3a 20 27 64 69 27 2c 0a 20 20 20 20 27 41  1': 'di',.    'A
0a40: 41 31 27 3a 20 27 64 61 69 27 2c 0a 20 20 20 20  A1': 'dai',.    
0a50: 27 64 32 27 3a 20 27 72 61 77 27 2c 0a 20 20 20  'd2': 'raw',.   
0a60: 20 27 6d 32 27 3a 20 27 72 61 27 2c 0a 20 20 20   'm2': 'ra',.   
0a70: 20 27 4d 32 27 3a 20 27 72 65 27 2c 0a 20 20 20   'M2': 're',.   
0a80: 20 27 41 32 27 3a 20 27 72 69 27 2c 0a 20 20 20   'A2': 'ri',.   
0a90: 20 27 41 41 32 27 3a 20 27 72 61 69 27 2c 0a 20   'AA2': 'rai',. 
0aa0: 20 20 20 27 64 33 27 3a 20 27 6d 61 77 27 2c 0a     'd3': 'maw',.
0ab0: 20 20 20 20 27 6d 33 27 3a 20 27 6d 65 27 2c 0a      'm3': 'me',.
0ac0: 20 20 20 20 27 4d 33 27 3a 20 27 6d 69 27 2c 0a      'M3': 'mi',.
0ad0: 20 20 20 20 27 41 33 27 3a 20 27 6d 61 69 27 2c      'A3': 'mai',
0ae0: 0a 20 20 20 20 27 64 64 34 27 3a 20 27 66 61 77  .    'dd4': 'faw
0af0: 27 2c 0a 20 20 20 20 27 64 34 27 3a 20 27 66 65  ',.    'd4': 'fe
0b00: 27 2c 0a 20 20 20 20 27 50 34 27 3a 20 27 66 61  ',.    'P4': 'fa
0b10: 27 2c 0a 20 20 20 20 27 41 34 27 3a 20 27 66 69  ',.    'A4': 'fi
0b20: 27 2c 0a 20 20 20 20 27 41 41 34 27 3a 20 27 66  ',.    'AA4': 'f
0b30: 61 69 27 2c 0a 20 20 20 20 27 64 64 35 27 3a 20  ai',.    'dd5': 
0b40: 27 73 61 77 27 2c 0a 20 20 20 20 27 64 35 27 3a  'saw',.    'd5':
0b50: 20 27 73 65 27 2c 0a 20 20 20 20 27 50 35 27 3a   'se',.    'P5':
0b60: 20 27 73 6f 27 2c 0a 20 20 20 20 27 41 35 27 3a   'so',.    'A5':
0b70: 20 27 73 69 27 2c 0a 20 20 20 20 27 41 41 35 27   'si',.    'AA5'
0b80: 3a 20 27 73 61 69 27 2c 0a 20 20 20 20 27 64 36  : 'sai',.    'd6
0b90: 27 3a 20 27 6c 61 77 27 2c 0a 20 20 20 20 27 6d  ': 'law',.    'm
0ba0: 36 27 3a 20 27 6c 65 27 2c 0a 20 20 20 20 27 4d  6': 'le',.    'M
0bb0: 36 27 3a 20 27 6c 61 27 2c 0a 20 20 20 20 27 41  6': 'la',.    'A
0bc0: 36 27 3a 20 27 6c 69 27 2c 0a 20 20 20 20 27 41  6': 'li',.    'A
0bd0: 41 36 27 3a 20 27 6c 61 69 27 2c 0a 20 20 20 20  A6': 'lai',.    
0be0: 27 64 37 27 3a 20 27 74 61 77 27 2c 0a 20 20 20  'd7': 'taw',.   
0bf0: 20 27 6d 37 27 3a 20 27 74 65 27 2c 0a 20 20 20   'm7': 'te',.   
0c00: 20 27 4d 37 27 3a 20 27 74 69 27 2c 0a 20 20 20   'M7': 'ti',.   
0c10: 20 27 41 37 27 3a 20 27 74 61 69 27 2c 0a 20 20   'A7': 'tai',.  
0c20: 20 20 27 64 64 38 27 3a 20 27 64 61 77 27 2c 0a    'dd8': 'daw',.
0c30: 20 20 20 20 27 64 38 27 3a 20 27 64 65 27 2c 0a      'd8': 'de',.
0c40: 20 20 20 20 27 50 38 27 3a 20 27 64 6f 27 2c 0a      'P8': 'do',.
0c50: 20 20 20 20 27 41 38 27 3a 20 27 64 69 27 2c 0a      'A8': 'di',.
0c60: 20 20 20 20 27 41 41 38 27 3a 20 27 64 61 69 27      'AA8': 'dai'
0c70: 0a 20 20 7d 0a 7d 3b 0a                          .  }.};.