diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..86cfd71 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "OffiTracker"] + path = OffiTracker + url = https://git.muellers-software.org/Minki/OffiTracker diff --git a/OffiTracker b/OffiTracker new file mode 160000 index 0000000..fb3665e --- /dev/null +++ b/OffiTracker @@ -0,0 +1 @@ +Subproject commit fb3665eb8cfaff83b4a69dd58527cfb364e7258e diff --git a/PyOffiMaker.py b/PyOffiMaker.py new file mode 100644 index 0000000..abda1f2 --- /dev/null +++ b/PyOffiMaker.py @@ -0,0 +1,918 @@ +#!/usr/bin/env python +from turtle import width +from webbrowser import BackgroundBrowser +import PySimpleGUI as sg +import csv,re +import math +import OffiTracker.offitracker as oftr +import pandas as pd +frequencyTable = [] + +frequencyTable.append(["C0","16.35"]) +frequencyTable.append(["C#0","17.32"]) +frequencyTable.append(["D0","18.35"]) +frequencyTable.append(["D#0","19.45"]) +frequencyTable.append(["E0","20.60"]) +frequencyTable.append(["F0","21.83"]) +frequencyTable.append(["F#0","23.12"]) +frequencyTable.append(["G0","24.50"]) +frequencyTable.append(["G#0","25.96"]) +frequencyTable.append(["A0","27.50"]) +frequencyTable.append(["A#0","29.14"]) +frequencyTable.append(["B0","30.87"]) + +frequencyTable.append(["C1","32.70"]) +frequencyTable.append(["C#1","34.65"]) +frequencyTable.append(["D1","36.71"]) +frequencyTable.append(["D#1","38.89"]) +frequencyTable.append(["E1","41.20"]) +frequencyTable.append(["F1","43.65"]) +frequencyTable.append(["F#1","46.25"]) +frequencyTable.append(["G1","49.00"]) +frequencyTable.append(["G#1","51.91"]) +frequencyTable.append(["A1","55.00"]) +frequencyTable.append(["A#1","58.27"]) +frequencyTable.append(["B1","61.74"]) + +frequencyTable.append(["C2","65.41"]) +frequencyTable.append(["C#2","69.30"]) +frequencyTable.append(["D2","73.42"]) +frequencyTable.append(["D#2","77.78"]) +frequencyTable.append(["E2","82.41"]) +frequencyTable.append(["F2","87.31"]) +frequencyTable.append(["F#2","92.50"]) +frequencyTable.append(["G2","98.00"]) +frequencyTable.append(["G#2","103.83"]) +frequencyTable.append(["A2","110.00"]) +frequencyTable.append(["A#2","116.54"]) +frequencyTable.append(["B2","123.47"]) + +frequencyTable.append(["C3","130.81"]) +frequencyTable.append(["C#3","138.59"]) +frequencyTable.append(["D3","146.83"]) +frequencyTable.append(["D#3","155.56"]) +frequencyTable.append(["E3","164.81"]) +frequencyTable.append(["F3","174.61"]) +frequencyTable.append(["F#3","185.00"]) +frequencyTable.append(["G3","196.00"]) +frequencyTable.append(["G#3","207.65"]) +frequencyTable.append(["A3","220.00"]) +frequencyTable.append(["A#3","233.08"]) +frequencyTable.append(["B3","246.94"]) + +frequencyTable.append(["C4","261.63"]) +frequencyTable.append(["C#4","277.18"]) +frequencyTable.append(["D4","293.66"]) +frequencyTable.append(["D#4","311.13"]) +frequencyTable.append(["E4","329.63"]) +frequencyTable.append(["F4","349.23"]) +frequencyTable.append(["F#4","369.99"]) +frequencyTable.append(["G4","392.00"]) +frequencyTable.append(["G#4","415.30"]) +frequencyTable.append(["A4","440.00"]) +frequencyTable.append(["A#4","466.16"]) +frequencyTable.append(["B4","493.88"]) + +frequencyTable.append(["C5","523.25"]) +frequencyTable.append(["C#5","554.37"]) +frequencyTable.append(["D5","587.33"]) +frequencyTable.append(["D#5","622.25"]) +frequencyTable.append(["E5","659.25"]) +frequencyTable.append(["F5","698.46"]) +frequencyTable.append(["F#5","739.99"]) +frequencyTable.append(["G5","783.99"]) +frequencyTable.append(["G#5","830.61"]) +frequencyTable.append(["A5","880.00"]) +frequencyTable.append(["A#5","932.33"]) +frequencyTable.append(["B5","987.77"]) + +frequencyTable.append(["C6","1046.50"]) +frequencyTable.append(["C#6","1108.73"]) +frequencyTable.append(["D6","1174.66"]) +frequencyTable.append(["D#6","1244.51"]) +frequencyTable.append(["E6","1318.51"]) +frequencyTable.append(["F6","1396.91"]) +frequencyTable.append(["F#6","1479.98"]) +frequencyTable.append(["G6","1567.98"]) +frequencyTable.append(["G#6","1661.22"]) +frequencyTable.append(["A6","1760.00"]) +frequencyTable.append(["A#6","1864.66"]) +frequencyTable.append(["B6","1975.53"]) + +frequencyTable.append(["C7","2093.00"]) +frequencyTable.append(["C#7","2217.46"]) +frequencyTable.append(["D7","2349.32"]) +frequencyTable.append(["D#7","2489.02"]) +frequencyTable.append(["E7","2637.02"]) +frequencyTable.append(["F7","2793.83"]) +frequencyTable.append(["F#7","2959.96"]) +frequencyTable.append(["G7","3135.96"]) +frequencyTable.append(["G#7","3322.44"]) +frequencyTable.append(["A7","3520.00"]) +frequencyTable.append(["A#7","3729.31"]) +frequencyTable.append(["B7","3951.07"]) + +frequencyTable.append(["C8","4186.01"]) +frequencyTable.append(["C#8","4434.92"]) +frequencyTable.append(["D8","4698.63"]) +frequencyTable.append(["D#8","4978.03"]) +frequencyTable.append(["E8","5274.04"]) +frequencyTable.append(["F8","5587.65"]) +frequencyTable.append(["F#8","5919.91"]) +frequencyTable.append(["G8","6271.93"]) +frequencyTable.append(["G#8","6644.88"]) +frequencyTable.append(["A8","7040.00"]) +frequencyTable.append(["A#8","7458.62"]) +frequencyTable.append(["B8","7902.13"]) + +global currentTable +currentTable = 1 + + + +global emptyrow +emptyrow = ["C0", "0"] + +sg.theme('Dark Red') +def openFile(window = None): + filename = sg.popup_get_file('filename to open', no_window=True, file_types=(("CSV Files","*.csv"),)) + data = [] + header_list = [] + print(filename) + if filename is not None and filename != "": + pandaData = pd.read_csv(filename) + + newData1 = pandaData.loc[:,["Frequency1","Effect1"]] + newData2 = pandaData.loc[:,["Frequency2","Effect2"]] + newData3 = pandaData.loc[:,["Frequency3","Effect3"]] + newData4 = pandaData.loc[:,["Noise","Duration"]] + + reader = [] + reader1 = [] + reader2 = [] + reader3 = [] + reader4 = [] + + readers = [] + + df1 = pd.DataFrame(newData1).fillna(0) + df2 = pd.DataFrame(newData2).fillna(0) + df3 = pd.DataFrame(newData3).fillna(0) + df4 = pd.DataFrame(newData4).fillna(0) + + listF1 = df1['Frequency1'].values.tolist() + listF2 = df2['Frequency2'].values.tolist() + listF3 = df3['Frequency3'].values.tolist() + + listE1 = df1['Effect1'].values.tolist() + listE2 = df2['Effect2'].values.tolist() + listE3 = df3['Effect3'].values.tolist() + + listN = df4['Noise'].values.tolist() + listD = df4['Duration'].values.tolist() + + + for entry, data in enumerate(listF1): + reader1.append([listF1[entry],listE1[entry]]) + reader2.append([listF2[entry],listE2[entry]]) + reader3.append([listF3[entry],listE3[entry]]) + reader4.append([listN[entry],listD[entry]]) + + + data1 = list(reader1) + data2 = list(reader2) + data3 = list(reader3) + data4 = list(reader4) + for index1, row in enumerate(data1): + # or cell == row[3] or cell == row[5] or cell == row[6] or cell == row[7] + for index, cell in enumerate(row): + if cell == row[1]: + pass + else: + if cell == "" or cell =='' or cell == "nan": + cell = 0 + for note in frequencyTable: + + + if str(math.ceil(float(note[1]))) == str( cell) or str(math.floor(float(note[1]))) == str( cell): + #print(str(math.ceil(float(note[1]))) + " : " + str( cell)) + cell = note[0] + row[index] =cell + data1[index1] = row + # read everything else into a list of rows + for index1, row in enumerate(data2): + # or cell == row[3] or cell == row[5] or cell == row[6] or cell == row[7] + for index, cell in enumerate(row): + if cell == row[1]: + pass + else: + if cell == "" or cell =='' or cell == "nan": + cell = 0 + for note in frequencyTable: + + + if str(math.ceil(float(note[1]))) == str( cell) or str(math.floor(float(note[1]))) == str( cell): + #print(str(math.ceil(float(note[1]))) + " : " + str( cell)) + cell = note[0] + row[index] =cell + data2[index1] = row + for index1, row in enumerate(data3): + # or cell == row[3] or cell == row[5] or cell == row[6] or cell == row[7] + for index, cell in enumerate(row): + if cell == row[1]: + pass + else: + if cell == "" or cell =='' or cell == "nan": + cell = 0 + for note in frequencyTable: + + + if str(math.ceil(float(note[1]))) == str( cell) or str(math.floor(float(note[1]))) == str( cell): + #print(str(math.ceil(float(note[1]))) + " : " + str( cell)) + cell = note[0] + row[index] =cell + data3[index1] = row + for index1, row in enumerate(data4): + # or cell == row[3] or cell == row[5] or cell == row[6] or cell == row[7] + for index, cell in enumerate(row): + if cell == "" or cell =='' or cell == "nan": + cell = 0 + row[index] =cell + data4[index1] = row + readers.append(data1) + readers.append(data2) + readers.append(data3) + readers.append(data4) + + + #print(readers) + return readers +def make_table(val,uid,num_rows, num_cols): + data = [[j for j in range(num_cols)] for i in range(num_rows)] + data[0] = ["0" for _ in range(num_cols)] + for i in range(0, num_rows): + if uid == 4: + emptyrow = ["0","100"] + else: + emptyrow = ["C4","50"] + data[i] = emptyrow + val.append(data[i]) + return data + +def playThread(window): + oftr.stop_signal = False + oftr.play_csv_file("./temp.csv") + + +def save_csv(name,data): + + with open(name, 'w', newline='', encoding='utf-8') as file: + # Create a CSV writer object + + csv_writer = csv.DictWriter(file,quoting=csv.QUOTE_NONE,dialect="unix",fieldnames=header_list) + csv_writer.writeheader() + if isinstance(data, list): + for row in data: + + for index, cell in enumerate(row): + + if cell == "" or cell == "nan": + cell = 0 + row[index] =(cell) + for note in frequencyTable: + + if cell == note[0]: + cell = note[1] + + row[index] =float(cell) + csv_writer.writerow({'Frequency1': row[0], 'Effect1': row[1], 'Frequency2': row[2], 'Effect2': row[3], 'Frequency3': row[4], 'Effect3': row[5], 'Noise': row[6], 'Duration': row[7]}) + + # Write multiple rows of data + else: + for row in data.values.tolist(): + + for index, cell in enumerate(row): + + if cell == "" or cell == "nan": + cell = 0 + row[index] =(cell) + for note in frequencyTable: + + if cell == note[0]: + cell = note[1] + + row[index] =float(cell) + + csv_writer.writerow({'Frequency1': row[0], 'Effect1': row[1], 'Frequency2': row[2], 'Effect2': row[3], 'Frequency3': row[4], 'Effect3': row[5], 'Noise': row[6], 'Duration': row[7]}) + + # Write multiple rows of data + new_lines = re.compile('\n{2,9}') + with open(name) as f: + contents = f.read() + contents = re.sub(new_lines, '\n\n\n', contents.strip()) + with open(name, 'w') as f: + f.write(contents) +def initButtons(window,state = True): + window["-SAVEEDITNEXT-"].update(disabled=state) + window["-NR-"].update(disabled=state) + window["-RR-"].update(disabled=state) + window["o1-"].update(disabled=state) + window["o2-"].update(disabled=state) + window["o3-"].update(disabled=state) + window["o1+"].update(disabled=state) + window["o2+"].update(disabled=state) + window["o3+"].update(disabled=state) + window["n1-"].update(disabled=state) + window["n2-"].update(disabled=state) + window["n3-"].update(disabled=state) + window["n1+"].update(disabled=state) + window["n2+"].update(disabled=state) + window["n3+"].update(disabled=state) + window["n"].update(disabled=state) + window["d"].update(disabled=state) + window["f1"].update(disabled=state) + window["e1"].update(disabled=state) + window["f2"].update(disabled=state) + window["e2"].update(disabled=state) + window["f3"].update(disabled=state) + window["e3"].update(disabled=state) +def changeButtonset1(window,state = False): + + window["o1-"].update(disabled=state) + window["o1+"].update(disabled=state) + window["n1-"].update(disabled=state) + window["n1+"].update(disabled=state) + window["f1"].update(disabled=state) + window["e1"].update(disabled=state) + +def changeButtonset2(window,state = False): + window["o2-"].update(disabled=state) + window["o2+"].update(disabled=state) + window["n2-"].update(disabled=state) + window["n2+"].update(disabled=state) + window["f2"].update(disabled=state) + window["e2"].update(disabled=state) +def changeButtonset3(window,state = False): + window["o3-"].update(disabled=state) + window["o3+"].update(disabled=state) + window["n3-"].update(disabled=state) + window["n3+"].update(disabled=state) + window["f3"].update(disabled=state) + window["e3"].update(disabled=state) + +def changeButtonset4(window,state = False): + window["d"].update(disabled=state) + window["n"].update(disabled=state) + +def main(): + global canInit + canInit = True + global lastRow + lastRow = 0 + global cur_row + cur_row = 0 + global cur_col + cur_col = 0 + global edit + global data_values + data_values = [] + data_values1 = [] + data_values2 = [] + data_values3 = [] + data_values4 = [] + edit = False + data = make_table(data_values,0, num_rows=1, num_cols=2) + data1 = make_table(data_values1,1, num_rows=1, num_cols=2) + data2 = make_table(data_values2,2, num_rows=1, num_cols=2) + data3 = make_table(data_values3,3, num_rows=1, num_cols=2) + data4 = make_table(data_values4,4, num_rows=1, num_cols=2) + + global header_list + header_list = ["Frequency1", "Effect1", "Frequency2", "Effect2", "Frequency3","Effect3", "Noise", "Duration"] + headers1 = [header_list[0],header_list[1]] + headers2 = [header_list[2],header_list[3]] + headers3 = [header_list[4],header_list[5]] + headers4 = [header_list[6],header_list[7]] + + filename = "template.csv" + currentTable = 1 + global BackgroundData + BackgroundData = [] + for i in range(0, 1000): + BackgroundData.append([]) + tab1_layout = [[sg.Table(values=data, headings=header_list, max_col_width=25, + auto_size_columns=True, + #display_row_numbers=True, + justification='right', + num_rows=20, + #alternating_row_color=sg.theme_button_color()[1], + key='-TABLE-', + selected_row_colors='red on yellow', + enable_events=True, + # select_mode=sg.TABLE_SELECT_MODE_BROWSE, + select_mode=sg.TABLE_SELECT_MODE_BROWSE, + expand_x=True, + expand_y=True, + visible=False, + #enable_click_events=True, # Comment out to not enable header and other clicks + ), + sg.Table(values=data1, headings=headers1, max_col_width=25, + auto_size_columns=True, + display_row_numbers=True, + justification='right', + num_rows=20, + #alternating_row_color=sg.theme_button_color()[1], + key='-TABLE1-', + selected_row_colors='red on yellow', + enable_events=True, + # select_mode=sg.TABLE_SELECT_MODE_BROWSE, + select_mode=sg.TABLE_SELECT_MODE_BROWSE, + expand_x=True, + expand_y=True, + + #enable_click_events=True, # Comment out to not enable header and other clicks + ), + sg.Table(values=data2, headings=headers2, max_col_width=25, + auto_size_columns=True, + display_row_numbers=True, + justification='right', + num_rows=20, + #alternating_row_color=sg.theme_button_color()[1], + key='-TABLE2-', + selected_row_colors='red on yellow', + enable_events=True, + # select_mode=sg.TABLE_SELECT_MODE_BROWSE, + select_mode=sg.TABLE_SELECT_MODE_BROWSE, + expand_x=True, + expand_y=True, + #enable_click_events=True, # Comment out to not enable header and other clicks + ), + sg.Table(values=data3, headings=headers3, max_col_width=25, + auto_size_columns=True, + display_row_numbers=True, + justification='right', + num_rows=20, + #alternating_row_color=sg.theme_button_color()[1], + key='-TABLE3-', + selected_row_colors='red on yellow', + enable_events=True, + # select_mode=sg.TABLE_SELECT_MODE_BROWSE, + select_mode=sg.TABLE_SELECT_MODE_BROWSE, + expand_x=True, + expand_y=True, + #enable_click_events=True, # Comment out to not enable header and other clicks + ), + sg.Table(values=data4, headings=headers4, max_col_width=25, + auto_size_columns=True, + display_row_numbers=True, + justification='right', + num_rows=20, + #alternating_row_color=sg.theme_button_color()[1], + key='-TABLE4-', + selected_row_colors='red on yellow', + enable_events=True, + # select_mode=sg.TABLE_SELECT_MODE_BROWSE, + select_mode=sg.TABLE_SELECT_MODE_BROWSE, + expand_x=True, + expand_y=True, + #enable_click_events=True, # Comment out to not enable header and other clicks + )], + [sg.Text("Current Row: " + str(cur_row),key="-counter-"),sg.Text("Current Col: None",key="-countercol-")], + [sg.Text('Note 1', size =(15, 1)),sg.Button("O-",key="o1-",size=(2,1)),sg.Button("N-",key="n1-",size=(2,1)), sg.InputText(size =(3, 1),key="f1",default_text="C0"),sg.Button("N+",key="n1+",size=(2,1)),sg.Button("O+",key="o1+",size=(2,1)),sg.Text('Effect 1', size =(15, 1)), sg.InputText(size =(3, 1),key="e1",default_text="50")], + [sg.Text('Note 2', size =(15, 1)),sg.Button("O-",key="o2-",size=(2,1)), sg.Button("N-",key="n2-",size=(2,1)),sg.InputText(size =(3, 1),key="f2",default_text="C0"),sg.Button("N+",key="n2+",size=(2,1)),sg.Button("O+",key="o2+",size=(2,1)),sg.Text('Effect 2', size =(15, 1)), sg.InputText(size =(3, 1),key="e2",default_text="50")], + [sg.Text('Note 3', size =(15, 1)),sg.Button("O-",key="o3-",size=(2,1)),sg.Button("N-",key="n3-",size=(2,1)), sg.InputText(size =(3, 1),key="f3",default_text="C0"),sg.Button("N+",key="n3+",size=(2,1)),sg.Button("O+",key="o3+",size=(2,1)),sg.Text('Effect 3', size =(15, 1)), sg.InputText(size =(3, 1),key="e3",default_text="50")], + [sg.Text('Noise', size =(15, 1)), sg.InputText(size =(3, 1),key="n",default_text="0"),sg.Text('Duration', size =(15, 1)), sg.InputText(size =(3, 1),key="d",default_text="100")], + [sg.Button("Save Row",key="-SAVE-"),sg.Button("Save Row & Edit next",key="-SAVEEDITNEXT-"),sg.Checkbox("New Line on end?",key="nl")], + [sg.Button("Create new Row at last Position",key="-NR-",visible=False),sg.Button("Remove selected Row",key="-RR-",visible=False)], + [sg.Button("New File",key="-NF-"),sg.InputText(size =(16, 1),key="-sfname-",enable_events=False,default_text="unnamed.csv"),sg.Button("Save File",key="-SaF-"),sg.Button("Load File",key="-LF-"),sg.Button("Play File",key="-PF-"),sg.Button("Stop File",key="-StF-")] + ] + + tab2_layout = [[sg.Text('Tab 2')]] + tab3_layout = [[sg.Text('Tab 3')]] + tab4_layout = [[sg.Text('Tab 3')]] + + # The TabgGroup layout - it must contain only Tabs + tab_group_layout = [[sg.Tab('Edit', tab1_layout, key='-TAB1-'), + sg.Tab('Samples', tab2_layout, key='-TAB2-'), + sg.Tab('Settings', tab3_layout, key='-TAB3-')]] + + # The window layout - defines the entire window + layout = [[sg.TabGroup(tab_group_layout, + enable_events=True, + key='-TABGROUP-')]] + + window = sg.Window('OffiMAKER - OffiTracker Editor', layout, grab_anywhere=False,size=(1020, 640)) + event, values = window.read() + window.bind("", "ALT-q") + + initButtons(window,True) + row_colors = [(0, "yellow","dark red")] + window["-TABLE1-"].update(row_colors=row_colors) + window["-TABLE2-"].update(row_colors=row_colors) + window["-TABLE3-"].update(row_colors=row_colors) + window["-TABLE4-"].update(row_colors=row_colors) + BackgroundData[cur_row] = [window["-TABLE1-"].get()[cur_row],window["-TABLE2-"].get()[cur_row],window["-TABLE3-"].get()[cur_row],window["-TABLE4-"].get()[cur_row]] + + def OctavePlus(window,field): + if window[field].get() == "": + window[field].update("C0") + for index, entry in enumerate(frequencyTable): + if window[field].get() == entry[0] and index+12 < len(frequencyTable): + window[field].update(frequencyTable[index+12][0]) + return + elif window[field].get() == entry[1] and index+12 < len(frequencyTable): + window[field].update(frequencyTable[index+12][1]) + return + def OctaveMinus(window,field): + if window[field].get() == "": + window[field].update("C0") + for index, entry in enumerate(frequencyTable): + if window[field].get() == entry[0] and index-12 >= 0: + window[field].update(frequencyTable[index-12][0]) + return + elif window[field].get() == entry[1] and index-12 >= 0: + window[field].update(frequencyTable[index-12][1]) + return + def NotePlus(window,field): + if window[field].get() == "": + window[field].update("C0") + for index, entry in enumerate(frequencyTable): + if window[field].get() == entry[0] and index+1 < len(frequencyTable): + window[field].update(frequencyTable[index+1][0]) + return + elif window[field].get() == entry[1] and index+1 < len(frequencyTable): + window[field].update(frequencyTable[index+1][1]) + return + def NoteMinus(window,field): + if window[field].get() == "": + window[field].update("C0") + for index, entry in enumerate(frequencyTable): + if window[field].get() == entry[0] and index-1 >= 0: + window[field].update(frequencyTable[index-1][0]) + return + elif window[field].get() == entry[1] and index-1 >= 0: + window[field].update(frequencyTable[index-1][1]) + return + while True: + + event, values = window.read() + #sg.popup_non_blocking(event, values) + print(event,values) + + if event == sg.WIN_CLOSED: # always, always give a way out! + break + elif event == '-TABGROUP-': + pass + elif event == '-TAB1-': + pass + elif event == 'nl': + pass + elif event == 'o1-': + OctaveMinus(window,"f1") + elif event == 'o2-': + OctaveMinus(window,"f2") + elif event == 'o3-': + OctaveMinus(window,"f3") + elif event == 'n1-': + NoteMinus(window,"f1") + elif event == 'n2-': + NoteMinus(window,"f2") + elif event == 'n3-': + NoteMinus(window,"f3") + elif event == 'o1+': + OctavePlus(window,"f1") + elif event == 'o2+': + OctavePlus(window,"f2") + elif event == 'o3+': + OctavePlus(window,"f3") + elif event == 'n1+': + NotePlus(window,"f1") + elif event == 'n2+': + NotePlus(window,"f2") + elif event == 'n3+': + NotePlus(window,"f3") + elif event == "-NF-": + ch = sg.popup_yes_no("Create new File and discard current changes?", title="New File?") + if ch == "Yes": + window["-TABLE1-"].update(make_table(data_values1,1, num_rows=1, num_cols=2)) + window["-TABLE2-"].update(make_table(data_values2,2, num_rows=1, num_cols=2)) + window["-TABLE3-"].update(make_table(data_values3,3, num_rows=1, num_cols=2)) + window["-TABLE4-"].update(make_table(data_values4,4, num_rows=1, num_cols=2)) + else: + pass + elif event == "-StF-": + oftr.stop_signal = True + elif event == "-SaF-": + ch = sg.popup_yes_no("Do you want to Save the File?", title="Save File?") + if ch == "Yes": + df1 = pd.DataFrame(window["-TABLE1-"].get(),columns=headers1) + df2 = pd.DataFrame(window["-TABLE2-"].get(),columns=headers2) + df3 = pd.DataFrame(window["-TABLE3-"].get(),columns=headers3) + df4 = pd.DataFrame(window["-TABLE4-"].get(),columns=headers4) + + tosave = df1.join(df2).join(df3).join(df4) + print(tosave) + if window["-sfname-"].get() == "unnamed.csv": + ch2 = sg.popup_yes_no("Default Filename will be used. This could lead to data loss. Are you sure to save?", title="Default Filename will be used.") + if ch2 == "Yes": + save_csv(window["-sfname-"].get(),tosave) + else: + save_csv(window["-sfname-"].get(),tosave) + else: + pass + elif event == "-LF-": + #data_values = [] + #openFile(window) + returned = openFile(window) + #print(returned) + if returned is not None: + for i in returned[0]: + data_values1.append(["", ""]) + data_values2.append(["", ""]) + data_values3.append(["", ""]) + data_values4.append(["", ""]) + for i in returned: + print("i:" + str(i)) + print("\n\n") + BackgroundData[cur_row] = [i[0],i[1],i[3],i[4]] + + window["-TABLE1-"].update(returned[0]) + window["-TABLE2-"].update(returned[1]) + window["-TABLE3-"].update(returned[2]) + window["-TABLE4-"].update(returned[3]) + elif event == "-PF-": + df1 = pd.DataFrame(window["-TABLE1-"].get(),columns=headers1) + df2 = pd.DataFrame(window["-TABLE2-"].get(),columns=headers2) + df3 = pd.DataFrame(window["-TABLE3-"].get(),columns=headers3) + df4 = pd.DataFrame(window["-TABLE4-"].get(),columns=headers4) + + tosave = df1.join(df2).join(df3).join(df4) + save_csv("temp.csv",tosave) + window.start_thread(lambda: playThread(window), ('-THREAD-', '-THEAD ENDED-')) + elif event == '-THREAD-' or event == '-THEAD ENDED-': + pass + elif event == '-NR-': + # newData = window["-TABLE-"].get() + # newData.append(["C0", "50", "C0", "50", "C0", "50", "0","100"]) + # data_values.append(["", "", "", "", "","", "", ""]) + # window["-TABLE-"].update(newData) + pass + elif event == '-RR-': + try: + if cur_row != 0: + newData = window["-TABLE-"].get() + del newData[cur_row] + del data_values[cur_row] + window["-TABLE-"].update(newData) + else: + print("Dont remove last Row") + except Exception as e: + print (e) + elif event == '-TABLE1-': + + try: + #if lastRow != 0: + # row_colors = [(lastRow, "yellow","dark red")] + # window["-TABLE"+ str(currentTable) + "-"].update(row_colors=row_colors) + if canInit == True: + initButtons(window,False) + canInit = False + print(values[event]) + data_selected = [data_values1[row] for row in values[event]] + row = values[event] + if row: + changeButtonset1(window,False) + changeButtonset2(window,True) + changeButtonset3(window,True) + changeButtonset4(window,True) + lastRow = row + print(f'Selected row is {row}') + print(data_selected) + cur_row = row[0] + currentTable = 1 + window["-counter-"].update("Current Row: " + str(cur_row)) + window["-countercol-"].update("Current Col: Note/Frequency 1") + # window['-TABLE1-'].update(select_rows=(row)) + window['-TABLE2-'].update(select_rows=()) + window['-TABLE3-'].update(select_rows=()) + window['-TABLE4-'].update(select_rows=()) + + print(f'Selected data is {BackgroundData[cur_row]}') + + window["f1"].update(BackgroundData[cur_row][0][0]) + window["e1"].update(BackgroundData[cur_row][0][1]) + except Exception as e: + print (e) + elif event == '-TABLE2-': + try: + #if lastRow != 0: + # row_colors = [(lastRow, "yellow","dark red")] + # window["-TABLE"+ str(currentTable) + "-"].update(row_colors=row_colors) + if canInit == True: + initButtons(window,False) + canInit = False + print(values[event]) + data_selected = [data_values2[row] for row in values[event]] + row = values[event] + print(row) + if row: + changeButtonset1(window,True) + changeButtonset2(window,False) + changeButtonset3(window,True) + changeButtonset4(window,True) + lastRow = row + print(f'Selected row is {row}') + print(data_selected) + cur_row = row[0] + currentTable = 2 + window["-counter-"].update("Current Row: " + str(cur_row)) + window["-countercol-"].update("Current Col: Note/Frequency 2") + window['-TABLE1-'].update(select_rows=()) + # window['-TABLE2-'].update(select_rows=(row)) + window['-TABLE3-'].update(select_rows=()) + window['-TABLE4-'].update(select_rows=()) + window["f2"].update(BackgroundData[cur_row][1][0]) + window["e2"].update(BackgroundData[cur_row][1][1]) + except Exception as e: + print (e) + elif event == '-TABLE3-': + try: + #if lastRow != 0: + # row_colors = [(lastRow, "yellow","dark red")] + # window["-TABLE"+ str(currentTable) + "-"].update(row_colors=row_colors) + if canInit == True: + initButtons(window,False) + canInit = False + print(values[event]) + data_selected = [data_values3[row] for row in values[event]] + row = values[event] + print(row) + if row: + changeButtonset1(window,True) + changeButtonset2(window,True) + changeButtonset3(window,False) + changeButtonset4(window,True) + lastRow = row + + print(f'Selected row is {row}') + print(data_selected) + cur_row = row[0] + currentTable = 3 + window["-counter-"].update("Current Row: " + str(cur_row)) + window["-countercol-"].update("Current Col: Note/Frequency 3") + window['-TABLE1-'].update(select_rows=()) + window['-TABLE2-'].update(select_rows=()) + # window['-TABLE3-'].update(select_rows=(row)) + window['-TABLE4-'].update(select_rows=()) + window["f3"].update(BackgroundData[cur_row][2][0]) + window["e3"].update(BackgroundData[cur_row][2][1]) + except Exception as e: + print (e) + elif event == '-TABLE4-': + try: + + #if lastRow != 0: + #row_colors = [(lastRow, "yellow","dark red")] + #window["-TABLE"+ str(currentTable) + "-"].update(row_colors=row_colors) + if canInit == True: + initButtons(window,False) + canInit = False + print(values[event]) + data_selected = [data_values4[row] for row in values[event]] + row = values[event] + print(row) + if row: + changeButtonset1(window,True) + changeButtonset2(window,True) + changeButtonset3(window,True) + changeButtonset4(window,False) + lastRow = row + + print(f'Selected row is {row}') + print(data_selected) + cur_row = row[0] + currentTable = 4 + window["-counter-"].update("Current Row: " + str(cur_row)) + window["-countercol-"].update("Current Col: Noise/Duration") + window['-TABLE1-'].update(select_rows=()) + window['-TABLE2-'].update(select_rows=()) + window['-TABLE3-'].update(select_rows=()) + # window['-TABLE4-'].update(select_rows=(row)) + + + window["n"].update(BackgroundData[cur_row][3][0]) + window["d"].update(BackgroundData[cur_row][3][1]) + except Exception as e: + print (e) + elif event == '-TABLE-': + # print(values[event]) + # data_selected = [data_values[row] for row in values[event]] + # row = values[event] + # print(row) + # if row: + # print(f'Selected row is {row}') + # print(data_selected) + # cur_row = row[0] + # window["-counter-"].update("Current Row: " + str(cur_row)) + # window["f1"].update(data_selected[0][0]) + # window["e1"].update(data_selected[0][1]) + # window["f2"].update(data_selected[0][2]) + # window["e2"].update(data_selected[0][3]) + # window["f3"].update(data_selected[0][4]) + # window["e3"].update(data_selected[0][5]) + # window["n"].update(data_selected[0][6]) + # window["d"].update(data_selected[0][7]) + pass + elif event == '-SAVE-': + try: + if cur_row >= 0 and currentTable < 4: + newData = window["-TABLE"+ str(currentTable) + "-"].get() + + #print(window["f1"].get()) + newData[cur_row][0] = str(window["f"+ str(currentTable)].get()) + newData[cur_row][1] = str(window["e"+ str(currentTable)].get()) + print(newData) + window["-TABLE"+ str(currentTable) + "-"].update(newData) + #row_colors = [(cur_row+1, sg.theme_button_color()[1])] + #row_colors2 = [(cur_row, "yellow","dark red")] + #window["-TABLE"+ str(currentTable) + "-"].update(row_colors=row_colors) + #window["-TABLE"+ str(currentTable) + "-"].update(row_colors=row_colors2) + elif cur_row >= 0 and currentTable == 4: + newData = window["-TABLE"+ str(currentTable) + "-"].get() + + #print(window["f1"].get()) + newData[cur_row][0] = str(window["n"].get()) + newData[cur_row][1] = str(window["d"].get()) + + window["-TABLE"+ str(currentTable) + "-"].update(newData) + #row_colors = [(cur_row+1, sg.theme_button_color()[1])] + #row_colors2 = [(cur_row, "yellow","dark red")] + #window["-TABLE"+ str(currentTable) + "-"].update(row_colors=row_colors) + #window["-TABLE"+ str(currentTable) + "-"].update(row_colors=row_colors2) + BackgroundData[cur_row] = [window["-TABLE1-"].get()[cur_row],window["-TABLE2-"].get()[cur_row],window["-TABLE3-"].get()[cur_row],window["-TABLE4-"].get()[cur_row]] + except Exception as e: + print(e) + #print(str(cur_row+1) + " : " + str(len(window["-TABLE-"].get()))) + elif event == '-SAVEEDITNEXT-' or event == "ALT-q": + try: + if cur_row >= 0 and currentTable < 4: + newData = window["-TABLE"+ str(currentTable) + "-"].get() + + #print(window["f1"].get()) + newData[cur_row][0] = str(window["f"+ str(currentTable)].get()) + newData[cur_row][1] = str(window["e"+ str(currentTable)].get()) + + window["-TABLE"+ str(currentTable) + "-"].update(newData) + row_colors = [(cur_row+1, sg.theme_button_color()[1])] + #row_colors2 = [(cur_row, "yellow","dark red")] + window["-TABLE"+ str(currentTable) + "-"].update(row_colors=row_colors) + #window["-TABLE"+ str(currentTable) + "-"].update(row_colors=row_colors2) + elif cur_row >= 0 and currentTable == 4: + newData = window["-TABLE"+ str(currentTable) + "-"].get() + + #print(window["f1"].get()) + newData[cur_row][0] = str(window["n"].get()) + newData[cur_row][1] = str(window["d"].get()) + + window["-TABLE"+ str(currentTable) + "-"].update(newData) + row_colors = [(cur_row+1, sg.theme_button_color()[1])] + #row_colors2 = [(cur_row, "yellow","dark red")] + window["-TABLE"+ str(currentTable) + "-"].update(row_colors=row_colors) + #window["-TABLE"+ str(currentTable) + "-"].update(row_colors=row_colors2) + BackgroundData[cur_row] = [window["-TABLE1-"].get()[cur_row],window["-TABLE2-"].get()[cur_row],window["-TABLE3-"].get()[cur_row],window["-TABLE4-"].get()[cur_row]] + except Exception as e: + print(e) + #print(str(cur_row+1) + " : " + str(len(window["-TABLE-"].get()))) + print(window["nl"].get()) + if window["nl"].get() == True: + + if cur_row+1 == len(window["-TABLE1-"].get()): + print("Made new Row") + newData1 = window["-TABLE1-"].get() + newData1.append(["", ""]) + data_values1.append(["", ""]) + window["-TABLE1-"].update(newData1) + + newData2 = window["-TABLE2-"].get() + newData2.append(["", ""]) + data_values2.append(["", ""]) + window["-TABLE2-"].update(newData2) + + newData3 = window["-TABLE3-"].get() + newData3.append(["", ""]) + data_values3.append(["", ""]) + window["-TABLE3-"].update(newData3) + + newData4 = window["-TABLE4-"].get() + newData4.append(["", "100"]) + data_values4.append(["", ""]) + window["-TABLE4-"].update(newData4) + + cur_row += 1 + #window["-TABLE"+ str(currentTable) + "-"].update(select_rows=(cur_row)) + row_colors = [(cur_row, sg.theme_button_color()[1])] + window["-TABLE"+ str(currentTable) + "-"].update(row_colors=row_colors) + BackgroundData[cur_row] = [window["-TABLE1-"].get()[cur_row],window["-TABLE2-"].get()[cur_row],window["-TABLE3-"].get()[cur_row],window["-TABLE4-"].get()[cur_row]] + window.close() + +main() \ No newline at end of file diff --git a/demo1.csv b/demo1.csv new file mode 100644 index 0000000..f42cb65 --- /dev/null +++ b/demo1.csv @@ -0,0 +1,383 @@ +Frequency1,Effect1,Frequency2,Effect2,Frequency3,Effect3,Noise,Duration +293.66,60,146.83,30,0.0,0.0,0.0,165 +293.66,51,73.42,30,0.0,0.0,0.0,165 +293.66,60,146.83,30,0.0,0.0,0.0,165 +293.66,47,73.42,30,0.0,0.0,0.0,165 +329.63,60,146.83,30,0.0,0.0,0.0,165 +329.63,60,73.42,30,0.0,0.0,0.0,165 +349.23,60,146.83,30,0.0,0.0,0.0,165 +349.23,56,73.42,30,0.0,0.0,0.0,165 +233.08,49,116.54,30,0.0,0.0,0.0,165 +233.08,47,58.27,30,0.0,0.0,0.0,165 +261.63,60,116.54,30,0.0,0.0,0.0,165 +293.66,49,58.27,30,0.0,0.0,0.0,165 +293.66,48,116.54,30,0.0,0.0,0.0,165 +293.66,49,58.27,30,0.0,0.0,0.0,165 +329.63,55,116.54,30,0.0,0.0,0.0,165 +329.63,42,58.27,30,0.0,0.0,0.0,165 +349.23,51,174.61,30,0.0,0.0,0.0,165 +349.23,59,87.31,30,0.0,0.0,0.0,165 +349.23,58,174.61,30,0.0,0.0,0.0,165 +349.23,59,87.31,30,0.0,0.0,0.0,165 +440.0,40,174.61,30,0.0,0.0,0.0,165 +440.0,57,87.31,30,0.0,0.0,0.0,165 +349.23,55,174.61,30,0.0,0.0,0.0,165 +349.23,60,87.31,30,0.0,0.0,0.0,165 +392.0,44,130.81,30,0.0,0.0,0.0,165 +392.0,57,65.41,30,0.0,0.0,0.0,165 +349.23,51,130.81,30,0.0,0.0,0.0,165 +329.63,55,65.41,30,0.0,0.0,0.0,165 +329.63,58,130.81,30,0.0,0.0,0.0,165 +329.63,60,65.41,30,0.0,0.0,0.0,165 +349.23,58,130.81,30,0.0,0.0,0.0,165 +349.23,43,65.41,30,0.0,0.0,0.0,165 +293.66,56,146.83,30,0.0,0.0,0.0,165 +293.66,52,73.42,30,0.0,0.0,0.0,165 +293.66,60,146.83,30,0.0,0.0,0.0,165 +293.66,55,73.42,30,0.0,0.0,0.0,165 +329.63,60,146.83,30,0.0,0.0,0.0,165 +329.63,60,73.42,30,0.0,0.0,0.0,165 +349.23,54,146.83,30,0.0,0.0,0.0,165 +349.23,60,73.42,30,0.0,0.0,0.0,165 +392.0,60,116.54,30,0.0,0.0,0.0,165 +392.0,55,58.27,30,0.0,0.0,0.0,165 +349.23,46,116.54,30,0.0,0.0,0.0,165 +329.63,60,58.27,30,0.0,0.0,0.0,165 +329.63,50,116.54,30,0.0,0.0,0.0,165 +329.63,55,58.27,30,0.0,0.0,0.0,165 +392.0,43,116.54,30,0.0,0.0,0.0,165 +392.0,52,58.27,30,0.0,0.0,0.0,165 +349.23,50,87.31,30,0.0,0.0,0.0,165 +349.23,42,43.65,30,0.0,0.0,0.0,165 +349.23,48,87.31,30,0.0,0.0,0.0,165 +349.23,56,43.65,30,0.0,0.0,0.0,165 +440.0,51,87.31,30,0.0,0.0,0.0,165 +440.0,60,43.65,30,0.0,0.0,0.0,165 +349.23,41,87.31,30,0.0,0.0,0.0,165 +349.23,57,43.65,30,0.0,0.0,0.0,165 +392.0,43,130.81,30,0.0,0.0,0.0,165 +392.0,48,65.41,30,0.0,0.0,0.0,165 +349.23,41,130.81,30,0.0,0.0,0.0,165 +392.0,40,65.41,30,0.0,0.0,0.0,165 +392.0,54,130.81,30,0.0,0.0,0.0,165 +392.0,59,65.41,30,0.0,0.0,0.0,165 +440.0,60,130.81,30,0.0,0.0,0.0,165 +440.0,58,65.41,30,0.0,0.0,0.0,165 +293.66,45,146.83,30,0.0,0.0,0.0,165 +293.66,54,73.42,30,0.0,0.0,0.0,165 +293.66,60,146.83,30,0.0,0.0,0.0,165 +293.66,55,73.42,30,0.0,0.0,0.0,165 +329.63,60,146.83,30,0.0,0.0,0.0,165 +329.63,45,73.42,30,0.0,0.0,0.0,165 +349.23,60,146.83,30,0.0,0.0,0.0,165 +349.23,53,73.42,30,0.0,0.0,0.0,165 +233.08,41,116.54,30,0.0,0.0,0.0,165 +233.08,60,58.27,30,0.0,0.0,0.0,165 +261.63,60,116.54,30,0.0,0.0,0.0,165 +293.66,57,58.27,30,0.0,0.0,0.0,165 +293.66,49,116.54,30,0.0,0.0,0.0,165 +293.66,53,58.27,30,0.0,0.0,0.0,165 +329.63,60,116.54,30,0.0,0.0,0.0,165 +329.63,40,58.27,30,0.0,0.0,0.0,165 +349.23,46,174.61,30,0.0,0.0,0.0,165 +349.23,42,87.31,30,0.0,0.0,0.0,165 +349.23,60,174.61,30,0.0,0.0,0.0,165 +349.23,59,87.31,30,0.0,0.0,0.0,165 +440.0,60,174.61,30,0.0,0.0,0.0,165 +440.0,50,87.31,30,0.0,0.0,0.0,165 +349.23,53,174.61,30,0.0,0.0,0.0,165 +349.23,60,87.31,30,0.0,0.0,0.0,165 +392.0,52,130.81,30,0.0,0.0,0.0,165 +392.0,49,65.41,30,0.0,0.0,0.0,165 +349.23,60,130.81,30,0.0,0.0,0.0,165 +329.63,60,65.41,30,0.0,0.0,0.0,165 +329.63,47,130.81,30,0.0,0.0,0.0,165 +329.63,60,65.41,30,0.0,0.0,0.0,165 +349.23,45,130.81,30,0.0,0.0,0.0,165 +349.23,55,65.41,30,0.0,0.0,0.0,165 +293.66,42,146.83,30,0.0,0.0,0.0,165 +293.66,45,73.42,30,0.0,0.0,0.0,165 +293.66,60,146.83,30,0.0,0.0,0.0,165 +293.66,60,73.42,30,0.0,0.0,0.0,165 +329.63,52,146.83,30,0.0,0.0,0.0,165 +329.63,59,73.42,30,0.0,0.0,0.0,165 +349.23,43,146.83,30,0.0,0.0,0.0,165 +349.23,60,73.42,30,0.0,0.0,0.0,165 +392.0,60,116.54,30,0.0,0.0,0.0,165 +392.0,60,58.27,30,0.0,0.0,0.0,165 +349.23,60,116.54,30,0.0,0.0,0.0,165 +329.63,60,58.27,30,0.0,0.0,0.0,165 +329.63,60,116.54,30,0.0,0.0,0.0,165 +329.63,60,58.27,30,0.0,0.0,0.0,165 +392.0,45,116.54,30,0.0,0.0,0.0,165 +392.0,43,58.27,30,0.0,0.0,0.0,165 +349.23,42,87.31,30,0.0,0.0,0.0,165 +349.23,41,43.65,30,0.0,0.0,0.0,165 +349.23,60,87.31,30,0.0,0.0,0.0,165 +349.23,60,43.65,30,0.0,0.0,0.0,165 +440.0,51,87.31,30,0.0,0.0,0.0,165 +440.0,53,43.65,30,0.0,0.0,0.0,165 +349.23,45,87.31,30,0.0,0.0,0.0,165 +349.23,42,43.65,30,0.0,0.0,0.0,165 +392.0,60,130.81,30,0.0,0.0,0.0,165 +392.0,40,65.41,30,0.0,0.0,0.0,165 +349.23,60,130.81,30,0.0,0.0,0.0,165 +392.0,46,65.41,30,0.0,0.0,0.0,165 +392.0,60,130.81,30,0.0,0.0,0.0,165 +392.0,53,65.41,30,0.0,0.0,0.0,165 +392.0,41,130.81,30,0.0,0.0,0.0,165 +392.0,46,65.41,30,0.0,0.0,0.0,165 +587.33,58,146.83,30,0.0,0.0,0.0,165 +587.33,51,73.42,30,0.0,0.0,0.0,165 +587.33,48,146.83,30,0.0,0.0,0.0,165 +587.33,55,73.42,30,0.0,0.0,0.0,165 +659.25,60,146.83,30,0.0,0.0,0.0,165 +659.25,60,73.42,30,0.0,0.0,0.0,165 +698.46,49,146.83,30,0.0,0.0,0.0,165 +698.46,57,73.42,30,0.0,0.0,0.0,165 +1046.5,48,116.54,30,0.0,0.0,0.0,165 +1046.5,45,58.27,30,0.0,0.0,0.0,165 +1046.5,52,116.54,30,0.0,0.0,0.0,165 +1046.5,54,58.27,30,0.0,0.0,0.0,165 +783.99,60,116.54,30,0.0,0.0,0.0,165 +783.99,51,58.27,30,0.0,0.0,0.0,165 +783.99,60,116.54,30,0.0,0.0,0.0,165 +783.99,60,58.27,30,0.0,0.0,0.0,165 +698.46,42,174.61,30,0.0,0.0,0.0,165 +698.46,43,87.31,30,0.0,0.0,0.0,165 +783.99,42,174.61,30,0.0,0.0,0.0,165 +783.99,51,87.31,30,0.0,0.0,0.0,165 +880.0,47,174.61,30,0.0,0.0,0.0,165 +880.0,60,87.31,30,0.0,0.0,0.0,165 +783.99,60,174.61,30,0.0,0.0,0.0,165 +698.46,52,87.31,30,0.0,0.0,0.0,165 +783.99,60,130.81,30,0.0,0.0,0.0,165 +783.99,59,65.41,30,0.0,0.0,0.0,165 +698.46,60,130.81,30,0.0,0.0,0.0,165 +659.25,60,65.41,30,0.0,0.0,0.0,165 +659.25,49,130.81,30,0.0,0.0,0.0,165 +659.25,60,65.41,30,0.0,0.0,0.0,165 +523.25,40,130.81,30,0.0,0.0,0.0,165 +523.25,60,65.41,30,0.0,0.0,0.0,165 +587.33,48,146.83,30,0.0,0.0,0.0,165 +587.33,44,73.42,30,0.0,0.0,0.0,165 +587.33,43,146.83,30,0.0,0.0,0.0,165 +587.33,48,73.42,30,0.0,0.0,0.0,165 +659.25,54,146.83,30,0.0,0.0,0.0,165 +659.25,56,73.42,30,0.0,0.0,0.0,165 +698.46,48,146.83,30,0.0,0.0,0.0,165 +698.46,57,73.42,30,0.0,0.0,0.0,165 +587.33,43,116.54,30,0.0,0.0,0.0,165 +587.33,43,58.27,30,0.0,0.0,0.0,165 +587.33,60,116.54,30,0.0,0.0,0.0,165 +587.33,42,58.27,30,0.0,0.0,0.0,165 +523.25,60,116.54,30,0.0,0.0,0.0,165 +523.25,60,58.27,30,0.0,0.0,0.0,165 +523.25,48,116.54,30,0.0,0.0,0.0,165 +523.25,58,58.27,30,0.0,0.0,0.0,165 +880.0,60,87.31,30,0.0,0.0,0.0,165 +880.0,49,43.65,30,0.0,0.0,0.0,165 +783.99,47,87.31,30,0.0,0.0,0.0,165 +783.99,55,43.65,30,0.0,0.0,0.0,165 +698.46,55,87.31,30,0.0,0.0,0.0,165 +698.46,45,43.65,30,0.0,0.0,0.0,165 +659.25,42,87.31,30,0.0,0.0,0.0,165 +698.46,60,43.65,30,0.0,0.0,0.0,165 +783.99,60,130.81,30,0.0,0.0,0.0,165 +783.99,49,65.41,30,0.0,0.0,0.0,165 +698.46,58,130.81,30,0.0,0.0,0.0,165 +659.25,40,65.41,30,0.0,0.0,0.0,165 +659.25,53,130.81,30,0.0,0.0,0.0,165 +659.25,49,65.41,30,0.0,0.0,0.0,165 +698.46,58,130.81,30,0.0,0.0,0.0,165 +698.46,50,65.41,30,0.0,0.0,0.0,165 +587.33,42,146.83,30,0.0,0.0,0.0,165 +587.33,60,73.42,30,0.0,0.0,0.0,165 +587.33,43,146.83,30,0.0,0.0,0.0,165 +587.33,55,73.42,30,0.0,0.0,0.0,165 +659.25,41,146.83,30,0.0,0.0,0.0,165 +659.25,60,73.42,30,0.0,0.0,0.0,165 +698.46,55,146.83,30,0.0,0.0,0.0,165 +698.46,60,73.42,30,0.0,0.0,0.0,165 +1046.5,43,116.54,30,0.0,0.0,0.0,165 +1046.5,41,58.27,30,0.0,0.0,0.0,165 +1046.5,58,116.54,30,0.0,0.0,0.0,165 +1046.5,56,58.27,30,0.0,0.0,0.0,165 +783.99,45,116.54,30,0.0,0.0,0.0,165 +783.99,51,58.27,30,0.0,0.0,0.0,165 +783.99,42,116.54,30,0.0,0.0,0.0,165 +783.99,55,58.27,30,0.0,0.0,0.0,165 +698.46,58,174.61,30,0.0,0.0,0.0,165 +698.46,43,87.31,30,0.0,0.0,0.0,165 +783.99,43,174.61,30,0.0,0.0,0.0,165 +783.99,60,87.31,30,0.0,0.0,0.0,165 +880.0,60,174.61,30,0.0,0.0,0.0,165 +880.0,60,87.31,30,0.0,0.0,0.0,165 +783.99,59,174.61,30,0.0,0.0,0.0,165 +698.46,60,87.31,30,0.0,0.0,0.0,165 +783.99,60,130.81,30,0.0,0.0,0.0,165 +783.99,60,65.41,30,0.0,0.0,0.0,165 +698.46,60,130.81,30,0.0,0.0,0.0,165 +659.25,60,65.41,30,0.0,0.0,0.0,165 +659.25,40,130.81,30,0.0,0.0,0.0,165 +659.25,58,65.41,30,0.0,0.0,0.0,165 +523.25,60,130.81,30,0.0,0.0,0.0,165 +523.25,53,65.41,30,0.0,0.0,0.0,165 +587.33,55,146.83,30,0.0,0.0,0.0,165 +587.33,60,73.42,30,0.0,0.0,0.0,165 +587.33,60,146.83,30,0.0,0.0,0.0,165 +587.33,48,73.42,30,0.0,0.0,0.0,165 +659.25,46,146.83,30,0.0,0.0,0.0,165 +659.25,52,73.42,30,0.0,0.0,0.0,165 +698.46,60,146.83,30,0.0,0.0,0.0,165 +698.46,60,73.42,30,0.0,0.0,0.0,165 +587.33,57,116.54,30,0.0,0.0,0.0,165 +587.33,48,58.27,30,0.0,0.0,0.0,165 +587.33,60,116.54,30,0.0,0.0,0.0,165 +587.33,60,58.27,30,0.0,0.0,0.0,165 +523.25,60,116.54,30,0.0,0.0,0.0,165 +523.25,40,58.27,30,0.0,0.0,0.0,165 +523.25,46,116.54,30,0.0,0.0,0.0,165 +523.25,51,58.27,30,0.0,0.0,0.0,165 +880.0,60,87.31,30,0.0,0.0,0.0,165 +880.0,53,43.65,30,0.0,0.0,0.0,165 +783.99,54,87.31,30,0.0,0.0,0.0,165 +783.99,60,43.65,30,0.0,0.0,0.0,165 +698.46,45,87.31,30,0.0,0.0,0.0,165 +698.46,43,43.65,30,0.0,0.0,0.0,165 +659.25,50,87.31,30,0.0,0.0,0.0,165 +698.46,60,43.65,30,0.0,0.0,0.0,165 +783.99,53,130.81,30,0.0,0.0,0.0,165 +783.99,60,65.41,30,0.0,0.0,0.0,165 +698.46,60,130.81,30,0.0,0.0,0.0,165 +659.25,53,65.41,30,0.0,0.0,0.0,165 +659.25,47,130.81,30,0.0,0.0,0.0,165 +659.25,50,65.41,30,0.0,0.0,0.0,165 +659.25,60,130.81,30,0.0,0.0,0.0,165 +659.25,60,65.41,30,0.0,0.0,0.0,165 +587.33,60,146.83,30,0.0,0.0,0.0,165 +587.33,60,73.42,30,0.0,0.0,0.0,165 +587.33,60,146.83,30,0.0,0.0,0.0,165 +587.33,48,73.42,30,0.0,0.0,0.0,165 +698.46,60,146.83,30,0.0,0.0,0.0,165 +698.46,60,73.42,30,0.0,0.0,0.0,165 +783.99,56,146.83,30,0.0,0.0,0.0,165 +783.99,52,73.42,30,0.0,0.0,0.0,165 +880.0,60,116.54,30,0.0,0.0,0.0,165 +880.0,60,58.27,30,0.0,0.0,0.0,165 +698.46,47,116.54,30,0.0,0.0,0.0,165 +698.46,52,58.27,30,0.0,0.0,0.0,165 +698.46,45,116.54,30,0.0,0.0,0.0,165 +698.46,60,58.27,30,0.0,0.0,0.0,165 +783.99,44,116.54,30,0.0,0.0,0.0,165 +698.46,60,58.27,30,0.0,0.0,0.0,165 +659.25,44,174.61,30,0.0,0.0,0.0,165 +659.25,44,87.31,30,0.0,0.0,0.0,165 +698.46,58,174.61,30,0.0,0.0,0.0,165 +783.99,52,87.31,30,0.0,0.0,0.0,165 +783.99,41,174.61,30,0.0,0.0,0.0,165 +659.25,58,87.31,30,0.0,0.0,0.0,165 +659.25,44,174.61,30,0.0,0.0,0.0,165 +659.25,60,87.31,30,0.0,0.0,0.0,165 +783.99,60,130.81,30,0.0,0.0,0.0,165 +783.99,59,65.41,30,0.0,0.0,0.0,165 +698.46,49,130.81,30,0.0,0.0,0.0,165 +659.25,49,65.41,30,0.0,0.0,0.0,165 +659.25,60,130.81,30,0.0,0.0,0.0,165 +659.25,60,65.41,30,0.0,0.0,0.0,165 +523.25,60,130.81,30,0.0,0.0,0.0,165 +523.25,60,65.41,30,0.0,0.0,0.0,165 +587.33,55,146.83,30,0.0,0.0,0.0,165 +587.33,45,73.42,30,0.0,0.0,0.0,165 +587.33,55,146.83,30,0.0,0.0,0.0,165 +587.33,59,73.42,30,0.0,0.0,0.0,165 +698.46,59,146.83,30,0.0,0.0,0.0,165 +698.46,60,73.42,30,0.0,0.0,0.0,165 +783.99,56,146.83,30,0.0,0.0,0.0,165 +783.99,60,73.42,30,0.0,0.0,0.0,165 +880.0,60,116.54,30,0.0,0.0,0.0,165 +880.0,43,58.27,30,0.0,0.0,0.0,165 +698.46,48,116.54,30,0.0,0.0,0.0,165 +880.0,48,58.27,30,0.0,0.0,0.0,165 +880.0,60,116.54,30,0.0,0.0,0.0,165 +880.0,60,58.27,30,0.0,0.0,0.0,165 +932.33,60,116.54,30,0.0,0.0,0.0,165 +880.0,60,58.27,30,0.0,0.0,0.0,165 +1046.5,59,87.31,30,0.0,0.0,0.0,165 +1046.5,56,43.65,30,0.0,0.0,0.0,165 +698.46,57,87.31,30,0.0,0.0,0.0,165 +783.99,46,43.65,30,0.0,0.0,0.0,165 +783.99,50,87.31,30,0.0,0.0,0.0,165 +659.25,60,43.65,30,0.0,0.0,0.0,165 +659.25,41,87.31,30,0.0,0.0,0.0,165 +659.25,53,43.65,30,0.0,0.0,0.0,165 +783.99,60,130.81,30,0.0,0.0,0.0,165 +783.99,54,65.41,30,0.0,0.0,0.0,165 +698.46,55,130.81,30,0.0,0.0,0.0,165 +659.25,41,65.41,30,0.0,0.0,0.0,165 +659.25,42,130.81,30,0.0,0.0,0.0,165 +659.25,48,65.41,30,0.0,0.0,0.0,165 +698.46,41,130.81,30,0.0,0.0,0.0,165 +698.46,51,65.41,30,0.0,0.0,0.0,165 +587.33,41,146.83,30,0.0,0.0,0.0,165 +587.33,60,73.42,30,0.0,0.0,0.0,165 +587.33,58,146.83,30,0.0,0.0,0.0,165 +587.33,40,73.42,30,0.0,0.0,0.0,165 +698.46,51,146.83,30,0.0,0.0,0.0,165 +698.46,60,73.42,30,0.0,0.0,0.0,165 +783.99,57,146.83,30,0.0,0.0,0.0,165 +783.99,49,73.42,30,0.0,0.0,0.0,165 +880.0,60,116.54,30,0.0,0.0,0.0,165 +880.0,55,58.27,30,0.0,0.0,0.0,165 +698.46,60,116.54,30,0.0,0.0,0.0,165 +698.46,44,58.27,30,0.0,0.0,0.0,165 +698.46,60,116.54,30,0.0,0.0,0.0,165 +698.46,40,58.27,30,0.0,0.0,0.0,165 +783.99,50,116.54,30,0.0,0.0,0.0,165 +698.46,44,58.27,30,0.0,0.0,0.0,165 +659.25,51,174.61,30,0.0,0.0,0.0,165 +659.25,48,87.31,30,0.0,0.0,0.0,165 +698.46,40,174.61,30,0.0,0.0,0.0,165 +783.99,60,87.31,30,0.0,0.0,0.0,165 +0,60,174.61,30,0.0,0.0,0.0,165 +659.25,60,87.31,30,0.0,0.0,0.0,165 +0,60,174.61,30,0.0,0.0,0.0,165 +783.99,60,87.31,30,0.0,0.0,0.0,165 +783.99,60,130.81,30,0.0,0.0,0.0,165 +698.46,51,65.41,30,0.0,0.0,0.0,165 +659.25,47,130.81,30,0.0,0.0,0.0,165 +659.25,60,65.41,30,0.0,0.0,0.0,165 +659.25,53,130.81,30,0.0,0.0,0.0,165 +523.25,46,65.41,30,0.0,0.0,0.0,165 +523.25,60,130.81,30,0.0,0.0,0.0,165 +587.33,56,65.41,30,0.0,0.0,0.0,165 +587.33,43,146.83,30,0.0,0.0,0.0,165 +587.33,53,73.42,30,0.0,0.0,0.0,165 +587.33,42,146.83,30,0.0,0.0,0.0,165 +698.46,48,73.42,30,0.0,0.0,0.0,165 +698.46,54,146.83,30,0.0,0.0,0.0,165 +783.99,60,73.42,30,0.0,0.0,0.0,165 +783.99,60,146.83,30,0.0,0.0,0.0,165 +880.0,42,73.42,30,0.0,0.0,0.0,165 +880.0,44,116.54,30,0.0,0.0,0.0,165 +698.46,57,58.27,30,0.0,0.0,0.0,165 +880.0,60,116.54,30,0.0,0.0,0.0,165 +880.0,60,58.27,30,0.0,0.0,0.0,165 +880.0,60,116.54,30,0.0,0.0,0.0,165 +932.33,53,58.27,30,0.0,0.0,0.0,165 +880.0,59,116.54,30,0.0,0.0,0.0,165 +1046.5,42,58.27,30,0.0,0.0,0.0,165 +1046.5,48,87.31,30,0.0,0.0,0.0,165 +698.46,43,43.65,30,0.0,0.0,0.0,165 +783.99,45,87.31,30,0.0,0.0,0.0,165 +0,60,43.65,30,0.0,0.0,0.0,165 +659.25,60,87.31,30,0.0,0.0,0.0,165 +0,44,43.65,30,0.0,0.0,0.0,165 +783.99,54,87.31,30,0.0,0.0,0.0,165 +783.99,43,43.65,30,0.0,0.0,0.0,165 +698.46,48,130.81,30,0.0,0.0,0.0,165 +659.25,60,65.41,30,0.0,0.0,0.0,165 +659.25,43,130.81,30,0.0,0.0,0.0,165 +659.25,60,65.41,30,0.0,0.0,0.0,165 +659.25,42,130.81,30,0.0,0.0,0.0,165 +659.25,43,65.41,30,0.0,0.0,0.0,165 \ No newline at end of file diff --git a/drums/drum1.txt b/drums/drum1.txt new file mode 100644 index 0000000..be351d0 --- /dev/null +++ b/drums/drum1.txt @@ -0,0 +1 @@ +[0.0, 0.0, 1.9921875, 1.9921875, 1.984375, 0.0, 1.9921875, 0.0, 1.9921875, 1.984375, 1.9921875, 0.0, 1.9921875, 0.0, 1.984375, 0.0, 0.0078125, 0.0078125, 0.0234375, 0.015625, 0.015625, 0.0, 0.0, 0.015625, 0.0234375, 0.0234375, 0.0078125, 0.0390625, 0.0703125, 0.109375, 0.1015625, 0.09375, 0.078125, 0.0625, 0.0703125, 0.0703125, 0.0859375, 0.1015625, 0.125, 0.1796875, 0.2109375, 0.21875, 0.1953125, 0.2265625, 0.2734375, 0.3046875, 0.265625, 0.1796875, 0.1171875, 0.203125, 0.3203125, 0.3203125, 0.2421875, 0.203125, 0.21875, 0.2265625, 0.2421875, 0.3359375, 0.390625, 0.265625, 0.09375, 0.0625, 0.1796875, 0.3359375, 0.3828125, 0.2265625, 1.984375, 1.90625, 1.953125, 1.9765625, 0.0234375, 0.140625, 0.2421875, 0.171875, 0.0546875, 0.0859375, 0.1875, 0.2265625, 0.1640625, 0.078125, 1.984375, 1.8515625, 1.78125, 1.796875, 1.8515625, 1.875, 1.8828125, 0.0, 0.109375, 0.0546875, 1.9609375, 1.9609375, 0.015625, 0.078125, 0.0234375, 1.84375, 1.6484375, 1.671875, 1.7890625, 1.8359375, 1.7578125, 1.6171875, 1.5546875, 1.65625, 1.8515625, 1.90625, 1.84375, 1.71875, 1.6328125, 1.6328125, 1.6640625, 1.6484375, 1.5703125, 1.5234375, 1.5546875, 1.640625, 1.7265625, 1.6875, 1.578125, 1.515625, 1.4921875, 1.5234375, 1.5390625, 1.453125, 1.3671875, 1.3671875, 1.4765625, 1.59375, 1.6640625, 1.5625, 1.46875, 1.6015625, 1.8359375, 1.8359375, 1.7109375, 1.6640625, 1.75, 1.875, 1.921875, 1.8125, 1.6171875, 1.546875, 1.625, 1.8046875, 1.9375, 1.8671875, 1.71875, 1.7265625, 1.8671875, 1.90625, 1.8828125, 1.90625, 1.953125, 0.015625, 0.0, 1.90625, 1.7890625, 1.8359375, 1.953125, 0.03125, 0.015625, 1.953125, 1.890625, 1.9296875, 0.015625, 0.1015625, 0.1171875, 0.078125, 0.0234375, 0.1171875, 0.2109375, 0.140625, 0.0078125, 0.046875, 0.2109375, 0.2578125, 0.2109375, 0.1171875, 0.0703125, 0.0546875, 0.1171875, 0.15625, 0.1953125, 0.203125, 0.2265625, 0.3515625, 0.484375, 0.515625, 0.4375, 0.3984375, 0.3671875, 0.3046875, 0.265625, 0.4140625, 0.5625, 0.4765625, 0.3046875, 0.3359375, 0.5234375, 0.6015625, 0.5625, 0.4453125, 0.359375, 0.390625, 0.4609375, 0.3671875, 0.2421875, 0.3046875, 0.4609375, 0.46875, 0.359375, 0.375, 0.4140625, 0.296875, 0.1640625, 0.2421875, 0.4140625, 0.3828125, 0.234375, 0.1328125, 0.15625, 0.2578125, 0.359375, 0.2734375, 0.1015625, 1.984375, 1.9921875, 0.0234375, 0.046875, 0.0625, 0.046875, 0.0625, 0.1015625, 0.1796875, 0.1953125, 0.125, 1.9765625, 1.890625, 1.8828125, 1.984375, 0.078125, 0.03125, 1.8984375, 1.9140625, 1.9921875, 1.9921875, 1.9296875, 1.8984375, 1.953125, 0.0390625, 0.0625, 1.9375, 1.7421875, 1.734375, 1.8125, 1.796875, 1.6640625, 1.5859375, 1.59375, 1.734375, 1.8984375, 1.8515625, 1.6875, 1.59375, 1.609375, 1.5859375, 1.5390625, 1.5078125, 1.4765625, 1.453125, 1.4609375, 1.6015625, 1.7265625, 1.6640625, 1.4921875, 1.515625, 1.65625, 1.71875, 1.65625, 1.5625, 1.46875, 1.4453125, 1.453125, 1.4375, 1.4453125, 1.5703125, 1.71875, 1.640625, 1.484375, 1.5625, 1.7890625, 1.78125, 1.625, 1.53125, 1.59375, 1.71875, 1.859375, 1.921875, 1.8984375, 1.8984375, 1.9140625, 1.859375, 1.8046875, 1.7734375, 1.7890625, 1.765625, 1.734375, 1.78125, 1.859375, 1.8359375, 1.7890625, 1.8125, 1.90625, 1.9296875, 1.890625, 1.921875, 1.96875, 1.9296875, 1.859375, 1.84375, 1.9296875, 0.0703125, 0.1875, 0.109375, 1.9453125, 1.8671875, 1.9140625, 1.9140625, 1.9375, 0.078125, 0.2734375, 0.2890625, 0.203125, 0.1328125, 0.1484375, 0.203125, 0.234375, 0.203125, 0.109375, 0.1171875, 0.1796875, 0.1875, 0.1796875, 0.2421875, 0.34375, 0.359375, 0.328125, 0.3359375, 0.3828125, 0.359375, 0.3125, 0.359375, 0.46875, 0.4140625, 0.3046875, 0.34375, 0.484375, 0.453125, 0.3125, 0.328125, 0.4609375, 0.5546875, 0.53125, 0.390625, 0.28125, 0.3359375, 0.53125, 0.578125, 0.4921875, 0.40625, 0.34375, 0.28125, 0.2109375, 0.2421875, 0.2890625, 0.2421875, 0.140625, 0.171875, 0.2578125, 0.265625, 0.1796875, 0.1640625, 0.2109375, 0.140625, 0.015625, 0.078125, 0.2265625, 0.25, 0.1640625, 0.1171875, 0.15625, 0.2109375, 0.21875, 0.1640625, 0.0390625, 1.9609375, 1.953125, 0.0625, 0.1484375, 0.109375, 1.9375, 1.828125, 1.828125, 1.84375, 1.8828125, 1.8984375, 1.921875, 1.9453125, 1.9921875, 1.984375, 1.9453125, 1.8984375, 1.875, 1.90625, 1.9609375, 1.96875, 1.9140625, 1.7734375, 1.6484375, 1.65625, 1.75, 1.78125, 1.71875, 1.65625, 1.640625, 1.5703125, 1.53125, 1.5859375, 1.703125, 1.7734375, 1.75, 1.6796875, 1.59375, 1.6171875, 1.6875, 1.6796875, 1.6171875, 1.5859375, 1.5859375, 1.5625, 1.4921875, 1.484375, 1.5078125, 1.5234375, 1.5234375, 1.609375, 1.7109375, 1.6328125, 1.484375, 1.484375, 1.6328125, 1.7734375, 1.8203125, 1.8515625, 1.859375, 1.7421875, 1.6171875, 1.609375, 1.734375, 1.78125, 1.75, 1.78125, 1.8515625, 1.921875, 1.96875, 1.8671875, 1.734375, 1.71875, 1.8203125, 1.84375, 1.78125, 1.734375, 1.734375, 1.7890625, 1.84375, 1.890625, 1.90625, 1.9765625, 0.0625, 0.1015625, 0.0703125, 0.015625, 1.9765625, 1.9453125, 1.953125, 1.953125, 1.9765625, 0.0234375, 0.109375, 0.1875, 0.25, 0.2421875, 0.1953125, 0.15625, 0.1640625, 0.25, 0.3359375, 0.265625, 0.109375, 0.078125, 0.203125, 0.2890625, 0.3046875, 0.2734375, 0.2578125, 0.3125, 0.4296875, 0.4453125, 0.3671875, 0.265625, 0.1875, 0.1875, 0.2421875, 0.3828125, 0.515625, 0.609375, 0.609375, 0.5546875, 0.4921875, 0.515625, 0.59375, 0.6171875, 0.59375, 0.5859375, 0.6171875, 0.5703125, 0.4765625, 0.3828125, 0.34375, 0.3515625, 0.40625, 0.3828125, 0.3203125, 0.2890625, 0.3125, 0.375, 0.4140625, 0.4140625, 0.359375, 0.234375, 0.125, 0.046875, 0.0625, 0.1484375, 0.25, 0.203125, 0.0625, 0.0078125, 0.046875, 0.03125, 1.9765625, 0.046875, 0.2109375, 0.28125, 0.2109375, 0.0703125, 1.953125, 1.9921875, 0.125, 0.0859375, 1.921875, 1.875, 1.9921875, 0.0, 1.921875, 1.8984375, 1.953125, 0.0078125, 0.03125, 1.984375, 1.921875, 1.921875, 1.953125, 1.90625, 1.7734375, 1.7265625, 1.7734375, 1.78125, 1.7578125, 1.8046875, 1.9140625, 1.84375, 1.6640625, 1.5703125, 1.640625, 1.6875, 1.703125, 1.71875, 1.7578125, 1.765625, 1.71875, 1.6875, 1.6484375, 1.671875, 1.7109375, 1.7421875, 1.703125, 1.640625, 1.546875, 1.4921875, 1.484375, 1.46875, 1.4453125, 1.3984375, 1.390625, 1.4453125, 1.578125, 1.6640625, 1.6875, 1.6328125, 1.5859375, 1.6015625, 1.6953125, 1.7578125, 1.7734375, 1.7109375, 1.625, 1.65625, 1.7734375, 1.796875, 1.734375, 1.75, 1.859375, 1.8125, 1.6640625, 1.6640625, 1.8203125, 1.8515625, 1.71875, 1.6484375, 1.6875, 1.7734375, 1.8828125, 1.890625, 1.84375, 1.859375, 1.96875, 0.078125, 0.109375, 0.078125, 1.9921875, 1.9609375, 1.96875, 1.9921875, 0.0078125, 0.0546875, 0.1328125, 0.15625, 0.140625, 0.078125, 0.0078125, 1.984375, 1.984375, 0.109375, 0.25, 0.234375, 0.0859375, 0.1015625, 0.2578125, 0.2890625, 0.1328125, 0.0234375, 0.046875, 0.0859375, 0.125, 0.171875, 0.2265625, 0.21875, 0.1875, 0.2109375, 0.2890625, 0.328125, 0.328125, 0.3046875, 0.328125, 0.3359375, 0.34375, 0.3984375, 0.4609375, 0.5390625, 0.578125, 0.5234375, 0.3984375, 0.375, 0.46875, 0.5546875, 0.578125, 0.4921875, 0.3671875, 0.296875, 0.3359375, 0.4140625, 0.4765625, 0.5078125, 0.515625, 0.4765625, 0.40625, 0.34375, 0.2734375, 0.2109375, 0.1484375, 0.1953125, 0.296875, 0.3203125, 0.2109375, 0.140625, 0.1484375, 0.234375, 0.3125, 0.3125, 0.2265625, 0.09375, 0.0078125, 1.9921875, 0.0703125, 0.1484375, 0.203125, 0.234375, 0.234375, 0.140625, 1.96875, 1.9453125, 0.0625, 0.15625, 0.171875, 0.0703125, 1.9375, 1.8984375, 1.984375, 1.96875, 1.859375, 1.8046875, 1.8828125, 1.984375, 0.0234375, 1.953125, 1.796875, 1.765625, 1.859375, 1.9453125, 1.9140625, 1.8125, 1.6796875, 1.671875, 1.765625, 1.8125, 1.734375, 1.71875, 1.75, 1.734375, 1.65625, 1.6015625, 1.640625, 1.6875, 1.7109375, 1.6875, 1.6171875, 1.5703125, 1.6015625, 1.6484375, 1.6640625, 1.65625, 1.5859375, 1.5234375, 1.4609375, 1.421875, 1.4375, 1.5234375, 1.6484375, 1.6171875, 1.484375, 1.4140625, 1.484375, 1.5546875, 1.5390625, 1.5703125, 1.640625, 1.6796875, 1.6796875, 1.6953125, 1.7578125, 1.7109375, 1.609375, 1.59375, 1.703125, 1.75, 1.71875, 1.671875, 1.65625, 1.65625, 1.671875, 1.6875, 1.71875, 1.796875, 1.8984375, 1.9765625, 1.9765625, 1.9453125, 1.890625, 1.8828125, 1.8984375, 1.9140625, 1.8828125, 1.9140625, 1.984375, 0.046875, 0.078125, 0.015625, 1.9140625, 1.8359375, 1.859375, 1.9296875, 0.046875, 0.0703125, 0.0234375, 0.03125, 0.15625, 0.15625, 0.046875, 0.0234375, 0.171875, 0.2109375, 0.09375, 0.046875, 0.1015625, 0.2265625, 0.328125, 0.3203125, 0.21875, 0.1484375, 0.15625, 0.2265625, 0.265625, 0.2734375, 0.2265625, 0.265625, 0.3984375, 0.40625, 0.28125, 0.1953125, 0.2421875, 0.3203125, 0.359375, 0.3671875, 0.328125, 0.34375, 0.390625, 0.4921875, 0.5625, 0.5859375, 0.53125, 0.453125, 0.3671875, 0.3984375, 0.5078125, 0.5, 0.3671875, 0.296875, 0.3671875, 0.3984375, 0.34375, 0.2890625, 0.2890625, 0.25, 0.203125, 0.1640625, 0.1875, 0.2109375, 0.2265625, 0.203125, 0.15625, 0.1875, 0.2734375, 0.3359375, 0.3125, 0.2265625, 0.109375, 0.1015625, 0.1875, 0.25, 0.2421875, 0.1953125, 0.15625, 0.09375, 0.0234375, 1.9765625, 1.9375, 1.921875, 1.9375, 1.9609375, 0.0078125, 1.96875, 1.875, 1.8984375, 0.03125, 0.0390625, 1.8984375, 1.8359375, 1.9375, 0.0078125, 1.9296875, 1.8671875, 1.8515625, 1.8671875, 1.8515625, 1.8203125, 1.8046875, 1.78125, 1.796875, 1.7890625, 1.78125, 1.7890625, 1.8515625, 1.8515625, 1.796875, 1.7421875, 1.71875, 1.671875, 1.5703125, 1.546875, 1.6171875, 1.7109375, 1.75, 1.75, 1.703125, 1.609375, 1.5, 1.484375, 1.59375, 1.640625, 1.5859375, 1.53125, 1.5546875, 1.5625, 1.515625, 1.5390625, 1.6015625, 1.625, 1.546875, 1.46875, 1.4765625, 1.5, 1.5546875, 1.5703125, 1.5390625, 1.578125, 1.671875, 1.734375, 1.6953125, 1.6875, 1.765625, 1.7890625, 1.734375, 1.671875, 1.671875, 1.6875, 1.7265625, 1.7734375, 1.84375, 1.84375, 1.7734375, 1.78125, 1.8671875, 1.96875, 1.9921875, 0.015625, 0.0546875, 0.015625, 1.8828125, 1.828125, 1.875, 1.9765625, 0.0390625, 0.0546875, 0.0078125, 0.0, 0.0546875, 0.0703125, 1.9765625, 1.9375, 1.96875, 0.046875, 0.0859375, 0.0859375, 0.03125, 0.0234375, 0.0859375, 0.1484375, 0.1953125, 0.1875, 0.1640625, 0.1328125, 0.15625, 0.21875, 0.3125, 0.3046875, 0.21875, 0.1328125, 0.1484375, 0.1640625, 0.1875, 0.2421875, 0.359375, 0.4375, 0.4609375, 0.40625, 0.296875, 0.2890625, 0.3828125, 0.4765625, 0.4453125, 0.4609375, 0.53125, 0.546875, 0.4609375, 0.4140625, 0.4765625, 0.515625, 0.4453125, 0.4296875, 0.4921875, 0.5078125, 0.3671875, 0.265625, 0.25, 0.2890625, 0.3203125, 0.296875, 0.25, 0.21875, 0.25, 0.28125, 0.2578125, 0.2421875, 0.2265625, 0.25, 0.296875, 0.28125, 0.1640625, 0.1171875, 0.1640625, 0.1953125, 0.1640625, 0.109375, 0.109375, 0.0859375, 0.03125, 0.0, 0.0234375, 0.0234375, 1.9921875, 0.0078125, 0.09375, 0.1640625, 0.140625, 0.0703125, 1.9609375, 1.953125, 0.0390625, 0.109375, 0.109375, 0.0546875, 0.015625, 1.9453125, 1.8828125, 1.8515625, 1.890625, 1.9140625, 1.8984375, 1.8359375, 1.75, 1.75, 1.84375, 1.921875, 1.8984375, 1.84375, 1.8125, 1.7734375, 1.703125, 1.6953125, 1.7265625, 1.7578125, 1.71875, 1.6875, 1.671875, 1.6875, 1.671875, 1.6640625, 1.6328125, 1.6328125, 1.640625, 1.640625, 1.6015625, 1.5859375, 1.578125, 1.546875, 1.4453125, 1.4296875, 1.5, 1.5703125, 1.546875, 1.5625, 1.6328125, 1.703125, 1.71875, 1.6875, 1.6171875, 1.6015625, 1.6953125, 1.7578125, 1.7421875, 1.6796875, 1.609375, 1.625, 1.7109375, 1.8203125, 1.8359375, 1.796875, 1.7265625, 1.734375, 1.84375, 1.890625, 1.796875, 1.71875, 1.7734375, 1.84375, 1.84375, 1.84375, 1.875, 1.8984375, 1.90625, 1.8828125, 1.84375, 1.8515625, 1.8828125, 1.921875, 1.9140625, 1.9375, 1.984375, 0.0, 1.9375, 1.921875, 1.9765625, 0.0078125, 1.9609375, 1.9375, 0.0390625, 0.125, 0.1328125, 0.109375, 0.1328125, 0.109375, 0.0390625, 0.0390625, 0.1171875, 0.1640625, 0.1484375, 0.09375, 0.0859375, 0.1015625, 0.15625, 0.171875, 0.140625, 0.1484375, 0.203125, 0.2890625, 0.34375, 0.3671875, 0.3203125, 0.2734375, 0.21875, 0.2265625, 0.265625, 0.3515625, 0.40625, 0.4375, 0.421875, 0.40625, 0.4375, 0.46875, 0.453125, 0.453125, 0.46875, 0.4453125, 0.390625, 0.3359375, 0.359375, 0.3984375, 0.4453125, 0.4453125, 0.40625, 0.3359375, 0.3203125, 0.296875, 0.25, 0.21875, 0.1875, 0.2109375, 0.2578125, 0.296875, 0.265625, 0.265625, 0.3125, 0.3359375, 0.2578125, 0.1875, 0.1640625, 0.1796875, 0.2109375, 0.203125, 0.1484375, 0.09375, 0.046875, 0.0703125, 0.1171875, 0.1640625, 0.1484375, 0.1171875, 0.0625, 0.0234375, 1.96875, 1.984375, 0.0546875, 0.078125, 0.03125, 1.984375, 0.0390625, 0.078125, 0.0703125, 0.0078125, 1.9609375, 1.8984375, 1.8671875, 1.8984375, 1.953125, 1.984375, 1.9140625, 1.8359375, 1.7890625, 1.8125, 1.8828125, 1.890625, 1.796875, 1.71875, 1.78125, 1.8515625, 1.84375, 1.7734375, 1.71875, 1.671875, 1.6640625, 1.671875, 1.6953125, 1.671875, 1.625, 1.5625, 1.5390625, 1.5625, 1.6484375, 1.6875, 1.640625, 1.5703125, 1.5703125, 1.5625, 1.546875, 1.53125, 1.53125, 1.5390625, 1.5546875, 1.5625, 1.59375, 1.578125, 1.546875, 1.53125, 1.59375, 1.6171875, 1.578125, 1.546875, 1.640625, 1.7109375, 1.703125, 1.6875, 1.7578125, 1.8203125, 1.8359375, 1.8203125, 1.765625, 1.75, 1.78125, 1.8046875, 1.7578125, 1.7265625, 1.8203125, 1.90625, 1.9375, 1.90625, 1.84375, 1.84375, 1.921875, 0.0, 1.9765625, 1.921875, 1.875, 1.875, 1.8984375, 1.9296875, 1.96875, 1.96875, 1.953125, 1.9375, 1.953125, 1.984375, 1.96875, 1.9921875, 0.0234375, 0.09375, 0.1328125, 0.140625, 0.0625, 0.0078125, 0.0078125, 0.046875, 0.03125, 0.046875, 0.1015625, 0.140625, 0.1328125, 0.125, 0.1796875, 0.234375, 0.25, 0.2265625, 0.1953125, 0.1796875, 0.1796875, 0.21875, 0.2421875, 0.265625, 0.265625, 0.3046875, 0.375, 0.4453125, 0.4296875, 0.4140625, 0.4140625, 0.421875, 0.359375, 0.359375, 0.4375, 0.5078125, 0.4453125, 0.375, 0.421875, 0.4765625, 0.46875, 0.421875, 0.375, 0.3515625, 0.375, 0.359375, 0.3046875, 0.2578125, 0.3359375, 0.375, 0.3125, 0.21875, 0.234375, 0.2890625, 0.3125, 0.3046875, 0.2109375, 0.1640625, 0.203125, 0.2890625, 0.3125, 0.2578125, 0.1796875, 0.1015625, 0.09375, 0.1015625, 0.1328125, 0.140625, 0.140625, 0.1328125, 0.109375, 0.078125, 0.0078125, 1.9921875, 0.03125, 0.0859375, 0.1015625, 0.0546875, 0.0, 1.9609375, 1.9765625, 1.9921875, 1.9375, 1.8828125, 1.859375, 1.859375, 1.8984375, 1.9375, 1.96875, 1.9609375, 1.9140625, 1.8828125, 1.859375, 1.875, 1.8671875, 1.8828125, 1.890625, 1.8671875, 1.8046875, 1.7578125, 1.71875, 1.7109375, 1.6953125, 1.6640625, 1.6640625, 1.671875, 1.75, 1.7734375, 1.734375, 1.6875, 1.703125, 1.7421875, 1.7109375, 1.6640625, 1.6015625, 1.6015625, 1.6484375, 1.6875, 1.6171875, 1.53125, 1.5234375, 1.546875, 1.5078125, 1.515625, 1.5703125, 1.625, 1.578125, 1.5234375, 1.5625, 1.625, 1.65625, 1.625, 1.59375, 1.5859375, 1.6484375, 1.71875, 1.7109375, 1.6953125, 1.7109375, 1.7421875, 1.8046875, 1.8203125, 1.8046875, 1.765625, 1.7734375, 1.78125, 1.8125, 1.796875, 1.765625, 1.7421875, 1.8125, 1.875, 1.8984375, 1.8671875, 1.84375, 1.8359375, 1.8515625, 1.9140625, 1.9921875, 0.0, 1.9453125, 1.8984375, 1.984375, 0.0546875, 0.0, 1.9375, 1.9765625, 0.0546875, 0.0546875, 0.0390625, 0.0, 0.0, 0.015625, 0.046875, 0.0703125, 0.0859375, 0.0546875, 0.046875, 0.0703125, 0.125, 0.15625, 0.1640625, 0.140625, 0.125, 0.1640625, 0.1953125, 0.1953125, 0.15625, 0.15625, 0.1640625, 0.21875, 0.25, 0.25, 0.234375, 0.296875, 0.34375, 0.3046875, 0.2578125, 0.265625, 0.3046875, 0.34375, 0.359375, 0.3515625, 0.3828125, 0.4296875, 0.5, 0.5, 0.46875, 0.4609375, 0.421875, 0.390625, 0.3671875, 0.375, 0.375, 0.34375, 0.296875, 0.328125, 0.359375, 0.328125, 0.296875, 0.296875, 0.3046875, 0.2421875, 0.2109375, 0.2421875, 0.296875, 0.28125, 0.2421875, 0.2421875, 0.25, 0.1796875, 0.1328125, 0.1640625, 0.234375, 0.2109375, 0.1796875, 0.1953125, 0.1953125, 0.1328125, 0.0625, 0.015625, 0.0234375, 0.015625, 0.0390625, 0.03125, 0.046875, 0.0703125, 0.0625, 1.9765625, 1.9140625, 1.9296875, 1.9921875, 0.0234375, 0.015625, 0.0078125, 1.984375, 1.9765625, 1.9765625, 1.9296875, 1.890625, 1.859375, 1.8671875, 1.8515625, 1.8515625, 1.8515625, 1.8515625, 1.875, 1.859375, 1.8046875, 1.734375, 1.7265625, 1.734375, 1.7421875, 1.75, 1.765625, 1.78125, 1.78125, 1.765625, 1.734375, 1.71875, 1.6796875, 1.65625, 1.65625, 1.6484375, 1.625, 1.59375, 1.6171875, 1.640625, 1.6796875, 1.6640625, 1.578125, 1.5234375, 1.5390625, 1.578125, 1.578125, 1.5546875, 1.578125, 1.6015625, 1.5703125, 1.5703125, 1.6171875, 1.6875, 1.71875, 1.71875, 1.7109375, 1.703125, 1.6484375, 1.640625, 1.703125, 1.7578125, 1.75, 1.6953125, 1.6953125, 1.71875, 1.7421875, 1.765625, 1.75, 1.75, 1.765625, 1.796875, 1.8671875, 1.8984375, 1.875, 1.8359375, 1.8828125, 1.9453125, 1.9140625, 1.8828125, 1.8984375, 1.921875, 1.90625, 1.8828125, 1.9375, 0.0, 0.0078125, 0.0, 1.984375, 1.9921875, 1.9921875, 0.015625, 0.015625, 0.0390625, 0.046875, 0.0625, 0.0390625, 0.0078125, 0.0234375, 0.0625, 0.1484375, 0.1953125, 0.1640625, 0.140625, 0.1328125, 0.1796875, 0.21875, 0.2421875, 0.2578125, 0.25, 0.2734375, 0.296875, 0.28125, 0.2578125, 0.2421875, 0.2578125, 0.2890625, 0.3125, 0.3046875, 0.3046875, 0.3125, 0.3359375, 0.328125, 0.328125, 0.3125, 0.328125, 0.359375, 0.3828125, 0.40625, 0.4140625, 0.453125, 0.4609375, 0.4609375, 0.421875, 0.421875, 0.40625, 0.390625, 0.3671875, 0.3515625, 0.359375, 0.3515625, 0.359375, 0.3515625, 0.3515625, 0.3125, 0.2578125, 0.2734375, 0.2734375, 0.2421875, 0.2109375, 0.21875, 0.2578125, 0.2265625, 0.1875, 0.171875, 0.1953125, 0.203125, 0.2109375, 0.171875, 0.15625, 0.1484375, 0.15625, 0.1015625, 0.0703125, 0.09375, 0.125, 0.1015625, 0.0390625, 0.0703125, 0.0859375, 0.046875, 1.953125, 1.9375, 1.9453125, 1.9765625, 1.9765625, 1.96875, 1.9375, 1.953125, 1.9609375, 1.9609375, 1.9375, 1.953125, 1.9609375, 1.9453125, 1.921875, 1.8671875, 1.8203125, 1.8359375, 1.8515625, 1.84375, 1.8203125, 1.796875, 1.8125, 1.828125, 1.8359375, 1.78125, 1.7265625, 1.6953125, 1.71875, 1.7109375, 1.703125, 1.7109375, 1.7265625, 1.7109375, 1.703125, 1.671875, 1.6640625, 1.6484375, 1.6484375, 1.609375, 1.59375, 1.6015625, 1.625, 1.578125, 1.515625, 1.546875, 1.609375, 1.6328125, 1.625, 1.5703125, 1.546875, 1.5859375, 1.640625, 1.65625, 1.625, 1.6328125, 1.6484375, 1.6171875, 1.609375, 1.625, 1.6796875, 1.6953125, 1.7109375, 1.7109375, 1.7265625, 1.7578125, 1.796875, 1.8046875, 1.796875, 1.765625, 1.734375, 1.75, 1.7734375, 1.84375, 1.8828125, 1.8671875, 1.8203125, 1.875, 1.9375, 1.921875, 1.859375, 1.828125, 1.8515625, 1.8671875, 1.890625, 1.9296875, 1.9453125, 1.953125, 1.9375, 1.953125, 1.96875, 1.9765625, 0.0, 0.0, 0.0078125, 0.0234375, 0.0546875, 0.0390625, 0.03125, 0.0703125, 0.1171875, 0.125, 0.109375, 0.1328125, 0.1796875, 0.15625, 0.1328125, 0.1328125, 0.1875, 0.2109375, 0.234375, 0.2109375, 0.1953125, 0.203125, 0.234375, 0.2109375, 0.1953125, 0.25, 0.3203125, 0.328125, 0.2890625, 0.328125, 0.375, 0.40625, 0.390625, 0.390625, 0.359375, 0.3359375, 0.3125, 0.34375, 0.3984375, 0.4296875, 0.46875, 0.4921875, 0.5078125, 0.453125, 0.375, 0.3828125, 0.421875, 0.4609375, 0.453125, 0.40625, 0.359375, 0.3515625, 0.359375, 0.3125, 0.265625, 0.234375, 0.2578125, 0.2890625, 0.3203125, 0.3125, 0.2734375, 0.21875, 0.1640625, 0.1484375, 0.1640625, 0.1796875, 0.171875, 0.1953125, 0.171875, 0.1328125, 0.0859375, 0.1171875, 0.1796875, 0.1796875, 0.1484375, 0.0859375, 0.0546875, 0.015625, 1.9921875, 0.0234375, 0.046875, 0.0390625, 0.0, 1.953125, 1.9453125, 1.921875, 1.9453125, 1.9609375, 0.0, 0.015625, 0.0, 1.9921875, 1.96875, 1.9765625, 1.96875, 1.9140625, 1.8359375, 1.828125, 1.84375, 1.859375, 1.828125, 1.796875, 1.7578125, 1.78125, 1.8203125, 1.8203125, 1.8203125, 1.8046875, 1.8125, 1.78125, 1.7578125, 1.7265625, 1.7109375, 1.6953125, 1.7109375, 1.703125, 1.71875, 1.7109375, 1.6953125, 1.6640625, 1.6484375, 1.6328125, 1.640625, 1.640625, 1.6171875, 1.609375, 1.59375, 1.5703125, 1.5625, 1.546875, 1.5390625, 1.515625, 1.5234375, 1.5625, 1.625, 1.6171875, 1.5703125, 1.5625, 1.5859375, 1.6328125, 1.6640625, 1.6796875, 1.671875, 1.671875, 1.7109375, 1.6953125, 1.6796875, 1.7265625, 1.7890625, 1.765625, 1.7265625, 1.71875, 1.765625, 1.8359375, 1.859375, 1.8515625, 1.796875, 1.7890625, 1.8125, 1.875, 1.9296875, 1.90625, 1.875, 1.90625, 1.96875, 1.953125, 1.8984375, 1.9140625, 1.9765625, 1.9765625, 1.921875, 1.921875, 1.9609375, 1.96875, 1.96875, 1.9765625, 0.0078125, 0.0234375, 0.0234375, 0.03125, 0.0390625, 0.078125, 0.1015625, 0.1328125, 0.140625, 0.140625, 0.15625, 0.1640625, 0.1796875, 0.1796875, 0.171875, 0.1328125, 0.1015625, 0.1640625, 0.2421875, 0.2578125, 0.203125, 0.203125, 0.2265625, 0.2265625, 0.234375, 0.234375, 0.265625, 0.2890625, 0.3203125, 0.3046875, 0.28125, 0.3046875, 0.359375, 0.40625, 0.4140625, 0.4140625, 0.4140625, 0.3828125, 0.375, 0.3984375, 0.4453125, 0.4375, 0.3984375, 0.3984375, 0.390625, 0.375, 0.328125, 0.3671875, 0.421875, 0.375, 0.3046875, 0.3046875, 0.3671875, 0.3671875, 0.3046875, 0.28125, 0.2734375, 0.2890625, 0.2734375, 0.25, 0.2109375, 0.21875, 0.2265625, 0.203125, 0.1328125, 0.1328125, 0.1484375, 0.140625, 0.109375, 0.125, 0.1875, 0.2109375, 0.1875, 0.1328125, 0.0703125, 0.03125, 0.03125, 0.0390625, 0.0546875, 0.0546875, 0.0546875, 0.046875, 0.015625, 1.984375, 1.953125, 1.96875, 0.0, 0.015625, 0.0078125, 1.9921875, 1.984375, 1.9453125, 1.890625, 1.875, 1.875, 1.9140625, 1.9453125, 1.9453125, 1.8984375, 1.890625, 1.8828125, 1.8828125, 1.859375, 1.8359375, 1.796875, 1.75, 1.7421875, 1.7421875, 1.7578125, 1.7890625, 1.7890625, 1.7578125, 1.71875, 1.7265625, 1.765625, 1.734375, 1.640625, 1.6171875, 1.6328125, 1.671875, 1.6875, 1.65625, 1.6328125, 1.6328125, 1.6640625, 1.625, 1.5625, 1.5234375, 1.546875, 1.5546875, 1.5546875, 1.5703125, 1.609375, 1.59375, 1.5703125, 1.5859375, 1.6484375, 1.6796875, 1.6640625, 1.6796875, 1.6953125, 1.703125, 1.6875, 1.6484375, 1.640625, 1.65625, 1.71875, 1.78125, 1.796875, 1.8046875, 1.7734375, 1.765625, 1.7890625, 1.7890625, 1.8046875, 1.8125, 1.8203125, 1.8359375, 1.8359375, 1.8515625, 1.859375, 1.90625, 1.953125, 1.9296875, 1.8671875, 1.890625, 1.953125, 1.96875, 1.921875, 1.9453125, 0.0078125, 0.015625, 1.953125, 1.96875, 0.0078125, 0.03125, 0.0078125, 1.9921875, 1.984375, 0.0078125, 0.03125, 0.0859375, 0.125, 0.125, 0.109375, 0.109375, 0.140625, 0.15625, 0.1796875, 0.1796875, 0.1875, 0.1953125, 0.2109375, 0.21875, 0.203125, 0.171875, 0.140625, 0.1640625, 0.203125, 0.2265625, 0.2421875, 0.2421875, 0.2578125, 0.265625, 0.2734375, 0.3046875, 0.328125, 0.328125, 0.2890625, 0.3203125, 0.375, 0.3984375, 0.359375, 0.328125, 0.34375, 0.34375, 0.3671875, 0.390625, 0.40625, 0.4296875, 0.4140625, 0.3828125, 0.3359375, 0.359375, 0.40625, 0.4140625, 0.390625, 0.359375, 0.3515625, 0.3125, 0.28125, 0.2734375, 0.3046875, 0.296875, 0.2734375, 0.2578125, 0.25, 0.2421875, 0.234375, 0.2265625, 0.2109375, 0.1875, 0.1484375, 0.1640625, 0.1953125, 0.1796875, 0.1015625, 0.0625, 0.0625, 0.09375, 0.1171875, 0.125, 0.09375, 0.1015625, 0.1171875, 0.1328125, 0.1015625, 0.0703125, 0.015625, 0.0234375, 0.046875, 0.0625, 0.03125, 1.9765625, 1.953125, 1.9609375, 0.0078125, 0.0234375, 0.015625, 1.9609375, 1.890625, 1.8984375, 1.9375, 1.9296875, 1.8671875, 1.8359375, 1.859375, 1.859375, 1.8125, 1.8046875, 1.8046875, 1.8203125, 1.8125, 1.796875, 1.7578125, 1.734375, 1.703125, 1.734375, 1.7578125, 1.75, 1.6875, 1.671875, 1.71875, 1.734375, 1.7265625, 1.6796875, 1.640625, 1.6015625, 1.6015625, 1.609375, 1.640625, 1.625, 1.59375, 1.546875, 1.5390625, 1.5546875, 1.5859375, 1.5703125, 1.5234375, 1.53125, 1.5703125, 1.59375, 1.5703125, 1.578125, 1.6484375, 1.6640625, 1.625, 1.6171875, 1.6171875, 1.640625, 1.65625, 1.671875, 1.703125, 1.7265625, 1.7578125, 1.75, 1.7421875, 1.734375, 1.7421875, 1.7734375, 1.8203125, 1.8046875, 1.7890625, 1.7890625, 1.859375, 1.8671875, 1.8515625, 1.828125, 1.859375, 1.8828125, 1.9140625, 1.9375, 1.9375, 1.921875, 1.875, 1.8984375, 1.9765625, 0.015625, 0.015625, 0.0, 0.0078125, 1.96875, 1.9453125, 1.9609375, 0.046875, 0.0546875, 0.0078125, 0.015625, 0.0703125, 0.078125, 0.0546875, 0.0546875, 0.09375, 0.140625, 0.140625, 0.140625, 0.1171875, 0.109375, 0.109375, 0.1484375, 0.203125, 0.2109375, 0.1875, 0.1875, 0.25, 0.2734375, 0.2578125, 0.2734375, 0.2890625, 0.2734375, 0.25, 0.2578125, 0.3203125, 0.34375, 0.3046875, 0.2890625, 0.2890625, 0.3203125, 0.328125, 0.328125, 0.328125, 0.359375, 0.4296875, 0.4375, 0.3984375, 0.3515625, 0.3671875, 0.3671875, 0.375, 0.375, 0.3671875, 0.40625, 0.4296875, 0.40625, 0.3125, 0.296875, 0.3359375, 0.3671875, 0.34375, 0.296875, 0.2734375, 0.2578125, 0.2890625, 0.2890625, 0.265625, 0.2265625, 0.203125, 0.21875, 0.25, 0.2734375, 0.2265625, 0.1953125, 0.171875, 0.1796875, 0.1640625, 0.140625, 0.078125, 0.0859375, 0.109375, 0.140625, 0.109375, 0.0703125, 0.0234375, 0.046875, 0.1015625, 0.1171875, 0.0546875, 0.03125, 0.03125, 0.015625, 1.9609375, 1.9609375, 0.0234375, 0.0546875, 0.03125, 1.9921875, 1.9375, 1.9453125, 1.984375, 0.0, 1.953125, 1.90625, 1.875, 1.8515625, 1.859375, 1.859375, 1.8671875, 1.84375, 1.8125, 1.796875, 1.796875, 1.8046875, 1.78125, 1.78125, 1.78125, 1.8125, 1.8125, 1.7890625, 1.71875, 1.6640625, 1.671875, 1.671875, 1.6796875, 1.6875, 1.71875, 1.6953125, 1.640625, 1.609375, 1.6484375, 1.65625, 1.6484375, 1.6015625, 1.5703125, 1.5390625, 1.5390625, 1.546875, 1.578125, 1.5625, 1.5390625, 1.5234375, 1.5625, 1.5859375, 1.6171875, 1.6328125, 1.65625, 1.6484375, 1.625, 1.609375, 1.6328125, 1.65625, 1.6875, 1.6875, 1.671875, 1.6796875, 1.7109375, 1.75, 1.7734375, 1.7578125, 1.7421875, 1.7421875, 1.796875, 1.8046875, 1.765625, 1.765625, 1.8359375, 1.8671875, 1.8671875, 1.84375, 1.8203125, 1.84375, 1.8671875, 1.8828125, 1.8515625, 1.859375, 1.890625, 1.921875, 1.953125, 1.9765625, 0.0234375, 0.0078125, 1.9609375, 1.9453125, 1.953125, 1.9921875, 0.015625, 0.03125, 0.015625, 0.0390625, 0.0703125, 0.0859375, 0.109375, 0.1171875, 0.1171875, 0.1328125, 0.140625, 0.1171875, 0.09375, 0.0703125, 0.1015625, 0.1328125, 0.1484375, 0.1796875, 0.2109375, 0.2109375, 0.21875, 0.1953125, 0.1875, 0.203125, 0.265625, 0.28125, 0.2421875, 0.21875, 0.2109375, 0.2265625, 0.234375, 0.2578125, 0.2734375, 0.328125, 0.3828125, 0.375, 0.34375, 0.3359375, 0.3984375, 0.4296875, 0.4296875, 0.3984375, 0.40625, 0.421875, 0.46875, 0.453125, 0.3984375, 0.375, 0.421875, 0.4140625, 0.3515625, 0.3125, 0.3515625, 0.3671875, 0.3515625, 0.296875, 0.265625, 0.25, 0.2734375, 0.2578125, 0.234375, 0.1875, 0.1875, 0.1953125, 0.2109375, 0.2265625, 0.1953125, 0.1875, 0.1796875, 0.1796875, 0.1484375, 0.171875, 0.1953125, 0.1875, 0.109375, 0.0859375, 0.1171875, 0.125, 0.0546875, 0.0234375, 0.0625, 0.078125, 0.0625, 0.046875, 0.078125, 0.0625, 0.015625, 0.0, 0.0390625, 0.0390625, 1.96875, 1.953125, 1.984375, 0.015625, 0.0, 1.984375, 1.984375, 1.9375, 1.8984375, 1.859375, 1.8828125, 1.8828125, 1.890625, 1.8671875, 1.859375, 1.84375, 1.8203125, 1.796875, 1.8046875, 1.7890625, 1.78125, 1.7734375, 1.796875, 1.7890625, 1.78125, 1.7578125, 1.7578125, 1.734375, 1.71875, 1.7109375, 1.71875, 1.71875, 1.65625, 1.6328125, 1.671875, 1.6796875, 1.6640625, 1.6328125, 1.59375, 1.5625, 1.5703125, 1.5625, 1.546875, 1.5234375, 1.53125, 1.5546875, 1.578125, 1.609375, 1.6328125, 1.6171875, 1.6015625, 1.6171875, 1.6640625, 1.6875, 1.6328125, 1.6171875, 1.65625, 1.7109375, 1.71875, 1.71875, 1.703125, 1.6953125, 1.734375, 1.765625, 1.796875, 1.78125, 1.7578125, 1.7421875, 1.765625, 1.8125, 1.8359375, 1.84375, 1.796875, 1.8046875, 1.8515625, 1.90625, 1.8984375, 1.9140625, 1.9296875, 1.9453125, 1.9140625, 1.875, 1.8828125, 1.890625, 1.921875, 1.9375, 1.9609375, 1.96875, 1.9765625, 1.9609375, 1.9453125, 1.9453125, 1.9765625, 0.0234375, 0.0390625, 0.0546875, 0.0546875, 0.078125, 0.09375, 0.09375, 0.046875, 0.0390625, 0.078125, 0.1171875, 0.109375, 0.1171875, 0.1328125, 0.140625, 0.1171875, 0.1171875, 0.171875, 0.21875, 0.2265625, 0.21875, 0.21875, 0.203125, 0.203125, 0.2109375, 0.234375, 0.2734375, 0.28125, 0.2890625, 0.296875, 0.28125, 0.265625, 0.25, 0.2578125, 0.2890625, 0.3203125, 0.359375, 0.3671875, 0.3671875, 0.40625, 0.4140625, 0.4140625, 0.390625, 0.390625, 0.3828125, 0.3828125, 0.390625, 0.40625, 0.40625, 0.3515625, 0.3125, 0.28125, 0.3125, 0.3515625, 0.359375, 0.3125, 0.2578125, 0.2421875, 0.234375, 0.2578125, 0.2421875, 0.2109375, 0.171875, 0.1953125, 0.234375, 0.2578125, 0.25, 0.1796875, 0.15625, 0.1875, 0.203125, 0.140625, 0.1015625, 0.09375, 0.125, 0.15625, 0.15625, 0.0859375, 0.03125, 0.0546875, 0.0703125, 0.078125, 0.0625, 0.078125, 0.078125, 0.0859375, 0.046875, 1.9921875, 1.953125, 1.9765625, 0.0, 1.96875, 1.9609375, 1.953125, 1.9765625, 1.984375, 1.984375, 1.953125, 1.90625, 1.890625, 1.890625, 1.9296875, 1.921875, 1.84375, 1.828125, 1.8671875, 1.90625, 1.859375, 1.8203125, 1.796875, 1.796875, 1.8046875, 1.7890625, 1.7734375, 1.7421875, 1.734375, 1.7265625, 1.71875, 1.6953125, 1.6796875, 1.6640625, 1.6640625, 1.6875, 1.6953125, 1.6953125, 1.65625, 1.625, 1.65625, 1.6484375, 1.609375, 1.5703125, 1.5703125, 1.578125, 1.5546875, 1.546875, 1.546875, 1.5703125, 1.6015625, 1.640625, 1.640625, 1.625, 1.609375, 1.6171875, 1.6328125, 1.6640625, 1.671875, 1.6953125, 1.703125, 1.71875, 1.703125, 1.6875, 1.71875, 1.7421875, 1.7734375, 1.7734375, 1.7734375, 1.7734375, 1.8046875, 1.8046875, 1.7734375, 1.78125, 1.8203125, 1.875, 1.8671875, 1.875, 1.8984375, 1.9140625, 1.859375, 1.828125, 1.828125, 1.8671875, 1.890625, 1.9140625, 1.921875, 1.9140625, 1.8984375, 1.8984375, 1.9375, 1.96875, 0.0078125, 0.015625, 0.0234375, 0.015625, 0.0390625, 0.046875, 0.015625, 0.0078125, 0.015625, 0.0234375, 0.0390625, 0.03125, 0.03125, 0.0546875, 0.0859375, 0.1328125, 0.1484375, 0.1484375, 0.125, 0.140625, 0.1640625, 0.203125, 0.2109375, 0.203125, 0.171875, 0.1796875, 0.2109375, 0.25, 0.234375, 0.234375, 0.265625, 0.2890625, 0.25, 0.21875, 0.28125, 0.296875, 0.2578125, 0.2578125, 0.3203125, 0.375, 0.3359375, 0.3203125, 0.359375, 0.40625, 0.390625, 0.375, 0.390625, 0.390625, 0.375, 0.3671875, 0.3671875, 0.3828125, 0.375, 0.3671875, 0.3515625, 0.3515625, 0.375, 0.375, 0.3671875, 0.328125, 0.296875, 0.2734375, 0.25, 0.265625, 0.296875, 0.3125, 0.265625, 0.2109375, 0.1875, 0.203125, 0.234375, 0.2421875, 0.171875, 0.125, 0.125, 0.125, 0.109375, 0.0859375, 0.1171875, 0.1328125, 0.125, 0.109375, 0.1328125, 0.140625, 0.140625, 0.09375, 0.0390625, 1.9921875, 0.0078125, 0.0234375, 0.03125, 0.0078125, 1.9765625, 1.9453125, 1.9609375, 1.9609375, 1.9609375, 1.9453125, 1.9375, 1.96875, 1.984375, 1.9921875, 1.9609375, 1.921875, 1.9140625, 1.9140625, 1.890625, 1.890625, 1.875, 1.8828125, 1.890625, 1.875, 1.84375, 1.8203125, 1.8125, 1.8359375, 1.859375, 1.8671875, 1.84375, 1.828125, 1.828125, 1.8046875, 1.75, 1.7109375, 1.7578125, 1.78125, 1.734375, 1.6796875, 1.6875, 1.703125, 1.6484375, 1.625, 1.625, 1.640625, 1.625, 1.6015625, 1.625, 1.6171875, 1.5859375, 1.53125, 1.53125, 1.5390625, 1.5703125, 1.59375, 1.6171875, 1.609375, 1.625, 1.609375, 1.609375, 1.6171875, 1.6640625, 1.6875, 1.671875, 1.640625, 1.6796875, 1.703125, 1.734375, 1.734375, 1.71875, 1.7265625, 1.7421875, 1.7734375, 1.7890625, 1.8046875, 1.7890625, 1.7890625, 1.8125, 1.8359375, 1.8671875, 1.8671875, 1.8515625, 1.84375, 1.8828125, 1.8984375, 1.875, 1.8515625, 1.859375, 1.8984375, 1.8984375, 1.90625, 1.9296875, 1.953125, 1.9609375, 1.96875, 0.0, 0.015625, 0.0390625, 0.0234375, 0.0, 1.9765625, 1.984375, 0.0, 0.0078125, 0.03125, 0.0703125, 0.078125, 0.0546875, 0.0078125, 0.03125, 0.0546875, 0.1015625, 0.140625, 0.15625, 0.15625, 0.125, 0.1171875, 0.15625, 0.203125, 0.1796875, 0.1796875, 0.2109375, 0.2421875, 0.1875, 0.15625, 0.21875, 0.2890625, 0.3203125, 0.296875, 0.25, 0.2421875, 0.2734375, 0.328125, 0.3203125, 0.296875, 0.3203125, 0.3125, 0.3046875, 0.3125, 0.3515625, 0.390625, 0.3515625, 0.328125, 0.3515625, 0.3828125, 0.4296875, 0.4296875, 0.3671875, 0.3359375, 0.359375, 0.3984375, 0.375, 0.34375, 0.3125, 0.3125, 0.34375, 0.34375, 0.296875, 0.234375, 0.234375, 0.234375, 0.2265625, 0.2109375, 0.203125, 0.21875, 0.203125, 0.203125, 0.1953125, 0.2109375, 0.1953125, 0.171875, 0.1640625, 0.1640625, 0.1796875, 0.1875, 0.171875, 0.1796875, 0.1640625, 0.15625, 0.1328125, 0.125, 0.09375, 0.0859375, 0.0625, 0.0546875, 0.015625, 0.0, 1.984375, 0.0, 0.0, 0.0, 1.984375, 1.9765625, 0.015625, 0.0546875, 0.0390625, 0.0078125, 1.9609375, 1.9453125, 1.9609375, 1.984375, 1.9921875, 1.96875, 1.9140625, 1.8828125, 1.8515625, 1.8515625, 1.8359375, 1.8203125, 1.828125, 1.8359375, 1.8359375, 1.8359375, 1.8671875, 1.859375, 1.796875, 1.7421875, 1.7890625, 1.8359375, 1.8125, 1.765625, 1.7421875, 1.7421875, 1.734375, 1.7265625, 1.6953125, 1.6796875, 1.640625, 1.640625, 1.6484375, 1.6796875, 1.6875, 1.6953125, 1.6953125, 1.6953125, 1.6875, 1.65625, 1.6171875, 1.5625, 1.5390625, 1.546875, 1.578125, 1.609375, 1.6328125, 1.625, 1.640625, 1.640625, 1.6328125, 1.625, 1.640625, 1.6875, 1.7109375, 1.7265625, 1.734375, 1.71875, 1.6953125, 1.6796875, 1.71875, 1.7578125, 1.75, 1.75, 1.7734375, 1.8046875, 1.7890625, 1.7734375, 1.765625, 1.78125, 1.8125, 1.859375, 1.859375, 1.8671875, 1.875, 1.8984375, 1.890625, 1.8984375, 1.921875, 1.9375, 1.953125, 1.9453125, 1.9765625, 1.984375, 1.953125, 1.9375, 1.9609375, 1.96875, 1.9609375, 1.9296875, 1.9609375, 0.0, 0.0390625, 0.03125, 0.0078125, 1.96875, 0.0, 0.03125, 0.046875, 0.0703125, 0.0859375, 0.109375, 0.09375, 0.0703125, 0.109375, 0.1484375, 0.15625, 0.1484375, 0.1484375, 0.140625, 0.1640625, 0.171875, 0.1953125, 0.2109375, 0.21875, 0.2265625, 0.1953125, 0.1796875, 0.171875, 0.21875, 0.2578125, 0.296875, 0.3046875, 0.3125, 0.328125, 0.359375, 0.3671875, 0.34375, 0.3125, 0.28125, 0.3046875, 0.34375, 0.3828125, 0.390625, 0.359375, 0.3359375, 0.390625, 0.4296875, 0.4140625, 0.375, 0.40625, 0.4140625, 0.3671875, 0.296875, 0.328125, 0.359375, 0.3125, 0.265625, 0.25, 0.2734375, 0.2734375, 0.28125, 0.2890625, 0.3046875, 0.2890625, 0.2578125, 0.2109375, 0.203125, 0.234375, 0.25, 0.21875, 0.1640625, 0.171875, 0.1953125, 0.171875, 0.1484375, 0.09375, 0.0859375, 0.125, 0.15625, 0.15625, 0.09375, 0.0703125, 0.0625, 0.09375, 0.125, 0.1328125, 0.0859375, 0.046875, 0.0234375, 0.0390625, 0.0625, 0.0703125, 0.0390625, 0.03125, 0.0078125, 1.984375, 1.953125, 1.96875, 1.96875, 1.9609375, 1.9375, 1.9765625, 1.984375, 1.9375, 1.859375, 1.8359375, 1.8515625, 1.8828125, 1.921875, 1.8984375, 1.8671875, 1.828125, 1.828125, 1.828125, 1.8359375, 1.828125, 1.8046875, 1.796875, 1.78125, 1.78125, 1.765625, 1.7734375, 1.765625, 1.7265625, 1.7109375, 1.71875, 1.75, 1.734375, 1.7109375, 1.6640625, 1.640625, 1.65625, 1.6953125, 1.6640625, 1.6484375, 1.6796875, 1.703125, 1.640625, 1.578125, 1.59375, 1.65625, 1.640625, 1.6015625, 1.6015625, 1.6328125, 1.6328125, 1.6171875, 1.6640625, 1.703125, 1.671875, 1.640625, 1.625, 1.65625, 1.6640625, 1.6875, 1.7265625, 1.7734375, 1.7734375, 1.7421875, 1.75, 1.75, 1.7265625, 1.7265625, 1.7421875, 1.7890625, 1.8046875, 1.8203125, 1.796875, 1.765625, 1.7890625, 1.8125, 1.8125, 1.8125, 1.84375, 1.875, 1.9296875, 1.9453125, 1.9375, 1.9140625, 1.9140625, 1.921875, 1.9453125, 1.9453125, 1.9609375, 1.96875, 1.9765625, 0.0, 0.0078125, 0.0234375, 0.03125, 0.03125, 0.03125, 0.0, 1.984375, 1.96875, 0.0078125, 0.046875, 0.0234375, 0.015625, 0.0234375, 0.0703125, 0.109375, 0.109375, 0.1171875, 0.1015625, 0.1015625, 0.109375, 0.1328125, 0.171875, 0.15625, 0.140625, 0.1484375, 0.1875, 0.1875, 0.1875, 0.1875, 0.2109375, 0.2265625, 0.25, 0.2578125, 0.2734375, 0.296875, 0.3125, 0.3203125, 0.3203125, 0.3359375, 0.34375, 0.3125, 0.265625, 0.296875, 0.328125, 0.3515625, 0.34375, 0.375, 0.3984375, 0.390625, 0.3671875, 0.3671875, 0.3671875, 0.4140625, 0.4140625, 0.375, 0.296875, 0.28125, 0.2890625, 0.2890625, 0.28125, 0.296875, 0.2890625, 0.2890625, 0.2734375, 0.2578125, 0.2578125, 0.2734375, 0.296875, 0.2890625, 0.25, 0.25, 0.2421875, 0.2265625, 0.1953125, 0.1640625, 0.1328125, 0.140625, 0.1640625, 0.1328125, 0.1171875, 0.1328125, 0.171875, 0.171875, 0.125, 0.0859375, 0.0625, 0.0703125, 0.109375, 0.0859375, 0.03125, 0.015625, 0.0078125, 0.03125, 0.03125, 0.0078125, 0.0, 0.015625, 0.046875, 0.0, 1.9609375, 1.953125, 1.9921875, 1.9921875, 1.9765625, 1.9375, 1.9140625, 1.9140625, 1.9375, 1.921875, 1.90625, 1.890625, 1.890625, 1.875, 1.875, 1.8671875, 1.875, 1.8515625, 1.84375, 1.828125, 1.828125, 1.78125, 1.7578125, 1.765625, 1.8046875, 1.7890625, 1.765625, 1.7734375, 1.796875, 1.8046875, 1.7734375, 1.7421875, 1.703125, 1.7265625, 1.7578125, 1.7265625, 1.671875, 1.6875, 1.71875, 1.6875, 1.625, 1.5859375, 1.6015625, 1.6328125, 1.65625, 1.625, 1.5703125, 1.5703125, 1.6015625, 1.625, 1.6171875, 1.6328125, 1.6484375, 1.65625, 1.671875, 1.640625, 1.625, 1.640625, 1.6640625, 1.6875, 1.6796875, 1.7109375, 1.7265625, 1.765625, 1.7734375, 1.7578125, 1.7265625, 1.71875, 1.734375, 1.7265625, 1.734375, 1.78125, 1.8359375, 1.8125, 1.7890625, 1.8046875, 1.859375, 1.875, 1.8671875, 1.84375, 1.8359375, 1.859375, 1.890625, 1.921875, 1.9140625, 1.90625, 1.8828125, 1.890625, 1.90625, 1.9609375, 0.0078125, 0.015625, 0.0078125, 1.9921875, 0.0, 1.9765625, 1.9609375, 1.984375, 0.0390625, 0.0234375, 1.9921875, 0.0, 0.0546875, 0.0390625, 0.015625, 0.015625, 0.0703125, 0.1015625, 0.1328125, 0.1328125, 0.1015625, 0.0859375, 0.078125, 0.1015625, 0.140625, 0.15625, 0.1640625, 0.1953125, 0.2109375, 0.1953125, 0.1484375, 0.15625, 0.1796875, 0.234375, 0.25, 0.2421875, 0.2109375, 0.2265625, 0.25, 0.2734375, 0.265625, 0.265625, 0.2734375, 0.2578125, 0.265625, 0.3046875, 0.3671875, 0.375, 0.34375, 0.359375, 0.390625, 0.390625, 0.375, 0.375, 0.375, 0.40625, 0.40625, 0.390625, 0.3359375, 0.3203125, 0.3203125, 0.34375, 0.34375, 0.3359375, 0.328125, 0.2890625, 0.265625, 0.25, 0.265625, 0.2578125, 0.2421875, 0.2421875, 0.265625, 0.234375, 0.1953125, 0.1953125, 0.234375, 0.2109375, 0.1640625, 0.1796875, 0.2109375, 0.1953125, 0.1328125, 0.1171875, 0.109375, 0.109375, 0.1015625, 0.109375, 0.1328125, 0.125, 0.1015625, 0.0625, 0.03125, 0.015625, 0.015625, 0.0546875, 0.0703125, 0.0859375, 0.0625, 0.0546875, 0.0390625, 0.0078125, 1.96875, 1.9765625, 1.9921875, 0.0234375, 0.015625, 1.9921875, 1.9296875, 1.9140625, 1.9375, 1.9296875, 1.921875, 1.9140625, 1.9140625, 1.875, 1.84375, 1.828125, 1.84375, 1.84375, 1.859375, 1.8671875, 1.8828125, 1.8515625, 1.8203125, 1.8203125, 1.859375, 1.828125, 1.78125, 1.7734375, 1.8046875, 1.8203125, 1.796875, 1.7578125, 1.71875, 1.7421875, 1.765625, 1.765625, 1.71875, 1.703125, 1.6875, 1.6875, 1.6875, 1.6796875, 1.6796875, 1.6328125, 1.6015625, 1.59375, 1.625, 1.625, 1.6171875, 1.5859375, 1.5859375, 1.6015625, 1.6328125, 1.6328125, 1.6171875, 1.609375, 1.6171875, 1.6328125, 1.6640625, 1.6640625, 1.6640625, 1.6953125, 1.7265625, 1.71875, 1.6796875, 1.6953125, 1.7421875, 1.7734375, 1.78125, 1.7578125, 1.7421875, 1.734375, 1.765625, 1.796875, 1.8125, 1.84375, 1.84375, 1.8359375, 1.8046875, 1.84375, 1.890625, 1.8828125, 1.84375, 1.84375, 1.890625, 1.9140625, 1.9296875, 1.921875, 1.90625, 1.921875, 1.9453125, 1.9453125, 1.9140625, 1.9375, 1.9921875, 0.0078125, 0.0, 0.0078125, 0.0234375, 0.0, 1.9609375, 1.9921875, 0.0390625, 0.078125, 0.0625, 0.0703125, 0.078125, 0.109375, 0.109375, 0.09375, 0.046875, 0.0390625, 0.0546875, 0.09375, 0.109375, 0.1171875, 0.109375, 0.1171875, 0.1640625, 0.1796875, 0.1875, 0.1875, 0.1796875, 0.2109375, 0.234375, 0.25, 0.234375, 0.2421875, 0.25, 0.2578125, 0.2421875, 0.2421875, 0.25, 0.2578125, 0.2578125, 0.2890625, 0.296875, 0.296875, 0.28125, 0.296875, 0.359375, 0.3671875, 0.34375, 0.3203125, 0.34375, 0.3359375, 0.34375, 0.375, 0.40625, 0.3984375, 0.3515625, 0.34375, 0.3828125, 0.3671875, 0.3359375, 0.328125, 0.34375, 0.328125, 0.265625, 0.25, 0.25, 0.28125, 0.28125, 0.2578125, 0.234375, 0.1875, 0.1796875, 0.1953125, 0.234375, 0.2421875, 0.1875, 0.15625, 0.1328125, 0.1484375, 0.1484375, 0.1328125, 0.09375, 0.09375, 0.109375, 0.1484375, 0.15625, 0.1484375, 0.1171875, 0.1015625, 0.1171875, 0.078125, 0.0390625, 0.015625, 0.046875, 0.0625, 0.0625, 0.0703125, 0.046875, 0.046875, 0.0234375, 0.015625, 1.9921875, 1.9921875, 1.9765625, 1.96875, 1.9453125, 1.9453125, 1.9453125, 1.96875, 1.96875, 1.9296875, 1.890625, 1.859375, 1.8671875, 1.90625, 1.921875, 1.9375, 1.921875, 1.9140625, 1.8984375, 1.875, 1.8203125, 1.7890625, 1.7734375, 1.7890625, 1.78125, 1.7890625, 1.765625, 1.75, 1.734375, 1.7421875, 1.734375, 1.75, 1.75, 1.75, 1.7265625, 1.703125, 1.703125, 1.6875, 1.6875, 1.65625, 1.640625, 1.6328125, 1.625, 1.6484375, 1.671875, 1.6484375, 1.609375, 1.59375, 1.625, 1.609375, 1.5859375, 1.578125, 1.625, 1.6328125, 1.640625, 1.625, 1.6484375, 1.671875, 1.71875, 1.7265625, 1.7265625, 1.7109375, 1.7109375, 1.7265625, 1.765625, 1.75, 1.71875, 1.7109375, 1.765625, 1.7890625, 1.8046875, 1.7890625, 1.78125, 1.7578125, 1.765625, 1.7890625, 1.8359375, 1.8515625, 1.84375, 1.859375, 1.875, 1.8671875, 1.8359375, 1.859375, 1.90625, 1.9375, 1.9296875, 1.9296875, 1.9609375, 1.9609375, 1.9296875, 1.9140625, 1.8984375, 1.9296875, 1.953125, 1.9609375, 1.96875, 1.9453125, 1.9453125, 1.9453125, 1.9921875, 0.015625, 0.0390625, 0.046875, 0.046875, 0.0546875, 0.0625, 0.0703125, 0.0546875, 0.0546875, 0.0546875, 0.0703125, 0.0625, 0.0703125, 0.078125, 0.1015625, 0.140625, 0.140625, 0.1171875, 0.1015625, 0.125, 0.1328125, 0.15625, 0.171875, 0.1953125, 0.203125, 0.2265625, 0.2265625, 0.21875, 0.2265625, 0.234375, 0.2421875, 0.234375, 0.2421875, 0.28125, 0.2734375, 0.2421875, 0.265625, 0.3046875, 0.3203125, 0.28125, 0.265625, 0.2890625, 0.3125, 0.3515625, 0.3515625, 0.3515625, 0.3515625, 0.3671875, 0.3828125, 0.3671875, 0.34375, 0.3125, 0.3203125, 0.3515625, 0.34375, 0.2890625, 0.28125, 0.2890625, 0.3203125, 0.3203125, 0.3203125, 0.296875, 0.2578125, 0.234375, 0.21875, 0.203125, 0.2265625, 0.25, 0.25, 0.1953125, 0.171875, 0.15625, 0.1484375, 0.1328125, 0.1328125, 0.15625, 0.1640625, 0.1484375, 0.1484375, 0.15625, 0.1640625, 0.15625, 0.109375, 0.0625, 0.0390625, 0.0625, 0.09375, 0.109375, 0.09375, 0.03125, 0.03125, 0.0546875, 0.0625, 0.015625, 1.984375, 0.0, 1.9765625, 1.9609375, 1.9609375, 0.0078125, 0.0078125, 1.9765625, 1.96875, 1.984375, 0.0, 1.9921875, 1.9609375, 1.9375, 1.8984375, 1.8671875, 1.8515625, 1.875, 1.859375, 1.84375, 1.828125, 1.8515625, 1.859375, 1.8359375, 1.84375, 1.8515625, 1.84375, 1.8125, 1.78125, 1.7578125, 1.765625, 1.765625, 1.78125, 1.765625, 1.75, 1.71875, 1.703125, 1.7109375, 1.7421875, 1.7421875, 1.75, 1.71875, 1.6875, 1.640625, 1.625, 1.625, 1.640625, 1.6484375, 1.640625, 1.640625, 1.6328125, 1.609375, 1.6015625, 1.59375, 1.59375, 1.6328125, 1.640625, 1.6484375, 1.6640625, 1.6875, 1.6875, 1.640625, 1.640625, 1.6875, 1.7265625, 1.7109375, 1.703125, 1.6796875, 1.6875, 1.6953125, 1.734375, 1.7578125, 1.7734375, 1.75, 1.734375, 1.765625, 1.78125, 1.796875, 1.7890625, 1.8046875, 1.7890625, 1.796875, 1.796875, 1.828125, 1.84375, 1.8515625, 1.8359375, 1.8359375, 1.84375, 1.8828125, 1.9140625, 1.9453125, 1.953125, 1.953125, 1.9296875, 1.9140625, 1.921875, 1.9453125, 1.96875, 1.953125, 1.953125, 1.9453125, 1.9765625, 0.0078125, 0.0234375, 0.03125, 0.0234375, 0.0078125, 0.03125, 0.046875, 0.078125, 0.0625, 0.0703125, 0.0703125, 0.0625, 0.0859375, 0.0859375, 0.0859375, 0.09375, 0.125, 0.109375, 0.0859375, 0.1015625, 0.1484375, 0.2109375, 0.203125, 0.1875, 0.15625, 0.15625, 0.2109375, 0.2421875, 0.21875, 0.1953125, 0.21875, 0.2109375, 0.203125, 0.2109375, 0.265625, 0.265625, 0.2421875, 0.2265625, 0.2578125, 0.3046875, 0.328125, 0.3359375, 0.2890625, 0.28125, 0.296875, 0.328125, 0.375, 0.375, 0.3359375, 0.3515625, 0.390625, 0.40625, 0.34375, 0.3203125, 0.34375, 0.3515625, 0.296875, 0.2734375, 0.2734375, 0.28125, 0.28125, 0.265625, 0.265625, 0.28125, 0.296875, 0.3046875, 0.265625, 0.234375, 0.2109375, 0.2265625, 0.25, 0.25, 0.1953125, 0.15625, 0.1796875, 0.1875, 0.1953125, 0.1875, 0.1640625, 0.1328125, 0.1015625, 0.09375, 0.1484375, 0.1640625, 0.1171875, 0.09375, 0.0859375, 0.078125, 0.0703125, 0.0546875, 0.0625, 0.0625, 0.0625, 0.0546875, 0.015625, 0.015625, 0.0390625, 0.046875, 0.0546875, 0.0234375, 1.984375, 1.96875, 1.984375, 0.0, 0.015625, 0.0078125, 0.0, 1.9609375, 1.9375, 1.90625, 1.9140625, 1.9296875, 1.9453125, 1.953125, 1.9140625, 1.8828125, 1.84375, 1.84375, 1.84375, 1.8671875, 1.875, 1.8828125, 1.875, 1.8828125, 1.859375, 1.84375, 1.8046875, 1.765625, 1.7578125, 1.7578125, 1.765625, 1.7734375, 1.765625, 1.765625, 1.7578125, 1.734375, 1.7109375, 1.6953125, 1.71875, 1.7109375, 1.6796875, 1.6484375, 1.65625, 1.6484375, 1.640625, 1.625, 1.625, 1.6171875, 1.625, 1.625, 1.6328125, 1.625, 1.6015625, 1.6171875, 1.625, 1.65625, 1.6640625, 1.6640625, 1.65625, 1.6640625, 1.703125, 1.7109375, 1.7109375, 1.7109375, 1.7265625, 1.7578125, 1.7578125, 1.78125, 1.7890625, 1.78125, 1.7421875, 1.734375, 1.7421875, 1.7734375, 1.7734375, 1.7890625, 1.8046875, 1.828125, 1.84375, 1.859375, 1.8515625, 1.8515625, 1.859375, 1.8515625, 1.859375, 1.8671875, 1.8671875, 1.8984375, 1.9140625, 1.921875, 1.890625, 1.90625, 1.9296875, 1.96875, 1.9765625, 1.9765625, 1.96875, 1.96875, 1.96875, 1.984375, 0.0234375, 0.015625, 1.96875, 1.953125, 0.0234375, 0.046875, 0.0078125, 1.984375, 0.015625, 0.046875, 0.03125, 0.0390625, 0.0546875, 0.0703125, 0.0390625, 0.0546875, 0.09375, 0.1171875, 0.078125, 0.0859375, 0.125, 0.1640625, 0.1640625, 0.1484375, 0.125, 0.125, 0.171875, 0.1875, 0.1875, 0.1796875, 0.2265625, 0.2265625, 0.203125, 0.1796875, 0.2265625, 0.2421875, 0.21875, 0.1875, 0.21875, 0.234375, 0.25, 0.265625, 0.2734375, 0.296875, 0.2890625, 0.296875, 0.296875, 0.3125, 0.359375, 0.375, 0.328125, 0.328125, 0.34375, 0.375, 0.359375, 0.3359375, 0.3203125, 0.3203125, 0.2890625, 0.28125, 0.2890625, 0.28125, 0.28125, 0.265625, 0.265625, 0.2578125, 0.2578125, 0.2578125, 0.265625, 0.2421875, 0.2109375, 0.1875, 0.2265625, 0.234375, 0.203125, 0.1640625, 0.15625, 0.1484375, 0.1328125, 0.1328125, 0.1328125, 0.140625, 0.1328125, 0.140625, 0.1640625, 0.1640625, 0.109375, 0.0546875, 0.046875, 0.0703125, 0.09375, 0.109375, 0.0859375, 0.0625, 0.046875, 0.046875, 0.0390625, 0.03125, 0.0546875, 0.0625, 0.03125, 0.0, 0.0, 1.9921875, 0.0, 1.984375, 1.9609375, 1.9453125, 1.984375, 1.9921875, 1.984375, 1.9375, 1.90625, 1.890625, 1.9140625, 1.9296875, 1.921875, 1.9140625, 1.90625, 1.8984375, 1.8515625, 1.8515625, 1.875, 1.90625, 1.8671875, 1.8515625, 1.859375, 1.875, 1.8359375, 1.8046875, 1.765625, 1.78125, 1.8125, 1.828125, 1.78125, 1.7421875, 1.7578125, 1.765625, 1.765625, 1.734375, 1.7265625, 1.6953125, 1.6875, 1.6796875, 1.6953125, 1.6953125, 1.6953125, 1.6875, 1.6875, 1.6640625, 1.6328125, 1.609375, 1.640625, 1.640625, 1.625, 1.59375, 1.59375, 1.6015625, 1.6484375, 1.671875, 1.671875, 1.6640625, 1.640625, 1.65625, 1.6875, 1.734375, 1.734375, 1.75, 1.765625, 1.7578125, 1.734375, 1.7109375, 1.7421875, 1.75, 1.7421875, 1.7265625, 1.78125, 1.8125, 1.828125, 1.8125, 1.8203125, 1.8046875, 1.8125, 1.8125, 1.8515625, 1.859375, 1.8515625, 1.8359375, 1.8671875, 1.875, 1.8828125, 1.875, 1.890625, 1.9140625, 1.9375, 1.953125, 1.953125, 1.953125, 1.984375, 1.9921875, 1.984375, 1.9609375, 1.96875, 1.9765625, 0.015625, 0.03125, 0.03125, 0.0078125, 0.0078125, 0.015625, 0.046875, 0.0546875, 0.0234375, 0.0078125, 0.046875, 0.078125, 0.0546875, 0.046875, 0.078125, 0.109375, 0.125, 0.1171875, 0.078125, 0.0703125, 0.0703125, 0.1015625, 0.1171875, 0.140625, 0.140625, 0.140625, 0.1328125, 0.15625, 0.1875, 0.2265625, 0.2265625, 0.234375, 0.2265625, 0.234375, 0.2265625, 0.2109375, 0.2109375, 0.203125, 0.2265625, 0.2421875, 0.2421875, 0.265625, 0.296875, 0.328125, 0.34375, 0.328125, 0.296875, 0.296875, 0.328125, 0.3671875, 0.3828125, 0.375, 0.3359375, 0.3203125, 0.3203125, 0.328125, 0.3203125, 0.328125, 0.3203125, 0.3203125, 0.2890625, 0.2734375, 0.3046875, 0.34375, 0.328125, 0.3125, 0.2734375, 0.265625, 0.2578125, 0.2421875, 0.2421875, 0.2421875, 0.2578125, 0.265625, 0.203125, 0.1875, 0.2109375, 0.234375, 0.2109375, 0.1875, 0.1640625, 0.1640625, 0.1640625, 0.140625, 0.109375, 0.09375, 0.1015625, 0.125, 0.109375, 0.109375, 0.125, 0.125, 0.1328125, 0.109375, 0.0625, 0.0625, 0.078125, 0.09375, 0.046875, 0.03125, 0.046875, 0.0546875, 0.015625, 1.9609375, 1.953125, 1.96875, 0.0078125, 0.0078125, 1.984375, 1.9453125, 1.953125, 1.953125, 1.9609375, 1.9453125, 1.9375, 1.921875, 1.9296875, 1.9140625, 1.90625, 1.890625, 1.8828125, 1.890625, 1.8671875, 1.8671875, 1.8671875, 1.875, 1.890625, 1.890625, 1.8515625, 1.8359375, 1.8359375, 1.8203125, 1.8125, 1.7890625, 1.8125, 1.8046875, 1.78125, 1.7421875, 1.734375, 1.7421875, 1.7578125, 1.75, 1.7265625, 1.6953125, 1.7109375, 1.7265625, 1.703125, 1.671875, 1.6796875, 1.6796875, 1.6875, 1.6640625, 1.6640625, 1.640625, 1.65625, 1.65625, 1.6328125, 1.6171875, 1.609375, 1.6171875, 1.625, 1.640625, 1.6796875, 1.703125, 1.6875, 1.6953125, 1.7109375, 1.7421875, 1.7265625, 1.7109375, 1.6953125, 1.703125, 1.7265625, 1.75, 1.765625, 1.7734375, 1.8046875, 1.8046875, 1.7734375, 1.7421875, 1.765625, 1.796875, 1.8359375, 1.8359375, 1.828125, 1.8046875, 1.8359375, 1.8515625, 1.8671875, 1.859375, 1.875, 1.8671875, 1.8671875, 1.8515625, 1.859375, 1.859375, 1.8828125, 1.890625, 1.921875, 1.9296875, 1.9140625, 1.9140625, 1.9296875, 1.96875, 1.9921875, 0.0, 1.984375, 1.9765625, 0.0078125, 0.0390625, 0.0078125, 1.9765625, 1.96875, 1.984375, 1.9921875, 1.9921875, 0.0, 0.0078125, 0.0390625, 0.0546875, 0.0546875, 0.0703125, 0.09375, 0.1015625, 0.1171875, 0.109375, 0.109375, 0.09375, 0.0859375, 0.0859375, 0.1015625, 0.1171875, 0.125, 0.125, 0.15625, 0.171875, 0.15625, 0.171875, 0.1875, 0.21875, 0.2109375, 0.1875, 0.1953125, 0.203125, 0.203125, 0.2109375, 0.265625, 0.28125, 0.2578125, 0.2265625, 0.2578125, 0.2890625, 0.3046875, 0.2890625, 0.2890625, 0.296875, 0.3203125, 0.3203125, 0.328125, 0.328125, 0.3359375, 0.34375, 0.359375, 0.3515625, 0.34375, 0.328125, 0.3203125, 0.3203125, 0.296875, 0.2890625, 0.28125, 0.265625, 0.28125, 0.2734375, 0.2578125, 0.2265625, 0.234375, 0.2421875, 0.265625, 0.2578125, 0.234375, 0.21875, 0.2265625, 0.2421875, 0.1953125, 0.15625, 0.1328125, 0.15625, 0.1796875, 0.2109375, 0.1875, 0.1328125, 0.1171875, 0.1015625, 0.109375, 0.109375, 0.1171875, 0.109375, 0.078125, 0.0703125, 0.0625, 0.0703125, 0.0625, 0.046875, 0.0625, 0.0625, 0.078125, 0.0625, 0.0546875, 0.03125, 0.0, 0.0078125, 0.0078125, 0.015625, 1.9765625, 1.9609375, 1.96875, 0.0, 1.9921875, 1.96875, 1.9375, 1.9296875, 1.9140625, 1.9140625, 1.90625, 1.9140625, 1.90625, 1.8984375, 1.8984375, 1.8828125, 1.890625, 1.890625, 1.8984375, 1.8828125, 1.859375, 1.8359375, 1.859375, 1.875, 1.828125, 1.796875, 1.796875, 1.8359375, 1.828125, 1.8125, 1.78125, 1.765625, 1.765625, 1.7734375, 1.7421875, 1.734375, 1.7421875, 1.7734375, 1.75, 1.734375, 1.7265625, 1.734375, 1.6953125, 1.6875, 1.6953125, 1.7265625, 1.6953125, 1.671875, 1.6484375, 1.6640625, 1.671875, 1.6875, 1.6328125, 1.59375, 1.59375, 1.609375, 1.640625, 1.640625, 1.6640625, 1.6875, 1.703125, 1.7109375, 1.6875, 1.6640625, 1.6875, 1.71875, 1.7421875, 1.7421875, 1.7734375, 1.7734375, 1.765625, 1.7578125, 1.75, 1.765625, 1.7578125, 1.7578125, 1.765625, 1.7890625, 1.8125, 1.828125, 1.8359375, 1.828125, 1.8203125, 1.8046875, 1.8125, 1.8203125, 1.8515625, 1.8828125, 1.8984375, 1.9140625, 1.9140625, 1.9296875, 1.9296875, 1.9140625, 1.9140625, 1.90625, 1.9453125, 1.96875, 1.96875, 1.9375, 1.9296875, 1.921875, 1.953125, 1.9765625, 1.984375, 0.0, 0.0, 0.0078125, 0.015625, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.03125, 0.0234375, 0.0234375, 0.0234375, 0.0625, 0.1015625, 0.109375, 0.1015625, 0.0703125, 0.1015625, 0.1171875, 0.109375, 0.078125, 0.1015625, 0.1328125, 0.171875, 0.1875, 0.1875, 0.1953125, 0.203125, 0.2109375, 0.1953125, 0.1796875, 0.1875, 0.1953125, 0.1953125, 0.1796875, 0.1953125, 0.21875, 0.2421875, 0.234375, 0.2265625, 0.21875, 0.234375, 0.2734375, 0.2734375, 0.2890625, 0.3046875, 0.328125, 0.3125, 0.3046875, 0.3125, 0.328125, 0.3515625, 0.359375, 0.3671875, 0.359375, 0.3671875, 0.3515625, 0.328125, 0.28125, 0.2734375, 0.265625, 0.28125, 0.2734375, 0.2890625, 0.2734375, 0.2578125, 0.2265625, 0.2265625, 0.2265625, 0.2421875, 0.25, 0.234375, 0.2265625, 0.2109375, 0.21875, 0.1953125, 0.1875, 0.171875, 0.171875, 0.15625, 0.1328125, 0.15625, 0.15625, 0.1328125, 0.09375, 0.09375, 0.1015625, 0.09375, 0.09375, 0.09375, 0.09375, 0.109375, 0.109375, 0.109375, 0.0859375, 0.0625, 0.0625, 0.0625, 0.0703125, 0.0234375, 0.0, 0.0, 0.0390625, 0.03125, 0.015625, 1.984375, 1.9765625, 1.9765625, 1.9921875, 0.0078125, 0.0, 1.9765625, 1.9296875, 1.9453125, 1.9453125, 1.9375, 1.921875, 1.9296875, 1.9609375, 1.9453125, 1.9296875, 1.9375, 1.9296875, 1.9140625, 1.859375, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.84375, 1.8515625, 1.84375, 1.859375, 1.84375, 1.8359375, 1.828125, 1.8203125, 1.828125, 1.8359375, 1.8125, 1.796875, 1.7890625, 1.796875, 1.7734375, 1.75, 1.734375, 1.734375, 1.7265625, 1.71875, 1.6875, 1.6875, 1.6953125, 1.7265625, 1.71875, 1.7109375, 1.6875, 1.6875, 1.6796875, 1.6953125, 1.671875, 1.6640625, 1.65625, 1.671875, 1.671875, 1.6875, 1.6796875, 1.6953125, 1.6796875, 1.6875, 1.71875, 1.7421875, 1.71875, 1.703125, 1.7265625, 1.7578125, 1.765625, 1.7265625, 1.734375, 1.734375, 1.75, 1.7578125, 1.796875, 1.828125, 1.828125, 1.8203125, 1.8046875, 1.8203125, 1.8515625, 1.875, 1.875, 1.8515625, 1.8515625, 1.859375, 1.8828125, 1.9140625, 1.8984375, 1.8828125, 1.8828125, 1.8828125, 1.890625, 1.890625, 1.9140625, 1.921875, 1.9375, 1.9453125, 1.953125, 1.953125, 1.9765625, 1.9921875, 0.015625, 0.0078125, 1.984375, 1.953125, 1.9609375, 1.9921875, 0.03125, 0.0390625, 0.0234375, 1.9921875, 0.015625, 0.0546875, 0.0546875, 0.015625, 0.03125, 0.046875, 0.046875, 0.03125, 0.0546875, 0.09375, 0.0859375, 0.078125, 0.078125, 0.1015625, 0.1015625, 0.1171875, 0.1328125, 0.1328125, 0.1484375, 0.1328125, 0.1484375, 0.1484375, 0.1484375, 0.171875, 0.1875, 0.1953125, 0.2265625, 0.21875, 0.203125, 0.171875, 0.1953125, 0.2265625, 0.2578125, 0.25, 0.234375, 0.2421875, 0.234375, 0.25, 0.265625, 0.265625, 0.2734375, 0.2578125, 0.2734375, 0.2890625, 0.296875, 0.3203125, 0.3203125, 0.328125, 0.3046875, 0.2734375, 0.2734375, 0.2734375, 0.296875, 0.296875, 0.28125, 0.2421875, 0.2578125, 0.265625, 0.2734375, 0.2421875, 0.2421875, 0.234375, 0.234375, 0.21875, 0.2109375, 0.1875, 0.1796875, 0.171875, 0.1796875, 0.1953125, 0.1796875, 0.1796875, 0.1640625, 0.1640625, 0.171875, 0.171875, 0.1640625, 0.140625, 0.140625, 0.140625, 0.15625, 0.140625, 0.125, 0.109375, 0.0859375, 0.0859375, 0.0703125, 0.0546875, 0.0390625, 0.0390625, 0.03125, 0.046875, 0.046875, 0.0390625, 0.046875, 0.0546875, 0.03125, 0.0234375, 0.0078125, 0.0234375, 0.0078125, 0.015625, 0.0078125, 0.0234375, 0.0, 1.984375, 1.9609375, 1.9609375, 1.953125, 1.9609375, 1.96875, 1.984375, 1.953125, 1.921875, 1.90625, 1.9140625, 1.8984375, 1.8984375, 1.8984375, 1.9140625, 1.90625, 1.8984375, 1.8828125, 1.875, 1.859375, 1.859375, 1.875, 1.875, 1.8515625, 1.8125, 1.8046875, 1.8359375, 1.8203125, 1.796875, 1.7734375, 1.78125, 1.7890625, 1.796875, 1.78125, 1.7734375, 1.765625, 1.7890625, 1.7890625, 1.796875, 1.765625, 1.75, 1.7265625, 1.734375, 1.71875, 1.703125, 1.6875, 1.703125, 1.71875, 1.734375, 1.703125, 1.6796875, 1.6484375, 1.671875, 1.6953125, 1.7265625, 1.7109375, 1.6953125, 1.7109375, 1.7421875, 1.734375, 1.6953125, 1.71875, 1.7421875, 1.7578125, 1.734375, 1.734375, 1.765625, 1.7578125, 1.7578125, 1.7578125, 1.78125, 1.8046875, 1.828125, 1.828125, 1.828125, 1.8125, 1.8203125, 1.8359375, 1.8515625, 1.875, 1.8828125, 1.875, 1.890625, 1.8828125, 1.890625, 1.890625, 1.8828125, 1.890625, 1.890625, 1.875, 1.8828125, 1.90625, 1.9453125, 1.953125, 1.9453125, 1.921875, 1.9296875, 1.9453125, 1.96875, 0.0, 1.9921875, 1.984375, 1.96875, 1.9609375, 1.984375, 1.984375, 1.9609375, 1.9921875, 0.015625, 0.03125, 0.015625, 0.015625, 0.015625, 0.03125, 0.0234375, 0.046875, 0.0546875, 0.0625, 0.0546875, 0.046875, 0.0703125, 0.0859375, 0.109375, 0.1015625, 0.1015625, 0.1171875, 0.1328125, 0.125, 0.109375, 0.109375, 0.1328125, 0.140625, 0.125, 0.140625, 0.15625, 0.15625, 0.171875, 0.15625, 0.1640625, 0.15625, 0.140625, 0.15625, 0.15625, 0.171875, 0.1875, 0.203125, 0.2265625, 0.2265625, 0.21875, 0.2109375, 0.21875, 0.234375, 0.2421875, 0.265625, 0.265625, 0.2890625, 0.296875, 0.3046875, 0.296875, 0.2890625, 0.28125, 0.2890625, 0.28125, 0.296875, 0.296875, 0.296875, 0.28125, 0.28125, 0.2734375, 0.2734375, 0.25, 0.2578125, 0.2578125, 0.2421875, 0.1953125, 0.1875, 0.1953125, 0.203125, 0.2109375, 0.1953125, 0.1875, 0.1796875, 0.1796875, 0.1796875, 0.1640625, 0.15625, 0.1484375, 0.1328125, 0.1171875, 0.125, 0.125, 0.125, 0.140625, 0.1171875, 0.09375, 0.078125, 0.078125, 0.078125, 0.1015625, 0.0859375, 0.0703125, 0.046875, 0.0625, 0.0546875, 0.0546875, 0.0234375, 0.0078125, 0.0078125, 0.0390625, 0.0234375, 1.984375, 1.96875, 1.96875, 1.9921875, 0.015625, 0.0078125, 0.0, 1.984375, 1.9921875, 1.96875, 1.9609375, 1.953125, 1.9609375, 1.96875, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.9453125, 1.9296875, 1.8828125, 1.8984375, 1.9140625, 1.9140625, 1.8828125, 1.8828125, 1.921875, 1.90625, 1.8515625, 1.8515625, 1.875, 1.8671875, 1.84375, 1.8125, 1.8203125, 1.8203125, 1.8203125, 1.828125, 1.8203125, 1.8203125, 1.8046875, 1.8046875, 1.796875, 1.7890625, 1.796875, 1.7890625, 1.8046875, 1.7890625, 1.7890625, 1.7734375, 1.7734375, 1.7578125, 1.75, 1.71875, 1.703125, 1.703125, 1.734375, 1.7421875, 1.7109375, 1.6953125, 1.6796875, 1.6953125, 1.7421875, 1.75, 1.7578125, 1.734375, 1.7265625, 1.734375, 1.7578125, 1.78125, 1.7734375, 1.78125, 1.7734375, 1.7734375, 1.7578125, 1.7734375, 1.7890625, 1.8046875, 1.7890625, 1.8046875, 1.796875, 1.8046875, 1.7890625, 1.8125, 1.8359375, 1.8671875, 1.8515625, 1.859375, 1.859375, 1.8515625, 1.8515625, 1.8515625, 1.8671875, 1.875, 1.8828125, 1.90625, 1.921875, 1.921875, 1.8984375, 1.8984375, 1.9140625, 1.921875, 1.9296875, 1.921875, 1.9296875, 1.9375, 1.953125, 1.9765625, 1.96875, 1.9609375, 1.9453125, 1.9609375, 1.9765625, 0.0, 0.0, 1.9921875, 0.0, 0.0, 0.0078125, 0.0, 0.0078125, 1.9921875, 1.9921875, 0.0078125, 0.0625, 0.0625, 0.0390625, 0.015625, 0.046875, 0.0625, 0.0625, 0.0703125, 0.0625, 0.0625, 0.0859375, 0.09375, 0.1015625, 0.1015625, 0.1171875, 0.1171875, 0.09375, 0.09375, 0.1015625, 0.1328125, 0.1640625, 0.1640625, 0.15625, 0.140625, 0.15625, 0.15625, 0.171875, 0.171875, 0.1796875, 0.1875, 0.1953125, 0.203125, 0.2109375, 0.2109375, 0.234375, 0.2421875, 0.25, 0.234375, 0.21875, 0.2109375, 0.234375, 0.234375, 0.2421875, 0.234375, 0.2578125, 0.2734375, 0.3046875, 0.3125, 0.2890625, 0.28125, 0.2578125, 0.25, 0.2421875, 0.25, 0.25, 0.2578125, 0.234375, 0.2265625, 0.2109375, 0.2109375, 0.1875, 0.1875, 0.1796875, 0.1953125, 0.203125, 0.1875, 0.15625, 0.1328125, 0.1328125, 0.1328125, 0.1328125, 0.1328125, 0.1328125, 0.1328125, 0.1328125, 0.125, 0.125, 0.109375, 0.0859375, 0.09375, 0.1171875, 0.1328125, 0.109375, 0.09375, 0.0703125, 0.0703125, 0.0625, 0.0703125, 0.046875, 0.0390625, 0.03125, 0.0234375, 0.046875, 0.046875, 0.0390625, 0.0234375, 0.0078125, 0.0, 0.0078125, 0.0078125, 1.9921875, 1.9921875, 1.9765625, 0.0, 0.015625, 0.0078125, 1.96875, 1.9609375, 1.96875, 1.984375, 1.96875, 1.9453125, 1.921875, 1.9140625, 1.953125, 1.953125, 1.9453125, 1.9140625, 1.90625, 1.8984375, 1.9140625, 1.90625, 1.90625, 1.8984375, 1.8671875, 1.875, 1.8828125, 1.8984375, 1.8671875, 1.859375, 1.84375, 1.84375, 1.8359375, 1.8203125, 1.8359375, 1.84375, 1.859375, 1.8359375, 1.8125, 1.78125, 1.796875, 1.796875, 1.8203125, 1.8203125, 1.796875, 1.796875, 1.78125, 1.78125, 1.765625, 1.78125, 1.7890625, 1.78125, 1.7421875, 1.7421875, 1.75, 1.765625, 1.7421875, 1.734375, 1.7265625, 1.71875, 1.7421875, 1.7421875, 1.71875, 1.734375, 1.7578125, 1.765625, 1.765625, 1.7734375, 1.78125, 1.8046875, 1.8046875, 1.8046875, 1.7890625, 1.8046875, 1.8203125, 1.828125, 1.8046875, 1.8125, 1.8359375, 1.84375, 1.859375, 1.8515625, 1.8671875, 1.859375, 1.84375, 1.8515625, 1.875, 1.890625, 1.8828125, 1.875, 1.8671875, 1.875, 1.890625, 1.8984375, 1.90625, 1.8984375, 1.9140625, 1.90625, 1.8984375, 1.90625, 1.921875, 1.9453125, 1.9375, 1.9453125, 1.9453125, 1.96875, 1.984375, 1.96875, 1.9609375, 1.9609375, 1.96875, 1.9921875, 1.9921875, 1.984375, 0.0, 1.9921875, 1.9921875, 1.9765625, 1.9921875, 1.9921875, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.03125, 0.0390625, 0.0390625, 0.0546875, 0.0546875, 0.0703125, 0.0703125, 0.078125, 0.0625, 0.078125, 0.0859375, 0.109375, 0.09375, 0.1015625, 0.109375, 0.1171875, 0.140625, 0.1171875, 0.1015625, 0.0859375, 0.109375, 0.140625, 0.140625, 0.15625, 0.171875, 0.1640625, 0.1328125, 0.140625, 0.15625, 0.1875, 0.1953125, 0.1953125, 0.1796875, 0.1875, 0.2109375, 0.2109375, 0.203125, 0.203125, 0.203125, 0.21875, 0.21875, 0.2421875, 0.25, 0.2578125, 0.2421875, 0.234375, 0.234375, 0.2578125, 0.265625, 0.2734375, 0.25, 0.2421875, 0.21875, 0.2265625, 0.21875, 0.21875, 0.203125, 0.1953125, 0.1796875, 0.1953125, 0.203125, 0.203125, 0.203125, 0.1796875, 0.1796875, 0.1640625, 0.15625, 0.15625, 0.1640625, 0.171875, 0.140625, 0.1328125, 0.140625, 0.1484375, 0.125, 0.125, 0.109375, 0.1015625, 0.078125, 0.078125, 0.078125, 0.0859375, 0.0703125, 0.078125, 0.078125, 0.078125, 0.0625, 0.0625, 0.0703125, 0.0703125, 0.0390625, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.015625, 0.015625, 0.0, 1.9765625, 1.984375, 1.9921875, 0.0, 0.0078125, 1.9921875, 1.9765625, 1.9921875, 1.9921875, 1.9921875, 1.9609375, 1.953125, 1.953125, 1.9609375, 1.9765625, 1.96875, 1.9453125, 1.9453125, 1.9375, 1.9296875, 1.9296875, 1.921875, 1.90625, 1.90625, 1.8984375, 1.90625, 1.890625, 1.8828125, 1.8671875, 1.890625, 1.90625, 1.90625, 1.890625, 1.859375, 1.859375, 1.8671875, 1.875, 1.84375, 1.828125, 1.8203125, 1.8203125, 1.84375, 1.828125, 1.8125, 1.7890625, 1.8046875, 1.8046875, 1.8046875, 1.7890625, 1.796875, 1.78125, 1.7734375, 1.7578125, 1.765625, 1.7578125, 1.7578125, 1.75, 1.7578125, 1.7578125, 1.7578125, 1.75, 1.7265625, 1.7109375, 1.7265625, 1.734375, 1.7265625, 1.75, 1.7578125, 1.7734375, 1.765625, 1.765625, 1.7890625, 1.796875, 1.8046875, 1.796875, 1.7890625, 1.78125, 1.796875, 1.796875, 1.8125, 1.8125, 1.828125, 1.84375, 1.8671875, 1.875, 1.859375, 1.8671875, 1.8671875, 1.8671875, 1.859375, 1.8515625, 1.875, 1.8828125, 1.875, 1.8671875, 1.890625, 1.90625, 1.9140625, 1.90625, 1.9140625, 1.9140625, 1.921875, 1.9375, 1.9453125, 1.9609375, 1.953125, 1.953125, 1.9453125, 1.9609375, 1.96875, 1.9609375, 1.9609375, 1.953125, 1.984375, 1.9921875, 0.0, 1.984375, 1.9921875, 1.9921875, 0.0078125, 0.0, 1.9921875, 1.9765625, 0.0, 0.0, 0.0078125, 0.0078125, 0.03125, 0.03125, 0.0390625, 0.0390625, 0.0625, 0.0703125, 0.046875, 0.0546875, 0.0703125, 0.0859375, 0.0703125, 0.0703125, 0.0703125, 0.0859375, 0.0859375, 0.1015625, 0.109375, 0.1171875, 0.125, 0.1171875, 0.1015625, 0.1015625, 0.1015625, 0.125, 0.140625, 0.15625, 0.1484375, 0.140625, 0.1640625, 0.1796875, 0.1640625, 0.1484375, 0.1640625, 0.171875, 0.203125, 0.203125, 0.2109375, 0.1875, 0.1953125, 0.1953125, 0.1953125, 0.2109375, 0.203125, 0.21875, 0.234375, 0.25, 0.2578125, 0.25, 0.234375, 0.2421875, 0.25, 0.2578125, 0.2265625, 0.2265625, 0.234375, 0.21875, 0.203125, 0.1875, 0.203125, 0.1953125, 0.1796875, 0.15625, 0.171875, 0.1796875, 0.1640625, 0.1640625, 0.140625, 0.140625, 0.15625, 0.1484375, 0.1484375, 0.1328125, 0.125, 0.125, 0.109375, 0.125, 0.125, 0.1328125, 0.09375, 0.0859375, 0.0859375, 0.1015625, 0.078125, 0.0546875, 0.0625, 0.0703125, 0.078125, 0.09375, 0.078125, 0.078125, 0.0546875, 0.046875, 0.0390625, 0.0390625, 0.046875, 0.0546875, 0.046875, 0.0390625, 0.0234375, 0.0234375, 1.9921875, 1.984375, 1.9765625, 1.96875, 1.984375, 1.9921875, 0.0, 1.9921875, 1.984375, 1.9609375, 1.96875, 1.9765625, 1.96875, 1.984375, 1.9765625, 1.9765625, 1.953125, 1.9375, 1.9375, 1.9453125, 1.9453125, 1.9453125, 1.9140625, 1.9140625, 1.90625, 1.9140625, 1.921875, 1.90625, 1.90625, 1.90625, 1.90625, 1.8984375, 1.8828125, 1.8671875, 1.859375, 1.8671875, 1.859375, 1.875, 1.875, 1.859375, 1.859375, 1.84375, 1.859375, 1.8515625, 1.8203125, 1.8125, 1.8203125, 1.8125, 1.8125, 1.796875, 1.8125, 1.8125, 1.7890625, 1.78125, 1.78125, 1.796875, 1.796875, 1.78125, 1.796875, 1.78125, 1.765625, 1.7578125, 1.765625, 1.78125, 1.7734375, 1.78125, 1.7890625, 1.796875, 1.7890625, 1.7734375, 1.78125, 1.78125, 1.78125, 1.8046875, 1.8046875, 1.8203125, 1.828125, 1.828125, 1.8359375, 1.8359375, 1.828125, 1.84375, 1.8515625, 1.8671875, 1.859375, 1.859375, 1.8671875, 1.8671875, 1.875, 1.8671875, 1.875, 1.875, 1.875, 1.8828125, 1.875, 1.875, 1.90625, 1.90625, 1.90625, 1.8984375, 1.8984375, 1.9140625, 1.921875, 1.9140625, 1.9296875, 1.9296875, 1.9453125, 1.9453125, 1.9453125, 1.9453125, 1.96875, 1.9765625, 1.9765625, 1.9609375, 1.984375, 1.9921875, 0.0, 1.9921875, 1.9765625, 1.984375, 0.0, 0.0078125, 0.015625, 0.0078125, 1.984375, 1.9921875, 0.0, 0.0078125, 0.0078125, 0.0078125, 0.0390625, 0.046875, 0.0234375, 0.0234375, 0.0390625, 0.0625, 0.046875, 0.046875, 0.0390625, 0.0546875, 0.046875, 0.0546875, 0.0625, 0.078125, 0.078125, 0.0859375, 0.078125, 0.09375, 0.1015625, 0.1171875, 0.1171875, 0.1171875, 0.1015625, 0.09375, 0.1015625, 0.1328125, 0.140625, 0.1484375, 0.125, 0.125, 0.140625, 0.140625, 0.140625, 0.125, 0.140625, 0.1484375, 0.15625, 0.140625, 0.15625, 0.1640625, 0.1640625, 0.1875, 0.1796875, 0.1953125, 0.1953125, 0.1953125, 0.203125, 0.203125, 0.21875, 0.2109375, 0.203125, 0.1875, 0.1953125, 0.1875, 0.1796875, 0.171875, 0.1796875, 0.1875, 0.171875, 0.1796875, 0.171875, 0.171875, 0.171875, 0.1484375, 0.171875, 0.1796875, 0.1484375, 0.140625, 0.125, 0.1328125, 0.125, 0.125, 0.1171875, 0.125, 0.1171875, 0.125, 0.109375, 0.109375, 0.0859375, 0.0859375, 0.0703125, 0.078125, 0.0546875, 0.0625, 0.0625, 0.078125, 0.0546875, 0.0546875, 0.0625, 0.0625, 0.0390625, 0.0390625, 0.0390625, 0.0625, 0.046875, 0.046875, 0.03125, 0.015625, 0.0234375, 0.015625, 0.0078125, 1.984375, 0.0, 0.0, 1.9921875, 1.9765625, 1.9921875, 1.9921875, 0.0, 0.0, 1.9921875, 1.984375, 1.9765625, 1.9921875, 1.9921875, 1.9765625, 1.984375, 1.9609375, 1.9609375, 1.953125, 1.96875, 1.9609375, 1.953125, 1.921875, 1.9296875, 1.9375, 1.9296875, 1.9296875, 1.9296875, 1.921875, 1.921875, 1.90625, 1.90625, 1.8984375, 1.90625, 1.90625, 1.890625, 1.8984375, 1.8828125, 1.8828125, 1.8828125, 1.8671875, 1.859375, 1.8515625, 1.8515625, 1.8515625, 1.859375, 1.8671875, 1.8515625, 1.859375, 1.8359375, 1.84375, 1.8359375, 1.8359375, 1.8359375, 1.828125, 1.8125, 1.8125, 1.8125, 1.8046875, 1.8125, 1.796875, 1.8125, 1.796875, 1.7890625, 1.765625, 1.7890625, 1.7890625, 1.796875, 1.7734375, 1.78125, 1.78125, 1.8046875, 1.8046875, 1.8125, 1.8046875, 1.828125, 1.8359375, 1.8515625, 1.8515625, 1.8515625, 1.8359375, 1.84375, 1.84375, 1.8515625, 1.8515625, 1.8671875, 1.8828125, 1.8828125, 1.890625, 1.8828125, 1.8671875, 1.875, 1.890625, 1.890625, 1.90625, 1.890625, 1.8984375, 1.90625, 1.9296875, 1.921875, 1.921875, 1.9140625, 1.8984375, 1.9140625, 1.9140625, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.9453125, 1.9453125, 1.9609375, 1.953125, 1.9609375, 1.9609375, 1.96875, 1.9609375, 1.96875, 1.96875, 1.984375, 0.0078125, 1.9921875, 1.984375, 1.984375, 0.0078125, 0.0078125, 0.0078125, 1.9921875, 0.0, 1.9921875, 0.015625, 0.015625, 0.015625, 0.0390625, 0.0390625, 0.0390625, 0.0234375, 0.03125, 0.03125, 0.03125, 0.0234375, 0.046875, 0.0625, 0.0625, 0.046875, 0.0546875, 0.0546875, 0.0703125, 0.0625, 0.0703125, 0.0703125, 0.0703125, 0.0703125, 0.0703125, 0.0859375, 0.078125, 0.0859375, 0.09375, 0.109375, 0.1015625, 0.1015625, 0.1015625, 0.125, 0.1328125, 0.125, 0.1328125, 0.125, 0.140625, 0.140625, 0.140625, 0.140625, 0.1328125, 0.140625, 0.1484375, 0.171875, 0.171875, 0.1640625, 0.1796875, 0.1796875, 0.1796875, 0.1796875, 0.1640625, 0.1796875, 0.171875, 0.1875, 0.1796875, 0.171875, 0.1796875, 0.1796875, 0.1796875, 0.1640625, 0.171875, 0.1640625, 0.15625, 0.140625, 0.140625, 0.1484375, 0.140625, 0.140625, 0.1328125, 0.140625, 0.1328125, 0.1171875, 0.125, 0.1171875, 0.125, 0.109375, 0.1171875, 0.109375, 0.1015625, 0.0859375, 0.0859375, 0.078125, 0.0859375, 0.078125, 0.0703125, 0.0625, 0.0546875, 0.0703125, 0.0703125, 0.0703125, 0.0625, 0.0546875, 0.0546875, 0.046875, 0.046875, 0.0390625, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.03125, 0.0234375, 0.0234375, 0.015625, 0.015625, 0.015625, 0.0, 0.0078125, 1.9921875, 0.0, 1.984375, 0.0, 1.9921875, 0.0078125, 1.984375, 1.9765625, 1.984375, 1.984375, 1.9765625, 1.96875, 1.953125, 1.9609375, 1.96875, 1.9609375, 1.96875, 1.9609375, 1.953125, 1.9453125, 1.9375, 1.9296875, 1.9453125, 1.9453125, 1.9375, 1.921875, 1.9296875, 1.921875, 1.9296875, 1.9140625, 1.9140625, 1.8984375, 1.8984375, 1.9140625, 1.90625, 1.890625, 1.8828125, 1.875, 1.890625, 1.890625, 1.8828125, 1.859375, 1.859375, 1.8671875, 1.859375, 1.8671875, 1.8515625, 1.8515625, 1.84375, 1.8515625, 1.8515625, 1.859375, 1.8515625, 1.84375, 1.8359375, 1.84375, 1.84375, 1.8359375, 1.8359375, 1.8203125, 1.8203125, 1.8203125, 1.8203125, 1.8046875, 1.8203125, 1.8203125, 1.8203125, 1.8125, 1.8125, 1.828125, 1.828125, 1.84375, 1.828125, 1.84375, 1.84375, 1.859375, 1.8515625, 1.859375, 1.859375, 1.8671875, 1.8671875, 1.8828125, 1.875, 1.8828125, 1.875, 1.8828125, 1.875, 1.890625, 1.8828125, 1.8984375, 1.8984375, 1.90625, 1.8984375, 1.90625, 1.90625, 1.90625, 1.90625, 1.9296875, 1.9296875, 1.9375, 1.9375, 1.9296875, 1.9375, 1.9296875, 1.9453125, 1.9453125, 1.953125, 1.9453125, 1.953125, 1.953125, 1.9609375, 1.9609375, 1.9609375, 1.96875, 1.96875, 1.984375, 1.984375, 0.0, 1.984375, 1.984375, 0.0, 0.0078125, 0.0078125, 1.9921875, 1.9921875, 1.984375, 0.0, 0.015625, 0.015625, 0.0234375, 0.015625, 0.0, 0.0078125, 0.0234375, 0.0234375, 0.03125, 0.015625, 0.0234375, 0.0234375, 0.03125, 0.0390625, 0.0390625, 0.046875, 0.0390625, 0.0390625, 0.03125, 0.046875, 0.0625, 0.0546875, 0.0625, 0.0546875, 0.0703125, 0.0703125, 0.078125, 0.0859375, 0.078125, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.1015625, 0.109375, 0.1171875, 0.109375, 0.1171875, 0.1171875, 0.125, 0.1171875, 0.1171875, 0.125, 0.1328125, 0.1328125, 0.1328125, 0.1328125, 0.140625, 0.140625, 0.1484375, 0.140625, 0.140625, 0.1484375, 0.1484375, 0.1640625, 0.1640625, 0.1484375, 0.1484375, 0.1484375, 0.15625, 0.1484375, 0.15625, 0.140625, 0.140625, 0.1328125, 0.140625, 0.1484375, 0.1328125, 0.1328125, 0.109375, 0.109375, 0.109375, 0.1015625, 0.109375, 0.1171875, 0.109375, 0.1171875, 0.1015625, 0.1015625, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.078125, 0.0859375, 0.078125, 0.078125, 0.0625, 0.0703125, 0.0703125, 0.0625, 0.0625, 0.0546875, 0.0625, 0.046875, 0.0390625, 0.0234375, 0.0390625, 0.03125, 0.0390625, 0.0234375, 0.0234375, 0.015625, 0.03125, 0.0234375, 0.0234375, 0.0078125, 0.015625, 0.0078125, 0.0078125, 0.015625, 0.0078125, 0.0078125, 0.0, 1.984375, 1.9921875, 1.9921875, 0.0, 1.9921875, 1.984375, 1.984375, 1.984375, 1.984375, 1.9765625, 1.9765625, 1.984375, 1.9765625, 1.984375, 1.9609375, 1.9609375, 1.9609375, 1.96875, 1.96875, 1.953125, 1.953125, 1.9375, 1.9453125, 1.9375, 1.9453125, 1.9296875, 1.9375, 1.9296875, 1.9296875, 1.9296875, 1.9140625, 1.9140625, 1.90625, 1.90625, 1.90625, 1.9140625, 1.9140625, 1.90625, 1.8984375, 1.8984375, 1.890625, 1.890625, 1.890625, 1.8828125, 1.8828125, 1.875, 1.8828125, 1.8828125, 1.8828125, 1.875, 1.8671875, 1.875, 1.8671875, 1.8671875, 1.859375, 1.8515625, 1.84375, 1.859375, 1.84375, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.8515625, 1.84375, 1.859375, 1.84375, 1.8515625, 1.84375, 1.859375, 1.8515625, 1.859375, 1.8515625, 1.875, 1.8828125, 1.8828125, 1.8671875, 1.8671875, 1.8671875, 1.890625, 1.8828125, 1.8828125, 1.875, 1.890625, 1.8828125, 1.8984375, 1.890625, 1.90625, 1.90625, 1.9140625, 1.9140625, 1.8984375, 1.9140625, 1.9140625, 1.921875, 1.9140625, 1.921875, 1.921875, 1.9296875, 1.921875, 1.9375, 1.9453125, 1.9375, 1.9453125, 1.9375, 1.9453125, 1.9375, 1.9453125, 1.953125, 1.9609375, 1.96875, 1.96875, 1.9609375, 1.96875, 1.96875, 1.9765625, 1.9765625, 1.984375, 1.984375, 1.984375, 1.984375, 1.984375, 1.9921875, 1.984375, 0.0, 1.984375, 0.0, 0.0, 0.0, 0.0, 1.9921875, 0.0078125, 0.0078125, 0.015625, 0.0078125, 0.03125, 0.0234375, 0.0234375, 0.015625, 0.03125, 0.0234375, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.046875, 0.046875, 0.046875, 0.0546875, 0.046875, 0.0546875, 0.0625, 0.0546875, 0.0703125, 0.0625, 0.0703125, 0.078125, 0.078125, 0.0859375, 0.0859375, 0.0859375, 0.0859375, 0.0859375, 0.0859375, 0.1015625, 0.1015625, 0.109375, 0.09375, 0.109375, 0.109375, 0.125, 0.109375, 0.1171875, 0.109375, 0.125, 0.1171875, 0.1328125, 0.1328125, 0.125, 0.1328125, 0.1328125, 0.140625, 0.140625, 0.1484375, 0.1484375, 0.15625, 0.1484375, 0.15625, 0.140625, 0.1484375, 0.1328125, 0.1328125, 0.125, 0.125, 0.1171875, 0.125, 0.1171875, 0.1171875, 0.109375, 0.1171875, 0.1171875, 0.109375, 0.1171875, 0.09375, 0.1015625, 0.09375, 0.0859375, 0.0859375, 0.078125, 0.0859375, 0.0859375, 0.078125, 0.0859375, 0.078125, 0.078125, 0.0703125, 0.0625, 0.0546875, 0.0625, 0.0546875, 0.0625, 0.0546875, 0.0546875, 0.0546875, 0.0546875, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.03125, 0.03125, 0.0234375, 0.0234375, 0.0078125, 0.015625, 0.0234375, 0.015625, 0.015625, 0.0078125, 0.015625, 0.0, 0.0, 0.0, 1.9921875, 0.0078125, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.9765625, 1.9765625, 1.984375, 1.984375, 1.9765625, 1.9765625, 1.96875, 1.9765625, 1.9765625, 1.96875, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.9453125, 1.953125, 1.9375, 1.9453125, 1.9375, 1.9453125, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.9296875, 1.921875, 1.9296875, 1.921875, 1.921875, 1.921875, 1.90625, 1.9140625, 1.9140625, 1.90625, 1.90625, 1.8984375, 1.8984375, 1.890625, 1.890625, 1.890625, 1.8828125, 1.890625, 1.8828125, 1.8828125, 1.875, 1.8671875, 1.875, 1.8671875, 1.875, 1.8671875, 1.859375, 1.8671875, 1.859375, 1.8671875, 1.8515625, 1.8515625, 1.84375, 1.84375, 1.8359375, 1.84375, 1.84375, 1.859375, 1.8515625, 1.859375, 1.8671875, 1.859375, 1.8671875, 1.859375, 1.875, 1.875, 1.875, 1.8828125, 1.8828125, 1.875, 1.890625, 1.8828125, 1.8828125, 1.890625, 1.890625, 1.8984375, 1.8984375, 1.8984375, 1.9140625, 1.90625, 1.9140625, 1.90625, 1.9140625, 1.90625, 1.921875, 1.921875, 1.9296875, 1.921875, 1.9296875, 1.921875, 1.9375, 1.9375, 1.9453125, 1.9453125, 1.9453125, 1.9375, 1.953125, 1.953125, 1.953125, 1.953125, 1.9453125, 1.9609375, 1.96875, 1.9765625, 1.96875, 1.96875, 1.96875, 1.984375, 1.96875, 1.984375, 1.9765625, 1.9921875, 1.984375, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.9921875, 0.0078125, 0.015625, 0.015625, 0.015625, 0.0078125, 0.015625, 0.0234375, 0.03125, 0.03125, 0.0234375, 0.03125, 0.0390625, 0.0390625, 0.0390625, 0.0390625, 0.0390625, 0.046875, 0.046875, 0.0546875, 0.0546875, 0.0546875, 0.0625, 0.0625, 0.0546875, 0.0625, 0.0703125, 0.0703125, 0.078125, 0.078125, 0.0703125, 0.078125, 0.0859375, 0.078125, 0.0859375, 0.078125, 0.09375, 0.09375, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.109375, 0.1015625, 0.109375, 0.1015625, 0.1171875, 0.1171875, 0.125, 0.125, 0.1171875, 0.125, 0.125, 0.140625, 0.140625, 0.1328125, 0.140625, 0.1328125, 0.1328125, 0.140625, 0.1328125, 0.1328125, 0.1171875, 0.125, 0.1171875, 0.125, 0.109375, 0.1171875, 0.109375, 0.1171875, 0.1015625, 0.109375, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.0859375, 0.0859375, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.0703125, 0.0625, 0.0703125, 0.0546875, 0.0625, 0.0625, 0.0546875, 0.0546875, 0.046875, 0.046875, 0.03125, 0.0390625, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.03125, 0.03125, 0.03125, 0.015625, 0.015625, 0.015625, 0.015625, 0.015625, 0.0078125, 0.0078125, 0.0078125, 0.0, 0.0, 1.9921875, 1.9921875, 1.984375, 0.0, 1.9921875, 0.0, 0.0, 1.984375, 1.9921875, 1.9765625, 1.9921875, 1.984375, 1.9765625, 1.9765625, 1.96875, 1.9765625, 1.96875, 1.96875, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.9453125, 1.953125, 1.9453125, 1.953125, 1.9453125, 1.9453125, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.921875, 1.9296875, 1.9296875, 1.921875, 1.921875, 1.921875, 1.90625, 1.9140625, 1.9140625, 1.90625, 1.90625, 1.8984375, 1.8984375, 1.890625, 1.8984375, 1.890625, 1.890625, 1.8828125, 1.890625, 1.8828125, 1.8828125, 1.8671875, 1.875, 1.8671875, 1.875, 1.8671875, 1.8671875, 1.859375, 1.8671875, 1.859375, 1.859375, 1.8515625, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.859375, 1.8671875, 1.859375, 1.8671875, 1.859375, 1.875, 1.8671875, 1.875, 1.875, 1.875, 1.8828125, 1.8828125, 1.890625, 1.8828125, 1.890625, 1.8984375, 1.890625, 1.8984375, 1.890625, 1.90625, 1.8984375, 1.9140625, 1.9140625, 1.90625, 1.9140625, 1.9140625, 1.921875, 1.9140625, 1.921875, 1.921875, 1.9296875, 1.921875, 1.9296875, 1.9296875, 1.9453125, 1.9375, 1.9453125, 1.9375, 1.9453125, 1.953125, 1.953125, 1.9453125, 1.953125, 1.953125, 1.96875, 1.9609375, 1.96875, 1.9609375, 1.9765625, 1.9765625, 1.96875, 1.9765625, 1.9765625, 1.984375, 1.984375, 1.9921875, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 0.0078125, 0.0, 0.015625, 0.0078125, 0.015625, 0.015625, 0.0234375, 0.0234375, 0.0234375, 0.0234375, 0.0234375, 0.0390625, 0.03125, 0.0390625, 0.0390625, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.0546875, 0.0546875, 0.0546875, 0.0625, 0.0546875, 0.0625, 0.0703125, 0.0625, 0.078125, 0.078125, 0.078125, 0.0703125, 0.0859375, 0.078125, 0.0859375, 0.078125, 0.09375, 0.0859375, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.109375, 0.109375, 0.1015625, 0.109375, 0.109375, 0.125, 0.125, 0.1171875, 0.125, 0.125, 0.125, 0.1328125, 0.125, 0.1328125, 0.1328125, 0.1484375, 0.140625, 0.140625, 0.1328125, 0.1328125, 0.1328125, 0.125, 0.1328125, 0.1171875, 0.125, 0.125, 0.1171875, 0.1171875, 0.1015625, 0.109375, 0.1015625, 0.109375, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.0859375, 0.078125, 0.078125, 0.0703125, 0.078125, 0.0625, 0.0703125, 0.0625, 0.0703125, 0.0546875, 0.0625, 0.0546875, 0.0625, 0.046875, 0.0546875, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.0234375, 0.0234375, 0.015625, 0.0234375, 0.0234375, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.0078125, 1.9921875, 0.0, 1.9921875, 1.984375, 0.0, 0.0, 1.984375, 1.9921875, 1.9921875, 0.0, 1.984375, 1.9921875, 1.9765625, 1.984375, 1.9765625, 1.9765625, 1.96875, 1.9765625, 1.9609375, 1.96875, 1.9609375, 1.96875, 1.953125, 1.953125, 1.953125, 1.9453125, 1.953125, 1.9453125, 1.9453125, 1.9453125, 1.9453125, 1.9453125, 1.9296875, 1.9296875, 1.921875, 1.9296875, 1.9296875, 1.9140625, 1.921875, 1.9140625, 1.921875, 1.90625, 1.9140625, 1.9140625, 1.9140625, 1.90625, 1.8984375, 1.8984375, 1.890625, 1.8984375, 1.890625, 1.890625, 1.8828125, 1.890625, 1.890625, 1.875, 1.8828125, 1.875, 1.8671875, 1.875, 1.875, 1.859375, 1.8671875, 1.859375, 1.8671875, 1.8515625, 1.8515625, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.84375, 1.8515625, 1.84375, 1.859375, 1.859375, 1.8671875, 1.8671875, 1.8671875, 1.875, 1.875, 1.875, 1.875, 1.8828125, 1.890625, 1.8828125, 1.890625, 1.890625, 1.8984375, 1.890625, 1.8984375, 1.90625, 1.90625, 1.9140625, 1.90625, 1.9140625, 1.90625, 1.921875, 1.9140625, 1.921875, 1.9140625, 1.9296875, 1.921875, 1.9296875, 1.921875, 1.9375, 1.9296875, 1.9375, 1.9296875, 1.9453125, 1.9375, 1.9453125, 1.9375, 1.953125, 1.953125, 1.9453125, 1.953125, 1.953125, 1.96875, 1.9609375, 1.96875, 1.9609375, 1.9765625, 1.9765625, 1.96875, 1.9765625, 1.9765625, 1.984375, 1.9921875, 1.9765625, 1.9921875, 1.984375, 0.0, 0.0, 1.9921875, 0.0, 1.984375, 1.9921875, 1.9921875, 0.0, 0.0078125, 0.0, 0.0078125, 0.0, 0.015625, 0.015625, 0.0078125, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.0234375, 0.0234375, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.046875, 0.0546875, 0.0546875, 0.046875, 0.0625, 0.0546875, 0.0625, 0.0546875, 0.0703125, 0.0625, 0.0703125, 0.0625, 0.078125, 0.078125, 0.0703125, 0.078125, 0.078125, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.09375, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.1015625, 0.109375, 0.1015625, 0.109375, 0.109375, 0.1171875, 0.1171875, 0.125, 0.1171875, 0.125, 0.1328125, 0.125, 0.1328125, 0.125, 0.1328125, 0.1328125, 0.125, 0.125, 0.1171875, 0.125, 0.125, 0.109375, 0.109375, 0.1015625, 0.109375, 0.1015625, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.09375, 0.0859375, 0.09375, 0.09375, 0.0859375, 0.0859375, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.0625, 0.0703125, 0.0625, 0.0625, 0.0546875, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.046875, 0.046875, 0.0390625, 0.046875, 0.03125, 0.0390625, 0.0390625, 0.03125, 0.03125, 0.0234375, 0.0234375, 0.0234375, 0.0234375, 0.0234375, 0.015625, 0.015625, 0.015625, 0.0078125, 0.0078125, 0.0078125, 0.0078125, 0.0, 0.0, 1.984375, 1.9921875, 0.0, 1.9921875, 0.0, 1.984375, 0.0, 1.9921875, 1.9921875, 1.984375, 1.984375, 1.9765625, 1.984375, 1.984375, 1.96875, 1.9765625, 1.96875, 1.96875, 1.96875, 1.96875, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.9453125, 1.953125, 1.9453125, 1.953125, 1.9375, 1.9375, 1.9296875, 1.9375, 1.9296875, 1.921875, 1.9296875, 1.921875, 1.9296875, 1.921875, 1.9140625, 1.921875, 1.921875, 1.90625, 1.9140625, 1.90625, 1.9140625, 1.90625, 1.8984375, 1.90625, 1.90625, 1.890625, 1.8984375, 1.890625, 1.8984375, 1.8828125, 1.890625, 1.875, 1.8828125, 1.875, 1.8828125, 1.8671875, 1.875, 1.875, 1.8671875, 1.8671875, 1.859375, 1.8671875, 1.8671875, 1.8515625, 1.859375, 1.8515625, 1.859375, 1.859375, 1.8515625, 1.859375, 1.859375, 1.8671875, 1.859375, 1.8671875, 1.8671875, 1.8828125, 1.8828125, 1.875, 1.8828125, 1.890625, 1.8828125, 1.890625, 1.8828125, 1.8984375, 1.8984375, 1.890625, 1.8984375, 1.890625, 1.90625, 1.90625, 1.9140625, 1.90625, 1.9140625, 1.9140625, 1.921875, 1.9140625, 1.921875, 1.921875, 1.9296875, 1.921875, 1.9296875, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.9375, 1.9453125, 1.9453125, 1.9375, 1.953125, 1.9453125, 1.953125, 1.9453125, 1.9609375, 1.953125, 1.96875, 1.96875, 1.9609375, 1.96875, 1.9765625, 1.9765625, 1.9765625, 1.96875, 1.984375, 1.984375, 1.984375, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.984375, 1.9921875, 0.0, 1.9921875, 0.0078125, 0.0, 0.0078125, 0.0, 0.015625, 0.0078125, 0.0234375, 0.0234375, 0.015625, 0.0234375, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.03125, 0.0390625, 0.0390625, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.046875, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.0625, 0.0703125, 0.0625, 0.0703125, 0.0625, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.0859375, 0.0859375, 0.078125, 0.0859375, 0.0859375, 0.09375, 0.09375, 0.0859375, 0.1015625, 0.09375, 0.1015625, 0.1015625, 0.1015625, 0.109375, 0.109375, 0.1015625, 0.1171875, 0.109375, 0.125, 0.1171875, 0.125, 0.125, 0.125, 0.1328125, 0.125, 0.1328125, 0.125, 0.1328125, 0.1328125, 0.1171875, 0.125, 0.125, 0.1171875, 0.1171875, 0.109375, 0.1171875, 0.109375, 0.109375, 0.1015625, 0.109375, 0.109375, 0.09375, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.0859375, 0.078125, 0.0859375, 0.078125, 0.078125, 0.0703125, 0.078125, 0.078125, 0.0703125, 0.0703125, 0.0625, 0.0703125, 0.0546875, 0.0625, 0.0546875, 0.0625, 0.046875, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.0390625, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.03125, 0.03125, 0.0234375, 0.03125, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.0078125, 0.0078125, 0.0, 0.0078125, 0.0, 1.984375, 1.9921875, 1.9921875, 0.0, 0.0, 1.9921875, 1.9921875, 1.984375, 1.984375, 1.9765625, 1.984375, 1.984375, 1.984375, 1.984375, 1.96875, 1.9765625, 1.9609375, 1.96875, 1.9609375, 1.96875, 1.9609375, 1.9609375, 1.953125, 1.9609375, 1.9453125, 1.953125, 1.953125, 1.9453125, 1.9453125, 1.9375, 1.9375, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.9375, 1.921875, 1.921875, 1.9140625, 1.921875, 1.9140625, 1.921875, 1.9140625, 1.90625, 1.9140625, 1.90625, 1.8984375, 1.90625, 1.8984375, 1.8984375, 1.8984375, 1.890625, 1.8984375, 1.8828125, 1.890625, 1.890625, 1.890625, 1.875, 1.8828125, 1.875, 1.8828125, 1.875, 1.8671875, 1.8671875, 1.8671875, 1.8671875, 1.859375, 1.859375, 1.8515625, 1.859375, 1.8515625, 1.859375, 1.859375, 1.8515625, 1.8671875, 1.859375, 1.8671875, 1.859375, 1.875, 1.8671875, 1.875, 1.8671875, 1.8828125, 1.8828125, 1.875, 1.8828125, 1.8828125, 1.890625, 1.8828125, 1.890625, 1.890625, 1.8984375, 1.890625, 1.8984375, 1.8984375, 1.9140625, 1.9140625, 1.9140625, 1.9140625, 1.921875, 1.921875, 1.921875, 1.921875, 1.9296875, 1.9296875, 1.9296875, 1.921875, 1.9375, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.9453125, 1.9375, 1.9453125, 1.9453125, 1.953125, 1.9453125, 1.953125, 1.953125, 1.9609375, 1.96875, 1.96875, 1.96875, 1.9609375, 1.96875, 1.9609375, 1.9765625, 1.96875, 1.984375, 1.984375, 1.9765625, 1.9921875, 1.984375, 0.0, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.9921875, 1.9921875, 0.0, 0.0, 0.0, 0.0078125, 0.0, 0.0078125, 0.0078125, 0.015625, 0.015625, 0.0078125, 0.0234375, 0.0234375, 0.015625, 0.0234375, 0.0234375, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.0390625, 0.0390625, 0.046875, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.0625, 0.0546875, 0.0625, 0.0546875, 0.0703125, 0.0625, 0.0703125, 0.0625, 0.078125, 0.078125, 0.0703125, 0.0703125, 0.078125, 0.078125, 0.0859375, 0.078125, 0.0859375, 0.0859375, 0.09375, 0.09375, 0.0859375, 0.1015625, 0.1015625, 0.09375, 0.1015625, 0.109375, 0.1015625, 0.109375, 0.1015625, 0.1171875, 0.109375, 0.1171875, 0.109375, 0.125, 0.1171875, 0.125, 0.1171875, 0.125, 0.1171875, 0.125, 0.109375, 0.1171875, 0.109375, 0.109375, 0.109375, 0.1015625, 0.109375, 0.1015625, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.0859375, 0.0859375, 0.0859375, 0.078125, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.0703125, 0.0703125, 0.0625, 0.0703125, 0.0625, 0.0703125, 0.0546875, 0.0546875, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.0390625, 0.046875, 0.0390625, 0.0390625, 0.0390625, 0.03125, 0.0390625, 0.0390625, 0.03125, 0.03125, 0.0234375, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.015625, 0.0078125, 0.015625, 0.015625, 0.0078125, 0.0, 0.0, 0.0, 0.0078125, 0.0078125, 1.9921875, 0.0, 1.984375, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 1.9921875, 1.9765625, 1.984375, 1.9765625, 1.9921875, 1.984375, 1.9765625, 1.9765625, 1.96875, 1.9765625, 1.96875, 1.96875, 1.96875, 1.9609375, 1.96875, 1.9609375, 1.953125, 1.953125, 1.9453125, 1.953125, 1.9453125, 1.953125, 1.9453125, 1.9453125, 1.9375, 1.9453125, 1.9453125, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.9296875, 1.921875, 1.9296875, 1.9296875, 1.9140625, 1.921875, 1.9140625, 1.921875, 1.90625, 1.9140625, 1.9140625, 1.90625, 1.90625, 1.8984375, 1.90625, 1.90625, 1.890625, 1.8984375, 1.890625, 1.890625, 1.890625, 1.8828125, 1.890625, 1.875, 1.8828125, 1.875, 1.8828125, 1.875, 1.8671875, 1.875, 1.8671875, 1.8671875, 1.859375, 1.8671875, 1.859375, 1.8671875, 1.859375, 1.8671875, 1.8671875, 1.875, 1.8671875, 1.875, 1.875, 1.8828125, 1.875, 1.8828125, 1.8828125, 1.890625, 1.890625, 1.8828125, 1.8984375, 1.890625, 1.8984375, 1.8984375, 1.8984375, 1.90625, 1.8984375, 1.90625, 1.9140625, 1.9140625, 1.90625, 1.9140625, 1.921875, 1.921875, 1.921875, 1.921875, 1.9296875, 1.9296875, 1.921875, 1.9375, 1.9296875, 1.9375, 1.9375, 1.9375, 1.9453125, 1.9375, 1.9453125, 1.9453125, 1.953125, 1.9453125, 1.953125, 1.953125, 1.9453125, 1.9609375, 1.953125, 1.96875, 1.9609375, 1.96875, 1.96875, 1.96875, 1.9765625, 1.9765625, 1.9765625, 1.96875, 1.9765625, 1.9765625, 1.984375, 1.984375, 1.9765625, 1.9921875, 1.984375, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 0.0, 1.9921875, 1.984375, 0.0, 0.0078125, 0.0078125, 0.0078125, 0.0, 0.015625, 0.015625, 0.015625, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.046875, 0.0390625, 0.046875, 0.046875, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.0625, 0.0625, 0.0546875, 0.0625, 0.0625, 0.0703125, 0.0703125, 0.0703125, 0.078125, 0.078125, 0.078125, 0.0703125, 0.0859375, 0.078125, 0.0859375, 0.078125, 0.09375, 0.0859375, 0.09375, 0.1015625, 0.1015625, 0.1015625, 0.09375, 0.109375, 0.1015625, 0.109375, 0.1015625, 0.1171875, 0.1171875, 0.109375, 0.1171875, 0.109375, 0.1171875, 0.1171875, 0.125, 0.125, 0.125, 0.125, 0.109375, 0.1171875, 0.109375, 0.1171875, 0.1015625, 0.109375, 0.1015625, 0.109375, 0.109375, 0.1015625, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.0859375, 0.078125, 0.078125, 0.0859375, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.0625, 0.0703125, 0.0625, 0.0703125, 0.0546875, 0.0625, 0.0625, 0.0546875, 0.0546875, 0.0546875, 0.046875, 0.046875, 0.046875, 0.0390625, 0.046875, 0.03125, 0.03125, 0.0390625, 0.03125, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.0078125, 0.0, 0.0078125, 0.0078125, 0.0078125, 1.9921875, 0.0, 1.984375, 1.9921875, 0.0, 1.9921875, 1.9921875, 0.0] \ No newline at end of file diff --git a/drums/drum1.wav b/drums/drum1.wav new file mode 100644 index 0000000..1c620e3 Binary files /dev/null and b/drums/drum1.wav differ diff --git a/drums/drum2.txt b/drums/drum2.txt new file mode 100644 index 0000000..0b49767 --- /dev/null +++ b/drums/drum2.txt @@ -0,0 +1 @@ +[0.0, 0.0, 0.0, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 0.0, 1.984375, 0.0, 1.984375, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 0.0, 1.9921875, 0.0, 0.0, 0.0, 0.0078125, 0.0, 0.0, 0.0078125, 0.0, 0.015625, 0.0078125, 0.0234375, 0.015625, 0.0, 0.0, 0.015625, 0.015625, 0.0234375, 0.015625, 0.03125, 0.0390625, 0.046875, 0.046875, 0.0546875, 0.046875, 0.0625, 0.09375, 0.1171875, 0.1328125, 0.140625, 0.140625, 0.15625, 0.171875, 0.1875, 0.171875, 0.1640625, 0.171875, 0.1796875, 0.1953125, 0.203125, 0.234375, 0.2890625, 0.3125, 0.328125, 0.3359375, 0.3515625, 0.375, 0.3828125, 0.390625, 0.375, 0.390625, 0.40625, 0.4453125, 0.4453125, 0.421875, 0.3984375, 0.3828125, 0.3984375, 0.3984375, 0.390625, 0.4375, 0.46875, 0.4921875, 0.484375, 0.4765625, 0.46875, 0.484375, 0.4765625, 0.46875, 0.453125, 0.4453125, 0.453125, 0.4375, 0.4453125, 0.5078125, 0.6015625, 0.6171875, 0.609375, 0.6015625, 0.609375, 0.5546875, 0.5078125, 0.484375, 0.5, 0.4921875, 0.5, 0.5078125, 0.515625, 0.5234375, 0.5078125, 0.5078125, 0.5, 0.4921875, 0.4765625, 0.4765625, 0.46875, 0.4609375, 0.46875, 0.4375, 0.4140625, 0.390625, 0.3984375, 0.390625, 0.3828125, 0.34375, 0.296875, 0.28125, 0.2734375, 0.2734375, 0.25, 0.25, 0.25, 0.25, 0.234375, 0.21875, 0.21875, 0.28125, 0.3359375, 0.3671875, 0.328125, 0.2890625, 0.2265625, 0.2109375, 0.1953125, 0.203125, 0.1796875, 0.140625, 0.0859375, 0.0625, 0.0546875, 0.0546875, 0.046875, 0.03125, 0.0234375, 0.0078125, 0.0, 1.96875, 1.96875, 0.0234375, 0.078125, 0.1015625, 0.0703125, 0.0625, 0.046875, 0.0390625, 0.0078125, 0.0078125, 0.0, 0.015625, 0.015625, 0.015625, 1.9921875, 0.0, 1.984375, 1.953125, 1.8984375, 1.8828125, 1.8828125, 1.875, 1.859375, 1.8359375, 1.8125, 1.78125, 1.7890625, 1.7890625, 1.8203125, 1.8125, 1.8046875, 1.796875, 1.7890625, 1.7734375, 1.7734375, 1.78125, 1.765625, 1.7109375, 1.625, 1.6015625, 1.609375, 1.578125, 1.578125, 1.640625, 1.7265625, 1.765625, 1.734375, 1.7265625, 1.71875, 1.6953125, 1.6953125, 1.6953125, 1.6953125, 1.6171875, 1.53125, 1.46875, 1.484375, 1.53125, 1.5625, 1.5859375, 1.5546875, 1.5625, 1.5625, 1.546875, 1.546875, 1.53125, 1.5390625, 1.546875, 1.578125, 1.578125, 1.5703125, 1.5546875, 1.5625, 1.5546875, 1.5703125, 1.5703125, 1.5703125, 1.5078125, 1.4296875, 1.3671875, 1.390625, 1.4609375, 1.5625, 1.59375, 1.5859375, 1.578125, 1.5703125, 1.578125, 1.5625, 1.578125, 1.5703125, 1.53125, 1.46875, 1.453125, 1.453125, 1.4609375, 1.453125, 1.484375, 1.5234375, 1.5546875, 1.546875, 1.5234375, 1.484375, 1.4609375, 1.4609375, 1.5234375, 1.59375, 1.6328125, 1.6171875, 1.6171875, 1.625, 1.6328125, 1.6328125, 1.6484375, 1.65625, 1.59375, 1.5, 1.484375, 1.484375, 1.4921875, 1.4609375, 1.4609375, 1.4765625, 1.4921875, 1.5, 1.5234375, 1.5234375, 1.53125, 1.53125, 1.546875, 1.5703125, 1.5703125, 1.59375, 1.609375, 1.625, 1.6484375, 1.640625, 1.6640625, 1.6796875, 1.6953125, 1.6953125, 1.7109375, 1.75, 1.7578125, 1.765625, 1.7421875, 1.7421875, 1.7421875, 1.7421875, 1.75, 1.75, 1.8125, 1.875, 1.9375, 1.9296875, 1.875, 1.78125, 1.7421875, 1.75, 1.84375, 1.9296875, 1.9921875, 1.984375, 1.9765625, 1.9609375, 1.96875, 1.984375, 0.0, 0.0078125, 0.015625, 0.0, 0.015625, 0.0546875, 0.0625, 0.0859375, 0.1015625, 0.1328125, 0.15625, 0.1484375, 0.1640625, 0.1796875, 0.1796875, 0.15625, 0.1484375, 0.171875, 0.1796875, 0.1953125, 0.1953125, 0.2109375, 0.21875, 0.25, 0.265625, 0.28125, 0.2265625, 0.1484375, 0.109375, 0.1328125, 0.171875, 0.21875, 0.2421875, 0.234375, 0.265625, 0.2890625, 0.3203125, 0.3203125, 0.3046875, 0.28125, 0.2734375, 0.296875, 0.3125, 0.3359375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.328125, 0.328125, 0.3671875, 0.3984375, 0.4453125, 0.4375, 0.40625, 0.34375, 0.328125, 0.3515625, 0.34375, 0.3515625, 0.40625, 0.5078125, 0.546875, 0.546875, 0.53125, 0.515625, 0.5390625, 0.5390625, 0.5, 0.421875, 0.375, 0.3828125, 0.453125, 0.5234375, 0.5859375, 0.5703125, 0.5234375, 0.4609375, 0.4296875, 0.4375, 0.453125, 0.4921875, 0.5, 0.5, 0.484375, 0.453125, 0.4453125, 0.4453125, 0.484375, 0.5625, 0.59375, 0.5859375, 0.5546875, 0.53125, 0.5078125, 0.515625, 0.53125, 0.5546875, 0.5625, 0.5625, 0.53125, 0.5078125, 0.5, 0.5078125, 0.4765625, 0.4296875, 0.390625, 0.40625, 0.421875, 0.421875, 0.421875, 0.40625, 0.4453125, 0.484375, 0.515625, 0.4921875, 0.4609375, 0.3984375, 0.3828125, 0.3828125, 0.3671875, 0.375, 0.359375, 0.359375, 0.34375, 0.3046875, 0.28125, 0.265625, 0.3046875, 0.359375, 0.40625, 0.390625, 0.34375, 0.3203125, 0.3125, 0.3125, 0.2578125, 0.15625, 0.1171875, 0.125, 0.125, 0.1171875, 0.078125, 0.0703125, 0.1171875, 0.1875, 0.21875, 0.1875, 0.203125, 0.2578125, 0.1796875, 0.0390625, 1.953125, 1.953125, 0.046875, 0.1328125, 0.1953125, 0.171875, 0.0859375, 1.9609375, 1.90625, 1.8984375, 1.921875, 1.921875, 1.9296875, 1.9140625, 1.953125, 1.984375, 0.0, 1.9765625, 1.984375, 0.0078125, 0.046875, 0.0390625, 1.96875, 1.8828125, 1.8203125, 1.8359375, 1.8515625, 1.8671875, 1.859375, 1.8515625, 1.8515625, 1.890625, 1.8984375, 1.8984375, 1.859375, 1.796875, 1.765625, 1.7421875, 1.7890625, 1.84375, 1.890625, 1.8671875, 1.7890625, 1.6640625, 1.59375, 1.5859375, 1.6328125, 1.6796875, 1.6875, 1.6640625, 1.6796875, 1.703125, 1.71875, 1.71875, 1.671875, 1.6328125, 1.609375, 1.6171875, 1.578125, 1.5234375, 1.4765625, 1.484375, 1.515625, 1.5703125, 1.59375, 1.5859375, 1.5703125, 1.5546875, 1.5234375, 1.5234375, 1.546875, 1.609375, 1.625, 1.6015625, 1.6015625, 1.609375, 1.625, 1.609375, 1.59375, 1.5546875, 1.5546875, 1.546875, 1.5234375, 1.453125, 1.4375, 1.4375, 1.4296875, 1.421875, 1.3984375, 1.40625, 1.4140625, 1.4453125, 1.4453125, 1.4453125, 1.4765625, 1.53125, 1.5625, 1.546875, 1.5546875, 1.5625, 1.5859375, 1.578125, 1.5546875, 1.5, 1.4765625, 1.4921875, 1.484375, 1.4609375, 1.453125, 1.453125, 1.46875, 1.4609375, 1.453125, 1.4453125, 1.5078125, 1.578125, 1.6328125, 1.625, 1.6171875, 1.59375, 1.609375, 1.625, 1.5859375, 1.5234375, 1.4765625, 1.5, 1.5, 1.5, 1.484375, 1.4765625, 1.5390625, 1.6171875, 1.6796875, 1.671875, 1.640625, 1.59375, 1.578125, 1.5859375, 1.6015625, 1.6015625, 1.5859375, 1.59375, 1.609375, 1.6640625, 1.6875, 1.703125, 1.6953125, 1.6875, 1.6875, 1.6953125, 1.71875, 1.703125, 1.71875, 1.7265625, 1.7421875, 1.765625, 1.765625, 1.78125, 1.7890625, 1.828125, 1.84375, 1.859375, 1.859375, 1.859375, 1.859375, 1.875, 1.8984375, 1.953125, 1.984375, 1.9921875, 1.984375, 1.953125, 1.9453125, 1.9609375, 1.9765625, 0.0, 0.0, 0.0078125, 1.9921875, 0.0, 0.0, 0.015625, 0.015625, 0.0, 0.0, 0.0, 0.046875, 0.09375, 0.1328125, 0.125, 0.1484375, 0.171875, 0.1953125, 0.1875, 0.1953125, 0.1875, 0.21875, 0.2265625, 0.21875, 0.1640625, 0.1484375, 0.1484375, 0.203125, 0.25, 0.2890625, 0.28125, 0.2890625, 0.3046875, 0.3046875, 0.2890625, 0.296875, 0.3046875, 0.3203125, 0.3359375, 0.359375, 0.359375, 0.359375, 0.34375, 0.328125, 0.34375, 0.34375, 0.3671875, 0.3671875, 0.3828125, 0.375, 0.3828125, 0.3828125, 0.40625, 0.390625, 0.375, 0.3515625, 0.3671875, 0.375, 0.3828125, 0.3984375, 0.390625, 0.4296875, 0.4765625, 0.515625, 0.515625, 0.5234375, 0.5234375, 0.5, 0.46875, 0.4453125, 0.453125, 0.4765625, 0.484375, 0.5, 0.4921875, 0.4921875, 0.4921875, 0.5, 0.5, 0.484375, 0.4921875, 0.484375, 0.4765625, 0.4921875, 0.4765625, 0.4921875, 0.484375, 0.484375, 0.484375, 0.4921875, 0.5390625, 0.5546875, 0.5625, 0.546875, 0.5078125, 0.5, 0.4921875, 0.4921875, 0.5234375, 0.5234375, 0.53125, 0.515625, 0.5, 0.4921875, 0.484375, 0.5, 0.484375, 0.4765625, 0.4453125, 0.4453125, 0.4375, 0.4375, 0.421875, 0.40625, 0.3828125, 0.40625, 0.4453125, 0.4765625, 0.453125, 0.453125, 0.4375, 0.4453125, 0.4296875, 0.421875, 0.4140625, 0.4140625, 0.40625, 0.40625, 0.3984375, 0.375, 0.3203125, 0.296875, 0.28125, 0.2890625, 0.2734375, 0.2734375, 0.2890625, 0.2890625, 0.296875, 0.265625, 0.2265625, 0.203125, 0.1953125, 0.203125, 0.1875, 0.1953125, 0.1953125, 0.1875, 0.171875, 0.15625, 0.140625, 0.1328125, 0.109375, 0.1171875, 0.125, 0.1328125, 0.109375, 0.109375, 0.1015625, 0.09375, 0.0546875, 0.0390625, 0.03125, 0.0390625, 0.0234375, 0.0234375, 0.015625, 0.0, 0.0, 1.984375, 0.0, 1.9921875, 1.9765625, 1.9921875, 0.0078125, 0.0234375, 0.0078125, 1.984375, 1.9921875, 1.953125, 1.8984375, 1.8515625, 1.8515625, 1.84375, 1.8359375, 1.8203125, 1.828125, 1.8125, 1.7890625, 1.8046875, 1.84375, 1.859375, 1.8671875, 1.8203125, 1.78125, 1.7421875, 1.7265625, 1.7265625, 1.7109375, 1.7265625, 1.734375, 1.7578125, 1.7421875, 1.7421875, 1.71875, 1.71875, 1.7109375, 1.71875, 1.7109375, 1.6953125, 1.6640625, 1.640625, 1.6328125, 1.6328125, 1.6171875, 1.6171875, 1.609375, 1.609375, 1.59375, 1.59375, 1.5859375, 1.578125, 1.546875, 1.5390625, 1.53125, 1.53125, 1.546875, 1.546875, 1.546875, 1.5390625, 1.5390625, 1.53125, 1.5390625, 1.5390625, 1.5234375, 1.53125, 1.515625, 1.515625, 1.5078125, 1.4921875, 1.5, 1.4921875, 1.5, 1.484375, 1.4921875, 1.484375, 1.4765625, 1.4765625, 1.46875, 1.484375, 1.5078125, 1.53125, 1.5234375, 1.53125, 1.53125, 1.515625, 1.5, 1.4765625, 1.484375, 1.4921875, 1.484375, 1.484375, 1.46875, 1.4609375, 1.46875, 1.4609375, 1.4765625, 1.4765625, 1.484375, 1.5, 1.4921875, 1.5078125, 1.5, 1.515625, 1.53125, 1.5546875, 1.5546875, 1.5625, 1.5625, 1.5625, 1.546875, 1.5234375, 1.5390625, 1.546875, 1.546875, 1.5625, 1.5625, 1.5703125, 1.578125, 1.59375, 1.59375, 1.59375, 1.5859375, 1.5703125, 1.5859375, 1.5859375, 1.59375, 1.609375, 1.6171875, 1.640625, 1.6484375, 1.6640625, 1.671875, 1.671875, 1.671875, 1.6953125, 1.703125, 1.7265625, 1.734375, 1.75, 1.7421875, 1.7578125, 1.7578125, 1.75, 1.7578125, 1.7578125, 1.78125, 1.7890625, 1.765625, 1.765625, 1.765625, 1.7734375, 1.7890625, 1.7890625, 1.8125, 1.8125, 1.828125, 1.828125, 1.84375, 1.859375, 1.859375, 1.875, 1.9140625, 1.9296875, 1.9453125, 1.9453125, 1.9609375, 1.9765625, 1.96875, 1.984375, 1.9921875, 0.0078125, 0.0, 0.0078125, 0.0078125, 0.0234375, 0.03125, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.0390625, 0.0703125, 0.0859375, 0.0859375, 0.109375, 0.1171875, 0.1328125, 0.1328125, 0.1484375, 0.1484375, 0.15625, 0.1796875, 0.1796875, 0.1953125, 0.1953125, 0.203125, 0.2265625, 0.21875, 0.2421875, 0.2578125, 0.28125, 0.28125, 0.296875, 0.296875, 0.3203125, 0.3203125, 0.328125, 0.296875, 0.28125, 0.28125, 0.3046875, 0.3046875, 0.3203125, 0.3125, 0.3359375, 0.375, 0.390625, 0.40625, 0.40625, 0.40625, 0.421875, 0.4140625, 0.4296875, 0.4375, 0.4609375, 0.4609375, 0.453125, 0.46875, 0.4765625, 0.4765625, 0.4765625, 0.453125, 0.453125, 0.4609375, 0.4609375, 0.46875, 0.46875, 0.4765625, 0.4765625, 0.46875, 0.4765625, 0.484375, 0.484375, 0.4921875, 0.484375, 0.4921875, 0.4921875, 0.5234375, 0.5390625, 0.53125, 0.5390625, 0.53125, 0.5390625, 0.53125, 0.5390625, 0.5234375, 0.5, 0.5078125, 0.515625, 0.5078125, 0.515625, 0.515625, 0.5, 0.5, 0.4921875, 0.484375, 0.5, 0.484375, 0.484375, 0.4765625, 0.484375, 0.4765625, 0.4765625, 0.4609375, 0.4609375, 0.4609375, 0.4453125, 0.453125, 0.4375, 0.4375, 0.4453125, 0.4609375, 0.4921875, 0.4765625, 0.4765625, 0.4765625, 0.46875, 0.4609375, 0.4609375, 0.453125, 0.4375, 0.4375, 0.421875, 0.421875, 0.4140625, 0.4140625, 0.40625, 0.359375, 0.34375, 0.328125, 0.3359375, 0.3203125, 0.3203125, 0.296875, 0.3046875, 0.328125, 0.34375, 0.328125, 0.328125, 0.3046875, 0.3046875, 0.2890625, 0.296875, 0.2734375, 0.265625, 0.2421875, 0.2109375, 0.203125, 0.1875, 0.1953125, 0.1875, 0.171875, 0.171875, 0.15625, 0.1640625, 0.1484375, 0.140625, 0.125, 0.1171875, 0.109375, 0.109375, 0.1171875, 0.1015625, 0.1015625, 0.0859375, 0.078125, 0.0625, 0.0625, 0.046875, 0.0390625, 0.0234375, 0.03125, 0.0390625, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.015625, 1.9609375, 1.9296875, 1.921875, 1.9296875, 1.90625, 1.8984375, 1.890625, 1.8828125, 1.859375, 1.859375, 1.8671875, 1.859375, 1.859375, 1.8359375, 1.84375, 1.8359375, 1.8203125, 1.8125, 1.8046875, 1.796875, 1.796875, 1.7734375, 1.7734375, 1.7578125, 1.7578125, 1.7421875, 1.7421875, 1.71875, 1.7109375, 1.6953125, 1.6875, 1.671875, 1.671875, 1.6640625, 1.65625, 1.65625, 1.65625, 1.6640625, 1.6484375, 1.640625, 1.625, 1.625, 1.6171875, 1.6171875, 1.609375, 1.59375, 1.59375, 1.578125, 1.578125, 1.5625, 1.5625, 1.5546875, 1.5546875, 1.5546875, 1.5546875, 1.5625, 1.5546875, 1.5546875, 1.5390625, 1.546875, 1.53125, 1.5390625, 1.5234375, 1.53125, 1.515625, 1.5, 1.5078125, 1.5, 1.5078125, 1.5, 1.5, 1.484375, 1.5, 1.5, 1.5, 1.484375, 1.4921875, 1.4921875, 1.484375, 1.5, 1.5, 1.484375, 1.484375, 1.46875, 1.4609375, 1.46875, 1.46875, 1.4609375, 1.46875, 1.4609375, 1.46875, 1.4609375, 1.46875, 1.453125, 1.46875, 1.4609375, 1.46875, 1.4609375, 1.4765625, 1.46875, 1.4765625, 1.46875, 1.4921875, 1.5078125, 1.5078125, 1.5234375, 1.515625, 1.5234375, 1.53125, 1.53125, 1.5390625, 1.53125, 1.546875, 1.5546875, 1.5546875, 1.5625, 1.5625, 1.5703125, 1.5703125, 1.578125, 1.578125, 1.5859375, 1.5859375, 1.59375, 1.59375, 1.6015625, 1.6171875, 1.6171875, 1.625, 1.625, 1.6484375, 1.65625, 1.671875, 1.671875, 1.671875, 1.6875, 1.6875, 1.6953125, 1.6953125, 1.7109375, 1.71875, 1.7421875, 1.75, 1.75, 1.765625, 1.765625, 1.78125, 1.78125, 1.8046875, 1.8046875, 1.8046875, 1.7890625, 1.8046875, 1.8046875, 1.828125, 1.828125, 1.8515625, 1.8515625, 1.8671875, 1.875, 1.8984375, 1.90625, 1.9375, 1.9453125, 1.9453125, 1.953125, 1.9609375, 1.984375, 1.9921875, 1.9921875, 1.9921875, 1.9765625, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 0.0, 0.015625, 0.015625, 0.03125, 0.015625, 0.0234375, 0.03125, 0.0390625, 0.0546875, 0.0546875, 0.078125, 0.078125, 0.09375, 0.1015625, 0.125, 0.140625, 0.15625, 0.1484375, 0.1640625, 0.171875, 0.171875, 0.1875, 0.1875, 0.203125, 0.203125, 0.2109375, 0.2109375, 0.21875, 0.2265625, 0.25, 0.25, 0.2578125, 0.2578125, 0.2578125, 0.28125, 0.2890625, 0.3046875, 0.296875, 0.3125, 0.3203125, 0.3203125, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.34375, 0.34375, 0.359375, 0.3671875, 0.3671875, 0.375, 0.375, 0.3828125, 0.390625, 0.421875, 0.4296875, 0.4375, 0.4296875, 0.4453125, 0.453125, 0.4609375, 0.4609375, 0.4609375, 0.46875, 0.46875, 0.46875, 0.4765625, 0.4765625, 0.46875, 0.4765625, 0.4765625, 0.4921875, 0.484375, 0.5, 0.4765625, 0.4765625, 0.4765625, 0.4921875, 0.484375, 0.484375, 0.484375, 0.484375, 0.484375, 0.4921875, 0.4921875, 0.4921875, 0.5, 0.4921875, 0.5, 0.4921875, 0.5, 0.4921875, 0.4921875, 0.5, 0.5, 0.5, 0.5078125, 0.5, 0.5, 0.5, 0.4921875, 0.5, 0.484375, 0.484375, 0.4765625, 0.484375, 0.484375, 0.46875, 0.4765625, 0.4609375, 0.46875, 0.4609375, 0.453125, 0.453125, 0.4453125, 0.453125, 0.4453125, 0.4375, 0.421875, 0.4296875, 0.4140625, 0.421875, 0.4140625, 0.40625, 0.4140625, 0.3984375, 0.390625, 0.359375, 0.3671875, 0.359375, 0.34375, 0.34375, 0.3359375, 0.3359375, 0.3359375, 0.3203125, 0.3203125, 0.296875, 0.296875, 0.296875, 0.28125, 0.28125, 0.2734375, 0.2578125, 0.2578125, 0.25, 0.25, 0.2421875, 0.2421875, 0.2265625, 0.2265625, 0.203125, 0.2109375, 0.203125, 0.1875, 0.1875, 0.1640625, 0.1640625, 0.15625, 0.140625, 0.1328125, 0.109375, 0.1171875, 0.109375, 0.1015625, 0.09375, 0.078125, 0.0703125, 0.0625, 0.0625, 0.0390625, 0.0390625, 0.03125, 0.0234375, 0.0234375, 0.015625, 1.9921875, 0.0, 1.984375, 0.0, 1.984375, 1.984375, 1.9765625, 1.9765625, 1.96875, 1.953125, 1.953125, 1.9296875, 1.9296875, 1.90625, 1.8984375, 1.875, 1.875, 1.8671875, 1.8671875, 1.84375, 1.8359375, 1.8203125, 1.8359375, 1.828125, 1.828125, 1.8046875, 1.796875, 1.8046875, 1.7890625, 1.7890625, 1.765625, 1.765625, 1.75, 1.7578125, 1.734375, 1.7265625, 1.71875, 1.71875, 1.71875, 1.7109375, 1.703125, 1.6796875, 1.6875, 1.6796875, 1.6875, 1.671875, 1.6640625, 1.6484375, 1.6484375, 1.640625, 1.640625, 1.625, 1.625, 1.6171875, 1.609375, 1.6015625, 1.59375, 1.5859375, 1.5859375, 1.5703125, 1.5703125, 1.5546875, 1.5625, 1.5625, 1.5546875, 1.5546875, 1.5390625, 1.5390625, 1.5390625, 1.5390625, 1.53125, 1.53125, 1.515625, 1.5234375, 1.515625, 1.5078125, 1.5078125, 1.5, 1.5078125, 1.5, 1.5, 1.484375, 1.4921875, 1.4921875, 1.4921875, 1.4765625, 1.484375, 1.4765625, 1.484375, 1.484375, 1.4765625, 1.484375, 1.484375, 1.484375, 1.484375, 1.46875, 1.4765625, 1.4765625, 1.4765625, 1.46875, 1.4765625, 1.46875, 1.4765625, 1.46875, 1.4765625, 1.46875, 1.484375, 1.4765625, 1.4765625, 1.484375, 1.484375, 1.4921875, 1.4921875, 1.5, 1.515625, 1.5234375, 1.515625, 1.53125, 1.5234375, 1.5390625, 1.5390625, 1.5390625, 1.546875, 1.5390625, 1.546875, 1.546875, 1.5546875, 1.5546875, 1.5703125, 1.5625, 1.578125, 1.578125, 1.5859375, 1.578125, 1.59375, 1.5859375, 1.59375, 1.6015625, 1.6015625, 1.609375, 1.6171875, 1.625, 1.625, 1.640625, 1.640625, 1.6640625, 1.6640625, 1.671875, 1.6640625, 1.6796875, 1.6875, 1.6953125, 1.7109375, 1.703125, 1.71875, 1.7265625, 1.734375, 1.75, 1.75, 1.765625, 1.7734375, 1.78125, 1.796875, 1.796875, 1.8046875, 1.8046875, 1.8203125, 1.828125, 1.84375, 1.8359375, 1.8515625, 1.8515625, 1.875, 1.8828125, 1.890625, 1.890625, 1.8984375, 1.9140625, 1.9140625, 1.9375, 1.9453125, 1.9453125, 1.96875, 1.96875, 1.984375, 1.9765625, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 0.0, 0.0078125, 0.0078125, 0.0234375, 0.03125, 0.046875, 0.046875, 0.0625, 0.0703125, 0.0859375, 0.09375, 0.09375, 0.1015625, 0.1171875, 0.1171875, 0.140625, 0.1484375, 0.140625, 0.15625, 0.1640625, 0.171875, 0.1875, 0.1796875, 0.1953125, 0.203125, 0.21875, 0.21875, 0.234375, 0.2265625, 0.25, 0.2578125, 0.2734375, 0.2734375, 0.265625, 0.2734375, 0.2734375, 0.296875, 0.3046875, 0.3046875, 0.296875, 0.3125, 0.3203125, 0.34375, 0.3515625, 0.34375, 0.359375, 0.3515625, 0.3671875, 0.3828125, 0.375, 0.390625, 0.3828125, 0.3984375, 0.3984375, 0.4140625, 0.40625, 0.421875, 0.421875, 0.4296875, 0.4296875, 0.4296875, 0.4453125, 0.4375, 0.453125, 0.4453125, 0.4609375, 0.453125, 0.46875, 0.4609375, 0.4765625, 0.46875, 0.4765625, 0.4765625, 0.484375, 0.484375, 0.4921875, 0.5, 0.4921875, 0.5, 0.484375, 0.5, 0.4921875, 0.5078125, 0.5, 0.5078125, 0.5, 0.5078125, 0.5078125, 0.5, 0.5078125, 0.5078125, 0.5078125, 0.5078125, 0.5078125, 0.5, 0.5078125, 0.5078125, 0.5, 0.5078125, 0.5078125, 0.5, 0.5078125, 0.5, 0.5, 0.5, 0.4921875, 0.5, 0.484375, 0.4921875, 0.484375, 0.46875, 0.4765625, 0.4765625, 0.46875, 0.46875, 0.4609375, 0.4609375, 0.453125, 0.453125, 0.4453125, 0.453125, 0.4375, 0.4375, 0.421875, 0.4296875, 0.421875, 0.4296875, 0.4140625, 0.4140625, 0.40625, 0.3984375, 0.40625, 0.390625, 0.390625, 0.375, 0.375, 0.3671875, 0.3671875, 0.359375, 0.359375, 0.3515625, 0.328125, 0.328125, 0.3125, 0.3125, 0.3046875, 0.296875, 0.3046875, 0.2890625, 0.2890625, 0.2734375, 0.2578125, 0.265625, 0.25, 0.25, 0.2421875, 0.2265625, 0.21875, 0.203125, 0.2109375, 0.1953125, 0.1953125, 0.1796875, 0.1640625, 0.171875, 0.15625, 0.15625, 0.140625, 0.125, 0.125, 0.1171875, 0.1171875, 0.1015625, 0.09375, 0.0703125, 0.0703125, 0.0625, 0.0546875, 0.0546875, 0.0390625, 0.03125, 0.015625, 0.015625, 0.0078125, 0.0, 0.0, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 1.984375, 1.96875, 1.96875, 1.953125, 1.953125, 1.9453125, 1.9375, 1.921875, 1.9140625, 1.8984375, 1.8984375, 1.8828125, 1.890625, 1.8828125, 1.859375, 1.8515625, 1.8359375, 1.8359375, 1.8359375, 1.8203125, 1.8125, 1.796875, 1.8046875, 1.7890625, 1.7890625, 1.7734375, 1.765625, 1.7578125, 1.75, 1.75, 1.75, 1.734375, 1.71875, 1.71875, 1.703125, 1.7109375, 1.6875, 1.6875, 1.671875, 1.671875, 1.671875, 1.671875, 1.65625, 1.65625, 1.6328125, 1.6328125, 1.6328125, 1.6171875, 1.625, 1.6171875, 1.609375, 1.59375, 1.59375, 1.5859375, 1.5859375, 1.578125, 1.5625, 1.5625, 1.5546875, 1.5625, 1.5546875, 1.5546875, 1.5390625, 1.5390625, 1.53125, 1.5390625, 1.5390625, 1.5234375, 1.5234375, 1.515625, 1.5234375, 1.515625, 1.5078125, 1.515625, 1.515625, 1.5, 1.5078125, 1.4921875, 1.5, 1.4921875, 1.5, 1.484375, 1.4921875, 1.4765625, 1.484375, 1.484375, 1.4765625, 1.484375, 1.484375, 1.4765625, 1.484375, 1.4765625, 1.484375, 1.4765625, 1.484375, 1.484375, 1.4765625, 1.484375, 1.4765625, 1.484375, 1.484375, 1.4765625, 1.484375, 1.484375, 1.4765625, 1.4921875, 1.484375, 1.5, 1.4921875, 1.5, 1.4921875, 1.5078125, 1.5078125, 1.515625, 1.515625, 1.5078125, 1.5234375, 1.515625, 1.5234375, 1.515625, 1.5390625, 1.5390625, 1.53125, 1.5390625, 1.546875, 1.546875, 1.5625, 1.5546875, 1.5625, 1.5546875, 1.5703125, 1.5703125, 1.5859375, 1.59375, 1.5859375, 1.6015625, 1.59375, 1.609375, 1.609375, 1.625, 1.6171875, 1.6328125, 1.625, 1.6484375, 1.65625, 1.65625, 1.671875, 1.6640625, 1.6796875, 1.6875, 1.6875, 1.703125, 1.7109375, 1.7109375, 1.71875, 1.7109375, 1.7265625, 1.734375, 1.75, 1.75, 1.765625, 1.7578125, 1.7734375, 1.78125, 1.8046875, 1.8046875, 1.8125, 1.8046875, 1.8203125, 1.8203125, 1.84375, 1.84375, 1.859375, 1.859375, 1.8671875, 1.875, 1.875, 1.8984375, 1.8984375, 1.921875, 1.9296875, 1.921875, 1.9375, 1.9375, 1.9609375, 1.96875, 1.96875, 1.984375, 1.9765625, 1.9921875, 1.984375, 0.0, 0.0, 1.9921875, 0.0, 0.0078125, 0.0234375, 0.03125, 0.0390625, 0.046875, 0.0546875, 0.0546875, 0.0625, 0.0703125, 0.0859375, 0.1015625, 0.09375, 0.109375, 0.109375, 0.1328125, 0.140625, 0.140625, 0.15625, 0.1484375, 0.171875, 0.171875, 0.1875, 0.1953125, 0.1953125, 0.2109375, 0.2109375, 0.2109375, 0.2265625, 0.234375, 0.234375, 0.25, 0.25, 0.265625, 0.2578125, 0.28125, 0.2890625, 0.296875, 0.3046875, 0.296875, 0.3125, 0.3125, 0.328125, 0.3359375, 0.3359375, 0.3515625, 0.34375, 0.359375, 0.3515625, 0.3671875, 0.375, 0.3828125, 0.390625, 0.390625, 0.3828125, 0.3984375, 0.40625, 0.4140625, 0.421875, 0.421875, 0.4296875, 0.4296875, 0.4296875, 0.4375, 0.4453125, 0.453125, 0.453125, 0.453125, 0.453125, 0.4609375, 0.46875, 0.4765625, 0.46875, 0.4765625, 0.46875, 0.484375, 0.46875, 0.484375, 0.4765625, 0.4921875, 0.4921875, 0.4921875, 0.5, 0.4921875, 0.5, 0.5, 0.5078125, 0.5078125, 0.5, 0.5078125, 0.5078125, 0.5, 0.5078125, 0.5, 0.5078125, 0.5078125, 0.5, 0.5078125, 0.5, 0.5078125, 0.5078125, 0.5, 0.5078125, 0.5, 0.5078125, 0.5078125, 0.5, 0.5, 0.4921875, 0.5, 0.4921875, 0.4921875, 0.4921875, 0.4765625, 0.4921875, 0.4765625, 0.484375, 0.4765625, 0.4609375, 0.46875, 0.46875, 0.4609375, 0.46875, 0.4609375, 0.453125, 0.4453125, 0.4453125, 0.4375, 0.4375, 0.4296875, 0.4296875, 0.4296875, 0.421875, 0.4296875, 0.4140625, 0.40625, 0.3984375, 0.40625, 0.390625, 0.390625, 0.375, 0.375, 0.375, 0.359375, 0.3671875, 0.3515625, 0.359375, 0.34375, 0.3359375, 0.3203125, 0.3203125, 0.3125, 0.3125, 0.3125, 0.296875, 0.28125, 0.28125, 0.265625, 0.2734375, 0.265625, 0.265625, 0.25, 0.2421875, 0.2265625, 0.234375, 0.21875, 0.21875, 0.203125, 0.1875, 0.1875, 0.1796875, 0.171875, 0.171875, 0.15625, 0.15625, 0.1484375, 0.125, 0.125, 0.1171875, 0.1171875, 0.109375, 0.1015625, 0.09375, 0.0859375, 0.0625, 0.0546875, 0.046875, 0.0546875, 0.0390625, 0.0234375, 0.015625, 0.0, 0.0078125, 1.9921875, 0.0, 1.9921875, 0.0, 1.984375, 1.9921875, 1.9765625, 1.984375, 1.96875, 1.96875, 1.953125, 1.9609375, 1.9375, 1.9375, 1.9140625, 1.9140625, 1.8984375, 1.8984375, 1.890625, 1.890625, 1.8828125, 1.8671875, 1.8515625, 1.8515625, 1.8359375, 1.84375, 1.8203125, 1.8203125, 1.8125, 1.796875, 1.796875, 1.78125, 1.7890625, 1.7734375, 1.7734375, 1.7578125, 1.7421875, 1.75, 1.734375, 1.734375, 1.7265625, 1.7265625, 1.7109375, 1.703125, 1.6875, 1.6875, 1.6796875, 1.6796875, 1.671875, 1.671875, 1.65625, 1.6484375, 1.640625, 1.6328125, 1.6328125, 1.625, 1.625, 1.609375, 1.609375, 1.6015625, 1.6015625, 1.59375, 1.59375, 1.5859375, 1.5859375, 1.5703125, 1.5703125, 1.5625, 1.5546875, 1.5625, 1.5625, 1.546875, 1.546875, 1.5390625, 1.53125, 1.5390625, 1.5390625, 1.5234375, 1.5234375, 1.515625, 1.515625, 1.515625, 1.515625, 1.515625, 1.5078125, 1.5078125, 1.5, 1.5, 1.5, 1.4921875, 1.4921875, 1.4921875, 1.4921875, 1.484375, 1.484375, 1.484375, 1.484375, 1.484375, 1.4765625, 1.484375, 1.4765625, 1.4765625, 1.484375, 1.4765625, 1.484375, 1.4765625, 1.484375, 1.4765625, 1.484375, 1.4765625, 1.484375, 1.4765625, 1.484375, 1.4765625, 1.484375, 1.484375, 1.484375, 1.4921875, 1.4921875, 1.4921875, 1.4921875, 1.5, 1.5, 1.5, 1.5078125, 1.5, 1.515625, 1.5078125, 1.515625, 1.5078125, 1.5234375, 1.515625, 1.53125, 1.53125, 1.5390625, 1.5390625, 1.546875, 1.5546875, 1.5546875, 1.5625, 1.5546875, 1.5625, 1.5546875, 1.578125, 1.5859375, 1.578125, 1.5859375, 1.5859375, 1.6015625, 1.6015625, 1.6015625, 1.609375, 1.609375, 1.625, 1.625, 1.6328125, 1.6328125, 1.640625, 1.640625, 1.65625, 1.65625, 1.671875, 1.6796875, 1.6875, 1.6796875, 1.6953125, 1.6953125, 1.7109375, 1.71875, 1.71875, 1.734375, 1.734375, 1.75, 1.7421875, 1.7578125, 1.75, 1.765625, 1.7734375, 1.796875, 1.8046875, 1.8046875, 1.8046875, 1.8125, 1.8125, 1.828125, 1.8359375, 1.8515625, 1.859375, 1.859375, 1.8671875, 1.8671875, 1.8828125, 1.8828125, 1.90625, 1.9140625, 1.921875, 1.9296875, 1.9375, 1.9375, 1.9375, 1.9609375, 1.9765625, 1.9765625, 1.984375, 1.984375, 1.9921875, 1.9921875, 0.0, 1.984375, 1.9921875, 1.9921875, 0.0, 0.015625, 0.015625, 0.03125, 0.03125, 0.0390625, 0.0390625, 0.0625, 0.0703125, 0.078125, 0.09375, 0.09375, 0.1015625, 0.1015625, 0.1171875, 0.125, 0.1328125, 0.1484375, 0.1484375, 0.15625, 0.15625, 0.171875, 0.171875, 0.1875, 0.1875, 0.2109375, 0.203125, 0.21875, 0.21875, 0.234375, 0.234375, 0.234375, 0.2421875, 0.2421875, 0.265625, 0.2734375, 0.2734375, 0.28125, 0.28125, 0.296875, 0.3046875, 0.3046875, 0.3125, 0.3203125, 0.3203125, 0.3359375, 0.3359375, 0.3515625, 0.3359375, 0.34375, 0.34375, 0.359375, 0.359375, 0.375, 0.3671875, 0.3828125, 0.375, 0.390625, 0.390625, 0.390625, 0.40625, 0.40625, 0.421875, 0.421875, 0.4140625, 0.421875, 0.421875, 0.4296875, 0.4375, 0.4453125, 0.4375, 0.4453125, 0.4453125, 0.4609375, 0.453125, 0.4609375, 0.4609375, 0.453125, 0.46875, 0.46875, 0.4765625, 0.46875, 0.4765625, 0.4765625, 0.484375, 0.484375, 0.484375, 0.484375, 0.4921875, 0.4921875, 0.5, 0.4921875, 0.5, 0.4921875, 0.5, 0.5, 0.5, 0.4921875, 0.5, 0.4921875, 0.5, 0.4921875, 0.5, 0.5, 0.4921875, 0.5, 0.4921875, 0.5, 0.4921875, 0.5, 0.4921875, 0.5, 0.5, 0.484375, 0.4921875, 0.484375, 0.484375, 0.484375, 0.484375, 0.46875, 0.4765625, 0.4765625, 0.4765625, 0.4609375, 0.4609375, 0.453125, 0.4609375, 0.4609375, 0.453125, 0.453125, 0.4453125, 0.4453125, 0.4375, 0.4296875, 0.4296875, 0.421875, 0.421875, 0.421875, 0.4140625, 0.421875, 0.40625, 0.4140625, 0.3984375, 0.3828125, 0.390625, 0.390625, 0.375, 0.375, 0.3671875, 0.3671875, 0.3515625, 0.34375, 0.3515625, 0.3359375, 0.34375, 0.3359375, 0.328125, 0.3125, 0.3125, 0.3046875, 0.3046875, 0.2890625, 0.2890625, 0.2890625, 0.265625, 0.265625, 0.2578125, 0.2578125, 0.2578125, 0.2421875, 0.234375, 0.21875, 0.2265625, 0.2109375, 0.2109375, 0.1953125, 0.1953125, 0.1953125, 0.1875, 0.1796875, 0.15625, 0.1640625, 0.1484375, 0.15625, 0.1484375, 0.1328125, 0.1328125, 0.125, 0.1015625, 0.1015625, 0.09375, 0.09375, 0.078125, 0.078125, 0.0625, 0.0625, 0.046875, 0.0546875, 0.03125, 0.0234375, 0.0078125, 0.0078125, 0.0, 0.0, 0.0, 1.9921875, 0.0, 1.984375, 1.9921875, 1.984375, 1.9765625, 1.9765625, 1.9609375, 1.9609375, 1.953125, 1.953125, 1.9375, 1.9375, 1.9140625, 1.90625, 1.890625, 1.8984375, 1.890625, 1.875, 1.875, 1.859375, 1.8671875, 1.859375, 1.8359375, 1.8359375, 1.8203125, 1.828125, 1.8125, 1.8203125, 1.8125, 1.8125, 1.8046875, 1.7890625, 1.7734375, 1.765625, 1.7578125, 1.765625, 1.75, 1.75, 1.734375, 1.734375, 1.7265625, 1.7265625, 1.703125, 1.703125, 1.6875, 1.6953125, 1.6796875, 1.6875, 1.671875, 1.6796875, 1.671875, 1.671875, 1.65625, 1.65625, 1.6484375, 1.6484375, 1.640625, 1.6328125, 1.625, 1.625, 1.6171875, 1.6171875, 1.609375, 1.609375, 1.59375, 1.59375, 1.5859375, 1.5859375, 1.5703125, 1.578125, 1.5703125, 1.578125, 1.5703125, 1.5703125, 1.5546875, 1.5546875, 1.546875, 1.5546875, 1.5390625, 1.5390625, 1.5390625, 1.53125, 1.5390625, 1.53125, 1.53125, 1.5234375, 1.5234375, 1.515625, 1.5234375, 1.515625, 1.5078125, 1.515625, 1.5078125, 1.515625, 1.5, 1.5, 1.4921875, 1.5, 1.5078125, 1.5, 1.5078125, 1.5, 1.5078125, 1.5, 1.5, 1.5078125, 1.5, 1.5078125, 1.5, 1.5078125, 1.5, 1.5078125, 1.5, 1.5078125, 1.5, 1.5, 1.5078125, 1.5078125, 1.515625, 1.5078125, 1.515625, 1.515625, 1.5234375, 1.515625, 1.5234375, 1.515625, 1.5234375, 1.53125, 1.53125, 1.5390625, 1.53125, 1.5390625, 1.546875, 1.5390625, 1.546875, 1.5390625, 1.546875, 1.546875, 1.5625, 1.5625, 1.5625, 1.5703125, 1.5703125, 1.578125, 1.578125, 1.5859375, 1.578125, 1.5859375, 1.5859375, 1.6015625, 1.609375, 1.609375, 1.6171875, 1.609375, 1.6171875, 1.625, 1.6171875, 1.6328125, 1.625, 1.640625, 1.6484375, 1.6484375, 1.65625, 1.65625, 1.671875, 1.671875, 1.6875, 1.6796875, 1.6953125, 1.6875, 1.703125, 1.703125, 1.7109375, 1.734375, 1.7265625, 1.7421875, 1.7421875, 1.7421875, 1.75, 1.75, 1.7578125, 1.765625, 1.7578125, 1.7734375, 1.78125, 1.796875, 1.796875, 1.8125, 1.8203125, 1.8125, 1.828125, 1.8203125, 1.8359375, 1.8515625, 1.859375, 1.875, 1.8671875, 1.875, 1.875, 1.890625, 1.890625, 1.890625, 1.90625, 1.9140625, 1.9140625, 1.9296875, 1.9453125, 1.9453125, 1.9609375, 1.953125, 1.9765625, 1.984375, 1.984375, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.9921875, 0.0, 0.0078125, 0.0, 0.015625, 0.0234375, 0.03125, 0.03125, 0.0390625, 0.0390625, 0.0546875, 0.046875, 0.0625, 0.0859375, 0.09375, 0.09375, 0.0859375, 0.1015625, 0.109375, 0.1171875, 0.1171875, 0.1328125, 0.1328125, 0.140625, 0.140625, 0.15625, 0.15625, 0.171875, 0.171875, 0.1875, 0.1796875, 0.1953125, 0.1875, 0.203125, 0.2109375, 0.2109375, 0.21875, 0.21875, 0.234375, 0.2421875, 0.25, 0.2578125, 0.2578125, 0.2734375, 0.28125, 0.2890625, 0.28125, 0.2890625, 0.28125, 0.2890625, 0.2890625, 0.3125, 0.3125, 0.328125, 0.328125, 0.3359375, 0.3359375, 0.3359375, 0.34375, 0.3515625, 0.359375, 0.359375, 0.3671875, 0.375, 0.3828125, 0.3828125, 0.390625, 0.390625, 0.390625, 0.3828125, 0.3984375, 0.390625, 0.3984375, 0.390625, 0.40625, 0.3984375, 0.4140625, 0.4140625, 0.421875, 0.421875, 0.4296875, 0.4296875, 0.4375, 0.4375, 0.4296875, 0.4453125, 0.4375, 0.4453125, 0.4375, 0.453125, 0.453125, 0.4609375, 0.4609375, 0.4609375, 0.4609375, 0.453125, 0.4609375, 0.4609375, 0.46875, 0.46875, 0.4609375, 0.46875, 0.4609375, 0.46875, 0.46875, 0.4609375, 0.46875, 0.4609375, 0.46875, 0.4609375, 0.46875, 0.46875, 0.4609375, 0.46875, 0.46875, 0.4609375, 0.46875, 0.46875, 0.4609375, 0.46875, 0.4609375, 0.46875, 0.4609375, 0.46875, 0.4609375, 0.453125, 0.4609375, 0.453125, 0.4609375, 0.4609375, 0.4453125, 0.4453125, 0.4453125, 0.4375, 0.4453125, 0.4375, 0.4375, 0.4375, 0.4296875, 0.4375, 0.421875, 0.421875, 0.4140625, 0.4140625, 0.40625, 0.40625, 0.3984375, 0.3984375, 0.3984375, 0.390625, 0.3984375, 0.390625, 0.3828125, 0.390625, 0.3828125, 0.3828125, 0.375, 0.3671875, 0.3515625, 0.359375, 0.34375, 0.3515625, 0.34375, 0.3359375, 0.3359375, 0.328125, 0.328125, 0.328125, 0.3125, 0.3125, 0.296875, 0.296875, 0.28125, 0.28125, 0.28125, 0.265625, 0.2734375, 0.2578125, 0.2578125, 0.25, 0.234375, 0.2421875, 0.2265625, 0.234375, 0.21875, 0.21875, 0.2109375, 0.1953125, 0.1953125, 0.1875, 0.1875, 0.171875, 0.171875, 0.15625, 0.1640625, 0.15625, 0.1484375, 0.1484375, 0.140625, 0.140625, 0.1328125, 0.125, 0.1015625, 0.1015625, 0.09375, 0.0859375, 0.0859375, 0.0703125, 0.0703125, 0.0546875, 0.0625, 0.0625, 0.0546875, 0.0390625, 0.0390625, 0.015625, 0.015625, 0.0, 0.0078125, 1.9921875, 0.0, 1.984375, 0.0, 0.0, 1.984375, 1.9921875, 1.984375, 1.9765625, 1.9765625, 1.96875, 1.953125, 1.9453125, 1.9296875, 1.9296875, 1.9296875, 1.9296875, 1.9140625, 1.9140625, 1.8984375, 1.8984375, 1.890625, 1.890625, 1.8828125, 1.8671875, 1.8671875, 1.859375, 1.8515625, 1.8359375, 1.8359375, 1.828125, 1.828125, 1.8203125, 1.8203125, 1.8046875, 1.8046875, 1.7890625, 1.796875, 1.7890625, 1.7734375, 1.7734375, 1.765625, 1.765625, 1.7578125, 1.7421875, 1.7421875, 1.734375, 1.734375, 1.7265625, 1.7109375, 1.71875, 1.7109375, 1.7109375, 1.6953125, 1.703125, 1.6875, 1.6953125, 1.6875, 1.671875, 1.671875, 1.65625, 1.6640625, 1.65625, 1.6484375, 1.6484375, 1.640625, 1.640625, 1.6328125, 1.6328125, 1.6328125, 1.625, 1.609375, 1.6171875, 1.6015625, 1.609375, 1.6015625, 1.59375, 1.59375, 1.5859375, 1.59375, 1.5859375, 1.578125, 1.5859375, 1.5703125, 1.578125, 1.5703125, 1.578125, 1.5625, 1.5625, 1.5625, 1.5546875, 1.5625, 1.5546875, 1.546875, 1.546875, 1.5390625, 1.546875, 1.5390625, 1.53125, 1.5390625, 1.53125, 1.5390625, 1.53125, 1.5390625, 1.53125, 1.5234375, 1.53125, 1.5234375, 1.53125, 1.5234375, 1.53125, 1.5390625, 1.53125, 1.5390625, 1.53125, 1.53125, 1.5390625, 1.53125, 1.5390625, 1.53125, 1.5390625, 1.5390625, 1.5390625, 1.53125, 1.5390625, 1.5390625, 1.53125, 1.5390625, 1.53125, 1.5390625, 1.5390625, 1.5390625, 1.546875, 1.5390625, 1.546875, 1.546875, 1.5390625, 1.5546875, 1.546875, 1.5546875, 1.546875, 1.5625, 1.5546875, 1.5625, 1.5546875, 1.5703125, 1.578125, 1.5703125, 1.5859375, 1.578125, 1.5859375, 1.578125, 1.59375, 1.59375, 1.5859375, 1.59375, 1.6015625, 1.59375, 1.6015625, 1.59375, 1.609375, 1.6015625, 1.6171875, 1.609375, 1.625, 1.625, 1.640625, 1.640625, 1.6484375, 1.6484375, 1.65625, 1.65625, 1.6640625, 1.65625, 1.6640625, 1.671875, 1.671875, 1.6796875, 1.6875, 1.6875, 1.703125, 1.6953125, 1.7109375, 1.703125, 1.71875, 1.71875, 1.734375, 1.7265625, 1.7421875, 1.734375, 1.75, 1.75, 1.765625, 1.765625, 1.7734375, 1.78125, 1.78125, 1.7890625, 1.7890625, 1.7890625, 1.796875, 1.8046875, 1.8125, 1.8203125, 1.828125, 1.8359375, 1.84375, 1.8515625, 1.8515625, 1.859375, 1.8671875, 1.859375, 1.875, 1.875, 1.890625, 1.890625, 1.8984375, 1.8984375, 1.9140625, 1.921875, 1.921875, 1.9296875, 1.9296875, 1.9296875, 1.9453125, 1.953125, 1.96875, 1.9765625, 1.9765625, 1.984375, 1.984375, 0.0, 1.9921875, 0.0, 1.984375, 0.0, 0.0, 0.0, 0.0078125, 0.015625, 0.0234375, 0.03125, 0.03125, 0.03125, 0.046875, 0.046875, 0.0625, 0.0703125, 0.078125, 0.078125, 0.09375, 0.0859375, 0.1015625, 0.109375, 0.1015625, 0.109375, 0.109375, 0.1328125, 0.1328125, 0.1328125, 0.1484375, 0.15625, 0.1484375, 0.1640625, 0.15625, 0.171875, 0.1640625, 0.1796875, 0.171875, 0.1875, 0.1953125, 0.2109375, 0.21875, 0.2109375, 0.2265625, 0.21875, 0.234375, 0.234375, 0.2421875, 0.2421875, 0.2421875, 0.265625, 0.2578125, 0.2734375, 0.265625, 0.28125, 0.28125, 0.28125, 0.2890625, 0.28125, 0.296875, 0.296875, 0.3125, 0.3203125, 0.3203125, 0.328125, 0.328125, 0.3359375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.34375, 0.3515625, 0.3515625, 0.359375, 0.3671875, 0.359375, 0.375, 0.375, 0.3828125, 0.375, 0.3828125, 0.3828125, 0.390625, 0.3984375, 0.390625, 0.40625, 0.40625, 0.40625, 0.3984375, 0.4140625, 0.40625, 0.4140625, 0.4140625, 0.4140625, 0.421875, 0.4140625, 0.421875, 0.421875, 0.4296875, 0.421875, 0.4296875, 0.4296875, 0.4375, 0.4375, 0.4296875, 0.4375, 0.4375, 0.4453125, 0.4375, 0.4453125, 0.4453125, 0.4375, 0.4453125, 0.4375, 0.4453125, 0.4375, 0.4453125, 0.4375, 0.4453125, 0.4453125, 0.4375, 0.4453125, 0.4453125, 0.4453125, 0.4375, 0.4453125, 0.4375, 0.4453125, 0.4375, 0.4453125, 0.4375, 0.4453125, 0.4453125, 0.4375, 0.4453125, 0.4296875, 0.4375, 0.4296875, 0.4375, 0.4296875, 0.421875, 0.4296875, 0.421875, 0.421875, 0.4140625, 0.421875, 0.4140625, 0.4140625, 0.40625, 0.4140625, 0.3984375, 0.3984375, 0.390625, 0.390625, 0.3984375, 0.390625, 0.390625, 0.390625, 0.375, 0.3828125, 0.375, 0.3671875, 0.375, 0.3671875, 0.3671875, 0.3671875, 0.359375, 0.359375, 0.3515625, 0.34375, 0.3359375, 0.3359375, 0.328125, 0.328125, 0.328125, 0.3125, 0.3203125, 0.3046875, 0.3125, 0.296875, 0.3046875, 0.2890625, 0.2890625, 0.28125, 0.28125, 0.28125, 0.265625, 0.2734375, 0.2578125, 0.265625, 0.2578125, 0.2578125, 0.25, 0.2421875, 0.2421875, 0.234375, 0.234375, 0.2265625, 0.2265625, 0.2109375, 0.203125, 0.1953125, 0.1953125, 0.1875, 0.1875, 0.1796875, 0.171875, 0.1640625, 0.15625, 0.1484375, 0.1484375, 0.140625, 0.140625, 0.1328125, 0.1328125, 0.125, 0.125, 0.1171875, 0.1015625, 0.1015625, 0.1015625, 0.0859375, 0.09375, 0.078125, 0.078125, 0.0703125, 0.0546875, 0.0546875, 0.046875, 0.0390625, 0.046875, 0.03125, 0.03125, 0.0078125, 0.0078125, 0.0, 0.0, 1.9921875, 1.9921875, 1.984375, 0.0, 1.9921875, 1.9921875, 1.984375, 1.984375, 1.984375, 1.96875, 1.9609375, 1.9609375, 1.953125, 1.953125, 1.9375, 1.9453125, 1.9296875, 1.9296875, 1.9140625, 1.9140625, 1.8984375, 1.8984375, 1.890625, 1.890625, 1.8828125, 1.8828125, 1.875, 1.875, 1.859375, 1.859375, 1.8515625, 1.84375, 1.84375, 1.84375, 1.828125, 1.828125, 1.8046875, 1.8046875, 1.796875, 1.8046875, 1.7890625, 1.7890625, 1.78125, 1.7890625, 1.78125, 1.765625, 1.765625, 1.7578125, 1.75, 1.75, 1.7421875, 1.7421875, 1.734375, 1.734375, 1.71875, 1.7265625, 1.7109375, 1.71875, 1.703125, 1.7109375, 1.6953125, 1.703125, 1.6875, 1.6953125, 1.6796875, 1.6875, 1.671875, 1.671875, 1.6640625, 1.671875, 1.6640625, 1.671875, 1.65625, 1.65625, 1.65625, 1.6484375, 1.640625, 1.640625, 1.640625, 1.625, 1.6328125, 1.625, 1.625, 1.625, 1.6171875, 1.6171875, 1.6171875, 1.6015625, 1.6015625, 1.59375, 1.6015625, 1.59375, 1.59375, 1.5859375, 1.59375, 1.5859375, 1.59375, 1.5859375, 1.5859375, 1.578125, 1.5859375, 1.5859375, 1.578125, 1.578125, 1.578125, 1.5703125, 1.5703125, 1.5625, 1.5703125, 1.5703125, 1.5703125, 1.5703125, 1.5625, 1.5546875, 1.5625, 1.5546875, 1.5625, 1.5546875, 1.5625, 1.5625, 1.5625, 1.5625, 1.5625, 1.5625, 1.5625, 1.5625, 1.5546875, 1.5625, 1.5546875, 1.5625, 1.5625, 1.5546875, 1.5625, 1.5546875, 1.5625, 1.5625, 1.5546875, 1.5625, 1.5546875, 1.5625, 1.5703125, 1.5625, 1.5703125, 1.5703125, 1.5625, 1.5703125, 1.578125, 1.5703125, 1.578125, 1.5703125, 1.5859375, 1.5859375, 1.578125, 1.59375, 1.5859375, 1.59375, 1.5859375, 1.59375, 1.5859375, 1.6015625, 1.59375, 1.6015625, 1.59375, 1.609375, 1.609375, 1.609375, 1.6171875, 1.6171875, 1.625, 1.625, 1.625, 1.625, 1.6328125, 1.6328125, 1.640625, 1.640625, 1.640625, 1.6484375, 1.6484375, 1.65625, 1.65625, 1.6640625, 1.6640625, 1.671875, 1.671875, 1.6796875, 1.6875, 1.6875, 1.6953125, 1.6953125, 1.6953125, 1.7109375, 1.71875, 1.71875, 1.7109375, 1.7265625, 1.71875, 1.734375, 1.734375, 1.734375, 1.7421875, 1.75, 1.75, 1.765625, 1.7578125, 1.765625, 1.7578125, 1.78125, 1.7890625, 1.796875, 1.7890625, 1.796875, 1.8046875, 1.8125, 1.8125, 1.828125, 1.8359375, 1.8359375, 1.8359375, 1.8359375, 1.8359375, 1.8515625, 1.8515625, 1.8671875, 1.8671875, 1.8671875, 1.875, 1.875, 1.8828125, 1.890625, 1.890625, 1.90625, 1.9140625, 1.9140625, 1.9140625, 1.9296875, 1.9296875, 1.9375, 1.9375, 1.953125, 1.953125, 1.953125, 1.9609375, 1.9609375, 1.9765625, 1.9765625, 1.984375, 1.984375, 1.9921875, 1.9921875, 0.0, 1.984375, 1.9921875, 1.9921875, 0.0, 0.0, 0.0078125, 0.0078125, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.046875, 0.0390625, 0.0546875, 0.0546875, 0.0703125, 0.0703125, 0.078125, 0.0703125, 0.0859375, 0.0859375, 0.1015625, 0.109375, 0.1015625, 0.1171875, 0.1171875, 0.125, 0.125, 0.1328125, 0.140625, 0.1484375, 0.15625, 0.1484375, 0.15625, 0.1484375, 0.171875, 0.1640625, 0.1796875, 0.1796875, 0.1953125, 0.1875, 0.1953125, 0.1875, 0.203125, 0.203125, 0.21875, 0.2265625, 0.21875, 0.2265625, 0.21875, 0.234375, 0.234375, 0.25, 0.2421875, 0.2578125, 0.25, 0.265625, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.2734375, 0.2890625, 0.2890625, 0.296875, 0.3046875, 0.3046875, 0.3046875, 0.3125, 0.3046875, 0.3125, 0.3125, 0.328125, 0.328125, 0.328125, 0.3359375, 0.3359375, 0.34375, 0.34375, 0.3515625, 0.3515625, 0.3515625, 0.34375, 0.34375, 0.359375, 0.3515625, 0.3671875, 0.359375, 0.3671875, 0.375, 0.375, 0.3828125, 0.375, 0.3828125, 0.375, 0.390625, 0.3828125, 0.390625, 0.3828125, 0.390625, 0.390625, 0.3828125, 0.390625, 0.390625, 0.3984375, 0.390625, 0.3984375, 0.3984375, 0.40625, 0.40625, 0.40625, 0.40625, 0.40625, 0.40625, 0.4140625, 0.40625, 0.4140625, 0.40625, 0.4140625, 0.40625, 0.4140625, 0.4140625, 0.40625, 0.4140625, 0.4140625, 0.40625, 0.4140625, 0.4140625, 0.4140625, 0.4140625, 0.40625, 0.4140625, 0.4140625, 0.40625, 0.4140625, 0.40625, 0.4140625, 0.40625, 0.4140625, 0.4140625, 0.40625, 0.4140625, 0.4140625, 0.40625, 0.3984375, 0.40625, 0.40625, 0.3984375, 0.40625, 0.390625, 0.3984375, 0.3984375, 0.390625, 0.390625, 0.3828125, 0.390625, 0.3828125, 0.390625, 0.3828125, 0.390625, 0.375, 0.3828125, 0.3671875, 0.3671875, 0.375, 0.3671875, 0.3671875, 0.359375, 0.359375, 0.3515625, 0.3515625, 0.34375, 0.3515625, 0.34375, 0.3515625, 0.34375, 0.34375, 0.328125, 0.3359375, 0.328125, 0.3203125, 0.3203125, 0.3125, 0.3203125, 0.3125, 0.3046875, 0.3125, 0.296875, 0.3046875, 0.2890625, 0.296875, 0.28125, 0.2890625, 0.2734375, 0.28125, 0.265625, 0.2578125, 0.265625, 0.25, 0.2578125, 0.2421875, 0.25, 0.2421875, 0.25, 0.2421875, 0.234375, 0.2265625, 0.2265625, 0.2109375, 0.21875, 0.2109375, 0.1953125, 0.203125, 0.1875, 0.1953125, 0.1796875, 0.1875, 0.1875, 0.1796875, 0.171875, 0.1640625, 0.171875, 0.171875, 0.15625, 0.1484375, 0.140625, 0.140625, 0.1328125, 0.1328125, 0.125, 0.125, 0.125, 0.109375, 0.109375, 0.09375, 0.1015625, 0.09375, 0.09375, 0.078125, 0.078125, 0.0703125, 0.0703125, 0.0625, 0.046875, 0.0546875, 0.0390625, 0.0390625, 0.03125, 0.015625, 0.0234375, 0.015625, 0.0078125, 0.0078125, 0.0, 0.0, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.984375, 1.9921875, 1.9765625, 1.984375, 1.9765625, 1.96875, 1.96875, 1.96875, 1.953125, 1.953125, 1.9453125, 1.9296875, 1.9375, 1.921875, 1.921875, 1.90625, 1.90625, 1.90625, 1.90625, 1.890625, 1.8984375, 1.8828125, 1.8828125, 1.875, 1.859375, 1.8671875, 1.8671875, 1.8515625, 1.8515625, 1.8359375, 1.84375, 1.8359375, 1.84375, 1.84375, 1.828125, 1.828125, 1.8203125, 1.828125, 1.8125, 1.8046875, 1.796875, 1.8046875, 1.8046875, 1.796875, 1.7890625, 1.7734375, 1.7734375, 1.765625, 1.7734375, 1.765625, 1.765625, 1.7578125, 1.75, 1.75, 1.7421875, 1.7421875, 1.7265625, 1.734375, 1.734375, 1.7265625, 1.7265625, 1.7109375, 1.7109375, 1.6953125, 1.703125, 1.6953125, 1.703125, 1.6875, 1.6875, 1.6875, 1.6796875, 1.6796875, 1.671875, 1.671875, 1.671875, 1.6640625, 1.671875, 1.65625, 1.65625, 1.6484375, 1.65625, 1.65625, 1.65625, 1.640625, 1.6484375, 1.640625, 1.6484375, 1.6328125, 1.640625, 1.6328125, 1.6328125, 1.6328125, 1.625, 1.625, 1.625, 1.6171875, 1.6171875, 1.609375, 1.609375, 1.6015625, 1.609375, 1.609375, 1.59375, 1.6015625, 1.59375, 1.6015625, 1.609375, 1.6015625, 1.609375, 1.6015625, 1.6015625, 1.59375, 1.6015625, 1.6015625, 1.59375, 1.6015625, 1.5859375, 1.59375, 1.5859375, 1.59375, 1.5859375, 1.59375, 1.5859375, 1.59375, 1.5859375, 1.59375, 1.5859375, 1.59375, 1.5859375, 1.59375, 1.59375, 1.5859375, 1.59375, 1.5859375, 1.5859375, 1.59375, 1.5859375, 1.59375, 1.5859375, 1.59375, 1.59375, 1.59375, 1.59375, 1.59375, 1.5859375, 1.59375, 1.5859375, 1.6015625, 1.59375, 1.6015625, 1.6015625, 1.59375, 1.609375, 1.6015625, 1.6171875, 1.6015625, 1.609375, 1.6015625, 1.609375, 1.6015625, 1.6171875, 1.609375, 1.625, 1.6171875, 1.6171875, 1.609375, 1.625, 1.625, 1.625, 1.6328125, 1.6328125, 1.640625, 1.640625, 1.6328125, 1.6484375, 1.640625, 1.6484375, 1.6484375, 1.6484375, 1.65625, 1.6484375, 1.65625, 1.65625, 1.671875, 1.671875, 1.6640625, 1.671875, 1.671875, 1.6796875, 1.6875, 1.6796875, 1.6953125, 1.6953125, 1.703125, 1.6953125, 1.703125, 1.6953125, 1.7109375, 1.7109375, 1.7109375, 1.703125, 1.71875, 1.71875, 1.7265625, 1.7265625, 1.734375, 1.734375, 1.7421875, 1.7421875, 1.75, 1.7578125, 1.7578125, 1.7578125, 1.765625, 1.765625, 1.7734375, 1.7734375, 1.7890625, 1.7890625, 1.7890625, 1.796875, 1.8046875, 1.796875, 1.8125, 1.8046875, 1.8203125, 1.8125, 1.828125, 1.8203125, 1.828125, 1.8203125, 1.84375, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.8515625, 1.8671875, 1.875, 1.875, 1.8828125, 1.875, 1.890625, 1.8828125, 1.8984375, 1.8984375, 1.9140625, 1.90625, 1.9140625, 1.9140625, 1.9296875, 1.9296875, 1.9375, 1.9375, 1.9453125, 1.953125, 1.96875, 1.9609375, 1.96875, 1.9609375, 1.96875, 1.96875, 1.984375, 1.9765625, 1.9921875, 1.984375, 0.0, 1.9921875, 1.9921875, 1.984375, 0.0, 1.9921875, 0.0078125, 0.0, 0.015625, 0.0078125, 0.0234375, 0.015625, 0.03125, 0.03125, 0.046875, 0.0390625, 0.046875, 0.046875, 0.0625, 0.0546875, 0.0625, 0.0703125, 0.0625, 0.078125, 0.078125, 0.09375, 0.09375, 0.1015625, 0.1015625, 0.109375, 0.109375, 0.1171875, 0.1171875, 0.125, 0.1328125, 0.1328125, 0.140625, 0.140625, 0.140625, 0.1484375, 0.1484375, 0.15625, 0.1640625, 0.171875, 0.1796875, 0.1796875, 0.1796875, 0.1796875, 0.1796875, 0.1875, 0.1796875, 0.203125, 0.203125, 0.2109375, 0.203125, 0.2109375, 0.203125, 0.2265625, 0.2265625, 0.234375, 0.234375, 0.2265625, 0.2421875, 0.234375, 0.25, 0.2421875, 0.2578125, 0.25, 0.265625, 0.2578125, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.28125, 0.28125, 0.2890625, 0.28125, 0.2890625, 0.28125, 0.296875, 0.296875, 0.3046875, 0.3125, 0.3046875, 0.3203125, 0.3125, 0.3203125, 0.3125, 0.328125, 0.3203125, 0.328125, 0.3203125, 0.328125, 0.3203125, 0.3359375, 0.328125, 0.34375, 0.34375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.3515625, 0.3515625, 0.359375, 0.359375, 0.359375, 0.359375, 0.3671875, 0.3671875, 0.375, 0.375, 0.3671875, 0.375, 0.3671875, 0.375, 0.3671875, 0.3671875, 0.375, 0.375, 0.3828125, 0.375, 0.3828125, 0.375, 0.3828125, 0.3828125, 0.390625, 0.3828125, 0.390625, 0.3828125, 0.390625, 0.390625, 0.3828125, 0.390625, 0.3828125, 0.390625, 0.3828125, 0.390625, 0.390625, 0.3828125, 0.390625, 0.3828125, 0.390625, 0.3828125, 0.390625, 0.3828125, 0.390625, 0.390625, 0.3828125, 0.390625, 0.3828125, 0.390625, 0.3828125, 0.375, 0.3828125, 0.375, 0.375, 0.3671875, 0.3671875, 0.3671875, 0.375, 0.3671875, 0.375, 0.3671875, 0.375, 0.3671875, 0.375, 0.3671875, 0.359375, 0.359375, 0.359375, 0.359375, 0.3515625, 0.3515625, 0.34375, 0.3515625, 0.3515625, 0.3515625, 0.34375, 0.34375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.3359375, 0.3359375, 0.3359375, 0.328125, 0.3125, 0.3203125, 0.3125, 0.3203125, 0.3125, 0.3203125, 0.3125, 0.3125, 0.3125, 0.3125, 0.3046875, 0.3046875, 0.2890625, 0.296875, 0.296875, 0.296875, 0.28125, 0.2890625, 0.2734375, 0.28125, 0.265625, 0.2734375, 0.2734375, 0.2734375, 0.2578125, 0.265625, 0.2578125, 0.2578125, 0.25, 0.234375, 0.2421875, 0.2421875, 0.234375, 0.234375, 0.2265625, 0.2265625, 0.21875, 0.21875, 0.21875, 0.203125, 0.2109375, 0.1953125, 0.203125, 0.1953125, 0.1796875, 0.1875, 0.1796875, 0.1875, 0.1796875, 0.1796875, 0.171875, 0.171875, 0.15625, 0.1640625, 0.1484375, 0.15625, 0.140625, 0.1484375, 0.140625, 0.1328125, 0.125, 0.1328125, 0.125, 0.1328125, 0.125, 0.109375, 0.1171875, 0.109375, 0.09375, 0.09375, 0.0859375, 0.09375, 0.078125, 0.078125, 0.0625, 0.0703125, 0.0703125, 0.0625, 0.046875, 0.046875, 0.0390625, 0.046875, 0.03125, 0.0390625, 0.0234375, 0.0234375, 0.0234375, 0.015625, 0.015625, 0.0078125, 0.0078125, 1.9921875, 0.0, 1.9921875, 1.984375, 0.0, 1.9921875, 0.0, 0.0, 1.984375, 1.9921875, 1.9765625, 1.984375, 1.9765625, 1.9765625, 1.96875, 1.96875, 1.953125, 1.9609375, 1.9453125, 1.953125, 1.9453125, 1.9296875, 1.9296875, 1.921875, 1.9296875, 1.9140625, 1.921875, 1.9140625, 1.9140625, 1.8984375, 1.90625, 1.890625, 1.8984375, 1.8828125, 1.890625, 1.875, 1.875, 1.859375, 1.859375, 1.8515625, 1.859375, 1.859375, 1.859375, 1.8515625, 1.8515625, 1.8359375, 1.8359375, 1.8359375, 1.828125, 1.828125, 1.8203125, 1.8046875, 1.8125, 1.8125, 1.8046875, 1.8125, 1.8046875, 1.8046875, 1.7890625, 1.796875, 1.7890625, 1.796875, 1.7890625, 1.765625, 1.7734375, 1.765625, 1.7734375, 1.765625, 1.7578125, 1.7578125, 1.75, 1.7578125, 1.75, 1.75, 1.734375, 1.734375, 1.734375, 1.7265625, 1.7265625, 1.7265625, 1.7109375, 1.71875, 1.71875, 1.71875, 1.7109375, 1.7109375, 1.7109375, 1.703125, 1.703125, 1.6953125, 1.703125, 1.6953125, 1.6953125, 1.6796875, 1.6875, 1.671875, 1.671875, 1.6796875, 1.671875, 1.6796875, 1.671875, 1.6796875, 1.671875, 1.671875, 1.6640625, 1.6640625, 1.6640625, 1.6484375, 1.65625, 1.6484375, 1.65625, 1.6484375, 1.65625, 1.640625, 1.6484375, 1.640625, 1.6484375, 1.6484375, 1.640625, 1.640625, 1.640625, 1.6328125, 1.640625, 1.625, 1.6328125, 1.625, 1.6328125, 1.6328125, 1.625, 1.6328125, 1.625, 1.6328125, 1.625, 1.6328125, 1.625, 1.625, 1.6171875, 1.609375, 1.6171875, 1.625, 1.609375, 1.6171875, 1.609375, 1.625, 1.6171875, 1.609375, 1.625, 1.6171875, 1.6328125, 1.6328125, 1.625, 1.6328125, 1.625, 1.6328125, 1.625, 1.6328125, 1.625, 1.6328125, 1.625, 1.6328125, 1.625, 1.6328125, 1.6328125, 1.6328125, 1.625, 1.6328125, 1.6328125, 1.6171875, 1.6328125, 1.625, 1.640625, 1.640625, 1.640625, 1.6328125, 1.640625, 1.6328125, 1.640625, 1.6328125, 1.640625, 1.625, 1.640625, 1.640625, 1.640625, 1.6484375, 1.640625, 1.6484375, 1.6484375, 1.65625, 1.6484375, 1.65625, 1.6484375, 1.65625, 1.6640625, 1.6640625, 1.6640625, 1.6640625, 1.6640625, 1.65625, 1.671875, 1.6640625, 1.671875, 1.6640625, 1.6796875, 1.6796875, 1.671875, 1.6796875, 1.6796875, 1.671875, 1.6875, 1.6875, 1.6953125, 1.6953125, 1.6875, 1.703125, 1.6953125, 1.703125, 1.6953125, 1.7109375, 1.7109375, 1.7109375, 1.71875, 1.71875, 1.71875, 1.71875, 1.7265625, 1.71875, 1.7265625, 1.734375, 1.7265625, 1.7421875, 1.75, 1.7421875, 1.7578125, 1.75, 1.765625, 1.765625, 1.7578125, 1.7578125, 1.765625, 1.765625, 1.765625, 1.7734375, 1.7734375, 1.78125, 1.78125, 1.7890625, 1.796875, 1.796875, 1.8046875, 1.8046875, 1.8125, 1.8046875, 1.8125, 1.8046875, 1.8203125, 1.828125, 1.8203125, 1.8359375, 1.828125, 1.84375, 1.84375, 1.84375, 1.8515625, 1.8515625, 1.859375, 1.8515625, 1.859375, 1.8671875, 1.8671875, 1.875, 1.875, 1.8828125, 1.8828125, 1.8984375, 1.8984375, 1.90625, 1.90625, 1.8984375, 1.90625, 1.90625, 1.921875, 1.921875, 1.9140625, 1.9296875, 1.9296875, 1.9453125, 1.9375, 1.9453125, 1.9375, 1.953125, 1.9453125, 1.9609375, 1.9609375, 1.9609375, 1.96875, 1.9765625, 1.96875, 1.984375, 1.9765625, 1.984375, 1.984375, 1.984375, 0.0, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 0.0, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.0234375, 0.0234375, 0.0234375, 0.03125, 0.03125, 0.0390625, 0.046875, 0.046875, 0.0546875, 0.046875, 0.0546875, 0.0546875, 0.0703125, 0.0625, 0.0703125, 0.078125, 0.078125, 0.0859375, 0.0859375, 0.0859375, 0.1015625, 0.1015625, 0.1015625, 0.1015625, 0.109375, 0.109375, 0.125, 0.1171875, 0.1328125, 0.125, 0.125, 0.140625, 0.140625, 0.1484375, 0.1484375, 0.1328125, 0.1484375, 0.1484375, 0.1640625, 0.1640625, 0.171875, 0.171875, 0.1640625, 0.171875, 0.1640625, 0.1796875, 0.1796875, 0.1875, 0.1796875, 0.1875, 0.1875, 0.203125, 0.203125, 0.21875, 0.203125, 0.2109375, 0.203125, 0.21875, 0.21875, 0.21875, 0.21875, 0.2265625, 0.21875, 0.234375, 0.25, 0.25, 0.25, 0.2421875, 0.2421875, 0.25, 0.25, 0.2578125, 0.2578125, 0.265625, 0.265625, 0.2734375, 0.2734375, 0.265625, 0.2734375, 0.2734375, 0.2734375, 0.28125, 0.28125, 0.2890625, 0.2890625, 0.2890625, 0.296875, 0.2890625, 0.296875, 0.2890625, 0.3046875, 0.296875, 0.3046875, 0.3046875, 0.3046875, 0.296875, 0.3125, 0.3125, 0.3203125, 0.3125, 0.3203125, 0.3125, 0.3203125, 0.3203125, 0.328125, 0.328125, 0.3203125, 0.328125, 0.3125, 0.3203125, 0.3203125, 0.3203125, 0.328125, 0.3203125, 0.328125, 0.328125, 0.3359375, 0.328125, 0.3359375, 0.3359375, 0.328125, 0.3359375, 0.328125, 0.3359375, 0.3359375, 0.328125, 0.3359375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.34375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.3359375, 0.34375, 0.34375, 0.3359375, 0.3359375, 0.328125, 0.3359375, 0.3359375, 0.328125, 0.3359375, 0.328125, 0.3359375, 0.328125, 0.3359375, 0.328125, 0.328125, 0.3359375, 0.328125, 0.328125, 0.3203125, 0.328125, 0.3203125, 0.3203125, 0.3203125, 0.3203125, 0.3125, 0.3203125, 0.3125, 0.3203125, 0.3125, 0.3125, 0.3046875, 0.3125, 0.3125, 0.296875, 0.3046875, 0.296875, 0.3046875, 0.296875, 0.3046875, 0.2890625, 0.296875, 0.2890625, 0.296875, 0.28125, 0.2890625, 0.28125, 0.2890625, 0.2890625, 0.2890625, 0.28125, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.2578125, 0.2578125, 0.25, 0.2578125, 0.25, 0.25, 0.2421875, 0.25, 0.2421875, 0.2421875, 0.234375, 0.234375, 0.21875, 0.2265625, 0.21875, 0.2265625, 0.21875, 0.21875, 0.2109375, 0.2109375, 0.203125, 0.2109375, 0.203125, 0.203125, 0.1953125, 0.203125, 0.1875, 0.1953125, 0.1796875, 0.1875, 0.171875, 0.1796875, 0.1640625, 0.1640625, 0.15625, 0.1640625, 0.1640625, 0.15625, 0.15625, 0.140625, 0.1484375, 0.140625, 0.1328125, 0.1328125, 0.125, 0.1328125, 0.125, 0.125, 0.1171875, 0.1171875, 0.1171875, 0.1015625, 0.1015625, 0.09375, 0.09375, 0.09375, 0.0859375, 0.09375, 0.078125, 0.0859375, 0.0703125, 0.078125, 0.0703125, 0.0625, 0.0625, 0.0546875, 0.0625, 0.0546875, 0.0546875, 0.046875, 0.046875, 0.0390625, 0.03125, 0.03125, 0.03125, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.0078125, 0.015625, 0.0, 0.0078125, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.9921875, 1.9921875, 0.0, 1.9921875, 1.984375, 1.984375, 1.96875, 1.9765625, 1.9609375, 1.96875, 1.9609375, 1.96875, 1.953125, 1.9609375, 1.9453125, 1.953125, 1.9375, 1.9453125, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.921875, 1.921875, 1.9140625, 1.9140625, 1.90625, 1.90625, 1.8984375, 1.8984375, 1.890625, 1.8984375, 1.890625, 1.890625, 1.8828125, 1.8828125, 1.875, 1.875, 1.8671875, 1.8671875, 1.8515625, 1.859375, 1.8515625, 1.859375, 1.84375, 1.8515625, 1.8359375, 1.84375, 1.828125, 1.8359375, 1.828125, 1.8203125, 1.828125, 1.8203125, 1.828125, 1.8125, 1.8125, 1.8046875, 1.8125, 1.8046875, 1.8046875, 1.8046875, 1.8046875, 1.796875, 1.796875, 1.78125, 1.7890625, 1.78125, 1.7734375, 1.78125, 1.7734375, 1.78125, 1.78125, 1.765625, 1.7734375, 1.765625, 1.7578125, 1.765625, 1.7578125, 1.7578125, 1.7578125, 1.75, 1.75, 1.7421875, 1.7421875, 1.75, 1.75, 1.7421875, 1.7421875, 1.7265625, 1.7265625, 1.71875, 1.7265625, 1.71875, 1.7265625, 1.7265625, 1.7109375, 1.71875, 1.703125, 1.7109375, 1.7109375, 1.7109375, 1.7109375, 1.7109375, 1.7109375, 1.7109375, 1.703125, 1.703125, 1.6953125, 1.6875, 1.6953125, 1.6875, 1.6953125, 1.6875, 1.6953125, 1.6953125, 1.6875, 1.6875, 1.6796875, 1.671875, 1.6796875, 1.671875, 1.6796875, 1.671875, 1.6796875, 1.671875, 1.6796875, 1.6796875, 1.671875, 1.6640625, 1.671875, 1.6640625, 1.6640625, 1.65625, 1.6640625, 1.65625, 1.6640625, 1.6640625, 1.65625, 1.6640625, 1.65625, 1.6640625, 1.6640625, 1.65625, 1.6640625, 1.65625, 1.6640625, 1.65625, 1.6640625, 1.6640625, 1.65625, 1.6640625, 1.6640625, 1.6640625, 1.6640625, 1.6640625, 1.65625, 1.6640625, 1.65625, 1.6640625, 1.6640625, 1.6640625, 1.6640625, 1.6640625, 1.65625, 1.6640625, 1.6640625, 1.65625, 1.6640625, 1.65625, 1.6640625, 1.6640625, 1.65625, 1.6640625, 1.65625, 1.6640625, 1.65625, 1.6640625, 1.65625, 1.6640625, 1.65625, 1.6640625, 1.6640625, 1.6640625, 1.6640625, 1.671875, 1.6640625, 1.671875, 1.6640625, 1.671875, 1.671875, 1.6796875, 1.671875, 1.6796875, 1.671875, 1.6796875, 1.671875, 1.6796875, 1.6796875, 1.6796875, 1.6875, 1.6875, 1.6953125, 1.6953125, 1.6875, 1.6953125, 1.6875, 1.6953125, 1.6875, 1.6953125, 1.6953125, 1.7109375, 1.703125, 1.7109375, 1.703125, 1.7109375, 1.703125, 1.7109375, 1.703125, 1.7109375, 1.71875, 1.7265625, 1.71875, 1.7265625, 1.71875, 1.7265625, 1.71875, 1.734375, 1.7265625, 1.7421875, 1.734375, 1.75, 1.7421875, 1.7578125, 1.7578125, 1.765625, 1.765625, 1.765625, 1.765625, 1.765625, 1.7734375, 1.765625, 1.78125, 1.7734375, 1.78125, 1.7890625, 1.78125, 1.7890625, 1.7890625, 1.796875, 1.796875, 1.7890625, 1.8046875, 1.796875, 1.8125, 1.8046875, 1.8125, 1.8046875, 1.8203125, 1.8203125, 1.8203125, 1.828125, 1.8359375, 1.84375, 1.8359375, 1.8359375, 1.8359375, 1.84375, 1.84375, 1.8515625, 1.84375, 1.859375, 1.859375, 1.8671875, 1.8671875, 1.875, 1.859375, 1.875, 1.875, 1.8828125, 1.8671875, 1.8828125, 1.8828125, 1.8984375, 1.890625, 1.890625, 1.8984375, 1.890625, 1.9140625, 1.9140625, 1.9140625, 1.9140625, 1.9296875, 1.9296875, 1.9296875, 1.921875, 1.9296875, 1.921875, 1.9375, 1.9375, 1.953125, 1.953125, 1.953125, 1.953125, 1.953125, 1.9609375, 1.9609375, 1.96875, 1.9609375, 1.9765625, 1.984375, 1.984375, 1.9921875, 1.9765625, 1.984375, 1.9921875, 1.984375, 0.0, 1.9921875, 1.9921875, 1.984375, 0.0, 0.0, 0.0, 0.0078125, 1.9921875, 0.0, 0.0, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.0390625, 0.03125, 0.0546875, 0.0546875, 0.0625, 0.0546875, 0.0625, 0.0546875, 0.0625, 0.0703125, 0.0703125, 0.078125, 0.0703125, 0.0859375, 0.0859375, 0.09375, 0.09375, 0.0859375, 0.09375, 0.09375, 0.1015625, 0.1171875, 0.1015625, 0.109375, 0.1171875, 0.1171875, 0.1328125, 0.125, 0.1328125, 0.1328125, 0.1328125, 0.1328125, 0.1484375, 0.140625, 0.15625, 0.15625, 0.15625, 0.15625, 0.15625, 0.1484375, 0.171875, 0.1640625, 0.171875, 0.1640625, 0.171875, 0.1796875, 0.1796875, 0.1875, 0.1796875, 0.1875, 0.1953125, 0.1875, 0.1953125, 0.1953125, 0.203125, 0.1953125, 0.203125, 0.1953125, 0.203125, 0.203125, 0.2109375, 0.2109375, 0.21875, 0.2265625, 0.21875, 0.234375, 0.21875, 0.2265625, 0.21875, 0.234375, 0.234375, 0.234375, 0.2421875, 0.2421875, 0.2421875, 0.2421875, 0.234375, 0.25, 0.25, 0.25, 0.2578125, 0.25, 0.2578125, 0.2578125, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.28125, 0.28125, 0.28125, 0.2890625, 0.28125, 0.2890625, 0.28125, 0.2890625, 0.28125, 0.2890625, 0.296875, 0.296875, 0.296875, 0.2890625, 0.296875, 0.296875, 0.296875, 0.296875, 0.296875, 0.296875, 0.3046875, 0.3046875, 0.3046875, 0.3046875, 0.3046875, 0.3046875, 0.3125, 0.3125, 0.3125, 0.3125, 0.3046875, 0.3125, 0.3046875, 0.3125, 0.3125, 0.3046875, 0.3125, 0.3046875, 0.3125, 0.3046875, 0.3125, 0.3046875, 0.3125, 0.3046875, 0.3125, 0.3125, 0.3046875, 0.3125, 0.3046875, 0.3125, 0.3046875, 0.3046875, 0.3125, 0.3046875, 0.3125, 0.3046875, 0.3125, 0.3046875, 0.3125, 0.3125, 0.3125, 0.3046875, 0.3125, 0.3046875, 0.3125, 0.3046875, 0.3125, 0.3125, 0.3046875, 0.3125, 0.3125, 0.3046875, 0.3125, 0.3046875, 0.3125, 0.3125, 0.3046875, 0.3125, 0.2890625, 0.296875, 0.296875, 0.2890625, 0.296875, 0.2890625, 0.2890625, 0.28125, 0.2890625, 0.2890625, 0.2890625, 0.2890625, 0.2890625, 0.2890625, 0.2890625, 0.2890625, 0.28125, 0.28125, 0.28125, 0.28125, 0.28125, 0.28125, 0.28125, 0.2734375, 0.2734375, 0.265625, 0.2578125, 0.265625, 0.2578125, 0.265625, 0.265625, 0.2578125, 0.265625, 0.2578125, 0.2578125, 0.25, 0.2578125, 0.2421875, 0.25, 0.234375, 0.25, 0.234375, 0.2421875, 0.234375, 0.234375, 0.234375, 0.234375, 0.21875, 0.2265625, 0.21875, 0.2265625, 0.21875, 0.2265625, 0.2109375, 0.2109375, 0.203125, 0.2109375, 0.203125, 0.2109375, 0.2109375, 0.1953125, 0.1953125, 0.1875, 0.1953125, 0.1796875, 0.1875, 0.1796875, 0.1875, 0.1796875, 0.1875, 0.1796875, 0.171875, 0.171875, 0.171875, 0.15625, 0.1640625, 0.1640625, 0.15625, 0.1640625, 0.15625, 0.140625, 0.1484375, 0.140625, 0.1484375, 0.1328125, 0.140625, 0.140625, 0.1328125, 0.1328125, 0.1171875, 0.125, 0.1171875, 0.109375, 0.109375, 0.109375, 0.109375, 0.1171875, 0.1015625, 0.109375, 0.1015625, 0.1015625, 0.09375, 0.078125, 0.0859375, 0.0859375, 0.0859375, 0.0859375, 0.0703125, 0.0703125, 0.0625, 0.0625, 0.0625, 0.046875, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.0390625, 0.0390625, 0.03125, 0.03125, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.015625, 0.0, 1.9921875, 0.0, 0.0, 0.0078125, 1.9921875, 0.0, 1.984375, 1.9921875, 0.0, 0.0, 1.984375, 1.9921875, 1.9765625, 1.984375, 1.984375, 1.9921875, 1.984375, 1.96875, 1.96875, 1.9609375, 1.96875, 1.96875, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.9453125, 1.9453125, 1.9375, 1.9375, 1.9296875, 1.9375, 1.9296875, 1.9296875, 1.921875, 1.921875, 1.9140625, 1.9140625, 1.9140625, 1.90625, 1.8984375, 1.90625, 1.8984375, 1.90625, 1.890625, 1.890625, 1.8828125, 1.8828125, 1.890625, 1.890625, 1.875, 1.8828125, 1.875, 1.875, 1.8671875, 1.8671875, 1.8515625, 1.859375, 1.8515625, 1.8515625, 1.8515625, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.8359375, 1.8359375, 1.828125, 1.8359375, 1.8203125, 1.828125, 1.8203125, 1.828125, 1.8203125, 1.8203125, 1.8125, 1.8046875, 1.8125, 1.8046875, 1.8046875, 1.8046875, 1.796875, 1.8046875, 1.796875, 1.7890625, 1.7890625, 1.7890625, 1.7890625, 1.78125, 1.78125, 1.78125, 1.7734375, 1.78125, 1.765625, 1.7734375, 1.765625, 1.7734375, 1.765625, 1.7734375, 1.765625, 1.75, 1.7578125, 1.7421875, 1.75, 1.75, 1.7578125, 1.75, 1.7421875, 1.7421875, 1.7421875, 1.7421875, 1.7421875, 1.7265625, 1.734375, 1.7265625, 1.7421875, 1.734375, 1.7265625, 1.7265625, 1.71875, 1.7265625, 1.7265625, 1.7109375, 1.71875, 1.71875, 1.7109375, 1.71875, 1.7109375, 1.71875, 1.7109375, 1.7109375, 1.703125, 1.7109375, 1.7109375, 1.703125, 1.703125, 1.6953125, 1.703125, 1.703125, 1.6953125, 1.703125, 1.6953125, 1.703125, 1.6953125, 1.703125, 1.6875, 1.6953125, 1.6875, 1.6953125, 1.6875, 1.6953125, 1.6875, 1.6953125, 1.6953125, 1.6875, 1.6953125, 1.6953125, 1.6875, 1.6953125, 1.6875, 1.6953125, 1.6875, 1.6953125, 1.6875, 1.6953125, 1.6953125, 1.6953125, 1.6953125, 1.6875, 1.6953125, 1.6875, 1.6953125, 1.6953125, 1.6875, 1.6953125, 1.6875, 1.6953125, 1.6875, 1.6953125, 1.6875, 1.6953125, 1.6953125, 1.6953125, 1.703125, 1.703125, 1.703125, 1.6953125, 1.703125, 1.6953125, 1.703125, 1.6953125, 1.703125, 1.6953125, 1.703125, 1.6953125, 1.6953125, 1.703125, 1.6953125, 1.703125, 1.703125, 1.7109375, 1.703125, 1.7109375, 1.7109375, 1.703125, 1.7109375, 1.703125, 1.7109375, 1.7109375, 1.7109375, 1.71875, 1.7109375, 1.71875, 1.71875, 1.7109375, 1.7265625, 1.71875, 1.7265625, 1.71875, 1.7265625, 1.71875, 1.7265625, 1.7265625, 1.734375, 1.734375, 1.7265625, 1.7421875, 1.734375, 1.75, 1.7421875, 1.7421875, 1.7421875, 1.7421875, 1.7421875, 1.75, 1.7421875, 1.7578125, 1.75, 1.765625, 1.765625, 1.7578125, 1.7578125, 1.765625, 1.7578125, 1.7734375, 1.765625, 1.7734375, 1.7734375, 1.765625, 1.7734375, 1.7734375, 1.78125, 1.7734375, 1.78125, 1.78125, 1.796875, 1.7890625, 1.796875, 1.7890625, 1.8046875, 1.8046875, 1.796875, 1.8046875, 1.8046875, 1.8125, 1.8046875, 1.8125, 1.8125, 1.8203125, 1.8125, 1.8203125, 1.8203125, 1.828125, 1.828125, 1.828125, 1.828125, 1.8359375, 1.828125, 1.8359375, 1.84375, 1.859375, 1.8515625, 1.8515625, 1.84375, 1.8515625, 1.8515625, 1.8671875, 1.859375, 1.875, 1.8671875, 1.8671875, 1.859375, 1.875, 1.875, 1.890625, 1.8828125, 1.890625, 1.8828125, 1.890625, 1.90625, 1.8984375, 1.90625, 1.90625, 1.8984375, 1.9140625, 1.9140625, 1.921875, 1.9140625, 1.921875, 1.921875, 1.921875, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.9375, 1.9453125, 1.9453125, 1.9375, 1.953125, 1.9453125, 1.9609375, 1.953125, 1.96875, 1.96875, 1.9765625, 1.9765625, 1.96875, 1.9765625, 1.9765625, 1.9921875, 1.984375, 1.984375, 1.9921875, 1.9921875, 0.0, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 0.0, 0.0, 0.0078125, 0.0078125, 1.9921875, 0.0078125, 0.0, 0.015625, 0.0078125, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.03125, 0.046875, 0.046875, 0.046875, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.0546875, 0.0546875, 0.0703125, 0.0703125, 0.0625, 0.0703125, 0.0625, 0.078125, 0.078125, 0.078125, 0.078125, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.1015625, 0.1015625, 0.109375, 0.1171875, 0.109375, 0.125, 0.109375, 0.125, 0.1171875, 0.1328125, 0.125, 0.1328125, 0.125, 0.140625, 0.140625, 0.1328125, 0.140625, 0.140625, 0.15625, 0.15625, 0.1484375, 0.15625, 0.1484375, 0.1640625, 0.15625, 0.1640625, 0.171875, 0.1640625, 0.171875, 0.1640625, 0.1796875, 0.1796875, 0.171875, 0.1796875, 0.1875, 0.1875, 0.1953125, 0.1953125, 0.1953125, 0.1875, 0.1953125, 0.1875, 0.1953125, 0.203125, 0.1953125, 0.203125, 0.203125, 0.2109375, 0.203125, 0.2109375, 0.2109375, 0.21875, 0.21875, 0.2109375, 0.2265625, 0.21875, 0.234375, 0.21875, 0.2265625, 0.2265625, 0.2265625, 0.2421875, 0.234375, 0.234375, 0.2265625, 0.234375, 0.2265625, 0.2421875, 0.2421875, 0.2421875, 0.25, 0.2421875, 0.25, 0.25, 0.25, 0.25, 0.2421875, 0.25, 0.2421875, 0.2578125, 0.2578125, 0.2578125, 0.25, 0.2578125, 0.2421875, 0.2578125, 0.2578125, 0.2578125, 0.265625, 0.2578125, 0.265625, 0.2578125, 0.265625, 0.2578125, 0.265625, 0.2578125, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.2734375, 0.265625, 0.2734375, 0.2734375, 0.265625, 0.2734375, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.2734375, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.2734375, 0.265625, 0.2734375, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.2734375, 0.265625, 0.265625, 0.2578125, 0.265625, 0.265625, 0.265625, 0.2578125, 0.265625, 0.265625, 0.2578125, 0.265625, 0.25, 0.2578125, 0.2421875, 0.2578125, 0.2578125, 0.25, 0.2578125, 0.25, 0.25, 0.234375, 0.2421875, 0.25, 0.25, 0.25, 0.2421875, 0.2421875, 0.234375, 0.234375, 0.2265625, 0.2265625, 0.21875, 0.2265625, 0.21875, 0.2265625, 0.2265625, 0.2265625, 0.2265625, 0.2109375, 0.21875, 0.2109375, 0.21875, 0.21875, 0.2109375, 0.2109375, 0.2109375, 0.2109375, 0.2109375, 0.1953125, 0.203125, 0.1953125, 0.203125, 0.203125, 0.203125, 0.1875, 0.1953125, 0.1875, 0.1953125, 0.1875, 0.1953125, 0.1796875, 0.1796875, 0.171875, 0.171875, 0.171875, 0.1640625, 0.171875, 0.1640625, 0.171875, 0.15625, 0.1640625, 0.15625, 0.1640625, 0.15625, 0.1484375, 0.15625, 0.1484375, 0.1484375, 0.1484375, 0.1484375, 0.140625, 0.140625, 0.125, 0.125, 0.125, 0.125, 0.109375, 0.125, 0.109375, 0.1171875, 0.1015625, 0.109375, 0.109375, 0.1015625, 0.1015625, 0.09375, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.078125, 0.0859375, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.0703125, 0.0625, 0.0625, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.046875, 0.046875, 0.03125, 0.0390625, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.0234375, 0.0234375, 0.015625, 0.0078125, 0.0078125, 0.0078125, 0.0, 0.0078125, 0.0, 0.0078125, 0.0, 1.9921875, 1.984375, 0.0, 1.9921875, 0.0, 1.9921875, 1.9921875, 1.9921875, 1.9765625, 1.984375, 1.9765625, 1.9921875, 1.9765625, 1.984375, 1.96875, 1.9765625, 1.9609375, 1.96875, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.9453125, 1.9453125, 1.9453125, 1.9375, 1.9453125, 1.9375, 1.9375, 1.921875, 1.9296875, 1.9296875, 1.921875, 1.9296875, 1.921875, 1.921875, 1.9140625, 1.9140625, 1.9140625, 1.8984375, 1.90625, 1.8984375, 1.90625, 1.8984375, 1.90625, 1.890625, 1.8984375, 1.8828125, 1.890625, 1.890625, 1.8828125, 1.890625, 1.8828125, 1.8828125, 1.875, 1.875, 1.8671875, 1.859375, 1.875, 1.8671875, 1.8671875, 1.8515625, 1.8515625, 1.8515625, 1.84375, 1.8515625, 1.8515625, 1.84375, 1.84375, 1.8359375, 1.8359375, 1.828125, 1.8359375, 1.828125, 1.8359375, 1.8359375, 1.8203125, 1.828125, 1.8203125, 1.828125, 1.8125, 1.8203125, 1.8125, 1.8203125, 1.8046875, 1.8125, 1.8125, 1.8046875, 1.8046875, 1.796875, 1.8046875, 1.796875, 1.8046875, 1.796875, 1.796875, 1.7890625, 1.796875, 1.78125, 1.7890625, 1.7890625, 1.78125, 1.7890625, 1.7890625, 1.7734375, 1.78125, 1.7734375, 1.78125, 1.7734375, 1.78125, 1.765625, 1.7734375, 1.765625, 1.7734375, 1.765625, 1.7734375, 1.7734375, 1.765625, 1.765625, 1.7578125, 1.7578125, 1.765625, 1.7578125, 1.765625, 1.7578125, 1.765625, 1.75, 1.7578125, 1.75, 1.75, 1.7578125, 1.7578125, 1.75, 1.7578125, 1.7421875, 1.7421875, 1.734375, 1.7421875, 1.7421875, 1.7421875, 1.7421875, 1.7421875, 1.7421875, 1.7421875, 1.7421875, 1.7421875, 1.734375, 1.7421875, 1.734375, 1.75, 1.75, 1.7421875, 1.7421875, 1.7265625, 1.734375, 1.7265625, 1.734375, 1.7265625, 1.734375, 1.7265625, 1.734375, 1.734375, 1.7265625, 1.734375, 1.734375, 1.7265625, 1.734375, 1.734375, 1.7265625, 1.734375, 1.7265625, 1.734375, 1.7265625, 1.734375, 1.734375, 1.7265625, 1.734375, 1.7265625, 1.734375, 1.7265625, 1.734375, 1.7265625, 1.734375, 1.7265625, 1.734375, 1.7265625, 1.734375, 1.7265625, 1.734375, 1.734375, 1.7265625, 1.734375, 1.734375, 1.7421875, 1.7421875, 1.75, 1.734375, 1.75, 1.734375, 1.7421875, 1.7421875, 1.734375, 1.75, 1.734375, 1.7421875, 1.7421875, 1.7421875, 1.7578125, 1.7578125, 1.75, 1.7578125, 1.75, 1.7578125, 1.75, 1.75, 1.75, 1.765625, 1.7734375, 1.765625, 1.7734375, 1.765625, 1.7734375, 1.7734375, 1.765625, 1.7734375, 1.7734375, 1.78125, 1.7734375, 1.78125, 1.78125, 1.7734375, 1.7890625, 1.78125, 1.7890625, 1.78125, 1.7890625, 1.78125, 1.7890625, 1.78125, 1.796875, 1.7890625, 1.796875, 1.7890625, 1.796875, 1.7890625, 1.8046875, 1.796875, 1.8046875, 1.796875, 1.8125, 1.8125, 1.8046875, 1.8125, 1.8046875, 1.8203125, 1.8125, 1.8203125, 1.8125, 1.8203125, 1.8203125, 1.8203125, 1.828125, 1.8359375, 1.828125, 1.8359375, 1.828125, 1.8359375, 1.828125, 1.84375, 1.84375, 1.84375, 1.84375, 1.8515625, 1.8515625, 1.84375, 1.8515625, 1.8515625, 1.859375, 1.859375, 1.859375, 1.8671875, 1.8671875, 1.875, 1.875, 1.859375, 1.8671875, 1.8671875, 1.8828125, 1.8828125, 1.8828125, 1.8671875, 1.8828125, 1.875, 1.890625, 1.890625, 1.890625, 1.8984375, 1.8984375, 1.90625, 1.8984375, 1.90625, 1.8984375, 1.90625, 1.90625, 1.9140625, 1.9140625, 1.921875, 1.921875, 1.921875, 1.921875, 1.921875, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.9375, 1.9453125, 1.9375, 1.9453125, 1.9375, 1.953125, 1.9453125, 1.953125, 1.9609375, 1.9609375, 1.96875, 1.9609375, 1.9609375, 1.9765625, 1.96875, 1.9765625, 1.96875, 1.984375, 1.9765625, 1.984375, 1.9765625, 1.9921875, 1.9921875, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.984375, 1.9921875, 0.0, 0.0078125, 0.0, 0.0078125, 0.0, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.03125, 0.03125, 0.03125, 0.0390625, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.0390625, 0.0390625, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.0625, 0.0625, 0.0703125, 0.0625, 0.0703125, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.0859375, 0.078125, 0.0859375, 0.0859375, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.109375, 0.1015625, 0.109375, 0.109375, 0.1171875, 0.109375, 0.125, 0.1171875, 0.1171875, 0.109375, 0.125, 0.125, 0.1328125, 0.125, 0.125, 0.1328125, 0.125, 0.140625, 0.1328125, 0.140625, 0.140625, 0.1484375, 0.1484375, 0.1484375, 0.1484375, 0.140625, 0.1484375, 0.1484375, 0.15625, 0.1484375, 0.15625, 0.1484375, 0.15625, 0.1640625, 0.15625, 0.1640625, 0.15625, 0.1640625, 0.15625, 0.171875, 0.171875, 0.1640625, 0.1640625, 0.1796875, 0.171875, 0.1796875, 0.1796875, 0.171875, 0.1796875, 0.1875, 0.1796875, 0.1875, 0.1875, 0.1796875, 0.1875, 0.1875, 0.1953125, 0.1875, 0.1953125, 0.1953125, 0.1953125, 0.1953125, 0.1953125, 0.1875, 0.203125, 0.1953125, 0.203125, 0.1953125, 0.203125, 0.203125, 0.203125, 0.203125, 0.2109375, 0.203125, 0.2109375, 0.203125, 0.2109375, 0.203125, 0.2109375, 0.2109375, 0.2109375, 0.2109375, 0.203125, 0.2109375, 0.2109375, 0.21875, 0.2109375, 0.21875, 0.2109375, 0.21875, 0.21875, 0.21875, 0.2109375, 0.21875, 0.2109375, 0.21875, 0.21875, 0.2265625, 0.2265625, 0.2265625, 0.21875, 0.21875, 0.2265625, 0.21875, 0.2265625, 0.21875, 0.21875, 0.2265625, 0.21875, 0.2265625, 0.21875, 0.2265625, 0.21875, 0.2265625, 0.21875, 0.2265625, 0.21875, 0.2265625, 0.2265625, 0.2265625, 0.2265625, 0.2265625, 0.21875, 0.2265625, 0.21875, 0.2265625, 0.2265625, 0.21875, 0.2265625, 0.2109375, 0.21875, 0.2109375, 0.21875, 0.2109375, 0.21875, 0.21875, 0.21875, 0.21875, 0.21875, 0.203125, 0.2109375, 0.203125, 0.2109375, 0.203125, 0.2109375, 0.203125, 0.2109375, 0.203125, 0.2109375, 0.2109375, 0.2109375, 0.203125, 0.2109375, 0.1953125, 0.203125, 0.1953125, 0.203125, 0.1953125, 0.203125, 0.203125, 0.1953125, 0.203125, 0.1953125, 0.1953125, 0.1875, 0.1953125, 0.1875, 0.1953125, 0.1953125, 0.1875, 0.1953125, 0.1875, 0.1953125, 0.1875, 0.1953125, 0.1796875, 0.1875, 0.1796875, 0.1875, 0.1875, 0.1796875, 0.1875, 0.1796875, 0.1796875, 0.171875, 0.1796875, 0.1796875, 0.171875, 0.1640625, 0.171875, 0.1640625, 0.171875, 0.1640625, 0.171875, 0.171875, 0.1640625, 0.171875, 0.15625, 0.1640625, 0.15625, 0.1640625, 0.1484375, 0.1484375, 0.15625, 0.1484375, 0.15625, 0.1484375, 0.1484375, 0.1328125, 0.140625, 0.1328125, 0.140625, 0.125, 0.1328125, 0.1171875, 0.1328125, 0.125, 0.1328125, 0.125, 0.1328125, 0.125, 0.1171875, 0.1171875, 0.109375, 0.109375, 0.109375, 0.109375, 0.1171875, 0.1015625, 0.109375, 0.09375, 0.1015625, 0.1015625, 0.1015625, 0.1015625, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.0859375, 0.078125, 0.0859375, 0.078125, 0.078125, 0.0703125, 0.078125, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.0625, 0.0703125, 0.0703125, 0.0546875, 0.0625, 0.0546875, 0.0625, 0.0546875, 0.0625, 0.046875, 0.046875, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.0390625, 0.0390625, 0.0390625, 0.03125, 0.03125, 0.0234375, 0.03125, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.0234375, 0.015625, 0.015625, 0.0078125, 0.015625, 0.015625, 0.0, 0.0078125, 0.0, 0.0078125, 1.9921875, 0.0, 1.984375, 1.9921875, 1.9921875, 0.0, 0.0, 0.0, 0.0, 0.0, 1.9921875, 1.9921875, 0.0, 0.0, 1.9921875, 1.984375, 1.984375, 1.9765625, 1.9765625, 1.9765625, 1.9765625, 1.96875, 1.9765625, 1.9609375, 1.96875, 1.9609375, 1.96875, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.953125, 1.9453125, 1.953125, 1.9453125, 1.953125, 1.9453125, 1.9453125, 1.9453125, 1.9375, 1.9453125, 1.9375, 1.9375, 1.9375, 1.9375, 1.921875, 1.9296875, 1.921875, 1.9296875, 1.9140625, 1.921875, 1.9140625, 1.921875, 1.921875, 1.9140625, 1.9140625, 1.9140625, 1.9140625, 1.9140625, 1.90625, 1.9140625, 1.90625, 1.8984375, 1.890625, 1.8984375, 1.8984375, 1.8984375, 1.8984375, 1.8828125, 1.890625, 1.8828125, 1.890625, 1.890625, 1.8828125, 1.8828125, 1.875, 1.875, 1.875, 1.859375, 1.8671875, 1.8671875, 1.8671875, 1.8671875, 1.875, 1.859375, 1.8671875, 1.8515625, 1.859375, 1.859375, 1.8671875, 1.859375, 1.859375, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.8515625, 1.84375, 1.84375, 1.84375, 1.8359375, 1.84375, 1.8359375, 1.8359375, 1.828125, 1.8359375, 1.8359375, 1.8359375, 1.828125, 1.8359375, 1.828125, 1.828125, 1.8203125, 1.828125, 1.8203125, 1.828125, 1.828125, 1.8203125, 1.828125, 1.828125, 1.8203125, 1.828125, 1.8203125, 1.828125, 1.828125, 1.8125, 1.8203125, 1.8125, 1.8203125, 1.8125, 1.8203125, 1.8125, 1.8203125, 1.8125, 1.8203125, 1.8046875, 1.8125, 1.8046875, 1.8125, 1.8046875, 1.8125, 1.8125, 1.8046875, 1.8046875, 1.796875, 1.8046875, 1.796875, 1.8046875, 1.796875, 1.8046875, 1.796875, 1.8046875, 1.796875, 1.8046875, 1.8046875, 1.8046875, 1.8046875, 1.796875, 1.8046875, 1.796875, 1.8046875, 1.8046875, 1.8046875, 1.7890625, 1.796875, 1.7890625, 1.796875, 1.796875, 1.7890625, 1.796875, 1.7890625, 1.796875, 1.7890625, 1.796875, 1.796875, 1.7890625, 1.796875, 1.7890625, 1.796875, 1.7890625, 1.796875, 1.7890625, 1.796875, 1.7890625, 1.796875, 1.796875, 1.796875, 1.796875, 1.796875, 1.7890625, 1.796875, 1.7890625, 1.796875, 1.7890625, 1.796875, 1.796875, 1.7890625, 1.796875, 1.7890625, 1.796875, 1.7890625, 1.796875, 1.7890625, 1.796875, 1.7890625, 1.8046875, 1.796875, 1.796875, 1.8046875, 1.8046875, 1.8046875, 1.8046875, 1.8046875, 1.8046875, 1.8046875, 1.796875, 1.8046875, 1.796875, 1.8046875, 1.796875, 1.8046875, 1.796875, 1.8046875, 1.796875, 1.8046875, 1.8046875, 1.8125, 1.8046875, 1.8125, 1.8125, 1.8125, 1.8046875, 1.8125, 1.8125, 1.8203125, 1.8125, 1.8203125, 1.8125, 1.8203125, 1.828125, 1.828125, 1.828125, 1.8203125, 1.8359375, 1.828125, 1.8359375, 1.828125, 1.8359375, 1.8359375, 1.8359375, 1.8359375, 1.8359375, 1.828125, 1.8359375, 1.828125, 1.84375, 1.8359375, 1.84375, 1.8359375, 1.84375, 1.8359375, 1.84375, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.8515625, 1.84375, 1.859375, 1.8515625, 1.8671875, 1.8671875, 1.8515625, 1.859375, 1.8515625, 1.859375, 1.8671875, 1.859375, 1.875, 1.8671875, 1.8671875, 1.8671875, 1.8671875, 1.875, 1.875, 1.8828125, 1.8671875, 1.8671875, 1.8828125, 1.875, 1.890625, 1.8828125, 1.890625, 1.890625, 1.890625, 1.8984375, 1.8984375, 1.890625, 1.8984375, 1.8984375, 1.90625, 1.8984375, 1.8984375, 1.90625, 1.8984375, 1.9140625, 1.90625, 1.9140625, 1.9140625, 1.90625, 1.9140625, 1.9140625, 1.921875, 1.921875, 1.9296875, 1.9296875, 1.921875, 1.9296875, 1.921875, 1.9375, 1.9296875, 1.9375, 1.9375, 1.9375, 1.9375, 1.9375, 1.9453125, 1.9453125, 1.9375, 1.9453125, 1.9375, 1.953125, 1.953125, 1.9453125, 1.953125, 1.953125, 1.9453125, 1.9609375, 1.9609375, 1.96875, 1.96875, 1.96875, 1.9609375, 1.96875, 1.96875, 1.9765625, 1.984375, 1.96875, 1.9765625, 1.96875, 1.984375, 1.984375, 1.984375, 1.984375, 1.984375, 1.9921875, 1.9921875, 0.0, 1.984375, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.984375, 1.9921875, 1.9921875, 0.0, 0.0, 0.0078125, 0.0, 0.0, 0.0078125, 0.0078125, 0.015625, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.015625, 0.0234375, 0.0234375, 0.0234375, 0.0234375, 0.0234375, 0.03125, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.0390625, 0.03125, 0.046875, 0.046875, 0.0390625, 0.046875, 0.0390625, 0.0390625, 0.0546875, 0.046875, 0.0546875, 0.0546875, 0.0546875, 0.046875, 0.0625, 0.0546875, 0.0625, 0.0625, 0.0625, 0.0703125, 0.0625, 0.0703125, 0.0703125, 0.0625, 0.078125, 0.0703125, 0.078125, 0.078125, 0.0703125, 0.078125, 0.078125, 0.0859375, 0.0859375, 0.0859375, 0.0859375, 0.0859375, 0.0859375, 0.078125, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.1015625, 0.109375, 0.109375, 0.109375, 0.1171875, 0.1015625, 0.109375, 0.109375, 0.1171875, 0.1171875, 0.125, 0.125, 0.1171875, 0.1171875, 0.109375, 0.125, 0.1171875, 0.1328125, 0.1328125, 0.1328125, 0.1328125, 0.1328125, 0.125, 0.1328125, 0.1171875, 0.1328125, 0.125, 0.140625, 0.140625, 0.140625, 0.140625, 0.140625, 0.1328125, 0.140625, 0.140625, 0.1484375, 0.1484375, 0.140625, 0.1484375, 0.1484375, 0.140625, 0.1484375, 0.140625, 0.1484375, 0.1484375, 0.15625, 0.1484375, 0.15625, 0.1484375, 0.15625, 0.15625, 0.1484375, 0.15625, 0.1484375, 0.15625, 0.1484375, 0.15625, 0.1484375, 0.15625, 0.1484375, 0.1640625, 0.15625, 0.1640625, 0.1640625, 0.15625, 0.1640625, 0.1640625, 0.15625, 0.1640625, 0.15625, 0.1640625, 0.1640625, 0.15625, 0.1640625, 0.15625, 0.1640625, 0.15625, 0.1640625, 0.171875, 0.1640625, 0.171875, 0.1640625, 0.1640625, 0.171875, 0.1640625, 0.171875, 0.1640625, 0.171875, 0.171875, 0.171875, 0.171875, 0.171875, 0.1640625, 0.171875, 0.1640625, 0.1640625, 0.171875, 0.1640625, 0.171875, 0.1640625, 0.171875, 0.171875, 0.171875, 0.1640625, 0.1640625, 0.15625, 0.1640625, 0.15625, 0.1640625, 0.1640625, 0.15625, 0.1640625, 0.15625, 0.1640625, 0.1640625, 0.15625, 0.1640625, 0.15625, 0.1640625, 0.15625, 0.1640625, 0.1640625, 0.15625, 0.1640625, 0.1640625, 0.15625, 0.1640625, 0.15625, 0.1640625, 0.15625, 0.15625, 0.1484375, 0.15625, 0.1484375, 0.15625, 0.1484375, 0.15625, 0.15625, 0.1484375, 0.15625, 0.1484375, 0.15625, 0.15625, 0.1484375, 0.15625, 0.1484375, 0.1484375, 0.140625, 0.1484375, 0.140625, 0.1484375, 0.140625, 0.1484375, 0.1484375, 0.140625, 0.1484375, 0.140625, 0.1484375, 0.1328125, 0.140625, 0.140625, 0.1328125, 0.140625, 0.1328125, 0.1328125, 0.140625, 0.1328125, 0.140625, 0.1328125, 0.140625, 0.125, 0.125, 0.1328125, 0.125, 0.1328125, 0.125, 0.1328125, 0.1171875, 0.125, 0.109375, 0.125, 0.109375, 0.1171875, 0.1015625, 0.109375, 0.1015625, 0.109375, 0.109375, 0.109375, 0.109375, 0.1015625, 0.1015625, 0.1015625, 0.09375, 0.109375, 0.09375, 0.1015625, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.078125, 0.0859375, 0.0859375, 0.078125, 0.0859375, 0.0859375, 0.0703125, 0.078125, 0.078125, 0.0703125, 0.078125, 0.078125, 0.078125, 0.0703125, 0.0703125, 0.0625, 0.0703125, 0.0625, 0.0703125, 0.0625, 0.0703125, 0.0546875, 0.0625, 0.0546875, 0.0625, 0.0546875, 0.0625, 0.046875, 0.0546875, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.046875, 0.046875, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.0390625, 0.03125, 0.0390625, 0.0390625, 0.03125, 0.0390625, 0.0390625, 0.03125, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.0234375, 0.0234375, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.015625, 0.0078125, 0.0078125, 0.0078125, 1.9921875, 0.0078125, 0.0, 0.0, 0.0, 1.9921875, 1.984375, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 0.0, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.984375, 1.9921875, 1.9765625, 1.984375, 1.9765625, 1.9921875, 1.9765625, 1.984375, 1.96875, 1.9765625, 1.96875, 1.984375, 1.96875, 1.9765625, 1.9609375, 1.96875, 1.96875, 1.9609375, 1.96875, 1.9609375, 1.9609375, 1.9609375, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.9453125, 1.953125, 1.9453125, 1.9453125, 1.953125, 1.9453125, 1.953125, 1.9375, 1.9453125, 1.9453125, 1.9453125, 1.9453125, 1.9453125, 1.9375, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.9296875, 1.9296875, 1.9296875, 1.921875, 1.9296875, 1.9296875, 1.9296875, 1.9296875, 1.921875, 1.921875, 1.921875, 1.9140625, 1.921875, 1.9140625, 1.921875, 1.9140625, 1.90625, 1.9140625, 1.90625, 1.9140625, 1.90625, 1.9140625, 1.90625, 1.90625, 1.8984375, 1.90625, 1.8984375, 1.90625, 1.90625, 1.90625, 1.8984375, 1.90625, 1.8984375, 1.8984375, 1.890625, 1.8984375, 1.890625, 1.890625, 1.8828125, 1.8828125, 1.8828125, 1.890625, 1.890625, 1.8984375, 1.8984375, 1.890625, 1.8984375, 1.8828125, 1.890625, 1.890625, 1.8828125, 1.890625, 1.8828125, 1.890625, 1.8828125, 1.8828125, 1.875, 1.875, 1.875, 1.8828125, 1.875, 1.8828125, 1.875, 1.8828125, 1.875, 1.875, 1.8828125, 1.875, 1.875, 1.8671875, 1.8671875, 1.8671875, 1.875, 1.8671875, 1.8671875, 1.8671875, 1.875, 1.859375, 1.875, 1.8671875, 1.8671875, 1.8671875, 1.8515625, 1.859375, 1.8515625, 1.859375, 1.8515625, 1.859375, 1.859375, 1.859375, 1.8515625, 1.859375, 1.8515625, 1.859375, 1.8515625, 1.859375, 1.8515625, 1.859375, 1.8515625, 1.8671875, 1.8515625, 1.8515625, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.8515625, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.8515625, 1.8515625, 1.8515625, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.8515625, 1.859375, 1.8515625, 1.859375, 1.8515625, 1.8671875, 1.875, 1.8671875, 1.8671875, 1.859375, 1.875, 1.859375, 1.875, 1.8671875, 1.875, 1.875, 1.8671875, 1.8671875, 1.8671875, 1.8671875, 1.875, 1.8671875, 1.8671875, 1.859375, 1.875, 1.8671875, 1.8828125, 1.875, 1.8828125, 1.875, 1.8828125, 1.875, 1.8828125, 1.875, 1.8828125, 1.8828125, 1.875, 1.8828125, 1.875, 1.875, 1.875, 1.8828125, 1.890625, 1.8828125, 1.890625, 1.8828125, 1.890625, 1.8828125, 1.890625, 1.890625, 1.8828125, 1.890625, 1.8828125, 1.890625, 1.8984375, 1.890625, 1.8984375, 1.890625, 1.8984375, 1.890625, 1.8984375, 1.890625, 1.8984375, 1.890625, 1.90625, 1.8984375, 1.90625, 1.8984375, 1.90625, 1.90625, 1.8984375, 1.90625, 1.90625, 1.9140625, 1.90625, 1.9140625, 1.9140625, 1.9140625, 1.9140625, 1.9140625, 1.921875, 1.9140625, 1.921875, 1.921875, 1.9140625, 1.9296875, 1.921875, 1.9296875, 1.921875, 1.9296875, 1.9296875, 1.9296875, 1.921875, 1.9296875, 1.921875, 1.9375, 1.9296875, 1.9375, 1.9375, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.9375, 1.9453125, 1.9375, 1.9453125, 1.9453125, 1.9375, 1.9453125, 1.9453125, 1.9453125, 1.953125, 1.953125, 1.9453125, 1.953125, 1.9453125, 1.953125, 1.9453125, 1.953125, 1.9453125, 1.9609375, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.9609375, 1.953125, 1.9609375, 1.9609375, 1.96875, 1.96875, 1.9609375, 1.96875, 1.9609375, 1.9765625, 1.9765625, 1.9765625, 1.9765625, 1.96875, 1.9765625, 1.9765625, 1.9765625, 1.984375, 1.984375, 1.9921875, 1.9765625, 1.984375, 1.9765625, 1.9921875, 1.9921875, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.984375, 0.0, 1.984375, 1.9921875, 0.0, 1.9921875, 0.0078125, 0.0, 0.0078125, 1.9921875, 0.0078125, 0.0078125, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.015625, 0.0078125, 0.0234375, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.03125, 0.0390625, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.0390625, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.046875, 0.0546875, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.0546875, 0.0546875, 0.046875, 0.0625, 0.0546875, 0.0625, 0.0546875, 0.0625, 0.0546875, 0.0625, 0.0546875, 0.0625, 0.0546875, 0.0703125, 0.0703125, 0.0703125, 0.0703125, 0.0703125, 0.0625, 0.0703125, 0.0625, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.078125, 0.078125, 0.0703125, 0.0859375, 0.078125, 0.0859375, 0.078125, 0.0859375, 0.0859375, 0.078125, 0.0859375, 0.078125, 0.0859375, 0.0859375, 0.078125, 0.0859375, 0.0859375, 0.078125, 0.0859375, 0.078125, 0.0859375, 0.0859375, 0.078125, 0.0859375, 0.078125, 0.0859375, 0.0859375, 0.078125, 0.0859375, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.09375, 0.0859375, 0.09375, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.09375, 0.0859375, 0.09375, 0.09375, 0.1015625, 0.109375, 0.09375, 0.1015625, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.1015625, 0.09375, 0.1015625, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.1015625, 0.09375, 0.1015625, 0.1015625, 0.09375, 0.1015625, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.1015625, 0.1015625, 0.1015625, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.1015625, 0.09375, 0.09375, 0.09375, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.0859375, 0.078125, 0.0859375, 0.0859375, 0.078125, 0.0859375, 0.078125, 0.0859375, 0.0859375, 0.0859375, 0.0859375, 0.0859375, 0.0859375, 0.0859375, 0.078125, 0.0859375, 0.078125, 0.0859375, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.0625, 0.0703125, 0.0625, 0.0703125, 0.0625, 0.0703125, 0.0703125, 0.0625, 0.0703125, 0.0625, 0.0703125, 0.0703125, 0.0703125, 0.0703125, 0.0703125, 0.0625, 0.0625, 0.0625, 0.0546875, 0.0625, 0.0546875, 0.0625, 0.0546875, 0.0625, 0.0546875, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.046875, 0.046875, 0.046875, 0.0390625, 0.046875, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.03125, 0.03125, 0.03125, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.015625, 0.0234375, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.015625, 0.0234375, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.015625, 0.015625, 0.0, 0.0078125, 1.9921875, 0.0078125, 0.0078125, 0.0078125, 0.0, 0.0078125, 1.9921875, 0.0, 1.984375, 1.9921875, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 0.0, 0.0, 1.984375, 1.9921875, 1.9765625, 1.9765625, 1.984375, 1.9765625, 1.9921875, 1.9765625, 1.9765625, 1.9765625, 1.96875, 1.9765625, 1.96875, 1.9765625, 1.9765625] \ No newline at end of file diff --git a/drums/drum2.wav b/drums/drum2.wav new file mode 100644 index 0000000..25d8e0e Binary files /dev/null and b/drums/drum2.wav differ diff --git a/drums/drum3.txt b/drums/drum3.txt new file mode 100644 index 0000000..8feeb9c --- /dev/null +++ b/drums/drum3.txt @@ -0,0 +1 @@ +[0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 1.4296875, 1.421875, 1.421875, 1.421875, 1.421875, 1.4375, 0.9921875, 0.9921875, 0.9921875, 0.9921875, 0.984375, 0.984375, 0.984375, 0.984375, 0.9765625, 0.9765625, 0.9765625, 0.96875, 0.96875, 0.96875, 0.9609375, 0.9609375, 0.9609375, 0.9609375, 0.9609375, 0.9609375, 0.9609375, 0.9609375, 0.9609375, 0.9609375, 0.9609375, 0.9609375, 0.953125, 0.953125, 0.9453125, 0.9453125, 0.9453125, 0.9375, 0.9375, 0.9375, 0.9296875, 0.921875, 0.921875, 0.921875, 0.90625, 0.90625, 0.90625, 0.8984375, 0.8984375, 0.8984375, 0.8984375, 0.8984375, 0.8984375, 0.8984375, 0.8984375, 0.8984375, 0.8984375, 0.8984375, 0.8984375, 0.8984375, 0.8984375, 0.8984375, 0.8984375, 0.8984375, 0.890625, 0.890625, 0.8828125, 0.8828125, 0.875, 0.875, 0.8671875, 0.8671875, 0.859375, 0.859375, 0.859375, 0.859375, 0.859375, 0.859375, 0.8515625, 0.8515625, 0.8515625, 0.8515625, 0.8515625, 0.8515625, 0.8515625, 0.8515625, 0.84375, 0.84375, 0.8359375, 0.828125, 0.8203125, 0.8203125, 0.8125, 0.8125, 0.8046875, 0.796875, 0.796875, 0.7890625, 0.78125, 0.7734375, 0.765625, 0.75, 0.7421875, 0.734375, 0.7265625, 0.71875, 0.7109375, 0.6953125, 0.6875, 0.671875, 0.6640625, 0.65625, 0.640625, 0.6328125, 0.6171875, 0.609375, 0.59375, 0.578125, 0.5625, 0.546875, 0.5390625, 0.53125, 0.5078125, 0.4921875, 0.484375, 0.4765625, 0.46875, 0.453125, 0.4375, 0.421875, 0.40625, 0.390625, 0.3828125, 0.375, 0.3671875, 0.3515625, 0.34375, 0.328125, 0.3203125, 0.3125, 0.296875, 0.2890625, 0.2734375, 0.265625, 0.25, 0.2421875, 0.2265625, 0.21875, 0.203125, 0.1953125, 0.1875, 0.171875, 0.1640625, 0.1484375, 0.140625, 0.1328125, 0.125, 0.1015625, 0.0859375, 0.078125, 0.078125, 0.0703125, 0.0546875, 0.046875, 0.03125, 0.015625, 0.015625, 0.0078125, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875] \ No newline at end of file diff --git a/drums/drum3.wav b/drums/drum3.wav new file mode 100644 index 0000000..1dc017e Binary files /dev/null and b/drums/drum3.wav differ diff --git a/drums/drum4.txt b/drums/drum4.txt new file mode 100644 index 0000000..f882825 --- /dev/null +++ b/drums/drum4.txt @@ -0,0 +1 @@ +[0.0, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 0.0078125, 0.0078125, 0.0078125, 0.0078125, 1.9921875, 0.0078125, 0.0, 1.984375, 1.9375, 1.9296875, 1.9375, 1.9453125, 1.953125, 1.9453125, 1.9375, 1.9921875, 0.0390625, 0.0859375, 0.0625, 0.03125, 1.96875, 1.96875, 1.9765625, 1.9765625, 1.9765625, 0.0234375, 0.109375, 0.1484375, 0.1328125, 0.09375, 0.046875, 0.046875, 0.0546875, 0.015625, 1.96875, 1.9296875, 1.953125, 0.015625, 0.09375, 0.1171875, 0.1171875, 0.0859375, 0.0625, 0.015625, 0.046875, 0.203125, 0.4140625, 0.4765625, 0.4375, 0.4609375, 0.46875, 0.375, 0.265625, 0.2265625, 0.2578125, 0.2578125, 0.2578125, 0.2890625, 0.3515625, 0.3671875, 0.34375, 0.3359375, 0.3125, 0.3125, 0.3046875, 0.328125, 0.3125, 0.2578125, 0.171875, 0.125, 0.140625, 0.1640625, 0.15625, 0.0625, 1.9609375, 1.9140625, 1.9375, 1.9296875, 1.921875, 1.90625, 1.9140625, 1.921875, 1.9296875, 1.9296875, 1.9140625, 1.8671875, 1.875, 0.0546875, 0.2578125, 0.328125, 0.2890625, 0.25, 0.265625, 0.2734375, 0.2578125, 0.140625, 1.9921875, 1.9453125, 1.953125, 1.9609375, 1.953125, 1.984375, 1.96875, 1.8671875, 1.7265625, 1.671875, 1.703125, 1.6953125, 1.6796875, 1.671875, 1.6796875, 1.6640625, 1.6640625, 1.6640625, 1.6484375, 1.6171875, 1.609375, 1.7734375, 1.9765625, 0.0390625, 0.0078125, 1.9765625, 1.984375, 1.9453125, 1.890625, 1.8828125, 1.890625, 1.8671875, 1.8671875, 1.875, 1.9140625, 1.9296875, 1.9140625, 1.8203125, 1.6953125, 1.6640625, 1.671875, 1.6875, 1.6796875, 1.6484375, 1.625, 1.5859375, 1.6015625, 1.6640625, 1.7578125, 1.78125, 1.765625, 1.7421875, 1.7578125, 1.765625, 1.8046875, 1.8359375, 1.828125, 1.6875, 1.5, 1.4375, 1.4609375, 1.5, 1.484375, 1.4296875, 1.453125, 1.6484375, 1.9140625, 0.0078125, 1.9609375, 1.9453125, 1.953125, 1.9609375, 1.953125, 1.953125, 1.953125, 0.0, 1.984375, 1.8203125, 1.5859375, 1.5, 1.5546875, 1.546875, 1.5546875, 1.671875, 1.8125, 1.8828125, 1.859375, 1.859375, 1.8671875, 1.8671875, 1.859375, 1.84375, 1.8515625, 1.921875, 0.0078125, 0.0546875, 0.046875, 0.0625, 0.078125, 0.1328125, 0.125, 1.9609375, 1.7578125, 1.6875, 1.7421875, 1.7265625, 1.71875, 1.9296875, 0.1875, 0.296875, 0.2421875, 0.2109375, 0.21875, 0.2109375, 0.2265625, 0.2265625, 0.2421875, 0.2734375, 0.28125, 0.15625, 0.0, 1.9453125, 1.9765625, 1.984375, 1.984375, 0.0859375, 0.2109375, 0.265625, 0.25, 0.265625, 0.265625, 0.1875, 0.0703125, 0.03125, 0.0625, 0.0390625, 0.046875, 0.1875, 0.390625, 0.4609375, 0.4375, 0.421875, 0.4296875, 0.4375, 0.4296875, 0.4375, 0.4375, 0.4453125, 0.4453125, 0.484375, 0.4921875, 0.3046875, 0.0703125, 1.96875, 0.0234375, 0.0546875, 0.0390625, 0.0546875, 0.046875, 0.0078125, 1.9453125, 1.9140625, 1.9375, 1.9296875, 1.9375, 1.953125, 1.96875, 1.984375, 1.9765625, 1.9765625, 1.9765625, 1.984375, 0.015625, 0.015625, 0.015625, 0.0078125, 0.0, 0.0390625, 0.078125, 0.0859375, 0.0859375, 0.0625, 0.0703125, 0.078125, 0.109375, 0.1171875, 0.1015625, 0.09375, 0.078125, 0.109375, 0.15625, 0.15625, 0.1484375, 0.140625, 0.1484375, 0.09375, 0.015625, 1.96875, 1.984375, 1.953125, 1.953125, 0.0703125, 0.2265625, 0.28125, 0.234375, 0.2578125, 0.2578125, 0.0703125, 1.8046875, 1.703125, 1.7265625, 1.71875, 1.6875, 1.8515625, 0.0625, 0.1171875, 0.0234375, 1.9765625, 1.9921875, 0.015625, 0.03125, 0.09375, 0.1328125, 0.125, 0.1171875, 0.1484375, 0.1875, 0.1640625, 0.0859375, 0.046875, 0.0546875, 0.03125, 0.0234375, 0.0703125, 0.1171875, 1.9453125, 1.6875, 1.5625, 1.5859375, 1.6796875, 1.7421875, 1.7734375, 1.75, 1.7265625, 1.71875, 1.7734375, 1.84375, 1.8828125, 1.875, 1.796875, 1.71875, 1.6640625, 1.6796875, 1.703125, 1.71875, 1.71875, 1.7109375, 1.71875, 1.7109375, 1.6953125, 1.640625, 1.6171875, 1.6171875, 1.6796875, 1.7734375, 1.84375, 1.8203125, 1.7109375, 1.5546875, 1.4609375, 1.4765625, 1.6484375, 1.8828125, 1.984375, 1.953125, 1.8984375, 1.8984375, 1.921875, 1.9296875, 1.796875, 1.5625, 1.4375, 1.4609375, 1.6484375, 1.875, 0.0078125, 1.984375, 1.8359375, 1.65625, 1.578125, 1.6015625, 1.671875, 1.7421875, 1.78125, 1.78125, 1.7421875, 1.703125, 1.65625, 1.65625, 1.7890625, 1.96875, 0.0703125, 0.046875, 0.0, 1.9375, 1.9140625, 1.921875, 1.96875, 0.0390625, 0.0859375, 0.0859375, 0.046875, 1.984375, 1.9921875, 0.015625, 1.9453125, 1.8515625, 1.7890625, 1.8125, 1.8515625, 1.8984375, 1.921875, 1.9453125, 1.9140625, 1.921875, 0.015625, 0.1640625, 0.234375, 0.2109375, 0.203125, 0.21875, 0.1328125, 0.015625, 1.9609375, 1.9921875, 0.0078125, 0.015625, 0.0234375, 0.046875, 0.0625, 0.0625, 0.0859375, 0.0859375, 0.0546875, 1.9921875, 1.96875, 1.9921875, 1.9765625, 1.9765625, 0.09375, 0.296875, 0.3828125, 0.375, 0.3515625, 0.359375, 0.3828125, 0.3828125, 0.359375, 0.3046875, 0.2734375, 0.2734375, 0.328125, 0.3359375, 0.1953125, 1.9921875, 1.8828125, 1.921875, 1.9453125, 1.9453125, 1.953125, 1.9609375, 1.9609375, 1.9765625, 1.9375, 1.9375, 0.0625, 0.2890625, 0.390625, 0.375, 0.3359375, 0.3515625, 0.3359375, 0.3359375, 0.3984375, 0.5, 0.5390625, 0.5234375, 0.5546875, 0.578125, 0.375, 0.0390625, 1.890625, 1.9375, 1.9296875, 1.90625, 0.078125, 0.375, 0.5703125, 0.5390625, 0.3203125, 0.03125, 1.921875, 1.984375, 0.0234375, 1.9921875, 0.0703125, 0.2109375, 0.25, 0.2265625, 0.296875, 0.40625, 0.3359375, 0.1015625, 1.984375, 0.0, 0.0625, 0.1328125, 0.21875, 0.296875, 0.3203125, 0.296875, 0.3125, 0.3046875, 0.2421875, 0.1171875, 0.0390625, 0.03125, 0.1484375, 0.3125, 0.375, 0.3515625, 0.359375, 0.3828125, 0.1953125, 1.8671875, 1.71875, 1.734375, 1.7578125, 1.7265625, 1.8125, 1.9453125, 0.0234375, 0.0078125, 1.9765625, 1.953125, 0.0078125, 0.09375, 0.1484375, 0.1171875, 0.1015625, 0.09375, 0.109375, 0.1015625, 0.0390625, 1.921875, 1.8671875, 1.8671875, 1.890625, 1.8828125, 1.8046875, 1.6640625, 1.6015625, 1.6015625, 1.6328125, 1.6171875, 1.5859375, 1.5625, 1.6640625, 1.828125, 1.9296875, 1.8984375, 1.8828125, 1.8828125, 1.8515625, 1.78125, 1.7578125, 1.75, 1.765625, 1.765625, 1.7265625, 1.71875, 1.8046875, 1.96875, 0.0390625, 0.03125, 1.9921875, 0.0078125, 0.015625, 0.03125, 0.03125, 0.0390625, 0.0390625, 0.0234375, 0.046875, 0.0546875, 1.9921875, 1.9140625, 1.8984375, 1.90625, 1.8359375, 1.6640625, 1.59375, 1.609375, 1.609375, 1.5546875, 1.53125, 1.5390625, 1.5859375, 1.6328125, 1.6484375, 1.6328125, 1.734375, 1.8984375, 1.9921875, 1.984375, 1.984375, 0.046875, 0.1015625, 0.1171875, 0.015625, 1.875, 1.796875, 1.8125, 1.8046875, 1.71875, 1.6953125, 1.6953125, 1.71875, 1.7109375, 1.7265625, 1.734375, 1.703125, 1.6796875, 1.828125, 0.078125, 0.2109375, 0.203125, 0.171875, 0.1953125, 0.171875, 0.1328125, 0.1484375, 0.171875, 0.0625, 1.8203125, 1.6875, 1.734375, 1.75, 1.7265625, 1.671875, 1.65625, 1.8046875, 0.0546875, 0.1875, 0.1640625, 0.15625, 0.1875, 0.09375, 1.9140625, 1.8125, 1.84375, 1.8515625, 1.828125, 1.7890625, 1.78125, 1.859375, 1.9765625, 0.0546875, 0.0546875, 0.0078125, 1.96875, 1.9453125, 1.9609375, 1.9609375, 1.921875, 1.9140625, 1.9140625, 1.9609375, 0.0078125, 0.0546875, 0.0546875, 0.046875, 0.0390625, 0.09375, 0.1640625, 0.203125, 0.21875, 0.21875, 0.21875, 0.2109375, 0.1640625, 0.15625, 0.15625, 0.1796875, 0.1875, 0.1640625, 0.1640625, 0.234375, 0.3984375, 0.4765625, 0.46875, 0.4609375, 0.4921875, 0.3984375, 0.2421875, 0.1484375, 0.1640625, 0.1796875, 0.171875, 0.1953125, 0.265625, 0.2890625, 0.296875, 0.28125, 0.2890625, 0.2734375, 0.2421875, 0.2109375, 0.21875, 0.21875, 0.234375, 0.1875, 0.1171875, 0.078125, 0.078125, 0.078125, 0.046875, 0.140625, 0.3046875, 0.421875, 0.3984375, 0.3671875, 0.359375, 0.3828125, 0.3984375, 0.421875, 0.421875, 0.40625, 0.40625, 0.3984375, 0.375, 0.375, 0.359375, 0.3828125, 0.390625, 0.2734375, 0.046875, 1.8984375, 1.921875, 1.9296875, 1.8828125, 1.984375, 0.1796875, 0.3125, 0.296875, 0.2265625, 0.15625, 0.109375, 0.1171875, 0.109375, 0.1015625, 0.1171875, 0.15625, 0.21875, 0.2109375, 0.140625, 0.0, 1.921875, 1.9296875, 1.953125, 1.9765625, 1.984375, 1.96875, 1.96875, 1.9609375, 1.9375, 1.8828125, 1.8828125, 1.8828125, 1.8125, 1.6875, 1.59375, 1.609375, 1.6171875, 1.6171875, 1.59375, 1.5859375, 1.609375, 1.640625, 1.671875, 1.65625, 1.625, 1.5859375, 1.7109375, 1.9765625, 0.1328125, 0.125, 0.0703125, 0.0546875, 0.09375, 0.109375, 0.0, 1.7890625, 1.6484375, 1.6484375, 1.6796875, 1.65625, 1.6875, 1.7421875, 1.7890625, 1.78125, 1.7734375, 1.7421875, 1.6953125, 1.65625, 1.6171875, 1.625, 1.6328125, 1.65625, 1.6328125, 1.6171875, 1.7109375, 1.9296875, 0.0859375, 0.1015625, 1.9609375, 1.7734375, 1.7265625, 1.8828125, 0.0078125, 1.9921875, 1.9453125, 1.8828125, 1.875, 1.90625, 1.84375, 1.71875, 1.640625, 1.671875, 1.6484375, 1.5546875, 1.6484375, 1.9140625, 0.0859375, 0.09375, 0.03125, 0.0, 1.9921875, 1.984375, 0.015625, 0.046875, 0.09375, 0.1328125, 0.015625, 1.8125, 1.640625, 1.6484375, 1.7421875, 1.875, 1.96875, 0.0, 1.8984375, 1.7265625, 1.625, 1.6328125, 1.6796875, 1.6875, 1.6875, 1.671875, 1.7109375, 1.7734375, 1.828125, 1.828125, 1.828125, 1.8515625, 1.8359375, 1.78125, 1.765625, 1.7734375, 1.7734375, 1.765625, 1.828125, 1.9921875, 0.09375, 0.078125, 0.0703125, 0.0859375, 0.0625, 1.96875, 1.90625, 1.921875, 1.9375, 1.9375, 1.9609375, 0.0078125, 0.0546875, 0.0546875, 0.0625, 0.0546875, 0.0703125, 0.1015625, 0.09375, 0.0859375, 0.140625, 0.3046875, 0.40625, 0.390625, 0.40625, 0.4453125, 0.3359375, 0.0625, 1.875, 1.890625, 1.9375, 1.9453125, 1.9296875, 1.953125, 1.921875, 1.8984375, 0.015625, 0.296875, 0.46875, 0.46875, 0.453125, 0.4765625, 0.390625, 0.1328125, 1.9765625, 1.984375, 0.0234375, 1.984375, 0.0703125, 0.265625, 0.390625, 0.3984375, 0.3515625, 0.3515625, 0.3671875, 0.40625, 0.4375, 0.453125, 0.40625, 0.3125, 0.2578125, 0.2578125, 0.265625, 0.2265625, 0.1796875, 0.109375, 0.078125, 0.0546875, 0.1015625, 0.171875, 0.2265625, 0.2109375, 0.21875, 0.265625, 0.296875, 0.3046875, 0.2734375, 0.21875, 0.1875, 0.1796875, 0.1875, 0.1640625, 0.125, 0.09375, 0.15625, 0.3359375, 0.46875, 0.4765625, 0.390625, 0.234375, 0.109375, 0.0234375, 1.96875, 1.953125, 1.984375, 0.09375, 0.140625, 0.1171875, 0.1484375, 0.2734375, 0.3828125, 0.390625, 0.2890625, 0.1484375, 0.03125, 0.0234375, 0.0625, 0.109375, 0.125, 0.1171875, 0.109375, 0.1328125, 0.0703125, 1.9140625, 1.796875, 1.8125, 1.8203125, 1.8125, 1.84375, 1.9453125, 0.0, 0.0, 1.96875, 1.9765625, 1.9609375, 1.9296875, 1.9609375, 0.046875, 0.1015625, 0.1015625, 0.078125, 0.0859375, 0.0546875, 1.984375, 1.8515625, 1.703125, 1.6015625, 1.6015625, 1.625, 1.609375, 1.59375, 1.5703125, 1.6015625, 1.6953125, 1.796875, 1.8828125, 1.9296875, 1.953125, 1.8828125, 1.75, 1.703125, 1.75, 1.8203125, 1.8203125, 1.8046875, 1.8203125, 1.8828125, 1.9765625, 0.078125, 0.1171875, 0.0, 1.734375, 1.5078125, 1.46875, 1.6015625, 1.84375, 0.0234375, 0.046875, 0.03125, 0.0546875, 0.0, 1.8203125, 1.7109375, 1.6953125, 1.734375, 1.7265625, 1.7890625, 1.90625, 0.015625, 0.0234375, 1.9765625, 1.8984375, 1.8125, 1.71875, 1.6796875, 1.6640625, 1.6953125, 1.7109375, 1.671875, 1.6171875, 1.5546875, 1.578125, 1.5625, 1.5390625, 1.6328125, 1.8828125, 0.0625, 0.078125, 0.03125, 0.0390625, 0.046875, 0.03125, 0.0234375, 0.0234375, 0.0390625, 0.09375, 0.0078125, 1.765625, 1.59375, 1.59375, 1.625, 1.59375, 1.6640625, 1.8984375, 0.09375, 0.1484375, 0.0234375, 1.8203125, 1.6875, 1.7421875, 1.8046875, 1.796875, 1.8359375, 1.9921875, 0.109375, 0.1171875, 0.109375, 0.1640625, 0.234375, 0.2890625, 0.1875, 1.953125, 1.75, 1.734375, 1.828125, 1.9609375, 0.0546875, 0.046875, 0.03125, 0.03125, 0.046875, 0.046875, 0.046875, 0.0546875, 0.0625, 0.09375, 0.0546875, 1.9453125, 1.8515625, 1.859375, 1.875, 1.875, 1.9140625, 0.0078125, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.09375, 0.046875, 0.0234375, 0.015625, 0.0546875, 0.1484375, 0.2265625, 0.2421875, 0.2109375, 0.1328125, 0.125, 0.171875, 0.2578125, 0.28125, 0.234375, 0.1171875, 1.9921875, 1.96875, 1.953125, 1.953125, 1.984375, 0.0625, 0.140625, 0.1640625, 0.1796875, 0.1875, 0.1796875, 0.125, 0.109375, 0.1953125, 0.265625, 0.25, 0.265625, 0.3203125, 0.3125, 0.1875, 0.0390625, 0.0, 0.09375, 0.3203125, 0.4375, 0.3359375, 0.21875, 0.2265625, 0.2109375, 0.046875, 0.0, 0.1484375, 0.3203125, 0.3515625, 0.265625, 0.09375, 0.015625, 0.0625, 0.1484375, 0.171875, 0.109375, 0.0078125, 1.921875, 1.9140625, 1.921875, 1.9375, 1.90625, 1.875, 1.9296875, 0.1328125, 0.2890625, 0.3125, 0.2734375, 0.28125, 0.2421875, 0.1640625, 0.078125, 0.0703125, 0.09375, 0.09375, 0.0625, 1.9609375, 1.8828125, 1.8671875, 1.890625, 1.890625, 1.8671875, 1.859375, 1.859375, 1.890625, 1.90625, 1.9140625, 1.8828125, 1.8671875, 1.890625, 0.015625, 0.109375, 0.125, 0.09375, 0.0703125, 0.078125, 0.0703125, 0.0625, 0.0703125, 0.0625, 0.0703125, 0.0703125, 0.0546875, 0.0625, 0.0546875, 0.0390625, 1.9765625, 1.9296875, 1.921875, 1.921875, 1.9453125, 1.890625, 1.765625, 1.640625, 1.6328125, 1.65625, 1.640625, 1.6328125, 1.625, 1.625, 1.6484375, 1.65625, 1.671875, 1.6484375, 1.609375, 1.6484375, 1.7734375, 1.890625, 1.8984375, 1.859375, 1.859375, 1.859375, 1.8828125, 1.8359375, 1.734375, 1.6328125, 1.625, 1.625, 1.6171875, 1.6328125, 1.75, 1.8359375, 1.859375, 1.8359375, 1.84375, 1.8203125, 1.7421875, 1.6640625, 1.6640625, 1.6796875, 1.671875, 1.671875, 1.6875, 1.65625, 1.59375, 1.5234375, 1.53125, 1.5390625, 1.515625, 1.546875, 1.625, 1.7109375, 1.7109375, 1.703125, 1.703125, 1.703125, 1.6640625, 1.625, 1.640625, 1.6328125, 1.59375, 1.6640625, 1.84375, 0.0234375, 0.0390625, 0.0234375, 0.0234375, 0.015625, 1.9140625, 1.8125, 1.8125, 1.8359375, 1.8515625, 1.8359375, 1.84375, 1.859375, 1.8984375, 1.921875, 1.9375, 1.921875, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.9296875, 1.9453125, 1.953125, 1.953125, 1.890625, 1.8359375, 1.8359375, 1.8515625, 1.875, 1.8515625, 1.7890625, 1.7265625, 1.7265625, 1.7421875, 1.7578125, 1.765625, 1.78125, 1.7890625, 1.75, 1.8125, 1.9921875, 0.15625, 0.1875, 0.15625, 0.1875, 0.171875, 0.0546875, 1.9609375, 1.9375, 1.9765625, 1.9921875, 1.953125, 1.8671875, 1.7734375, 1.7734375, 1.7890625, 1.8125, 1.8046875, 1.8203125, 1.828125, 1.84375, 1.84375, 1.8203125, 1.859375, 0.03125, 0.1796875, 0.21875, 0.1875, 0.203125, 0.1953125, 0.1796875, 0.1484375, 0.15625, 0.15625, 0.1640625, 0.1796875, 0.1953125, 0.234375, 0.2421875, 0.2421875, 0.2734375, 0.2421875, 0.15625, 0.0703125, 0.0546875, 0.0859375, 0.09375, 0.09375, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.0703125, 0.078125, 0.1484375, 0.2109375, 0.21875, 0.2265625, 0.2578125, 0.2578125, 0.1328125, 1.9765625, 1.9296875, 0.0, 0.1953125, 0.390625, 0.4140625, 0.375, 0.3515625, 0.375, 0.3984375, 0.3671875, 0.1796875, 0.015625, 1.953125, 0.03125, 0.1484375, 0.2421875, 0.2734375, 0.234375, 0.21875, 0.203125, 0.203125, 0.1953125, 0.203125, 0.1875, 0.1796875, 0.1875, 0.265625, 0.3125, 0.328125, 0.3046875, 0.3125, 0.3046875, 0.3046875, 0.296875, 0.3125, 0.3203125, 0.3125, 0.3125, 0.3046875, 0.296875, 0.3359375, 0.28125, 0.1328125, 1.9609375, 1.8984375, 1.9609375, 0.1484375, 0.328125, 0.3515625, 0.3125, 0.28125, 0.28125, 0.3046875, 0.265625, 0.1484375, 0.015625, 1.9609375, 0.015625, 0.09375, 0.1796875, 0.203125, 0.1640625, 0.0703125, 1.96875, 1.921875, 1.9609375, 0.1015625, 0.2265625, 0.25, 0.203125, 0.203125, 0.203125, 0.2109375, 0.1953125, 0.1953125, 0.1953125, 0.234375, 0.1796875, 1.9921875, 1.8203125, 1.7734375, 1.796875, 1.7421875, 1.6953125, 1.6875, 1.6875, 1.6796875, 1.671875, 1.6875, 1.703125, 1.6953125, 1.6875, 1.6875, 1.7109375, 1.703125, 1.703125, 1.6875, 1.6953125, 1.7265625, 1.75, 1.7578125, 1.7421875, 1.7578125, 1.7578125, 1.7578125, 1.75, 1.78125, 1.8046875, 1.8125, 1.796875, 1.8125, 1.796875, 1.734375, 1.6796875, 1.6328125, 1.671875, 1.7890625, 1.9140625, 1.984375, 1.9140625, 1.7109375, 1.5234375, 1.4375, 1.5234375, 1.6875, 1.828125, 1.8828125, 1.828125, 1.796875, 1.7734375, 1.75, 1.7734375, 1.7890625, 1.8125, 1.8046875, 1.8125, 1.84375, 1.8828125, 1.9296875, 1.953125, 1.9609375, 1.953125, 1.90625, 1.875, 1.859375, 1.8515625, 1.8671875, 1.8515625, 1.8515625, 1.8515625, 1.9296875, 1.9296875, 1.765625, 1.5859375, 1.5234375, 1.5703125, 1.640625, 1.703125, 1.78125, 1.828125, 1.84375, 1.8359375, 1.7734375, 1.734375, 1.703125, 1.7265625, 1.75, 1.7734375, 1.75, 1.7265625, 1.7109375, 1.7265625, 1.8046875, 1.875, 1.9296875, 1.890625, 1.796875, 1.6796875, 1.6328125, 1.6796875, 1.8671875, 0.03125, 0.09375, 0.046875, 0.03125, 0.046875, 0.078125, 0.0625, 1.875, 1.734375, 1.8671875, 0.078125, 0.171875, 0.1015625, 1.9765625, 1.8671875, 1.8203125, 1.8671875, 1.9140625, 1.96875, 1.984375, 1.9765625, 1.9375, 1.8984375, 1.8828125, 1.9140625, 0.0390625, 0.1796875, 0.2265625, 0.2109375, 0.15625, 0.109375, 0.109375, 0.109375, 0.125, 0.1328125, 0.1796875, 0.2265625, 0.265625, 0.25, 0.21875, 0.1796875, 0.203125, 0.1875, 0.1171875, 0.0390625, 0.046875, 0.109375, 0.1015625, 0.1171875, 0.2109375, 0.3359375, 0.3828125, 0.3359375, 0.2421875, 0.1484375, 0.1484375, 0.1875, 0.203125, 0.1953125, 0.1640625, 0.1015625, 0.0703125, 0.1015625, 0.2265625, 0.3828125, 0.4296875, 0.390625, 0.34375, 0.3046875, 0.3359375, 0.3203125, 0.171875, 0.015625, 1.9609375, 0.0078125, 0.0234375, 0.015625, 0.0078125, 0.015625, 0.015625, 0.015625, 0.03125, 0.015625, 1.9921875, 0.015625, 0.15625, 0.3203125, 0.3671875, 0.328125, 0.3203125, 0.328125, 0.3203125, 0.328125, 0.3828125, 0.46875, 0.4765625, 0.46875, 0.5078125, 0.4765625, 0.2578125, 0.0, 1.9375, 1.9765625, 1.9453125, 1.9609375, 0.15625, 0.3984375, 0.4453125, 0.40625, 0.421875, 0.40625, 0.2109375, 1.984375, 1.921875, 1.9609375, 1.9609375, 1.953125, 1.9609375, 1.9921875, 0.0078125, 0.0, 1.9765625, 1.984375, 0.0703125, 0.1640625, 0.1796875, 0.1640625, 0.21875, 0.2890625, 0.2890625, 0.28125, 0.2890625, 0.28125, 0.140625, 1.984375, 1.9140625, 1.953125, 0.0078125, 0.0625, 0.078125, 0.046875, 0.03125, 0.03125, 0.09375, 0.1484375, 0.171875, 0.1484375, 0.1640625, 0.1484375, 0.0859375, 1.9921875, 1.9765625, 1.984375, 1.9609375, 1.953125, 0.0703125, 0.1875, 0.21875, 0.1875, 0.2265625, 0.1953125, 0.0, 1.75, 1.6796875, 1.7265625, 1.7109375, 1.71875, 1.796875, 1.8828125, 1.9140625, 1.8828125, 1.8671875, 1.8671875, 1.9296875, 1.9921875, 0.0078125, 1.984375, 1.9921875, 1.9765625, 1.90625, 1.828125, 1.7890625, 1.8125, 1.8203125, 1.8125, 1.71875, 1.6328125, 1.59375, 1.6171875, 1.5859375, 1.59375, 1.6953125, 1.8359375, 1.859375, 1.84375, 1.828125, 1.84375, 1.8046875, 1.75, 1.7421875, 1.7421875, 1.7265625, 1.734375, 1.8203125, 1.9453125, 1.96875, 1.9609375, 1.9375, 1.953125, 1.953125, 1.9765625, 1.9765625, 1.9765625, 1.984375, 1.984375, 1.921875, 1.8671875, 1.8359375, 1.859375, 1.8828125, 1.8671875, 1.78125, 1.65625, 1.625, 1.6484375, 1.671875, 1.65625, 1.640625, 1.6015625, 1.6015625, 1.609375, 1.6015625, 1.609375, 1.640625, 1.6953125, 1.6875, 1.6875, 1.796875, 1.9140625, 1.96875, 1.953125, 1.9296875, 1.953125, 1.984375, 0.0234375, 0.0703125, 0.046875, 1.9609375, 1.84375, 1.8125, 1.84375, 1.859375, 1.859375, 1.8125, 1.765625, 1.7421875, 1.765625, 1.7734375, 1.78125, 1.765625, 1.765625, 1.7578125, 1.78125, 1.7890625, 1.7890625, 1.765625, 1.7890625, 1.9375, 0.1484375, 0.2109375, 0.1875, 0.1796875, 0.1953125, 0.171875, 0.140625, 0.125, 0.1484375, 0.1796875, 0.1796875, 0.03125, 1.84375, 1.765625, 1.7578125, 1.734375, 1.734375, 1.8984375, 0.109375, 0.203125, 0.1640625, 0.03125, 1.9140625, 1.8671875, 1.8984375, 1.890625, 1.8671875, 1.8359375, 1.859375, 1.9296875, 0.03125, 0.0234375, 1.96875, 1.9609375, 1.96875, 1.9765625, 1.953125, 1.9453125, 1.9609375, 1.9921875, 0.0390625, 0.046875, 0.046875, 0.09375, 0.1484375, 0.1875, 0.1796875, 0.1640625, 0.15625, 0.109375, 0.1328125, 0.2421875, 0.3671875, 0.3203125, 0.1640625, 0.109375, 0.140625, 0.1875, 0.234375, 0.25, 0.25, 0.25, 0.25, 0.2421875, 0.21875, 0.203125, 0.21875, 0.234375, 0.21875, 0.1875, 0.1328125, 0.1171875, 0.1171875, 0.1328125, 0.125, 0.1015625, 0.1171875, 0.21875, 0.3671875, 0.421875, 0.3984375, 0.3671875, 0.3828125, 0.40625, 0.4375, 0.4375, 0.4296875, 0.421875, 0.421875, 0.453125, 0.4296875, 0.3046875, 0.1171875, 0.0234375, 0.0546875, 0.1953125, 0.34375, 0.4140625, 0.375, 0.328125, 0.2734375, 0.25, 0.2578125, 0.28125, 0.3359375, 0.359375, 0.3515625, 0.2578125, 0.1640625, 0.125, 0.1640625, 0.171875, 0.171875, 0.1640625, 0.171875, 0.1328125, 0.0859375, 0.0703125, 0.078125, 0.09375, 0.0859375, 0.0, 1.90625, 1.859375, 1.875, 1.8671875, 1.8671875, 1.8828125, 1.9140625, 1.921875, 1.8984375, 1.90625, 1.8984375, 1.8671875, 1.8515625, 0.015625, 0.21875, 0.3046875, 0.2578125, 0.2578125, 0.25, 0.1328125, 1.9453125, 1.8828125, 1.8984375, 1.9140625, 1.890625, 1.9296875, 1.984375, 0.0, 0.0, 1.96875, 1.953125, 1.9296875, 1.9296875, 1.9296875, 1.921875, 1.890625, 1.8359375, 1.828125, 1.828125, 1.8359375, 1.8125, 1.8203125, 1.828125, 1.828125, 1.828125, 1.78125, 1.78125, 1.890625, 0.0703125, 0.125, 0.1015625, 0.09375, 0.1015625, 0.0078125, 1.8515625, 1.796875, 1.8046875, 1.828125, 1.8125, 1.7890625, 1.78125, 1.84375, 1.96875, 0.0, 1.9921875, 1.984375, 1.9765625, 1.953125, 1.8984375, 1.8984375, 1.890625, 1.8359375, 1.734375, 1.6640625, 1.6328125, 1.59375, 1.5859375, 1.734375, 1.9375, 0.03125, 1.9921875, 1.9453125, 1.921875, 1.921875, 1.953125, 0.0, 1.9921875, 1.8671875, 1.6796875, 1.59375, 1.625, 1.703125, 1.8046875, 1.859375, 1.8515625, 1.7421875, 1.609375, 1.5390625, 1.5625, 1.609375, 1.65625, 1.6796875, 1.6796875, 1.640625, 1.6171875, 1.5859375, 1.5859375, 1.6796875, 1.7890625, 1.8671875, 1.8359375, 1.78125, 1.7109375, 1.6796875, 1.703125, 1.6953125, 1.703125, 1.71875, 1.7734375, 1.78125, 1.7890625, 1.796875, 1.8046875, 1.796875, 1.78125, 1.90625, 0.0234375, 1.9375, 1.6953125, 1.59375, 1.6328125, 1.6640625, 1.671875, 1.625, 1.6328125, 1.796875, 0.03125, 0.0, 1.78125, 1.6484375, 1.671875, 1.8125, 1.9609375, 0.0234375, 0.015625, 0.015625, 0.0625, 0.0859375, 0.0859375, 0.046875, 1.9765625, 1.953125, 1.9765625, 1.9609375, 1.9375, 1.9296875, 1.9375, 1.9296875, 1.8671875, 1.8515625, 1.859375, 1.921875, 1.9765625, 0.0078125, 1.984375, 0.0078125, 0.0390625, 0.078125, 0.0703125, 0.0546875, 0.0234375, 0.015625, 0.015625, 0.0390625, 0.03125, 0.03125, 0.0078125, 0.015625, 0.0234375, 0.015625, 0.0078125, 0.109375, 0.2578125, 0.3203125, 0.3125, 0.3203125, 0.3359375, 0.265625, 0.140625, 0.078125, 0.109375, 0.1328125, 0.1328125, 0.09375, 0.0234375, 0.0, 0.0078125, 0.0234375, 0.0234375, 0.078125, 0.15625, 0.1953125, 0.1953125, 0.1640625, 0.1796875, 0.2421875, 0.359375, 0.40625, 0.3984375, 0.3984375, 0.4140625, 0.3359375, 0.234375, 0.171875, 0.1953125, 0.2109375, 0.203125, 0.2265625, 0.2734375, 0.2890625, 0.2890625, 0.296875, 0.296875, 0.2421875, 0.1328125, 0.0703125, 0.078125, 0.125, 0.1953125, 0.265625, 0.3359375, 0.3671875, 0.3671875, 0.3046875, 0.2421875, 0.2265625, 0.234375, 0.1796875, 0.046875, 0.0, 0.0078125, 0.0, 0.0, 0.0390625, 0.125, 0.203125, 0.2734375, 0.3046875, 0.296875, 0.2421875, 0.1328125, 0.09375, 0.1015625, 0.109375, 0.1015625, 0.125, 0.1875, 0.2109375, 0.203125, 0.1875, 0.1796875, 0.203125, 0.21875, 0.2265625, 0.2109375, 0.265625, 0.3515625, 0.3984375, 0.3828125, 0.3984375, 0.3984375, 0.2734375, 0.0390625, 1.921875, 1.953125, 1.9453125, 1.9296875, 0.03125, 0.234375, 0.328125, 0.3046875, 0.265625, 0.2734375, 0.2734375, 0.296875, 0.3125, 0.3125, 0.21875, 0.0859375, 0.015625, 0.03125, 0.0390625, 0.015625, 0.0234375, 0.03125, 0.046875, 0.0390625, 0.0078125, 0.0078125, 0.0546875, 0.15625, 0.203125, 0.203125, 0.140625, 0.0703125, 0.0390625, 0.0390625, 0.0625, 0.0703125, 0.015625, 1.9453125, 1.90625, 1.90625, 1.9140625, 1.9140625, 1.8671875, 1.8125, 1.7734375, 1.765625, 1.78125, 1.7734375, 1.7421875, 1.71875, 1.8359375, 0.03125, 0.140625, 0.1015625, 0.0703125, 0.0625, 0.09375, 0.09375, 1.9609375, 1.7734375, 1.6328125, 1.625, 1.7890625, 1.96875, 1.96875, 1.78125, 1.6484375, 1.6640625, 1.703125, 1.75, 1.7421875, 1.734375, 1.7890625, 1.890625, 1.984375, 0.0, 0.0234375, 0.046875, 1.90625, 1.703125, 1.6484375, 1.7578125, 1.8515625, 1.828125, 1.8125, 1.796875, 1.8125, 1.8046875, 1.7578125, 1.6640625, 1.59375, 1.609375, 1.65625, 1.7265625, 1.7734375, 1.765625, 1.734375, 1.7109375, 1.6796875, 1.6796875, 1.7265625, 1.78125, 1.828125, 1.8203125, 1.7890625, 1.7421875, 1.71875, 1.7265625, 1.71875, 1.71875, 1.7421875, 1.8046875, 1.8203125, 1.8203125, 1.8203125, 1.8359375, 1.78125, 1.6796875, 1.609375, 1.625, 1.6328125, 1.6484375, 1.6484375, 1.640625, 1.6328125, 1.6015625, 1.6015625, 1.609375, 1.609375, 1.6171875, 1.6015625, 1.609375, 1.6484375, 1.7265625, 1.7734375, 1.765625, 1.7578125, 1.7578125, 1.7734375, 1.796875, 1.8125, 1.8125, 1.8125, 1.8203125, 1.828125, 1.8359375, 1.8203125, 1.796875, 1.7734375, 1.7890625, 1.78125, 1.78125, 1.8125, 1.8828125, 1.9140625, 1.921875, 1.921875, 1.921875, 1.9296875, 1.921875, 1.953125, 1.984375, 0.015625, 0.0390625, 1.9765625, 1.8828125, 1.7890625, 1.796875, 1.8984375, 0.0625, 0.171875, 0.171875, 0.109375, 0.046875, 1.9375, 1.8515625, 1.78125, 1.78125, 1.8515625, 1.9921875, 0.0859375, 0.0859375, 0.015625, 1.8984375, 1.8359375, 1.8359375, 1.8984375, 1.953125, 0.0078125, 0.015625, 1.953125, 1.8515625, 1.8984375, 0.0859375, 0.15625, 0.078125, 0.015625, 0.0546875, 0.03125, 1.9609375, 1.9296875, 1.96875, 1.9921875, 1.96875, 0.03125, 0.1328125, 0.2109375, 0.203125, 0.1796875, 0.140625, 0.140625, 0.1484375, 0.1171875, 0.0, 1.9453125, 1.953125, 1.9765625, 1.96875, 1.96875, 1.96875, 1.984375, 0.0, 0.015625, 0.015625, 0.015625, 0.0, 0.0546875, 0.1796875, 0.25, 0.2421875, 0.234375, 0.2265625, 0.25, 0.25, 0.21875, 0.125, 0.0625, 0.0546875, 0.1328125, 0.21875, 0.2890625, 0.28125, 0.25, 0.1953125, 0.125, 0.078125, 0.03125, 0.03125, 0.078125, 0.15625, 0.1796875, 0.1640625, 0.109375, 0.1015625, 0.1875, 0.3671875, 0.4140625, 0.3203125, 0.2265625, 0.2421875, 0.2734375, 0.3046875, 0.3125, 0.296875, 0.296875, 0.296875, 0.28125, 0.2109375, 0.1875, 0.1796875, 0.1953125, 0.1796875, 0.1875, 0.1875, 0.15625, 0.0859375, 0.0390625, 0.046875, 0.046875, 0.046875, 0.0390625, 0.0546875, 0.0546875, 0.046875, 0.0546875, 0.0546875, 0.0234375, 0.015625, 0.078125, 0.2109375, 0.3125, 0.2890625, 0.28125, 0.28125, 0.2421875, 0.1328125, 0.078125, 0.078125, 0.0859375, 0.1015625, 0.046875, 1.96875, 1.8984375, 1.8984375, 1.90625, 1.8984375, 1.8984375, 1.8828125, 1.8828125, 1.8828125, 1.890625, 1.8828125, 1.8671875, 1.8515625, 1.8984375, 0.0390625, 0.1171875, 0.109375, 0.0703125, 0.0859375, 0.0625, 0.046875, 0.0234375, 0.015625, 0.03125, 0.0390625, 0.0625, 0.0625, 0.03125, 1.9453125, 1.8984375, 1.890625, 1.8984375, 1.8671875, 1.859375, 1.84375, 1.84375, 1.828125, 1.8515625, 1.90625, 1.9375, 1.921875, 1.921875, 1.9296875, 1.953125, 1.96875, 1.8828125, 1.734375, 1.734375, 1.890625, 0.0234375, 0.0078125, 1.9921875, 0.0078125, 1.9453125, 1.78125, 1.671875, 1.65625, 1.7265625, 1.8046875, 1.8671875, 1.84375, 1.8203125, 1.8125, 1.828125, 1.890625, 1.921875, 1.9140625, 1.90625, 1.9140625, 1.9375, 1.953125, 1.8828125, 1.7265625, 1.640625, 1.6484375, 1.640625, 1.625, 1.6875, 1.8515625, 1.953125, 1.9609375, 1.9296875, 1.9296875, 1.9296875, 1.921875, 1.921875, 1.90625, 1.921875, 1.9296875, 1.8828125, 1.78125, 1.6953125, 1.7109375, 1.7109375, 1.7109375, 1.7421875, 1.828125, 1.875, 1.875, 1.8671875, 1.8828125, 1.8515625, 1.78125, 1.7109375, 1.6953125, 1.765625, 1.875, 1.9609375, 1.953125, 1.9453125, 1.9375, 1.953125, 1.9375, 1.9609375, 1.984375, 1.921875, 1.7578125, 1.65625, 1.65625, 1.6796875, 1.6328125, 1.6015625, 1.59375, 1.6171875, 1.6328125, 1.6484375, 1.640625, 1.65625, 1.671875, 1.6875, 1.6875, 1.703125, 1.7421875, 1.7734375, 1.7890625, 1.7890625, 1.7890625, 1.8046875, 1.828125, 1.8515625, 1.8671875, 1.8359375, 1.78125, 1.796875, 1.8984375, 0.0078125, 0.0234375, 1.9453125, 1.78125, 1.671875, 1.671875, 1.6953125, 1.671875, 1.7421875, 1.890625, 0.0, 0.0, 1.9765625, 1.984375, 1.9765625, 1.96875, 1.9453125, 1.9453125, 1.953125, 1.984375, 1.9921875, 0.0078125, 1.9921875, 0.0078125, 0.0234375, 0.078125, 0.09375, 0.09375, 0.09375, 0.1171875, 0.15625, 0.15625, 0.1328125, 0.109375, 0.0859375, 0.0703125, 0.09375, 0.109375, 0.1484375, 0.1875, 0.109375, 1.9609375, 1.859375, 1.9296875, 1.9921875, 1.9921875, 0.0078125, 0.0625, 0.0859375, 0.03125, 0.0, 0.015625, 0.0546875, 0.0546875, 0.046875, 0.0234375, 0.0, 0.015625, 0.0234375, 0.0234375, 0.03125, 0.0234375, 0.0390625, 0.109375, 0.15625, 0.140625, 0.1484375, 0.1640625, 0.1484375, 0.0546875, 1.9921875, 1.984375, 0.0078125, 0.0078125, 0.0078125, 1.984375, 0.046875, 0.1953125, 0.2890625, 0.296875, 0.265625, 0.28125, 0.28125, 0.2734375, 0.265625, 0.265625, 0.2890625, 0.296875, 0.2578125, 0.125, 0.0078125, 1.984375, 0.0703125, 0.2109375, 0.328125, 0.3203125, 0.3125, 0.328125, 0.2890625, 0.1796875, 0.0859375, 0.0859375, 0.1015625, 0.1015625, 0.1015625, 0.1484375, 0.1796875, 0.1953125, 0.171875, 0.1484375, 0.1015625, 0.09375, 0.1328125, 0.2578125, 0.3203125, 0.2890625, 0.2265625, 0.2109375, 0.25, 0.28125, 0.3203125, 0.3203125, 0.3046875, 0.265625, 0.25, 0.25, 0.234375, 0.15625, 0.1015625, 0.0859375, 0.1171875, 0.140625, 0.15625, 0.1328125, 0.1640625, 0.234375, 0.3046875, 0.3046875, 0.28125, 0.296875, 0.2578125, 0.1875, 0.1171875, 0.1171875, 0.125, 0.140625, 0.140625, 0.140625, 0.1328125, 0.140625, 0.1171875, 0.0859375, 0.0390625, 0.046875, 0.0234375, 0.0078125, 0.0390625, 0.1640625, 0.25, 0.2421875, 0.2265625, 0.2109375, 0.21875, 0.2265625, 0.1953125, 0.1640625, 0.125, 0.1171875, 0.125, 0.15625, 0.09375, 1.9609375, 1.8515625, 1.8515625, 1.8671875, 1.8671875, 1.84375, 1.8515625, 1.8515625, 1.84375, 1.84375, 1.84375, 1.8359375, 1.8046875, 1.859375, 1.9765625, 0.0859375, 0.078125, 0.0703125, 0.109375, 0.171875, 0.1953125, 0.125, 1.9296875, 1.765625, 1.7734375, 1.7890625, 1.765625, 1.796875, 1.96875, 0.109375, 0.1640625, 0.0625, 1.890625, 1.7421875, 1.734375, 1.7734375, 1.796875, 1.796875, 1.8046875, 1.7890625, 1.765625, 1.796875, 1.8671875, 1.9375, 1.9296875, 1.921875, 1.984375, 0.0234375, 0.03125, 0.0234375, 0.046875, 0.0078125, 1.8671875, 1.765625, 1.75, 1.78125, 1.7734375, 1.7734375, 1.828125, 1.8671875, 1.859375, 1.8515625, 1.84375, 1.8515625, 1.90625, 1.953125, 1.9765625, 1.9296875, 1.8515625, 1.828125, 1.90625, 0.0234375, 0.0546875, 1.96875, 1.796875, 1.6328125, 1.6171875, 1.6640625, 1.7421875, 1.828125, 1.875, 1.90625, 1.9140625, 1.8984375, 1.8515625, 1.78125, 1.703125, 1.6484375, 1.609375, 1.671875, 1.7734375, 1.8515625, 1.8359375, 1.7734375, 1.7578125, 1.7890625, 1.8828125, 1.953125, 1.9765625, 1.9609375, 1.9765625, 1.96875, 1.9296875, 1.875, 1.7734375, 1.71875, 1.7109375, 1.7265625, 1.6953125, 1.6796875, 1.6875, 1.7578125, 1.8671875, 1.9375, 1.953125, 1.9375, 1.96875, 0.0, 0.015625, 0.0, 1.90625, 1.828125, 1.765625, 1.75, 1.75, 1.765625, 1.765625, 1.7578125, 1.734375, 1.765625, 1.921875, 0.046875, 0.0703125, 0.0234375, 0.0078125, 0.0, 0.03125, 1.9921875, 1.84375, 1.734375, 1.7265625, 1.765625, 1.734375, 1.71875, 1.71875, 1.7265625, 1.7109375, 1.7421875, 1.890625, 0.0078125, 0.0390625, 0.015625, 0.0390625, 0.0078125, 1.9140625, 1.8125, 1.8046875, 1.828125, 1.8515625, 1.8359375, 1.8203125, 1.796875, 1.8046875, 1.8125, 1.8125, 1.8125, 1.796875, 1.828125, 1.8984375, 1.9765625, 1.984375, 1.9609375, 1.9765625, 1.96875, 1.921875, 1.8984375, 1.8984375, 1.8984375, 1.9140625, 1.9140625, 1.9140625, 1.8984375, 1.8984375, 1.90625, 1.9140625, 1.9140625, 1.9140625, 1.9140625, 1.953125, 1.9765625, 1.984375, 1.96875, 1.9765625, 1.9921875, 0.046875, 0.078125, 0.0859375, 0.0859375, 0.0859375, 0.09375, 0.078125, 0.0703125, 0.0703125, 0.078125, 0.0546875, 0.0859375, 0.1640625, 0.25, 0.2578125, 0.2578125, 0.265625, 0.25, 0.15625, 0.09375, 0.0703125, 0.09375, 0.09375, 0.109375, 0.1328125, 0.1640625, 0.171875, 0.1640625, 0.1796875, 0.1796875, 0.171875, 0.140625, 0.09375, 0.0703125, 0.046875, 0.0859375, 0.1875, 0.2734375, 0.28125, 0.28125, 0.296875, 0.3125, 0.328125, 0.3203125, 0.34375, 0.3046875, 0.1796875, 0.0625, 0.0234375, 0.078125, 0.203125, 0.296875, 0.3203125, 0.28125, 0.234375, 0.21875, 0.2421875, 0.2890625, 0.3046875, 0.28125, 0.1953125, 0.140625, 0.140625, 0.171875, 0.1484375, 0.125, 0.140625, 0.1171875, 0.0546875, 1.9921875, 0.015625, 0.046875, 0.0234375, 0.046875, 0.21875, 0.328125, 0.234375, 0.0859375, 0.0546875, 0.0859375, 0.1328125, 0.1640625, 0.15625, 0.15625, 0.1484375, 0.15625, 0.1328125, 0.109375, 0.109375, 0.109375, 0.1171875, 0.109375, 0.078125, 0.0546875, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.0625, 0.0546875, 0.0390625, 0.0546875, 0.171875, 0.2734375, 0.296875, 0.2734375, 0.28125, 0.265625, 0.1640625, 0.0703125, 0.0390625, 0.0625, 0.0625, 0.0625, 0.0390625, 0.0546875, 0.125, 0.203125, 0.2109375, 0.1875, 0.1875, 0.1875, 0.15625, 0.1171875, 0.1171875, 0.1171875, 0.1328125, 0.1015625, 0.0390625, 1.96875, 1.953125, 1.953125, 1.96875, 1.9453125, 1.921875, 1.890625, 1.890625, 1.8828125, 1.859375, 1.875, 0.0234375, 0.1484375, 0.1875, 0.1484375, 0.1484375, 0.1484375, 0.1328125, 0.1015625, 0.1015625, 0.09375, 0.0859375, 0.09375, 0.0859375, 0.078125, 0.1015625, 0.1171875, 0.1484375, 0.109375, 1.9765625, 1.859375, 1.8046875, 1.8515625, 1.9375, 1.984375, 1.890625, 1.796875, 1.796875, 1.8515625, 1.859375, 1.8359375, 1.78125, 1.7890625, 1.8671875, 1.953125, 1.9765625, 1.9453125, 1.875, 1.84375, 1.8515625, 1.890625, 1.8828125, 1.8828125, 1.8515625, 1.8828125, 1.9453125, 0.0390625, 0.0703125, 0.03125, 1.8671875, 1.7265625, 1.6875, 1.71875, 1.6953125, 1.7109375, 1.859375, 0.0078125, 0.0703125, 0.0, 1.8359375, 1.7265625, 1.796875, 1.9296875, 1.953125, 1.921875, 1.9453125, 1.96875, 1.984375, 1.96875, 1.9140625, 1.8515625, 1.8515625, 1.8515625, 1.84375, 1.8125, 1.8203125, 1.8125, 1.8203125, 1.8203125, 1.8203125, 1.8203125, 1.78125, 1.7578125, 1.75, 1.7578125, 1.7421875, 1.7578125, 1.7890625, 1.8359375, 1.84375, 1.8359375, 1.8203125, 1.828125, 1.859375, 1.8828125, 1.890625, 1.8828125, 1.8828125, 1.8828125, 1.890625, 1.8828125, 1.8671875, 1.828125, 1.8359375, 1.828125, 1.8359375, 1.8359375, 1.8359375, 1.84375, 1.8359375, 1.8125, 1.828125, 1.828125, 1.8046875, 1.828125, 1.921875, 0.015625, 0.0546875, 0.0234375, 0.0234375, 0.03125, 0.0390625, 0.0390625, 1.953125, 1.875, 1.859375, 1.8828125, 1.8203125, 1.7890625, 1.8203125, 1.8984375, 1.890625, 1.90625, 1.9609375, 0.046875, 0.0859375, 0.046875, 1.984375, 1.8984375, 1.8828125, 1.9140625, 1.9375, 1.9609375, 1.9765625, 1.96875, 1.875, 1.8203125, 1.84375, 1.9296875, 1.953125, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.953125, 1.9921875, 0.046875, 0.046875, 0.0546875, 0.0625, 0.046875, 0.015625, 1.9765625, 1.953125, 1.9765625, 1.9921875, 1.9921875, 1.90625, 1.8359375, 1.8046875, 1.8359375, 1.8359375, 1.8359375, 1.8359375, 1.828125, 1.8359375, 1.828125, 1.84375, 1.8359375, 1.8359375, 1.8359375, 1.8984375, 1.953125, 1.9765625, 1.96875, 1.96875, 1.9765625, 1.9609375, 1.9765625, 0.0234375, 0.0859375, 0.0859375, 0.0859375, 0.1015625, 0.109375, 0.0390625, 1.984375, 1.96875, 1.984375, 1.984375, 1.984375, 1.9765625, 1.9921875, 0.0234375, 0.0703125, 0.0703125, 0.0703125, 0.09375, 0.109375, 0.1328125, 0.1328125, 0.125, 0.125, 0.1875, 0.2421875, 0.265625, 0.265625, 0.28125, 0.2734375, 0.140625, 1.984375, 1.953125, 1.96875, 1.9609375, 1.9609375, 0.1015625, 0.234375, 0.2890625, 0.2578125, 0.234375, 0.25, 0.2578125, 0.2890625, 0.28125, 0.2890625, 0.2734375, 0.2890625, 0.3046875, 0.296875, 0.2109375, 0.1171875, 0.0859375, 0.109375, 0.109375, 0.109375, 0.125, 0.140625, 0.15625, 0.140625, 0.1328125, 0.1328125, 0.203125, 0.28125, 0.296875, 0.2890625, 0.28125, 0.2890625, 0.25, 0.1953125, 0.1875, 0.1875, 0.1953125, 0.1875, 0.203125, 0.1953125, 0.1484375, 0.0859375, 0.0703125, 0.078125, 0.1015625, 0.09375, 0.0546875, 0.0078125, 0.0078125, 0.0078125, 1.9921875, 1.9921875, 0.125, 0.2734375, 0.3125, 0.28125, 0.265625, 0.28125, 0.2734375, 0.2578125, 0.25, 0.25, 0.25, 0.2421875, 0.28125, 0.2578125, 0.140625, 1.984375, 1.953125, 1.96875, 1.96875, 1.9609375, 0.078125, 0.2109375, 0.2421875, 0.2265625, 0.21875, 0.21875, 0.1171875, 0.0078125, 1.9609375, 1.9765625, 0.0078125, 0.0234375, 0.03125, 0.015625, 0.0078125, 0.0078125, 0.0859375, 0.15625, 0.1796875, 0.15625, 0.1796875, 0.203125, 0.21875, 0.203125, 0.234375, 0.2109375, 0.1015625, 1.9453125, 1.8984375, 1.921875, 1.9921875, 0.046875, 0.078125, 0.0625, 0.046875, 0.0546875, 0.046875, 0.046875, 0.0390625, 0.0234375, 0.0390625, 0.03125, 1.9765625, 1.9140625, 1.8828125, 1.8984375, 1.8828125, 1.8828125, 1.9296875, 1.984375, 1.9921875, 1.9921875, 1.984375, 1.9921875, 1.96875, 1.9453125, 1.9296875, 1.9375, 1.921875, 1.921875, 1.9609375, 0.0078125, 1.9921875, 1.953125, 1.9140625, 1.9296875, 1.96875, 0.0078125, 1.9453125, 1.8671875, 1.828125, 1.8515625, 1.828125, 1.8125, 1.84375, 1.8984375, 1.90625, 1.8984375, 1.890625, 1.9140625, 1.8984375, 1.8671875, 1.859375, 1.8671875, 1.890625, 1.921875, 1.9296875, 1.9296875, 1.9140625, 1.921875, 1.9296875, 1.96875, 1.9921875, 1.96875, 1.90625, 1.8125, 1.796875, 1.8125, 1.7890625, 1.796875, 1.8828125, 1.9921875, 0.0390625, 0.0078125, 0.015625, 0.0, 1.9609375, 1.890625, 1.8671875, 1.875, 1.8828125, 1.8828125, 1.828125, 1.7578125, 1.71875, 1.7265625, 1.8046875, 1.8828125, 1.921875, 1.8984375, 1.9140625, 1.9140625, 1.8515625, 1.7578125, 1.7265625, 1.75, 1.78125, 1.8203125, 1.8359375, 1.8359375, 1.7890625, 1.71875, 1.7109375, 1.7109375, 1.7109375, 1.7109375, 1.7890625, 1.9140625, 1.953125, 1.9375, 1.8828125, 1.8515625, 1.828125, 1.84375, 1.8515625, 1.8515625, 1.8046875, 1.7578125, 1.7265625, 1.7421875, 1.7421875, 1.7421875, 1.75, 1.78125, 1.7734375, 1.765625, 1.828125, 1.890625, 1.9296875, 1.9140625, 1.90625, 1.921875, 1.9140625, 1.921875, 1.921875, 1.9140625, 1.9296875, 1.921875, 1.9140625, 1.875, 1.875, 1.8671875, 1.875, 1.8671875, 1.890625, 1.890625, 1.84375, 1.7578125, 1.734375, 1.7421875, 1.7578125, 1.75, 1.7734375, 1.78125, 1.7890625, 1.7890625, 1.7734375, 1.7890625, 1.8359375, 1.9140625, 1.953125, 1.953125, 1.8828125, 1.8359375, 1.84375, 1.9296875, 1.9609375, 1.9609375, 1.921875, 1.890625, 1.890625, 1.8828125, 1.859375, 1.8046875, 1.8359375, 1.890625, 1.9296875, 1.921875, 1.8984375, 1.890625, 1.8671875, 1.8828125, 1.9765625, 0.078125, 0.0859375, 0.0, 1.96875, 1.984375, 0.015625, 0.0234375, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.0078125, 1.9921875, 1.9375, 1.9140625, 1.8984375, 1.8984375, 1.8984375, 1.890625, 1.9765625, 0.078125, 0.1171875, 0.109375, 0.0546875, 0.0078125, 1.9296875, 1.890625, 1.875, 1.875, 1.8828125, 1.8828125, 1.953125, 0.0625, 0.1015625, 0.0859375, 0.0546875, 0.0546875, 0.0390625, 0.046875, 0.0625, 0.0859375, 0.0546875, 0.0, 1.984375, 1.984375, 1.984375, 1.96875, 1.984375, 0.046875, 0.0546875, 0.0546875, 0.0625, 0.0859375, 0.03125, 1.953125, 1.890625, 1.90625, 0.0, 0.1328125, 0.1796875, 0.15625, 0.1484375, 0.1484375, 0.15625, 0.15625, 0.1640625, 0.15625, 0.1640625, 0.1640625, 0.1796875, 0.1875, 0.1015625, 1.9921875, 1.9453125, 1.96875, 1.9609375, 1.96875, 0.0234375, 0.09375, 0.1171875, 0.109375, 0.09375, 0.109375, 0.1015625, 0.1015625, 0.078125, 0.09375, 0.109375, 0.1640625, 0.171875, 0.1875, 0.1953125, 0.2109375, 0.1328125, 0.0390625, 1.9765625, 1.984375, 0.0859375, 0.1953125, 0.25, 0.2265625, 0.2265625, 0.234375, 0.171875, 0.09375, 0.0859375, 0.15625, 0.1953125, 0.1953125, 0.140625, 0.09375, 0.0546875, 0.0546875, 0.125, 0.203125, 0.25, 0.2265625, 0.2265625, 0.2265625, 0.21875, 0.2265625, 0.2421875, 0.2421875, 0.171875, 0.046875, 0.0078125, 0.015625, 0.015625, 1.984375, 1.953125, 1.96875, 1.96875, 1.984375, 1.9765625, 1.984375, 1.9921875, 0.0078125, 0.0078125, 0.0, 0.0078125, 0.0234375, 0.046875, 0.0546875, 0.0546875, 0.0625, 0.0625, 0.0859375, 0.09375, 0.1015625, 0.046875, 0.015625, 0.03125, 0.125, 0.1796875, 0.1796875, 0.0859375, 1.96875, 1.890625, 1.90625, 1.9765625, 0.0859375, 0.125, 0.1171875, 0.078125, 0.0703125, 0.0625, 0.0546875, 0.0625, 0.046875, 0.0625, 0.078125, 0.078125, 0.078125, 0.0703125, 0.078125, 0.078125, 0.109375, 0.109375, 0.1171875, 0.1015625, 0.1015625, 0.1171875, 0.1328125, 0.1484375, 0.140625, 0.140625, 0.1328125, 0.125, 0.078125, 0.0703125, 0.078125, 0.078125, 0.078125, 0.0703125, 0.0703125, 0.0546875, 0.046875, 0.0625, 0.078125, 0.0859375, 0.078125, 0.09375, 0.0859375, 0.0234375, 1.90625, 1.859375, 1.875, 1.875, 1.875, 1.890625, 1.9453125, 1.953125, 1.9609375, 1.9375, 1.9453125, 1.953125, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.96875, 1.9296875, 1.90625, 1.921875, 1.9140625, 1.921875, 1.9296875, 1.9296875, 1.9375, 1.921875, 1.9296875, 1.9296875, 1.921875, 1.890625, 1.8828125, 1.875, 1.875, 1.8671875, 1.8984375, 1.9453125, 1.96875, 1.953125, 1.953125, 1.9453125, 1.9609375, 1.9609375, 1.921875, 1.8515625, 1.8046875, 1.8203125, 1.8046875, 1.8046875, 1.859375, 1.96875, 0.0078125, 0.0078125, 1.984375, 1.9921875, 1.9921875, 0.0, 1.9921875, 1.9765625, 1.9765625, 1.9765625, 1.984375, 1.96875, 1.9921875, 1.984375, 1.9375, 1.828125, 1.7890625, 1.7890625, 1.796875, 1.7890625, 1.84375, 1.953125, 0.0, 1.984375, 1.9765625, 1.9921875, 1.9375, 1.859375, 1.8125, 1.828125, 1.8359375, 1.8359375, 1.8359375, 1.8203125, 1.84375, 1.859375, 1.890625, 1.890625, 1.859375, 1.828125, 1.8671875, 1.953125, 1.9921875, 1.9921875, 1.953125, 1.9296875, 1.9296875, 1.9765625, 1.9765625, 1.953125, 1.9453125, 1.953125, 1.921875, 1.8671875, 1.84375, 1.8828125, 1.8828125, 1.875, 1.9140625, 1.984375, 1.9765625, 1.921875, 1.875, 1.890625, 1.8984375, 1.8984375, 1.8984375, 1.90625, 1.90625, 1.8984375, 1.90625, 1.90625, 1.8984375, 1.8671875, 1.859375, 1.859375, 1.8515625, 1.8515625, 1.890625, 1.984375, 0.0234375, 0.0234375, 0.0078125, 0.0078125, 0.015625, 0.0234375, 0.0, 1.984375, 1.9765625, 1.9921875, 1.9375, 1.84375, 1.796875, 1.8046875, 1.8203125, 1.8125, 1.8125, 1.8203125, 1.828125, 1.828125, 1.8203125, 1.8046875, 1.8671875, 1.953125, 0.0, 0.0, 1.9765625, 1.984375, 0.0078125, 0.0625, 0.078125, 0.0859375, 0.09375, 0.109375, 0.0234375, 1.8828125, 1.796875, 1.8203125, 1.828125, 1.8046875, 1.890625, 0.0234375, 0.1015625, 0.0859375, 0.09375, 0.1015625, 0.0390625, 1.8984375, 1.84375, 1.859375, 1.875, 1.8671875, 1.8671875, 1.8984375, 1.90625, 1.9140625, 1.8984375, 1.90625, 1.9296875, 1.9921875, 0.015625, 0.0234375, 0.0078125, 0.015625, 0.03125, 0.0859375, 0.109375, 0.1015625, 0.109375, 0.1171875, 0.0625, 1.984375, 1.921875, 1.9375, 1.9375, 1.9453125, 1.9609375, 0.0078125, 0.03125, 0.0234375, 0.015625, 0.015625, 0.046875, 0.078125, 0.1015625, 0.09375, 0.1015625, 0.109375, 0.0859375, 0.0390625, 0.0078125, 0.015625, 0.0078125, 0.0, 0.046875, 0.1171875, 0.1640625, 0.15625, 0.1640625, 0.1796875, 0.1171875, 1.984375, 1.9140625, 1.9140625, 1.9453125, 1.9375, 1.9375, 1.9375, 1.96875, 0.0234375, 0.0546875, 0.046875, 0.0546875, 0.1015625, 0.1015625, 0.0625, 0.046875, 0.046875, 0.0234375, 1.953125, 1.96875, 0.046875, 0.09375, 0.09375, 0.0546875, 0.0390625, 0.0625, 0.1171875, 0.1640625, 0.15625, 0.1640625, 0.1796875, 0.1640625, 0.1484375, 0.09375, 0.015625, 1.9921875, 1.9921875, 0.0, 1.96875, 1.96875, 1.96875, 1.9765625, 1.96875, 1.984375, 0.0, 0.0234375, 0.015625, 0.015625, 0.0, 0.046875, 0.1171875, 0.15625, 0.15625, 0.140625, 0.140625, 0.15625, 0.171875, 0.1875, 0.1796875, 0.1953125, 0.1953125, 0.1640625, 0.1015625, 0.0625, 0.0703125, 0.0625, 0.0234375, 0.0078125, 0.0, 0.0, 1.9765625, 0.0390625, 0.1484375, 0.1953125, 0.171875, 0.1484375, 0.1640625, 0.125, 0.015625, 1.96875, 1.96875, 1.96875, 1.9296875, 1.9765625, 0.0859375, 0.15625, 0.1640625, 0.1015625, 0.03125, 1.9765625, 1.984375, 1.9765625, 1.96875, 1.9375, 1.9453125, 1.96875, 0.015625, 0.0546875, 0.0546875, 0.0234375, 0.0, 1.984375, 1.9765625, 1.984375, 1.96875, 1.96875, 1.96875, 1.96875, 0.0, 0.0078125, 0.0078125, 0.0078125, 0.0390625, 0.0546875, 0.0625, 0.046875, 0.0390625, 0.03125, 0.0390625, 0.0234375, 0.03125, 0.046875, 0.109375, 0.140625, 0.140625, 0.1328125, 0.1484375, 0.109375, 0.046875, 0.0078125, 0.0078125, 0.0234375, 0.0078125, 0.015625, 0.0390625, 0.0546875, 0.0546875, 0.046875, 0.0546875, 0.0390625, 0.03125, 0.015625, 0.015625, 0.015625, 0.03125, 0.0078125, 1.9765625, 1.953125, 1.9609375, 1.96875, 1.96875, 1.9609375, 1.9453125, 1.9765625, 0.0625, 0.1015625, 0.1015625, 0.078125, 0.0859375, 0.0859375, 0.109375, 0.109375, 0.109375, 0.09375, 0.1015625, 0.09375, 0.09375, 0.1015625, 0.109375, 0.0625, 1.953125, 1.9375, 0.015625, 0.1015625, 0.09375, 0.0625, 0.03125, 0.03125, 0.0546875, 0.0859375, 0.078125, 0.0546875, 1.984375, 1.96875, 1.9765625, 1.984375, 1.984375, 1.96875, 1.96875, 1.9296875, 1.8828125, 1.8359375, 1.8515625, 1.8515625, 1.8515625, 1.921875, 0.015625, 0.1015625, 0.1015625, 0.0546875, 1.96875, 1.90625, 1.8984375, 1.921875, 1.953125, 1.9609375, 1.9453125, 1.9296875, 1.9375, 1.9296875, 1.9140625, 1.890625, 1.8984375, 1.890625, 1.875, 1.9296875, 0.015625, 0.09375, 0.1015625, 0.0390625, 1.9609375, 1.9296875, 0.0, 0.046875, 0.046875, 0.0234375, 0.015625, 1.96875, 1.9296875, 1.890625, 1.90625, 1.890625, 1.8515625, 1.8828125, 1.984375, 0.0703125, 0.078125, 0.0390625, 0.015625, 0.0078125, 0.03125, 0.046875, 0.0703125, 0.015625, 1.9296875, 1.859375, 1.8515625, 1.8984375, 1.9375, 1.9765625, 1.9765625, 1.96875, 1.984375, 1.9453125, 1.8828125, 1.828125, 1.8359375, 1.84375, 1.84375, 1.84375, 1.8671875, 1.875, 1.8828125, 1.875, 1.8828125, 1.8671875, 1.859375, 1.84375, 1.8359375, 1.84375, 1.828125, 1.8515625, 1.921875, 1.9609375, 1.96875, 1.9375, 1.90625, 1.875, 1.875, 1.8828125, 1.9140625, 1.9140625, 1.921875, 1.921875, 1.9140625, 1.921875, 1.921875, 1.9296875, 1.921875, 1.9375, 0.0, 0.046875, 0.0703125, 0.015625, 1.8984375, 1.828125, 1.8203125, 1.8515625, 1.8515625, 1.84375, 1.8359375, 1.84375, 1.8515625, 1.8359375, 1.828125, 1.859375, 1.96875, 0.046875, 0.03125, 0.03125, 0.0390625, 0.0078125, 1.90625, 1.8515625, 1.8515625, 1.8671875, 1.875, 1.8671875, 1.8515625, 1.8828125, 1.953125, 0.0078125, 0.0, 1.9921875, 1.984375, 0.0, 0.015625, 0.015625, 0.0234375, 0.0234375, 0.0390625, 0.015625, 1.9921875, 1.9609375, 1.96875, 1.9765625, 1.96875, 1.96875, 1.953125, 1.9375, 1.9453125, 1.9453125, 1.9609375, 1.9375, 1.921875, 1.8984375, 1.890625, 1.90625, 1.9140625, 1.90625, 1.90625, 1.9140625, 1.953125, 1.9765625, 1.96875, 1.96875, 1.96875, 1.96875, 0.0, 0.0078125, 0.015625, 0.015625, 0.015625, 0.0078125, 1.984375, 1.9765625, 1.9765625, 1.9921875, 1.984375, 1.984375, 1.984375, 1.984375, 1.9765625, 1.9609375, 1.9609375, 1.96875, 1.953125, 1.9921875, 0.0546875, 0.1171875, 0.1171875, 0.09375, 0.0234375, 1.9921875, 1.9921875, 1.9921875, 1.953125, 1.9296875, 1.9140625, 1.9453125, 1.9765625, 0.0078125, 1.9921875, 0.015625, 0.0546875, 0.1171875, 0.1171875, 0.09375, 0.03125, 0.0, 1.9921875, 0.0078125, 1.9921875, 0.0, 0.0234375, 0.03125, 0.046875, 0.0390625, 0.0546875, 0.0390625, 1.9765625, 1.9375, 1.9453125, 1.9453125, 1.953125, 1.953125, 0.0, 0.015625, 0.03125, 0.0078125, 0.015625, 0.0234375, 0.0625, 0.0859375, 0.09375, 0.078125, 0.09375, 0.078125, 0.0546875, 0.015625, 0.0234375, 0.03125, 0.046875, 0.0234375, 1.96875, 1.9140625, 1.921875, 1.921875, 1.9296875, 1.9296875, 1.921875, 1.9296875, 1.921875, 1.9296875, 1.921875, 1.9453125, 1.984375, 0.015625, 0.015625, 0.0078125, 0.0078125, 0.0078125, 0.0546875, 0.078125, 0.09375, 0.0625, 0.0390625, 0.0, 0.0078125, 0.0078125, 0.0078125, 0.015625, 0.03125, 0.0546875, 0.0546875, 0.0546875, 0.046875, 0.0546875, 0.0625, 0.078125, 0.0703125, 0.078125, 0.125, 0.1484375, 0.15625, 0.1484375, 0.171875, 0.1328125, 0.046875, 1.96875, 1.9375, 1.9921875, 0.0859375, 0.1484375, 0.171875, 0.15625, 0.171875, 0.1484375, 0.09375, 0.0390625, 0.0546875, 0.0546875, 0.046875, 0.0625, 0.109375, 0.1484375, 0.1171875, 0.0625, 0.0390625, 0.03125, 0.03125, 0.0234375, 1.9765625, 1.9921875, 0.0703125, 0.15625, 0.1640625, 0.1328125, 0.140625, 0.140625, 0.1484375, 0.140625, 0.140625, 0.140625, 0.125, 0.140625, 0.15625, 0.125, 0.0390625, 1.953125, 1.953125, 1.96875, 1.9765625, 1.9609375, 1.953125, 1.9765625, 0.0703125, 0.1328125, 0.140625, 0.1171875, 0.1171875, 0.1015625, 0.03125, 1.9609375, 1.96875, 1.984375, 1.9765625, 1.9765625, 1.96875, 1.984375, 1.9921875, 0.015625, 0.0078125, 0.0078125, 1.9921875, 0.0078125, 0.0625, 0.09375, 0.1015625, 0.0859375, 0.09375, 0.0859375, 0.09375, 0.1015625, 0.109375, 0.140625, 0.1484375, 0.125, 0.03125, 1.9609375, 1.9296875, 1.96875, 0.015625, 0.0390625, 0.046875, 0.03125, 0.046875, 0.03125, 1.9765625, 1.9609375, 1.984375, 0.0234375, 0.03125, 0.0078125, 1.9921875, 1.9921875, 0.015625, 0.046875, 0.0625, 0.03125, 0.0078125, 1.9921875, 0.015625, 0.0390625, 0.046875, 0.03125, 0.03125, 0.03125, 0.046875, 0.03125, 1.9765625, 1.9453125, 1.9296875, 1.9453125, 1.9453125, 1.9453125, 1.9296875, 1.9140625, 1.921875, 1.9140625, 1.9140625, 1.9140625, 1.953125, 1.96875, 1.9765625, 1.96875, 1.9609375, 1.96875, 1.9609375, 1.96875, 1.96875, 1.9921875, 1.984375, 1.984375, 1.953125, 1.953125, 1.96875, 0.0078125, 0.0, 0.0078125, 0.0078125, 0.03125, 0.0390625, 0.0078125, 1.96875, 1.9140625, 1.90625, 1.9296875, 0.0078125, 0.0703125, 0.078125, 0.0546875, 0.0, 1.9765625, 1.984375, 1.96875, 1.921875, 1.890625, 1.9453125, 0.0078125, 0.0234375, 0.0, 1.9375, 1.890625, 1.8828125, 1.890625, 1.9296875, 1.9375, 1.9140625, 1.8671875, 1.8359375, 1.875, 1.953125, 0.015625, 1.984375, 1.9453125, 1.9453125, 1.9375, 1.9140625, 1.8671875, 1.8671875, 1.875, 1.8984375, 1.90625, 1.890625, 1.890625, 1.9375, 1.9765625, 1.9921875, 1.9765625, 1.9765625, 1.9765625, 1.9765625, 1.9765625, 1.9765625, 1.9765625, 1.953125, 1.953125, 1.953125, 1.9453125, 1.890625, 1.8359375, 1.8359375, 1.8359375, 1.84375, 1.8359375, 1.859375, 1.875, 1.859375, 1.875, 1.90625, 1.953125, 1.9609375, 1.9453125, 1.9609375, 1.9453125, 1.9140625, 1.8671875, 1.875, 1.875, 1.875, 1.875, 1.921875, 1.9453125, 1.9609375, 1.953125, 1.953125, 1.953125, 1.9296875, 1.90625, 1.8984375, 1.8984375, 1.9140625, 1.8984375, 1.875, 1.8515625, 1.84375, 1.8515625, 1.84375, 1.859375, 1.8828125, 1.921875, 1.921875, 1.921875, 1.9140625, 1.921875, 1.8984375, 1.8984375, 1.8828125, 1.8984375, 1.890625, 1.8984375, 1.875, 1.8984375, 1.953125, 0.0234375, 0.03125, 0.015625, 0.0234375, 0.015625, 1.984375, 1.9453125, 1.9453125, 1.9453125, 1.96875, 1.9765625, 1.984375, 1.96875, 1.9765625, 1.96875, 1.9765625, 1.9609375, 1.96875, 1.96875, 1.96875, 1.96875, 1.9453125, 1.9296875, 1.921875, 1.921875, 1.9375, 1.921875, 1.90625, 1.8828125, 1.8828125, 1.8828125, 1.890625, 1.890625, 1.8984375, 1.890625, 1.8828125, 1.890625, 1.953125, 0.0, 0.0234375, 1.9921875, 1.96875, 1.9296875, 1.9375, 1.9296875, 1.90625, 1.8671875, 1.859375, 1.8828125, 1.875, 1.8828125, 1.859375, 1.8828125, 1.9296875, 1.9921875, 1.9921875, 1.984375, 1.96875, 1.953125, 1.9609375, 1.953125, 1.96875, 1.9609375, 1.984375, 1.9765625, 1.9921875, 1.9765625, 1.9921875, 1.984375, 1.9609375, 1.9375, 1.9296875, 1.9453125, 1.9296875, 1.9296875, 1.921875, 1.9296875, 1.9140625, 1.9296875, 1.953125, 1.96875, 1.9765625, 1.96875, 1.9765625, 1.96875, 1.984375, 1.9765625, 1.984375, 1.9765625, 0.0, 1.9765625, 1.9453125, 1.8984375, 1.890625, 1.8984375, 1.890625, 1.8984375, 1.96875, 0.0390625, 0.046875, 0.0390625, 0.0234375, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.0390625, 0.0625, 0.046875, 1.9765625, 1.921875, 1.8984375, 1.9140625, 1.9609375, 1.984375, 0.0, 0.0, 0.0078125, 0.0390625, 0.03125, 0.0390625, 0.046875, 0.046875, 1.9921875, 1.9375, 1.9140625, 1.9296875, 0.0078125, 0.0703125, 0.078125, 0.0703125, 0.0703125, 0.0703125, 0.0234375, 1.984375, 0.0, 0.046875, 0.0546875, 0.046875, 0.0234375, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 1.984375, 0.0390625, 0.078125, 0.1015625, 0.0859375, 0.078125, 0.0859375, 0.078125, 0.09375, 0.109375, 0.09375, 0.0390625, 1.9609375, 1.953125, 1.9609375, 1.9765625, 1.9609375, 1.953125, 1.9296875, 1.9375, 1.9375, 1.9453125, 1.9453125, 1.953125, 1.953125, 1.953125, 1.953125, 1.9453125, 1.953125, 1.953125, 1.96875, 1.9765625, 1.9765625, 1.9765625, 1.9765625, 1.984375, 0.0078125, 0.0078125, 0.0, 0.0078125, 0.0, 0.0, 0.0, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.0234375, 0.046875, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.03125, 0.0, 1.9921875, 1.9921875, 0.046875, 0.078125, 0.09375, 0.078125, 0.09375, 0.09375, 0.0234375, 1.96875, 1.9375, 1.953125, 0.015625, 0.0703125, 0.0859375, 0.078125, 0.0546875, 0.0546875, 0.0390625, 0.0546875, 0.0546875, 0.0703125, 0.0859375, 0.0859375, 0.09375, 0.0859375, 0.109375, 0.125, 0.1015625, 0.0859375, 0.0859375, 0.078125, 0.078125, 0.0703125, 0.1015625, 0.1015625, 0.0546875, 1.9765625, 1.9609375, 1.96875, 0.0078125, 0.0234375, 0.03125, 0.03125, 0.03125, 0.0625, 0.0546875, 0.0625, 0.0625, 0.0625, 0.0390625, 0.03125, 0.015625, 0.03125, 0.0234375, 0.0390625, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.0234375, 0.0078125, 0.0078125, 0.0078125, 0.0078125, 0.015625, 0.0234375, 0.0625, 0.0703125, 0.0625, 0.03125, 1.984375, 1.9609375, 1.96875, 0.03125, 0.09375, 0.109375, 0.09375, 0.0859375, 0.078125, 0.09375, 0.09375, 0.03125, 1.984375, 1.96875, 1.96875, 1.96875, 1.96875, 0.0234375, 0.078125, 0.109375, 0.09375, 0.046875, 0.0, 1.9765625, 1.9921875, 0.015625, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.03125, 0.0234375, 0.015625, 0.0078125, 0.0078125, 0.0, 1.9921875, 1.984375, 0.03125, 0.078125, 0.0859375, 0.0703125, 0.078125, 0.0703125, 0.0625, 0.046875, 0.03125, 0.046875, 0.0390625, 0.046875, 0.046875, 0.0703125, 0.0703125, 0.0703125, 0.0625, 0.0703125, 0.0546875, 0.046875, 0.0390625, 0.046875, 0.046875, 0.046875, 0.015625, 1.9921875, 1.984375, 1.9765625, 1.984375, 1.984375, 1.9921875, 0.0, 0.0, 1.9921875, 0.0234375, 0.0625, 0.078125, 0.0625, 0.03125, 0.0078125, 0.0, 1.9921875, 0.0078125, 0.0, 0.0, 1.9921875, 1.984375, 1.9765625, 1.953125, 1.96875, 0.0, 0.0546875, 0.046875, 0.03125, 0.0234375, 0.03125, 1.9765625, 1.9296875, 1.8984375, 1.921875, 1.9296875, 1.9140625, 1.9140625, 1.90625, 1.9609375, 0.015625, 0.046875, 0.0234375, 0.0234375, 0.015625, 0.046875, 0.0703125, 0.0859375, 0.078125, 0.0859375, 0.078125, 0.0078125, 1.9140625, 1.8984375, 1.9140625, 1.8984375, 1.90625, 1.9609375, 0.0546875, 0.078125, 0.0625, 1.984375, 1.921875, 1.890625, 1.9140625, 1.9140625, 1.90625, 1.9140625, 1.90625, 1.921875, 1.9296875, 1.9296875, 1.921875, 1.921875, 1.921875, 1.9140625, 1.9140625, 1.9453125, 1.984375, 0.0, 1.9921875, 1.9765625, 1.984375, 0.0078125, 0.0234375, 0.046875, 0.03125, 0.03125, 0.0234375, 0.0390625, 0.0234375, 1.9921875, 1.9296875, 1.9140625, 1.9296875, 1.9296875, 1.9296875, 1.921875, 1.921875, 1.9453125, 1.9609375, 1.9765625, 1.953125, 1.9609375, 1.9609375, 1.9765625, 0.0, 0.0, 0.0078125, 1.9921875, 0.0, 0.0, 0.0078125, 1.984375, 1.953125, 1.953125, 1.9453125, 1.9453125, 1.9453125, 1.984375, 0.0234375, 0.0390625, 0.03125, 0.0390625, 0.03125, 1.9765625, 1.890625, 1.8515625, 1.875, 1.875, 1.8671875, 1.90625, 1.9375, 1.9453125, 1.9453125, 1.9296875, 1.9453125, 1.953125, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 1.9765625, 1.9453125, 1.9453125, 1.9375, 1.921875, 1.8828125, 1.8671875, 1.875, 1.9140625, 1.953125, 1.96875, 1.96875, 1.9453125, 1.9375, 1.921875, 1.9296875, 1.96875, 0.0, 0.0234375, 0.0078125, 0.015625, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.0078125, 1.9765625, 1.9765625, 1.9765625, 1.9765625, 1.984375, 1.9453125, 1.921875, 1.8984375, 1.9140625, 1.9140625, 1.90625, 1.90625, 1.8828125, 1.8828125, 1.8828125, 1.8828125, 1.8828125, 1.8984375, 1.9140625, 1.90625, 1.9140625, 1.90625, 1.90625, 1.9453125, 1.984375, 0.0078125, 0.0, 1.984375, 1.9921875, 0.0, 0.015625, 0.015625, 0.0234375, 0.0234375, 0.03125, 0.0, 1.9609375, 1.9453125, 1.953125, 1.9609375, 1.953125, 1.9375, 1.921875, 1.90625, 1.9140625, 1.921875, 1.90625, 1.9140625, 1.90625, 1.8984375, 1.90625, 1.9453125, 0.015625, 0.046875, 0.03125, 0.03125, 0.015625, 0.03125, 0.03125, 1.9765625, 1.9140625, 1.8828125, 1.8984375, 1.8984375, 1.890625, 1.8828125, 1.890625, 1.875, 1.890625, 1.9296875, 0.0, 0.0234375, 0.0234375, 1.96875, 1.9296875, 1.9140625, 1.9140625, 1.9140625, 1.890625, 1.921875, 1.953125, 1.9609375, 1.9296875, 1.9296875, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.9453125, 1.953125, 1.9453125, 1.96875, 1.9765625, 1.9765625, 1.9609375, 1.9921875, 0.0390625, 0.0703125, 0.0546875, 0.03125, 1.984375, 1.9609375, 1.9765625, 1.984375, 0.0, 0.0078125, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.0078125, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.984375, 1.9609375, 1.9609375, 1.953125, 1.96875, 1.953125, 1.953125, 1.953125, 1.984375, 0.0390625, 0.046875, 0.046875, 0.0390625, 0.0625, 0.0546875, 0.0625, 0.0625, 0.0703125, 0.015625, 1.96875, 1.9765625, 0.046875, 0.078125, 0.0625, 0.046875, 0.0234375, 0.0234375, 0.015625, 0.046875, 0.0546875, 0.046875, 0.015625, 1.984375, 0.0, 0.0078125, 0.0078125, 0.0078125, 1.9921875, 0.0, 1.9921875, 1.9765625, 1.9375, 1.9140625, 1.9453125, 0.0, 0.078125, 0.109375, 0.109375, 0.046875, 0.0, 1.9765625, 0.015625, 0.0234375, 0.0234375, 0.0078125, 0.0078125, 0.0, 1.984375, 1.984375, 1.9921875, 1.9765625, 1.984375, 0.03125, 0.0859375, 0.1171875, 0.1015625, 0.109375, 0.1015625, 0.078125, 0.0234375, 0.015625, 0.015625, 0.0078125, 0.015625, 0.03125, 0.078125, 0.09375, 0.078125, 0.09375, 0.0859375, 0.09375, 0.078125, 0.0625, 0.0703125, 0.078125, 0.0703125, 0.0546875, 0.0078125, 0.0, 1.9921875, 0.0078125, 0.0, 0.0, 1.9765625, 1.9765625, 1.9765625, 1.96875, 1.9609375, 0.015625, 0.0859375, 0.1328125, 0.109375, 0.1015625, 0.09375, 0.0859375, 0.0859375, 0.09375, 0.0859375, 0.1015625, 0.1171875, 0.1171875, 0.1171875, 0.125, 0.1328125, 0.078125, 0.015625, 0.0, 0.0546875, 0.078125, 0.0859375, 0.03125, 1.9921875, 1.96875, 0.0, 0.015625, 0.0078125, 0.0, 1.9765625, 0.0078125, 0.046875, 0.0703125, 0.0703125, 0.046875, 0.0234375, 0.0234375, 0.0390625, 0.0390625, 0.046875, 0.046875, 0.046875, 0.03125, 0.0390625, 0.0546875, 0.109375, 0.140625, 0.1328125, 0.078125, 0.0, 1.9609375, 1.9765625, 1.984375, 1.9765625, 1.96875, 1.96875, 0.0078125, 0.0859375, 0.125, 0.1328125, 0.078125, 0.0078125, 1.96875, 1.96875, 0.015625, 0.0625, 0.0859375, 0.0859375, 0.0703125, 0.078125, 0.078125, 0.09375, 0.1015625, 0.09375, 0.09375, 0.1015625, 0.078125, 0.0546875, 0.03125, 0.046875, 0.0390625, 0.046875, 0.03125, 0.03125, 0.015625, 0.03125, 0.03125, 0.03125, 0.0234375, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 1.9765625, 0.0, 0.0234375, 0.0234375, 0.03125, 0.0234375, 0.015625, 0.0390625, 0.0390625, 0.0546875, 0.0546875, 0.0546875, 0.0546875, 0.0546875, 0.046875, 0.046875, 0.0234375, 0.015625, 0.015625, 0.0234375, 0.015625, 0.015625, 0.0078125, 0.015625, 0.015625, 0.0, 0.0, 0.03125, 0.0859375, 0.0859375, 0.03125, 0.015625, 0.0234375, 0.0078125, 1.96875, 1.9765625, 0.0, 0.0234375, 0.015625, 0.03125, 0.0859375, 0.078125, 0.0234375, 0.0, 1.9921875, 0.015625, 0.0234375, 0.015625, 1.96875, 1.9453125, 1.9375, 1.96875, 1.984375, 0.0234375, 0.03125, 0.0546875, 0.046875, 0.0390625, 0.0078125, 1.9765625, 1.9296875, 1.90625, 1.9140625, 1.921875, 1.921875, 1.921875, 1.9140625, 1.921875, 1.9609375, 1.9765625, 0.015625, 0.0234375, 0.03125, 0.0, 1.96875, 1.953125, 1.984375, 0.0, 1.9921875, 0.0, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.0078125, 0.0, 0.0234375, 0.0546875, 0.078125, 0.0546875, 0.0703125, 0.0703125, 0.03125, 1.953125, 1.90625, 1.921875, 1.9296875, 1.9375, 1.921875, 1.9140625, 1.953125, 0.0234375, 0.046875, 0.046875, 0.03125, 0.046875, 0.0625, 0.0546875, 0.03125, 1.984375, 1.953125, 1.96875, 1.96875, 1.9609375, 1.984375, 0.015625, 0.046875, 0.0390625, 0.0234375, 0.0, 1.9765625, 1.984375, 1.9765625, 1.96875, 1.9453125, 1.9140625, 1.90625, 1.890625, 1.9375, 0.015625, 0.046875, 0.046875, 0.0234375, 0.03125, 0.015625, 0.0234375, 0.015625, 0.015625, 0.03125, 0.0234375, 0.0, 1.921875, 1.890625, 1.8984375, 1.890625, 1.8984375, 1.921875, 1.9921875, 0.0234375, 0.0078125, 0.015625, 0.015625, 1.9921875, 1.9296875, 1.90625, 1.8984375, 1.9140625, 1.90625, 1.8984375, 1.890625, 1.90625, 1.9140625, 1.9296875, 1.921875, 1.921875, 1.9140625, 1.9453125, 1.984375, 1.9921875, 0.0, 1.984375, 1.9921875, 1.9921875, 0.0234375, 0.0234375, 0.03125, 0.0234375, 0.0390625, 0.0, 1.9375, 1.890625, 1.8828125, 1.921875, 1.9453125, 1.96875, 1.96875, 1.9609375, 1.9609375, 1.9609375, 1.96875, 1.9375, 1.9140625, 1.8984375, 1.9375, 1.953125, 1.9609375, 1.9375, 1.9375, 1.9140625, 1.921875, 1.9296875, 1.9609375, 1.96875, 1.9765625, 1.9609375, 1.9375, 1.9453125, 1.953125, 1.9765625, 1.96875, 1.9609375, 1.921875, 1.8984375, 1.8828125, 1.8828125, 1.8828125, 1.8984375, 1.921875, 1.9453125, 1.9375, 1.9453125, 1.9296875, 1.9296875, 1.9296875, 1.9296875, 1.9453125, 1.953125, 1.9765625, 1.9765625, 1.9921875, 1.953125, 1.921875, 1.921875, 1.9765625, 0.0234375, 0.0078125, 0.015625, 0.015625, 1.9921875, 1.96875, 1.9375, 1.953125, 1.9453125, 1.953125, 1.9609375, 1.953125, 1.9453125, 1.8984375, 1.8828125, 1.875, 1.8828125, 1.875, 1.90625, 1.953125, 1.9765625, 1.984375, 1.9765625, 1.984375, 1.96875, 1.9140625, 1.8984375, 1.890625, 1.90625, 1.890625, 1.9140625, 1.9296875, 1.953125, 1.9453125, 1.9375, 1.90625, 1.8671875, 1.875, 1.8984375, 1.9609375, 0.0, 0.0, 1.9921875, 0.0, 1.984375, 1.96875, 1.953125, 1.96875, 1.9453125, 1.9296875, 1.8984375, 1.90625, 1.90625, 1.9140625, 1.90625, 1.9296875, 1.921875, 1.9140625, 1.9375, 1.96875, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.984375, 0.0, 1.9921875, 1.9921875, 1.9765625, 1.984375, 1.984375, 1.96875, 1.9140625, 1.8984375, 1.8984375, 1.9140625, 1.9140625, 1.9140625, 1.9140625, 1.9296875, 1.921875, 1.9296875, 1.921875, 1.9296875, 1.9765625, 1.9921875, 0.0, 1.984375, 0.0, 0.0, 0.0078125, 1.9921875, 1.953125, 1.9375, 1.9375, 1.9453125, 1.9296875, 1.953125, 1.9921875, 0.0078125, 0.0, 0.0078125, 0.0, 0.0, 1.96875, 1.96875, 1.9609375, 1.9765625, 1.96875, 1.96875, 1.9375, 1.9375, 1.9375, 1.9296875, 1.9375, 1.9375, 1.96875, 1.984375, 1.9765625, 1.9765625, 1.984375, 1.9765625, 1.9765625, 1.96875, 1.9609375, 1.96875, 1.953125, 1.984375, 0.0390625, 0.078125, 0.0703125, 0.0703125, 0.0703125, 0.0625, 0.0390625, 0.0078125, 0.015625, 0.015625, 0.0234375, 0.015625, 0.03125, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.046875, 0.0390625, 0.03125, 0.0078125, 0.015625, 0.015625, 0.0234375, 0.0078125, 1.9921875, 1.96875, 1.9765625, 1.9765625, 1.984375, 1.96875, 1.96875, 1.9921875, 0.03125, 0.0859375, 0.0859375, 0.0703125, 0.03125, 0.015625, 0.015625, 0.015625, 1.9765625, 1.96875, 1.9609375, 1.96875, 1.96875, 1.9609375, 1.9765625, 1.9609375, 1.9609375, 1.984375, 0.0234375, 0.0625, 0.0546875, 0.0546875, 0.046875, 0.0546875, 0.046875, 0.0390625, 0.046875, 0.0390625, 0.0390625, 0.0390625, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.046875, 0.0390625, 0.0234375, 0.0078125, 0.0, 0.015625, 0.0078125, 0.015625, 0.0078125, 1.9921875, 0.0, 0.0, 0.03125, 0.0390625, 0.0390625, 0.03125, 0.0390625, 0.0390625, 0.0546875, 0.0390625, 0.0, 1.96875, 1.9609375, 1.984375, 0.046875, 0.078125, 0.0859375, 0.0703125, 0.078125, 0.0703125, 0.0703125, 0.0859375, 0.0859375, 0.0703125, 0.0, 1.96875, 1.9765625, 1.96875, 1.9765625, 1.9765625, 0.015625, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.0390625, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.0390625, 0.046875, 0.0625, 0.0546875, 0.0625, 0.0546875, 0.0625, 0.0703125, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.0859375, 0.078125, 0.0703125, 0.0078125, 1.984375, 1.984375, 1.9765625, 1.9765625, 0.0, 0.046875, 0.09375, 0.0859375, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.078125, 0.0703125, 0.0859375, 0.0703125, 0.0234375, 0.0078125, 0.0078125, 0.0078125, 0.0078125, 0.0078125, 0.046875, 0.0625, 0.0546875, 0.0625, 0.0703125, 0.046875, 0.03125, 0.0, 0.0078125, 0.0, 0.0, 0.0078125, 0.0546875, 0.078125, 0.0859375, 0.078125, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.0859375, 0.0859375, 0.0703125, 0.0078125, 1.96875, 1.9609375, 1.984375, 1.984375, 1.9765625, 1.953125, 1.9453125, 1.9375, 1.9453125, 1.9375, 1.9453125, 1.953125, 1.953125, 1.953125, 1.953125, 1.9453125, 1.953125, 1.9609375, 1.96875, 1.96875, 1.9609375, 1.96875, 1.9609375, 1.9765625, 1.96875, 1.9765625, 1.9765625, 1.96875, 1.9765625, 1.9765625, 1.9921875, 1.984375, 1.984375, 1.9765625, 1.9921875, 1.9921875, 0.0078125, 0.0, 0.0078125, 1.9921875, 1.9921875, 1.96875, 1.9609375, 1.953125, 1.9609375, 1.9453125, 1.96875, 0.0, 0.03125, 0.03125, 0.0234375, 0.0390625, 0.015625, 1.96875, 1.9140625, 1.9140625, 1.9375, 1.9765625, 0.015625, 0.015625, 0.015625, 0.015625, 0.015625, 0.0, 1.9921875, 1.984375, 0.0, 1.9921875, 0.0078125, 0.0078125, 1.9921875, 0.0, 0.0078125, 0.015625, 0.03125, 0.015625, 0.0234375, 0.03125, 0.03125, 0.0390625, 0.03125, 0.0234375, 0.0, 0.0078125, 0.015625, 0.015625, 0.015625, 0.015625, 0.0078125, 0.015625, 0.015625, 0.03125, 0.015625, 1.953125, 1.9140625, 1.8984375, 1.921875, 1.9375, 1.953125, 1.953125, 1.953125, 1.953125, 1.953125, 1.9765625, 1.984375, 1.9921875, 1.984375, 1.9765625, 1.9765625, 1.953125, 1.9453125, 1.9453125, 1.9375, 1.9453125, 1.9375, 1.953125, 1.9453125, 1.953125, 1.953125, 1.9453125, 1.953125, 1.9375, 1.9375, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.96875, 1.9765625, 1.9375, 1.90625, 1.890625, 1.921875, 1.9609375, 0.0078125, 0.0078125, 1.9921875, 1.9921875, 1.9921875, 1.9375, 1.8984375, 1.875, 1.9140625, 1.96875, 1.9921875, 1.96875, 1.9140625, 1.921875, 1.921875, 1.9453125, 1.9453125, 1.9609375, 1.9453125, 1.9453125, 1.9375, 1.9296875, 1.9375, 1.921875, 1.9296875, 1.96875, 1.9921875, 0.0, 1.984375, 0.0, 1.984375, 1.984375, 1.9609375, 1.96875, 1.96875, 1.9609375, 1.96875, 1.9765625, 0.0, 0.0, 1.984375, 1.984375, 1.9609375, 1.96875, 1.9609375, 1.96875, 1.96875, 1.9765625, 1.9609375, 1.9453125, 1.921875, 1.921875, 1.9296875, 1.921875, 1.9375, 1.9375, 1.953125, 1.9453125, 1.953125, 1.9453125, 1.953125, 1.9375, 1.9609375, 1.984375, 0.015625, 0.015625, 0.0078125, 0.015625, 0.0, 1.984375, 1.953125, 1.9609375, 1.953125, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.9609375, 1.9609375, 1.953125, 1.9375, 1.9296875, 1.9453125, 1.984375, 0.0078125, 0.0234375, 0.0078125, 1.984375, 1.984375, 1.9921875, 1.9765625, 1.9375, 1.890625, 1.8984375, 1.90625, 1.8984375, 1.90625, 1.8984375, 1.9140625, 1.90625, 1.9140625, 1.90625, 1.9140625, 1.8984375, 1.9140625, 1.953125, 1.984375, 0.0, 1.9765625, 1.984375, 1.9921875, 0.015625, 0.0234375, 0.03125, 0.0234375, 0.046875, 0.03125, 1.9609375, 1.90625, 1.890625, 1.9140625, 1.9140625, 1.9140625, 1.890625, 1.9140625, 1.96875, 0.03125, 0.03125, 0.03125, 0.03125, 0.0234375, 1.96875, 1.90625, 1.9140625, 1.9140625, 1.921875, 1.921875, 1.921875, 1.9375, 1.9296875, 1.9375, 1.9296875, 1.9453125, 1.9609375, 1.9921875, 1.984375, 1.984375, 1.984375, 1.984375, 0.0078125, 0.0234375, 0.03125, 0.0234375, 0.0234375, 0.03125, 0.03125, 0.0234375, 1.9765625, 1.953125, 1.9375, 1.953125, 1.9609375, 1.953125, 1.984375, 0.0, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 0.015625, 0.0234375, 0.0390625, 0.03125, 0.0, 1.984375, 1.96875, 1.9921875, 0.015625, 0.0546875, 0.078125, 0.0546875, 0.0, 1.9375, 1.9296875, 1.9453125, 1.96875, 0.0, 1.9921875, 0.0, 0.0078125, 0.03125, 0.03125, 0.03125, 0.0, 1.9921875, 1.9921875, 1.9921875, 1.9609375, 1.9453125, 1.9375, 1.9453125, 1.9296875, 1.9453125, 1.96875, 0.0078125, 0.0, 0.0078125, 0.0, 0.0078125, 1.984375, 1.984375, 1.9765625, 1.9765625, 1.984375, 1.984375, 0.0234375, 0.046875, 0.0625, 0.046875, 0.0546875, 0.046875, 0.0625, 0.0625, 0.0546875, 0.0625, 0.0625, 0.0546875, 0.046875, 0.0234375, 0.0234375, 0.0234375, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.0, 1.984375, 1.9765625, 1.984375, 1.984375, 1.984375, 1.96875, 1.96875, 1.9609375, 1.96875, 1.96875, 1.9609375, 1.96875, 1.9609375, 1.9765625, 1.984375, 1.9921875, 1.984375, 1.96875, 1.9921875, 0.015625, 0.0625, 0.0625, 0.0625, 0.0546875, 0.0625, 0.0625, 0.078125, 0.0703125, 0.078125, 0.078125, 0.078125, 0.0390625, 0.0234375, 0.0078125, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.0, 1.9921875, 1.984375, 0.0, 1.984375, 1.984375, 1.9765625, 0.0, 0.046875, 0.0859375, 0.09375, 0.0859375, 0.0703125, 0.0703125, 0.078125, 0.0625, 0.0234375, 1.96875, 1.96875, 1.9765625, 1.96875, 1.96875, 1.9609375, 1.96875, 1.953125, 1.96875, 0.015625, 0.0546875, 0.078125, 0.0546875, 0.0234375, 1.9921875, 1.984375, 0.0, 1.984375, 1.9765625, 1.96875, 1.9765625, 0.0, 0.015625, 0.03125, 0.0234375, 0.0, 0.0, 1.9921875, 1.9921875, 1.9921875, 1.984375, 1.9765625, 1.984375, 1.9921875, 0.0078125, 0.0, 0.0078125, 1.9921875, 0.0078125, 0.0078125, 0.03125, 0.03125, 0.0234375, 0.03125, 0.03125, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.015625, 0.046875, 0.0703125, 0.0859375, 0.0703125, 0.078125, 0.078125, 0.046875, 0.0234375, 0.0078125, 0.0234375, 0.015625, 0.0234375, 0.0234375, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.03125, 0.0078125, 0.0078125, 0.0, 0.0, 0.0078125, 0.0, 0.0, 0.0, 0.0390625, 0.0625, 0.078125, 0.0625, 0.0703125, 0.0625, 0.078125, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.0703125, 0.078125, 0.078125, 0.0703125, 0.0703125, 0.0703125, 0.0703125, 0.0703125, 0.0234375, 1.9921875, 1.9765625, 1.984375, 1.984375, 1.984375, 1.984375, 1.9765625, 0.0234375, 0.0546875, 0.0703125, 0.0546875, 0.046875, 0.03125, 0.03125, 0.03125, 0.015625, 0.03125, 0.03125, 0.0546875, 0.0546875, 0.0546875, 0.0234375, 0.0078125, 0.0, 0.0, 0.0078125, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.0078125, 0.0, 1.9921875, 0.0078125, 0.0, 0.0, 1.984375, 1.9453125, 1.953125, 1.953125, 1.9453125, 1.9453125, 1.953125, 1.953125, 1.96875, 1.953125, 1.9609375, 1.9609375, 1.953125, 1.953125, 0.0078125, 0.046875, 0.0546875, 0.0546875, 0.0546875, 0.0546875, 0.015625, 1.984375, 1.9609375, 1.9765625, 1.984375, 1.9921875, 0.0, 1.9921875, 0.0, 1.9921875, 1.9921875, 1.9765625, 1.9921875, 1.984375, 1.9765625, 1.96875, 1.96875, 1.9609375, 1.96875, 1.96875, 1.96875, 1.96875, 1.953125, 1.96875, 0.0, 0.0546875, 0.0625, 0.0546875, 0.015625, 1.9921875, 1.9765625, 1.984375, 1.9765625, 1.984375, 0.0, 0.0390625, 0.0390625, 0.0390625, 0.0390625, 0.0390625, 0.0234375, 0.0234375, 0.015625, 0.015625, 0.0234375, 0.015625, 1.9921875, 1.96875, 1.9453125, 1.9609375, 1.9609375, 1.953125, 1.953125, 1.9375, 1.9453125, 1.9375, 1.9453125, 1.9453125, 1.9375, 1.9375, 1.984375, 0.0234375, 0.046875, 0.03125, 0.03125, 0.0390625, 0.0234375, 0.0234375, 0.0078125, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.0234375, 0.03125, 0.0234375, 0.0390625, 0.0234375, 0.0, 1.9609375, 1.9453125, 1.9453125, 1.953125, 1.9453125, 1.96875, 1.9921875, 0.0, 0.0, 0.0, 1.9921875, 1.96875, 1.921875, 1.921875, 1.9140625, 1.921875, 1.9140625, 1.9296875, 1.9375, 1.9453125, 1.9375, 1.9453125, 1.9375, 1.9375, 1.921875, 1.9296875, 1.921875, 1.921875, 1.921875, 1.953125, 1.984375, 1.984375, 1.9921875, 1.984375, 1.9921875, 1.96875, 1.953125, 1.9453125, 1.953125, 1.953125, 1.953125, 1.9453125, 1.9453125, 1.9453125, 1.9609375, 1.9609375, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.953125, 1.953125, 1.9609375, 1.9921875, 0.015625, 1.9765625, 1.921875, 1.8984375, 1.90625, 1.90625, 1.8984375, 1.9609375, 0.0, 1.9921875, 1.9296875, 1.890625, 1.9140625, 1.9453125, 1.984375, 0.0, 0.0, 0.0078125, 0.0078125, 1.9921875, 1.9765625, 1.9609375, 1.953125, 1.96875, 1.953125, 1.953125, 1.9296875, 1.9375, 1.9296875, 1.9375, 1.9296875, 1.9453125, 1.9609375, 1.9609375, 1.9609375, 1.9609375, 1.9765625, 1.9765625, 1.984375, 1.9609375, 1.9609375, 1.953125, 1.9609375, 1.9609375, 1.953125, 1.9609375, 1.9453125, 1.9453125, 1.9453125, 1.9765625, 0.0078125, 0.03125, 0.015625, 0.0, 1.96875, 1.953125, 1.9609375, 1.9453125, 1.9375, 1.921875, 1.9375, 1.9453125, 1.96875, 1.96875, 1.9609375, 1.9921875, 0.015625, 0.0234375, 0.0234375, 1.9921875, 1.9765625, 1.9609375, 1.9609375, 1.9765625, 1.9765625, 1.9921875, 1.9921875, 1.9609375, 1.9453125, 1.921875, 1.9375, 1.9453125, 1.96875, 1.9609375, 1.96875, 1.984375, 1.9921875, 0.0078125, 0.0, 1.9921875, 1.96875, 1.96875, 1.96875, 1.953125, 1.90625, 1.90625, 1.9140625, 1.90625, 1.9140625, 1.8984375, 1.9140625, 1.9296875, 1.9453125, 1.9609375, 1.953125, 1.9609375, 1.953125, 1.9765625, 1.984375, 0.0, 0.0, 1.9921875, 0.0, 1.9765625, 1.9609375, 1.9453125, 1.953125, 1.9453125, 1.953125, 1.953125, 1.9765625, 1.984375, 1.96875, 1.9765625, 1.96875, 1.984375, 1.9765625, 1.9921875, 1.984375, 1.984375, 1.9765625, 0.0078125, 0.03125, 0.0546875, 0.0390625, 0.0546875, 0.046875, 0.0078125, 1.9375, 1.9296875, 1.9296875, 1.9296875, 1.921875, 1.9765625, 0.0234375, 0.046875, 0.03125, 0.03125, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.0390625, 0.046875, 0.046875, 0.0625, 0.0546875, 0.03125, 1.984375, 1.9765625, 1.984375, 1.984375, 1.984375, 1.984375, 1.9921875, 1.9921875, 0.0, 1.984375, 1.9921875, 0.015625, 0.03125, 0.0546875, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.0390625, 0.03125, 0.0078125, 0.0078125, 0.015625, 0.0, 1.984375, 1.9609375, 1.9609375, 1.9375, 1.9453125, 1.9765625, 0.0390625, 0.0546875, 0.0390625, 0.0546875, 0.046875, 0.015625, 1.953125, 1.9296875, 1.9296875, 1.9765625, 0.03125, 0.046875, 0.046875, 0.0, 1.96875, 1.953125, 1.9765625, 1.9765625, 1.9921875, 1.9765625, 1.984375, 0.0, 0.03125, 0.0390625, 0.0390625, 0.0234375, 0.0390625, 0.0390625, 0.0546875, 0.046875, 0.0546875, 0.0546875, 0.0625, 0.0234375, 1.9765625, 1.9609375, 1.96875, 1.96875, 1.96875, 1.984375, 0.0078125, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.015625, 0.0078125, 0.0, 1.9765625, 1.9765625, 1.96875, 1.984375, 1.9765625, 1.9765625, 1.9765625, 1.9921875, 0.0, 0.015625, 0.0078125, 0.015625, 0.015625, 0.0, 0.0, 1.9921875, 1.9921875, 0.0, 0.0078125, 1.9921875, 0.0, 0.0078125, 0.0234375, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.015625, 1.984375, 1.984375, 1.984375, 1.9765625, 1.9765625, 1.9609375, 1.96875, 1.9609375, 1.96875, 1.9765625, 0.0, 0.0078125, 0.0078125, 0.0, 0.015625, 0.015625, 0.0234375, 0.0078125, 0.0078125, 1.9921875, 0.0, 0.0078125, 0.0234375, 0.0234375, 0.03125, 0.0234375, 0.0390625, 0.046875, 0.046875, 0.0234375, 0.0078125, 1.9765625, 1.9921875, 0.015625, 0.0625, 0.0859375, 0.0703125, 0.0546875, 0.03125, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.0078125, 1.96875, 1.9609375, 1.953125, 1.9921875, 0.015625, 0.0390625, 0.03125, 0.015625, 1.9765625, 1.9765625, 1.96875, 1.9765625, 1.96875, 1.984375, 1.9921875, 0.0078125, 0.0, 1.9921875, 1.96875, 1.9609375, 1.9609375, 1.984375, 0.03125, 0.0390625, 0.0390625, 0.03125, 0.015625, 0.0078125, 0.015625, 0.0078125, 1.9765625, 1.9765625, 1.96875, 1.984375, 1.984375, 1.9921875, 1.984375, 1.984375, 1.9765625, 0.0, 0.03125, 0.0390625, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.03125, 0.0390625, 0.03125, 0.03125, 0.0390625, 0.0234375, 0.0234375, 0.0078125, 0.0234375, 0.015625, 0.0234375, 0.0, 1.96875, 1.9609375, 1.953125, 1.9609375, 1.9609375, 1.9609375, 1.96875, 1.96875, 1.9765625, 1.9609375, 1.96875, 1.9765625, 0.015625, 0.015625, 0.0234375, 0.015625, 0.015625, 0.0234375, 0.015625, 0.0078125, 1.9765625, 1.9765625, 1.96875, 1.9765625, 1.96875, 1.9921875, 0.0078125, 0.0234375, 0.0234375, 0.015625, 0.0234375, 0.0078125, 0.0, 1.984375, 1.984375, 0.0, 1.9921875, 1.984375, 1.9609375, 1.9453125, 1.9609375, 1.96875, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 1.984375, 1.9765625, 1.96875, 1.9765625, 1.9765625, 0.0, 0.03125, 0.0625, 0.0546875, 0.0390625, 0.015625, 0.0, 0.0078125, 0.0078125, 0.015625, 0.015625, 0.015625, 0.0234375, 0.015625, 0.0, 0.015625, 0.0078125, 0.015625, 0.015625, 0.0078125, 0.0078125, 1.9921875, 0.0, 0.0, 1.9765625, 1.96875, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.9609375, 1.96875, 1.9765625, 1.9765625, 1.96875, 1.96875, 1.9765625, 0.015625, 0.03125, 0.03125, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.0234375, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.984375, 1.953125, 1.953125, 1.9453125, 1.953125, 1.9453125, 1.953125, 1.9375, 1.96875, 1.9921875, 0.015625, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0078125, 1.9921875, 1.9765625, 1.9609375, 1.9609375, 1.953125, 1.9609375, 1.9609375, 1.984375, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.9921875, 1.9765625, 1.9296875, 1.953125, 1.9921875, 0.03125, 0.0234375, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.0, 1.9453125, 1.9296875, 1.9296875, 1.9453125, 1.96875, 1.9765625, 1.984375, 1.96875, 1.9765625, 1.9765625, 0.0, 0.0078125, 0.0, 0.0, 0.0, 0.0078125, 0.0, 0.0078125, 1.9921875, 0.0078125, 0.0, 1.9921875, 1.9609375, 1.9296875, 1.9453125, 1.9375, 1.9453125, 1.9375, 1.9375, 1.9609375, 0.0, 0.03125, 0.015625, 0.0234375, 0.0234375, 0.015625, 0.0078125, 0.0, 1.9921875, 0.0078125, 0.0078125, 1.9921875, 1.96875, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.9609375, 1.9921875, 1.9921875, 0.0, 1.984375, 1.96875, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.9765625, 1.9921875, 0.015625, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.0, 0.015625, 0.015625, 0.0, 1.9453125, 1.9296875, 1.921875, 1.9375, 1.9296875, 1.9375, 1.9140625, 1.921875, 1.921875, 1.921875, 1.9140625, 1.921875, 1.921875, 1.9296875, 1.921875, 1.9296875, 1.921875, 1.9296875, 1.9375, 1.9375, 1.9375, 1.9375, 1.9296875, 1.9375, 1.9453125, 1.953125, 1.9453125, 1.953125, 1.953125, 1.96875, 1.9609375, 1.9765625, 1.96875, 1.96875, 1.9453125, 1.9375, 1.9375, 1.953125, 1.9765625, 0.0078125, 0.0, 1.9765625, 1.9296875, 1.9140625, 1.90625, 1.9296875, 1.9765625, 1.9921875, 1.984375, 1.984375, 1.9765625, 1.9609375, 1.96875, 1.9765625, 1.96875, 1.9765625, 1.96875, 1.984375, 1.984375, 0.0, 0.0, 0.015625, 0.0234375, 0.0078125, 0.0, 1.9921875, 1.984375, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 0.0, 0.015625, 0.015625, 0.0, 1.9453125, 1.9296875, 1.9375, 1.9375, 1.9296875, 1.9453125, 1.9453125, 1.96875, 1.96875, 1.9609375, 1.9609375, 1.96875, 1.96875, 1.984375, 1.984375, 1.9765625, 1.96875, 1.9765625, 1.9765625, 1.9765625, 1.9609375, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.9609375, 1.96875, 1.9609375, 1.9609375, 1.953125, 1.9453125, 1.9609375, 1.96875, 1.9765625, 1.9453125, 1.9296875, 1.9296875, 1.9609375, 0.0, 0.0078125, 0.015625, 0.0078125, 0.015625, 1.9921875, 1.9609375, 1.9375, 1.9375, 1.953125, 0.0, 0.0078125, 1.9765625, 1.953125, 1.9453125, 1.96875, 1.984375, 1.984375, 1.9921875, 1.984375, 1.9609375, 1.9765625, 0.0, 0.03125, 0.03125, 0.0078125, 0.0, 1.9921875, 0.015625, 0.015625, 0.0234375, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.0078125, 1.984375, 1.9765625, 1.9921875, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 0.0234375, 0.0234375, 0.03125, 0.03125, 0.03125, 0.0234375, 0.0, 1.9921875, 1.9921875, 0.0, 0.0, 1.9921875, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.9921875, 1.9765625, 1.9765625, 1.96875, 1.9765625, 1.96875, 1.9921875, 0.015625, 0.0390625, 0.015625, 0.0078125, 0.0078125, 0.0, 1.9609375, 1.9375, 1.9296875, 1.953125, 1.953125, 1.953125, 1.9375, 1.9609375, 1.9921875, 0.015625, 0.0078125, 0.015625, 0.0234375, 0.0546875, 0.0546875, 0.03125, 1.96875, 1.9296875, 1.9296875, 1.953125, 0.0234375, 0.046875, 0.0546875, 0.0390625, 0.0546875, 0.0234375, 1.9765625, 1.9375, 1.953125, 1.9609375, 1.9609375, 1.953125, 1.96875, 1.9609375, 1.9765625, 1.9609375, 1.96875, 1.96875, 0.0, 0.0078125, 0.015625, 0.0, 0.0078125, 0.015625, 0.0390625, 0.03125, 0.0078125, 1.984375, 1.9765625, 1.9921875, 1.9921875, 0.0078125, 0.0234375, 0.0390625, 0.046875, 0.03125, 0.0078125, 0.0, 0.03125, 0.0546875, 0.078125, 0.0390625, 0.0, 1.953125, 1.9609375, 1.9765625, 1.9921875, 0.0234375, 0.0234375, 0.0390625, 0.03125, 0.0390625, 0.015625, 0.0078125, 1.9765625, 1.96875, 1.953125, 1.9765625, 0.0, 0.015625, 0.0234375, 0.0, 0.0078125, 0.0078125, 0.0390625, 0.0625, 0.0546875, 0.0625, 0.0625, 0.0546875, 0.046875, 0.0234375, 0.0, 1.9765625, 1.984375, 1.9765625, 1.984375, 1.9765625, 1.96875, 1.9765625, 1.96875, 1.9765625, 1.96875, 1.984375, 1.9921875, 1.9921875, 0.0, 1.984375, 1.9921875, 0.0, 0.0234375, 0.0546875, 0.046875, 0.0546875, 0.0546875, 0.0546875, 0.0546875, 0.0703125, 0.0703125, 0.0625, 0.0625, 0.0546875, 0.0703125, 0.0546875, 0.0234375, 0.0078125, 0.0078125, 0.0078125, 0.015625, 0.0078125, 1.984375, 1.984375, 1.9765625, 1.9921875, 1.9765625, 1.984375, 1.9765625, 1.984375, 1.9765625, 1.984375, 1.9921875, 1.9765625, 1.9765625, 1.9921875, 0.0390625, 0.0625, 0.0703125, 0.0625, 0.0625, 0.0625, 0.0546875, 0.0625, 0.046875, 0.046875, 0.03125, 0.046875, 0.046875, 0.0390625, 1.9921875, 1.9609375, 1.96875, 1.96875, 1.96875, 1.96875, 1.9609375, 1.96875, 1.9609375, 1.9609375, 1.953125, 1.9609375, 1.953125, 1.96875, 0.0078125, 0.046875, 0.0390625, 0.0390625, 0.03125, 0.03125, 0.046875, 0.0234375, 0.0, 1.96875, 1.9765625, 1.9765625, 1.984375, 1.96875, 1.9765625, 1.9609375, 1.96875, 1.9609375, 1.96875, 1.9765625, 1.984375, 0.0078125, 0.0, 0.0078125, 1.9921875, 0.0078125, 0.0, 0.0, 1.984375, 1.984375, 1.984375, 1.984375, 1.9921875, 1.984375, 1.9765625, 1.9765625, 1.96875, 1.9765625, 1.96875, 1.984375, 1.9921875, 1.9921875, 0.0, 1.984375, 1.9921875, 1.9921875, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.0, 0.0078125, 1.9921875, 0.0078125, 0.0, 0.0, 1.9921875, 0.0078125, 0.03125, 0.046875, 0.046875, 0.046875, 0.0546875, 0.0390625, 0.015625, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 0.0078125, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.015625, 0.0, 0.0078125, 1.9921875, 0.0078125, 0.0078125, 1.9921875, 1.9921875, 1.96875, 1.9765625, 1.96875, 1.9765625, 1.9765625, 0.015625, 0.03125, 0.046875, 0.03125, 0.0390625, 0.03125, 0.046875, 0.046875, 0.0390625, 0.046875, 0.0390625, 0.046875, 0.03125, 0.0390625, 0.046875, 0.0234375, 1.9921875, 1.9609375, 1.96875, 1.9609375, 1.9765625, 1.9609375, 1.96875, 1.96875, 0.0078125, 0.03125, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.0078125, 0.0078125, 0.0234375, 0.03125, 0.03125, 0.03125, 0.03125, 0.0234375, 0.0, 1.984375, 1.984375, 1.9921875, 1.984375, 0.0, 1.9921875, 1.9921875, 1.984375, 1.984375, 1.9921875, 1.984375, 1.9609375, 1.9453125, 1.9453125, 1.9375, 1.9453125, 1.953125, 0.0078125, 0.0546875, 0.0546875, 0.0390625, 1.9921875, 1.9765625, 1.96875, 1.9765625, 1.9921875, 1.9921875, 0.0, 1.984375, 0.0, 1.984375, 1.9921875, 1.984375, 1.9765625, 1.984375, 1.984375, 1.984375, 1.9921875, 1.9765625, 1.96875, 1.9609375, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.9609375, 1.96875, 1.96875, 1.96875, 1.953125, 1.9765625, 0.0, 0.0390625, 0.046875, 0.0234375, 0.0, 1.96875, 1.96875, 1.984375, 0.0, 0.0234375, 0.0390625, 0.015625, 0.015625, 0.0, 1.9921875, 0.0078125, 0.0078125, 1.9921875, 1.984375, 1.9609375, 1.96875, 1.9609375, 1.9609375, 1.9453125, 1.9453125, 1.953125, 0.0078125, 0.03125, 0.046875, 0.0390625, 0.015625, 0.015625, 0.0, 0.015625, 0.0, 0.0078125, 0.0234375, 0.0234375, 0.03125, 0.0234375, 0.0390625, 0.015625, 1.984375, 1.953125, 1.9375, 1.9609375, 1.9765625, 0.0, 1.9921875, 0.0, 0.0, 1.9921875, 1.953125, 1.9375, 1.921875, 1.9375, 1.9453125, 1.9609375, 1.9609375, 1.9609375, 1.953125, 1.9609375, 1.9453125, 1.9453125, 1.9296875, 1.9453125, 1.96875, 1.984375, 1.9921875, 1.9765625, 1.96875, 1.9609375, 1.953125, 1.9609375, 1.9609375, 1.953125, 1.96875, 1.96875, 1.984375, 1.96875, 1.9765625, 1.9765625, 0.0, 0.015625, 0.03125, 0.015625, 1.9609375, 1.9375, 1.921875, 1.9375, 1.9453125, 1.9375, 1.9296875, 1.9375, 1.984375, 0.015625, 0.0390625, 0.0078125, 1.9765625, 1.9453125, 1.921875, 1.953125, 1.9765625, 0.0078125, 0.0078125, 0.015625, 0.0078125, 0.0078125, 0.0, 1.984375, 1.984375, 1.984375, 1.984375, 1.96875, 1.96875, 1.9453125, 1.953125, 1.9453125, 1.96875, 1.9765625, 1.984375, 1.9765625, 1.9921875, 1.9765625, 1.984375, 1.96875, 1.9765625, 1.9609375, 1.953125, 1.9765625, 1.9921875, 0.03125, 0.03125, 0.0234375, 0.0, 1.9765625, 1.96875, 1.9765625, 1.9609375, 1.953125, 1.953125, 1.9453125, 1.96875, 1.96875, 1.9765625, 1.9765625, 0.0, 0.0234375, 0.03125, 0.015625, 0.0, 1.96875, 1.9765625, 1.96875, 1.984375, 1.984375, 1.9921875, 1.984375, 1.9765625, 1.953125, 1.9609375, 1.953125, 1.9765625, 1.984375, 1.984375, 1.984375, 0.0, 0.0078125, 0.015625, 0.0078125, 1.9921875, 1.984375, 1.984375, 1.984375, 1.9609375, 1.9453125, 1.9453125, 1.9453125, 1.9375, 1.9375, 1.921875, 1.9375, 1.9609375, 1.9765625, 1.9765625, 1.96875, 1.9921875, 0.0, 1.9921875, 1.9609375, 1.96875, 1.9609375, 1.984375, 1.9765625, 1.984375, 1.984375, 1.984375, 1.9921875, 1.984375, 0.0, 0.0234375, 0.0390625, 1.984375, 1.9453125, 1.921875, 1.9453125, 1.984375, 0.03125, 0.0390625, 0.03125, 0.0234375, 0.03125, 0.03125, 0.0390625, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.046875, 0.0390625, 0.0, 1.984375, 1.984375, 1.9921875, 0.0, 1.984375, 0.0, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 1.984375, 0.0, 0.0078125, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.015625, 0.0078125, 0.0, 0.0, 0.0078125, 0.0, 1.9921875, 1.984375, 1.9765625, 1.984375, 1.984375, 1.984375, 1.9765625, 1.953125, 1.9609375, 1.953125, 1.953125, 1.9609375, 1.9921875, 0.0390625, 0.046875, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.046875, 0.03125, 0.0, 1.9453125, 1.9375, 1.9453125, 1.9921875, 0.03125, 0.03125, 0.03125, 0.0234375, 0.03125, 1.984375, 1.9609375, 1.953125, 1.953125, 1.9765625, 1.96875, 1.984375, 1.9765625, 1.96875, 1.9765625, 1.9921875, 0.0234375, 0.015625, 0.0234375, 0.0078125, 0.0234375, 0.0234375, 0.046875, 0.046875, 0.046875, 0.046875, 0.046875, 0.0, 1.9609375, 1.9453125, 1.9609375, 1.9609375, 1.9609375, 1.953125, 1.9609375, 1.9765625, 0.0, 0.0078125, 0.0, 0.0078125, 0.0078125, 0.0, 0.0, 0.0, 0.0078125, 0.0078125, 0.0078125, 1.9765625, 1.96875, 1.9609375, 1.96875, 1.96875, 1.9609375, 1.984375, 0.0, 0.0078125, 0.0078125, 0.0, 0.0078125, 0.0, 1.9765625, 1.984375, 1.984375, 1.9765625, 1.984375, 1.9921875, 0.015625, 0.0078125, 0.015625, 0.015625, 0.015625, 0.0, 0.0, 1.984375, 0.0, 1.9921875, 1.9921875, 0.0078125, 0.0078125, 0.015625, 0.015625, 0.015625, 0.0078125, 0.0, 1.96875, 1.9765625, 1.96875, 1.984375, 1.96875, 1.96875, 1.9609375, 1.9609375, 1.9609375, 1.9609375, 1.9609375, 1.9765625, 1.9921875, 0.0, 0.0, 0.0, 0.0, 0.0078125, 0.0, 0.0078125, 0.0078125, 1.9921875, 1.984375, 1.984375, 1.9921875, 0.0078125, 0.0078125, 0.015625, 0.0078125, 0.0078125, 0.0078125, 0.015625, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.0, 1.96875, 1.9765625, 1.9765625, 1.96875, 1.9765625, 0.0, 0.0390625, 0.0390625, 0.0390625, 0.0390625, 0.03125, 0.0390625, 0.03125, 0.0234375, 0.0, 0.0, 0.0078125, 0.0, 0.0078125, 1.9765625, 1.9609375, 1.9453125, 1.9609375, 1.9765625, 0.015625, 0.015625, 0.015625, 1.984375, 1.96875, 1.9609375, 1.96875, 1.9765625, 0.0, 1.9765625, 1.953125, 1.9453125, 1.9453125, 1.984375, 0.015625, 0.03125, 0.015625, 0.0078125, 1.9921875, 0.0, 1.9921875, 1.9765625, 1.953125, 1.96875, 1.96875, 1.9765625, 1.9765625, 1.984375, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.0078125, 0.0078125, 0.0078125, 1.9765625, 1.953125, 1.9375, 1.953125, 1.9609375, 1.953125, 1.9609375, 1.9609375, 1.984375, 1.9921875, 0.0078125, 0.0, 0.0078125, 0.0, 1.9921875, 1.96875, 1.96875, 1.9609375, 1.96875, 1.9609375, 1.9921875, 0.0078125, 0.015625, 0.0078125, 0.0078125, 0.0078125, 0.015625, 0.0078125, 0.0, 1.984375, 1.984375, 1.984375, 1.9921875, 1.9921875, 1.96875, 1.9609375, 1.953125, 1.9609375, 1.9765625, 1.9921875, 1.9921875, 0.0, 1.984375, 1.9921875, 1.9765625, 1.984375, 0.0078125, 0.046875, 0.0390625, 0.015625, 0.0078125, 0.015625, 0.015625, 0.0234375, 0.0234375, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.0234375, 0.015625, 0.0, 0.0, 0.0, 0.0078125, 0.0078125, 1.9921875, 1.9609375, 1.96875, 1.9609375, 1.9609375, 1.96875, 1.96875, 1.9765625, 1.984375, 1.9765625, 1.96875, 1.9765625, 1.9921875, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.015625, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.96875, 1.953125, 1.953125, 1.953125, 1.9453125, 1.953125, 1.9453125, 1.953125, 1.9453125, 1.953125, 1.9453125, 1.953125, 1.96875, 0.0078125, 0.0234375, 0.0078125, 0.015625, 0.0078125, 0.0078125, 0.0, 0.0, 0.0, 0.0078125, 0.0, 0.0078125, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.0, 1.9765625, 1.9765625, 1.96875, 1.984375, 1.9765625, 1.96875, 1.96875, 1.9609375, 1.96875, 1.9609375, 1.96875, 1.984375, 1.984375, 0.0, 0.0, 1.984375, 1.9921875, 0.0, 0.0, 0.0078125, 0.0078125, 1.9765625, 1.9609375, 1.9375, 1.953125, 1.9765625, 0.015625, 0.03125, 0.0234375, 0.015625, 0.0234375, 1.9921875, 1.953125, 1.9453125, 1.9453125, 1.9765625, 1.984375, 0.0, 1.9921875, 1.9921875, 1.984375, 0.0, 0.015625, 0.0078125, 0.015625, 0.0078125, 0.0234375, 0.015625, 0.0234375, 0.0, 1.9609375, 1.953125, 1.953125, 1.9921875, 0.015625, 0.0390625, 0.03125, 0.0234375, 0.03125, 0.0234375, 0.03125, 0.03125, 0.03125, 0.015625, 1.9921875, 1.984375, 1.984375, 1.9921875, 0.0078125, 0.0078125, 0.015625, 1.9921875, 1.9921875, 1.9765625, 1.984375, 0.0, 0.03125, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.0, 1.96875, 1.9609375, 1.9609375, 1.96875, 1.9453125, 1.953125, 1.953125, 1.953125, 1.9453125, 1.9609375, 1.953125, 1.9609375, 1.9609375, 1.9609375, 1.9765625, 1.9765625, 1.9765625, 1.9765625, 1.984375, 1.984375] \ No newline at end of file diff --git a/drums/drum4.wav b/drums/drum4.wav new file mode 100644 index 0000000..ccb8e82 Binary files /dev/null and b/drums/drum4.wav differ diff --git a/drums/drum5.txt b/drums/drum5.txt new file mode 100644 index 0000000..ad55cbb --- /dev/null +++ b/drums/drum5.txt @@ -0,0 +1 @@ +[0.0, 0.0078125, 0.015625, 0.015625, 0.0234375, 1.9921875, 1.9609375, 1.9296875, 1.9296875, 1.9921875, 0.03125, 1.9921875, 1.953125, 1.96875, 0.0390625, 0.046875, 1.9921875, 1.9375, 1.90625, 1.96875, 0.0546875, 0.046875, 0.015625, 0.03125, 0.0625, 0.0, 1.8828125, 1.859375, 1.8984375, 1.9765625, 0.015625, 1.984375, 1.9296875, 1.921875, 1.953125, 1.96875, 1.9609375, 0.015625, 0.0625, 0.0, 1.921875, 1.8984375, 1.9375, 1.8828125, 1.84375, 1.8984375, 0.0, 0.0703125, 0.046875, 1.9765625, 1.8984375, 1.859375, 1.875, 1.8203125, 1.7734375, 1.8359375, 1.9609375, 0.140625, 0.2265625, 0.1484375, 1.953125, 1.796875, 1.7890625, 1.9765625, 0.203125, 0.1875, 0.015625, 1.8671875, 1.8515625, 1.9375, 0.0078125, 1.9140625, 1.7890625, 1.9140625, 0.0859375, 1.9921875, 1.78125, 1.8046875, 1.9375, 1.9140625, 1.8515625, 1.890625, 0.0, 0.125, 0.140625, 0.0234375, 1.859375, 1.8046875, 1.84375, 1.890625, 1.921875, 1.9921875, 0.046875, 0.09375, 0.09375, 0.078125, 0.03125, 1.921875, 1.8203125, 1.8046875, 1.8515625, 1.9765625, 0.0546875, 0.03125, 1.984375, 0.09375, 0.21875, 0.171875, 0.0234375, 1.9921875, 1.9921875, 1.890625, 1.8125, 1.9921875, 0.203125, 0.125, 1.90625, 1.8828125, 0.015625, 0.1015625, 0.0625, 1.9296875, 1.7734375, 1.7578125, 1.859375, 0.0, 0.0859375, 0.015625, 1.8984375, 1.8671875, 1.9140625, 1.859375, 1.8046875, 1.8515625, 1.96875, 1.9765625, 1.9453125, 0.0546875, 0.1875, 0.2109375, 0.1328125, 0.1015625, 0.0859375, 1.921875, 1.8125, 1.921875, 0.1484375, 0.265625, 0.1953125, 0.0546875, 1.9296875, 1.9140625, 0.0078125, 0.046875, 0.0546875, 0.0625, 0.0234375, 1.9140625, 1.796875, 1.84375, 1.9375, 1.9140625, 1.78125, 1.7265625, 1.765625, 1.9296875, 0.078125, 0.0859375, 1.9921875, 1.9765625, 0.046875, 0.09375, 0.1328125, 0.1328125, 0.109375, 0.046875, 1.96875, 1.84375, 1.7734375, 1.828125, 1.96875, 0.0390625, 0.046875, 0.015625, 0.0078125, 0.0625, 0.1328125, 0.1171875, 0.078125, 0.1640625, 0.234375, 0.1015625, 1.859375, 1.7734375, 1.828125, 1.953125, 0.0, 1.890625, 1.75, 1.8984375, 0.1796875, 0.2734375, 0.171875, 0.078125, 0.0390625, 0.109375, 0.1953125, 0.140625, 0.0546875, 0.1171875, 0.21875, 0.0703125, 1.8125, 1.7265625, 1.7890625, 1.8359375, 1.8125, 1.828125, 1.8359375, 1.828125, 1.8359375, 1.921875, 1.984375, 1.9609375, 1.859375, 1.8515625, 1.90625, 1.9375, 1.96875, 0.015625, 0.0625, 0.0390625, 0.0, 0.046875, 0.109375, 0.046875, 1.9453125, 1.984375, 0.1015625, 0.0703125, 1.9453125, 1.859375, 1.875, 1.8984375, 1.9609375, 0.015625, 0.0625, 0.15625, 0.203125, 0.140625, 0.0234375, 0.0234375, 0.1015625, 0.171875, 0.1953125, 0.25, 0.234375, 0.078125, 1.8515625, 1.7734375, 1.8359375, 0.0, 0.140625, 0.2109375, 0.2109375, 0.203125, 0.1796875, 0.03125, 1.8515625, 1.78125, 1.859375, 1.953125, 0.0546875, 0.171875, 0.234375, 0.09375, 1.8828125, 1.734375, 1.765625, 1.9375, 0.125, 0.1875, 0.09375, 1.953125, 1.875, 1.90625, 1.9765625, 1.9765625, 1.921875, 0.0234375, 0.1953125, 0.25, 0.2109375, 0.15625, 0.140625, 0.1171875, 0.0859375, 1.9375, 1.796875, 1.859375, 0.03125, 0.0390625, 1.9296875, 1.796875, 1.7890625, 1.890625, 0.078125, 0.1796875, 0.1328125, 1.9765625, 1.828125, 1.859375, 0.0625, 0.1796875, 0.1875, 0.1015625, 0.015625, 0.0390625, 0.125, 0.0625, 1.921875, 1.8671875, 1.9453125, 0.0625, 0.109375, 1.9609375, 1.7890625, 1.8515625, 0.109375, 0.2734375, 0.25, 0.1328125, 1.9921875, 0.03125, 0.171875, 0.2109375, 0.1328125, 0.171875, 0.234375, 0.109375, 1.90625, 1.8203125, 1.890625, 1.9609375, 0.0078125, 0.09375, 0.15625, 0.2109375, 0.1875, 0.0390625, 1.859375, 1.78125, 1.8515625, 1.96875, 0.078125, 0.0546875, 1.9375, 1.8203125, 1.78125, 1.8828125, 0.015625, 0.0625, 0.0, 0.0078125, 0.0546875, 0.03125, 1.9609375, 0.03125, 0.140625, 0.140625, 0.0234375, 1.9296875, 1.9296875, 1.9609375, 1.984375, 1.9921875, 1.953125, 1.953125, 1.9921875, 0.078125, 0.1875, 0.234375, 0.1875, 0.0546875, 1.8984375, 1.875, 1.96875, 0.0703125, 0.109375, 0.046875, 1.921875, 1.9375, 0.015625, 0.0078125, 1.9140625, 1.9609375, 0.1015625, 0.09375, 1.9609375, 1.8359375, 1.7890625, 1.84375, 1.9765625, 0.1640625, 0.2421875, 0.1171875, 1.8671875, 1.78125, 1.859375, 1.9140625, 1.9140625, 1.84375, 1.7890625, 1.765625, 1.8203125, 1.859375, 1.921875, 0.0546875, 0.1640625, 0.125, 1.9765625, 0.0, 0.15625, 0.28125, 0.2734375, 0.1015625, 1.890625, 1.7578125, 1.7890625, 1.84375, 1.9375, 0.0859375, 0.1953125, 0.125, 1.9375, 1.828125, 1.8515625, 1.9140625, 1.96875, 0.015625, 0.0390625, 0.1171875, 0.171875, 0.1328125, 1.984375, 1.8515625, 1.828125, 1.90625, 0.0234375, 1.953125, 1.7890625, 1.859375, 0.09375, 0.2265625, 0.15625, 1.96875, 1.796875, 1.78125, 1.9140625, 1.9375, 1.8671875, 1.8984375, 0.015625, 0.1015625, 0.109375, 0.1328125, 0.1328125, 0.078125, 1.9765625, 1.8984375, 1.859375, 1.875, 1.90625, 1.9765625, 0.0390625, 0.09375, 0.1015625, 0.046875, 1.9375, 1.921875, 1.984375, 0.03125, 0.046875, 0.0390625, 0.0625, 0.140625, 0.2109375, 0.0546875, 1.8359375, 1.8984375, 0.1640625, 0.1640625, 1.9140625, 1.859375, 1.984375, 0.0546875, 1.9921875, 1.9140625, 1.8828125, 1.984375, 0.1484375, 0.2734375, 0.25, 0.109375, 1.921875, 1.875, 1.9765625, 1.96875, 1.890625, 1.953125, 0.140625, 0.2265625, 0.1953125, 0.1796875, 0.171875, 0.03125, 1.8671875, 1.859375, 0.015625, 0.0390625, 1.9296875, 1.9140625, 0.0, 1.921875, 1.78125, 1.8125, 0.015625, 0.03125, 1.8828125, 1.859375, 1.984375, 0.0390625, 0.0, 1.953125, 1.9453125, 1.8671875, 1.7890625, 1.90625, 0.1328125, 0.1328125, 1.9375, 1.796875, 1.84375, 1.96875, 0.0859375, 0.09375, 1.96875, 1.859375, 1.8125, 1.8515625, 1.9609375, 1.953125, 1.8984375, 1.9765625, 0.15625, 0.09375, 1.8515625, 1.765625, 1.875, 1.8828125, 1.8046875, 1.8828125, 0.078125, 0.1640625, 0.1171875, 0.140625, 0.1953125, 0.09375, 1.890625, 1.921875, 0.140625, 0.234375, 0.1484375, 0.015625, 1.9296875, 1.8515625, 1.8203125, 1.84375, 1.90625, 0.0390625, 0.1328125, 0.0390625, 1.8359375, 1.8671875, 0.125, 0.2109375, 0.09375, 1.9453125, 1.9140625, 0.0, 0.140625, 0.1484375, 0.0, 1.8828125, 1.859375, 1.84375, 1.8203125, 1.78125, 1.7578125, 1.859375, 0.0234375, 0.1484375, 0.1640625, 0.125, 0.046875, 0.015625, 1.9921875, 1.953125, 1.8671875, 1.8828125, 1.9609375, 0.0078125, 1.96875, 1.9140625, 1.8671875, 1.953125, 0.1015625, 0.2109375, 0.203125, 0.140625, 0.0859375, 1.9921875, 1.9296875, 1.8515625, 1.8359375, 1.9765625, 0.171875, 0.1484375, 1.9140625, 1.7734375, 1.84375, 1.953125, 0.03125, 0.0625, 0.0390625, 0.0078125, 1.9921875, 0.046875, 0.125, 0.0546875, 1.90625, 1.953125, 0.171875, 0.203125, 0.0234375, 1.8515625, 1.828125, 1.875, 1.9765625, 0.046875, 0.0703125, 0.0078125, 1.9296875, 1.890625, 1.9296875, 1.890625, 1.8046875, 1.8515625, 1.9921875, 1.9921875, 1.828125, 1.8359375, 0.0390625, 0.203125, 0.2109375, 0.0859375, 1.921875, 1.765625, 1.7265625, 1.828125, 0.03125, 0.1015625, 0.03125, 0.03125, 0.109375, 0.09375, 1.9453125, 1.875, 1.90625, 0.0546875, 0.1796875, 0.09375, 1.8515625, 1.78125, 1.921875, 0.015625, 1.9453125, 1.8828125, 1.859375, 1.8671875, 1.90625, 1.8515625, 1.7578125, 1.8125, 0.0234375, 0.0859375, 1.9609375, 1.8984375, 1.9375, 1.9921875, 1.984375, 0.0, 0.015625, 1.9453125, 1.84375, 1.8359375, 1.9609375, 0.0390625, 0.03125, 1.9921875, 1.9765625, 1.921875, 1.8984375, 1.9609375, 0.109375, 0.15625, 0.0703125, 0.015625, 0.03125, 0.0078125, 1.984375, 0.0078125, 0.109375, 0.1953125, 0.2265625, 0.1171875, 1.9609375, 1.9140625, 0.0078125, 0.09375, 0.109375, 0.078125, 0.0390625, 0.0, 1.9921875, 0.0390625, 0.1015625, 0.125, 0.0859375, 0.0078125, 1.96875, 0.0, 0.109375, 0.203125, 0.25, 0.1953125, 0.0859375, 0.015625, 1.9921875, 1.984375, 1.9609375, 0.03125, 0.15625, 0.15625, 1.9921875, 1.859375, 1.828125, 1.9375, 0.078125, 0.0859375, 1.90625, 1.8125, 1.8828125, 0.03125, 0.1640625, 0.203125, 0.171875, 0.15625, 0.21875, 0.15625, 1.9921875, 1.875, 1.890625, 1.890625, 1.8671875, 1.9140625, 0.0390625, 0.015625, 1.8515625, 1.8203125, 1.96875, 0.03125, 1.96875, 1.9921875, 0.1640625, 0.203125, 0.0859375, 1.9375, 1.859375, 1.9609375, 0.171875, 0.2109375, 0.046875, 1.859375, 1.8203125, 1.8671875, 1.9765625, 0.0234375, 1.9921875, 1.9453125, 1.921875, 1.875, 1.796875, 1.8125, 1.890625, 1.984375, 0.0, 1.9609375, 1.9140625, 1.9453125, 0.046875, 0.1015625, 0.0234375, 1.9453125, 1.890625, 1.96875, 0.09375, 0.0703125, 1.8828125, 1.8671875, 0.109375, 0.1875, 0.0, 1.8984375, 1.9921875, 0.09375, 0.1015625, 0.0390625, 1.921875, 1.9375, 0.0546875, 0.0859375, 1.96875, 1.859375, 1.8671875, 1.953125, 0.09375, 0.203125, 0.2578125, 0.1640625, 0.03125, 0.0078125, 0.1328125, 0.1484375, 1.984375, 1.859375, 1.859375, 1.8828125, 1.8984375, 1.8828125, 1.8984375, 1.9921875, 0.1640625, 0.2109375, 0.1171875, 0.046875, 0.078125, 0.0078125, 1.8359375, 1.84375, 0.015625, 0.125, 0.0546875, 1.9765625, 1.9765625, 0.0, 1.984375, 0.0, 0.0, 1.9765625, 1.9140625, 1.8984375, 1.9296875, 0.046875, 0.1484375, 0.1171875, 1.921875, 1.8359375, 1.890625, 1.9375, 1.859375, 1.796875, 1.8203125, 1.8828125, 1.984375, 0.0703125, 0.09375, 0.03125, 1.875, 1.8125, 1.9296875, 0.0078125, 0.0078125, 1.9765625, 1.9765625, 1.9140625, 1.828125, 1.859375, 0.015625, 0.1328125, 0.140625, 0.0390625, 1.9453125, 1.9375, 0.046875, 0.1171875, 0.0625, 0.0703125, 0.1484375, 0.1171875, 1.90625, 1.8203125, 1.921875, 0.0078125, 1.9765625, 1.9765625, 0.078125, 0.125, 0.109375, 0.1015625, 0.1328125, 0.1484375, 0.0859375, 0.0234375, 0.0234375, 1.9609375, 1.875, 1.8671875, 1.9609375, 0.078125, 0.1328125, 0.1328125, 0.0625, 1.9453125, 1.828125, 1.8046875, 1.9140625, 1.96875, 1.9296875, 1.9296875, 0.03125, 0.015625, 1.890625, 1.8203125, 1.9140625, 0.0078125, 0.0390625, 0.0234375, 0.0078125, 0.03125, 0.0859375, 0.078125, 0.0078125, 1.921875, 1.90625, 1.9453125, 0.0546875, 0.078125, 0.0078125, 1.9296875, 1.9453125, 0.0, 0.0703125, 0.1484375, 0.1796875, 0.171875, 0.1484375, 0.0859375, 0.0390625, 0.046875, 0.1328125, 0.171875, 0.1328125, 0.0703125, 0.0078125, 1.96875, 1.921875, 1.875, 1.8203125, 1.890625, 0.0625, 0.1328125, 0.015625, 1.890625, 1.84375, 1.875, 1.90625, 0.0078125, 0.09375, 0.0625, 1.8984375, 1.875, 0.046875, 0.1328125, 1.9609375, 1.875, 1.96875, 0.0390625, 1.9765625, 1.921875, 1.9609375, 0.0, 1.96875, 1.9375, 1.90625, 1.875, 1.8671875, 1.84375, 1.8125, 1.8671875, 1.984375, 0.09375, 0.125, 0.09375, 0.0625, 0.0390625, 0.078125, 0.1015625, 0.078125, 0.078125, 0.1015625, 0.0546875, 1.90625, 1.8125, 1.8359375, 1.9453125, 0.046875, 0.0703125, 0.0390625, 0.0078125, 0.03125, 0.0859375, 0.109375, 0.09375, 0.0234375, 1.9765625, 0.015625, 0.0703125, 0.125, 0.1015625, 0.0234375, 1.9921875, 0.0859375, 0.1640625, 0.15625, 0.140625, 0.125, 0.0859375, 0.0078125, 1.9609375, 1.9453125, 0.0, 0.0625, 0.109375, 0.09375, 0.0078125, 1.921875, 1.8671875, 1.90625, 1.9375, 1.9375, 1.9453125, 0.0, 0.046875, 0.015625, 1.96875, 1.9140625, 1.8828125, 1.8828125, 1.9375, 1.9765625, 1.9921875, 1.9453125, 1.8828125, 1.8203125, 1.8828125, 0.0546875, 0.1484375, 0.0546875, 1.9921875, 0.046875, 0.125, 0.109375, 0.078125, 0.0234375, 1.96875, 1.9140625, 1.90625, 1.9765625, 0.0, 1.921875, 1.890625, 1.9609375, 0.0390625, 0.03125, 0.0234375, 0.0625, 0.0390625, 1.921875, 1.8671875, 1.9296875, 0.0078125, 1.984375, 0.0, 0.046875, 0.046875, 1.9296875, 1.859375, 1.9296875, 0.0078125, 0.0, 0.0, 0.03125, 0.0390625, 1.9609375, 1.953125, 0.03125, 0.0703125, 1.9765625, 1.9296875, 0.03125, 0.0625, 1.9609375, 1.859375, 1.8984375, 1.9609375, 1.984375, 0.03125, 0.1171875, 0.1015625, 1.9609375, 1.875, 1.921875, 0.0078125, 0.0, 1.96875, 1.9296875, 1.9609375, 0.0546875, 0.1171875, 0.0625, 1.9765625, 1.9609375, 0.0, 0.078125, 0.109375, 0.0234375, 1.953125, 1.9375, 1.9921875, 0.0546875, 0.0859375, 0.0390625, 1.96875, 1.9140625, 1.9296875, 1.984375, 1.9921875, 1.9296875, 1.890625, 1.9765625, 0.0546875, 0.0546875, 0.015625, 1.953125, 1.9140625, 1.9140625, 1.9375, 1.9921875, 1.96875, 1.90625, 1.890625, 0.0234375, 0.078125, 1.9765625, 1.90625, 1.9609375, 0.0234375, 1.9921875, 1.96875, 1.9609375, 1.9921875, 0.0, 1.9921875, 1.9296875, 1.890625, 1.8671875, 1.921875, 0.0, 0.078125, 0.0703125, 0.0625, 0.0703125, 0.0859375, 0.0546875, 0.0703125, 0.09375, 0.09375, 1.9921875, 1.9296875, 1.9609375, 0.0078125, 1.96875, 1.953125, 1.9921875, 0.015625, 1.953125, 1.921875, 1.9296875, 1.9609375, 1.9453125, 1.90625, 1.8984375, 1.9140625, 1.9765625, 1.9921875, 1.953125, 1.9140625, 1.953125, 0.0, 0.0, 1.9921875, 1.9609375, 1.9296875, 1.8828125, 1.8984375, 0.0234375, 0.09375, 0.046875, 1.984375, 0.046875, 0.0703125, 1.984375, 1.921875, 1.9296875, 1.953125, 1.9140625, 1.890625, 1.953125, 0.0, 0.0078125, 1.984375, 1.953125, 1.96875, 1.9921875, 0.046875, 0.078125, 0.0703125, 0.0078125, 1.96875, 0.015625, 0.046875, 0.015625, 1.953125, 1.921875, 1.921875, 1.96875, 0.03125, 0.0390625, 0.015625, 1.953125, 1.9140625, 1.9609375, 1.9921875, 1.9765625, 1.921875, 1.890625, 1.9140625, 0.0, 0.078125, 0.0625, 0.015625, 1.9765625, 1.984375, 0.03125, 0.0546875, 0.03125, 1.9921875, 0.0, 0.0078125, 1.96875, 1.9453125, 1.953125, 0.0, 0.0703125, 0.078125, 0.015625, 1.9609375, 0.0078125, 0.0546875, 0.0390625, 0.0078125, 0.0, 0.0078125, 0.0078125, 0.0078125, 1.9609375, 1.921875, 1.90625, 1.9140625, 1.90625, 1.9296875, 1.9921875, 0.03125, 0.015625, 1.984375, 1.984375, 0.0234375, 0.0390625, 0.0546875, 0.0546875, 0.0390625, 0.0078125, 1.96875, 1.953125, 1.9375, 1.8984375, 1.8984375, 1.984375, 0.03125, 0.0, 1.953125, 1.9921875, 0.03125, 0.0546875, 0.046875, 0.0546875, 0.0546875, 0.078125, 0.0546875, 1.9609375, 1.9296875, 0.0, 0.0859375, 0.0390625, 1.984375, 1.953125, 1.953125, 1.9140625, 1.9140625, 1.921875, 1.953125, 1.953125, 1.96875, 1.9921875, 0.0234375, 0.015625, 1.9921875, 1.953125, 1.9375, 1.9609375, 0.0, 1.9609375, 1.9453125, 1.9609375, 0.0, 0.0078125, 0.015625, 0.0703125, 0.0703125, 1.984375, 1.9296875, 1.984375, 0.046875, 0.0234375, 1.9609375, 1.9609375, 1.96875, 1.984375, 1.9921875, 0.0234375, 0.0234375, 0.015625, 1.984375, 0.0, 0.0078125, 0.015625, 0.0, 1.9609375, 1.9453125, 1.9765625, 0.0, 1.9609375, 1.921875, 1.9453125, 0.0, 1.9921875, 1.9765625, 1.9609375, 1.984375, 0.0, 0.0234375, 0.046875, 0.03125, 1.9921875, 1.9609375, 0.0234375, 0.078125, 0.09375, 0.078125, 0.0546875, 0.0234375, 1.96875, 1.9296875, 1.953125, 0.0, 0.0703125, 0.0625, 1.96875, 1.90625, 0.0, 0.078125, 0.015625, 1.953125, 0.0, 0.0703125, 0.0390625, 1.984375, 1.96875, 1.9921875, 0.03125, 0.0703125, 0.0546875, 0.0390625, 0.0078125, 0.015625, 0.0625, 0.0703125, 0.03125, 1.9921875, 0.0390625, 0.0703125, 0.015625, 1.96875, 1.96875, 0.0078125, 1.9921875, 1.984375, 1.984375, 1.984375, 1.9609375, 1.9453125, 1.9296875, 1.9375, 1.9375, 1.9296875, 1.921875, 1.921875, 1.9453125, 1.96875, 1.9765625, 1.9921875, 0.0078125, 0.0234375, 0.015625, 1.9921875, 1.984375, 1.9765625, 1.96875, 1.984375, 0.03125, 0.0546875, 0.015625, 1.9609375, 1.9453125, 1.9609375, 0.0, 0.03125, 0.0078125, 0.0078125, 0.0390625, 0.0703125, 1.9921875, 1.9375, 1.953125, 0.015625, 1.9921875, 1.96875, 0.0078125, 0.03125, 0.0, 1.96875, 1.9296875, 1.9375, 1.96875, 0.0, 0.0234375, 0.0078125, 1.984375, 1.953125, 1.9453125, 1.953125, 1.921875, 1.921875, 1.9375, 0.0, 0.046875, 0.0625, 1.9921875, 1.9453125, 1.96875, 0.0234375, 1.9765625, 1.9375, 1.9453125, 1.9765625, 1.9609375, 1.921875, 1.9140625, 1.9296875, 0.015625, 0.0625, 0.0078125, 1.9375, 1.96875, 0.03125, 0.0546875, 0.03125, 1.9765625, 1.921875, 1.9375, 1.9609375, 1.9375, 1.9375, 1.9921875, 0.0390625, 0.03125, 1.9921875, 0.0078125, 0.0390625, 0.0703125, 0.0625, 0.03125, 0.015625, 0.0390625, 0.0703125, 0.0, 1.9375, 1.953125, 0.03125, 0.0546875, 0.0625, 0.0625, 0.046875, 1.984375, 1.9453125, 1.9296875, 1.9609375, 0.015625, 0.0390625, 0.0234375, 1.9921875, 0.0078125, 0.015625, 1.984375, 1.9375, 1.921875, 1.9375, 1.9609375, 1.9921875, 1.9921875, 0.0, 1.9921875, 0.0, 1.9609375, 1.9453125, 1.96875, 0.0078125, 1.984375, 1.96875, 1.984375, 0.03125, 0.0234375, 0.0078125, 1.9609375, 1.953125, 1.9765625, 0.0, 0.015625, 0.0078125, 1.9921875, 0.0, 1.9921875, 1.96875, 1.9609375, 1.953125, 1.9609375, 1.9921875, 0.0078125, 1.9921875, 1.96875, 1.9296875, 1.9375, 1.9453125, 1.9453125, 1.96875, 0.015625, 0.046875, 1.9921875, 1.9375, 1.9453125, 0.0078125, 0.046875, 0.0625, 0.03125, 1.984375, 1.96875, 1.953125, 1.9453125, 1.9453125, 0.015625, 0.046875, 0.0078125, 1.9375, 1.9765625, 0.015625, 1.984375, 1.9453125, 1.984375, 0.046875, 0.0078125, 1.9609375, 1.9609375, 1.9921875, 1.9921875, 0.0078125, 0.0390625, 0.0625, 0.0, 1.9453125, 1.9375, 1.96875, 1.9609375, 1.953125, 1.953125, 1.9453125, 1.953125, 1.9453125, 1.9765625, 0.0, 0.046875, 0.0546875, 0.03125, 0.0078125, 0.015625, 0.015625, 1.984375, 1.9453125, 1.9765625, 0.0078125, 0.03125, 0.0234375, 0.015625, 0.0390625, 0.03125, 0.0234375, 1.9609375, 1.9296875, 1.9765625, 0.03125, 0.078125, 0.0703125, 1.9921875, 1.9453125, 1.953125, 0.015625, 0.0546875, 0.0546875, 0.0078125, 1.9609375, 1.9453125, 1.9609375, 1.984375, 0.0078125, 1.9765625, 1.9609375, 1.96875, 1.9765625, 1.9921875, 1.984375, 1.9765625, 1.96875, 1.9921875, 0.015625, 1.9765625, 1.9453125, 1.9609375, 0.0078125, 0.0, 1.953125, 1.9765625, 1.9921875, 0.0, 1.984375, 1.9609375, 1.953125, 1.9453125, 1.9453125, 1.9296875, 1.9375, 1.96875, 1.9765625, 1.96875, 1.9375, 1.921875, 1.9453125, 1.9765625, 0.015625, 1.9921875, 1.9453125, 1.9375, 1.96875, 1.9765625, 1.9921875, 0.015625, 0.03125, 0.0546875, 0.0390625, 1.9921875, 1.953125, 1.9609375, 0.015625, 0.0390625, 0.015625, 1.984375, 1.9375, 1.953125, 1.9609375, 1.9609375, 1.9453125, 1.984375, 0.0234375, 0.015625, 1.9921875, 0.0234375, 0.0546875, 0.0390625, 0.0, 1.9921875, 0.0, 1.9609375, 1.953125, 1.984375, 0.0390625, 0.015625, 1.96875, 1.9609375, 1.9765625, 0.015625, 0.03125, 0.0234375, 1.9921875, 1.984375, 1.984375, 0.015625, 0.03125, 0.046875, 0.046875, 0.0390625, 0.015625, 1.9765625, 1.953125, 1.953125, 1.984375, 1.984375, 1.9921875, 0.0234375, 0.046875, 0.0078125, 1.96875, 1.9609375, 1.9765625, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0234375, 0.0390625, 0.03125, 0.0, 0.015625, 0.015625, 1.984375, 1.9453125, 1.96875, 0.015625, 0.0, 1.953125, 1.9609375, 1.96875, 1.96875, 1.9375, 1.9375, 1.9453125, 1.9765625, 0.0078125, 0.046875, 0.0390625, 0.0078125, 1.953125, 1.984375, 0.015625, 0.015625, 1.984375, 0.0078125, 0.046875, 0.0078125, 1.9765625, 1.9765625, 0.03125, 0.03125, 0.0234375, 0.015625, 0.0, 1.9921875, 1.96875, 1.96875, 1.96875, 1.9765625, 1.984375, 0.0078125, 0.046875, 0.046875, 0.03125, 0.0390625, 0.03125, 0.0390625, 0.015625, 1.9921875, 1.9609375, 1.96875, 0.0, 1.9921875, 1.984375, 1.9765625, 0.0, 1.9765625, 1.9453125, 1.96875, 0.0, 1.984375, 1.96875, 1.9609375, 1.9609375, 1.96875, 1.953125, 1.953125, 1.9453125, 1.96875, 1.984375, 0.0, 1.984375, 0.0078125, 0.015625, 0.0390625, 0.03125, 1.9921875, 1.9609375, 1.953125, 1.9765625, 0.0, 0.015625, 0.0390625, 0.03125, 1.9921875, 1.9453125, 1.9765625, 0.0234375, 0.0390625, 0.015625, 0.0078125, 0.03125, 0.0078125, 0.0, 0.0, 0.015625, 0.046875, 0.0390625, 0.0078125, 1.9609375, 1.9765625, 0.0078125, 0.0234375, 1.9921875, 1.9921875, 0.0078125, 1.9921875, 1.9921875, 1.96875, 1.96875, 1.96875, 1.9921875, 0.0, 0.0078125, 0.0078125, 1.9921875, 1.9765625, 1.96875, 1.953125, 1.96875, 1.9765625, 1.9921875, 1.9921875, 1.9765625, 1.9765625, 0.0, 1.9765625, 1.96875, 1.9609375, 1.9609375, 1.96875, 1.953125, 1.9609375, 1.953125, 1.9765625, 1.9765625, 1.984375, 1.9609375, 1.984375, 0.0, 0.03125, 0.0234375, 0.015625, 1.984375, 1.984375, 1.9921875, 1.984375, 1.9765625, 1.984375, 0.015625, 0.015625, 0.0, 1.96875, 1.9609375, 1.96875, 1.9921875, 1.984375, 1.9765625, 1.9921875, 0.0, 0.015625, 1.9921875, 1.9765625, 1.953125, 1.953125, 1.9765625, 1.984375, 1.9921875, 0.0, 1.984375, 0.0, 1.9921875, 0.0078125, 1.9921875, 1.984375, 1.953125, 1.96875, 1.984375, 0.0, 1.984375, 1.9921875, 1.984375, 1.9765625, 1.9609375, 1.96875, 0.0078125, 0.0078125, 0.0, 1.9921875, 0.0078125, 1.984375, 1.96875, 1.9609375, 1.9921875, 0.0, 0.015625, 0.0234375, 0.03125, 0.0078125, 1.9921875, 1.9609375, 1.9609375, 1.9765625, 0.0078125, 0.0, 1.96875, 1.953125, 1.9765625, 1.9921875, 0.015625, 0.0078125, 1.984375, 1.96875, 1.984375, 1.984375, 0.0, 1.9921875, 1.96875, 1.96875, 1.9609375, 1.96875, 1.9765625, 1.9921875, 0.0234375, 0.0078125, 1.984375, 0.0, 0.015625, 0.0078125, 1.96875, 1.96875, 1.9921875, 0.015625, 0.03125, 0.0, 1.9765625, 1.9765625, 0.0234375, 0.0390625, 0.015625, 0.015625, 0.0, 1.9921875, 1.984375, 1.96875, 1.984375, 1.9609375, 1.9609375, 1.9765625, 1.9921875, 0.0078125, 1.9921875, 1.984375, 1.96875, 1.96875, 1.9765625, 1.9765625, 1.9921875, 0.0, 0.0078125, 1.984375, 1.953125, 1.9765625, 1.9921875, 0.0, 1.9765625, 1.9609375, 1.9765625, 1.9765625, 1.9921875, 1.984375, 1.984375, 1.9765625, 1.96875, 1.9765625, 1.9609375, 1.9765625, 1.984375, 0.0, 1.984375, 0.0, 0.0078125, 0.0234375, 0.0234375, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0078125, 0.0078125, 1.9921875, 1.9921875, 1.9921875, 0.015625, 0.0, 0.0, 1.9921875, 0.0, 0.0078125, 1.9921875, 1.984375, 1.96875, 1.96875, 1.9609375, 1.984375, 0.0078125, 0.015625, 0.0078125, 0.015625, 0.015625, 0.0078125, 1.984375, 0.0, 0.0078125, 0.015625, 1.9765625, 1.9765625, 1.984375, 1.9921875, 1.984375, 1.9921875, 0.015625, 1.9921875, 1.96875, 1.9609375, 1.9921875, 1.9921875, 1.9921875, 1.96875, 1.9765625, 1.984375, 0.015625, 0.0078125, 0.0, 1.984375, 1.9921875, 0.0, 0.0078125, 1.9921875, 1.984375, 1.984375, 0.0078125, 0.0, 1.9921875, 1.984375, 1.9765625, 1.984375, 1.984375, 0.0, 0.0, 0.0, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.9765625, 1.96875, 1.9765625, 1.9921875, 0.0078125, 0.0, 0.0078125, 0.015625, 1.9921875, 1.984375, 1.9765625, 0.0, 0.0078125, 1.9921875, 0.0, 0.0078125, 0.0078125, 1.9765625, 1.9765625, 1.9765625, 0.0, 0.0, 0.0078125, 0.0, 0.0, 1.9921875, 0.0078125, 0.0, 1.9765625, 1.9765625, 1.9609375, 1.9765625, 1.9765625, 1.9921875, 0.0, 0.015625, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.9921875, 0.0, 0.0, 0.0078125, 1.9921875, 1.9921875, 1.9921875, 1.9921875, 1.9765625, 1.9921875, 0.0, 1.984375, 1.984375, 1.984375, 1.984375, 0.0078125, 0.0078125, 0.0078125, 0.0, 1.984375, 1.9921875, 0.0, 1.9921875, 1.9921875, 1.9765625, 1.984375, 1.984375, 0.0, 1.9921875, 1.9921875, 1.9921875, 0.0, 1.9921875] \ No newline at end of file diff --git a/drums/drum5.wav b/drums/drum5.wav new file mode 100644 index 0000000..430e43d Binary files /dev/null and b/drums/drum5.wav differ diff --git a/drums/wav2drumtxt.py b/drums/wav2drumtxt.py new file mode 100644 index 0000000..4c806a5 --- /dev/null +++ b/drums/wav2drumtxt.py @@ -0,0 +1,64 @@ +import os +import wave +import numpy as np + +def save_noise_data(file_path, noise_data): + try: + with open(file_path, 'w') as file: + file.write(str(noise_data.tolist())) + print(f"Noise data saved to {file_path}") + except Exception as e: + print(f"Error saving noise data to {file_path}: {e}") + +def extract_noise_data(file_path, duration_ms=100, sample_rate=44100): + try: + with wave.open(file_path, 'rb') as wav_file: + num_channels = wav_file.getnchannels() + sample_width = wav_file.getsampwidth() + frame_rate = wav_file.getframerate() + total_frames = wav_file.getnframes() + + if num_channels > 1: + print("Input file must be mono (single channel).") + return + + # Adjust for 8-bit audio + if sample_width == 1: + dtype = np.uint8 + elif sample_width == 2: + dtype = np.int16 + else: + print("Unsupported sample width.") + return + + # Use the minimum of specified duration and actual duration of the file + duration_secs = min(duration_ms / 1000.0, total_frames / frame_rate) + num_frames = int(duration_secs * frame_rate) + + signal = np.frombuffer(wav_file.readframes(num_frames), dtype=dtype) + + # Normalize the signal for 8-bit audio + if sample_width == 1: + signal = (signal - 128) / 128.0 + + return signal + except Exception as e: + print(f"Error: {e}") + return None + +def main(): + directory_path = input("Enter the path to the directory containing WAV files (press Enter for current directory): ").strip() or '.' + duration_ms = float(input("Enter the maximum duration in milliseconds: ")) + + for file_name in os.listdir(directory_path): + if file_name.endswith(".wav"): + input_wave_file = os.path.join(directory_path, file_name) + output_noise_data = extract_noise_data(input_wave_file, duration_ms) + + if output_noise_data is not None: + output_file_name = os.path.splitext(file_name)[0] + ".txt" + save_noise_data(output_file_name, output_noise_data) + +if __name__ == "__main__": + main() +