Skip to main content

more options

For our final project in ECE 5760, we built a sequencer/synthesizer using an Altera DE2 FPGA board for processing and MATLAB for user interface. The synthesizer uses a combination of sampled and additively synthesized sounds to produce various instruments. The FPGA based sequencer takes input from a MATLAB GUI and sequences each instrument separately, allowing the user to make compositions in real-time. Additionally, an automatic gain control algorithm was implemented to ensure that overflow would not result in distorted output.

Our main motivation for pursuing this project was our joint interest in music, and desire to pursue a synthesizer project in addition to our Lab 3, which was a drum head wave equation calculator. We came across some very interesting designs for synthesizers; some of our inspirations including the Monome and the web-based Sembeo synthesizers/sequencers.

High level Design

Rationale

We decided on a music based project because both of us are musically oriented, and we pursue music through many different avenues. One area we were jointly interested in was music computing, including digital synthesis and music composition. Lab 3 was an interesting venture into the world of physical instrument modeling, and we wanted to take this a step further and incorporate it into a synthesizer.

Some of our inspiration came from a device called the Monome, which is set up very similar to our GUI. Also, the Sembeo is set up just like our GUI. Our implementation builds on these designs by adding the ability to sample and store patterns.

Additive Synthesis

This technique uses addition of a fundamental and a few harmonics along with amplitude envelope characteristics to synthesize a musical signal that can imitate any instrument. The main equation for synthesis is

Several harmonics can be chosen with parameters including amplitude, frequency, and phase . The choice of harmonics produce different instruments and timbres. For this project, we decided to use additive synthesis because it was a robust technique that allowed us to form many different types of sounds quickly and easily.

Logical Design

Our design starts with user input to a screen of buttons on a MATLAB GUI. The user input defines the sequences of different instruments. These sequences are periodically pushed out through a National Instruments Analog-Digital Converter into the GPIO port of the Altera DE2 board. Custom Verilog code reads in the sequence data and assigns sequences to 2 main types of instruments: sampled instruments stored in ROM and additively synthesized instruments. In total, 8 instruments are added and sent to a range compressor, which prevents clipping. The final output is sent to the audio codec for sound output.

Hardware/Software Tradeoffs

The reason to implement this system in hardware is to be able to perform synthesis of many instruments in parallel. Polyphony is extremely hard for software; however, in hardware it is simply a matter of connecting many adders together and having a good compressor. We were forced to use MATLAB as a GUI because our original device, the Multi-touch LCD display by Terasic, did not work for our setup. We decided not to use a Nios II, because in our experience, it makes designs unnecessarily complicated.

Relationship to Standards

To the best of our knowledge, there are no standards governing the creation of musical instruments and synthesizers. However, since our system does have sampling capability, we need to make sure all samples are used with knowledge of the distributor/owner. The samples used in this project were obtained on an open source sample website: www.freesound.com.

Patents/Trademarks

The additive synthesis technique for musical synthesis is a well known algorithm. The monome and other associated sound matrix synthesizers are more a form of creativity and expression rather than rigid industrial products such as Korg or Moog synthesizers. Our design does not infringe on any of these IPs, especially because we are not planning to make any of this commercial.

Hardware/Software Design

MATLAB to FPGA

Everything except the user interface in MATLAB was implemented in hardware on the Altera DE2 board, which contains a Cyclone II FPGA. As shown above, the GPIO port is used to read in sequence data from the MATLAB GUI. This data is presented in 16 bit words, 1 for each instrument. A total of 8 instruments were used, so a state machine was built to read in 8 16 bit words. The state diagram for this machine is shown here:

The transitions from Idle 1 to Read upper word and from idle 2 to read lower word occur according to a read_in bit from MATLAB. This bit goes high when the upper 8 bits of a word are ready, and the subsequent negative edge indicates that the lower 8 bits of a word are ready. Along with sending this bit, MATLAB sends the 8 bits simultaneously that can be read in parallel using 8 GPIO ports. The state machine is looped until 8 16 bit words are read. Then the state machine returns to the Idle 1 state to wait for the next set of 8 words. The code for this read in setup is packaged in the data_in.v module.

A NIDAQ USB 6008 was used to transfer data from MATLAB to the GPIO pins. Since the GPIO pins commonly operate at 3.3V, a voltage divider had to be used to step down the voltage from 5V. However, the NIDAQ can only supply up to 8.5 mA, so the resistors had to be on the order of 30 k?. The resistors used for this setup were 30 k? and 18k?. They were placed in the following configuration:

In this configuration, the signal from the NIDAQ is digital and acts as a power source. If the bit is high (or 5V), the out to GPIO is 3 V. Otherwise, the output is close to 0V. The 3 and 0 at the output are sufficient to read in a digital 1 or 0 in the FPGA.

ROM Sampled Instruments

We wanted to include some fresh music samples in our synthesizer to actually have beats that sounded good. I hand picked these samples from the open source website freesound.com. I chose a bass drum, snare drum, and hi hat sound. These sounds were sampled at 44.1 kHz. I extracted the first half of a second of each and downsampled by 2 to reduce the size to 5000 18bit samples per sound. I converted these to fixed point using the MATLAB fixed point toolbox and wrote them into a .v file as ROM. The resulting ROM files are included in sounds.v.

The state machine to read the ROM files when given a 'hit' is shown below. The state machine starts at the Idle 1 state, and stays there until a hit signal is given by the sequencer. Then the state machine goes to the update address state, where it increments the address of the ROM on the positive edge of the Audio DAC clock. This clock is the 48 kHz sampling clock. The state machine stays at Idle 2 until the DAC clock goes low. At this time, the state machine assigns the word from ROM to the audio output. The state machine waits in Idle 3 until the DAC clock goes high and the cycle repeats until 1 of 2 conditions occur. Either the ROM is completely read, or the state machine is told to stop playing by the sequencer.

Additively Synthesized Instruments

These instruments were additively synthesized with three harmonics at integer multiples of the fundamental. Direct digital synthesis was used to generate the harmonics from a sine table of 256 values. DDS works by using a look up table sin wave and sampling points on it at different intervals. The interval is referred to as the increment, and the higher the increment, the higher the pitch that results from sampling the sin wave. Our instruments use 3 harmonics: fundamental, 2*fundamental, and 3*fundamental. Our initial instruments had no amplitude envelope, but our final instruments included an ASR shaped envelope, which is shown below.

The beat to beat interval is calculated in a separate part of Verilog. This interval is calculated using a look up table for all of the possible tempos (50-240 BPM). The LUT consists of the intervals between 2 eighth notes in terms of clock cycles at 50 MHz. To switch to a 16th note, we simply shift the eighth interval right by 2. The end of the attack phase was simply the beat-beat interval divided by 4 or shifted right by 2. The beginning of the release was ¾ of the beat interval, which can also be easily calculated using only shifts. The peak of the waveform is at 1, which means the slope can be easily calculated by having a LUT of 1/interval for all possible intervals (same number as all possible tempos). Then we can shift the LUT by 2 to calculate the rising (and falling) slope of the waveform.

The state machine used for this instrument is trivial. It simply adds an increment to an accumulator at 50 MHz. The accumulator is used to index a sine table. All three harmonics are generated and added in this manner. Before the three harmonics are output to the compressor, they are fixed point multiplied with the envelope. Since the envelope is between 0 and 1, this does not amplify or attenuate the signal. The code for additive synthesis is packaged in add_synth.v.

Sequencer

The sequencer takes the data from the GPIO pins and assigns 'hits' to each instrument. It contains a state machine that only has 2 states: rest and play. It runs through the state machine at 50 MHz, but only changes to the play state once every beat. For example, if the beat was in eighth notes, the state machine would go to the play state on every eighth note and then immediately back to the rest state, where it would stay for a prescribed number of clock cycles. The number of clock cycles is determined by a LUT, which contains number of clock cycles between eighth notes for tempos between 50 and 240 BPM. In the play state, the sequencer can assign hits to any instruments that need to be hit.

An interesting problem we had to deal with was high tempo play. At higher tempos, some of the ROM instruments would not be done before they were hit again. To get around this issue, we simply issued a stop command to each instrument about 100-200 cycles before they would be hit again.

Compressor

In order to output sound, all of the individual instruments need to be added together at each time step. However, we quickly run into the problem of overflow when adding the sounds, as the sound output of each instrument is encoded in 2.16 fixed-point, which is 18 bits long, and the final input into the audio codec needs to be 16 bits. For a single instrument, the solution is easy as the two least significant bits can be cutoff, giving the audio codec a 2.14 fixed-point input. However, when adding more instruments, the number of digits in the exponent, which are the most significant bits to the left of the decimal point, could increase, and in addition the sign bit also shifts over. Thus, a compressor is required to select which bits of the sum of all instruments to send to the audio codec.

The first major choice when designing the compressor was whether to make it static or dynamic. A static compressor applies a constant shift to the audio output. The advantages of this approach would be that it would be easy to implement and each instrument's amplitude would stay constant. However, it would also mean that the total audio amplitude would vary based on how many instruments were playing. The other option, a dynamic compressor, would scale the audio signal based on how many instruments are playing. While a dynamic compressor would keep steadier output amplitude, it is a bit more challenging to implement. Which type of compression is superior is also up for debate. Many audio professionals believe that dynamic compression distorts sound even though to the average listener dynamic compression sounds better as sounds have more 'kick'. We decided to go with dynamic compression as the amplitude difference between one instrument playing and 8 instruments playing was so large that if the volume on the speakers was turned up high enough to hear a single instrument then eight instruments would cause overflow on the analog end of the speaker system.

To properly scale the audio, we need to check at least a single period of each frequency to find the amplitude. We found the smallest possible frequency among our instruments to be the bass drum with a fundamental frequency of 50Hz. Thus, when running a 48kHz audio output, we need to check a history of 48000/50=960 samples to make sure the amplitude of all frequencies present is accounted for. We implemented this history by using a set of counters, one for each overflow bit. For example, if the sound overflows by one bit then the respective counter will reset to 960 and count own every 48kHz cycle. The audio output will then be compressed down by one bit for the next 960 cycles. If another 1 bit overflow is detected at the input during that time, then the counter is reset back to 960. The counter representing the highest overflow always takes precedence. So, for example, if both a 3 bit and 1 bit overflow are detected the output will be compressed by 3 bits until the 3 bit counter reaches zero.

Software

The software GUI uses a matrix format to represent time and instruments. Time is on the horizontal axis. Depending on the division selected by the user, each tick can either be an eighth note or a sixteenth note. The vertical axis represents different instruments. Together, the matrix provides a way to play every possible combination of instruments and times. This format was inspired by a popular Sound Matrix synthesizer called Sembeo. An example of our GUI is shown here:


The user simply has to click on a button to activate an instrument at that tick. The buttons are togglebuttons in MATLAB, which means they change color and state upon activation and deactivation. In MATLAB, a callback can be generated each time a button is clicked, and the state of all the buttons in the system can be kept in a matrix. These states are reactive since they are updated only when a user clicks. However, the data transfer from MATLAB to the FPGA is periodic to ensure that rapid clicking from the user does not clog the data stream. Data is sent to the FPGA at 50Hz every 2 seconds. Due to overhead in MATLAB, sending data faster than 50 Hz is unreliable.

Some extra features were included to let the user save a drum pattern. This corresponds to all of the ROM sampled instruments. When the save button is clicked, the three rows corresponding to these instruments are saved in MATLAB. The user can then clear the instruments or change the pattern. The user can return to the saved pattern at any time by pressing the load pattern button. The load button essentially updates the state of the instruments by loading in the saved pattern. The same functions were implemented for the additively synthesized instruments.

Acknowledgements for Code

The code for the sine table was taken from a previous ECE 5760 project, Additively Synthesized Ocarina by Joe Montanino. The rest of the additive synthesis code was written from scratch. The code for the ports in the top module were written by Bruce Land.

Things which did not Work

Possibly the most frustrating part of our project was spending a few weeks obtaining and working the Terasic Multi-touch LCD display. The demo code supplied with the display did not load and technical support, though active, was not very helpful. The display had come with a painter demo, which used a NIOS to control user input and graphical output. The Verilog compiled properly, but when we created a NIOS II IDE project and included all of the .h and .c files, an odd error occurred where the program would clear half of the screen and then get stuck in an infinite loop. The reason for the infinite loop was unclear and tech support determined that the demo could not be run on Quartus II 11.0 and Nios II 11.0 without modifications to some of the hardware infrastructure. We had to switch to a MATLAB display very late in the game. As a result of the lost time, we were not able to implement more complex synthesis algorithms as we had hoped.

Another element that we could not integrate into the final project was the PDE realtime drum machie which we had written for lab 3. We ran into several issues in compressing the audio output of the drums such that it would be compatible with the oter instruments. In addition, at one point we lost a working version of the drum machine and had to try and rebuild it from an older version. Because of these issues we eventaly decided to not pursue incorporating the drum machine into our final project.

Results

The design met our expectations in that the music was synthesized on time and in the appropriate sequence. The user interface was friendly and quickly conveyed information from the user to the FPGA. The software functions to store and clear patterns were useful and worked as expected. The compression algorithm was able to prevent overflow and distorted sounds, while the envelope for the additively synthesized instruments was able to cut off instruments before the next beat.

Our design used all of the memory bits in the FPGA due to the ROM sampled instruments as well as LUT for tempo and sine waves. Our design did not make too much use of the logic elements because we could not experiment with more computationally heavy synthesis algorithms after we lost time with the Terasic display. Adding the envelope to more than 3 additively synthesized instruments increased the memory usage beyond the FPGA capacity. Interestingly, when we tried to reduce the entries in ROM for the sampled instruments in order to make more space, the compilation got stuck at 80% and we stopped the compilation after 30 minutes. So we created 2 separate implementations, one with ROM instruments and non-enveloped additive instruments and another with just enveloped additive instruments.

The additive instruments were played through speakers and held up to a guitar tuner. They registered within 5 cents of the intended note every time. Our design was not hazardous to human health. The only concern was having speakers too close to our ears when we were having overflow issues in the beginning. This implementation is very usable by other people because it just involves clicking buttons in MATLAB. Ideally, we would have liked the touch screen display because it would have provided even better usability.

Some compositions made by Akshay are included here. The first 2 compositions use a combination of ROM and additive instruments to create a full band experience. The scale used in the melodic instruments is taken from Two Pages by Philip Glass. The last composition uses only additive instruments and explores odd intervals, chord changes, and more.



Conclusion

As musicians, the implementation was extremely fun for us. After we got a first prototype, we spent many hours finding cool new beats and chord combinations. Additionally, the save and load pattern features allowed us to make compositions and real-time and be experimental/creative with our music. The design met our expectations of providing a user-friendly, real-time, synthesis/sequencer.

We have some thoughts for what we might do next time. We would make sure that there is sufficient documentation for a product before we ask for it. The MTL display was not sufficiently tested and very new. Thus, we encountered several insurmountable bugs that halted any progress. Next time, we would also plan our project so that we could do the music synthesis and touch screen interface in parallel as opposed to sequentially. This would ensure progress in some area.

If we had some more time we would definitely look into alternative synthesis methods and include a wider variety of instruments in our sequencer. We did a drum head synthesizer for Lab 3, but there are methods to calculate the wave equation on more complex surfaces. This would be an area that we would explore further.

Intellectual Property Considerations

The code was written in Verilog in Altera's Quartus II 11.1 64 bit. The design instantiated several of Alteras megafunctions including ROM, multiplication, and PLLs. Where necessary, Altera and Terasic were referenced at the top of .v files.

As mentioned before, we reused a sin table from Joe Montanino's ECE 5760 Project last year. The rest of the synthesizer code was written from scratch.

The samples stored in ROM were taken from the public domain on the website freesound.com, of which one of the teammates is a member.

There were no non-disclosure or intellectually sensitive materials involved in this project.

Patent opportunities are unlikely for this project since many synthesizers and topologies have been proposed in the past 30 years.

Legal Considerations

We are not infringing on any standards, restrictions, or codes of conduct with our project.

Appendices

Program Listing

BPGA.v

The top file, also contains code for sequencer, compressor, and sampled instruments

Exported from Notepad++
module BPGA ( //////////////////////// Module Inputs/Outputs //////////////////////// //////////////////////// Not Included in Report //////////////////////// ); //////////////////////// Input/Output Assignments //////////////////////// //////////////////////// Not Included in Report //////////////////////// wire VGA_CTRL_CLK; wire AUD_CTRL_CLK; wire DLY_RST; assign TD_RESET = 1'b1; // Allow 27 MHz assign AUD_ADCLRCK = AUD_DACLRCK; assign AUD_XCK = AUD_CTRL_CLK; Reset_Delay r0 ( .iCLK(CLOCK_50),.oRESET(DLY_RST) ); VGA_Audio_PLL p1 ( .areset(~DLY_RST),.inclk0(CLOCK_27),.c0(VGA_CTRL_CLK),.c1(AUD_CTRL_CLK),.c2(VGA_CLK) ); //Define Audio sampling clock and Codec AUDIO_DAC_ADC u4 ( // Audio Side .oAUD_BCK(AUD_BCLK), .oAUD_DATA(AUD_DACDAT), .oAUD_LRCK(AUD_DACLRCK), .iAUD_ADCDAT(AUD_ADCDAT), .iAUD_extL(out2AUD_wire), .iAUD_extR(out2AUD_wire), // Control Signals .iCLK_18_4(AUD_CTRL_CLK), .iRST_N(DLY_RST) ); //Define wires and regs reg signed [17:0] out2AUD; //Codec uses 16 bit 2's complement wire signed [15:0] out2AUD_wire; wire state_clk; wire mem_clk; wire sreset, tempo_up, tempo_down; wire [4:0] shift_amt; assign state_clk = CLOCK_50; //clock to run state machine assign mem_clk = CLOCK_50 ; assign shift_amt = 5'b01100; //BUTTONS USED assign sreset = (~KEY[0]); assign tempo_up = (~KEY[2]); assign tempo_down = (~KEY[3]); ////////////////////////////////////////////////////////////////////////////// wire signed [21:0] audio_sum = {{4{out_add1f[17]}}, out_add1f} + {{4{out_add2f[17]}}, out_add2f} + {{4{out_add3f[17]}}, out_add3f} + {{4{out_add4f[17]}}, out_add4f} + {{4{out_add5f[17]}}, out_add5f} + {{4{out_add6f[17]}}, out_add6f} + {{4{out_add7f[17]}}, out_add7f} + {{4{out_add8f[17]}}, out_add8f}; //Assign actual audio output always @ (posedge CLOCK_50) begin //Uncomment right side to switch between compressed and not compressed audio out2AUD = audio_sum[18:1];//SW[1] ? out_mix: ((out_add1f+out_add2f+out_add3f+out_add4f)>>>1+(out_add5f+out_add6f+out_add7f+out_add8f)>>>1); end assign out2AUD_wire = out2AUD[17:2]; //COMPRESSOR - inputs all audio from instruments and outputs one mixed audio stream wire signed [17:0] out_mix; combine_audio comb(.audio_clk(AUD_DACLRCK), .inst0({4'b0,out_add1f}), .inst1({4'b0,out_add2f}), .inst2({4'b0,out_add3f}), .inst3({4'b0,out_add4f}), .inst4({4'b0,out_add5f}), .inst5({4'b0,out_add6f}), .inst6({4'b0,out_add7f}), .inst7({4'b0,out_add8f}), .audio_out(out_mix)); ////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// //ADDITIVE SYNTHESIS wire [13:0] out_add1, out_add2, out_add3, out_add4, out_add5, out_add6, out_add7, out_add8; wire signed [17:0] out_add1f, out_add2f, out_add3f, out_add4f, out_add5f, out_add6f, out_add7f, out_add8f; wire signed [17:0] add1, add2, add3, add4, add5; //Define all instruments add_synth(.clk(CLOCK_50), .clk_samp(AUD_DACLRCK), .freq(10'd146), .hit_add(hit_bass), .stop_add(stop_inst), .out(out_add1), .outf(out_add1f), .cycles_per_beat(cycles_per_beat), .division(division), .tempo_addr(tempo_addr), .s8(s8)); add_synth(.clk(CLOCK_50), .clk_samp(AUD_DACLRCK), .freq(10'd156), .hit_add(hit_snare), .stop_add(stop_inst), .out(out_add2), .outf(out_add2f), .cycles_per_beat(cycles_per_beat), .division(division), .tempo_addr(tempo_addr), .s8(s8)); add_synth(.clk(CLOCK_50), .clk_samp(AUD_DACLRCK), .freq(10'd175), .hit_add(hit_hat), .stop_add(stop_inst), .out(out_add3), .outf(out_add3f), .cycles_per_beat(cycles_per_beat), .division(division), .tempo_addr(tempo_addr), .s8(s8)); add_synth(.clk(CLOCK_50), .clk_samp(AUD_DACLRCK), .freq(10'd196), .hit_add(hit_add1), .stop_add(stop_inst), .out(out_add4), .outf(out_add4f), .cycles_per_beat(cycles_per_beat), .division(division), .tempo_addr(tempo_addr), .s8(s8)); add_synth(.clk(CLOCK_50), .clk_samp(AUD_DACLRCK), .freq(10'd262), .hit_add(hit_add2), .stop_add(stop_inst), .out(out_add5), .outf(out_add5f), .cycles_per_beat(cycles_per_beat), .division(division), .tempo_addr(tempo_addr), .s8(s8)); add_synth(.clk(CLOCK_50), .clk_samp(AUD_DACLRCK), .freq(10'd294), .hit_add(hit_add3), .stop_add(stop_inst), .out(out_add6), .outf(out_add6f), .cycles_per_beat(cycles_per_beat), .division(division), .tempo_addr(tempo_addr), .s8(s8)); add_synth(.clk(CLOCK_50), .clk_samp(AUD_DACLRCK), .freq(10'd311), .hit_add(hit_add4), .stop_add(stop_inst), .out(out_add7), .outf(out_add7f), .cycles_per_beat(cycles_per_beat), .division(division), .tempo_addr(tempo_addr), .s8(s8)); add_synth(.clk(CLOCK_50), .clk_samp(AUD_DACLRCK), .freq(10'd349), .hit_add(hit_add5), .stop_add(stop_inst), .out(out_add8), .outf(out_add8f), .cycles_per_beat(cycles_per_beat), .division(division), .tempo_addr(tempo_addr), .s8(s8)); assign add1 = {out_add1[13], out_add1, 3'b0}; assign add2 = {out_add2[13], out_add2, 3'b0}; assign add3 = {out_add3[13], out_add3, 3'b0}; assign add4 = {out_add4[13], out_add4, 3'b0}; assign add5 = {out_add5[13], out_add5, 3'b0}; //Slope for envelope, use LUT slope8 to get 1/cycles_per_beat wire signed [17:0] s8; slope8(.clock(CLOCK_50), .address(tempo_addr), .data_out(s8)); ////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// //SAMPLED SOUNDS parameter N=13'd5000; parameter idle_bass=3'd0, update_bass=3'd1, assign_bass=3'd2, idle_bass2=3'd3, idle_bass3=3'd4; parameter idle_snare=3'd0, update_snare=3'd1, assign_snare=3'd2, idle_snare2=3'd3, idle_snare3=3'd4; parameter idle_hat=3'd0, update_hat=3'd1, assign_hat=3'd2, idle_hat2=3'd3, idle_hat3=3'd4; reg [13:0] bass_addr, snare_addr, hat_addr; wire signed [17:0] bass_rom, snare_rom, hat_rom; reg signed [17:0] bass_out, snare_out, hat_out; reg [2:0] state_bass, state_snare, state_hat; bass (.clock(CLOCK_50), .address(bass_addr), .data_out(bass_rom)); snare (.clock(CLOCK_50), .address(snare_addr), .data_out(snare_rom)); hat (.clock(CLOCK_50), .address(hat_addr), .data_out(hat_rom)); //READ IN SEQUENCE DATA FROM GPIO data_in(.clk(CLOCK_27), .reset(sreset), .GPIO(GPIO_0), .snare_seq(snare_seq), .bass_seq(bass_seq), .hat_seq(hat_seq), .outLED(LEDG[3:0]), .add1_seq(add1_seq), .add2_seq(add2_seq), .add3_seq(add3_seq), .add4_seq(add4_seq), .add5_seq(add5_seq)); //Bass drum state machine, toggle_bass is required to cut sampling rate in half because the sampled sounds were downsampled by 2! assign LEDR[17:15] = state_bass; reg toggle_bass; always @ (posedge CLOCK_27) begin if (stop_samp) begin state_bass <= idle_bass; end else begin case (state_bass) //Wait for hit idle_bass: begin state_bass <= (hit_bass) ? update_bass: idle_bass; bass_addr <= 13'b0; bass_out <= 18'b0; end //Update ROM address on high cycle of AUD_DACLRCK update_bass: begin state_bass <= (bass_addr<N) ? idle_bass2: idle_bass; bass_addr <= (toggle_bass) ? bass_addr: (bass_addr + 1'b1); toggle_bass <= !toggle_bass; end //Wait for low cycle of AUD_DACLRCK idle_bass2: begin state_bass <= (AUD_DACLRCK) ? idle_bass2: assign_bass; end //Assign audio output on low cycle of AUD_DACLRCK assign_bass: begin state_bass <= idle_bass3; bass_out <= bass_rom; end //Wait for high cycle of AUD_DACLRCK idle_bass3: begin state_bass <= (AUD_DACLRCK) ? update_bass: idle_bass3; end default: state_bass <= idle_bass; endcase end end //Snare state machine, see comments from bass state machine reg toggle_snare; always @ (posedge CLOCK_27) begin if (stop_samp) begin state_snare <= idle_snare; end else begin case (state_snare) idle_snare: begin state_snare <= (hit_snare) ? update_snare: idle_snare; snare_addr <= 13'b0; snare_out <= 18'b0; end update_snare: begin state_snare <= (snare_addr<N) ? idle_snare2: idle_snare; snare_addr <= (toggle_snare) ? snare_addr: (snare_addr + 1'b1); toggle_snare <= !toggle_snare; end idle_snare2: begin state_snare <= (AUD_DACLRCK) ? idle_snare2: assign_snare; end assign_snare: begin state_snare <= idle_snare3; snare_out <= snare_rom; end idle_snare3: begin state_snare <= (AUD_DACLRCK) ? update_snare: idle_snare3; end default: state_snare <= idle_snare; endcase end end //Hat state machine, see comments from bass state machine reg toggle_hat; always @ (posedge CLOCK_27) begin if (stop_samp) begin state_hat <= idle_hat; end else begin case (state_hat) idle_hat: begin state_hat <= (hit_hat) ? update_hat: idle_hat; hat_addr <= 13'b0; hat_out <= 18'b0; end update_hat: begin state_hat <= (hat_addr<N) ? idle_hat2: idle_hat; hat_addr <= (toggle_hat) ? hat_addr: (hat_addr + 1'b1); toggle_hat <= !toggle_hat; end idle_hat2: begin state_hat <= (AUD_DACLRCK) ? idle_hat2: assign_hat; end assign_hat: begin state_hat <= idle_hat3; hat_out <= hat_rom; end idle_hat3: begin state_hat <= (AUD_DACLRCK) ? update_hat: idle_hat3; end default: state_hat <= idle_hat; endcase end end ////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// //SEQUENCER CODE parameter TEMPO_FACTOR = 32'd3000000000; //Clock frequency (cyc/sec) * 60 sec parameter STATE_PLAY = 4'd0; parameter STATE_REST = 4'd1; wire [15:0] bass_seq, snare_seq, hat_seq, add1_seq, add2_seq, add3_seq, add4_seq, add5_seq; //use switches for sequencing reg [8:0] tempo = 9'd130; //tempo in beats per min reg [31:0] time_count; wire [31:0] time_count_n, cycles_per_beat; wire [1:0] division; //subdivision, 1 corresponds to eigth note, 2 is sixteenth reg [3:0] curr_beat, seq_state; wire [3:0] curr_beat_n; reg [7:0] tempo_addr = 8'b10000000; wire [31:0] eight_out, sixteen_out; reg [31:0] count; reg hit_bass, hit_snare, hit_hat, stop_inst, stop_samp, hit_add1, hit_add2, hit_add3, hit_add4, hit_add5; //SEQUENCER STATE MACHINE always @ (posedge CLOCK_50) begin if (sreset) begin time_count <= 32'b0; curr_beat <= 4'b0; end else begin case (seq_state) //This happens on every beat, then go to rest //Just assign outputs based on all sequences STATE_PLAY: begin hit_bass <= bass_seq[curr_beat]; hit_snare <= snare_seq[curr_beat]; hit_hat <= hat_seq[curr_beat]; hit_add1 <= add1_seq[curr_beat]; hit_add2 <= add2_seq[curr_beat]; hit_add3 <= add3_seq[curr_beat]; hit_add4 <= add4_seq[curr_beat]; hit_add5 <= add5_seq[curr_beat]; seq_state <= STATE_REST; time_count <= 32'b0; stop_inst <= 1'b0; stop_samp <= 1'b0; end //Stop all instrument outputs about 10000 cycles before next hit to prevent overlap and overflow STATE_REST: begin stop_inst <= (time_count > (cycles_per_beat-10000)) ? 1'b1: 1'b0; stop_samp <= (time_count > (cycles_per_beat-100)) ? 1'b1: 1'b0; hit_bass <= (time_count > (cycles_per_beat-10000)) ? 1'b0: hit_bass; hit_snare <= (time_count > (cycles_per_beat-10000)) ? 1'b0: hit_snare; hit_hat <= (time_count > (cycles_per_beat-10000)) ? 1'b0: hit_hat; hit_add1 <= (time_count > (cycles_per_beat-10000)) ? 1'b0: hit_add1; hit_add2 <= (time_count > (cycles_per_beat-10000)) ? 1'b0: hit_add2; hit_add3 <= (time_count > (cycles_per_beat-10000)) ? 1'b0: hit_add3; hit_add4 <= (time_count > (cycles_per_beat-10000)) ? 1'b0: hit_add4; hit_add5 <= (time_count > (cycles_per_beat-10000)) ? 1'b0: hit_add5; time_count <= time_count_n; if (time_count >= cycles_per_beat) begin curr_beat <= curr_beat_n; seq_state <= STATE_PLAY; end end default: seq_state <= STATE_REST; endcase end end assign time_count_n = time_count + 32'b1; assign curr_beat_n = (curr_beat == 4'd0) ? 4'd15 : (curr_beat-4'd1); //wrap around current beat assign division = (SW[0]) ? 4'd2: 4'd1; //enforce either sixteen or eight note divisions //TEMPO FETCH always @ (posedge CLOCK_50) begin //interrupt at 100 ms intervals when up or down is pressed count = (tempo_up || tempo_down) ? (count+32'b1) : 32'b0; if (count >= 32'd1000000) begin count = 0; //increment or decrement tempo address, enforce boundaries (40-250 BPM) if (tempo_up) tempo_addr = (tempo_addr < 8'b11010010) ? (tempo_addr+1'd1): tempo_addr; else tempo_addr = (tempo_addr > 8'b00000000) ? (tempo_addr-1'd1): tempo_addr; end end //Look up table to get cycles_per_beat based on a sixteenth note interval sixteen_note sixteen(.clock(CLOCK_50), .address(tempo_addr), .data_out(sixteen_out)); assign cycles_per_beat = (division == 4'd2) ? sixteen_out: (sixteen_out<<1); // pick cycles per beat based on division endmodule

data_in.v

Module to read in sequences from GPIO

Exported from Notepad++
//The purpose of this module is to read in 8 16 bit words from MATLAB through the GPIO pins //Inputs - clk (CLOCK_27), reset, GPIO (GPIO_0) //Outputs - all instruments sequences, and outLED for debugging module data_in (clk, reset, GPIO, snare_seq, bass_seq, hat_seq, outLED, add1_seq, add2_seq, add3_seq, add4_seq, add5_seq); ////////////////////////////////////////////////////////////////////////////// //CODE FOR CLOCKS wire CLOCK_HALF; reg count_half; wire cound_half_n; //make 27/2 MHz clock to really slow down the input gathering always @ (posedge clk) begin count_half <= count_half_n; end assign count_half_n = (count_half == 1'b1) ? 1'b0: 1'b1; assign CLOCK_HALF = count_half; ////////////////////////////////////////////////////////////////////// //THIS IS MY CODE FOR GPIO INPUT //Define ins and outs input clk, reset; input [35:0] GPIO; output reg [15:0] snare_seq, bass_seq, hat_seq, add1_seq, add2_seq, add3_seq, add4_seq, add5_seq; output [3:0] outLED; //define state parameters localparam idle_io=4'd0, msb_io=4'd6, idle2_io=4'd2, lsb_io=4'd3, idle3_io=4'd4, send_io=4'd5, M=4'd8; //Define local wires and regs wire read_in = GPIO[8]; reg [15:0] new_word; reg word_done, input_almost_done, input_done; reg [7:0] word_counter; reg [3:0] state_io; reg [15:0] temp_data[0:7]; //State machine operates at 13.5 MHz always @ (posedge CLOCK_HALF) begin if (reset) begin state_io <= idle_io; word_counter <= 7'b0; end else begin case (state_io) //Wait for high on read_in bit idle_io: begin state_io <= (read_in) ? msb_io: idle_io; end //Read in top half of word msb_io: begin new_word[15:8] <= {GPIO[0],GPIO[1],GPIO[2],GPIO[3],GPIO[4],GPIO[5],GPIO[6],GPIO[7]}; state_io <= idle2_io; end //Wait for low on read_in bit idle2_io: begin state_io <= (read_in) ? idle2_io: lsb_io; end //Read in bottom half of word lsb_io: begin new_word[7:0] <= {GPIO[0],GPIO[1],GPIO[2],GPIO[3],GPIO[4],GPIO[5],GPIO[6],GPIO[7]}; word_counter <= word_counter + 1'b1; state_io <= idle3_io; end //Wait for next word unlesss 8 words have been read idle3_io: begin temp_data[word_counter - 1] <= new_word; state_io <= (word_counter == M) ? send_io: idle_io; end //Assign all read words to output sequences send_io: begin bass_seq <= temp_data[0]; snare_seq <= temp_data[1]; hat_seq <= temp_data[2]; add1_seq <= temp_data[3]; add2_seq <= temp_data[4]; add3_seq <= temp_data[5]; add4_seq <= temp_data[6]; add5_seq <= temp_data[7]; word_counter <= 8'b0; state_io <= idle_io; end default: begin state_io <= idle_io; end endcase end end assign outLED = state_io; endmodule //////////////////////////////////////////////////////////////////////

add_synth.v

Module to additively synthesize notes

Exported from Notepad++
//The purpose of this module is to generate additively synthesized sounds upon a trigger 'hit_add' //Inputs - clk (CLOCK_50), clk_samp (AUD_DACLRCK or the sampling clock), freq (the fundamental in Hz), //hit_add - a positive edge triggers a hit, stop_add - on high triggers stop, cycles_per_beat - cycles of 50MHz between eighth notes //tempo_addr - the address corresponding to the tempo in the cycles_per_beat LUT, s8 - 1/cycles_per_beat (from LUT) //Outputs - out - non-enveloped 14 bit output, outf - enveloped 2.16 output, module add_synth(clk, clk_samp, freq, hit_add, stop_add, out, outf, cycles_per_beat, division, tempo_addr, s8); //Define inputs/outputs input clk, hit_add, stop_add, clk_samp; input [9:0] freq; input [1:0] division; input [7:0] tempo_addr; input [31:0] cycles_per_beat; output reg [13:0] out; output reg signed [17:0] outf; input signed [17:0] s8; //Define states localparam idle_add=2'd0, update_add=2'd1, assign_add=2'd2; //Define local wires/regs reg [31:0] acc1, acc2, acc3; wire [31:0] inc; reg [31:0] decayt, sustaint, releaset, attackt, fallt; wire [9:0] sin1, sin2, sin3; wire signed [17:0] sin1f, sin2f, sin3f; reg [1:0] state_add; reg [31:0] time_count, time_count2; wire signed [17:0] slope, slope_inc; reg signed [17:0] env; wire signed [35:0] mult_out; //Additive state machine at CLOCK_50 always @ (posedge clk) begin case (state_add) //Be ready to hit at any time idle_add: begin state_add <= (hit_add) ? update_add: idle_add; time_count <= 10'b0; //decayt <= (cycles_per_beat>>3); //Key Envelope time points (1/4, 3/4 of cycles_per_beat) sustaint <= (cycles_per_beat>>1)+(cycles_per_beat>>2); releaset <= (cycles_per_beat>>1)+(cycles_per_beat>>2)+(cycles_per_beat>>3)+(cycles_per_beat>>4); attackt <= (cycles_per_beat>>2); fallt <= cycles_per_beat; time_count <= 32'b0; time_count2 <= 32'b0; env <= 18'b0; end //Once hit, keep updating to generate appropriate frequency and amplitude envelope update_add: begin //Increment DDS registers acc1 <= acc1 + inc; acc2 <= acc2 + inc<<1; acc3 <= acc3 + inc<<1 + inc; state_add <= (stop_add) ? idle_add: update_add; //Apply envelope depending on where we are in the beat-to-beat cycle if (time_count >= 14'd10000) begin time_count <= 32'b0; //In first 1/4, increment envelope, then sustain in next 1/2, then decrement envelope to 0 in next 1/4 env <= (time_count2 <= attackt) ? (env+slope_inc): ((time_count2<=sustaint) ? (env): ((time_count2<=fallt) ? (env-slope_inc): 18'b0)); end else begin time_count <= time_count + 1'b1; end time_count2 <= time_count2 + 1'b1; end default: begin state_add <= idle_add; end endcase end //Assign DDS increment assign inc = (43 * freq)<<2; //Assign outputs always @ (posedge clk_samp) begin out <= sin1 + sin2 + (sin3>>1); outf <= {mult_out[35], mult_out[32:16]}; end //Generate three harmonics from sine table below tab(.clock(clk), .address(acc1[31:24]), .sine(sin1)); tab(.clock(clk), .address(acc2[31:24]), .sine(sin2)); tab(.clock(clk), .address(acc3[31:24]), .sine(sin3)); //Change slope based on 1/8th note or 1/16th note (division) assign slope = (division==4'd2) ? (s8>>>1): s8; assign slope_inc = (slope << 2)+(slope<<1); //slope = 1/(8x) assign mult_out = env*{out[13], out, 3'b0}; //multiply envelope by output to get 2.16 number endmodule /////////////////////////////////////////////// // Infer ROM storage // for a sin table for the DDS // Taken from Joe Montanino, Additive Ocarina: // http://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2011/emr76_jmm536/emr76_jmm536/index.html module tab (clock, address, sine); input clock; input [7:0] address; output [9:0] sine; reg [9:0] sine; always @ (posedge clock) begin case (address) 8'h00: sine = 10'h200 ; 8'h01: sine = 10'h20c ; 8'h02: sine = 10'h219 ; 8'h03: sine = 10'h225 ; 8'h04: sine = 10'h232 ; 8'h05: sine = 10'h23e ; 8'h06: sine = 10'h24a ; 8'h07: sine = 10'h257 ; 8'h08: sine = 10'h263 ; 8'h09: sine = 10'h26f ; 8'h0a: sine = 10'h27c ; 8'h0b: sine = 10'h288 ; 8'h0c: sine = 10'h294 ; 8'h0d: sine = 10'h2a0 ; 8'h0e: sine = 10'h2ac ; 8'h0f: sine = 10'h2b7 ; 8'h10: sine = 10'h2c3 ; 8'h11: sine = 10'h2cf ; 8'h12: sine = 10'h2da ; 8'h13: sine = 10'h2e5 ; 8'h14: sine = 10'h2f0 ; 8'h15: sine = 10'h2fb ; 8'h16: sine = 10'h306 ; 8'h17: sine = 10'h311 ; 8'h18: sine = 10'h31b ; 8'h19: sine = 10'h326 ; 8'h1a: sine = 10'h330 ; 8'h1b: sine = 10'h33a ; 8'h1c: sine = 10'h344 ; 8'h1d: sine = 10'h34d ; 8'h1e: sine = 10'h357 ; 8'h1f: sine = 10'h360 ; 8'h20: sine = 10'h369 ; 8'h21: sine = 10'h372 ; 8'h22: sine = 10'h37a ; 8'h23: sine = 10'h382 ; 8'h24: sine = 10'h38b ; 8'h25: sine = 10'h392 ; 8'h26: sine = 10'h39a ; 8'h27: sine = 10'h3a1 ; 8'h28: sine = 10'h3a8 ; 8'h29: sine = 10'h3af ; 8'h2a: sine = 10'h3b6 ; 8'h2b: sine = 10'h3bc ; 8'h2c: sine = 10'h3c2 ; 8'h2d: sine = 10'h3c8 ; 8'h2e: sine = 10'h3cd ; 8'h2f: sine = 10'h3d3 ; 8'h30: sine = 10'h3d8 ; 8'h31: sine = 10'h3dc ; 8'h32: sine = 10'h3e1 ; 8'h33: sine = 10'h3e5 ; 8'h34: sine = 10'h3e8 ; 8'h35: sine = 10'h3ec ; 8'h36: sine = 10'h3ef ; 8'h37: sine = 10'h3f2 ; 8'h38: sine = 10'h3f5 ; 8'h39: sine = 10'h3f7 ; 8'h3a: sine = 10'h3f9 ; 8'h3b: sine = 10'h3fb ; 8'h3c: sine = 10'h3fc ; 8'h3d: sine = 10'h3fd ; 8'h3e: sine = 10'h3fe ; 8'h3f: sine = 10'h3fe ; 8'h40: sine = 10'h3ff ; 8'h41: sine = 10'h3fe ; 8'h42: sine = 10'h3fe ; 8'h43: sine = 10'h3fd ; 8'h44: sine = 10'h3fc ; 8'h45: sine = 10'h3fb ; 8'h46: sine = 10'h3f9 ; 8'h47: sine = 10'h3f7 ; 8'h48: sine = 10'h3f5 ; 8'h49: sine = 10'h3f2 ; 8'h4a: sine = 10'h3ef ; 8'h4b: sine = 10'h3ec ; 8'h4c: sine = 10'h3e8 ; 8'h4d: sine = 10'h3e5 ; 8'h4e: sine = 10'h3e1 ; 8'h4f: sine = 10'h3dc ; 8'h50: sine = 10'h3d8 ; 8'h51: sine = 10'h3d3 ; 8'h52: sine = 10'h3cd ; 8'h53: sine = 10'h3c8 ; 8'h54: sine = 10'h3c2 ; 8'h55: sine = 10'h3bc ; 8'h56: sine = 10'h3b6 ; 8'h57: sine = 10'h3af ; 8'h58: sine = 10'h3a8 ; 8'h59: sine = 10'h3a1 ; 8'h5a: sine = 10'h39a ; 8'h5b: sine = 10'h392 ; 8'h5c: sine = 10'h38b ; 8'h5d: sine = 10'h382 ; 8'h5e: sine = 10'h37a ; 8'h5f: sine = 10'h372 ; 8'h60: sine = 10'h369 ; 8'h61: sine = 10'h360 ; 8'h62: sine = 10'h357 ; 8'h63: sine = 10'h34d ; 8'h64: sine = 10'h344 ; 8'h65: sine = 10'h33a ; 8'h66: sine = 10'h330 ; 8'h67: sine = 10'h326 ; 8'h68: sine = 10'h31b ; 8'h69: sine = 10'h311 ; 8'h6a: sine = 10'h306 ; 8'h6b: sine = 10'h2fb ; 8'h6c: sine = 10'h2f0 ; 8'h6d: sine = 10'h2e5 ; 8'h6e: sine = 10'h2da ; 8'h6f: sine = 10'h2cf ; 8'h70: sine = 10'h2c3 ; 8'h71: sine = 10'h2b7 ; 8'h72: sine = 10'h2ac ; 8'h73: sine = 10'h2a0 ; 8'h74: sine = 10'h294 ; 8'h75: sine = 10'h288 ; 8'h76: sine = 10'h27c ; 8'h77: sine = 10'h26f ; 8'h78: sine = 10'h263 ; 8'h79: sine = 10'h257 ; 8'h7a: sine = 10'h24a ; 8'h7b: sine = 10'h23e ; 8'h7c: sine = 10'h232 ; 8'h7d: sine = 10'h225 ; 8'h7e: sine = 10'h219 ; 8'h7f: sine = 10'h20c ; 8'h80: sine = 10'h200 ; 8'h81: sine = 10'h1f3 ; 8'h82: sine = 10'h1e6 ; 8'h83: sine = 10'h1da ; 8'h84: sine = 10'h1cd ; 8'h85: sine = 10'h1c1 ; 8'h86: sine = 10'h1b5 ; 8'h87: sine = 10'h1a8 ; 8'h88: sine = 10'h19c ; 8'h89: sine = 10'h190 ; 8'h8a: sine = 10'h183 ; 8'h8b: sine = 10'h177 ; 8'h8c: sine = 10'h16b ; 8'h8d: sine = 10'h15f ; 8'h8e: sine = 10'h153 ; 8'h8f: sine = 10'h148 ; 8'h90: sine = 10'h13c ; 8'h91: sine = 10'h130 ; 8'h92: sine = 10'h125 ; 8'h93: sine = 10'h11a ; 8'h94: sine = 10'h10f ; 8'h95: sine = 10'h104 ; 8'h96: sine = 10'h0f9 ; 8'h97: sine = 10'h0ee ; 8'h98: sine = 10'h0e4 ; 8'h99: sine = 10'h0d9 ; 8'h9a: sine = 10'h0cf ; 8'h9b: sine = 10'h0c5 ; 8'h9c: sine = 10'h0bb ; 8'h9d: sine = 10'h0b2 ; 8'h9e: sine = 10'h0a8 ; 8'h9f: sine = 10'h09f ; 8'ha0: sine = 10'h096 ; 8'ha1: sine = 10'h08d ; 8'ha2: sine = 10'h085 ; 8'ha3: sine = 10'h07d ; 8'ha4: sine = 10'h074 ; 8'ha5: sine = 10'h06d ; 8'ha6: sine = 10'h065 ; 8'ha7: sine = 10'h05e ; 8'ha8: sine = 10'h057 ; 8'ha9: sine = 10'h050 ; 8'haa: sine = 10'h049 ; 8'hab: sine = 10'h043 ; 8'hac: sine = 10'h03d ; 8'had: sine = 10'h037 ; 8'hae: sine = 10'h032 ; 8'haf: sine = 10'h02c ; 8'hb0: sine = 10'h027 ; 8'hb1: sine = 10'h023 ; 8'hb2: sine = 10'h01e ; 8'hb3: sine = 10'h01a ; 8'hb4: sine = 10'h017 ; 8'hb5: sine = 10'h013 ; 8'hb6: sine = 10'h010 ; 8'hb7: sine = 10'h00d ; 8'hb8: sine = 10'h00a ; 8'hb9: sine = 10'h008 ; 8'hba: sine = 10'h006 ; 8'hbb: sine = 10'h004 ; 8'hbc: sine = 10'h003 ; 8'hbd: sine = 10'h002 ; 8'hbe: sine = 10'h001 ; 8'hbf: sine = 10'h001 ; 8'hc0: sine = 10'h001 ; 8'hc1: sine = 10'h001 ; 8'hc2: sine = 10'h001 ; 8'hc3: sine = 10'h002 ; 8'hc4: sine = 10'h003 ; 8'hc5: sine = 10'h004 ; 8'hc6: sine = 10'h006 ; 8'hc7: sine = 10'h008 ; 8'hc8: sine = 10'h00a ; 8'hc9: sine = 10'h00d ; 8'hca: sine = 10'h010 ; 8'hcb: sine = 10'h013 ; 8'hcc: sine = 10'h017 ; 8'hcd: sine = 10'h01a ; 8'hce: sine = 10'h01e ; 8'hcf: sine = 10'h023 ; 8'hd0: sine = 10'h027 ; 8'hd1: sine = 10'h02c ; 8'hd2: sine = 10'h032 ; 8'hd3: sine = 10'h037 ; 8'hd4: sine = 10'h03d ; 8'hd5: sine = 10'h043 ; 8'hd6: sine = 10'h049 ; 8'hd7: sine = 10'h050 ; 8'hd8: sine = 10'h057 ; 8'hd9: sine = 10'h05e ; 8'hda: sine = 10'h065 ; 8'hdb: sine = 10'h06d ; 8'hdc: sine = 10'h074 ; 8'hdd: sine = 10'h07d ; 8'hde: sine = 10'h085 ; 8'hdf: sine = 10'h08d ; 8'he0: sine = 10'h096 ; 8'he1: sine = 10'h09f ; 8'he2: sine = 10'h0a8 ; 8'he3: sine = 10'h0b2 ; 8'he4: sine = 10'h0bb ; 8'he5: sine = 10'h0c5 ; 8'he6: sine = 10'h0cf ; 8'he7: sine = 10'h0d9 ; 8'he8: sine = 10'h0e4 ; 8'he9: sine = 10'h0ee ; 8'hea: sine = 10'h0f9 ; 8'heb: sine = 10'h104 ; 8'hec: sine = 10'h10f ; 8'hed: sine = 10'h11a ; 8'hee: sine = 10'h125 ; 8'hef: sine = 10'h130 ; 8'hf0: sine = 10'h13c ; 8'hf1: sine = 10'h148 ; 8'hf2: sine = 10'h153 ; 8'hf3: sine = 10'h15f ; 8'hf4: sine = 10'h16b ; 8'hf5: sine = 10'h177 ; 8'hf6: sine = 10'h183 ; 8'hf7: sine = 10'h190 ; 8'hf8: sine = 10'h19c ; 8'hf9: sine = 10'h1a8 ; 8'hfa: sine = 10'h1b5 ; 8'hfb: sine = 10'h1c1 ; 8'hfc: sine = 10'h1cd ; 8'hfd: sine = 10'h1da ; 8'hfe: sine = 10'h1e6 ; 8'hff: sine = 10'h1f3 ; endcase end endmodule

slope_ROM.v

LUT of 1/cycles

Exported from Notepad++
//The purpose of this LUT is to give back 1/cycles_per_beat where cycles_per_beat is the number of 50MHz cycles in between 2 eighth notes //The address corresponds to the tempo and goes from 50-240BPM in intervals of 1 BPM module slope8 (clock, address, data_out); input clock; input [7:0] address; output [17:0] data_out; reg [17:0] data_out; always @ (posedge clock) begin case (address) 8'b00000000: data_out = 18'h00011; 8'b00000001: data_out = 18'h00012; 8'b00000010: data_out = 18'h00012; 8'b00000011: data_out = 18'h00013; 8'b00000100: data_out = 18'h00013; 8'b00000101: data_out = 18'h00014; 8'b00000110: data_out = 18'h00014; 8'b00000111: data_out = 18'h00015; 8'b00001000: data_out = 18'h00015; 8'b00001001: data_out = 18'h00015; 8'b00001010: data_out = 18'h00016; 8'b00001011: data_out = 18'h00016; 8'b00001100: data_out = 18'h00017; 8'b00001101: data_out = 18'h00017; 8'b00001110: data_out = 18'h00018; 8'b00001111: data_out = 18'h00018; 8'b00010000: data_out = 18'h00018; 8'b00010001: data_out = 18'h00019; 8'b00010010: data_out = 18'h00019; 8'b00010011: data_out = 18'h0001a; 8'b00010100: data_out = 18'h0001a; 8'b00010101: data_out = 18'h0001b; 8'b00010110: data_out = 18'h0001b; 8'b00010111: data_out = 18'h0001c; 8'b00011000: data_out = 18'h0001c; 8'b00011001: data_out = 18'h0001c; 8'b00011010: data_out = 18'h0001d; 8'b00011011: data_out = 18'h0001d; 8'b00011100: data_out = 18'h0001e; 8'b00011101: data_out = 18'h0001e; 8'b00011110: data_out = 18'h0001f; 8'b00011111: data_out = 18'h0001f; 8'b00100000: data_out = 18'h0001f; 8'b00100001: data_out = 18'h00020; 8'b00100010: data_out = 18'h00020; 8'b00100011: data_out = 18'h00021; 8'b00100100: data_out = 18'h00021; 8'b00100101: data_out = 18'h00022; 8'b00100110: data_out = 18'h00022; 8'b00100111: data_out = 18'h00023; 8'b00101000: data_out = 18'h00023; 8'b00101001: data_out = 18'h00023; 8'b00101010: data_out = 18'h00024; 8'b00101011: data_out = 18'h00024; 8'b00101100: data_out = 18'h00025; 8'b00101101: data_out = 18'h00025; 8'b00101110: data_out = 18'h00026; 8'b00101111: data_out = 18'h00026; 8'b00110000: data_out = 18'h00026; 8'b00110001: data_out = 18'h00027; 8'b00110010: data_out = 18'h00027; 8'b00110011: data_out = 18'h00028; 8'b00110100: data_out = 18'h00028; 8'b00110101: data_out = 18'h00029; 8'b00110110: data_out = 18'h00029; 8'b00110111: data_out = 18'h0002a; 8'b00111000: data_out = 18'h0002a; 8'b00111001: data_out = 18'h0002a; 8'b00111010: data_out = 18'h0002b; 8'b00111011: data_out = 18'h0002b; 8'b00111100: data_out = 18'h0002c; 8'b00111101: data_out = 18'h0002c; 8'b00111110: data_out = 18'h0002d; 8'b00111111: data_out = 18'h0002d; 8'b01000000: data_out = 18'h0002d; 8'b01000001: data_out = 18'h0002e; 8'b01000010: data_out = 18'h0002e; 8'b01000011: data_out = 18'h0002f; 8'b01000100: data_out = 18'h0002f; 8'b01000101: data_out = 18'h00030; 8'b01000110: data_out = 18'h00030; 8'b01000111: data_out = 18'h00030; 8'b01001000: data_out = 18'h00031; 8'b01001001: data_out = 18'h00031; 8'b01001010: data_out = 18'h00032; 8'b01001011: data_out = 18'h00032; 8'b01001100: data_out = 18'h00033; 8'b01001101: data_out = 18'h00033; 8'b01001110: data_out = 18'h00034; 8'b01001111: data_out = 18'h00034; 8'b01010000: data_out = 18'h00034; 8'b01010001: data_out = 18'h00035; 8'b01010010: data_out = 18'h00035; 8'b01010011: data_out = 18'h00036; 8'b01010100: data_out = 18'h00036; 8'b01010101: data_out = 18'h00037; 8'b01010110: data_out = 18'h00037; 8'b01010111: data_out = 18'h00037; 8'b01011000: data_out = 18'h00038; 8'b01011001: data_out = 18'h00038; 8'b01011010: data_out = 18'h00039; 8'b01011011: data_out = 18'h00039; 8'b01011100: data_out = 18'h0003a; 8'b01011101: data_out = 18'h0003a; 8'b01011110: data_out = 18'h0003b; 8'b01011111: data_out = 18'h0003b; 8'b01100000: data_out = 18'h0003b; 8'b01100001: data_out = 18'h0003c; 8'b01100010: data_out = 18'h0003c; 8'b01100011: data_out = 18'h0003d; 8'b01100100: data_out = 18'h0003d; 8'b01100101: data_out = 18'h0003e; 8'b01100110: data_out = 18'h0003e; 8'b01100111: data_out = 18'h0003e; 8'b01101000: data_out = 18'h0003f; 8'b01101001: data_out = 18'h0003f; 8'b01101010: data_out = 18'h00040; 8'b01101011: data_out = 18'h00040; 8'b01101100: data_out = 18'h00041; 8'b01101101: data_out = 18'h00041; 8'b01101110: data_out = 18'h00042; 8'b01101111: data_out = 18'h00042; 8'b01110000: data_out = 18'h00042; 8'b01110001: data_out = 18'h00043; 8'b01110010: data_out = 18'h00043; 8'b01110011: data_out = 18'h00044; 8'b01110100: data_out = 18'h00044; 8'b01110101: data_out = 18'h00045; 8'b01110110: data_out = 18'h00045; 8'b01110111: data_out = 18'h00045; 8'b01111000: data_out = 18'h00046; 8'b01111001: data_out = 18'h00046; 8'b01111010: data_out = 18'h00047; 8'b01111011: data_out = 18'h00047; 8'b01111100: data_out = 18'h00048; 8'b01111101: data_out = 18'h00048; 8'b01111110: data_out = 18'h00049; 8'b01111111: data_out = 18'h00049; 8'b10000000: data_out = 18'h00049; 8'b10000001: data_out = 18'h0004a; 8'b10000010: data_out = 18'h0004a; 8'b10000011: data_out = 18'h0004b; 8'b10000100: data_out = 18'h0004b; 8'b10000101: data_out = 18'h0004c; 8'b10000110: data_out = 18'h0004c; 8'b10000111: data_out = 18'h0004c; 8'b10001000: data_out = 18'h0004d; 8'b10001001: data_out = 18'h0004d; 8'b10001010: data_out = 18'h0004e; 8'b10001011: data_out = 18'h0004e; 8'b10001100: data_out = 18'h0004f; 8'b10001101: data_out = 18'h0004f; 8'b10001110: data_out = 18'h00050; 8'b10001111: data_out = 18'h00050; 8'b10010000: data_out = 18'h00050; 8'b10010001: data_out = 18'h00051; 8'b10010010: data_out = 18'h00051; 8'b10010011: data_out = 18'h00052; 8'b10010100: data_out = 18'h00052; 8'b10010101: data_out = 18'h00053; 8'b10010110: data_out = 18'h00053; 8'b10010111: data_out = 18'h00053; 8'b10011000: data_out = 18'h00054; 8'b10011001: data_out = 18'h00054; 8'b10011010: data_out = 18'h00055; 8'b10011011: data_out = 18'h00055; 8'b10011100: data_out = 18'h00056; 8'b10011101: data_out = 18'h00056; 8'b10011110: data_out = 18'h00057; 8'b10011111: data_out = 18'h00057; 8'b10100000: data_out = 18'h00057; 8'b10100001: data_out = 18'h00058; 8'b10100010: data_out = 18'h00058; 8'b10100011: data_out = 18'h00059; 8'b10100100: data_out = 18'h00059; 8'b10100101: data_out = 18'h0005a; 8'b10100110: data_out = 18'h0005a; 8'b10100111: data_out = 18'h0005a; 8'b10101000: data_out = 18'h0005b; 8'b10101001: data_out = 18'h0005b; 8'b10101010: data_out = 18'h0005c; 8'b10101011: data_out = 18'h0005c; 8'b10101100: data_out = 18'h0005d; 8'b10101101: data_out = 18'h0005d; 8'b10101110: data_out = 18'h0005d; 8'b10101111: data_out = 18'h0005e; 8'b10110000: data_out = 18'h0005e; 8'b10110001: data_out = 18'h0005f; 8'b10110010: data_out = 18'h0005f; 8'b10110011: data_out = 18'h00060; 8'b10110100: data_out = 18'h00060; 8'b10110101: data_out = 18'h00061; 8'b10110110: data_out = 18'h00061; 8'b10110111: data_out = 18'h00061; 8'b10111000: data_out = 18'h00062; 8'b10111001: data_out = 18'h00062; 8'b10111010: data_out = 18'h00063; 8'b10111011: data_out = 18'h00063; 8'b10111100: data_out = 18'h00064; 8'b10111101: data_out = 18'h00064; 8'b10111110: data_out = 18'h00064; 8'b10111111: data_out = 18'h00065; 8'b11000000: data_out = 18'h00065; 8'b11000001: data_out = 18'h00066; 8'b11000010: data_out = 18'h00066; 8'b11000011: data_out = 18'h00067; 8'b11000100: data_out = 18'h00067; 8'b11000101: data_out = 18'h00068; 8'b11000110: data_out = 18'h00068; 8'b11000111: data_out = 18'h00068; 8'b11001000: data_out = 18'h00069; 8'b11001001: data_out = 18'h00069; 8'b11001010: data_out = 18'h0006a; 8'b11001011: data_out = 18'h0006a; 8'b11001100: data_out = 18'h0006b; 8'b11001101: data_out = 18'h0006b; 8'b11001110: data_out = 18'h0006b; 8'b11001111: data_out = 18'h0006c; 8'b11010000: data_out = 18'h0006c; 8'b11010001: data_out = 18'h0006d; 8'b11010010: data_out = 18'h0006d; default: data_out = 18'h00000000; endcase end endmodule

sounds.v

LUT of sampled sounds

Exported from Notepad++
//This module contains ROMs for bass, snare, and hat sounds //These sounds have already been downsampled by 2 module bass (clock, address, data_out); input clock; input [12:0] address; output [17:0] data_out; reg [17:0] data_out; always @ (posedge clock) begin case (address) 13'b0000000000000: data_out = 18'h3fbca; 13'b0000000000001: data_out = 18'h3f816; 13'b0000000000010: data_out = 18'h0155c; 13'b0000000000011: data_out = 18'h3e94a; 13'b0000000000100: data_out = 18'h01914; 13'b0000000000101: data_out = 18'h3e82f; 13'b0000000000110: data_out = 18'h3cf47; 13'b0000000000111: data_out = 18'h051d1; 13'b0000000001000: data_out = 18'h0291f; 13'b0000000001001: data_out = 18'h3c7cb; 13'b0000000001010: data_out = 18'h022dd; 13'b0000000001011: data_out = 18'h3e6ef; 13'b0000000001100: data_out = 18'h3f854; 13'b0000000001101: data_out = 18'h3f044; 13'b0000000001110: data_out = 18'h3fff2; 13'b0000000001111: data_out = 18'h3f9a4; 13'b0000000010000: data_out = 18'h3f063; 13'b0000000010001: data_out = 18'h05146; 13'b0000000010010: data_out = 18'h3f3ea; 13'b0000000010011: data_out = 18'h38058; 13'b0000000010100: data_out = 18'h067f8; 13'b0000000010101: data_out = 18'h3fd7b; 13'b0000000010110: data_out = 18'h014e6; 13'b0000000010111: data_out = 18'h3e733; 13'b0000000011000: data_out = 18'h3f1f3; 13'b0000000011001: data_out = 18'h059d5; 13'b0000000011010: data_out = 18'h3afa2; 13'b0000000011011: data_out = 18'h3c259; 13'b0000000011100: data_out = 18'h0607c; 13'b0000000011101: data_out = 18'h02475; 13'b0000000011110: data_out = 18'h3de50; 13'b0000000011111: data_out = 18'h00b15; 13'b0000000100000: data_out = 18'h378af; 13'b0000000100001: data_out = 18'h3f707; 13'b0000000100010: data_out = 18'h05fb5; 13'b0000000100011: data_out = 18'h0719e; 13'b0000000100100: data_out = 18'h014ab; 13'b0000000100101: data_out = 18'h3e5f5; 13'b0000000100110: data_out = 18'h00dd3; 13'b0000000100111: data_out = 18'h37273; 13'b0000000101000: data_out = 18'h3c65f; 13'b0000000101001: data_out = 18'h3900f; 13'b0000000101010: data_out = 18'h02e31; 13'b0000000101011: data_out = 18'h0276c; 13'b0000000101100: data_out = 18'h0006e; 13'b0000000101101: data_out = 18'h0867e; 13'b0000000101110: data_out = 18'h04835; 13'b0000000101111: data_out = 18'h0233a; 13'b0000000110000: data_out = 18'h3df32; 13'b0000000110001: data_out = 18'h3ff1a; 13'b0000000110010: data_out = 18'h3845a; 13'b0000000110011: data_out = 18'h3b331; 13'b0000000110100: data_out = 18'h3f6e5; 13'b0000000110101: data_out = 18'h3a561; 13'b0000000110110: data_out = 18'h3e8f3; 13'b0000000110111: data_out = 18'h064d1; 13'b0000000111000: data_out = 18'h0551c; 13'b0000000111001: data_out = 18'h0589a; 13'b0000000111010: data_out = 18'h09bfa; 13'b0000000111011: data_out = 18'h038e4; 13'b0000000111100: data_out = 18'h3f8cf; 13'b0000000111101: data_out = 18'h00f4a; 13'b0000000111110: data_out = 18'h04157; 13'b0000000111111: data_out = 18'h3e7a7; 13'b0000001000000: data_out = 18'h3f3b7; 13'b0000001000001: data_out = 18'h00f6b; 13'b0000001000010: data_out = 18'h35f40; 13'b0000001000011: data_out = 18'h3c3ff; 13'b0000001000100: data_out = 18'h3b6d2; 13'b0000001000101: data_out = 18'h39600; 13'b0000001000110: data_out = 18'h36b0a; 13'b0000001000111: data_out = 18'h02099; 13'b0000001001000: data_out = 18'h3c447; 13'b0000001001001: data_out = 18'h3f824; 13'b0000001001010: data_out = 18'h05677; 13'b0000001001011: data_out = 18'h3eaee; 13'b0000001001100: data_out = 18'h0567e; 13'b0000001001101: data_out = 18'h061e2; 13'b0000001001110: data_out = 18'h00562; 13'b0000001001111: data_out = 18'h067af; 13'b0000001010000: data_out = 18'h01d81; 13'b0000001010001: data_out = 18'h06682; 13'b0000001010010: data_out = 18'h03dde; 13'b0000001010011: data_out = 18'h3baca; 13'b0000001010100: data_out = 18'h03be3; 13'b0000001010101: data_out = 18'h01efe; 13'b0000001010110: data_out = 18'h3af38; 13'b0000001010111: data_out = 18'h38dcf; 13'b0000001011000: data_out = 18'h3e588; 13'b0000001011001: data_out = 18'h3653e; 13'b0000001011010: data_out = 18'h01a6c; 13'b0000001011011: data_out = 18'h024ca; 13'b0000001011100: data_out = 18'h01026; 13'b0000001011101: data_out = 18'h3eb53; 13'b0000001011110: data_out = 18'h37e2d; 13'b0000001011111: data_out = 18'h3cd6a; 13'b0000001100000: data_out = 18'h3d659; 13'b0000001100001: data_out = 18'h01898; 13'b0000001100010: data_out = 18'h03935; 13'b0000001100011: data_out = 18'h0356b; 13'b0000001100100: data_out = 18'h09138; 13'b0000001100101: data_out = 18'h01c76; 13'b0000001100110: data_out = 18'h050c6; 13'b0000001100111: data_out = 18'h00c22; 13'b0000001101000: data_out = 18'h3fb15; 13'b0000001101001: data_out = 18'h0675b; 13'b0000001101010: data_out = 18'h01fd8; 13'b0000001101011: data_out = 18'h04b72; 13'b0000001101100: data_out = 18'h02edd; 13'b0000001101101: data_out = 18'h025c2; 13'b0000001101110: data_out = 18'h01b8c; 13'b0000001101111: data_out = 18'h072be; 13'b0000001110000: data_out = 18'h02577; 13'b0000001110001: data_out = 18'h04118; 13'b0000001110010: data_out = 18'h3e5bf; 13'b0000001110011: data_out = 18'h3dd4f; 13'b0000001110100: data_out = 18'h3d55e; 13'b0000001110101: data_out = 18'h39965; 13'b0000001110110: data_out = 18'h3b74b; 13'b0000001110111: data_out = 18'h3d580; 13'b0000001111000: data_out = 18'h036b1; 13'b0000001111001: data_out = 18'h01296; 13'b0000001111010: data_out = 18'h3cbb5; 13'b0000001111011: data_out = 18'h3e27e; 13'b0000001111100: data_out = 18'h00413; 13'b0000001111101: data_out = 18'h3bfcb; 13'b0000001111110: data_out = 18'h35912; 13'b0000001111111: data_out = 18'h3bff1; 13'b0000010000000: data_out = 18'h3e7d9; 13'b0000010000001: data_out = 18'h3d654; 13'b0000010000010: data_out = 18'h381b7; 13'b0000010000011: data_out = 18'h3b0d0; 13'b0000010000100: data_out = 18'h39e88; 13'b0000010000101: data_out = 18'h028b1; 13'b0000010000110: data_out = 18'h07791; 13'b0000010000111: data_out = 18'h04a47; 13'b0000010001000: data_out = 18'h066e2; 13'b0000010001001: data_out = 18'h007ce; 13'b0000010001010: data_out = 18'h05704; 13'b0000010001011: data_out = 18'h01229; 13'b0000010001100: data_out = 18'h005e1; 13'b0000010001101: data_out = 18'h01332; 13'b0000010001110: data_out = 18'h01e37; 13'b0000010001111: data_out = 18'h010ca; 13'b0000010010000: data_out = 18'h3d676; 13'b0000010010001: data_out = 18'h3b330; 13'b0000010010010: data_out = 18'h3c0bf; 13'b0000010010011: data_out = 18'h00b1e; 13'b0000010010100: data_out = 18'h3d9a9; 13'b0000010010101: data_out = 18'h03b44; 13'b0000010010110: data_out = 18'h3cd42; 13'b0000010010111: data_out = 18'h3a6dc; 13'b0000010011000: data_out = 18'h3fd96; 13'b0000010011001: data_out = 18'h3c7d4; 13'b0000010011010: data_out = 18'h3c987; 13'b0000010011011: data_out = 18'h02eec; 13'b0000010011100: data_out = 18'h02d48; 13'b0000010011101: data_out = 18'h3ca40; 13'b0000010011110: data_out = 18'h0091e; 13'b0000010011111: data_out = 18'h006fa; 13'b0000010100000: data_out = 18'h01c4e; 13'b0000010100001: data_out = 18'h3dfcf; 13'b0000010100010: data_out = 18'h00846; 13'b0000010100011: data_out = 18'h00480; 13'b0000010100100: data_out = 18'h032cc; 13'b0000010100101: data_out = 18'h01045; 13'b0000010100110: data_out = 18'h3fed4; 13'b0000010100111: data_out = 18'h3de21; 13'b0000010101000: data_out = 18'h3c554; 13'b0000010101001: data_out = 18'h3da24; 13'b0000010101010: data_out = 18'h3ff3b; 13'b0000010101011: data_out = 18'h02196; 13'b0000010101100: data_out = 18'h01422; 13'b0000010101101: data_out = 18'h3c41d; 13'b0000010101110: data_out = 18'h00887; 13'b0000010101111: data_out = 18'h3b20c; 13'b0000010110000: data_out = 18'h035fd; 13'b0000010110001: data_out = 18'h3fce3; 13'b0000010110010: data_out = 18'h3fc6f; 13'b0000010110011: data_out = 18'h0657b; 13'b0000010110100: data_out = 18'h3a169; 13'b0000010110101: data_out = 18'h00f50; 13'b0000010110110: data_out = 18'h01670; 13'b0000010110111: data_out = 18'h3d62a; 13'b0000010111000: data_out = 18'h0214e; 13'b0000010111001: data_out = 18'h009be; 13'b0000010111010: data_out = 18'h3bd32; 13'b0000010111011: data_out = 18'h00f44; 13'b0000010111100: data_out = 18'h00d65; 13'b0000010111101: data_out = 18'h002bf; 13'b0000010111110: data_out = 18'h032af; 13'b0000010111111: data_out = 18'h3e1fe; 13'b0000011000000: data_out = 18'h0112a; 13'b0000011000001: data_out = 18'h3dc6b; 13'b0000011000010: data_out = 18'h3e50f; 13'b0000011000011: data_out = 18'h3e9da; 13'b0000011000100: data_out = 18'h3d7e4; 13'b0000011000101: data_out = 18'h3fa7a; 13'b0000011000110: data_out = 18'h3b014; 13'b0000011000111: data_out = 18'h3d5a0; 13'b0000011001000: data_out = 18'h3eb9f; 13'b0000011001001: data_out = 18'h3c990; 13'b0000011001010: data_out = 18'h00b01; 13'b0000011001011: data_out = 18'h3f996; 13'b0000011001100: data_out = 18'h3cc69; 13'b0000011001101: data_out = 18'h009fc; 13'b0000011001110: data_out = 18'h3da11; 13'b0000011001111: data_out = 18'h3f04f; 13'b0000011010000: data_out = 18'h024f2; 13'b0000011010001: data_out = 18'h3b049; 13'b0000011010010: data_out = 18'h3f5fa; 13'b0000011010011: data_out = 18'h0440f; 13'b0000011010100: data_out = 18'h0172a; 13'b0000011010101: data_out = 18'h0305d; 13'b0000011010110: data_out = 18'h02d3b; 13'b0000011010111: data_out = 18'h0249d; 13'b0000011011000: data_out = 18'h03066; 13'b0000011011001: data_out = 18'h0712d; 13'b0000011011010: data_out = 18'h02a4a; 13'b0000011011011: data_out = 18'h014ac; 13'b0000011011100: data_out = 18'h04dca; 13'b0000011011101: data_out = 18'h05448; 13'b0000011011110: data_out = 18'h3fd29; 13'b0000011011111: data_out = 18'h03af1; 13'b0000011100000: data_out = 18'h3ff51; 13'b0000011100001: data_out = 18'h05ab4; 13'b0000011100010: data_out = 18'h06488; 13'b0000011100011: data_out = 18'h02cd4; 13'b0000011100100: data_out = 18'h02bc7; 13'b0000011100101: data_out = 18'h00a53; 13'b0000011100110: data_out = 18'h3f8a6; 13'b0000011100111: data_out = 18'h3e45c; 13'b0000011101000: data_out = 18'h01dda; 13'b0000011101001: data_out = 18'h02954; 13'b0000011101010: data_out = 18'h3e7a4; 13'b0000011101011: data_out = 18'h0001d; 13'b0000011101100: data_out = 18'h3e46d; 13'b0000011101101: data_out = 18'h02593; 13'b0000011101110: data_out = 18'h003a5; 13'b0000011101111: data_out = 18'h00ae3; 13'b0000011110000: data_out = 18'h024be; 13'b0000011110001: data_out = 18'h3ee01; 13'b0000011110010: data_out = 18'h01c8d; 13'b0000011110011: data_out = 18'h3e593; 13'b0000011110100: data_out = 18'h0022c; 13'b0000011110101: data_out = 18'h02310; 13'b0000011110110: data_out = 18'h00981; 13'b0000011110111: data_out = 18'h0126e; 13'b0000011111000: data_out = 18'h3fc29; 13'b0000011111001: data_out = 18'h00655; 13'b0000011111010: data_out = 18'h00c0f; 13'b0000011111011: data_out = 18'h053e2; 13'b0000011111100: data_out = 18'h3e7ac; 13'b0000011111101: data_out = 18'h03d7a; 13'b0000011111110: data_out = 18'h03953; 13'b0000011111111: data_out = 18'h037e8; 13'b0000100000000: data_out = 18'h3fd92; 13'b0000100000001: data_out = 18'h05429; 13'b0000100000010: data_out = 18'h00fdd; 13'b0000100000011: data_out = 18'h03537; 13'b0000100000100: data_out = 18'h3ef52; 13'b0000100000101: data_out = 18'h02e8a; 13'b0000100000110: data_out = 18'h056c4; 13'b0000100000111: data_out = 18'h3e389; 13'b0000100001000: data_out = 18'h031c6; 13'b0000100001001: data_out = 18'h01593; 13'b0000100001010: data_out = 18'h03074; 13'b0000100001011: data_out = 18'h3edcc; 13'b0000100001100: data_out = 18'h04def; 13'b0000100001101: data_out = 18'h03604; 13'b0000100001110: data_out = 18'h03d55; 13'b0000100001111: data_out = 18'h013a7; 13'b0000100010000: data_out = 18'h0421d; 13'b0000100010001: data_out = 18'h00a23; 13'b0000100010010: data_out = 18'h0325a; 13'b0000100010011: data_out = 18'h01e03; 13'b0000100010100: data_out = 18'h010cd; 13'b0000100010101: data_out = 18'h01e4b; 13'b0000100010110: data_out = 18'h00179; 13'b0000100010111: data_out = 18'h3da52; 13'b0000100011000: data_out = 18'h3e76d; 13'b0000100011001: data_out = 18'h02abe; 13'b0000100011010: data_out = 18'h3be2a; 13'b0000100011011: data_out = 18'h009c7; 13'b0000100011100: data_out = 18'h3d044; 13'b0000100011101: data_out = 18'h3ccde; 13'b0000100011110: data_out = 18'h3abb2; 13'b0000100011111: data_out = 18'h3ef2c; 13'b0000100100000: data_out = 18'h37879; 13'b0000100100001: data_out = 18'h3c450; 13'b0000100100010: data_out = 18'h3980a; 13'b0000100100011: data_out = 18'h3a0c6; 13'b0000100100100: data_out = 18'h380ab; 13'b0000100100101: data_out = 18'h3abe4; 13'b0000100100110: data_out = 18'h38a64; 13'b0000100100111: data_out = 18'h3738a; 13'b0000100101000: data_out = 18'h37a7a; 13'b0000100101001: data_out = 18'h35fcc; 13'b0000100101010: data_out = 18'h36c9c; 13'b0000100101011: data_out = 18'h397ba; 13'b0000100101100: data_out = 18'h36f9d; 13'b0000100101101: data_out = 18'h3a311; 13'b0000100101110: data_out = 18'h35692; 13'b0000100101111: data_out = 18'h37d73; 13'b0000100110000: data_out = 18'h390df; 13'b0000100110001: data_out = 18'h39fc2; 13'b0000100110010: data_out = 18'h36d8f; 13'b0000100110011: data_out = 18'h360b0; 13'b0000100110100: data_out = 18'h3c92c; 13'b0000100110101: data_out = 18'h38c28; 13'b0000100110110: data_out = 18'h3d86a; 13'b0000100110111: data_out = 18'h386d6; 13'b0000100111000: data_out = 18'h3b018; 13'b0000100111001: data_out = 18'h3db5e; 13'b0000100111010: data_out = 18'h3bfdc; 13'b0000100111011: data_out = 18'h3c74c; 13'b0000100111100: data_out = 18'h00002; 13'b0000100111101: data_out = 18'h3df34; 13'b0000100111110: data_out = 18'h3e271; 13'b0000100111111: data_out = 18'h3d225; 13'b0000101000000: data_out = 18'h3f147; 13'b0000101000001: data_out = 18'h3ff46; 13'b0000101000010: data_out = 18'h3e50c; 13'b0000101000011: data_out = 18'h00ae6; 13'b0000101000100: data_out = 18'h3eb5c; 13'b0000101000101: data_out = 18'h024e9; 13'b0000101000110: data_out = 18'h019f3; 13'b0000101000111: data_out = 18'h02556; 13'b0000101001000: data_out = 18'h00e61; 13'b0000101001001: data_out = 18'h019a6; 13'b0000101001010: data_out = 18'h050b8; 13'b0000101001011: data_out = 18'h02584; 13'b0000101001100: data_out = 18'h0489a; 13'b0000101001101: data_out = 18'h061c6; 13'b0000101001110: data_out = 18'h014a8; 13'b0000101001111: data_out = 18'h05c91; 13'b0000101010000: data_out = 18'h06014; 13'b0000101010001: data_out = 18'h059d6; 13'b0000101010010: data_out = 18'h07bab; 13'b0000101010011: data_out = 18'h06be4; 13'b0000101010100: data_out = 18'h06631; 13'b0000101010101: data_out = 18'h071ba; 13'b0000101010110: data_out = 18'h0aca8; 13'b0000101010111: data_out = 18'h06a75; 13'b0000101011000: data_out = 18'h09aa0; 13'b0000101011001: data_out = 18'h08089; 13'b0000101011010: data_out = 18'h09d73; 13'b0000101011011: data_out = 18'h0a8d4; 13'b0000101011100: data_out = 18'h090b0; 13'b0000101011101: data_out = 18'h08ec4; 13'b0000101011110: data_out = 18'h09124; 13'b0000101011111: data_out = 18'h0a98d; 13'b0000101100000: data_out = 18'h086bc; 13'b0000101100001: data_out = 18'h0adcd; 13'b0000101100010: data_out = 18'h08cca; 13'b0000101100011: data_out = 18'h0a6c1; 13'b0000101100100: data_out = 18'h07ed5; 13'b0000101100101: data_out = 18'h081b9; 13'b0000101100110: data_out = 18'h091a6; 13'b0000101100111: data_out = 18'h08a15; 13'b0000101101000: data_out = 18'h07c36; 13'b0000101101001: data_out = 18'h06d51; 13'b0000101101010: data_out = 18'h051eb; 13'b0000101101011: data_out = 18'h05e8f; 13'b0000101101100: data_out = 18'h07cd0; 13'b0000101101101: data_out = 18'h03fc6; 13'b0000101101110: data_out = 18'h04cc1; 13'b0000101101111: data_out = 18'h03876; 13'b0000101110000: data_out = 18'h02399; 13'b0000101110001: data_out = 18'h0404f; 13'b0000101110010: data_out = 18'h3fc52; 13'b0000101110011: data_out = 18'h03a86; 13'b0000101110100: data_out = 18'h3eb3d; 13'b0000101110101: data_out = 18'h01865; 13'b0000101110110: data_out = 18'h3f102; 13'b0000101110111: data_out = 18'h00218; 13'b0000101111000: data_out = 18'h3edb2; 13'b0000101111001: data_out = 18'h3d9bd; 13'b0000101111010: data_out = 18'h3ebca; 13'b0000101111011: data_out = 18'h3d18e; 13'b0000101111100: data_out = 18'h3d5dd; 13'b0000101111101: data_out = 18'h3cc4d; 13'b0000101111110: data_out = 18'h3d239; 13'b0000101111111: data_out = 18'h3c903; 13'b0000110000000: data_out = 18'h3b318; 13'b0000110000001: data_out = 18'h38e63; 13'b0000110000010: data_out = 18'h3bad8; 13'b0000110000011: data_out = 18'h3bede; 13'b0000110000100: data_out = 18'h3a9f8; 13'b0000110000101: data_out = 18'h37a81; 13'b0000110000110: data_out = 18'h3bc26; 13'b0000110000111: data_out = 18'h39f69; 13'b0000110001000: data_out = 18'h37d26; 13'b0000110001001: data_out = 18'h38596; 13'b0000110001010: data_out = 18'h37c3d; 13'b0000110001011: data_out = 18'h38a82; 13'b0000110001100: data_out = 18'h36658; 13'b0000110001101: data_out = 18'h3944f; 13'b0000110001110: data_out = 18'h3761c; 13'b0000110001111: data_out = 18'h36639; 13'b0000110010000: data_out = 18'h35e24; 13'b0000110010001: data_out = 18'h36d1e; 13'b0000110010010: data_out = 18'h37736; 13'b0000110010011: data_out = 18'h3842f; 13'b0000110010100: data_out = 18'h351ed; 13'b0000110010101: data_out = 18'h36575; 13'b0000110010110: data_out = 18'h37315; 13'b0000110010111: data_out = 18'h36d95; 13'b0000110011000: data_out = 18'h37cec; 13'b0000110011001: data_out = 18'h3681b; 13'b0000110011010: data_out = 18'h388f4; 13'b0000110011011: data_out = 18'h35427; 13'b0000110011100: data_out = 18'h36b08; 13'b0000110011101: data_out = 18'h37c93; 13'b0000110011110: data_out = 18'h37c9e; 13'b0000110011111: data_out = 18'h3889f; 13'b0000110100000: data_out = 18'h380fb; 13'b0000110100001: data_out = 18'h37a26; 13'b0000110100010: data_out = 18'h36411; 13'b0000110100011: data_out = 18'h3be3b; 13'b0000110100100: data_out = 18'h3a11c; 13'b0000110100101: data_out = 18'h39441; 13'b0000110100110: data_out = 18'h3b86f; 13'b0000110100111: data_out = 18'h3cf41; 13'b0000110101000: data_out = 18'h3b1fd; 13'b0000110101001: data_out = 18'h3ad17; 13'b0000110101010: data_out = 18'h3daf6; 13'b0000110101011: data_out = 18'h3ec90; 13'b0000110101100: data_out = 18'h3df01; 13'b0000110101101: data_out = 18'h3e605; 13'b0000110101110: data_out = 18'h00bf4; 13'b0000110101111: data_out = 18'h3e8d8; 13'b0000110110000: data_out = 18'h01d1c; 13'b0000110110001: data_out = 18'h01570; 13'b0000110110010: data_out = 18'h02c51; 13'b0000110110011: data_out = 18'h014f5; 13'b0000110110100: data_out = 18'h048e7; 13'b0000110110101: data_out = 18'h00d63; 13'b0000110110110: data_out = 18'h03ab3; 13'b0000110110111: data_out = 18'h0502e; 13'b0000110111000: data_out = 18'h04a49; 13'b0000110111001: data_out = 18'h04718; 13'b0000110111010: data_out = 18'h05ad9; 13'b0000110111011: data_out = 18'h02b90; 13'b0000110111100: data_out = 18'h06d92; 13'b0000110111101: data_out = 18'h058b3; 13'b0000110111110: data_out = 18'h05f9a; 13'b0000110111111: data_out = 18'h06917; 13'b0000111000000: data_out = 18'h04b9d; 13'b0000111000001: data_out = 18'h083f3; 13'b0000111000010: data_out = 18'h06fee; 13'b0000111000011: data_out = 18'h051bf; 13'b0000111000100: data_out = 18'h07f55; 13'b0000111000101: data_out = 18'h07e0b; 13'b0000111000110: data_out = 18'h05fe9; 13'b0000111000111: data_out = 18'h08091; 13'b0000111001000: data_out = 18'h04f0c; 13'b0000111001001: data_out = 18'h0891b; 13'b0000111001010: data_out = 18'h07b7a; 13'b0000111001011: data_out = 18'h0833e; 13'b0000111001100: data_out = 18'h090a8; 13'b0000111001101: data_out = 18'h0842e; 13'b0000111001110: data_out = 18'h07556; 13'b0000111001111: data_out = 18'h07f5d; 13'b0000111010000: data_out = 18'h07a06; 13'b0000111010001: data_out = 18'h0a2b7; 13'b0000111010010: data_out = 18'h09117; 13'b0000111010011: data_out = 18'h06cd8; 13'b0000111010100: data_out = 18'h06c6d; 13'b0000111010101: data_out = 18'h08b4f; 13'b0000111010110: data_out = 18'h07e50; 13'b0000111010111: data_out = 18'h09f0a; 13'b0000111011000: data_out = 18'h06053; 13'b0000111011001: data_out = 18'h06e8f; 13'b0000111011010: data_out = 18'h095cc; 13'b0000111011011: data_out = 18'h06b10; 13'b0000111011100: data_out = 18'h08c0f; 13'b0000111011101: data_out = 18'h04582; 13'b0000111011110: data_out = 18'h08510; 13'b0000111011111: data_out = 18'h06d3f; 13'b0000111100000: data_out = 18'h06c1c; 13'b0000111100001: data_out = 18'h0648d; 13'b0000111100010: data_out = 18'h04695; 13'b0000111100011: data_out = 18'h04829; 13'b0000111100100: data_out = 18'h06fc6; 13'b0000111100101: data_out = 18'h02fac; 13'b0000111100110: data_out = 18'h04bd4; 13'b0000111100111: data_out = 18'h01f46; 13'b0000111101000: data_out = 18'h03307; 13'b0000111101001: data_out = 18'h0133c; 13'b0000111101010: data_out = 18'h02d76; 13'b0000111101011: data_out = 18'h01358; 13'b0000111101100: data_out = 18'h00fc9; 13'b0000111101101: data_out = 18'h000e4; 13'b0000111101110: data_out = 18'h3e5ea; 13'b0000111101111: data_out = 18'h3f98b; 13'b0000111110000: data_out = 18'h3e6f7; 13'b0000111110001: data_out = 18'h3ddea; 13'b0000111110010: data_out = 18'h3d23c; 13'b0000111110011: data_out = 18'h3ce5d; 13'b0000111110100: data_out = 18'h3d4de; 13'b0000111110101: data_out = 18'h3b222; 13'b0000111110110: data_out = 18'h3bd6d; 13'b0000111110111: data_out = 18'h3b289; 13'b0000111111000: data_out = 18'h38663; 13'b0000111111001: data_out = 18'h3a628; 13'b0000111111010: data_out = 18'h3ae3a; 13'b0000111111011: data_out = 18'h393e4; 13'b0000111111100: data_out = 18'h3898f; 13'b0000111111101: data_out = 18'h37eae; 13'b0000111111110: data_out = 18'h38781; 13'b0000111111111: data_out = 18'h3738a; 13'b0001000000000: data_out = 18'h39f5e; 13'b0001000000001: data_out = 18'h36ba2; 13'b0001000000010: data_out = 18'h386bd; 13'b0001000000011: data_out = 18'h36723; 13'b0001000000100: data_out = 18'h38297; 13'b0001000000101: data_out = 18'h37603; 13'b0001000000110: data_out = 18'h37c6f; 13'b0001000000111: data_out = 18'h38235; 13'b0001000001000: data_out = 18'h37029; 13'b0001000001001: data_out = 18'h39c28; 13'b0001000001010: data_out = 18'h38785; 13'b0001000001011: data_out = 18'h36ff3; 13'b0001000001100: data_out = 18'h36d1c; 13'b0001000001101: data_out = 18'h3a5fc; 13'b0001000001110: data_out = 18'h385e8; 13'b0001000001111: data_out = 18'h368d5; 13'b0001000010000: data_out = 18'h398c6; 13'b0001000010001: data_out = 18'h38f8f; 13'b0001000010010: data_out = 18'h37d9f; 13'b0001000010011: data_out = 18'h3a1d1; 13'b0001000010100: data_out = 18'h393eb; 13'b0001000010101: data_out = 18'h37360; 13'b0001000010110: data_out = 18'h39a52; 13'b0001000010111: data_out = 18'h3a082; 13'b0001000011000: data_out = 18'h389d0; 13'b0001000011001: data_out = 18'h380c6; 13'b0001000011010: data_out = 18'h3a38f; 13'b0001000011011: data_out = 18'h38175; 13'b0001000011100: data_out = 18'h39779; 13'b0001000011101: data_out = 18'h391ee; 13'b0001000011110: data_out = 18'h38c66; 13'b0001000011111: data_out = 18'h38922; 13'b0001000100000: data_out = 18'h38a95; 13'b0001000100001: data_out = 18'h3a7e7; 13'b0001000100010: data_out = 18'h387ae; 13'b0001000100011: data_out = 18'h39113; 13'b0001000100100: data_out = 18'h39c9a; 13'b0001000100101: data_out = 18'h3caa3; 13'b0001000100110: data_out = 18'h38719; 13'b0001000100111: data_out = 18'h3a821; 13'b0001000101000: data_out = 18'h3a0fe; 13'b0001000101001: data_out = 18'h3ae62; 13'b0001000101010: data_out = 18'h3be40; 13'b0001000101011: data_out = 18'h3b1a3; 13'b0001000101100: data_out = 18'h3da67; 13'b0001000101101: data_out = 18'h3acc6; 13'b0001000101110: data_out = 18'h3d1f9; 13'b0001000101111: data_out = 18'h3dfdf; 13'b0001000110000: data_out = 18'h3c944; 13'b0001000110001: data_out = 18'h3ffec; 13'b0001000110010: data_out = 18'h3d928; 13'b0001000110011: data_out = 18'h3f4bc; 13'b0001000110100: data_out = 18'h0021c; 13'b0001000110101: data_out = 18'h00562; 13'b0001000110110: data_out = 18'h001c4; 13'b0001000110111: data_out = 18'h3f498; 13'b0001000111000: data_out = 18'h03085; 13'b0001000111001: data_out = 18'h0078c; 13'b0001000111010: data_out = 18'h03301; 13'b0001000111011: data_out = 18'h0220f; 13'b0001000111100: data_out = 18'h0516b; 13'b0001000111101: data_out = 18'h02ad2; 13'b0001000111110: data_out = 18'h051e0; 13'b0001000111111: data_out = 18'h035b0; 13'b0001001000000: data_out = 18'h04ecb; 13'b0001001000001: data_out = 18'h06baf; 13'b0001001000010: data_out = 18'h05eef; 13'b0001001000011: data_out = 18'h073db; 13'b0001001000100: data_out = 18'h06ea2; 13'b0001001000101: data_out = 18'h05dcf; 13'b0001001000110: data_out = 18'h081ef; 13'b0001001000111: data_out = 18'h06a20; 13'b0001001001000: data_out = 18'h092ea; 13'b0001001001001: data_out = 18'h0685b; 13'b0001001001010: data_out = 18'h09b5c; 13'b0001001001011: data_out = 18'h08099; 13'b0001001001100: data_out = 18'h0884a; 13'b0001001001101: data_out = 18'h0827d; 13'b0001001001110: data_out = 18'h0a805; 13'b0001001001111: data_out = 18'h07fcf; 13'b0001001010000: data_out = 18'h0980d; 13'b0001001010001: data_out = 18'h08997; 13'b0001001010010: data_out = 18'h09cb3; 13'b0001001010011: data_out = 18'h08a79; 13'b0001001010100: data_out = 18'h09ff0; 13'b0001001010101: data_out = 18'h0977d; 13'b0001001010110: data_out = 18'h08815; 13'b0001001010111: data_out = 18'h0a18c; 13'b0001001011000: data_out = 18'h090be; 13'b0001001011001: data_out = 18'h0958d; 13'b0001001011010: data_out = 18'h09fb5; 13'b0001001011011: data_out = 18'h08718; 13'b0001001011100: data_out = 18'h089bf; 13'b0001001011101: data_out = 18'h07adb; 13'b0001001011110: data_out = 18'h09a8c; 13'b0001001011111: data_out = 18'h0801a; 13'b0001001100000: data_out = 18'h076ef; 13'b0001001100001: data_out = 18'h06eb9; 13'b0001001100010: data_out = 18'h07f4c; 13'b0001001100011: data_out = 18'h07e96; 13'b0001001100100: data_out = 18'h0696b; 13'b0001001100101: data_out = 18'h070e2; 13'b0001001100110: data_out = 18'h0652c; 13'b0001001100111: data_out = 18'h06601; 13'b0001001101000: data_out = 18'h0628b; 13'b0001001101001: data_out = 18'h06827; 13'b0001001101010: data_out = 18'h05afa; 13'b0001001101011: data_out = 18'h05860; 13'b0001001101100: data_out = 18'h062f9; 13'b0001001101101: data_out = 18'h05257; 13'b0001001101110: data_out = 18'h057e7; 13'b0001001101111: data_out = 18'h04e16; 13'b0001001110000: data_out = 18'h055a9; 13'b0001001110001: data_out = 18'h059bb; 13'b0001001110010: data_out = 18'h05924; 13'b0001001110011: data_out = 18'h04817; 13'b0001001110100: data_out = 18'h04715; 13'b0001001110101: data_out = 18'h05a2f; 13'b0001001110110: data_out = 18'h04d68; 13'b0001001110111: data_out = 18'h0421e; 13'b0001001111000: data_out = 18'h04c45; 13'b0001001111001: data_out = 18'h04968; 13'b0001001111010: data_out = 18'h04364; 13'b0001001111011: data_out = 18'h03df8; 13'b0001001111100: data_out = 18'h040c0; 13'b0001001111101: data_out = 18'h03aa6; 13'b0001001111110: data_out = 18'h036e7; 13'b0001001111111: data_out = 18'h031f5; 13'b0001010000000: data_out = 18'h02767; 13'b0001010000001: data_out = 18'h02438; 13'b0001010000010: data_out = 18'h022bd; 13'b0001010000011: data_out = 18'h0164e; 13'b0001010000100: data_out = 18'h0143b; 13'b0001010000101: data_out = 18'h015c0; 13'b0001010000110: data_out = 18'h00495; 13'b0001010000111: data_out = 18'h3fd55; 13'b0001010001000: data_out = 18'h3ff80; 13'b0001010001001: data_out = 18'h3f3cf; 13'b0001010001010: data_out = 18'h3e624; 13'b0001010001011: data_out = 18'h3e54e; 13'b0001010001100: data_out = 18'h3e09c; 13'b0001010001101: data_out = 18'h3d867; 13'b0001010001110: data_out = 18'h3d731; 13'b0001010001111: data_out = 18'h3cb6c; 13'b0001010010000: data_out = 18'h3c46c; 13'b0001010010001: data_out = 18'h3b820; 13'b0001010010010: data_out = 18'h3bc37; 13'b0001010010011: data_out = 18'h3ba56; 13'b0001010010100: data_out = 18'h3a6a9; 13'b0001010010101: data_out = 18'h3a8fa; 13'b0001010010110: data_out = 18'h39fb1; 13'b0001010010111: data_out = 18'h3a10b; 13'b0001010011000: data_out = 18'h3968f; 13'b0001010011001: data_out = 18'h38d35; 13'b0001010011010: data_out = 18'h39274; 13'b0001010011011: data_out = 18'h39045; 13'b0001010011100: data_out = 18'h3854f; 13'b0001010011101: data_out = 18'h384f6; 13'b0001010011110: data_out = 18'h3740c; 13'b0001010011111: data_out = 18'h37995; 13'b0001010100000: data_out = 18'h388b2; 13'b0001010100001: data_out = 18'h36e02; 13'b0001010100010: data_out = 18'h36bad; 13'b0001010100011: data_out = 18'h3689b; 13'b0001010100100: data_out = 18'h3737a; 13'b0001010100101: data_out = 18'h36cd1; 13'b0001010100110: data_out = 18'h36929; 13'b0001010100111: data_out = 18'h3646d; 13'b0001010101000: data_out = 18'h363af; 13'b0001010101001: data_out = 18'h372fb; 13'b0001010101010: data_out = 18'h36bca; 13'b0001010101011: data_out = 18'h360c8; 13'b0001010101100: data_out = 18'h36080; 13'b0001010101101: data_out = 18'h36f2d; 13'b0001010101110: data_out = 18'h37353; 13'b0001010101111: data_out = 18'h36d30; 13'b0001010110000: data_out = 18'h367d8; 13'b0001010110001: data_out = 18'h37053; 13'b0001010110010: data_out = 18'h375c7; 13'b0001010110011: data_out = 18'h37bae; 13'b0001010110100: data_out = 18'h37184; 13'b0001010110101: data_out = 18'h3771f; 13'b0001010110110: data_out = 18'h379f4; 13'b0001010110111: data_out = 18'h388b7; 13'b0001010111000: data_out = 18'h38679; 13'b0001010111001: data_out = 18'h3802e; 13'b0001010111010: data_out = 18'h38dcf; 13'b0001010111011: data_out = 18'h390d5; 13'b0001010111100: data_out = 18'h38d52; 13'b0001010111101: data_out = 18'h3a2d6; 13'b0001010111110: data_out = 18'h39d87; 13'b0001010111111: data_out = 18'h3a304; 13'b0001011000000: data_out = 18'h3a14f; 13'b0001011000001: data_out = 18'h3aa04; 13'b0001011000010: data_out = 18'h3a885; 13'b0001011000011: data_out = 18'h3aa96; 13'b0001011000100: data_out = 18'h3b08e; 13'b0001011000101: data_out = 18'h3b42c; 13'b0001011000110: data_out = 18'h3b11f; 13'b0001011000111: data_out = 18'h3b795; 13'b0001011001000: data_out = 18'h3b5b6; 13'b0001011001001: data_out = 18'h3b8e4; 13'b0001011001010: data_out = 18'h3ba90; 13'b0001011001011: data_out = 18'h3c4e5; 13'b0001011001100: data_out = 18'h3c21d; 13'b0001011001101: data_out = 18'h3c1bd; 13'b0001011001110: data_out = 18'h3bb03; 13'b0001011001111: data_out = 18'h3cdbd; 13'b0001011010000: data_out = 18'h3c8e0; 13'b0001011010001: data_out = 18'h3ca27; 13'b0001011010010: data_out = 18'h3ce4c; 13'b0001011010011: data_out = 18'h3cdae; 13'b0001011010100: data_out = 18'h3ccdf; 13'b0001011010101: data_out = 18'h3d41f; 13'b0001011010110: data_out = 18'h3d4a8; 13'b0001011010111: data_out = 18'h3dc2b; 13'b0001011011000: data_out = 18'h3def2; 13'b0001011011001: data_out = 18'h3df02; 13'b0001011011010: data_out = 18'h3ecd7; 13'b0001011011011: data_out = 18'h3e5a2; 13'b0001011011100: data_out = 18'h3ef36; 13'b0001011011101: data_out = 18'h3f352; 13'b0001011011110: data_out = 18'h3fd5b; 13'b0001011011111: data_out = 18'h3ff20; 13'b0001011100000: data_out = 18'h00451; 13'b0001011100001: data_out = 18'h00834; 13'b0001011100010: data_out = 18'h014f6; 13'b0001011100011: data_out = 18'h01731; 13'b0001011100100: data_out = 18'h018a2; 13'b0001011100101: data_out = 18'h01f49; 13'b0001011100110: data_out = 18'h02d66; 13'b0001011100111: data_out = 18'h02e24; 13'b0001011101000: data_out = 18'h02f04; 13'b0001011101001: data_out = 18'h03830; 13'b0001011101010: data_out = 18'h0420e; 13'b0001011101011: data_out = 18'h041fd; 13'b0001011101100: data_out = 18'h05140; 13'b0001011101101: data_out = 18'h04ea5; 13'b0001011101110: data_out = 18'h05936; 13'b0001011101111: data_out = 18'h05622; 13'b0001011110000: data_out = 18'h05e84; 13'b0001011110001: data_out = 18'h0675d; 13'b0001011110010: data_out = 18'h06c00; 13'b0001011110011: data_out = 18'h071c1; 13'b0001011110100: data_out = 18'h07002; 13'b0001011110101: data_out = 18'h08298; 13'b0001011110110: data_out = 18'h07a09; 13'b0001011110111: data_out = 18'h083bb; 13'b0001011111000: data_out = 18'h0832c; 13'b0001011111001: data_out = 18'h08b76; 13'b0001011111010: data_out = 18'h08962; 13'b0001011111011: data_out = 18'h08966; 13'b0001011111100: data_out = 18'h09958; 13'b0001011111101: data_out = 18'h09022; 13'b0001011111110: data_out = 18'h09119; 13'b0001011111111: data_out = 18'h09ec5; 13'b0001100000000: data_out = 18'h0936f; 13'b0001100000001: data_out = 18'h0970a; 13'b0001100000010: data_out = 18'h09f3f; 13'b0001100000011: data_out = 18'h09707; 13'b0001100000100: data_out = 18'h09ce7; 13'b0001100000101: data_out = 18'h097eb; 13'b0001100000110: data_out = 18'h0994e; 13'b0001100000111: data_out = 18'h09c3b; 13'b0001100001000: data_out = 18'h0a133; 13'b0001100001001: data_out = 18'h097ea; 13'b0001100001010: data_out = 18'h0986d; 13'b0001100001011: data_out = 18'h09408; 13'b0001100001100: data_out = 18'h09a6c; 13'b0001100001101: data_out = 18'h095cd; 13'b0001100001110: data_out = 18'h08e4e; 13'b0001100001111: data_out = 18'h08fb5; 13'b0001100010000: data_out = 18'h09035; 13'b0001100010001: data_out = 18'h08ae2; 13'b0001100010010: data_out = 18'h0847d; 13'b0001100010011: data_out = 18'h07f95; 13'b0001100010100: data_out = 18'h07d4e; 13'b0001100010101: data_out = 18'h07a3f; 13'b0001100010110: data_out = 18'h07787; 13'b0001100010111: data_out = 18'h07c1b; 13'b0001100011000: data_out = 18'h06c90; 13'b0001100011001: data_out = 18'h0701f; 13'b0001100011010: data_out = 18'h06889; 13'b0001100011011: data_out = 18'h06ae5; 13'b0001100011100: data_out = 18'h05de0; 13'b0001100011101: data_out = 18'h062a2; 13'b0001100011110: data_out = 18'h05ae2; 13'b0001100011111: data_out = 18'h0599c; 13'b0001100100000: data_out = 18'h05911; 13'b0001100100001: data_out = 18'h050b6; 13'b0001100100010: data_out = 18'h04b08; 13'b0001100100011: data_out = 18'h0506b; 13'b0001100100100: data_out = 18'h04af5; 13'b0001100100101: data_out = 18'h047b6; 13'b0001100100110: data_out = 18'h0495e; 13'b0001100100111: data_out = 18'h03ff3; 13'b0001100101000: data_out = 18'h03aba; 13'b0001100101001: data_out = 18'h03c5f; 13'b0001100101010: data_out = 18'h03cde; 13'b0001100101011: data_out = 18'h03441; 13'b0001100101100: data_out = 18'h02e8d; 13'b0001100101101: data_out = 18'h033fc; 13'b0001100101110: data_out = 18'h02e98; 13'b0001100101111: data_out = 18'h02d83; 13'b0001100110000: data_out = 18'h02e81; 13'b0001100110001: data_out = 18'h01f67; 13'b0001100110010: data_out = 18'h02385; 13'b0001100110011: data_out = 18'h0231d; 13'b0001100110100: data_out = 18'h024df; 13'b0001100110101: data_out = 18'h01421; 13'b0001100110110: data_out = 18'h014e0; 13'b0001100110111: data_out = 18'h010fa; 13'b0001100111000: data_out = 18'h01321; 13'b0001100111001: data_out = 18'h00b74; 13'b0001100111010: data_out = 18'h0046b; 13'b0001100111011: data_out = 18'h0003f; 13'b0001100111100: data_out = 18'h000e1; 13'b0001100111101: data_out = 18'h3fc5c; 13'b0001100111110: data_out = 18'h3f28e; 13'b0001100111111: data_out = 18'h3f461; 13'b0001101000000: data_out = 18'h3e513; 13'b0001101000001: data_out = 18'h3ea1f; 13'b0001101000010: data_out = 18'h3e1e4; 13'b0001101000011: data_out = 18'h3d835; 13'b0001101000100: data_out = 18'h3d646; 13'b0001101000101: data_out = 18'h3d057; 13'b0001101000110: data_out = 18'h3c924; 13'b0001101000111: data_out = 18'h3c5cf; 13'b0001101001000: data_out = 18'h3c029; 13'b0001101001001: data_out = 18'h3c15f; 13'b0001101001010: data_out = 18'h3b3b1; 13'b0001101001011: data_out = 18'h3b32e; 13'b0001101001100: data_out = 18'h3a9c0; 13'b0001101001101: data_out = 18'h3a9d9; 13'b0001101001110: data_out = 18'h3a584; 13'b0001101001111: data_out = 18'h3a131; 13'b0001101010000: data_out = 18'h38ec3; 13'b0001101010001: data_out = 18'h39b88; 13'b0001101010010: data_out = 18'h38e99; 13'b0001101010011: data_out = 18'h39466; 13'b0001101010100: data_out = 18'h38a9b; 13'b0001101010101: data_out = 18'h3852d; 13'b0001101010110: data_out = 18'h38a3e; 13'b0001101010111: data_out = 18'h37c6b; 13'b0001101011000: data_out = 18'h37ec8; 13'b0001101011001: data_out = 18'h374a2; 13'b0001101011010: data_out = 18'h37afb; 13'b0001101011011: data_out = 18'h3738d; 13'b0001101011100: data_out = 18'h3710d; 13'b0001101011101: data_out = 18'h36db7; 13'b0001101011110: data_out = 18'h370e0; 13'b0001101011111: data_out = 18'h36c8e; 13'b0001101100000: data_out = 18'h36abb; 13'b0001101100001: data_out = 18'h368c0; 13'b0001101100010: data_out = 18'h36c49; 13'b0001101100011: data_out = 18'h36b0f; 13'b0001101100100: data_out = 18'h35e9c; 13'b0001101100101: data_out = 18'h36e5f; 13'b0001101100110: data_out = 18'h36afb; 13'b0001101100111: data_out = 18'h361c8; 13'b0001101101000: data_out = 18'h36c46; 13'b0001101101001: data_out = 18'h36d4c; 13'b0001101101010: data_out = 18'h36a37; 13'b0001101101011: data_out = 18'h36397; 13'b0001101101100: data_out = 18'h36eec; 13'b0001101101101: data_out = 18'h36df9; 13'b0001101101110: data_out = 18'h36f01; 13'b0001101101111: data_out = 18'h370da; 13'b0001101110000: data_out = 18'h37a4f; 13'b0001101110001: data_out = 18'h372d9; 13'b0001101110010: data_out = 18'h37817; 13'b0001101110011: data_out = 18'h37da7; 13'b0001101110100: data_out = 18'h37b3b; 13'b0001101110101: data_out = 18'h381ab; 13'b0001101110110: data_out = 18'h38cd7; 13'b0001101110111: data_out = 18'h37eab; 13'b0001101111000: data_out = 18'h38bb4; 13'b0001101111001: data_out = 18'h38bef; 13'b0001101111010: data_out = 18'h38fa1; 13'b0001101111011: data_out = 18'h39624; 13'b0001101111100: data_out = 18'h39a0e; 13'b0001101111101: data_out = 18'h39130; 13'b0001101111110: data_out = 18'h39fe1; 13'b0001101111111: data_out = 18'h39fa9; 13'b0001110000000: data_out = 18'h39f40; 13'b0001110000001: data_out = 18'h3a71f; 13'b0001110000010: data_out = 18'h3b1a4; 13'b0001110000011: data_out = 18'h3ad79; 13'b0001110000100: data_out = 18'h3b109; 13'b0001110000101: data_out = 18'h3b9b9; 13'b0001110000110: data_out = 18'h3bb71; 13'b0001110000111: data_out = 18'h3b9e4; 13'b0001110001000: data_out = 18'h3bac2; 13'b0001110001001: data_out = 18'h3cab7; 13'b0001110001010: data_out = 18'h3c023; 13'b0001110001011: data_out = 18'h3cc23; 13'b0001110001100: data_out = 18'h3cd47; 13'b0001110001101: data_out = 18'h3d307; 13'b0001110001110: data_out = 18'h3d012; 13'b0001110001111: data_out = 18'h3d114; 13'b0001110010000: data_out = 18'h3dac5; 13'b0001110010001: data_out = 18'h3d963; 13'b0001110010010: data_out = 18'h3e22f; 13'b0001110010011: data_out = 18'h3df93; 13'b0001110010100: data_out = 18'h3e3b0; 13'b0001110010101: data_out = 18'h3e3bd; 13'b0001110010110: data_out = 18'h3e5d8; 13'b0001110010111: data_out = 18'h3eb48; 13'b0001110011000: data_out = 18'h3f2d3; 13'b0001110011001: data_out = 18'h3f2eb; 13'b0001110011010: data_out = 18'h3f2d6; 13'b0001110011011: data_out = 18'h3f37d; 13'b0001110011100: data_out = 18'h3f7cb; 13'b0001110011101: data_out = 18'h3fc11; 13'b0001110011110: data_out = 18'h00109; 13'b0001110011111: data_out = 18'h00294; 13'b0001110100000: data_out = 18'h008eb; 13'b0001110100001: data_out = 18'h00571; 13'b0001110100010: data_out = 18'h0083e; 13'b0001110100011: data_out = 18'h018b0; 13'b0001110100100: data_out = 18'h01c0c; 13'b0001110100101: data_out = 18'h010bc; 13'b0001110100110: data_out = 18'h01e61; 13'b0001110100111: data_out = 18'h02064; 13'b0001110101000: data_out = 18'h02429; 13'b0001110101001: data_out = 18'h02a6f; 13'b0001110101010: data_out = 18'h02714; 13'b0001110101011: data_out = 18'h03074; 13'b0001110101100: data_out = 18'h03115; 13'b0001110101101: data_out = 18'h039eb; 13'b0001110101110: data_out = 18'h03fec; 13'b0001110101111: data_out = 18'h04286; 13'b0001110110000: data_out = 18'h0455b; 13'b0001110110001: data_out = 18'h049ab; 13'b0001110110010: data_out = 18'h04887; 13'b0001110110011: data_out = 18'h056cc; 13'b0001110110100: data_out = 18'h05058; 13'b0001110110101: data_out = 18'h058c4; 13'b0001110110110: data_out = 18'h0627f; 13'b0001110110111: data_out = 18'h05ce3; 13'b0001110111000: data_out = 18'h065a0; 13'b0001110111001: data_out = 18'h06811; 13'b0001110111010: data_out = 18'h06b6c; 13'b0001110111011: data_out = 18'h074d2; 13'b0001110111100: data_out = 18'h07045; 13'b0001110111101: data_out = 18'h076f5; 13'b0001110111110: data_out = 18'h077f3; 13'b0001110111111: data_out = 18'h08262; 13'b0001111000000: data_out = 18'h08234; 13'b0001111000001: data_out = 18'h07b2d; 13'b0001111000010: data_out = 18'h08835; 13'b0001111000011: data_out = 18'h08979; 13'b0001111000100: data_out = 18'h08c37; 13'b0001111000101: data_out = 18'h0897a; 13'b0001111000110: data_out = 18'h093a3; 13'b0001111000111: data_out = 18'h08adb; 13'b0001111001000: data_out = 18'h094a4; 13'b0001111001001: data_out = 18'h09247; 13'b0001111001010: data_out = 18'h09085; 13'b0001111001011: data_out = 18'h099b2; 13'b0001111001100: data_out = 18'h09670; 13'b0001111001101: data_out = 18'h09571; 13'b0001111001110: data_out = 18'h093e7; 13'b0001111001111: data_out = 18'h0911e; 13'b0001111010000: data_out = 18'h093fc; 13'b0001111010001: data_out = 18'h09e3e; 13'b0001111010010: data_out = 18'h09283; 13'b0001111010011: data_out = 18'h090af; 13'b0001111010100: data_out = 18'h09736; 13'b0001111010101: data_out = 18'h09134; 13'b0001111010110: data_out = 18'h091f3; 13'b0001111010111: data_out = 18'h09202; 13'b0001111011000: data_out = 18'h08b0e; 13'b0001111011001: data_out = 18'h08a90; 13'b0001111011010: data_out = 18'h092bc; 13'b0001111011011: data_out = 18'h0863a; 13'b0001111011100: data_out = 18'h08ac3; 13'b0001111011101: data_out = 18'h0826c; 13'b0001111011110: data_out = 18'h07fdd; 13'b0001111011111: data_out = 18'h082db; 13'b0001111100000: data_out = 18'h07edb; 13'b0001111100001: data_out = 18'h07f69; 13'b0001111100010: data_out = 18'h08302; 13'b0001111100011: data_out = 18'h06b54; 13'b0001111100100: data_out = 18'h07cb5; 13'b0001111100101: data_out = 18'h06d8c; 13'b0001111100110: data_out = 18'h06f74; 13'b0001111100111: data_out = 18'h06c11; 13'b0001111101000: data_out = 18'h06be9; 13'b0001111101001: data_out = 18'h062ae; 13'b0001111101010: data_out = 18'h05e26; 13'b0001111101011: data_out = 18'h06420; 13'b0001111101100: data_out = 18'h05d18; 13'b0001111101101: data_out = 18'h05b13; 13'b0001111101110: data_out = 18'h050ca; 13'b0001111101111: data_out = 18'h05632; 13'b0001111110000: data_out = 18'h05028; 13'b0001111110001: data_out = 18'h041d8; 13'b0001111110010: data_out = 18'h0490e; 13'b0001111110011: data_out = 18'h042c4; 13'b0001111110100: data_out = 18'h03f00; 13'b0001111110101: data_out = 18'h03e1b; 13'b0001111110110: data_out = 18'h03f5f; 13'b0001111110111: data_out = 18'h03146; 13'b0001111111000: data_out = 18'h031c5; 13'b0001111111001: data_out = 18'h03396; 13'b0001111111010: data_out = 18'h02aea; 13'b0001111111011: data_out = 18'h02913; 13'b0001111111100: data_out = 18'h02233; 13'b0001111111101: data_out = 18'h024c7; 13'b0001111111110: data_out = 18'h01ac3; 13'b0001111111111: data_out = 18'h022eb; 13'b0010000000000: data_out = 18'h01219; 13'b0010000000001: data_out = 18'h01911; 13'b0010000000010: data_out = 18'h0123d; 13'b0010000000011: data_out = 18'h00aa9; 13'b0010000000100: data_out = 18'h015e1; 13'b0010000000101: data_out = 18'h00423; 13'b0010000000110: data_out = 18'h008f3; 13'b0010000000111: data_out = 18'h009be; 13'b0010000001000: data_out = 18'h0044c; 13'b0010000001001: data_out = 18'h3f701; 13'b0010000001010: data_out = 18'h3fead; 13'b0010000001011: data_out = 18'h3fd37; 13'b0010000001100: data_out = 18'h3f80a; 13'b0010000001101: data_out = 18'h3ec03; 13'b0010000001110: data_out = 18'h3f33b; 13'b0010000001111: data_out = 18'h3e927; 13'b0010000010000: data_out = 18'h3f48f; 13'b0010000010001: data_out = 18'h3e10c; 13'b0010000010010: data_out = 18'h3e83d; 13'b0010000010011: data_out = 18'h3e0b2; 13'b0010000010100: data_out = 18'h3e294; 13'b0010000010101: data_out = 18'h3e172; 13'b0010000010110: data_out = 18'h3d8a3; 13'b0010000010111: data_out = 18'h3db36; 13'b0010000011000: data_out = 18'h3d05e; 13'b0010000011001: data_out = 18'h3c84e; 13'b0010000011010: data_out = 18'h3dc46; 13'b0010000011011: data_out = 18'h3c133; 13'b0010000011100: data_out = 18'h3cb93; 13'b0010000011101: data_out = 18'h3ccfd; 13'b0010000011110: data_out = 18'h3c96e; 13'b0010000011111: data_out = 18'h3b8f8; 13'b0010000100000: data_out = 18'h3beb1; 13'b0010000100001: data_out = 18'h3c026; 13'b0010000100010: data_out = 18'h3ba4d; 13'b0010000100011: data_out = 18'h3ade9; 13'b0010000100100: data_out = 18'h3af46; 13'b0010000100101: data_out = 18'h3b4f4; 13'b0010000100110: data_out = 18'h3a7ea; 13'b0010000100111: data_out = 18'h3b07a; 13'b0010000101000: data_out = 18'h3a1de; 13'b0010000101001: data_out = 18'h3a816; 13'b0010000101010: data_out = 18'h3a03f; 13'b0010000101011: data_out = 18'h39d05; 13'b0010000101100: data_out = 18'h398d1; 13'b0010000101101: data_out = 18'h39933; 13'b0010000101110: data_out = 18'h39c8b; 13'b0010000101111: data_out = 18'h38abf; 13'b0010000110000: data_out = 18'h38ef0; 13'b0010000110001: data_out = 18'h392b0; 13'b0010000110010: data_out = 18'h38a39; 13'b0010000110011: data_out = 18'h38b1b; 13'b0010000110100: data_out = 18'h38817; 13'b0010000110101: data_out = 18'h37b96; 13'b0010000110110: data_out = 18'h382fc; 13'b0010000110111: data_out = 18'h37f45; 13'b0010000111000: data_out = 18'h378e4; 13'b0010000111001: data_out = 18'h37ce3; 13'b0010000111010: data_out = 18'h378d4; 13'b0010000111011: data_out = 18'h3773c; 13'b0010000111100: data_out = 18'h37e43; 13'b0010000111101: data_out = 18'h37043; 13'b0010000111110: data_out = 18'h36eda; 13'b0010000111111: data_out = 18'h36bb5; 13'b0010001000000: data_out = 18'h374fb; 13'b0010001000001: data_out = 18'h37169; 13'b0010001000010: data_out = 18'h36e27; 13'b0010001000011: data_out = 18'h36fc7; 13'b0010001000100: data_out = 18'h36f4b; 13'b0010001000101: data_out = 18'h369a5; 13'b0010001000110: data_out = 18'h36a11; 13'b0010001000111: data_out = 18'h367c2; 13'b0010001001000: data_out = 18'h36fed; 13'b0010001001001: data_out = 18'h36c8e; 13'b0010001001010: data_out = 18'h367fb; 13'b0010001001011: data_out = 18'h366b4; 13'b0010001001100: data_out = 18'h371a5; 13'b0010001001101: data_out = 18'h368d5; 13'b0010001001110: data_out = 18'h36c8f; 13'b0010001001111: data_out = 18'h3708e; 13'b0010001010000: data_out = 18'h36a5d; 13'b0010001010001: data_out = 18'h36792; 13'b0010001010010: data_out = 18'h377c2; 13'b0010001010011: data_out = 18'h372c4; 13'b0010001010100: data_out = 18'h36b77; 13'b0010001010101: data_out = 18'h379f8; 13'b0010001010110: data_out = 18'h37780; 13'b0010001010111: data_out = 18'h372bc; 13'b0010001011000: data_out = 18'h37100; 13'b0010001011001: data_out = 18'h380b8; 13'b0010001011010: data_out = 18'h37958; 13'b0010001011011: data_out = 18'h377cb; 13'b0010001011100: data_out = 18'h38726; 13'b0010001011101: data_out = 18'h38548; 13'b0010001011110: data_out = 18'h37ff8; 13'b0010001011111: data_out = 18'h3875c; 13'b0010001100000: data_out = 18'h38c82; 13'b0010001100001: data_out = 18'h38e28; 13'b0010001100010: data_out = 18'h38a68; 13'b0010001100011: data_out = 18'h39714; 13'b0010001100100: data_out = 18'h38def; 13'b0010001100101: data_out = 18'h39fcc; 13'b0010001100110: data_out = 18'h39d77; 13'b0010001100111: data_out = 18'h39b9e; 13'b0010001101000: data_out = 18'h39c50; 13'b0010001101001: data_out = 18'h3a945; 13'b0010001101010: data_out = 18'h3ab59; 13'b0010001101011: data_out = 18'h3a39f; 13'b0010001101100: data_out = 18'h3b17f; 13'b0010001101101: data_out = 18'h3b304; 13'b0010001101110: data_out = 18'h3b70e; 13'b0010001101111: data_out = 18'h3b306; 13'b0010001110000: data_out = 18'h3bdba; 13'b0010001110001: data_out = 18'h3c085; 13'b0010001110010: data_out = 18'h3c134; 13'b0010001110011: data_out = 18'h3cb4b; 13'b0010001110100: data_out = 18'h3c09b; 13'b0010001110101: data_out = 18'h3ccbf; 13'b0010001110110: data_out = 18'h3d2fb; 13'b0010001110111: data_out = 18'h3d18a; 13'b0010001111000: data_out = 18'h3d1ab; 13'b0010001111001: data_out = 18'h3e4aa; 13'b0010001111010: data_out = 18'h3d86a; 13'b0010001111011: data_out = 18'h3df49; 13'b0010001111100: data_out = 18'h3df25; 13'b0010001111101: data_out = 18'h3e4cf; 13'b0010001111110: data_out = 18'h3ea40; 13'b0010001111111: data_out = 18'h3e903; 13'b0010010000000: data_out = 18'h3f2e9; 13'b0010010000001: data_out = 18'h3f701; 13'b0010010000010: data_out = 18'h3eda5; 13'b0010010000011: data_out = 18'h3ff7f; 13'b0010010000100: data_out = 18'h3f8fc; 13'b0010010000101: data_out = 18'h00418; 13'b0010010000110: data_out = 18'h3f5a3; 13'b0010010000111: data_out = 18'h00499; 13'b0010010001000: data_out = 18'h00ab1; 13'b0010010001001: data_out = 18'h00ba6; 13'b0010010001010: data_out = 18'h0004b; 13'b0010010001011: data_out = 18'h00d93; 13'b0010010001100: data_out = 18'h00c48; 13'b0010010001101: data_out = 18'h0186f; 13'b0010010001110: data_out = 18'h00e1e; 13'b0010010001111: data_out = 18'h0159e; 13'b0010010010000: data_out = 18'h01687; 13'b0010010010001: data_out = 18'h01d16; 13'b0010010010010: data_out = 18'h01a0f; 13'b0010010010011: data_out = 18'h02638; 13'b0010010010100: data_out = 18'h01b05; 13'b0010010010101: data_out = 18'h01f9f; 13'b0010010010110: data_out = 18'h0217c; 13'b0010010010111: data_out = 18'h025bf; 13'b0010010011000: data_out = 18'h02206; 13'b0010010011001: data_out = 18'h02c87; 13'b0010010011010: data_out = 18'h0373d; 13'b0010010011011: data_out = 18'h03070; 13'b0010010011100: data_out = 18'h02ac1; 13'b0010010011101: data_out = 18'h038a9; 13'b0010010011110: data_out = 18'h03b43; 13'b0010010011111: data_out = 18'h03e5b; 13'b0010010100000: data_out = 18'h036e6; 13'b0010010100001: data_out = 18'h03a18; 13'b0010010100010: data_out = 18'h04baf; 13'b0010010100011: data_out = 18'h04984; 13'b0010010100100: data_out = 18'h0473e; 13'b0010010100101: data_out = 18'h042dd; 13'b0010010100110: data_out = 18'h04f35; 13'b0010010100111: data_out = 18'h05996; 13'b0010010101000: data_out = 18'h04b96; 13'b0010010101001: data_out = 18'h056f1; 13'b0010010101010: data_out = 18'h05d45; 13'b0010010101011: data_out = 18'h05ce1; 13'b0010010101100: data_out = 18'h05467; 13'b0010010101101: data_out = 18'h06598; 13'b0010010101110: data_out = 18'h05f46; 13'b0010010101111: data_out = 18'h070c9; 13'b0010010110000: data_out = 18'h06bda; 13'b0010010110001: data_out = 18'h0662f; 13'b0010010110010: data_out = 18'h06ba2; 13'b0010010110011: data_out = 18'h074ca; 13'b0010010110100: data_out = 18'h07528; 13'b0010010110101: data_out = 18'h07df0; 13'b0010010110110: data_out = 18'h072ea; 13'b0010010110111: data_out = 18'h08404; 13'b0010010111000: data_out = 18'h07dd8; 13'b0010010111001: data_out = 18'h0868a; 13'b0010010111010: data_out = 18'h082a7; 13'b0010010111011: data_out = 18'h08192; 13'b0010010111100: data_out = 18'h08d8a; 13'b0010010111101: data_out = 18'h08eb7; 13'b0010010111110: data_out = 18'h08fd4; 13'b0010010111111: data_out = 18'h08fd5; 13'b0010011000000: data_out = 18'h08f11; 13'b0010011000001: data_out = 18'h09476; 13'b0010011000010: data_out = 18'h09ea8; 13'b0010011000011: data_out = 18'h09462; 13'b0010011000100: data_out = 18'h097be; 13'b0010011000101: data_out = 18'h098b1; 13'b0010011000110: data_out = 18'h09fda; 13'b0010011000111: data_out = 18'h0995d; 13'b0010011001000: data_out = 18'h09d77; 13'b0010011001001: data_out = 18'h09f61; 13'b0010011001010: data_out = 18'h09a43; 13'b0010011001011: data_out = 18'h09d01; 13'b0010011001100: data_out = 18'h09f29; 13'b0010011001101: data_out = 18'h09450; 13'b0010011001110: data_out = 18'h0a27a; 13'b0010011001111: data_out = 18'h09b94; 13'b0010011010000: data_out = 18'h09df8; 13'b0010011010001: data_out = 18'h09d26; 13'b0010011010010: data_out = 18'h09d5f; 13'b0010011010011: data_out = 18'h09884; 13'b0010011010100: data_out = 18'h097d1; 13'b0010011010101: data_out = 18'h095f0; 13'b0010011010110: data_out = 18'h09bc6; 13'b0010011010111: data_out = 18'h095cc; 13'b0010011011000: data_out = 18'h09c82; 13'b0010011011001: data_out = 18'h09204; 13'b0010011011010: data_out = 18'h08f8a; 13'b0010011011011: data_out = 18'h0914d; 13'b0010011011100: data_out = 18'h09187; 13'b0010011011101: data_out = 18'h08777; 13'b0010011011110: data_out = 18'h08bf8; 13'b0010011011111: data_out = 18'h08c53; 13'b0010011100000: data_out = 18'h08205; 13'b0010011100001: data_out = 18'h08a7d; 13'b0010011100010: data_out = 18'h0822e; 13'b0010011100011: data_out = 18'h07569; 13'b0010011100100: data_out = 18'h081d9; 13'b0010011100101: data_out = 18'h08181; 13'b0010011100110: data_out = 18'h07494; 13'b0010011100111: data_out = 18'h06de4; 13'b0010011101000: data_out = 18'h073b3; 13'b0010011101001: data_out = 18'h06e15; 13'b0010011101010: data_out = 18'h06bd9; 13'b0010011101011: data_out = 18'h06a08; 13'b0010011101100: data_out = 18'h063e8; 13'b0010011101101: data_out = 18'h06347; 13'b0010011101110: data_out = 18'h0544b; 13'b0010011101111: data_out = 18'h05ea5; 13'b0010011110000: data_out = 18'h059ff; 13'b0010011110001: data_out = 18'h04ad9; 13'b0010011110010: data_out = 18'h05929; 13'b0010011110011: data_out = 18'h04f53; 13'b0010011110100: data_out = 18'h04536; 13'b0010011110101: data_out = 18'h041e1; 13'b0010011110110: data_out = 18'h042eb; 13'b0010011110111: data_out = 18'h03ed4; 13'b0010011111000: data_out = 18'h04056; 13'b0010011111001: data_out = 18'h03198; 13'b0010011111010: data_out = 18'h0351f; 13'b0010011111011: data_out = 18'h0339c; 13'b0010011111100: data_out = 18'h02b0e; 13'b0010011111101: data_out = 18'h027ad; 13'b0010011111110: data_out = 18'h02717; 13'b0010011111111: data_out = 18'h024f2; 13'b0010100000000: data_out = 18'h01ddd; 13'b0010100000001: data_out = 18'h01b41; 13'b0010100000010: data_out = 18'h015f3; 13'b0010100000011: data_out = 18'h011c3; 13'b0010100000100: data_out = 18'h0141a; 13'b0010100000101: data_out = 18'h011f1; 13'b0010100000110: data_out = 18'h00a4e; 13'b0010100000111: data_out = 18'h00981; 13'b0010100001000: data_out = 18'h004f1; 13'b0010100001001: data_out = 18'h3fe62; 13'b0010100001010: data_out = 18'h3fc94; 13'b0010100001011: data_out = 18'h00391; 13'b0010100001100: data_out = 18'h3f524; 13'b0010100001101: data_out = 18'h3fc66; 13'b0010100001110: data_out = 18'h3eaf8; 13'b0010100001111: data_out = 18'h3f9f2; 13'b0010100010000: data_out = 18'h3eef2; 13'b0010100010001: data_out = 18'h3f074; 13'b0010100010010: data_out = 18'h3e674; 13'b0010100010011: data_out = 18'h3e84b; 13'b0010100010100: data_out = 18'h3f18c; 13'b0010100010101: data_out = 18'h3e76d; 13'b0010100010110: data_out = 18'h3e0c6; 13'b0010100010111: data_out = 18'h3e617; 13'b0010100011000: data_out = 18'h3dba4; 13'b0010100011001: data_out = 18'h3e26d; 13'b0010100011010: data_out = 18'h3dd38; 13'b0010100011011: data_out = 18'h3de9d; 13'b0010100011100: data_out = 18'h3d6ce; 13'b0010100011101: data_out = 18'h3d3ad; 13'b0010100011110: data_out = 18'h3d8f8; 13'b0010100011111: data_out = 18'h3cf16; 13'b0010100100000: data_out = 18'h3d85a; 13'b0010100100001: data_out = 18'h3d7ea; 13'b0010100100010: data_out = 18'h3cc96; 13'b0010100100011: data_out = 18'h3cf1b; 13'b0010100100100: data_out = 18'h3d164; 13'b0010100100101: data_out = 18'h3bd77; 13'b0010100100110: data_out = 18'h3c6de; 13'b0010100100111: data_out = 18'h3cf01; 13'b0010100101000: data_out = 18'h3c34c; 13'b0010100101001: data_out = 18'h3c2eb; 13'b0010100101010: data_out = 18'h3c2e7; 13'b0010100101011: data_out = 18'h3bc3d; 13'b0010100101100: data_out = 18'h3c216; 13'b0010100101101: data_out = 18'h3bc30; 13'b0010100101110: data_out = 18'h3ae78; 13'b0010100101111: data_out = 18'h3ba39; 13'b0010100110000: data_out = 18'h3b165; 13'b0010100110001: data_out = 18'h3afe4; 13'b0010100110010: data_out = 18'h3b712; 13'b0010100110011: data_out = 18'h3a4eb; 13'b0010100110100: data_out = 18'h3a683; 13'b0010100110101: data_out = 18'h3a84a; 13'b0010100110110: data_out = 18'h3a3eb; 13'b0010100110111: data_out = 18'h3a123; 13'b0010100111000: data_out = 18'h39f91; 13'b0010100111001: data_out = 18'h39bf7; 13'b0010100111010: data_out = 18'h3936c; 13'b0010100111011: data_out = 18'h39295; 13'b0010100111100: data_out = 18'h38c1a; 13'b0010100111101: data_out = 18'h39167; 13'b0010100111110: data_out = 18'h384de; 13'b0010100111111: data_out = 18'h38b91; 13'b0010101000000: data_out = 18'h37c6d; 13'b0010101000001: data_out = 18'h3884b; 13'b0010101000010: data_out = 18'h37f6a; 13'b0010101000011: data_out = 18'h36ed1; 13'b0010101000100: data_out = 18'h37925; 13'b0010101000101: data_out = 18'h37ca2; 13'b0010101000110: data_out = 18'h36f39; 13'b0010101000111: data_out = 18'h370a2; 13'b0010101001000: data_out = 18'h36b05; 13'b0010101001001: data_out = 18'h3675a; 13'b0010101001010: data_out = 18'h36d4a; 13'b0010101001011: data_out = 18'h364ae; 13'b0010101001100: data_out = 18'h362f9; 13'b0010101001101: data_out = 18'h3678b; 13'b0010101001110: data_out = 18'h36034; 13'b0010101001111: data_out = 18'h35e8d; 13'b0010101010000: data_out = 18'h361a5; 13'b0010101010001: data_out = 18'h35d0c; 13'b0010101010010: data_out = 18'h3617c; 13'b0010101010011: data_out = 18'h35fef; 13'b0010101010100: data_out = 18'h357b0; 13'b0010101010101: data_out = 18'h361ab; 13'b0010101010110: data_out = 18'h35999; 13'b0010101010111: data_out = 18'h35b86; 13'b0010101011000: data_out = 18'h35b3b; 13'b0010101011001: data_out = 18'h35d8e; 13'b0010101011010: data_out = 18'h35ac7; 13'b0010101011011: data_out = 18'h35dbb; 13'b0010101011100: data_out = 18'h35f1e; 13'b0010101011101: data_out = 18'h35d12; 13'b0010101011110: data_out = 18'h35cd5; 13'b0010101011111: data_out = 18'h36155; 13'b0010101100000: data_out = 18'h35f7e; 13'b0010101100001: data_out = 18'h36479; 13'b0010101100010: data_out = 18'h35ee6; 13'b0010101100011: data_out = 18'h36254; 13'b0010101100100: data_out = 18'h36870; 13'b0010101100101: data_out = 18'h36885; 13'b0010101100110: data_out = 18'h36624; 13'b0010101100111: data_out = 18'h370c2; 13'b0010101101000: data_out = 18'h36855; 13'b0010101101001: data_out = 18'h37282; 13'b0010101101010: data_out = 18'h37318; 13'b0010101101011: data_out = 18'h37352; 13'b0010101101100: data_out = 18'h37721; 13'b0010101101101: data_out = 18'h37999; 13'b0010101101110: data_out = 18'h37d06; 13'b0010101101111: data_out = 18'h37eee; 13'b0010101110000: data_out = 18'h3823b; 13'b0010101110001: data_out = 18'h381ff; 13'b0010101110010: data_out = 18'h387c4; 13'b0010101110011: data_out = 18'h38de4; 13'b0010101110100: data_out = 18'h389ca; 13'b0010101110101: data_out = 18'h39641; 13'b0010101110110: data_out = 18'h396af; 13'b0010101110111: data_out = 18'h3932e; 13'b0010101111000: data_out = 18'h3a0c9; 13'b0010101111001: data_out = 18'h39d07; 13'b0010101111010: data_out = 18'h39fdc; 13'b0010101111011: data_out = 18'h3a140; 13'b0010101111100: data_out = 18'h3b4a7; 13'b0010101111101: data_out = 18'h3a9e7; 13'b0010101111110: data_out = 18'h3b4bf; 13'b0010101111111: data_out = 18'h3b0cb; 13'b0010110000000: data_out = 18'h3b769; 13'b0010110000001: data_out = 18'h3be97; 13'b0010110000010: data_out = 18'h3c4b2; 13'b0010110000011: data_out = 18'h3c391; 13'b0010110000100: data_out = 18'h3c364; 13'b0010110000101: data_out = 18'h3ca28; 13'b0010110000110: data_out = 18'h3cdd4; 13'b0010110000111: data_out = 18'h3cf13; 13'b0010110001000: data_out = 18'h3dc1b; 13'b0010110001001: data_out = 18'h3d374; 13'b0010110001010: data_out = 18'h3dead; 13'b0010110001011: data_out = 18'h3df15; 13'b0010110001100: data_out = 18'h3e4c0; 13'b0010110001101: data_out = 18'h3dfec; 13'b0010110001110: data_out = 18'h3ecb6; 13'b0010110001111: data_out = 18'h3ea96; 13'b0010110010000: data_out = 18'h3f052; 13'b0010110010001: data_out = 18'h3efdf; 13'b0010110010010: data_out = 18'h3f524; 13'b0010110010011: data_out = 18'h3f706; 13'b0010110010100: data_out = 18'h3f8cb; 13'b0010110010101: data_out = 18'h3fb61; 13'b0010110010110: data_out = 18'h3fb5e; 13'b0010110010111: data_out = 18'h00939; 13'b0010110011000: data_out = 18'h3ffd2; 13'b0010110011001: data_out = 18'h00c52; 13'b0010110011010: data_out = 18'h00789; 13'b0010110011011: data_out = 18'h00b38; 13'b0010110011100: data_out = 18'h00ed2; 13'b0010110011101: data_out = 18'h01062; 13'b0010110011110: data_out = 18'h01ad6; 13'b0010110011111: data_out = 18'h00906; 13'b0010110100000: data_out = 18'h01d2a; 13'b0010110100001: data_out = 18'h01463; 13'b0010110100010: data_out = 18'h020bb; 13'b0010110100011: data_out = 18'h016aa; 13'b0010110100100: data_out = 18'h01afe; 13'b0010110100101: data_out = 18'h0245a; 13'b0010110100110: data_out = 18'h0225f; 13'b0010110100111: data_out = 18'h01fc9; 13'b0010110101000: data_out = 18'h02ea9; 13'b0010110101001: data_out = 18'h02c69; 13'b0010110101010: data_out = 18'h026a7; 13'b0010110101011: data_out = 18'h0216b; 13'b0010110101100: data_out = 18'h03692; 13'b0010110101101: data_out = 18'h03283; 13'b0010110101110: data_out = 18'h0277f; 13'b0010110101111: data_out = 18'h02d14; 13'b0010110110000: data_out = 18'h03aed; 13'b0010110110001: data_out = 18'h03098; 13'b0010110110010: data_out = 18'h03698; 13'b0010110110011: data_out = 18'h03d41; 13'b0010110110100: data_out = 18'h0375f; 13'b0010110110101: data_out = 18'h037fe; 13'b0010110110110: data_out = 18'h0438c; 13'b0010110110111: data_out = 18'h03f6f; 13'b0010110111000: data_out = 18'h03aa2; 13'b0010110111001: data_out = 18'h04720; 13'b0010110111010: data_out = 18'h044c7; 13'b0010110111011: data_out = 18'h04a48; 13'b0010110111100: data_out = 18'h044d5; 13'b0010110111101: data_out = 18'h046cf; 13'b0010110111110: data_out = 18'h04f0b; 13'b0010110111111: data_out = 18'h0533d; 13'b0010111000000: data_out = 18'h04c58; 13'b0010111000001: data_out = 18'h05640; 13'b0010111000010: data_out = 18'h055c8; 13'b0010111000011: data_out = 18'h05359; 13'b0010111000100: data_out = 18'h0612c; 13'b0010111000101: data_out = 18'h05ce4; 13'b0010111000110: data_out = 18'h05f8f; 13'b0010111000111: data_out = 18'h058c9; 13'b0010111001000: data_out = 18'h06879; 13'b0010111001001: data_out = 18'h0699c; 13'b0010111001010: data_out = 18'h06925; 13'b0010111001011: data_out = 18'h06365; 13'b0010111001100: data_out = 18'h073bb; 13'b0010111001101: data_out = 18'h07562; 13'b0010111001110: data_out = 18'h07191; 13'b0010111001111: data_out = 18'h077e3; 13'b0010111010000: data_out = 18'h07dad; 13'b0010111010001: data_out = 18'h07bf4; 13'b0010111010010: data_out = 18'h08311; 13'b0010111010011: data_out = 18'h07ce2; 13'b0010111010100: data_out = 18'h08758; 13'b0010111010101: data_out = 18'h08dd6; 13'b0010111010110: data_out = 18'h08d5e; 13'b0010111010111: data_out = 18'h08a07; 13'b0010111011000: data_out = 18'h08cc8; 13'b0010111011001: data_out = 18'h08f81; 13'b0010111011010: data_out = 18'h09902; 13'b0010111011011: data_out = 18'h09445; 13'b0010111011100: data_out = 18'h08e95; 13'b0010111011101: data_out = 18'h09e5f; 13'b0010111011110: data_out = 18'h0a054; 13'b0010111011111: data_out = 18'h09a83; 13'b0010111100000: data_out = 18'h09e74; 13'b0010111100001: data_out = 18'h09e89; 13'b0010111100010: data_out = 18'h09ac7; 13'b0010111100011: data_out = 18'h0a2ab; 13'b0010111100100: data_out = 18'h0a151; 13'b0010111100101: data_out = 18'h0a1d0; 13'b0010111100110: data_out = 18'h0a248; 13'b0010111100111: data_out = 18'h0a50a; 13'b0010111101000: data_out = 18'h0a103; 13'b0010111101001: data_out = 18'h0a2c9; 13'b0010111101010: data_out = 18'h0a5a2; 13'b0010111101011: data_out = 18'h0a24a; 13'b0010111101100: data_out = 18'h0a661; 13'b0010111101101: data_out = 18'h09e4e; 13'b0010111101110: data_out = 18'h0a64a; 13'b0010111101111: data_out = 18'h0a033; 13'b0010111110000: data_out = 18'h0a1f2; 13'b0010111110001: data_out = 18'h0a196; 13'b0010111110010: data_out = 18'h0a097; 13'b0010111110011: data_out = 18'h09d51; 13'b0010111110100: data_out = 18'h0a0b8; 13'b0010111110101: data_out = 18'h09a80; 13'b0010111110110: data_out = 18'h09b46; 13'b0010111110111: data_out = 18'h09e00; 13'b0010111111000: data_out = 18'h098cb; 13'b0010111111001: data_out = 18'h08f1f; 13'b0010111111010: data_out = 18'h09b98; 13'b0010111111011: data_out = 18'h08f7d; 13'b0010111111100: data_out = 18'h08d54; 13'b0010111111101: data_out = 18'h090f8; 13'b0010111111110: data_out = 18'h08b54; 13'b0010111111111: data_out = 18'h08b67; 13'b0011000000000: data_out = 18'h08893; 13'b0011000000001: data_out = 18'h07e35; 13'b0011000000010: data_out = 18'h0850d; 13'b0011000000011: data_out = 18'h07b2a; 13'b0011000000100: data_out = 18'h07a61; 13'b0011000000101: data_out = 18'h07770; 13'b0011000000110: data_out = 18'h078da; 13'b0011000000111: data_out = 18'h06e4f; 13'b0011000001000: data_out = 18'h07476; 13'b0011000001001: data_out = 18'h06b1d; 13'b0011000001010: data_out = 18'h05f33; 13'b0011000001011: data_out = 18'h0701b; 13'b0011000001100: data_out = 18'h05fce; 13'b0011000001101: data_out = 18'h05e88; 13'b0011000001110: data_out = 18'h057cb; 13'b0011000001111: data_out = 18'h05c35; 13'b0011000010000: data_out = 18'h0547e; 13'b0011000010001: data_out = 18'h05029; 13'b0011000010010: data_out = 18'h050ae; 13'b0011000010011: data_out = 18'h04a49; 13'b0011000010100: data_out = 18'h041e0; 13'b0011000010101: data_out = 18'h0465d; 13'b0011000010110: data_out = 18'h040e7; 13'b0011000010111: data_out = 18'h03b1e; 13'b0011000011000: data_out = 18'h03ac1; 13'b0011000011001: data_out = 18'h0327b; 13'b0011000011010: data_out = 18'h037c1; 13'b0011000011011: data_out = 18'h02820; 13'b0011000011100: data_out = 18'h02fea; 13'b0011000011101: data_out = 18'h026de; 13'b0011000011110: data_out = 18'h0247c; 13'b0011000011111: data_out = 18'h02160; 13'b0011000100000: data_out = 18'h01e78; 13'b0011000100001: data_out = 18'h01eba; 13'b0011000100010: data_out = 18'h01527; 13'b0011000100011: data_out = 18'h016da; 13'b0011000100100: data_out = 18'h00f4e; 13'b0011000100101: data_out = 18'h010fa; 13'b0011000100110: data_out = 18'h00bae; 13'b0011000100111: data_out = 18'h007f8; 13'b0011000101000: data_out = 18'h00768; 13'b0011000101001: data_out = 18'h00182; 13'b0011000101010: data_out = 18'h001ab; 13'b0011000101011: data_out = 18'h3fbe0; 13'b0011000101100: data_out = 18'h000ee; 13'b0011000101101: data_out = 18'h3f1b4; 13'b0011000101110: data_out = 18'h3f870; 13'b0011000101111: data_out = 18'h3f678; 13'b0011000110000: data_out = 18'h3ee49; 13'b0011000110001: data_out = 18'h3ef4d; 13'b0011000110010: data_out = 18'h3ed73; 13'b0011000110011: data_out = 18'h3edbf; 13'b0011000110100: data_out = 18'h3e4d5; 13'b0011000110101: data_out = 18'h3e8b2; 13'b0011000110110: data_out = 18'h3e71b; 13'b0011000110111: data_out = 18'h3e1ae; 13'b0011000111000: data_out = 18'h3e015; 13'b0011000111001: data_out = 18'h3ddcd; 13'b0011000111010: data_out = 18'h3dda7; 13'b0011000111011: data_out = 18'h3db0c; 13'b0011000111100: data_out = 18'h3d65f; 13'b0011000111101: data_out = 18'h3db9c; 13'b0011000111110: data_out = 18'h3d3d7; 13'b0011000111111: data_out = 18'h3d7c0; 13'b0011001000000: data_out = 18'h3d191; 13'b0011001000001: data_out = 18'h3d11e; 13'b0011001000010: data_out = 18'h3cb8a; 13'b0011001000011: data_out = 18'h3d4bb; 13'b0011001000100: data_out = 18'h3cc25; 13'b0011001000101: data_out = 18'h3ca95; 13'b0011001000110: data_out = 18'h3c968; 13'b0011001000111: data_out = 18'h3cbbe; 13'b0011001001000: data_out = 18'h3c929; 13'b0011001001001: data_out = 18'h3c249; 13'b0011001001010: data_out = 18'h3c9ed; 13'b0011001001011: data_out = 18'h3bf65; 13'b0011001001100: data_out = 18'h3c6f6; 13'b0011001001101: data_out = 18'h3c06a; 13'b0011001001110: data_out = 18'h3bdf4; 13'b0011001001111: data_out = 18'h3c0fc; 13'b0011001010000: data_out = 18'h3bd45; 13'b0011001010001: data_out = 18'h3bb97; 13'b0011001010010: data_out = 18'h3bd09; 13'b0011001010011: data_out = 18'h3b93f; 13'b0011001010100: data_out = 18'h3b647; 13'b0011001010101: data_out = 18'h3b4f6; 13'b0011001010110: data_out = 18'h3b5ff; 13'b0011001010111: data_out = 18'h3af0d; 13'b0011001011000: data_out = 18'h3b5ae; 13'b0011001011001: data_out = 18'h3b3ea; 13'b0011001011010: data_out = 18'h3a75d; 13'b0011001011011: data_out = 18'h3ae64; 13'b0011001011100: data_out = 18'h3a2db; 13'b0011001011101: data_out = 18'h3aa2d; 13'b0011001011110: data_out = 18'h3a62e; 13'b0011001011111: data_out = 18'h3a095; 13'b0011001100000: data_out = 18'h39fd8; 13'b0011001100001: data_out = 18'h39b6d; 13'b0011001100010: data_out = 18'h3957d; 13'b0011001100011: data_out = 18'h39a7d; 13'b0011001100100: data_out = 18'h39058; 13'b0011001100101: data_out = 18'h39364; 13'b0011001100110: data_out = 18'h38fb6; 13'b0011001100111: data_out = 18'h38544; 13'b0011001101000: data_out = 18'h38a4e; 13'b0011001101001: data_out = 18'h38a4f; 13'b0011001101010: data_out = 18'h37f27; 13'b0011001101011: data_out = 18'h37dd0; 13'b0011001101100: data_out = 18'h37f86; 13'b0011001101101: data_out = 18'h37c72; 13'b0011001101110: data_out = 18'h374ad; 13'b0011001101111: data_out = 18'h3714f; 13'b0011001110000: data_out = 18'h36f48; 13'b0011001110001: data_out = 18'h37471; 13'b0011001110010: data_out = 18'h36e59; 13'b0011001110011: data_out = 18'h36370; 13'b0011001110100: data_out = 18'h369a2; 13'b0011001110101: data_out = 18'h367e8; 13'b0011001110110: data_out = 18'h363e7; 13'b0011001110111: data_out = 18'h362a0; 13'b0011001111000: data_out = 18'h35ce1; 13'b0011001111001: data_out = 18'h35f3a; 13'b0011001111010: data_out = 18'h3609f; 13'b0011001111011: data_out = 18'h35e11; 13'b0011001111100: data_out = 18'h35b01; 13'b0011001111101: data_out = 18'h35c2e; 13'b0011001111110: data_out = 18'h359e5; 13'b0011001111111: data_out = 18'h3582e; 13'b0011010000000: data_out = 18'h35970; 13'b0011010000001: data_out = 18'h357e5; 13'b0011010000010: data_out = 18'h35991; 13'b0011010000011: data_out = 18'h357df; 13'b0011010000100: data_out = 18'h35a59; 13'b0011010000101: data_out = 18'h35859; 13'b0011010000110: data_out = 18'h359d9; 13'b0011010000111: data_out = 18'h35832; 13'b0011010001000: data_out = 18'h3591e; 13'b0011010001001: data_out = 18'h35c4e; 13'b0011010001010: data_out = 18'h359f9; 13'b0011010001011: data_out = 18'h35b43; 13'b0011010001100: data_out = 18'h35bcf; 13'b0011010001101: data_out = 18'h3612c; 13'b0011010001110: data_out = 18'h35e03; 13'b0011010001111: data_out = 18'h35ff7; 13'b0011010010000: data_out = 18'h35e97; 13'b0011010010001: data_out = 18'h365a3; 13'b0011010010010: data_out = 18'h35fb1; 13'b0011010010011: data_out = 18'h36885; 13'b0011010010100: data_out = 18'h36aa8; 13'b0011010010101: data_out = 18'h36c21; 13'b0011010010110: data_out = 18'h36e12; 13'b0011010010111: data_out = 18'h36fee; 13'b0011010011000: data_out = 18'h3741d; 13'b0011010011001: data_out = 18'h378ac; 13'b0011010011010: data_out = 18'h376d4; 13'b0011010011011: data_out = 18'h379fb; 13'b0011010011100: data_out = 18'h3807c; 13'b0011010011101: data_out = 18'h383e6; 13'b0011010011110: data_out = 18'h38350; 13'b0011010011111: data_out = 18'h38b47; 13'b0011010100000: data_out = 18'h389a4; 13'b0011010100001: data_out = 18'h39567; 13'b0011010100010: data_out = 18'h38e34; 13'b0011010100011: data_out = 18'h3964a; 13'b0011010100100: data_out = 18'h39b11; 13'b0011010100101: data_out = 18'h39cd9; 13'b0011010100110: data_out = 18'h39f1c; 13'b0011010100111: data_out = 18'h3a722; 13'b0011010101000: data_out = 18'h3a583; 13'b0011010101001: data_out = 18'h3a951; 13'b0011010101010: data_out = 18'h3b253; 13'b0011010101011: data_out = 18'h3b2b3; 13'b0011010101100: data_out = 18'h3b383; 13'b0011010101101: data_out = 18'h3b9f8; 13'b0011010101110: data_out = 18'h3becc; 13'b0011010101111: data_out = 18'h3beb7; 13'b0011010110000: data_out = 18'h3c1ad; 13'b0011010110001: data_out = 18'h3ca64; 13'b0011010110010: data_out = 18'h3c7be; 13'b0011010110011: data_out = 18'h3cd9b; 13'b0011010110100: data_out = 18'h3d4d0; 13'b0011010110101: data_out = 18'h3d01c; 13'b0011010110110: data_out = 18'h3da67; 13'b0011010110111: data_out = 18'h3dae5; 13'b0011010111000: data_out = 18'h3df1f; 13'b0011010111001: data_out = 18'h3e6ba; 13'b0011010111010: data_out = 18'h3dfe4; 13'b0011010111011: data_out = 18'h3ea2e; 13'b0011010111100: data_out = 18'h3e99d; 13'b0011010111101: data_out = 18'h3edc8; 13'b0011010111110: data_out = 18'h3f808; 13'b0011010111111: data_out = 18'h3f0a1; 13'b0011011000000: data_out = 18'h3f5fb; 13'b0011011000001: data_out = 18'h3fb0c; 13'b0011011000010: data_out = 18'h3ff3c; 13'b0011011000011: data_out = 18'h002c2; 13'b0011011000100: data_out = 18'h3fec2; 13'b0011011000101: data_out = 18'h00353; 13'b0011011000110: data_out = 18'h009e6; 13'b0011011000111: data_out = 18'h00c02; 13'b0011011001000: data_out = 18'h00abe; 13'b0011011001001: data_out = 18'h00f94; 13'b0011011001010: data_out = 18'h01220; 13'b0011011001011: data_out = 18'h012a4; 13'b0011011001100: data_out = 18'h019a0; 13'b0011011001101: data_out = 18'h0155d; 13'b0011011001110: data_out = 18'h01339; 13'b0011011001111: data_out = 18'h02062; 13'b0011011010000: data_out = 18'h01cb3; 13'b0011011010001: data_out = 18'h02315; 13'b0011011010010: data_out = 18'h02266; 13'b0011011010011: data_out = 18'h02182; 13'b0011011010100: data_out = 18'h029c6; 13'b0011011010101: data_out = 18'h02691; 13'b0011011010110: data_out = 18'h029f5; 13'b0011011010111: data_out = 18'h028f3; 13'b0011011011000: data_out = 18'h02bf7; 13'b0011011011001: data_out = 18'h02d18; 13'b0011011011010: data_out = 18'h0311d; 13'b0011011011011: data_out = 18'h03204; 13'b0011011011100: data_out = 18'h0315a; 13'b0011011011101: data_out = 18'h03171; 13'b0011011011110: data_out = 18'h035af; 13'b0011011011111: data_out = 18'h0380b; 13'b0011011100000: data_out = 18'h03779; 13'b0011011100001: data_out = 18'h0360f; 13'b0011011100010: data_out = 18'h03c0b; 13'b0011011100011: data_out = 18'h03aeb; 13'b0011011100100: data_out = 18'h03d8c; 13'b0011011100101: data_out = 18'h03c15; 13'b0011011100110: data_out = 18'h04062; 13'b0011011100111: data_out = 18'h041fb; 13'b0011011101000: data_out = 18'h044c1; 13'b0011011101001: data_out = 18'h03e75; 13'b0011011101010: data_out = 18'h03ea9; 13'b0011011101011: data_out = 18'h04c83; 13'b0011011101100: data_out = 18'h04477; 13'b0011011101101: data_out = 18'h04999; 13'b0011011101110: data_out = 18'h04c04; 13'b0011011101111: data_out = 18'h047fa; 13'b0011011110000: data_out = 18'h04ae3; 13'b0011011110001: data_out = 18'h04f95; 13'b0011011110010: data_out = 18'h04e64; 13'b0011011110011: data_out = 18'h04ff6; 13'b0011011110100: data_out = 18'h04fc1; 13'b0011011110101: data_out = 18'h05a29; 13'b0011011110110: data_out = 18'h055a7; 13'b0011011110111: data_out = 18'h055e6; 13'b0011011111000: data_out = 18'h0570b; 13'b0011011111001: data_out = 18'h05cf5; 13'b0011011111010: data_out = 18'h05d55; 13'b0011011111011: data_out = 18'h061b8; 13'b0011011111100: data_out = 18'h05e5e; 13'b0011011111101: data_out = 18'h064f8; 13'b0011011111110: data_out = 18'h0650e; 13'b0011011111111: data_out = 18'h06bfd; 13'b0011100000000: data_out = 18'h06a74; 13'b0011100000001: data_out = 18'h0660d; 13'b0011100000010: data_out = 18'h06fe2; 13'b0011100000011: data_out = 18'h06f95; 13'b0011100000100: data_out = 18'h07618; 13'b0011100000101: data_out = 18'h07201; 13'b0011100000110: data_out = 18'h07704; 13'b0011100000111: data_out = 18'h07b49; 13'b0011100001000: data_out = 18'h07c6c; 13'b0011100001001: data_out = 18'h0815e; 13'b0011100001010: data_out = 18'h07ded; 13'b0011100001011: data_out = 18'h08811; 13'b0011100001100: data_out = 18'h081da; 13'b0011100001101: data_out = 18'h08a46; 13'b0011100001110: data_out = 18'h08d8f; 13'b0011100001111: data_out = 18'h08ead; 13'b0011100010000: data_out = 18'h0936c; 13'b0011100010001: data_out = 18'h08ed9; 13'b0011100010010: data_out = 18'h09303; 13'b0011100010011: data_out = 18'h09981; 13'b0011100010100: data_out = 18'h09791; 13'b0011100010101: data_out = 18'h098e8; 13'b0011100010110: data_out = 18'h09d38; 13'b0011100010111: data_out = 18'h09b6a; 13'b0011100011000: data_out = 18'h09ec0; 13'b0011100011001: data_out = 18'h0a224; 13'b0011100011010: data_out = 18'h0a05e; 13'b0011100011011: data_out = 18'h0a28e; 13'b0011100011100: data_out = 18'h0a11b; 13'b0011100011101: data_out = 18'h0a483; 13'b0011100011110: data_out = 18'h0a474; 13'b0011100011111: data_out = 18'h0a1c7; 13'b0011100100000: data_out = 18'h0a5ba; 13'b0011100100001: data_out = 18'h0a7e1; 13'b0011100100010: data_out = 18'h0a4e6; 13'b0011100100011: data_out = 18'h0a781; 13'b0011100100100: data_out = 18'h0a411; 13'b0011100100101: data_out = 18'h0a531; 13'b0011100100110: data_out = 18'h0a9a7; 13'b0011100100111: data_out = 18'h0a692; 13'b0011100101000: data_out = 18'h0a1a5; 13'b0011100101001: data_out = 18'h0a530; 13'b0011100101010: data_out = 18'h0a638; 13'b0011100101011: data_out = 18'h0a440; 13'b0011100101100: data_out = 18'h0a54c; 13'b0011100101101: data_out = 18'h0a29e; 13'b0011100101110: data_out = 18'h09e9d; 13'b0011100101111: data_out = 18'h0a3d8; 13'b0011100110000: data_out = 18'h09f7b; 13'b0011100110001: data_out = 18'h0a047; 13'b0011100110010: data_out = 18'h09c0b; 13'b0011100110011: data_out = 18'h09d15; 13'b0011100110100: data_out = 18'h09a5d; 13'b0011100110101: data_out = 18'h09a26; 13'b0011100110110: data_out = 18'h09445; 13'b0011100110111: data_out = 18'h0957e; 13'b0011100111000: data_out = 18'h08d4a; 13'b0011100111001: data_out = 18'h090d0; 13'b0011100111010: data_out = 18'h09033; 13'b0011100111011: data_out = 18'h08719; 13'b0011100111100: data_out = 18'h08941; 13'b0011100111101: data_out = 18'h084cf; 13'b0011100111110: data_out = 18'h0804e; 13'b0011100111111: data_out = 18'h07d11; 13'b0011101000000: data_out = 18'h07f3a; 13'b0011101000001: data_out = 18'h074a1; 13'b0011101000010: data_out = 18'h07716; 13'b0011101000011: data_out = 18'h07480; 13'b0011101000100: data_out = 18'h069b5; 13'b0011101000101: data_out = 18'h07200; 13'b0011101000110: data_out = 18'h064e3; 13'b0011101000111: data_out = 18'h06540; 13'b0011101001000: data_out = 18'h05e57; 13'b0011101001001: data_out = 18'h05ee7; 13'b0011101001010: data_out = 18'h05c91; 13'b0011101001011: data_out = 18'h0594c; 13'b0011101001100: data_out = 18'h0546a; 13'b0011101001101: data_out = 18'h04ba3; 13'b0011101001110: data_out = 18'h050ed; 13'b0011101001111: data_out = 18'h04b60; 13'b0011101010000: data_out = 18'h042cf; 13'b0011101010001: data_out = 18'h04513; 13'b0011101010010: data_out = 18'h040e8; 13'b0011101010011: data_out = 18'h0381a; 13'b0011101010100: data_out = 18'h03d3a; 13'b0011101010101: data_out = 18'h03118; 13'b0011101010110: data_out = 18'h034a3; 13'b0011101010111: data_out = 18'h03079; 13'b0011101011000: data_out = 18'h02ab2; 13'b0011101011001: data_out = 18'h02bed; 13'b0011101011010: data_out = 18'h02221; 13'b0011101011011: data_out = 18'h02225; 13'b0011101011100: data_out = 18'h01ee4; 13'b0011101011101: data_out = 18'h01d26; 13'b0011101011110: data_out = 18'h0156b; 13'b0011101011111: data_out = 18'h01bdb; 13'b0011101100000: data_out = 18'h01054; 13'b0011101100001: data_out = 18'h01000; 13'b0011101100010: data_out = 18'h00dbd; 13'b0011101100011: data_out = 18'h00678; 13'b0011101100100: data_out = 18'h009de; 13'b0011101100101: data_out = 18'h006a6; 13'b0011101100110: data_out = 18'h3fdf5; 13'b0011101100111: data_out = 18'h3ff05; 13'b0011101101000: data_out = 18'h3fc0f; 13'b0011101101001: data_out = 18'h3fd41; 13'b0011101101010: data_out = 18'h3f676; 13'b0011101101011: data_out = 18'h3f428; 13'b0011101101100: data_out = 18'h3efc1; 13'b0011101101101: data_out = 18'h3f169; 13'b0011101101110: data_out = 18'h3ebf2; 13'b0011101101111: data_out = 18'h3eca8; 13'b0011101110000: data_out = 18'h3e9ba; 13'b0011101110001: data_out = 18'h3e84d; 13'b0011101110010: data_out = 18'h3e22d; 13'b0011101110011: data_out = 18'h3e42d; 13'b0011101110100: data_out = 18'h3e04f; 13'b0011101110101: data_out = 18'h3dd7d; 13'b0011101110110: data_out = 18'h3dd56; 13'b0011101110111: data_out = 18'h3dbc2; 13'b0011101111000: data_out = 18'h3db1c; 13'b0011101111001: data_out = 18'h3da1c; 13'b0011101111010: data_out = 18'h3d291; 13'b0011101111011: data_out = 18'h3d529; 13'b0011101111100: data_out = 18'h3d4c0; 13'b0011101111101: data_out = 18'h3cf8b; 13'b0011101111110: data_out = 18'h3d21f; 13'b0011101111111: data_out = 18'h3cd98; 13'b0011110000000: data_out = 18'h3ced3; 13'b0011110000001: data_out = 18'h3caf3; 13'b0011110000010: data_out = 18'h3cacd; 13'b0011110000011: data_out = 18'h3c993; 13'b0011110000100: data_out = 18'h3c9d0; 13'b0011110000101: data_out = 18'h3c4a9; 13'b0011110000110: data_out = 18'h3c41c; 13'b0011110000111: data_out = 18'h3c542; 13'b0011110001000: data_out = 18'h3c179; 13'b0011110001001: data_out = 18'h3c0d6; 13'b0011110001010: data_out = 18'h3bcd5; 13'b0011110001011: data_out = 18'h3bec1; 13'b0011110001100: data_out = 18'h3c2e0; 13'b0011110001101: data_out = 18'h3bb02; 13'b0011110001110: data_out = 18'h3b695; 13'b0011110001111: data_out = 18'h3b884; 13'b0011110010000: data_out = 18'h3ba45; 13'b0011110010001: data_out = 18'h3b715; 13'b0011110010010: data_out = 18'h3b5a8; 13'b0011110010011: data_out = 18'h3b070; 13'b0011110010100: data_out = 18'h3b640; 13'b0011110010101: data_out = 18'h3b491; 13'b0011110010110: data_out = 18'h3ae2c; 13'b0011110010111: data_out = 18'h3b058; 13'b0011110011000: data_out = 18'h3b385; 13'b0011110011001: data_out = 18'h3aaa5; 13'b0011110011010: data_out = 18'h3ae1e; 13'b0011110011011: data_out = 18'h3ad8b; 13'b0011110011100: data_out = 18'h3aa6e; 13'b0011110011101: data_out = 18'h3a98d; 13'b0011110011110: data_out = 18'h3a7fe; 13'b0011110011111: data_out = 18'h3a7cd; 13'b0011110100000: data_out = 18'h3a811; 13'b0011110100001: data_out = 18'h3a144; 13'b0011110100010: data_out = 18'h3a36c; 13'b0011110100011: data_out = 18'h3a73c; 13'b0011110100100: data_out = 18'h3a1ca; 13'b0011110100101: data_out = 18'h39d6e; 13'b0011110100110: data_out = 18'h3a037; 13'b0011110100111: data_out = 18'h39de3; 13'b0011110101000: data_out = 18'h39cc6; 13'b0011110101001: data_out = 18'h39460; 13'b0011110101010: data_out = 18'h39b13; 13'b0011110101011: data_out = 18'h399b5; 13'b0011110101100: data_out = 18'h39a39; 13'b0011110101101: data_out = 18'h3932f; 13'b0011110101110: data_out = 18'h38f38; 13'b0011110101111: data_out = 18'h39213; 13'b0011110110000: data_out = 18'h391fd; 13'b0011110110001: data_out = 18'h38f70; 13'b0011110110010: data_out = 18'h38ad4; 13'b0011110110011: data_out = 18'h380f2; 13'b0011110110100: data_out = 18'h3894b; 13'b0011110110101: data_out = 18'h3856a; 13'b0011110110110: data_out = 18'h3841f; 13'b0011110110111: data_out = 18'h382e3; 13'b0011110111000: data_out = 18'h37b54; 13'b0011110111001: data_out = 18'h37f8d; 13'b0011110111010: data_out = 18'h37af9; 13'b0011110111011: data_out = 18'h37ab8; 13'b0011110111100: data_out = 18'h37574; 13'b0011110111101: data_out = 18'h373bd; 13'b0011110111110: data_out = 18'h373e9; 13'b0011110111111: data_out = 18'h36efc; 13'b0011111000000: data_out = 18'h370d2; 13'b0011111000001: data_out = 18'h36e07; 13'b0011111000010: data_out = 18'h36a1d; 13'b0011111000011: data_out = 18'h36776; 13'b0011111000100: data_out = 18'h367b8; 13'b0011111000101: data_out = 18'h36413; 13'b0011111000110: data_out = 18'h3637a; 13'b0011111000111: data_out = 18'h363a1; 13'b0011111001000: data_out = 18'h361bf; 13'b0011111001001: data_out = 18'h35cd2; 13'b0011111001010: data_out = 18'h36120; 13'b0011111001011: data_out = 18'h35ca1; 13'b0011111001100: data_out = 18'h35c12; 13'b0011111001101: data_out = 18'h35ad7; 13'b0011111001110: data_out = 18'h35c06; 13'b0011111001111: data_out = 18'h359bf; 13'b0011111010000: data_out = 18'h359f7; 13'b0011111010001: data_out = 18'h359ed; 13'b0011111010010: data_out = 18'h3577f; 13'b0011111010011: data_out = 18'h35a97; 13'b0011111010100: data_out = 18'h35987; 13'b0011111010101: data_out = 18'h357f0; 13'b0011111010110: data_out = 18'h3568a; 13'b0011111010111: data_out = 18'h3587b; 13'b0011111011000: data_out = 18'h35a59; 13'b0011111011001: data_out = 18'h35a0e; 13'b0011111011010: data_out = 18'h35724; 13'b0011111011011: data_out = 18'h35b43; 13'b0011111011100: data_out = 18'h35b20; 13'b0011111011101: data_out = 18'h35c77; 13'b0011111011110: data_out = 18'h35d81; 13'b0011111011111: data_out = 18'h35bfc; 13'b0011111100000: data_out = 18'h35bfd; 13'b0011111100001: data_out = 18'h362ac; 13'b0011111100010: data_out = 18'h35fcd; 13'b0011111100011: data_out = 18'h36437; 13'b0011111100100: data_out = 18'h36074; 13'b0011111100101: data_out = 18'h365a2; 13'b0011111100110: data_out = 18'h36b06; 13'b0011111100111: data_out = 18'h36ce1; 13'b0011111101000: data_out = 18'h36a03; 13'b0011111101001: data_out = 18'h36fd7; 13'b0011111101010: data_out = 18'h3745c; 13'b0011111101011: data_out = 18'h37536; 13'b0011111101100: data_out = 18'h375ff; 13'b0011111101101: data_out = 18'h37b40; 13'b0011111101110: data_out = 18'h3801b; 13'b0011111101111: data_out = 18'h380fc; 13'b0011111110000: data_out = 18'h38671; 13'b0011111110001: data_out = 18'h38818; 13'b0011111110010: data_out = 18'h38b15; 13'b0011111110011: data_out = 18'h38e31; 13'b0011111110100: data_out = 18'h393eb; 13'b0011111110101: data_out = 18'h39651; 13'b0011111110110: data_out = 18'h39a09; 13'b0011111110111: data_out = 18'h39dec; 13'b0011111111000: data_out = 18'h39f7a; 13'b0011111111001: data_out = 18'h3a5d9; 13'b0011111111010: data_out = 18'h3a6c2; 13'b0011111111011: data_out = 18'h3aaa7; 13'b0011111111100: data_out = 18'h3ada8; 13'b0011111111101: data_out = 18'h3b64b; 13'b0011111111110: data_out = 18'h3b5a7; 13'b0011111111111: data_out = 18'h3ba91; 13'b0100000000000: data_out = 18'h3bb5c; 13'b0100000000001: data_out = 18'h3c0c0; 13'b0100000000010: data_out = 18'h3c46a; 13'b0100000000011: data_out = 18'h3ca16; 13'b0100000000100: data_out = 18'h3c83f; 13'b0100000000101: data_out = 18'h3d07b; 13'b0100000000110: data_out = 18'h3d1b2; 13'b0100000000111: data_out = 18'h3d82d; 13'b0100000001000: data_out = 18'h3d49a; 13'b0100000001001: data_out = 18'h3debc; 13'b0100000001010: data_out = 18'h3dddb; 13'b0100000001011: data_out = 18'h3e53f; 13'b0100000001100: data_out = 18'h3e40a; 13'b0100000001101: data_out = 18'h3e858; 13'b0100000001110: data_out = 18'h3ebf2; 13'b0100000001111: data_out = 18'h3f0a2; 13'b0100000010000: data_out = 18'h3f19e; 13'b0100000010001: data_out = 18'h3f6dd; 13'b0100000010010: data_out = 18'h3f824; 13'b0100000010011: data_out = 18'h3f6e2; 13'b0100000010100: data_out = 18'h0000c; 13'b0100000010101: data_out = 18'h001ae; 13'b0100000010110: data_out = 18'h005be; 13'b0100000010111: data_out = 18'h004e8; 13'b0100000011000: data_out = 18'h00a59; 13'b0100000011001: data_out = 18'h006ec; 13'b0100000011010: data_out = 18'h00f78; 13'b0100000011011: data_out = 18'h0111d; 13'b0100000011100: data_out = 18'h012ba; 13'b0100000011101: data_out = 18'h0135d; 13'b0100000011110: data_out = 18'h01837; 13'b0100000011111: data_out = 18'h0154c; 13'b0100000100000: data_out = 18'h02030; 13'b0100000100001: data_out = 18'h01bd2; 13'b0100000100010: data_out = 18'h02132; 13'b0100000100011: data_out = 18'h0214c; 13'b0100000100100: data_out = 18'h024c5; 13'b0100000100101: data_out = 18'h0244a; 13'b0100000100110: data_out = 18'h027c7; 13'b0100000100111: data_out = 18'h02853; 13'b0100000101000: data_out = 18'h02b17; 13'b0100000101001: data_out = 18'h02d06; 13'b0100000101010: data_out = 18'h02df6; 13'b0100000101011: data_out = 18'h03085; 13'b0100000101100: data_out = 18'h030b9; 13'b0100000101101: data_out = 18'h0328c; 13'b0100000101110: data_out = 18'h03278; 13'b0100000101111: data_out = 18'h036a8; 13'b0100000110000: data_out = 18'h0367d; 13'b0100000110001: data_out = 18'h038dd; 13'b0100000110010: data_out = 18'h0382e; 13'b0100000110011: data_out = 18'h03b45; 13'b0100000110100: data_out = 18'h03c16; 13'b0100000110101: data_out = 18'h0402a; 13'b0100000110110: data_out = 18'h03d00; 13'b0100000110111: data_out = 18'h0413f; 13'b0100000111000: data_out = 18'h041ef; 13'b0100000111001: data_out = 18'h04285; 13'b0100000111010: data_out = 18'h04693; 13'b0100000111011: data_out = 18'h04490; 13'b0100000111100: data_out = 18'h04601; 13'b0100000111101: data_out = 18'h047b7; 13'b0100000111110: data_out = 18'h0461c; 13'b0100000111111: data_out = 18'h04b5c; 13'b0100001000000: data_out = 18'h04e17; 13'b0100001000001: data_out = 18'h0466b; 13'b0100001000010: data_out = 18'h04ce8; 13'b0100001000011: data_out = 18'h05007; 13'b0100001000100: data_out = 18'h04ee7; 13'b0100001000101: data_out = 18'h05120; 13'b0100001000110: data_out = 18'h05322; 13'b0100001000111: data_out = 18'h04fc7; 13'b0100001001000: data_out = 18'h053ac; 13'b0100001001001: data_out = 18'h055ec; 13'b0100001001010: data_out = 18'h056b3; 13'b0100001001011: data_out = 18'h05690; 13'b0100001001100: data_out = 18'h056f1; 13'b0100001001101: data_out = 18'h059dd; 13'b0100001001110: data_out = 18'h05b5d; 13'b0100001001111: data_out = 18'h05bfe; 13'b0100001010000: data_out = 18'h05edd; 13'b0100001010001: data_out = 18'h05c04; 13'b0100001010010: data_out = 18'h06081; 13'b0100001010011: data_out = 18'h0605a; 13'b0100001010100: data_out = 18'h0639a; 13'b0100001010101: data_out = 18'h06331; 13'b0100001010110: data_out = 18'h06292; 13'b0100001010111: data_out = 18'h065b6; 13'b0100001011000: data_out = 18'h066d3; 13'b0100001011001: data_out = 18'h06899; 13'b0100001011010: data_out = 18'h068c8; 13'b0100001011011: data_out = 18'h06dd1; 13'b0100001011100: data_out = 18'h06c4a; 13'b0100001011101: data_out = 18'h06d94; 13'b0100001011110: data_out = 18'h06e46; 13'b0100001011111: data_out = 18'h0704a; 13'b0100001100000: data_out = 18'h071b7; 13'b0100001100001: data_out = 18'h072f5; 13'b0100001100010: data_out = 18'h07782; 13'b0100001100011: data_out = 18'h075a0; 13'b0100001100100: data_out = 18'h075f8; 13'b0100001100101: data_out = 18'h0795e; 13'b0100001100110: data_out = 18'h07dc9; 13'b0100001100111: data_out = 18'h07ec9; 13'b0100001101000: data_out = 18'h07ab7; 13'b0100001101001: data_out = 18'h080aa; 13'b0100001101010: data_out = 18'h0821b; 13'b0100001101011: data_out = 18'h081df; 13'b0100001101100: data_out = 18'h082b1; 13'b0100001101101: data_out = 18'h086a5; 13'b0100001101110: data_out = 18'h0868d; 13'b0100001101111: data_out = 18'h0888c; 13'b0100001110000: data_out = 18'h08d02; 13'b0100001110001: data_out = 18'h08b72; 13'b0100001110010: data_out = 18'h08a64; 13'b0100001110011: data_out = 18'h08d27; 13'b0100001110100: data_out = 18'h090e7; 13'b0100001110101: data_out = 18'h09292; 13'b0100001110110: data_out = 18'h09536; 13'b0100001110111: data_out = 18'h0976c; 13'b0100001111000: data_out = 18'h09754; 13'b0100001111001: data_out = 18'h09686; 13'b0100001111010: data_out = 18'h09900; 13'b0100001111011: data_out = 18'h09a99; 13'b0100001111100: data_out = 18'h09aae; 13'b0100001111101: data_out = 18'h099c3; 13'b0100001111110: data_out = 18'h09fcf; 13'b0100001111111: data_out = 18'h09daf; 13'b0100010000000: data_out = 18'h09f42; 13'b0100010000001: data_out = 18'h0a003; 13'b0100010000010: data_out = 18'h0a10f; 13'b0100010000011: data_out = 18'h0a2c2; 13'b0100010000100: data_out = 18'h0a1bb; 13'b0100010000101: data_out = 18'h09fa5; 13'b0100010000110: data_out = 18'h0a3a0; 13'b0100010000111: data_out = 18'h0a4e8; 13'b0100010001000: data_out = 18'h0a26b; 13'b0100010001001: data_out = 18'h0a23e; 13'b0100010001010: data_out = 18'h0a47e; 13'b0100010001011: data_out = 18'h0a343; 13'b0100010001100: data_out = 18'h0a448; 13'b0100010001101: data_out = 18'h0a2f6; 13'b0100010001110: data_out = 18'h0a33b; 13'b0100010001111: data_out = 18'h0a351; 13'b0100010010000: data_out = 18'h0a2d0; 13'b0100010010001: data_out = 18'h0a216; 13'b0100010010010: data_out = 18'h0a289; 13'b0100010010011: data_out = 18'h0a160; 13'b0100010010100: data_out = 18'h0a0a2; 13'b0100010010101: data_out = 18'h0a122; 13'b0100010010110: data_out = 18'h09b20; 13'b0100010010111: data_out = 18'h09ea4; 13'b0100010011000: data_out = 18'h09c9f; 13'b0100010011001: data_out = 18'h09b3c; 13'b0100010011010: data_out = 18'h0998c; 13'b0100010011011: data_out = 18'h09816; 13'b0100010011100: data_out = 18'h095b3; 13'b0100010011101: data_out = 18'h093ea; 13'b0100010011110: data_out = 18'h0933f; 13'b0100010011111: data_out = 18'h08ec7; 13'b0100010100000: data_out = 18'h08e45; 13'b0100010100001: data_out = 18'h08a22; 13'b0100010100010: data_out = 18'h08acc; 13'b0100010100011: data_out = 18'h085f6; 13'b0100010100100: data_out = 18'h08398; 13'b0100010100101: data_out = 18'h07f41; 13'b0100010100110: data_out = 18'h0814e; 13'b0100010100111: data_out = 18'h076e2; 13'b0100010101000: data_out = 18'h078f1; 13'b0100010101001: data_out = 18'h074e9; 13'b0100010101010: data_out = 18'h070b9; 13'b0100010101011: data_out = 18'h06eb2; 13'b0100010101100: data_out = 18'h06a13; 13'b0100010101101: data_out = 18'h065e9; 13'b0100010101110: data_out = 18'h0651c; 13'b0100010101111: data_out = 18'h05fe9; 13'b0100010110000: data_out = 18'h05e97; 13'b0100010110001: data_out = 18'h0587d; 13'b0100010110010: data_out = 18'h054c8; 13'b0100010110011: data_out = 18'h05358; 13'b0100010110100: data_out = 18'h05078; 13'b0100010110101: data_out = 18'h04a99; 13'b0100010110110: data_out = 18'h04563; 13'b0100010110111: data_out = 18'h04829; 13'b0100010111000: data_out = 18'h04177; 13'b0100010111001: data_out = 18'h03c25; 13'b0100010111010: data_out = 18'h037b1; 13'b0100010111011: data_out = 18'h037b9; 13'b0100010111100: data_out = 18'h03448; 13'b0100010111101: data_out = 18'h02ff7; 13'b0100010111110: data_out = 18'h02c22; 13'b0100010111111: data_out = 18'h028ed; 13'b0100011000000: data_out = 18'h02270; 13'b0100011000001: data_out = 18'h02375; 13'b0100011000010: data_out = 18'h020bd; 13'b0100011000011: data_out = 18'h01ba1; 13'b0100011000100: data_out = 18'h01748; 13'b0100011000101: data_out = 18'h017d4; 13'b0100011000110: data_out = 18'h01187; 13'b0100011000111: data_out = 18'h00d42; 13'b0100011001000: data_out = 18'h00eb5; 13'b0100011001001: data_out = 18'h007c2; 13'b0100011001010: data_out = 18'h00566; 13'b0100011001011: data_out = 18'h002fb; 13'b0100011001100: data_out = 18'h0037f; 13'b0100011001101: data_out = 18'h3fb88; 13'b0100011001110: data_out = 18'h3fbc9; 13'b0100011001111: data_out = 18'h3f707; 13'b0100011010000: data_out = 18'h3f768; 13'b0100011010001: data_out = 18'h3f1b4; 13'b0100011010010: data_out = 18'h3eed8; 13'b0100011010011: data_out = 18'h3eec4; 13'b0100011010100: data_out = 18'h3ec0e; 13'b0100011010101: data_out = 18'h3e7aa; 13'b0100011010110: data_out = 18'h3e660; 13'b0100011010111: data_out = 18'h3e4ea; 13'b0100011011000: data_out = 18'h3e3ca; 13'b0100011011001: data_out = 18'h3dd07; 13'b0100011011010: data_out = 18'h3df54; 13'b0100011011011: data_out = 18'h3db33; 13'b0100011011100: data_out = 18'h3d91a; 13'b0100011011101: data_out = 18'h3d716; 13'b0100011011110: data_out = 18'h3d6ea; 13'b0100011011111: data_out = 18'h3d3eb; 13'b0100011100000: data_out = 18'h3d15d; 13'b0100011100001: data_out = 18'h3cfe9; 13'b0100011100010: data_out = 18'h3cf8c; 13'b0100011100011: data_out = 18'h3cdca; 13'b0100011100100: data_out = 18'h3caff; 13'b0100011100101: data_out = 18'h3c9d8; 13'b0100011100110: data_out = 18'h3c780; 13'b0100011100111: data_out = 18'h3c621; 13'b0100011101000: data_out = 18'h3c882; 13'b0100011101001: data_out = 18'h3c4f1; 13'b0100011101010: data_out = 18'h3c2c0; 13'b0100011101011: data_out = 18'h3c1cf; 13'b0100011101100: data_out = 18'h3c1f9; 13'b0100011101101: data_out = 18'h3bf8f; 13'b0100011101110: data_out = 18'h3bd46; 13'b0100011101111: data_out = 18'h3bce1; 13'b0100011110000: data_out = 18'h3bd1b; 13'b0100011110001: data_out = 18'h3b97d; 13'b0100011110010: data_out = 18'h3bcd5; 13'b0100011110011: data_out = 18'h3b768; 13'b0100011110100: data_out = 18'h3b59c; 13'b0100011110101: data_out = 18'h3b77e; 13'b0100011110110: data_out = 18'h3b46c; 13'b0100011110111: data_out = 18'h3b4bb; 13'b0100011111000: data_out = 18'h3b4b8; 13'b0100011111001: data_out = 18'h3b0ef; 13'b0100011111010: data_out = 18'h3b313; 13'b0100011111011: data_out = 18'h3b018; 13'b0100011111100: data_out = 18'h3b056; 13'b0100011111101: data_out = 18'h3ad5c; 13'b0100011111110: data_out = 18'h3ae96; 13'b0100011111111: data_out = 18'h3ab71; 13'b0100100000000: data_out = 18'h3ab67; 13'b0100100000001: data_out = 18'h3a9be; 13'b0100100000010: data_out = 18'h3ab06; 13'b0100100000011: data_out = 18'h3a6ab; 13'b0100100000100: data_out = 18'h3a79f; 13'b0100100000101: data_out = 18'h3a4d5; 13'b0100100000110: data_out = 18'h3a577; 13'b0100100000111: data_out = 18'h3a300; 13'b0100100001000: data_out = 18'h3a3f8; 13'b0100100001001: data_out = 18'h3a351; 13'b0100100001010: data_out = 18'h39ef8; 13'b0100100001011: data_out = 18'h39f3e; 13'b0100100001100: data_out = 18'h39e57; 13'b0100100001101: data_out = 18'h39e53; 13'b0100100001110: data_out = 18'h39c60; 13'b0100100001111: data_out = 18'h39ab0; 13'b0100100010000: data_out = 18'h399b9; 13'b0100100010001: data_out = 18'h398ef; 13'b0100100010010: data_out = 18'h3941e; 13'b0100100010011: data_out = 18'h3998d; 13'b0100100010100: data_out = 18'h3944b; 13'b0100100010101: data_out = 18'h3947d; 13'b0100100010110: data_out = 18'h39262; 13'b0100100010111: data_out = 18'h3923a; 13'b0100100011000: data_out = 18'h38e99; 13'b0100100011001: data_out = 18'h39042; 13'b0100100011010: data_out = 18'h38f91; 13'b0100100011011: data_out = 18'h38b4f; 13'b0100100011100: data_out = 18'h389ec; 13'b0100100011101: data_out = 18'h38a0f; 13'b0100100011110: data_out = 18'h38a91; 13'b0100100011111: data_out = 18'h38681; 13'b0100100100000: data_out = 18'h385b0; 13'b0100100100001: data_out = 18'h3829b; 13'b0100100100010: data_out = 18'h384a9; 13'b0100100100011: data_out = 18'h3819c; 13'b0100100100100: data_out = 18'h38057; 13'b0100100100101: data_out = 18'h37f50; 13'b0100100100110: data_out = 18'h37dc7; 13'b0100100100111: data_out = 18'h37d9c; 13'b0100100101000: data_out = 18'h37970; 13'b0100100101001: data_out = 18'h37ad3; 13'b0100100101010: data_out = 18'h37647; 13'b0100100101011: data_out = 18'h3775b; 13'b0100100101100: data_out = 18'h375f6; 13'b0100100101101: data_out = 18'h374b5; 13'b0100100101110: data_out = 18'h372f1; 13'b0100100101111: data_out = 18'h37130; 13'b0100100110000: data_out = 18'h3706d; 13'b0100100110001: data_out = 18'h370bb; 13'b0100100110010: data_out = 18'h36c66; 13'b0100100110011: data_out = 18'h36e78; 13'b0100100110100: data_out = 18'h36c6d; 13'b0100100110101: data_out = 18'h36b31; 13'b0100100110110: data_out = 18'h3696a; 13'b0100100110111: data_out = 18'h36a1f; 13'b0100100111000: data_out = 18'h36828; 13'b0100100111001: data_out = 18'h367e2; 13'b0100100111010: data_out = 18'h3658b; 13'b0100100111011: data_out = 18'h36584; 13'b0100100111100: data_out = 18'h36489; 13'b0100100111101: data_out = 18'h36539; 13'b0100100111110: data_out = 18'h36339; 13'b0100100111111: data_out = 18'h36220; 13'b0100101000000: data_out = 18'h36174; 13'b0100101000001: data_out = 18'h361bb; 13'b0100101000010: data_out = 18'h36222; 13'b0100101000011: data_out = 18'h35fb4; 13'b0100101000100: data_out = 18'h35f6d; 13'b0100101000101: data_out = 18'h35ef8; 13'b0100101000110: data_out = 18'h35ea0; 13'b0100101000111: data_out = 18'h35ff6; 13'b0100101001000: data_out = 18'h35e2f; 13'b0100101001001: data_out = 18'h35f3d; 13'b0100101001010: data_out = 18'h35d75; 13'b0100101001011: data_out = 18'h35f44; 13'b0100101001100: data_out = 18'h35ea5; 13'b0100101001101: data_out = 18'h35eec; 13'b0100101001110: data_out = 18'h35ee6; 13'b0100101001111: data_out = 18'h35fbc; 13'b0100101010000: data_out = 18'h36051; 13'b0100101010001: data_out = 18'h35ef8; 13'b0100101010010: data_out = 18'h3602c; 13'b0100101010011: data_out = 18'h36304; 13'b0100101010100: data_out = 18'h36240; 13'b0100101010101: data_out = 18'h3637c; 13'b0100101010110: data_out = 18'h363c8; 13'b0100101010111: data_out = 18'h36491; 13'b0100101011000: data_out = 18'h36502; 13'b0100101011001: data_out = 18'h367e8; 13'b0100101011010: data_out = 18'h369e2; 13'b0100101011011: data_out = 18'h36a95; 13'b0100101011100: data_out = 18'h36c0d; 13'b0100101011101: data_out = 18'h36d05; 13'b0100101011110: data_out = 18'h36f9b; 13'b0100101011111: data_out = 18'h37088; 13'b0100101100000: data_out = 18'h37174; 13'b0100101100001: data_out = 18'h374e5; 13'b0100101100010: data_out = 18'h37807; 13'b0100101100011: data_out = 18'h37aea; 13'b0100101100100: data_out = 18'h37ba9; 13'b0100101100101: data_out = 18'h37de4; 13'b0100101100110: data_out = 18'h382be; 13'b0100101100111: data_out = 18'h3836e; 13'b0100101101000: data_out = 18'h385ac; 13'b0100101101001: data_out = 18'h38905; 13'b0100101101010: data_out = 18'h38d7f; 13'b0100101101011: data_out = 18'h3908e; 13'b0100101101100: data_out = 18'h39254; 13'b0100101101101: data_out = 18'h396e2; 13'b0100101101110: data_out = 18'h3975d; 13'b0100101101111: data_out = 18'h39d0c; 13'b0100101110000: data_out = 18'h39fa4; 13'b0100101110001: data_out = 18'h3a27f; 13'b0100101110010: data_out = 18'h3a611; 13'b0100101110011: data_out = 18'h3a781; 13'b0100101110100: data_out = 18'h3ace4; 13'b0100101110101: data_out = 18'h3b0a5; 13'b0100101110110: data_out = 18'h3b312; 13'b0100101110111: data_out = 18'h3b786; 13'b0100101111000: data_out = 18'h3ba9a; 13'b0100101111001: data_out = 18'h3bd85; 13'b0100101111010: data_out = 18'h3c2db; 13'b0100101111011: data_out = 18'h3c580; 13'b0100101111100: data_out = 18'h3c889; 13'b0100101111101: data_out = 18'h3cc2b; 13'b0100101111110: data_out = 18'h3cf89; 13'b0100101111111: data_out = 18'h3d338; 13'b0100110000000: data_out = 18'h3d71e; 13'b0100110000001: data_out = 18'h3d941; 13'b0100110000010: data_out = 18'h3dc6a; 13'b0100110000011: data_out = 18'h3e0ac; 13'b0100110000100: data_out = 18'h3e3cc; 13'b0100110000101: data_out = 18'h3e687; 13'b0100110000110: data_out = 18'h3ea62; 13'b0100110000111: data_out = 18'h3ecb4; 13'b0100110001000: data_out = 18'h3f1bd; 13'b0100110001001: data_out = 18'h3f352; 13'b0100110001010: data_out = 18'h3f588; 13'b0100110001011: data_out = 18'h3fb95; 13'b0100110001100: data_out = 18'h3fab5; 13'b0100110001101: data_out = 18'h3ff5b; 13'b0100110001110: data_out = 18'h001e2; 13'b0100110001111: data_out = 18'h005b8; 13'b0100110010000: data_out = 18'h006f5; 13'b0100110010001: data_out = 18'h00a57; 13'b0100110010010: data_out = 18'h00de5; 13'b0100110010011: data_out = 18'h00f09; 13'b0100110010100: data_out = 18'h01216; 13'b0100110010101: data_out = 18'h0131a; 13'b0100110010110: data_out = 18'h0171b; 13'b0100110010111: data_out = 18'h01ad3; 13'b0100110011000: data_out = 18'h01ad5; 13'b0100110011001: data_out = 18'h01e2a; 13'b0100110011010: data_out = 18'h020ac; 13'b0100110011011: data_out = 18'h02204; 13'b0100110011100: data_out = 18'h0248c; 13'b0100110011101: data_out = 18'h02769; 13'b0100110011110: data_out = 18'h02822; 13'b0100110011111: data_out = 18'h02ac5; 13'b0100110100000: data_out = 18'h02b8d; 13'b0100110100001: data_out = 18'h0300f; 13'b0100110100010: data_out = 18'h03138; 13'b0100110100011: data_out = 18'h0310b; 13'b0100110100100: data_out = 18'h03387; 13'b0100110100101: data_out = 18'h03674; 13'b0100110100110: data_out = 18'h037dd; 13'b0100110100111: data_out = 18'h037a6; 13'b0100110101000: data_out = 18'h03b06; 13'b0100110101001: data_out = 18'h03c64; 13'b0100110101010: data_out = 18'h03d83; 13'b0100110101011: data_out = 18'h03ebc; 13'b0100110101100: data_out = 18'h041a3; 13'b0100110101101: data_out = 18'h0421c; 13'b0100110101110: data_out = 18'h0429c; 13'b0100110101111: data_out = 18'h044a0; 13'b0100110110000: data_out = 18'h04731; 13'b0100110110001: data_out = 18'h04665; 13'b0100110110010: data_out = 18'h046a8; 13'b0100110110011: data_out = 18'h04a3f; 13'b0100110110100: data_out = 18'h04b66; 13'b0100110110101: data_out = 18'h04c14; 13'b0100110110110: data_out = 18'h04d01; 13'b0100110110111: data_out = 18'h04c32; 13'b0100110111000: data_out = 18'h04d83; 13'b0100110111001: data_out = 18'h0510e; 13'b0100110111010: data_out = 18'h04f1f; 13'b0100110111011: data_out = 18'h052bb; 13'b0100110111100: data_out = 18'h051de; 13'b0100110111101: data_out = 18'h0526f; 13'b0100110111110: data_out = 18'h0540c; 13'b0100110111111: data_out = 18'h0544f; 13'b0100111000000: data_out = 18'h05471; 13'b0100111000001: data_out = 18'h05869; 13'b0100111000010: data_out = 18'h05688; 13'b0100111000011: data_out = 18'h0586e; 13'b0100111000100: data_out = 18'h058b5; 13'b0100111000101: data_out = 18'h05aa3; 13'b0100111000110: data_out = 18'h05a7c; 13'b0100111000111: data_out = 18'h05ba5; 13'b0100111001000: data_out = 18'h05acf; 13'b0100111001001: data_out = 18'h05e2d; 13'b0100111001010: data_out = 18'h05b88; 13'b0100111001011: data_out = 18'h05e15; 13'b0100111001100: data_out = 18'h05f38; 13'b0100111001101: data_out = 18'h05ff8; 13'b0100111001110: data_out = 18'h05e35; 13'b0100111001111: data_out = 18'h061ad; 13'b0100111010000: data_out = 18'h060f6; 13'b0100111010001: data_out = 18'h06147; 13'b0100111010010: data_out = 18'h064e8; 13'b0100111010011: data_out = 18'h063b7; 13'b0100111010100: data_out = 18'h064bc; 13'b0100111010101: data_out = 18'h0645e; 13'b0100111010110: data_out = 18'h0669a; 13'b0100111010111: data_out = 18'h06712; 13'b0100111011000: data_out = 18'h068e6; 13'b0100111011001: data_out = 18'h06a4c; 13'b0100111011010: data_out = 18'h06a30; 13'b0100111011011: data_out = 18'h06a42; 13'b0100111011100: data_out = 18'h06a7f; 13'b0100111011101: data_out = 18'h06d80; 13'b0100111011110: data_out = 18'h06d2d; 13'b0100111011111: data_out = 18'h06f86; 13'b0100111100000: data_out = 18'h06f18; 13'b0100111100001: data_out = 18'h07288; 13'b0100111100010: data_out = 18'h07054; 13'b0100111100011: data_out = 18'h0719a; 13'b0100111100100: data_out = 18'h07376; 13'b0100111100101: data_out = 18'h0757b; 13'b0100111100110: data_out = 18'h0761d; 13'b0100111100111: data_out = 18'h07704; 13'b0100111101000: data_out = 18'h07780; 13'b0100111101001: data_out = 18'h07ac7; 13'b0100111101010: data_out = 18'h0789c; 13'b0100111101011: data_out = 18'h07ae0; 13'b0100111101100: data_out = 18'h07eb8; 13'b0100111101101: data_out = 18'h07e7d; 13'b0100111101110: data_out = 18'h07f0c; 13'b0100111101111: data_out = 18'h0825f; 13'b0100111110000: data_out = 18'h081c4; 13'b0100111110001: data_out = 18'h084a2; 13'b0100111110010: data_out = 18'h08297; 13'b0100111110011: data_out = 18'h086d4; 13'b0100111110100: data_out = 18'h087b4; 13'b0100111110101: data_out = 18'h0882e; 13'b0100111110110: data_out = 18'h08aae; 13'b0100111110111: data_out = 18'h08ccc; 13'b0100111111000: data_out = 18'h08bd8; 13'b0100111111001: data_out = 18'h08e61; 13'b0100111111010: data_out = 18'h08fa6; 13'b0100111111011: data_out = 18'h08f71; 13'b0100111111100: data_out = 18'h0912f; 13'b0100111111101: data_out = 18'h0946c; 13'b0100111111110: data_out = 18'h09436; 13'b0100111111111: data_out = 18'h094bc; 13'b0101000000000: data_out = 18'h095b3; 13'b0101000000001: data_out = 18'h09611; 13'b0101000000010: data_out = 18'h098c7; 13'b0101000000011: data_out = 18'h09954; 13'b0101000000100: data_out = 18'h09ae5; 13'b0101000000101: data_out = 18'h09b72; 13'b0101000000110: data_out = 18'h09cb3; 13'b0101000000111: data_out = 18'h09d80; 13'b0101000001000: data_out = 18'h09e35; 13'b0101000001001: data_out = 18'h09f8e; 13'b0101000001010: data_out = 18'h0a093; 13'b0101000001011: data_out = 18'h0a199; 13'b0101000001100: data_out = 18'h0a12b; 13'b0101000001101: data_out = 18'h0a228; 13'b0101000001110: data_out = 18'h0a350; 13'b0101000001111: data_out = 18'h0a1ec; 13'b0101000010000: data_out = 18'h0a3c0; 13'b0101000010001: data_out = 18'h0a423; 13'b0101000010010: data_out = 18'h0a4b3; 13'b0101000010011: data_out = 18'h0a4cc; 13'b0101000010100: data_out = 18'h0a349; 13'b0101000010101: data_out = 18'h0a477; 13'b0101000010110: data_out = 18'h0a4cf; 13'b0101000010111: data_out = 18'h0a4b1; 13'b0101000011000: data_out = 18'h0a411; 13'b0101000011001: data_out = 18'h0a470; 13'b0101000011010: data_out = 18'h0a4c1; 13'b0101000011011: data_out = 18'h0a409; 13'b0101000011100: data_out = 18'h0a2cd; 13'b0101000011101: data_out = 18'h0a3cb; 13'b0101000011110: data_out = 18'h0a2b7; 13'b0101000011111: data_out = 18'h0a268; 13'b0101000100000: data_out = 18'h0a166; 13'b0101000100001: data_out = 18'h0a13e; 13'b0101000100010: data_out = 18'h09ff7; 13'b0101000100011: data_out = 18'h09f18; 13'b0101000100100: data_out = 18'h09e1b; 13'b0101000100101: data_out = 18'h09c20; 13'b0101000100110: data_out = 18'h09b05; 13'b0101000100111: data_out = 18'h09a62; 13'b0101000101000: data_out = 18'h098ae; 13'b0101000101001: data_out = 18'h096bb; 13'b0101000101010: data_out = 18'h094f5; 13'b0101000101011: data_out = 18'h09209; 13'b0101000101100: data_out = 18'h090ae; 13'b0101000101101: data_out = 18'h08f2b; 13'b0101000101110: data_out = 18'h08cc8; 13'b0101000101111: data_out = 18'h088e9; 13'b0101000110000: data_out = 18'h087a1; 13'b0101000110001: data_out = 18'h082ea; 13'b0101000110010: data_out = 18'h081f1; 13'b0101000110011: data_out = 18'h07f08; 13'b0101000110100: data_out = 18'h07b54; 13'b0101000110101: data_out = 18'h078d0; 13'b0101000110110: data_out = 18'h0756b; 13'b0101000110111: data_out = 18'h071a0; 13'b0101000111000: data_out = 18'h06fd8; 13'b0101000111001: data_out = 18'h06a3a; 13'b0101000111010: data_out = 18'h068f8; 13'b0101000111011: data_out = 18'h063c5; 13'b0101000111100: data_out = 18'h06136; 13'b0101000111101: data_out = 18'h05d70; 13'b0101000111110: data_out = 18'h059c0; 13'b0101000111111: data_out = 18'h056e8; 13'b0101001000000: data_out = 18'h052be; 13'b0101001000001: data_out = 18'h04d88; 13'b0101001000010: data_out = 18'h04bc3; 13'b0101001000011: data_out = 18'h046c6; 13'b0101001000100: data_out = 18'h04579; 13'b0101001000101: data_out = 18'h03fba; 13'b0101001000110: data_out = 18'h03b5b; 13'b0101001000111: data_out = 18'h037cf; 13'b0101001001000: data_out = 18'h034cd; 13'b0101001001001: data_out = 18'h03138; 13'b0101001001010: data_out = 18'h02c06; 13'b0101001001011: data_out = 18'h02941; 13'b0101001001100: data_out = 18'h02659; 13'b0101001001101: data_out = 18'h022d3; 13'b0101001001110: data_out = 18'h01e62; 13'b0101001001111: data_out = 18'h01a81; 13'b0101001010000: data_out = 18'h018ae; 13'b0101001010001: data_out = 18'h012b7; 13'b0101001010010: data_out = 18'h0107c; 13'b0101001010011: data_out = 18'h00da7; 13'b0101001010100: data_out = 18'h00a4a; 13'b0101001010101: data_out = 18'h007be; 13'b0101001010110: data_out = 18'h003d2; 13'b0101001010111: data_out = 18'h00004; 13'b0101001011000: data_out = 18'h3fe4d; 13'b0101001011001: data_out = 18'h3fb42; 13'b0101001011010: data_out = 18'h3f7f6; 13'b0101001011011: data_out = 18'h3f4a9; 13'b0101001011100: data_out = 18'h3f1d6; 13'b0101001011101: data_out = 18'h3ee4c; 13'b0101001011110: data_out = 18'h3eca5; 13'b0101001011111: data_out = 18'h3e9f5; 13'b0101001100000: data_out = 18'h3e82d; 13'b0101001100001: data_out = 18'h3e51c; 13'b0101001100010: data_out = 18'h3e321; 13'b0101001100011: data_out = 18'h3df5d; 13'b0101001100100: data_out = 18'h3dd0e; 13'b0101001100101: data_out = 18'h3dacf; 13'b0101001100110: data_out = 18'h3d8c7; 13'b0101001100111: data_out = 18'h3d709; 13'b0101001101000: data_out = 18'h3d4d2; 13'b0101001101001: data_out = 18'h3d201; 13'b0101001101010: data_out = 18'h3d086; 13'b0101001101011: data_out = 18'h3ce3d; 13'b0101001101100: data_out = 18'h3cc32; 13'b0101001101101: data_out = 18'h3ca39; 13'b0101001101110: data_out = 18'h3c87b; 13'b0101001101111: data_out = 18'h3c6f5; 13'b0101001110000: data_out = 18'h3c4f2; 13'b0101001110001: data_out = 18'h3c1d2; 13'b0101001110010: data_out = 18'h3c26f; 13'b0101001110011: data_out = 18'h3bf43; 13'b0101001110100: data_out = 18'h3bdec; 13'b0101001110101: data_out = 18'h3bcad; 13'b0101001110110: data_out = 18'h3bb60; 13'b0101001110111: data_out = 18'h3b975; 13'b0101001111000: data_out = 18'h3b902; 13'b0101001111001: data_out = 18'h3b65e; 13'b0101001111010: data_out = 18'h3b60d; 13'b0101001111011: data_out = 18'h3b3f9; 13'b0101001111100: data_out = 18'h3b318; 13'b0101001111101: data_out = 18'h3b29a; 13'b0101001111110: data_out = 18'h3b088; 13'b0101001111111: data_out = 18'h3af40; 13'b0101010000000: data_out = 18'h3adfa; 13'b0101010000001: data_out = 18'h3ac82; 13'b0101010000010: data_out = 18'h3ac54; 13'b0101010000011: data_out = 18'h3ab00; 13'b0101010000100: data_out = 18'h3aa23; 13'b0101010000101: data_out = 18'h3a98c; 13'b0101010000110: data_out = 18'h3a7c1; 13'b0101010000111: data_out = 18'h3a792; 13'b0101010001000: data_out = 18'h3a667; 13'b0101010001001: data_out = 18'h3a566; 13'b0101010001010: data_out = 18'h3a4ab; 13'b0101010001011: data_out = 18'h3a47d; 13'b0101010001100: data_out = 18'h3a36c; 13'b0101010001101: data_out = 18'h3a15b; 13'b0101010001110: data_out = 18'h3a21a; 13'b0101010001111: data_out = 18'h3a132; 13'b0101010010000: data_out = 18'h39fd8; 13'b0101010010001: data_out = 18'h3a0ae; 13'b0101010010010: data_out = 18'h39dbb; 13'b0101010010011: data_out = 18'h39dc1; 13'b0101010010100: data_out = 18'h39e4d; 13'b0101010010101: data_out = 18'h39c4a; 13'b0101010010110: data_out = 18'h39c51; 13'b0101010010111: data_out = 18'h3999f; 13'b0101010011000: data_out = 18'h39a2f; 13'b0101010011001: data_out = 18'h399b7; 13'b0101010011010: data_out = 18'h3986a; 13'b0101010011011: data_out = 18'h39776; 13'b0101010011100: data_out = 18'h39672; 13'b0101010011101: data_out = 18'h39618; 13'b0101010011110: data_out = 18'h394e1; 13'b0101010011111: data_out = 18'h39407; 13'b0101010100000: data_out = 18'h39355; 13'b0101010100001: data_out = 18'h39377; 13'b0101010100010: data_out = 18'h392b0; 13'b0101010100011: data_out = 18'h391aa; 13'b0101010100100: data_out = 18'h38f31; 13'b0101010100101: data_out = 18'h38f58; 13'b0101010100110: data_out = 18'h38ef4; 13'b0101010100111: data_out = 18'h38f11; 13'b0101010101000: data_out = 18'h38e9f; 13'b0101010101001: data_out = 18'h389f3; 13'b0101010101010: data_out = 18'h38b21; 13'b0101010101011: data_out = 18'h38afc; 13'b0101010101100: data_out = 18'h389ff; 13'b0101010101101: data_out = 18'h38991; 13'b0101010101110: data_out = 18'h3879e; 13'b0101010101111: data_out = 18'h38565; 13'b0101010110000: data_out = 18'h38624; 13'b0101010110001: data_out = 18'h38567; 13'b0101010110010: data_out = 18'h384bc; 13'b0101010110011: data_out = 18'h38408; 13'b0101010110100: data_out = 18'h38223; 13'b0101010110101: data_out = 18'h38202; 13'b0101010110110: data_out = 18'h38089; 13'b0101010110111: data_out = 18'h37e6c; 13'b0101010111000: data_out = 18'h37e5c; 13'b0101010111001: data_out = 18'h37bed; 13'b0101010111010: data_out = 18'h37b67; 13'b0101010111011: data_out = 18'h37bb9; 13'b0101010111100: data_out = 18'h37a2c; 13'b0101010111101: data_out = 18'h37a1b; 13'b0101010111110: data_out = 18'h37712; 13'b0101010111111: data_out = 18'h37662; 13'b0101011000000: data_out = 18'h3750a; 13'b0101011000001: data_out = 18'h37402; 13'b0101011000010: data_out = 18'h37494; 13'b0101011000011: data_out = 18'h37352; 13'b0101011000100: data_out = 18'h370fa; 13'b0101011000101: data_out = 18'h36ef4; 13'b0101011000110: data_out = 18'h36df9; 13'b0101011000111: data_out = 18'h36d04; 13'b0101011001000: data_out = 18'h36cf8; 13'b0101011001001: data_out = 18'h36a46; 13'b0101011001010: data_out = 18'h36b9a; 13'b0101011001011: data_out = 18'h368df; 13'b0101011001100: data_out = 18'h367aa; 13'b0101011001101: data_out = 18'h36761; 13'b0101011001110: data_out = 18'h36676; 13'b0101011001111: data_out = 18'h364a9; 13'b0101011010000: data_out = 18'h363e6; 13'b0101011010001: data_out = 18'h36358; 13'b0101011010010: data_out = 18'h3633c; 13'b0101011010011: data_out = 18'h36150; 13'b0101011010100: data_out = 18'h36044; 13'b0101011010101: data_out = 18'h36039; 13'b0101011010110: data_out = 18'h36031; 13'b0101011010111: data_out = 18'h35f93; 13'b0101011011000: data_out = 18'h35e0a; 13'b0101011011001: data_out = 18'h35cf8; 13'b0101011011010: data_out = 18'h35d84; 13'b0101011011011: data_out = 18'h35c8c; 13'b0101011011100: data_out = 18'h35c02; 13'b0101011011101: data_out = 18'h35c3b; 13'b0101011011110: data_out = 18'h35bf1; 13'b0101011011111: data_out = 18'h35b2e; 13'b0101011100000: data_out = 18'h35abd; 13'b0101011100001: data_out = 18'h35b2b; 13'b0101011100010: data_out = 18'h35a23; 13'b0101011100011: data_out = 18'h35a64; 13'b0101011100100: data_out = 18'h359d2; 13'b0101011100101: data_out = 18'h35a82; 13'b0101011100110: data_out = 18'h35a6c; 13'b0101011100111: data_out = 18'h35a46; 13'b0101011101000: data_out = 18'h35ada; 13'b0101011101001: data_out = 18'h35a36; 13'b0101011101010: data_out = 18'h35a60; 13'b0101011101011: data_out = 18'h35b07; 13'b0101011101100: data_out = 18'h35af9; 13'b0101011101101: data_out = 18'h35bff; 13'b0101011101110: data_out = 18'h35ca0; 13'b0101011101111: data_out = 18'h35c80; 13'b0101011110000: data_out = 18'h35d9d; 13'b0101011110001: data_out = 18'h35df0; 13'b0101011110010: data_out = 18'h35e56; 13'b0101011110011: data_out = 18'h35f32; 13'b0101011110100: data_out = 18'h3611d; 13'b0101011110101: data_out = 18'h36141; 13'b0101011110110: data_out = 18'h3635a; 13'b0101011110111: data_out = 18'h36545; 13'b0101011111000: data_out = 18'h365fb; 13'b0101011111001: data_out = 18'h36767; 13'b0101011111010: data_out = 18'h36889; 13'b0101011111011: data_out = 18'h36a5b; 13'b0101011111100: data_out = 18'h36cfb; 13'b0101011111101: data_out = 18'h36ee0; 13'b0101011111110: data_out = 18'h370ec; 13'b0101011111111: data_out = 18'h37391; 13'b0101100000000: data_out = 18'h3763e; 13'b0101100000001: data_out = 18'h377f5; 13'b0101100000010: data_out = 18'h37b15; 13'b0101100000011: data_out = 18'h37c36; 13'b0101100000100: data_out = 18'h38019; 13'b0101100000101: data_out = 18'h383ad; 13'b0101100000110: data_out = 18'h385cd; 13'b0101100000111: data_out = 18'h389fb; 13'b0101100001000: data_out = 18'h38bc4; 13'b0101100001001: data_out = 18'h39004; 13'b0101100001010: data_out = 18'h39324; 13'b0101100001011: data_out = 18'h3965b; 13'b0101100001100: data_out = 18'h399f3; 13'b0101100001101: data_out = 18'h39c3f; 13'b0101100001110: data_out = 18'h39f68; 13'b0101100001111: data_out = 18'h3a3a2; 13'b0101100010000: data_out = 18'h3a7ca; 13'b0101100010001: data_out = 18'h3ab62; 13'b0101100010010: data_out = 18'h3ae54; 13'b0101100010011: data_out = 18'h3b215; 13'b0101100010100: data_out = 18'h3b48b; 13'b0101100010101: data_out = 18'h3b877; 13'b0101100010110: data_out = 18'h3bd3c; 13'b0101100010111: data_out = 18'h3c048; 13'b0101100011000: data_out = 18'h3c380; 13'b0101100011001: data_out = 18'h3c760; 13'b0101100011010: data_out = 18'h3cac2; 13'b0101100011011: data_out = 18'h3cf3b; 13'b0101100011100: data_out = 18'h3d292; 13'b0101100011101: data_out = 18'h3d693; 13'b0101100011110: data_out = 18'h3d9c0; 13'b0101100011111: data_out = 18'h3dd00; 13'b0101100100000: data_out = 18'h3dfb7; 13'b0101100100001: data_out = 18'h3e457; 13'b0101100100010: data_out = 18'h3e840; 13'b0101100100011: data_out = 18'h3eb70; 13'b0101100100100: data_out = 18'h3ef88; 13'b0101100100101: data_out = 18'h3f23d; 13'b0101100100110: data_out = 18'h3f632; 13'b0101100100111: data_out = 18'h3f846; 13'b0101100101000: data_out = 18'h3faa7; 13'b0101100101001: data_out = 18'h3ffa5; 13'b0101100101010: data_out = 18'h00166; 13'b0101100101011: data_out = 18'h0046e; 13'b0101100101100: data_out = 18'h00903; 13'b0101100101101: data_out = 18'h00b44; 13'b0101100101110: data_out = 18'h00e40; 13'b0101100101111: data_out = 18'h010c6; 13'b0101100110000: data_out = 18'h013e0; 13'b0101100110001: data_out = 18'h0167d; 13'b0101100110010: data_out = 18'h018ab; 13'b0101100110011: data_out = 18'h01c8f; 13'b0101100110100: data_out = 18'h01f18; 13'b0101100110101: data_out = 18'h0214a; 13'b0101100110110: data_out = 18'h02338; 13'b0101100110111: data_out = 18'h0258e; 13'b0101100111000: data_out = 18'h02875; 13'b0101100111001: data_out = 18'h02a82; 13'b0101100111010: data_out = 18'h02d11; 13'b0101100111011: data_out = 18'h02f5a; 13'b0101100111100: data_out = 18'h031b9; 13'b0101100111101: data_out = 18'h0341d; 13'b0101100111110: data_out = 18'h0353b; 13'b0101100111111: data_out = 18'h036cf; 13'b0101101000000: data_out = 18'h03907; 13'b0101101000001: data_out = 18'h03b88; 13'b0101101000010: data_out = 18'h03df9; 13'b0101101000011: data_out = 18'h03e72; 13'b0101101000100: data_out = 18'h03f45; 13'b0101101000101: data_out = 18'h04265; 13'b0101101000110: data_out = 18'h044d7; 13'b0101101000111: data_out = 18'h04548; 13'b0101101001000: data_out = 18'h04629; 13'b0101101001001: data_out = 18'h04882; 13'b0101101001010: data_out = 18'h0497f; 13'b0101101001011: data_out = 18'h04b30; 13'b0101101001100: data_out = 18'h04c32; 13'b0101101001101: data_out = 18'h04e85; 13'b0101101001110: data_out = 18'h04ecb; 13'b0101101001111: data_out = 18'h0502f; 13'b0101101010000: data_out = 18'h0508c; 13'b0101101010001: data_out = 18'h0515b; 13'b0101101010010: data_out = 18'h053f1; 13'b0101101010011: data_out = 18'h055a6; 13'b0101101010100: data_out = 18'h0558d; 13'b0101101010101: data_out = 18'h0572e; 13'b0101101010110: data_out = 18'h0562c; 13'b0101101010111: data_out = 18'h05908; 13'b0101101011000: data_out = 18'h059cb; 13'b0101101011001: data_out = 18'h05b00; 13'b0101101011010: data_out = 18'h05b4d; 13'b0101101011011: data_out = 18'h05b95; 13'b0101101011100: data_out = 18'h05d84; 13'b0101101011101: data_out = 18'h05dd9; 13'b0101101011110: data_out = 18'h05f8b; 13'b0101101011111: data_out = 18'h060a3; 13'b0101101100000: data_out = 18'h060ae; 13'b0101101100001: data_out = 18'h061f0; 13'b0101101100010: data_out = 18'h06274; 13'b0101101100011: data_out = 18'h06388; 13'b0101101100100: data_out = 18'h06400; 13'b0101101100101: data_out = 18'h0652c; 13'b0101101100110: data_out = 18'h06565; 13'b0101101100111: data_out = 18'h066e6; 13'b0101101101000: data_out = 18'h068b0; 13'b0101101101001: data_out = 18'h068a9; 13'b0101101101010: data_out = 18'h06928; 13'b0101101101011: data_out = 18'h06a67; 13'b0101101101100: data_out = 18'h06bf2; 13'b0101101101101: data_out = 18'h06c6a; 13'b0101101101110: data_out = 18'h06bd3; 13'b0101101101111: data_out = 18'h06db0; 13'b0101101110000: data_out = 18'h06fbc; 13'b0101101110001: data_out = 18'h06fc0; 13'b0101101110010: data_out = 18'h07101; 13'b0101101110011: data_out = 18'h07132; 13'b0101101110100: data_out = 18'h07154; 13'b0101101110101: data_out = 18'h07259; 13'b0101101110110: data_out = 18'h073f8; 13'b0101101110111: data_out = 18'h074b2; 13'b0101101111000: data_out = 18'h076d5; 13'b0101101111001: data_out = 18'h0787e; 13'b0101101111010: data_out = 18'h077d3; 13'b0101101111011: data_out = 18'h07879; 13'b0101101111100: data_out = 18'h079f2; 13'b0101101111101: data_out = 18'h07b69; 13'b0101101111110: data_out = 18'h07c3e; 13'b0101101111111: data_out = 18'h07c81; 13'b0101110000000: data_out = 18'h07e41; 13'b0101110000001: data_out = 18'h07f91; 13'b0101110000010: data_out = 18'h0809b; 13'b0101110000011: data_out = 18'h0818e; 13'b0101110000100: data_out = 18'h08217; 13'b0101110000101: data_out = 18'h08336; 13'b0101110000110: data_out = 18'h08416; 13'b0101110000111: data_out = 18'h084a4; 13'b0101110001000: data_out = 18'h08674; 13'b0101110001001: data_out = 18'h08736; 13'b0101110001010: data_out = 18'h08843; 13'b0101110001011: data_out = 18'h087f5; 13'b0101110001100: data_out = 18'h08a36; 13'b0101110001101: data_out = 18'h08b56; 13'b0101110001110: data_out = 18'h08bf4; 13'b0101110001111: data_out = 18'h08d51; 13'b0101110010000: data_out = 18'h08c93; 13'b0101110010001: data_out = 18'h08de6; 13'b0101110010010: data_out = 18'h08eb9; 13'b0101110010011: data_out = 18'h08eaf; 13'b0101110010100: data_out = 18'h090c0; 13'b0101110010101: data_out = 18'h0923d; 13'b0101110010110: data_out = 18'h09216; 13'b0101110010111: data_out = 18'h0930f; 13'b0101110011000: data_out = 18'h09332; 13'b0101110011001: data_out = 18'h0936b; 13'b0101110011010: data_out = 18'h094a6; 13'b0101110011011: data_out = 18'h095ee; 13'b0101110011100: data_out = 18'h095d4; 13'b0101110011101: data_out = 18'h096c1; 13'b0101110011110: data_out = 18'h096f9; 13'b0101110011111: data_out = 18'h09746; 13'b0101110100000: data_out = 18'h09800; 13'b0101110100001: data_out = 18'h09897; 13'b0101110100010: data_out = 18'h0993e; 13'b0101110100011: data_out = 18'h09a1b; 13'b0101110100100: data_out = 18'h099e3; 13'b0101110100101: data_out = 18'h09b02; 13'b0101110100110: data_out = 18'h09b1d; 13'b0101110100111: data_out = 18'h09bd0; 13'b0101110101000: data_out = 18'h09b52; 13'b0101110101001: data_out = 18'h09bd3; 13'b0101110101010: data_out = 18'h09bb5; 13'b0101110101011: data_out = 18'h09c58; 13'b0101110101100: data_out = 18'h09d3d; 13'b0101110101101: data_out = 18'h09c0c; 13'b0101110101110: data_out = 18'h09d7e; 13'b0101110101111: data_out = 18'h09e0f; 13'b0101110110000: data_out = 18'h09d38; 13'b0101110110001: data_out = 18'h09d4f; 13'b0101110110010: data_out = 18'h09d3c; 13'b0101110110011: data_out = 18'h09e33; 13'b0101110110100: data_out = 18'h09dff; 13'b0101110110101: data_out = 18'h09d75; 13'b0101110110110: data_out = 18'h09d5a; 13'b0101110110111: data_out = 18'h09cc5; 13'b0101110111000: data_out = 18'h09d94; 13'b0101110111001: data_out = 18'h09cf2; 13'b0101110111010: data_out = 18'h09cc1; 13'b0101110111011: data_out = 18'h09cd0; 13'b0101110111100: data_out = 18'h09bdf; 13'b0101110111101: data_out = 18'h09c18; 13'b0101110111110: data_out = 18'h09bc7; 13'b0101110111111: data_out = 18'h09ac9; 13'b0101111000000: data_out = 18'h099bb; 13'b0101111000001: data_out = 18'h099ad; 13'b0101111000010: data_out = 18'h09899; 13'b0101111000011: data_out = 18'h0985d; 13'b0101111000100: data_out = 18'h0981b; 13'b0101111000101: data_out = 18'h09708; 13'b0101111000110: data_out = 18'h09655; 13'b0101111000111: data_out = 18'h095e4; 13'b0101111001000: data_out = 18'h09400; 13'b0101111001001: data_out = 18'h0941d; 13'b0101111001010: data_out = 18'h09254; 13'b0101111001011: data_out = 18'h09291; 13'b0101111001100: data_out = 18'h0909c; 13'b0101111001101: data_out = 18'h08f4e; 13'b0101111001110: data_out = 18'h08ea0; 13'b0101111001111: data_out = 18'h08c53; 13'b0101111010000: data_out = 18'h08abc; 13'b0101111010001: data_out = 18'h089a0; 13'b0101111010010: data_out = 18'h08815; 13'b0101111010011: data_out = 18'h087dc; 13'b0101111010100: data_out = 18'h08454; 13'b0101111010101: data_out = 18'h0824f; 13'b0101111010110: data_out = 18'h081c7; 13'b0101111010111: data_out = 18'h07e9b; 13'b0101111011000: data_out = 18'h07e0d; 13'b0101111011001: data_out = 18'h07ce2; 13'b0101111011010: data_out = 18'h07a48; 13'b0101111011011: data_out = 18'h07856; 13'b0101111011100: data_out = 18'h074f5; 13'b0101111011101: data_out = 18'h072c8; 13'b0101111011110: data_out = 18'h07193; 13'b0101111011111: data_out = 18'h06fd0; 13'b0101111100000: data_out = 18'h06cbc; 13'b0101111100001: data_out = 18'h06abf; 13'b0101111100010: data_out = 18'h06853; 13'b0101111100011: data_out = 18'h065b3; 13'b0101111100100: data_out = 18'h0636f; 13'b0101111100101: data_out = 18'h06041; 13'b0101111100110: data_out = 18'h05d3b; 13'b0101111100111: data_out = 18'h059d0; 13'b0101111101000: data_out = 18'h058e7; 13'b0101111101001: data_out = 18'h0565c; 13'b0101111101010: data_out = 18'h053e6; 13'b0101111101011: data_out = 18'h04f6f; 13'b0101111101100: data_out = 18'h04ce2; 13'b0101111101101: data_out = 18'h04a7a; 13'b0101111101110: data_out = 18'h04755; 13'b0101111101111: data_out = 18'h044b7; 13'b0101111110000: data_out = 18'h0413a; 13'b0101111110001: data_out = 18'h03e2c; 13'b0101111110010: data_out = 18'h03a97; 13'b0101111110011: data_out = 18'h03884; 13'b0101111110100: data_out = 18'h03510; 13'b0101111110101: data_out = 18'h03334; 13'b0101111110110: data_out = 18'h02fb4; 13'b0101111110111: data_out = 18'h02bbd; 13'b0101111111000: data_out = 18'h028f9; 13'b0101111111001: data_out = 18'h025cd; 13'b0101111111010: data_out = 18'h022c2; 13'b0101111111011: data_out = 18'h01f09; 13'b0101111111100: data_out = 18'h01c5e; 13'b0101111111101: data_out = 18'h019a7; 13'b0101111111110: data_out = 18'h01683; 13'b0101111111111: data_out = 18'h013a2; 13'b0110000000000: data_out = 18'h01064; 13'b0110000000001: data_out = 18'h00d61; 13'b0110000000010: data_out = 18'h009de; 13'b0110000000011: data_out = 18'h00682; 13'b0110000000100: data_out = 18'h004b0; 13'b0110000000101: data_out = 18'h00107; 13'b0110000000110: data_out = 18'h3fec8; 13'b0110000000111: data_out = 18'h3fb1b; 13'b0110000001000: data_out = 18'h3f8c6; 13'b0110000001001: data_out = 18'h3f605; 13'b0110000001010: data_out = 18'h3f32d; 13'b0110000001011: data_out = 18'h3f04b; 13'b0110000001100: data_out = 18'h3ed57; 13'b0110000001101: data_out = 18'h3ea9c; 13'b0110000001110: data_out = 18'h3e99f; 13'b0110000001111: data_out = 18'h3e5ba; 13'b0110000010000: data_out = 18'h3e2c6; 13'b0110000010001: data_out = 18'h3e0ed; 13'b0110000010010: data_out = 18'h3de2a; 13'b0110000010011: data_out = 18'h3dbf2; 13'b0110000010100: data_out = 18'h3dac8; 13'b0110000010101: data_out = 18'h3d76e; 13'b0110000010110: data_out = 18'h3d508; 13'b0110000010111: data_out = 18'h3d367; 13'b0110000011000: data_out = 18'h3d0cf; 13'b0110000011001: data_out = 18'h3cf65; 13'b0110000011010: data_out = 18'h3ccb3; 13'b0110000011011: data_out = 18'h3ca67; 13'b0110000011100: data_out = 18'h3c91f; 13'b0110000011101: data_out = 18'h3c643; 13'b0110000011110: data_out = 18'h3c597; 13'b0110000011111: data_out = 18'h3c373; 13'b0110000100000: data_out = 18'h3c175; 13'b0110000100001: data_out = 18'h3bfbb; 13'b0110000100010: data_out = 18'h3bcdd; 13'b0110000100011: data_out = 18'h3bc62; 13'b0110000100100: data_out = 18'h3ba68; 13'b0110000100101: data_out = 18'h3b949; 13'b0110000100110: data_out = 18'h3b828; 13'b0110000100111: data_out = 18'h3b5d9; 13'b0110000101000: data_out = 18'h3b4b5; 13'b0110000101001: data_out = 18'h3b2a8; 13'b0110000101010: data_out = 18'h3b17a; 13'b0110000101011: data_out = 18'h3b0c4; 13'b0110000101100: data_out = 18'h3af09; 13'b0110000101101: data_out = 18'h3ae4c; 13'b0110000101110: data_out = 18'h3acca; 13'b0110000101111: data_out = 18'h3abb9; 13'b0110000110000: data_out = 18'h3aa3f; 13'b0110000110001: data_out = 18'h3a86b; 13'b0110000110010: data_out = 18'h3a7b0; 13'b0110000110011: data_out = 18'h3a6e0; 13'b0110000110100: data_out = 18'h3a5e1; 13'b0110000110101: data_out = 18'h3a53c; 13'b0110000110110: data_out = 18'h3a3cb; 13'b0110000110111: data_out = 18'h3a27b; 13'b0110000111000: data_out = 18'h3a180; 13'b0110000111001: data_out = 18'h3a013; 13'b0110000111010: data_out = 18'h39f29; 13'b0110000111011: data_out = 18'h39e8e; 13'b0110000111100: data_out = 18'h39d25; 13'b0110000111101: data_out = 18'h39cea; 13'b0110000111110: data_out = 18'h39c40; 13'b0110000111111: data_out = 18'h39a9d; 13'b0110001000000: data_out = 18'h3998c; 13'b0110001000001: data_out = 18'h398b8; 13'b0110001000010: data_out = 18'h39845; 13'b0110001000011: data_out = 18'h3977a; 13'b0110001000100: data_out = 18'h39642; 13'b0110001000101: data_out = 18'h39588; 13'b0110001000110: data_out = 18'h3952a; 13'b0110001000111: data_out = 18'h39366; 13'b0110001001000: data_out = 18'h39372; 13'b0110001001001: data_out = 18'h392b4; 13'b0110001001010: data_out = 18'h39175; 13'b0110001001011: data_out = 18'h39014; 13'b0110001001100: data_out = 18'h38fe0; 13'b0110001001101: data_out = 18'h38f6e; 13'b0110001001110: data_out = 18'h38edf; 13'b0110001001111: data_out = 18'h38d7f; 13'b0110001010000: data_out = 18'h38c55; 13'b0110001010001: data_out = 18'h38b5c; 13'b0110001010010: data_out = 18'h38b7d; 13'b0110001010011: data_out = 18'h38a42; 13'b0110001010100: data_out = 18'h38967; 13'b0110001010101: data_out = 18'h3883b; 13'b0110001010110: data_out = 18'h38780; 13'b0110001010111: data_out = 18'h3878f; 13'b0110001011000: data_out = 18'h386a4; 13'b0110001011001: data_out = 18'h385bb; 13'b0110001011010: data_out = 18'h38529; 13'b0110001011011: data_out = 18'h383bb; 13'b0110001011100: data_out = 18'h38458; 13'b0110001011101: data_out = 18'h38244; 13'b0110001011110: data_out = 18'h38189; 13'b0110001011111: data_out = 18'h3821f; 13'b0110001100000: data_out = 18'h38049; 13'b0110001100001: data_out = 18'h38028; 13'b0110001100010: data_out = 18'h37f93; 13'b0110001100011: data_out = 18'h37f03; 13'b0110001100100: data_out = 18'h37d6e; 13'b0110001100101: data_out = 18'h37cde; 13'b0110001100110: data_out = 18'h37cfc; 13'b0110001100111: data_out = 18'h37c0a; 13'b0110001101000: data_out = 18'h37b71; 13'b0110001101001: data_out = 18'h37aa4; 13'b0110001101010: data_out = 18'h37a44; 13'b0110001101011: data_out = 18'h379c1; 13'b0110001101100: data_out = 18'h37997; 13'b0110001101101: data_out = 18'h3781c; 13'b0110001101110: data_out = 18'h377dc; 13'b0110001101111: data_out = 18'h37705; 13'b0110001110000: data_out = 18'h37641; 13'b0110001110001: data_out = 18'h3759e; 13'b0110001110010: data_out = 18'h375d6; 13'b0110001110011: data_out = 18'h37469; 13'b0110001110100: data_out = 18'h3743f; 13'b0110001110101: data_out = 18'h37360; 13'b0110001110110: data_out = 18'h372c7; 13'b0110001110111: data_out = 18'h37204; 13'b0110001111000: data_out = 18'h37191; 13'b0110001111001: data_out = 18'h371a0; 13'b0110001111010: data_out = 18'h3716b; 13'b0110001111011: data_out = 18'h37062; 13'b0110001111100: data_out = 18'h36f62; 13'b0110001111101: data_out = 18'h36e92; 13'b0110001111110: data_out = 18'h36f1d; 13'b0110001111111: data_out = 18'h36d97; 13'b0110010000000: data_out = 18'h36e4d; 13'b0110010000001: data_out = 18'h36e42; 13'b0110010000010: data_out = 18'h36d0f; 13'b0110010000011: data_out = 18'h36c73; 13'b0110010000100: data_out = 18'h36b98; 13'b0110010000101: data_out = 18'h36b85; 13'b0110010000110: data_out = 18'h36bb9; 13'b0110010000111: data_out = 18'h36ae8; 13'b0110010001000: data_out = 18'h36aae; 13'b0110010001001: data_out = 18'h36b0d; 13'b0110010001010: data_out = 18'h369b8; 13'b0110010001011: data_out = 18'h369d4; 13'b0110010001100: data_out = 18'h36949; 13'b0110010001101: data_out = 18'h36959; 13'b0110010001110: data_out = 18'h368ea; 13'b0110010001111: data_out = 18'h36823; 13'b0110010010000: data_out = 18'h36822; 13'b0110010010001: data_out = 18'h36846; 13'b0110010010010: data_out = 18'h3689d; 13'b0110010010011: data_out = 18'h36800; 13'b0110010010100: data_out = 18'h366a5; 13'b0110010010101: data_out = 18'h36719; 13'b0110010010110: data_out = 18'h367d0; 13'b0110010010111: data_out = 18'h367ac; 13'b0110010011000: data_out = 18'h36784; 13'b0110010011001: data_out = 18'h36731; 13'b0110010011010: data_out = 18'h36758; 13'b0110010011011: data_out = 18'h3678e; 13'b0110010011100: data_out = 18'h36782; 13'b0110010011101: data_out = 18'h367f7; 13'b0110010011110: data_out = 18'h36869; 13'b0110010011111: data_out = 18'h36854; 13'b0110010100000: data_out = 18'h368fc; 13'b0110010100001: data_out = 18'h3686a; 13'b0110010100010: data_out = 18'h36835; 13'b0110010100011: data_out = 18'h369b7; 13'b0110010100100: data_out = 18'h36ac9; 13'b0110010100101: data_out = 18'h36b48; 13'b0110010100110: data_out = 18'h36b08; 13'b0110010100111: data_out = 18'h36adc; 13'b0110010101000: data_out = 18'h36c59; 13'b0110010101001: data_out = 18'h36d61; 13'b0110010101010: data_out = 18'h36d8c; 13'b0110010101011: data_out = 18'h36e78; 13'b0110010101100: data_out = 18'h36fc8; 13'b0110010101101: data_out = 18'h37036; 13'b0110010101110: data_out = 18'h37136; 13'b0110010101111: data_out = 18'h3721d; 13'b0110010110000: data_out = 18'h3737a; 13'b0110010110001: data_out = 18'h3741d; 13'b0110010110010: data_out = 18'h374a1; 13'b0110010110011: data_out = 18'h37628; 13'b0110010110100: data_out = 18'h377a4; 13'b0110010110101: data_out = 18'h379b7; 13'b0110010110110: data_out = 18'h37bc9; 13'b0110010110111: data_out = 18'h37d04; 13'b0110010111000: data_out = 18'h37d4e; 13'b0110010111001: data_out = 18'h37ed3; 13'b0110010111010: data_out = 18'h38176; 13'b0110010111011: data_out = 18'h3833d; 13'b0110010111100: data_out = 18'h38501; 13'b0110010111101: data_out = 18'h38714; 13'b0110010111110: data_out = 18'h388e5; 13'b0110010111111: data_out = 18'h38b63; 13'b0110011000000: data_out = 18'h38cb2; 13'b0110011000001: data_out = 18'h38f15; 13'b0110011000010: data_out = 18'h39147; 13'b0110011000011: data_out = 18'h392f7; 13'b0110011000100: data_out = 18'h395eb; 13'b0110011000101: data_out = 18'h3983b; 13'b0110011000110: data_out = 18'h39a57; 13'b0110011000111: data_out = 18'h39c4d; 13'b0110011001000: data_out = 18'h39fda; 13'b0110011001001: data_out = 18'h3a1c9; 13'b0110011001010: data_out = 18'h3a450; 13'b0110011001011: data_out = 18'h3a648; 13'b0110011001100: data_out = 18'h3aa25; 13'b0110011001101: data_out = 18'h3ade6; 13'b0110011001110: data_out = 18'h3b028; 13'b0110011001111: data_out = 18'h3b133; 13'b0110011010000: data_out = 18'h3b49d; 13'b0110011010001: data_out = 18'h3b849; 13'b0110011010010: data_out = 18'h3bba5; 13'b0110011010011: data_out = 18'h3bd97; 13'b0110011010100: data_out = 18'h3c156; 13'b0110011010101: data_out = 18'h3c3de; 13'b0110011010110: data_out = 18'h3c7a7; 13'b0110011010111: data_out = 18'h3c9e1; 13'b0110011011000: data_out = 18'h3cc8f; 13'b0110011011001: data_out = 18'h3d039; 13'b0110011011010: data_out = 18'h3d418; 13'b0110011011011: data_out = 18'h3d5d0; 13'b0110011011100: data_out = 18'h3d94e; 13'b0110011011101: data_out = 18'h3dc83; 13'b0110011011110: data_out = 18'h3e0b8; 13'b0110011011111: data_out = 18'h3e369; 13'b0110011100000: data_out = 18'h3e5a9; 13'b0110011100001: data_out = 18'h3e8d1; 13'b0110011100010: data_out = 18'h3ec1e; 13'b0110011100011: data_out = 18'h3f05c; 13'b0110011100100: data_out = 18'h3f346; 13'b0110011100101: data_out = 18'h3f5e4; 13'b0110011100110: data_out = 18'h3f8f7; 13'b0110011100111: data_out = 18'h3fb81; 13'b0110011101000: data_out = 18'h3ff21; 13'b0110011101001: data_out = 18'h00262; 13'b0110011101010: data_out = 18'h00591; 13'b0110011101011: data_out = 18'h00817; 13'b0110011101100: data_out = 18'h00aa3; 13'b0110011101101: data_out = 18'h00d97; 13'b0110011101110: data_out = 18'h010c5; 13'b0110011101111: data_out = 18'h013d4; 13'b0110011110000: data_out = 18'h0165d; 13'b0110011110001: data_out = 18'h018d5; 13'b0110011110010: data_out = 18'h01c0f; 13'b0110011110011: data_out = 18'h01e83; 13'b0110011110100: data_out = 18'h0216c; 13'b0110011110101: data_out = 18'h02349; 13'b0110011110110: data_out = 18'h025d5; 13'b0110011110111: data_out = 18'h02895; 13'b0110011111000: data_out = 18'h02a95; 13'b0110011111001: data_out = 18'h02d43; 13'b0110011111010: data_out = 18'h03048; 13'b0110011111011: data_out = 18'h03219; 13'b0110011111100: data_out = 18'h034b3; 13'b0110011111101: data_out = 18'h03613; 13'b0110011111110: data_out = 18'h03950; 13'b0110011111111: data_out = 18'h03b8b; 13'b0110100000000: data_out = 18'h03d20; 13'b0110100000001: data_out = 18'h03e21; 13'b0110100000010: data_out = 18'h04126; 13'b0110100000011: data_out = 18'h043da; 13'b0110100000100: data_out = 18'h044f3; 13'b0110100000101: data_out = 18'h046b3; 13'b0110100000110: data_out = 18'h0487d; 13'b0110100000111: data_out = 18'h04a87; 13'b0110100001000: data_out = 18'h04d2e; 13'b0110100001001: data_out = 18'h04d5b; 13'b0110100001010: data_out = 18'h04fbd; 13'b0110100001011: data_out = 18'h050e2; 13'b0110100001100: data_out = 18'h05351; 13'b0110100001101: data_out = 18'h0545c; 13'b0110100001110: data_out = 18'h055c6; 13'b0110100001111: data_out = 18'h05765; 13'b0110100010000: data_out = 18'h058f8; 13'b0110100010001: data_out = 18'h05a32; 13'b0110100010010: data_out = 18'h05be7; 13'b0110100010011: data_out = 18'h05d2f; 13'b0110100010100: data_out = 18'h05e83; 13'b0110100010101: data_out = 18'h05f48; 13'b0110100010110: data_out = 18'h060a6; 13'b0110100010111: data_out = 18'h06283; 13'b0110100011000: data_out = 18'h063b4; 13'b0110100011001: data_out = 18'h063cb; 13'b0110100011010: data_out = 18'h06557; 13'b0110100011011: data_out = 18'h06645; 13'b0110100011100: data_out = 18'h067bc; 13'b0110100011101: data_out = 18'h0690a; 13'b0110100011110: data_out = 18'h069bb; 13'b0110100011111: data_out = 18'h06b47; 13'b0110100100000: data_out = 18'h06c68; 13'b0110100100001: data_out = 18'h06db2; 13'b0110100100010: data_out = 18'h06de7; 13'b0110100100011: data_out = 18'h06eea; 13'b0110100100100: data_out = 18'h06fa0; 13'b0110100100101: data_out = 18'h070a8; 13'b0110100100110: data_out = 18'h071d8; 13'b0110100100111: data_out = 18'h07329; 13'b0110100101000: data_out = 18'h0736b; 13'b0110100101001: data_out = 18'h07404; 13'b0110100101010: data_out = 18'h07514; 13'b0110100101011: data_out = 18'h07663; 13'b0110100101100: data_out = 18'h0778b; 13'b0110100101101: data_out = 18'h076ea; 13'b0110100101110: data_out = 18'h07934; 13'b0110100101111: data_out = 18'h079dd; 13'b0110100110000: data_out = 18'h07aae; 13'b0110100110001: data_out = 18'h07b3a; 13'b0110100110010: data_out = 18'h07c0e; 13'b0110100110011: data_out = 18'h07cdf; 13'b0110100110100: data_out = 18'h07d39; 13'b0110100110101: data_out = 18'h07e68; 13'b0110100110110: data_out = 18'h07fe5; 13'b0110100110111: data_out = 18'h0806b; 13'b0110100111000: data_out = 18'h0811a; 13'b0110100111001: data_out = 18'h080ee; 13'b0110100111010: data_out = 18'h08219; 13'b0110100111011: data_out = 18'h08344; 13'b0110100111100: data_out = 18'h08453; 13'b0110100111101: data_out = 18'h0852b; 13'b0110100111110: data_out = 18'h08508; 13'b0110100111111: data_out = 18'h085d0; 13'b0110101000000: data_out = 18'h08749; 13'b0110101000001: data_out = 18'h08825; 13'b0110101000010: data_out = 18'h087e1; 13'b0110101000011: data_out = 18'h08875; 13'b0110101000100: data_out = 18'h08a28; 13'b0110101000101: data_out = 18'h08a1c; 13'b0110101000110: data_out = 18'h08aa0; 13'b0110101000111: data_out = 18'h08ba6; 13'b0110101001000: data_out = 18'h08c88; 13'b0110101001001: data_out = 18'h08cc8; 13'b0110101001010: data_out = 18'h08e1c; 13'b0110101001011: data_out = 18'h08e44; 13'b0110101001100: data_out = 18'h08e6e; 13'b0110101001101: data_out = 18'h08f32; 13'b0110101001110: data_out = 18'h09064; 13'b0110101001111: data_out = 18'h090a6; 13'b0110101010000: data_out = 18'h09274; 13'b0110101010001: data_out = 18'h0920c; 13'b0110101010010: data_out = 18'h09293; 13'b0110101010011: data_out = 18'h093d9; 13'b0110101010100: data_out = 18'h0943e; 13'b0110101010101: data_out = 18'h09477; 13'b0110101010110: data_out = 18'h094a3; 13'b0110101010111: data_out = 18'h09581; 13'b0110101011000: data_out = 18'h09562; 13'b0110101011001: data_out = 18'h095fa; 13'b0110101011010: data_out = 18'h096f2; 13'b0110101011011: data_out = 18'h097ef; 13'b0110101011100: data_out = 18'h097d7; 13'b0110101011101: data_out = 18'h09802; 13'b0110101011110: data_out = 18'h0987e; 13'b0110101011111: data_out = 18'h098f0; 13'b0110101100000: data_out = 18'h0996d; 13'b0110101100001: data_out = 18'h099e2; 13'b0110101100010: data_out = 18'h09a26; 13'b0110101100011: data_out = 18'h09a57; 13'b0110101100100: data_out = 18'h09ab9; 13'b0110101100101: data_out = 18'h09b20; 13'b0110101100110: data_out = 18'h09bd3; 13'b0110101100111: data_out = 18'h09afd; 13'b0110101101000: data_out = 18'h09b69; 13'b0110101101001: data_out = 18'h09bf6; 13'b0110101101010: data_out = 18'h09bd7; 13'b0110101101011: data_out = 18'h09c21; 13'b0110101101100: data_out = 18'h09c51; 13'b0110101101101: data_out = 18'h09cb1; 13'b0110101101110: data_out = 18'h09cb8; 13'b0110101101111: data_out = 18'h09d13; 13'b0110101110000: data_out = 18'h09d07; 13'b0110101110001: data_out = 18'h09c60; 13'b0110101110010: data_out = 18'h09c63; 13'b0110101110011: data_out = 18'h09cf1; 13'b0110101110100: data_out = 18'h09db2; 13'b0110101110101: data_out = 18'h09c89; 13'b0110101110110: data_out = 18'h09d14; 13'b0110101110111: data_out = 18'h09cff; 13'b0110101111000: data_out = 18'h09c7e; 13'b0110101111001: data_out = 18'h09c62; 13'b0110101111010: data_out = 18'h09cde; 13'b0110101111011: data_out = 18'h09b90; 13'b0110101111100: data_out = 18'h09bb2; 13'b0110101111101: data_out = 18'h09b71; 13'b0110101111110: data_out = 18'h09b5b; 13'b0110101111111: data_out = 18'h09ba0; 13'b0110110000000: data_out = 18'h09b4c; 13'b0110110000001: data_out = 18'h09b78; 13'b0110110000010: data_out = 18'h099aa; 13'b0110110000011: data_out = 18'h09984; 13'b0110110000100: data_out = 18'h0994c; 13'b0110110000101: data_out = 18'h098e2; 13'b0110110000110: data_out = 18'h09868; 13'b0110110000111: data_out = 18'h097d1; 13'b0110110001000: data_out = 18'h096da; 13'b0110110001001: data_out = 18'h09715; 13'b0110110001010: data_out = 18'h09644; 13'b0110110001011: data_out = 18'h0953a; 13'b0110110001100: data_out = 18'h0948a; 13'b0110110001101: data_out = 18'h0934c; 13'b0110110001110: data_out = 18'h09252; 13'b0110110001111: data_out = 18'h091a2; 13'b0110110010000: data_out = 18'h09134; 13'b0110110010001: data_out = 18'h0902d; 13'b0110110010010: data_out = 18'h08ea9; 13'b0110110010011: data_out = 18'h08d25; 13'b0110110010100: data_out = 18'h08d26; 13'b0110110010101: data_out = 18'h08b1e; 13'b0110110010110: data_out = 18'h089a8; 13'b0110110010111: data_out = 18'h08829; 13'b0110110011000: data_out = 18'h0872d; 13'b0110110011001: data_out = 18'h085f3; 13'b0110110011010: data_out = 18'h08508; 13'b0110110011011: data_out = 18'h0827d; 13'b0110110011100: data_out = 18'h080c5; 13'b0110110011101: data_out = 18'h07f2c; 13'b0110110011110: data_out = 18'h07e5a; 13'b0110110011111: data_out = 18'h07db8; 13'b0110110100000: data_out = 18'h07a2d; 13'b0110110100001: data_out = 18'h077e4; 13'b0110110100010: data_out = 18'h07661; 13'b0110110100011: data_out = 18'h074f1; 13'b0110110100100: data_out = 18'h07366; 13'b0110110100101: data_out = 18'h07109; 13'b0110110100110: data_out = 18'h06eae; 13'b0110110100111: data_out = 18'h06c6a; 13'b0110110101000: data_out = 18'h06b21; 13'b0110110101001: data_out = 18'h0690f; 13'b0110110101010: data_out = 18'h06680; 13'b0110110101011: data_out = 18'h064cb; 13'b0110110101100: data_out = 18'h06141; 13'b0110110101101: data_out = 18'h05fa7; 13'b0110110101110: data_out = 18'h05cf0; 13'b0110110101111: data_out = 18'h05aa7; 13'b0110110110000: data_out = 18'h058ed; 13'b0110110110001: data_out = 18'h055d6; 13'b0110110110010: data_out = 18'h05332; 13'b0110110110011: data_out = 18'h050b1; 13'b0110110110100: data_out = 18'h04de7; 13'b0110110110101: data_out = 18'h04adf; 13'b0110110110110: data_out = 18'h048dc; 13'b0110110110111: data_out = 18'h046ba; 13'b0110110111000: data_out = 18'h04383; 13'b0110110111001: data_out = 18'h040cb; 13'b0110110111010: data_out = 18'h03db0; 13'b0110110111011: data_out = 18'h03ba6; 13'b0110110111100: data_out = 18'h038c9; 13'b0110110111101: data_out = 18'h03504; 13'b0110110111110: data_out = 18'h032e1; 13'b0110110111111: data_out = 18'h02fd8; 13'b0110111000000: data_out = 18'h02d65; 13'b0110111000001: data_out = 18'h02aa0; 13'b0110111000010: data_out = 18'h02779; 13'b0110111000011: data_out = 18'h024ed; 13'b0110111000100: data_out = 18'h02199; 13'b0110111000101: data_out = 18'h01f36; 13'b0110111000110: data_out = 18'h01c1d; 13'b0110111000111: data_out = 18'h018cf; 13'b0110111001000: data_out = 18'h01600; 13'b0110111001001: data_out = 18'h0131d; 13'b0110111001010: data_out = 18'h00fed; 13'b0110111001011: data_out = 18'h00d0a; 13'b0110111001100: data_out = 18'h00aa2; 13'b0110111001101: data_out = 18'h007a2; 13'b0110111001110: data_out = 18'h0058c; 13'b0110111001111: data_out = 18'h0019a; 13'b0110111010000: data_out = 18'h3ff48; 13'b0110111010001: data_out = 18'h3fc03; 13'b0110111010010: data_out = 18'h3f9c1; 13'b0110111010011: data_out = 18'h3f70c; 13'b0110111010100: data_out = 18'h3f409; 13'b0110111010101: data_out = 18'h3f1da; 13'b0110111010110: data_out = 18'h3ee92; 13'b0110111010111: data_out = 18'h3ec26; 13'b0110111011000: data_out = 18'h3e9c9; 13'b0110111011001: data_out = 18'h3e6fd; 13'b0110111011010: data_out = 18'h3e4a8; 13'b0110111011011: data_out = 18'h3e1ad; 13'b0110111011100: data_out = 18'h3e019; 13'b0110111011101: data_out = 18'h3dd80; 13'b0110111011110: data_out = 18'h3da14; 13'b0110111011111: data_out = 18'h3d8a3; 13'b0110111100000: data_out = 18'h3d5df; 13'b0110111100001: data_out = 18'h3d301; 13'b0110111100010: data_out = 18'h3d11f; 13'b0110111100011: data_out = 18'h3cf2b; 13'b0110111100100: data_out = 18'h3cd4e; 13'b0110111100101: data_out = 18'h3cac2; 13'b0110111100110: data_out = 18'h3c821; 13'b0110111100111: data_out = 18'h3c576; 13'b0110111101000: data_out = 18'h3c499; 13'b0110111101001: data_out = 18'h3c3d3; 13'b0110111101010: data_out = 18'h3c01a; 13'b0110111101011: data_out = 18'h3be40; 13'b0110111101100: data_out = 18'h3bc13; 13'b0110111101101: data_out = 18'h3b9f7; 13'b0110111101110: data_out = 18'h3b886; 13'b0110111101111: data_out = 18'h3b661; 13'b0110111110000: data_out = 18'h3b4d4; 13'b0110111110001: data_out = 18'h3b2d5; 13'b0110111110010: data_out = 18'h3b0e7; 13'b0110111110011: data_out = 18'h3af31; 13'b0110111110100: data_out = 18'h3adc2; 13'b0110111110101: data_out = 18'h3acd8; 13'b0110111110110: data_out = 18'h3aa86; 13'b0110111110111: data_out = 18'h3a929; 13'b0110111111000: data_out = 18'h3a797; 13'b0110111111001: data_out = 18'h3a62e; 13'b0110111111010: data_out = 18'h3a4ca; 13'b0110111111011: data_out = 18'h3a325; 13'b0110111111100: data_out = 18'h3a187; 13'b0110111111101: data_out = 18'h3a0a1; 13'b0110111111110: data_out = 18'h39ee5; 13'b0110111111111: data_out = 18'h39dab; 13'b0111000000000: data_out = 18'h39bff; 13'b0111000000001: data_out = 18'h39b1d; 13'b0111000000010: data_out = 18'h399a1; 13'b0111000000011: data_out = 18'h3984e; 13'b0111000000100: data_out = 18'h39787; 13'b0111000000101: data_out = 18'h395e0; 13'b0111000000110: data_out = 18'h394cf; 13'b0111000000111: data_out = 18'h39327; 13'b0111000001000: data_out = 18'h39200; 13'b0111000001001: data_out = 18'h39111; 13'b0111000001010: data_out = 18'h38fd1; 13'b0111000001011: data_out = 18'h38e7e; 13'b0111000001100: data_out = 18'h38d81; 13'b0111000001101: data_out = 18'h38c70; 13'b0111000001110: data_out = 18'h38baa; 13'b0111000001111: data_out = 18'h38a77; 13'b0111000010000: data_out = 18'h389ae; 13'b0111000010001: data_out = 18'h388dc; 13'b0111000010010: data_out = 18'h387ae; 13'b0111000010011: data_out = 18'h3872a; 13'b0111000010100: data_out = 18'h38632; 13'b0111000010101: data_out = 18'h3857a; 13'b0111000010110: data_out = 18'h38400; 13'b0111000010111: data_out = 18'h3836f; 13'b0111000011000: data_out = 18'h382ae; 13'b0111000011001: data_out = 18'h3822f; 13'b0111000011010: data_out = 18'h38150; 13'b0111000011011: data_out = 18'h38073; 13'b0111000011100: data_out = 18'h37fb9; 13'b0111000011101: data_out = 18'h37ecd; 13'b0111000011110: data_out = 18'h37e03; 13'b0111000011111: data_out = 18'h37d3f; 13'b0111000100000: data_out = 18'h37c17; 13'b0111000100001: data_out = 18'h37b13; 13'b0111000100010: data_out = 18'h37b0f; 13'b0111000100011: data_out = 18'h3799d; 13'b0111000100100: data_out = 18'h3793b; 13'b0111000100101: data_out = 18'h37860; 13'b0111000100110: data_out = 18'h377c8; 13'b0111000100111: data_out = 18'h3778c; 13'b0111000101000: data_out = 18'h37677; 13'b0111000101001: data_out = 18'h37618; 13'b0111000101010: data_out = 18'h37533; 13'b0111000101011: data_out = 18'h374ce; 13'b0111000101100: data_out = 18'h373d2; 13'b0111000101101: data_out = 18'h3735b; 13'b0111000101110: data_out = 18'h3728e; 13'b0111000101111: data_out = 18'h3721d; 13'b0111000110000: data_out = 18'h37142; 13'b0111000110001: data_out = 18'h3703a; 13'b0111000110010: data_out = 18'h37008; 13'b0111000110011: data_out = 18'h36f56; 13'b0111000110100: data_out = 18'h36eac; 13'b0111000110101: data_out = 18'h36e7e; 13'b0111000110110: data_out = 18'h36d39; 13'b0111000110111: data_out = 18'h36d01; 13'b0111000111000: data_out = 18'h36c6d; 13'b0111000111001: data_out = 18'h36bf7; 13'b0111000111010: data_out = 18'h36ba2; 13'b0111000111011: data_out = 18'h36b3b; 13'b0111000111100: data_out = 18'h36aa4; 13'b0111000111101: data_out = 18'h36a2c; 13'b0111000111110: data_out = 18'h369f9; 13'b0111000111111: data_out = 18'h36944; 13'b0111001000000: data_out = 18'h368e4; 13'b0111001000001: data_out = 18'h3687e; 13'b0111001000010: data_out = 18'h367f7; 13'b0111001000011: data_out = 18'h367ac; 13'b0111001000100: data_out = 18'h3675c; 13'b0111001000101: data_out = 18'h366e5; 13'b0111001000110: data_out = 18'h366bd; 13'b0111001000111: data_out = 18'h36684; 13'b0111001001000: data_out = 18'h36670; 13'b0111001001001: data_out = 18'h3663d; 13'b0111001001010: data_out = 18'h365cb; 13'b0111001001011: data_out = 18'h365b8; 13'b0111001001100: data_out = 18'h3658f; 13'b0111001001101: data_out = 18'h36562; 13'b0111001001110: data_out = 18'h36556; 13'b0111001001111: data_out = 18'h36526; 13'b0111001010000: data_out = 18'h364d5; 13'b0111001010001: data_out = 18'h3653e; 13'b0111001010010: data_out = 18'h364b2; 13'b0111001010011: data_out = 18'h36465; 13'b0111001010100: data_out = 18'h364ad; 13'b0111001010101: data_out = 18'h36445; 13'b0111001010110: data_out = 18'h364ab; 13'b0111001010111: data_out = 18'h36476; 13'b0111001011000: data_out = 18'h3646b; 13'b0111001011001: data_out = 18'h36469; 13'b0111001011010: data_out = 18'h36417; 13'b0111001011011: data_out = 18'h364a4; 13'b0111001011100: data_out = 18'h36485; 13'b0111001011101: data_out = 18'h36488; 13'b0111001011110: data_out = 18'h364cd; 13'b0111001011111: data_out = 18'h36539; 13'b0111001100000: data_out = 18'h36505; 13'b0111001100001: data_out = 18'h36564; 13'b0111001100010: data_out = 18'h3655e; 13'b0111001100011: data_out = 18'h3659c; 13'b0111001100100: data_out = 18'h36630; 13'b0111001100101: data_out = 18'h36658; 13'b0111001100110: data_out = 18'h3662f; 13'b0111001100111: data_out = 18'h36663; 13'b0111001101000: data_out = 18'h36700; 13'b0111001101001: data_out = 18'h36725; 13'b0111001101010: data_out = 18'h367a7; 13'b0111001101011: data_out = 18'h36842; 13'b0111001101100: data_out = 18'h3689f; 13'b0111001101101: data_out = 18'h368ff; 13'b0111001101110: data_out = 18'h3698d; 13'b0111001101111: data_out = 18'h369e1; 13'b0111001110000: data_out = 18'h36a95; 13'b0111001110001: data_out = 18'h36afa; 13'b0111001110010: data_out = 18'h36c0a; 13'b0111001110011: data_out = 18'h36c76; 13'b0111001110100: data_out = 18'h36d3f; 13'b0111001110101: data_out = 18'h36dd3; 13'b0111001110110: data_out = 18'h36e87; 13'b0111001110111: data_out = 18'h36f7c; 13'b0111001111000: data_out = 18'h37082; 13'b0111001111001: data_out = 18'h370e5; 13'b0111001111010: data_out = 18'h3720a; 13'b0111001111011: data_out = 18'h3732d; 13'b0111001111100: data_out = 18'h37423; 13'b0111001111101: data_out = 18'h374f4; 13'b0111001111110: data_out = 18'h375ec; 13'b0111001111111: data_out = 18'h37721; 13'b0111010000000: data_out = 18'h37813; 13'b0111010000001: data_out = 18'h379a1; 13'b0111010000010: data_out = 18'h37ad7; 13'b0111010000011: data_out = 18'h37c3c; 13'b0111010000100: data_out = 18'h37d51; 13'b0111010000101: data_out = 18'h37eaf; 13'b0111010000110: data_out = 18'h38045; 13'b0111010000111: data_out = 18'h381a3; 13'b0111010001000: data_out = 18'h382c7; 13'b0111010001001: data_out = 18'h384ba; 13'b0111010001010: data_out = 18'h3864e; 13'b0111010001011: data_out = 18'h3878c; 13'b0111010001100: data_out = 18'h3893d; 13'b0111010001101: data_out = 18'h38b24; 13'b0111010001110: data_out = 18'h38c4d; 13'b0111010001111: data_out = 18'h38e20; 13'b0111010010000: data_out = 18'h38f92; 13'b0111010010001: data_out = 18'h39207; 13'b0111010010010: data_out = 18'h3938c; 13'b0111010010011: data_out = 18'h395c6; 13'b0111010010100: data_out = 18'h39798; 13'b0111010010101: data_out = 18'h39981; 13'b0111010010110: data_out = 18'h39b82; 13'b0111010010111: data_out = 18'h39d0d; 13'b0111010011000: data_out = 18'h39fbf; 13'b0111010011001: data_out = 18'h3a193; 13'b0111010011010: data_out = 18'h3a3de; 13'b0111010011011: data_out = 18'h3a5ee; 13'b0111010011100: data_out = 18'h3a7d0; 13'b0111010011101: data_out = 18'h3aa10; 13'b0111010011110: data_out = 18'h3ac5e; 13'b0111010011111: data_out = 18'h3aea2; 13'b0111010100000: data_out = 18'h3b11d; 13'b0111010100001: data_out = 18'h3b2e5; 13'b0111010100010: data_out = 18'h3b5c3; 13'b0111010100011: data_out = 18'h3b7d7; 13'b0111010100100: data_out = 18'h3ba2a; 13'b0111010100101: data_out = 18'h3bcd0; 13'b0111010100110: data_out = 18'h3bf4f; 13'b0111010100111: data_out = 18'h3c1a2; 13'b0111010101000: data_out = 18'h3c414; 13'b0111010101001: data_out = 18'h3c67a; 13'b0111010101010: data_out = 18'h3c8ee; 13'b0111010101011: data_out = 18'h3cbdf; 13'b0111010101100: data_out = 18'h3ce38; 13'b0111010101101: data_out = 18'h3d0d4; 13'b0111010101110: data_out = 18'h3d355; 13'b0111010101111: data_out = 18'h3d637; 13'b0111010110000: data_out = 18'h3d8e3; 13'b0111010110001: data_out = 18'h3dbaa; 13'b0111010110010: data_out = 18'h3dd9d; 13'b0111010110011: data_out = 18'h3e069; 13'b0111010110100: data_out = 18'h3e33c; 13'b0111010110101: data_out = 18'h3e651; 13'b0111010110110: data_out = 18'h3e875; 13'b0111010110111: data_out = 18'h3eb53; 13'b0111010111000: data_out = 18'h3eddc; 13'b0111010111001: data_out = 18'h3f07d; 13'b0111010111010: data_out = 18'h3f374; 13'b0111010111011: data_out = 18'h3f57b; 13'b0111010111100: data_out = 18'h3f7f5; 13'b0111010111101: data_out = 18'h3fb0c; 13'b0111010111110: data_out = 18'h3fd9e; 13'b0111010111111: data_out = 18'h0005f; 13'b0111011000000: data_out = 18'h00309; 13'b0111011000001: data_out = 18'h00552; 13'b0111011000010: data_out = 18'h007cf; 13'b0111011000011: data_out = 18'h00a64; 13'b0111011000100: data_out = 18'h00d34; 13'b0111011000101: data_out = 18'h00fe8; 13'b0111011000110: data_out = 18'h0124f; 13'b0111011000111: data_out = 18'h014af; 13'b0111011001000: data_out = 18'h01701; 13'b0111011001001: data_out = 18'h0199a; 13'b0111011001010: data_out = 18'h01bf0; 13'b0111011001011: data_out = 18'h01e2c; 13'b0111011001100: data_out = 18'h0207c; 13'b0111011001101: data_out = 18'h022f3; 13'b0111011001110: data_out = 18'h02587; 13'b0111011001111: data_out = 18'h02702; 13'b0111011010000: data_out = 18'h029b5; 13'b0111011010001: data_out = 18'h02bca; 13'b0111011010010: data_out = 18'h02de3; 13'b0111011010011: data_out = 18'h0307b; 13'b0111011010100: data_out = 18'h03229; 13'b0111011010101: data_out = 18'h0342f; 13'b0111011010110: data_out = 18'h036c9; 13'b0111011010111: data_out = 18'h0387f; 13'b0111011011000: data_out = 18'h03a73; 13'b0111011011001: data_out = 18'h03cf7; 13'b0111011011010: data_out = 18'h03f23; 13'b0111011011011: data_out = 18'h04086; 13'b0111011011100: data_out = 18'h0422f; 13'b0111011011101: data_out = 18'h04467; 13'b0111011011110: data_out = 18'h045f4; 13'b0111011011111: data_out = 18'h047cb; 13'b0111011100000: data_out = 18'h0492a; 13'b0111011100001: data_out = 18'h04ba8; 13'b0111011100010: data_out = 18'h04d5d; 13'b0111011100011: data_out = 18'h04e91; 13'b0111011100100: data_out = 18'h05019; 13'b0111011100101: data_out = 18'h051de; 13'b0111011100110: data_out = 18'h053aa; 13'b0111011100111: data_out = 18'h0553f; 13'b0111011101000: data_out = 18'h05664; 13'b0111011101001: data_out = 18'h0588f; 13'b0111011101010: data_out = 18'h05977; 13'b0111011101011: data_out = 18'h05aee; 13'b0111011101100: data_out = 18'h05cd9; 13'b0111011101101: data_out = 18'h05e5e; 13'b0111011101110: data_out = 18'h05ffb; 13'b0111011101111: data_out = 18'h06127; 13'b0111011110000: data_out = 18'h06287; 13'b0111011110001: data_out = 18'h063b1; 13'b0111011110010: data_out = 18'h0655a; 13'b0111011110011: data_out = 18'h066c8; 13'b0111011110100: data_out = 18'h067c1; 13'b0111011110101: data_out = 18'h068ec; 13'b0111011110110: data_out = 18'h06a16; 13'b0111011110111: data_out = 18'h06b5f; 13'b0111011111000: data_out = 18'h06ccf; 13'b0111011111001: data_out = 18'h06db5; 13'b0111011111010: data_out = 18'h06f34; 13'b0111011111011: data_out = 18'h07040; 13'b0111011111100: data_out = 18'h07183; 13'b0111011111101: data_out = 18'h0726c; 13'b0111011111110: data_out = 18'h07394; 13'b0111011111111: data_out = 18'h07485; 13'b0111100000000: data_out = 18'h075cd; 13'b0111100000001: data_out = 18'h076f6; 13'b0111100000010: data_out = 18'h0782b; 13'b0111100000011: data_out = 18'h07904; 13'b0111100000100: data_out = 18'h079fe; 13'b0111100000101: data_out = 18'h07b00; 13'b0111100000110: data_out = 18'h07be7; 13'b0111100000111: data_out = 18'h07ca5; 13'b0111100001000: data_out = 18'h07e0d; 13'b0111100001001: data_out = 18'h07ecc; 13'b0111100001010: data_out = 18'h07f6e; 13'b0111100001011: data_out = 18'h080ac; 13'b0111100001100: data_out = 18'h0819e; 13'b0111100001101: data_out = 18'h081f6; 13'b0111100001110: data_out = 18'h08372; 13'b0111100001111: data_out = 18'h08444; 13'b0111100010000: data_out = 18'h08502; 13'b0111100010001: data_out = 18'h08594; 13'b0111100010010: data_out = 18'h086b5; 13'b0111100010011: data_out = 18'h0879f; 13'b0111100010100: data_out = 18'h0881e; 13'b0111100010101: data_out = 18'h088e3; 13'b0111100010110: data_out = 18'h0899c; 13'b0111100010111: data_out = 18'h08a33; 13'b0111100011000: data_out = 18'h08b3f; 13'b0111100011001: data_out = 18'h08bf1; 13'b0111100011010: data_out = 18'h08c72; 13'b0111100011011: data_out = 18'h08d15; 13'b0111100011100: data_out = 18'h08d77; 13'b0111100011101: data_out = 18'h08dfa; 13'b0111100011110: data_out = 18'h08ecf; 13'b0111100011111: data_out = 18'h08fb9; 13'b0111100100000: data_out = 18'h09023; 13'b0111100100001: data_out = 18'h090b5; 13'b0111100100010: data_out = 18'h0910d; 13'b0111100100011: data_out = 18'h09187; 13'b0111100100100: data_out = 18'h092aa; 13'b0111100100101: data_out = 18'h092a9; 13'b0111100100110: data_out = 18'h0939f; 13'b0111100100111: data_out = 18'h093dc; 13'b0111100101000: data_out = 18'h0946d; 13'b0111100101001: data_out = 18'h09500; 13'b0111100101010: data_out = 18'h0955f; 13'b0111100101011: data_out = 18'h0956d; 13'b0111100101100: data_out = 18'h0967e; 13'b0111100101101: data_out = 18'h09688; 13'b0111100101110: data_out = 18'h096f6; 13'b0111100101111: data_out = 18'h09777; 13'b0111100110000: data_out = 18'h097d5; 13'b0111100110001: data_out = 18'h09806; 13'b0111100110010: data_out = 18'h0981f; 13'b0111100110011: data_out = 18'h09848; 13'b0111100110100: data_out = 18'h098ea; 13'b0111100110101: data_out = 18'h098e8; 13'b0111100110110: data_out = 18'h09908; 13'b0111100110111: data_out = 18'h09981; 13'b0111100111000: data_out = 18'h099a6; 13'b0111100111001: data_out = 18'h0996c; 13'b0111100111010: data_out = 18'h099b1; 13'b0111100111011: data_out = 18'h09a0c; 13'b0111100111100: data_out = 18'h09a37; 13'b0111100111101: data_out = 18'h09a30; 13'b0111100111110: data_out = 18'h099e9; 13'b0111100111111: data_out = 18'h09a69; 13'b0111101000000: data_out = 18'h09a22; 13'b0111101000001: data_out = 18'h09a45; 13'b0111101000010: data_out = 18'h099ff; 13'b0111101000011: data_out = 18'h099df; 13'b0111101000100: data_out = 18'h09a05; 13'b0111101000101: data_out = 18'h099c1; 13'b0111101000110: data_out = 18'h0995e; 13'b0111101000111: data_out = 18'h0996f; 13'b0111101001000: data_out = 18'h09922; 13'b0111101001001: data_out = 18'h0994d; 13'b0111101001010: data_out = 18'h098e2; 13'b0111101001011: data_out = 18'h098b8; 13'b0111101001100: data_out = 18'h098b0; 13'b0111101001101: data_out = 18'h09867; 13'b0111101001110: data_out = 18'h09806; 13'b0111101001111: data_out = 18'h097b3; 13'b0111101010000: data_out = 18'h0975b; 13'b0111101010001: data_out = 18'h0964e; 13'b0111101010010: data_out = 18'h0966b; 13'b0111101010011: data_out = 18'h09604; 13'b0111101010100: data_out = 18'h09578; 13'b0111101010101: data_out = 18'h094ee; 13'b0111101010110: data_out = 18'h09432; 13'b0111101010111: data_out = 18'h093e9; 13'b0111101011000: data_out = 18'h0936c; 13'b0111101011001: data_out = 18'h092ac; 13'b0111101011010: data_out = 18'h091d4; 13'b0111101011011: data_out = 18'h0916f; 13'b0111101011100: data_out = 18'h09092; 13'b0111101011101: data_out = 18'h09057; 13'b0111101011110: data_out = 18'h08f1e; 13'b0111101011111: data_out = 18'h08ec9; 13'b0111101100000: data_out = 18'h08d88; 13'b0111101100001: data_out = 18'h08ca1; 13'b0111101100010: data_out = 18'h08be5; 13'b0111101100011: data_out = 18'h08b13; 13'b0111101100100: data_out = 18'h08a18; 13'b0111101100101: data_out = 18'h0897a; 13'b0111101100110: data_out = 18'h087f1; 13'b0111101100111: data_out = 18'h08769; 13'b0111101101000: data_out = 18'h085d0; 13'b0111101101001: data_out = 18'h08532; 13'b0111101101010: data_out = 18'h083c3; 13'b0111101101011: data_out = 18'h082e7; 13'b0111101101100: data_out = 18'h081c9; 13'b0111101101101: data_out = 18'h08066; 13'b0111101101110: data_out = 18'h07ef6; 13'b0111101101111: data_out = 18'h07dc8; 13'b0111101110000: data_out = 18'h07d03; 13'b0111101110001: data_out = 18'h07aed; 13'b0111101110010: data_out = 18'h079d3; 13'b0111101110011: data_out = 18'h07875; 13'b0111101110100: data_out = 18'h0774d; 13'b0111101110101: data_out = 18'h07591; 13'b0111101110110: data_out = 18'h07435; 13'b0111101110111: data_out = 18'h072ae; 13'b0111101111000: data_out = 18'h070de; 13'b0111101111001: data_out = 18'h06f54; 13'b0111101111010: data_out = 18'h06e07; 13'b0111101111011: data_out = 18'h06c35; 13'b0111101111100: data_out = 18'h06a2c; 13'b0111101111101: data_out = 18'h0687b; 13'b0111101111110: data_out = 18'h0670f; 13'b0111101111111: data_out = 18'h0651f; 13'b0111110000000: data_out = 18'h062fe; 13'b0111110000001: data_out = 18'h06167; 13'b0111110000010: data_out = 18'h05faa; 13'b0111110000011: data_out = 18'h05dd7; 13'b0111110000100: data_out = 18'h05c24; 13'b0111110000101: data_out = 18'h059a9; 13'b0111110000110: data_out = 18'h057a3; 13'b0111110000111: data_out = 18'h055ff; 13'b0111110001000: data_out = 18'h05372; 13'b0111110001001: data_out = 18'h0518f; 13'b0111110001010: data_out = 18'h04f5d; 13'b0111110001011: data_out = 18'h04d94; 13'b0111110001100: data_out = 18'h04b36; 13'b0111110001101: data_out = 18'h048d2; 13'b0111110001110: data_out = 18'h0470e; 13'b0111110001111: data_out = 18'h044dc; 13'b0111110010000: data_out = 18'h041f8; 13'b0111110010001: data_out = 18'h04006; 13'b0111110010010: data_out = 18'h03da6; 13'b0111110010011: data_out = 18'h03b87; 13'b0111110010100: data_out = 18'h03938; 13'b0111110010101: data_out = 18'h036a0; 13'b0111110010110: data_out = 18'h03406; 13'b0111110010111: data_out = 18'h03211; 13'b0111110011000: data_out = 18'h02ffa; 13'b0111110011001: data_out = 18'h02d73; 13'b0111110011010: data_out = 18'h02ad3; 13'b0111110011011: data_out = 18'h02854; 13'b0111110011100: data_out = 18'h025d0; 13'b0111110011101: data_out = 18'h0237e; 13'b0111110011110: data_out = 18'h02117; 13'b0111110011111: data_out = 18'h01e7d; 13'b0111110100000: data_out = 18'h01c31; 13'b0111110100001: data_out = 18'h01967; 13'b0111110100010: data_out = 18'h016e7; 13'b0111110100011: data_out = 18'h0143b; 13'b0111110100100: data_out = 18'h011ea; 13'b0111110100101: data_out = 18'h00f76; 13'b0111110100110: data_out = 18'h00ce5; 13'b0111110100111: data_out = 18'h00b04; 13'b0111110101000: data_out = 18'h0081b; 13'b0111110101001: data_out = 18'h005a8; 13'b0111110101010: data_out = 18'h0032f; 13'b0111110101011: data_out = 18'h0009c; 13'b0111110101100: data_out = 18'h3fe4a; 13'b0111110101101: data_out = 18'h3fb8b; 13'b0111110101110: data_out = 18'h3f98d; 13'b0111110101111: data_out = 18'h3f68e; 13'b0111110110000: data_out = 18'h3f41f; 13'b0111110110001: data_out = 18'h3f1da; 13'b0111110110010: data_out = 18'h3efb4; 13'b0111110110011: data_out = 18'h3ed37; 13'b0111110110100: data_out = 18'h3eac8; 13'b0111110110101: data_out = 18'h3e88f; 13'b0111110110110: data_out = 18'h3e65c; 13'b0111110110111: data_out = 18'h3e427; 13'b0111110111000: data_out = 18'h3e1fa; 13'b0111110111001: data_out = 18'h3dfa7; 13'b0111110111010: data_out = 18'h3dd28; 13'b0111110111011: data_out = 18'h3daeb; 13'b0111110111100: data_out = 18'h3d943; 13'b0111110111101: data_out = 18'h3d718; 13'b0111110111110: data_out = 18'h3d490; 13'b0111110111111: data_out = 18'h3d203; 13'b0111111000000: data_out = 18'h3d085; 13'b0111111000001: data_out = 18'h3cede; 13'b0111111000010: data_out = 18'h3cc68; 13'b0111111000011: data_out = 18'h3ca42; 13'b0111111000100: data_out = 18'h3c876; 13'b0111111000101: data_out = 18'h3c68f; 13'b0111111000110: data_out = 18'h3c4b0; 13'b0111111000111: data_out = 18'h3c338; 13'b0111111001000: data_out = 18'h3c0cc; 13'b0111111001001: data_out = 18'h3bf68; 13'b0111111001010: data_out = 18'h3bd4c; 13'b0111111001011: data_out = 18'h3bb72; 13'b0111111001100: data_out = 18'h3ba2d; 13'b0111111001101: data_out = 18'h3b862; 13'b0111111001110: data_out = 18'h3b6a8; 13'b0111111001111: data_out = 18'h3b478; 13'b0111111010000: data_out = 18'h3b33f; 13'b0111111010001: data_out = 18'h3b191; 13'b0111111010010: data_out = 18'h3b046; 13'b0111111010011: data_out = 18'h3ae5f; 13'b0111111010100: data_out = 18'h3acd4; 13'b0111111010101: data_out = 18'h3abb5; 13'b0111111010110: data_out = 18'h3a99f; 13'b0111111010111: data_out = 18'h3a863; 13'b0111111011000: data_out = 18'h3a739; 13'b0111111011001: data_out = 18'h3a5c8; 13'b0111111011010: data_out = 18'h3a48e; 13'b0111111011011: data_out = 18'h3a32a; 13'b0111111011100: data_out = 18'h3a1e1; 13'b0111111011101: data_out = 18'h3a0b7; 13'b0111111011110: data_out = 18'h39f7c; 13'b0111111011111: data_out = 18'h39e4b; 13'b0111111100000: data_out = 18'h39d10; 13'b0111111100001: data_out = 18'h39bf2; 13'b0111111100010: data_out = 18'h39ace; 13'b0111111100011: data_out = 18'h39998; 13'b0111111100100: data_out = 18'h39882; 13'b0111111100101: data_out = 18'h39741; 13'b0111111100110: data_out = 18'h395da; 13'b0111111100111: data_out = 18'h394c8; 13'b0111111101000: data_out = 18'h39410; 13'b0111111101001: data_out = 18'h39303; 13'b0111111101010: data_out = 18'h391ae; 13'b0111111101011: data_out = 18'h390e5; 13'b0111111101100: data_out = 18'h38fa0; 13'b0111111101101: data_out = 18'h38ef7; 13'b0111111101110: data_out = 18'h38e20; 13'b0111111101111: data_out = 18'h38d36; 13'b0111111110000: data_out = 18'h38c09; 13'b0111111110001: data_out = 18'h38b5e; 13'b0111111110010: data_out = 18'h38a96; 13'b0111111110011: data_out = 18'h38946; 13'b0111111110100: data_out = 18'h38872; 13'b0111111110101: data_out = 18'h387e2; 13'b0111111110110: data_out = 18'h386c5; 13'b0111111110111: data_out = 18'h38648; 13'b0111111111000: data_out = 18'h38508; 13'b0111111111001: data_out = 18'h38432; 13'b0111111111010: data_out = 18'h383f2; 13'b0111111111011: data_out = 18'h382d0; 13'b0111111111100: data_out = 18'h382a2; 13'b0111111111101: data_out = 18'h381b3; 13'b0111111111110: data_out = 18'h380d7; 13'b0111111111111: data_out = 18'h38011; 13'b1000000000000: data_out = 18'h37f74; 13'b1000000000001: data_out = 18'h37f22; 13'b1000000000010: data_out = 18'h37e53; 13'b1000000000011: data_out = 18'h37deb; 13'b1000000000100: data_out = 18'h37d54; 13'b1000000000101: data_out = 18'h37c9c; 13'b1000000000110: data_out = 18'h37b95; 13'b1000000000111: data_out = 18'h37b7c; 13'b1000000001000: data_out = 18'h37afe; 13'b1000000001001: data_out = 18'h37a62; 13'b1000000001010: data_out = 18'h379a0; 13'b1000000001011: data_out = 18'h378be; 13'b1000000001100: data_out = 18'h37873; 13'b1000000001101: data_out = 18'h37808; 13'b1000000001110: data_out = 18'h37746; 13'b1000000001111: data_out = 18'h37749; 13'b1000000010000: data_out = 18'h37688; 13'b1000000010001: data_out = 18'h3761c; 13'b1000000010010: data_out = 18'h37607; 13'b1000000010011: data_out = 18'h375da; 13'b1000000010100: data_out = 18'h37526; 13'b1000000010101: data_out = 18'h374b4; 13'b1000000010110: data_out = 18'h374da; 13'b1000000010111: data_out = 18'h37450; 13'b1000000011000: data_out = 18'h373bb; 13'b1000000011001: data_out = 18'h373b6; 13'b1000000011010: data_out = 18'h372c0; 13'b1000000011011: data_out = 18'h3731b; 13'b1000000011100: data_out = 18'h3723e; 13'b1000000011101: data_out = 18'h37223; 13'b1000000011110: data_out = 18'h37235; 13'b1000000011111: data_out = 18'h37229; 13'b1000000100000: data_out = 18'h3715f; 13'b1000000100001: data_out = 18'h37128; 13'b1000000100010: data_out = 18'h37137; 13'b1000000100011: data_out = 18'h3715c; 13'b1000000100100: data_out = 18'h3711e; 13'b1000000100101: data_out = 18'h370d2; 13'b1000000100110: data_out = 18'h370cb; 13'b1000000100111: data_out = 18'h370b5; 13'b1000000101000: data_out = 18'h370d4; 13'b1000000101001: data_out = 18'h370aa; 13'b1000000101010: data_out = 18'h370a4; 13'b1000000101011: data_out = 18'h370eb; 13'b1000000101100: data_out = 18'h370b9; 13'b1000000101101: data_out = 18'h370d9; 13'b1000000101110: data_out = 18'h37111; 13'b1000000101111: data_out = 18'h37111; 13'b1000000110000: data_out = 18'h370ec; 13'b1000000110001: data_out = 18'h370c1; 13'b1000000110010: data_out = 18'h3712f; 13'b1000000110011: data_out = 18'h3715e; 13'b1000000110100: data_out = 18'h37166; 13'b1000000110101: data_out = 18'h3717f; 13'b1000000110110: data_out = 18'h371b6; 13'b1000000110111: data_out = 18'h371ca; 13'b1000000111000: data_out = 18'h3724f; 13'b1000000111001: data_out = 18'h3727d; 13'b1000000111010: data_out = 18'h37296; 13'b1000000111011: data_out = 18'h37316; 13'b1000000111100: data_out = 18'h37383; 13'b1000000111101: data_out = 18'h373b4; 13'b1000000111110: data_out = 18'h373e2; 13'b1000000111111: data_out = 18'h3743b; 13'b1000001000000: data_out = 18'h374b1; 13'b1000001000001: data_out = 18'h374ac; 13'b1000001000010: data_out = 18'h3753c; 13'b1000001000011: data_out = 18'h375e8; 13'b1000001000100: data_out = 18'h375f7; 13'b1000001000101: data_out = 18'h37655; 13'b1000001000110: data_out = 18'h376b1; 13'b1000001000111: data_out = 18'h37727; 13'b1000001001000: data_out = 18'h377de; 13'b1000001001001: data_out = 18'h37867; 13'b1000001001010: data_out = 18'h37917; 13'b1000001001011: data_out = 18'h3796c; 13'b1000001001100: data_out = 18'h37a05; 13'b1000001001101: data_out = 18'h37a84; 13'b1000001001110: data_out = 18'h37b15; 13'b1000001001111: data_out = 18'h37c09; 13'b1000001010000: data_out = 18'h37ca2; 13'b1000001010001: data_out = 18'h37d90; 13'b1000001010010: data_out = 18'h37e1d; 13'b1000001010011: data_out = 18'h37ea5; 13'b1000001010100: data_out = 18'h37f6a; 13'b1000001010101: data_out = 18'h3806e; 13'b1000001010110: data_out = 18'h38142; 13'b1000001010111: data_out = 18'h381ff; 13'b1000001011000: data_out = 18'h382ab; 13'b1000001011001: data_out = 18'h38350; 13'b1000001011010: data_out = 18'h38489; 13'b1000001011011: data_out = 18'h38583; 13'b1000001011100: data_out = 18'h38646; 13'b1000001011101: data_out = 18'h3877a; 13'b1000001011110: data_out = 18'h38844; 13'b1000001011111: data_out = 18'h3899c; 13'b1000001100000: data_out = 18'h38a76; 13'b1000001100001: data_out = 18'h38b78; 13'b1000001100010: data_out = 18'h38ccd; 13'b1000001100011: data_out = 18'h38df6; 13'b1000001100100: data_out = 18'h38f13; 13'b1000001100101: data_out = 18'h39055; 13'b1000001100110: data_out = 18'h391db; 13'b1000001100111: data_out = 18'h39280; 13'b1000001101000: data_out = 18'h3947c; 13'b1000001101001: data_out = 18'h3952d; 13'b1000001101010: data_out = 18'h3970f; 13'b1000001101011: data_out = 18'h39832; 13'b1000001101100: data_out = 18'h39a00; 13'b1000001101101: data_out = 18'h39b27; 13'b1000001101110: data_out = 18'h39c99; 13'b1000001101111: data_out = 18'h39e3d; 13'b1000001110000: data_out = 18'h39fc2; 13'b1000001110001: data_out = 18'h3a164; 13'b1000001110010: data_out = 18'h3a2e6; 13'b1000001110011: data_out = 18'h3a490; 13'b1000001110100: data_out = 18'h3a620; 13'b1000001110101: data_out = 18'h3a7f2; 13'b1000001110110: data_out = 18'h3a94d; 13'b1000001110111: data_out = 18'h3aaf9; 13'b1000001111000: data_out = 18'h3ad08; 13'b1000001111001: data_out = 18'h3ae8a; 13'b1000001111010: data_out = 18'h3b055; 13'b1000001111011: data_out = 18'h3b26b; 13'b1000001111100: data_out = 18'h3b40c; 13'b1000001111101: data_out = 18'h3b607; 13'b1000001111110: data_out = 18'h3b807; 13'b1000001111111: data_out = 18'h3b9cb; 13'b1000010000000: data_out = 18'h3bc13; 13'b1000010000001: data_out = 18'h3bdad; 13'b1000010000010: data_out = 18'h3bf81; 13'b1000010000011: data_out = 18'h3c126; 13'b1000010000100: data_out = 18'h3c391; 13'b1000010000101: data_out = 18'h3c593; 13'b1000010000110: data_out = 18'h3c78a; 13'b1000010000111: data_out = 18'h3c9ae; 13'b1000010001000: data_out = 18'h3cbd7; 13'b1000010001001: data_out = 18'h3cdda; 13'b1000010001010: data_out = 18'h3d009; 13'b1000010001011: data_out = 18'h3d1c1; 13'b1000010001100: data_out = 18'h3d43f; 13'b1000010001101: data_out = 18'h3d64a; 13'b1000010001110: data_out = 18'h3d86d; 13'b1000010001111: data_out = 18'h3dac3; 13'b1000010010000: data_out = 18'h3dcca; 13'b1000010010001: data_out = 18'h3debc; 13'b1000010010010: data_out = 18'h3e107; 13'b1000010010011: data_out = 18'h3e318; 13'b1000010010100: data_out = 18'h3e5a7; 13'b1000010010101: data_out = 18'h3e7a5; 13'b1000010010110: data_out = 18'h3e9ae; 13'b1000010010111: data_out = 18'h3ec3f; 13'b1000010011000: data_out = 18'h3ee67; 13'b1000010011001: data_out = 18'h3f075; 13'b1000010011010: data_out = 18'h3f285; 13'b1000010011011: data_out = 18'h3f49a; 13'b1000010011100: data_out = 18'h3f6e0; 13'b1000010011101: data_out = 18'h3f947; 13'b1000010011110: data_out = 18'h3fb2f; 13'b1000010011111: data_out = 18'h3fcfd; 13'b1000010100000: data_out = 18'h3ff6a; 13'b1000010100001: data_out = 18'h00188; 13'b1000010100010: data_out = 18'h003bf; 13'b1000010100011: data_out = 18'h005ec; 13'b1000010100100: data_out = 18'h0080c; 13'b1000010100101: data_out = 18'h00a78; 13'b1000010100110: data_out = 18'h00be8; 13'b1000010100111: data_out = 18'h00e90; 13'b1000010101000: data_out = 18'h010e7; 13'b1000010101001: data_out = 18'h01302; 13'b1000010101010: data_out = 18'h014e3; 13'b1000010101011: data_out = 18'h016e3; 13'b1000010101100: data_out = 18'h018e0; 13'b1000010101101: data_out = 18'h01b59; 13'b1000010101110: data_out = 18'h01d32; 13'b1000010101111: data_out = 18'h01f00; 13'b1000010110000: data_out = 18'h02141; 13'b1000010110001: data_out = 18'h02318; 13'b1000010110010: data_out = 18'h024bd; 13'b1000010110011: data_out = 18'h026d5; 13'b1000010110100: data_out = 18'h028e3; 13'b1000010110101: data_out = 18'h02acf; 13'b1000010110110: data_out = 18'h02c5f; 13'b1000010110111: data_out = 18'h02ea9; 13'b1000010111000: data_out = 18'h030c2; 13'b1000010111001: data_out = 18'h0322e; 13'b1000010111010: data_out = 18'h03421; 13'b1000010111011: data_out = 18'h035c0; 13'b1000010111100: data_out = 18'h037be; 13'b1000010111101: data_out = 18'h03915; 13'b1000010111110: data_out = 18'h03b78; 13'b1000010111111: data_out = 18'h03ce5; 13'b1000011000000: data_out = 18'h03e76; 13'b1000011000001: data_out = 18'h04046; 13'b1000011000010: data_out = 18'h041ff; 13'b1000011000011: data_out = 18'h043ce; 13'b1000011000100: data_out = 18'h0457f; 13'b1000011000101: data_out = 18'h046fa; 13'b1000011000110: data_out = 18'h0483e; 13'b1000011000111: data_out = 18'h049f1; 13'b1000011001000: data_out = 18'h04b96; 13'b1000011001001: data_out = 18'h04ced; 13'b1000011001010: data_out = 18'h04ea8; 13'b1000011001011: data_out = 18'h05015; 13'b1000011001100: data_out = 18'h051b2; 13'b1000011001101: data_out = 18'h0526c; 13'b1000011001110: data_out = 18'h0544d; 13'b1000011001111: data_out = 18'h05578; 13'b1000011010000: data_out = 18'h056e8; 13'b1000011010001: data_out = 18'h0580b; 13'b1000011010010: data_out = 18'h0598d; 13'b1000011010011: data_out = 18'h05b05; 13'b1000011010100: data_out = 18'h05c3f; 13'b1000011010101: data_out = 18'h05d3f; 13'b1000011010110: data_out = 18'h05e7a; 13'b1000011010111: data_out = 18'h05fd0; 13'b1000011011000: data_out = 18'h06150; 13'b1000011011001: data_out = 18'h06228; 13'b1000011011010: data_out = 18'h06366; 13'b1000011011011: data_out = 18'h06484; 13'b1000011011100: data_out = 18'h065ae; 13'b1000011011101: data_out = 18'h066e2; 13'b1000011011110: data_out = 18'h067ee; 13'b1000011011111: data_out = 18'h068f8; 13'b1000011100000: data_out = 18'h06a3c; 13'b1000011100001: data_out = 18'h06b5e; 13'b1000011100010: data_out = 18'h06c36; 13'b1000011100011: data_out = 18'h06d18; 13'b1000011100100: data_out = 18'h06df1; 13'b1000011100101: data_out = 18'h06ee8; 13'b1000011100110: data_out = 18'h07028; 13'b1000011100111: data_out = 18'h070e2; 13'b1000011101000: data_out = 18'h071ba; 13'b1000011101001: data_out = 18'h07278; 13'b1000011101010: data_out = 18'h0737e; 13'b1000011101011: data_out = 18'h07466; 13'b1000011101100: data_out = 18'h075a8; 13'b1000011101101: data_out = 18'h07621; 13'b1000011101110: data_out = 18'h076ff; 13'b1000011101111: data_out = 18'h077bf; 13'b1000011110000: data_out = 18'h0787d; 13'b1000011110001: data_out = 18'h0798e; 13'b1000011110010: data_out = 18'h07a07; 13'b1000011110011: data_out = 18'h07aaa; 13'b1000011110100: data_out = 18'h07b72; 13'b1000011110101: data_out = 18'h07bd4; 13'b1000011110110: data_out = 18'h07cc0; 13'b1000011110111: data_out = 18'h07d1f; 13'b1000011111000: data_out = 18'h07e1d; 13'b1000011111001: data_out = 18'h07e92; 13'b1000011111010: data_out = 18'h07f18; 13'b1000011111011: data_out = 18'h07fdf; 13'b1000011111100: data_out = 18'h08013; 13'b1000011111101: data_out = 18'h080f0; 13'b1000011111110: data_out = 18'h08174; 13'b1000011111111: data_out = 18'h081a1; 13'b1000100000000: data_out = 18'h081d9; 13'b1000100000001: data_out = 18'h08285; 13'b1000100000010: data_out = 18'h0839d; 13'b1000100000011: data_out = 18'h0835f; 13'b1000100000100: data_out = 18'h0842d; 13'b1000100000101: data_out = 18'h084b0; 13'b1000100000110: data_out = 18'h08518; 13'b1000100000111: data_out = 18'h0853c; 13'b1000100001000: data_out = 18'h0859e; 13'b1000100001001: data_out = 18'h08604; 13'b1000100001010: data_out = 18'h08699; 13'b1000100001011: data_out = 18'h086c5; 13'b1000100001100: data_out = 18'h086ec; 13'b1000100001101: data_out = 18'h0872a; 13'b1000100001110: data_out = 18'h08789; 13'b1000100001111: data_out = 18'h0879b; 13'b1000100010000: data_out = 18'h087e0; 13'b1000100010001: data_out = 18'h08854; 13'b1000100010010: data_out = 18'h088a5; 13'b1000100010011: data_out = 18'h08853; 13'b1000100010100: data_out = 18'h0889a; 13'b1000100010101: data_out = 18'h088a4; 13'b1000100010110: data_out = 18'h088ef; 13'b1000100010111: data_out = 18'h088f9; 13'b1000100011000: data_out = 18'h08952; 13'b1000100011001: data_out = 18'h0891c; 13'b1000100011010: data_out = 18'h08959; 13'b1000100011011: data_out = 18'h08935; 13'b1000100011100: data_out = 18'h08995; 13'b1000100011101: data_out = 18'h0898e; 13'b1000100011110: data_out = 18'h08935; 13'b1000100011111: data_out = 18'h089d1; 13'b1000100100000: data_out = 18'h0896c; 13'b1000100100001: data_out = 18'h08933; 13'b1000100100010: data_out = 18'h0892f; 13'b1000100100011: data_out = 18'h0895a; 13'b1000100100100: data_out = 18'h08915; 13'b1000100100101: data_out = 18'h088a9; 13'b1000100100110: data_out = 18'h088c5; 13'b1000100100111: data_out = 18'h088af; 13'b1000100101000: data_out = 18'h088c8; 13'b1000100101001: data_out = 18'h08845; 13'b1000100101010: data_out = 18'h0886a; 13'b1000100101011: data_out = 18'h08783; 13'b1000100101100: data_out = 18'h087c5; 13'b1000100101101: data_out = 18'h087d7; 13'b1000100101110: data_out = 18'h0874e; 13'b1000100101111: data_out = 18'h086ec; 13'b1000100110000: data_out = 18'h086c4; 13'b1000100110001: data_out = 18'h08654; 13'b1000100110010: data_out = 18'h085f7; 13'b1000100110011: data_out = 18'h085db; 13'b1000100110100: data_out = 18'h08563; 13'b1000100110101: data_out = 18'h084f1; 13'b1000100110110: data_out = 18'h08458; 13'b1000100110111: data_out = 18'h083c6; 13'b1000100111000: data_out = 18'h0836f; 13'b1000100111001: data_out = 18'h08338; 13'b1000100111010: data_out = 18'h0824c; 13'b1000100111011: data_out = 18'h081d3; 13'b1000100111100: data_out = 18'h08134; 13'b1000100111101: data_out = 18'h080ca; 13'b1000100111110: data_out = 18'h0802d; 13'b1000100111111: data_out = 18'h07fa1; 13'b1000101000000: data_out = 18'h07ed1; 13'b1000101000001: data_out = 18'h07ed4; 13'b1000101000010: data_out = 18'h07d94; 13'b1000101000011: data_out = 18'h07d42; 13'b1000101000100: data_out = 18'h07c37; 13'b1000101000101: data_out = 18'h07b9c; 13'b1000101000110: data_out = 18'h07acc; 13'b1000101000111: data_out = 18'h07a14; 13'b1000101001000: data_out = 18'h0792e; 13'b1000101001001: data_out = 18'h07856; 13'b1000101001010: data_out = 18'h077a4; 13'b1000101001011: data_out = 18'h0769b; 13'b1000101001100: data_out = 18'h075bf; 13'b1000101001101: data_out = 18'h074ef; 13'b1000101001110: data_out = 18'h073f9; 13'b1000101001111: data_out = 18'h072ef; 13'b1000101010000: data_out = 18'h0720a; 13'b1000101010001: data_out = 18'h0709c; 13'b1000101010010: data_out = 18'h06fb9; 13'b1000101010011: data_out = 18'h06ebb; 13'b1000101010100: data_out = 18'h06e27; 13'b1000101010101: data_out = 18'h06c8b; 13'b1000101010110: data_out = 18'h06b82; 13'b1000101010111: data_out = 18'h069dc; 13'b1000101011000: data_out = 18'h0692f; 13'b1000101011001: data_out = 18'h067e0; 13'b1000101011010: data_out = 18'h0668e; 13'b1000101011011: data_out = 18'h0657a; 13'b1000101011100: data_out = 18'h06445; 13'b1000101011101: data_out = 18'h062e9; 13'b1000101011110: data_out = 18'h06188; 13'b1000101011111: data_out = 18'h05ffc; 13'b1000101100000: data_out = 18'h05ee5; 13'b1000101100001: data_out = 18'h05d6f; 13'b1000101100010: data_out = 18'h05c0a; 13'b1000101100011: data_out = 18'h05b15; 13'b1000101100100: data_out = 18'h05936; 13'b1000101100101: data_out = 18'h057c1; 13'b1000101100110: data_out = 18'h05677; 13'b1000101100111: data_out = 18'h05545; 13'b1000101101000: data_out = 18'h053a5; 13'b1000101101001: data_out = 18'h051db; 13'b1000101101010: data_out = 18'h05089; 13'b1000101101011: data_out = 18'h04f4c; 13'b1000101101100: data_out = 18'h04d49; 13'b1000101101101: data_out = 18'h04bc5; 13'b1000101101110: data_out = 18'h04a43; 13'b1000101101111: data_out = 18'h04871; 13'b1000101110000: data_out = 18'h04677; 13'b1000101110001: data_out = 18'h0451a; 13'b1000101110010: data_out = 18'h04330; 13'b1000101110011: data_out = 18'h04192; 13'b1000101110100: data_out = 18'h03ff5; 13'b1000101110101: data_out = 18'h03e66; 13'b1000101110110: data_out = 18'h03ca6; 13'b1000101110111: data_out = 18'h03b01; 13'b1000101111000: data_out = 18'h03914; 13'b1000101111001: data_out = 18'h03727; 13'b1000101111010: data_out = 18'h03607; 13'b1000101111011: data_out = 18'h033f8; 13'b1000101111100: data_out = 18'h03205; 13'b1000101111101: data_out = 18'h02fef; 13'b1000101111110: data_out = 18'h02e37; 13'b1000101111111: data_out = 18'h02c6d; 13'b1000110000000: data_out = 18'h02abd; 13'b1000110000001: data_out = 18'h028b1; 13'b1000110000010: data_out = 18'h026de; 13'b1000110000011: data_out = 18'h024cf; 13'b1000110000100: data_out = 18'h02300; 13'b1000110000101: data_out = 18'h020f7; 13'b1000110000110: data_out = 18'h01ef9; 13'b1000110000111: data_out = 18'h01d32; 13'b1000110001000: data_out = 18'h01b38; 13'b1000110001001: data_out = 18'h01939; 13'b1000110001010: data_out = 18'h0174d; 13'b1000110001011: data_out = 18'h0157c; 13'b1000110001100: data_out = 18'h0139a; 13'b1000110001101: data_out = 18'h0116d; 13'b1000110001110: data_out = 18'h00fe1; 13'b1000110001111: data_out = 18'h00df2; 13'b1000110010000: data_out = 18'h00c09; 13'b1000110010001: data_out = 18'h009de; 13'b1000110010010: data_out = 18'h007d0; 13'b1000110010011: data_out = 18'h00643; 13'b1000110010100: data_out = 18'h00409; 13'b1000110010101: data_out = 18'h001d4; 13'b1000110010110: data_out = 18'h00033; 13'b1000110010111: data_out = 18'h3fe8c; 13'b1000110011000: data_out = 18'h3fc5a; 13'b1000110011001: data_out = 18'h3fa31; 13'b1000110011010: data_out = 18'h3f81d; 13'b1000110011011: data_out = 18'h3f685; 13'b1000110011100: data_out = 18'h3f4ae; 13'b1000110011101: data_out = 18'h3f2c0; 13'b1000110011110: data_out = 18'h3f10e; 13'b1000110011111: data_out = 18'h3eef6; 13'b1000110100000: data_out = 18'h3ed2f; 13'b1000110100001: data_out = 18'h3eb03; 13'b1000110100010: data_out = 18'h3e9b2; 13'b1000110100011: data_out = 18'h3e79b; 13'b1000110100100: data_out = 18'h3e5b5; 13'b1000110100101: data_out = 18'h3e3ea; 13'b1000110100110: data_out = 18'h3e22a; 13'b1000110100111: data_out = 18'h3e057; 13'b1000110101000: data_out = 18'h3deaa; 13'b1000110101001: data_out = 18'h3dc8e; 13'b1000110101010: data_out = 18'h3db32; 13'b1000110101011: data_out = 18'h3d96b; 13'b1000110101100: data_out = 18'h3d78e; 13'b1000110101101: data_out = 18'h3d5f1; 13'b1000110101110: data_out = 18'h3d44f; 13'b1000110101111: data_out = 18'h3d2ae; 13'b1000110110000: data_out = 18'h3d10b; 13'b1000110110001: data_out = 18'h3cf04; 13'b1000110110010: data_out = 18'h3cd96; 13'b1000110110011: data_out = 18'h3cbb1; 13'b1000110110100: data_out = 18'h3ca42; 13'b1000110110101: data_out = 18'h3c899; 13'b1000110110110: data_out = 18'h3c722; 13'b1000110110111: data_out = 18'h3c5b1; 13'b1000110111000: data_out = 18'h3c3d7; 13'b1000110111001: data_out = 18'h3c291; 13'b1000110111010: data_out = 18'h3c12d; 13'b1000110111011: data_out = 18'h3bfbd; 13'b1000110111100: data_out = 18'h3be14; 13'b1000110111101: data_out = 18'h3bc91; 13'b1000110111110: data_out = 18'h3bb2c; 13'b1000110111111: data_out = 18'h3b9ea; 13'b1000111000000: data_out = 18'h3b89b; 13'b1000111000001: data_out = 18'h3b6b6; 13'b1000111000010: data_out = 18'h3b5cf; 13'b1000111000011: data_out = 18'h3b46a; 13'b1000111000100: data_out = 18'h3b330; 13'b1000111000101: data_out = 18'h3b1f1; 13'b1000111000110: data_out = 18'h3b042; 13'b1000111000111: data_out = 18'h3af6f; 13'b1000111001000: data_out = 18'h3ae0d; 13'b1000111001001: data_out = 18'h3ac98; 13'b1000111001010: data_out = 18'h3ab7d; 13'b1000111001011: data_out = 18'h3aa7b; 13'b1000111001100: data_out = 18'h3a93e; 13'b1000111001101: data_out = 18'h3a869; 13'b1000111001110: data_out = 18'h3a730; 13'b1000111001111: data_out = 18'h3a5fe; 13'b1000111010000: data_out = 18'h3a537; 13'b1000111010001: data_out = 18'h3a42f; 13'b1000111010010: data_out = 18'h3a310; 13'b1000111010011: data_out = 18'h3a1c5; 13'b1000111010100: data_out = 18'h3a10a; 13'b1000111010101: data_out = 18'h3a027; 13'b1000111010110: data_out = 18'h39ed7; 13'b1000111010111: data_out = 18'h39ddd; 13'b1000111011000: data_out = 18'h39d10; 13'b1000111011001: data_out = 18'h39c06; 13'b1000111011010: data_out = 18'h39b5e; 13'b1000111011011: data_out = 18'h39a15; 13'b1000111011100: data_out = 18'h3991f; 13'b1000111011101: data_out = 18'h39895; 13'b1000111011110: data_out = 18'h397ec; 13'b1000111011111: data_out = 18'h39725; 13'b1000111100000: data_out = 18'h3966f; 13'b1000111100001: data_out = 18'h395a5; 13'b1000111100010: data_out = 18'h3953c; 13'b1000111100011: data_out = 18'h393f3; 13'b1000111100100: data_out = 18'h393d9; 13'b1000111100101: data_out = 18'h3932e; 13'b1000111100110: data_out = 18'h39290; 13'b1000111100111: data_out = 18'h391b1; 13'b1000111101000: data_out = 18'h39119; 13'b1000111101001: data_out = 18'h39087; 13'b1000111101010: data_out = 18'h38fd6; 13'b1000111101011: data_out = 18'h38f3a; 13'b1000111101100: data_out = 18'h38efa; 13'b1000111101101: data_out = 18'h38e8c; 13'b1000111101110: data_out = 18'h38de7; 13'b1000111101111: data_out = 18'h38d63; 13'b1000111110000: data_out = 18'h38d04; 13'b1000111110001: data_out = 18'h38d11; 13'b1000111110010: data_out = 18'h38c78; 13'b1000111110011: data_out = 18'h38be8; 13'b1000111110100: data_out = 18'h38b7c; 13'b1000111110101: data_out = 18'h38b61; 13'b1000111110110: data_out = 18'h38aa8; 13'b1000111110111: data_out = 18'h38a83; 13'b1000111111000: data_out = 18'h38a15; 13'b1000111111001: data_out = 18'h38a69; 13'b1000111111010: data_out = 18'h389cf; 13'b1000111111011: data_out = 18'h389ae; 13'b1000111111100: data_out = 18'h38980; 13'b1000111111101: data_out = 18'h38915; 13'b1000111111110: data_out = 18'h388cb; 13'b1000111111111: data_out = 18'h3893d; 13'b1001000000000: data_out = 18'h388de; 13'b1001000000001: data_out = 18'h38908; 13'b1001000000010: data_out = 18'h388d1; 13'b1001000000011: data_out = 18'h38902; 13'b1001000000100: data_out = 18'h3890c; 13'b1001000000101: data_out = 18'h38909; 13'b1001000000110: data_out = 18'h38953; 13'b1001000000111: data_out = 18'h3891b; 13'b1001000001000: data_out = 18'h3894c; 13'b1001000001001: data_out = 18'h38944; 13'b1001000001010: data_out = 18'h38989; 13'b1001000001011: data_out = 18'h389b8; 13'b1001000001100: data_out = 18'h389f2; 13'b1001000001101: data_out = 18'h389a4; 13'b1001000001110: data_out = 18'h38a08; 13'b1001000001111: data_out = 18'h38a17; 13'b1001000010000: data_out = 18'h38a25; 13'b1001000010001: data_out = 18'h38a90; 13'b1001000010010: data_out = 18'h38a67; 13'b1001000010011: data_out = 18'h38a95; 13'b1001000010100: data_out = 18'h38b12; 13'b1001000010101: data_out = 18'h38b46; 13'b1001000010110: data_out = 18'h38bbe; 13'b1001000010111: data_out = 18'h38c30; 13'b1001000011000: data_out = 18'h38c50; 13'b1001000011001: data_out = 18'h38cf6; 13'b1001000011010: data_out = 18'h38ce3; 13'b1001000011011: data_out = 18'h38db1; 13'b1001000011100: data_out = 18'h38e56; 13'b1001000011101: data_out = 18'h38e9d; 13'b1001000011110: data_out = 18'h38f31; 13'b1001000011111: data_out = 18'h38f6b; 13'b1001000100000: data_out = 18'h38fce; 13'b1001000100001: data_out = 18'h390b4; 13'b1001000100010: data_out = 18'h390f7; 13'b1001000100011: data_out = 18'h391b0; 13'b1001000100100: data_out = 18'h39225; 13'b1001000100101: data_out = 18'h392af; 13'b1001000100110: data_out = 18'h392df; 13'b1001000100111: data_out = 18'h3938b; 13'b1001000101000: data_out = 18'h39439; 13'b1001000101001: data_out = 18'h394df; 13'b1001000101010: data_out = 18'h39581; 13'b1001000101011: data_out = 18'h39620; 13'b1001000101100: data_out = 18'h39697; 13'b1001000101101: data_out = 18'h396f7; 13'b1001000101110: data_out = 18'h397d5; 13'b1001000101111: data_out = 18'h39894; 13'b1001000110000: data_out = 18'h398df; 13'b1001000110001: data_out = 18'h39a17; 13'b1001000110010: data_out = 18'h39aaa; 13'b1001000110011: data_out = 18'h39b78; 13'b1001000110100: data_out = 18'h39c45; 13'b1001000110101: data_out = 18'h39d07; 13'b1001000110110: data_out = 18'h39e08; 13'b1001000110111: data_out = 18'h39ef3; 13'b1001000111000: data_out = 18'h39f9e; 13'b1001000111001: data_out = 18'h3a059; 13'b1001000111010: data_out = 18'h3a163; 13'b1001000111011: data_out = 18'h3a1ed; 13'b1001000111100: data_out = 18'h3a2df; 13'b1001000111101: data_out = 18'h3a37b; 13'b1001000111110: data_out = 18'h3a497; 13'b1001000111111: data_out = 18'h3a56b; 13'b1001001000000: data_out = 18'h3a62b; 13'b1001001000001: data_out = 18'h3a6eb; 13'b1001001000010: data_out = 18'h3a801; 13'b1001001000011: data_out = 18'h3a8ea; 13'b1001001000100: data_out = 18'h3aa4f; 13'b1001001000101: data_out = 18'h3aafe; 13'b1001001000110: data_out = 18'h3ac54; 13'b1001001000111: data_out = 18'h3ad2c; 13'b1001001001000: data_out = 18'h3ae20; 13'b1001001001001: data_out = 18'h3af1e; 13'b1001001001010: data_out = 18'h3b06a; 13'b1001001001011: data_out = 18'h3b158; 13'b1001001001100: data_out = 18'h3b222; 13'b1001001001101: data_out = 18'h3b323; 13'b1001001001110: data_out = 18'h3b41e; 13'b1001001001111: data_out = 18'h3b51d; 13'b1001001010000: data_out = 18'h3b612; 13'b1001001010001: data_out = 18'h3b78c; 13'b1001001010010: data_out = 18'h3b894; 13'b1001001010011: data_out = 18'h3b994; 13'b1001001010100: data_out = 18'h3ba9f; 13'b1001001010101: data_out = 18'h3bbaf; 13'b1001001010110: data_out = 18'h3bd00; 13'b1001001010111: data_out = 18'h3be47; 13'b1001001011000: data_out = 18'h3bf4e; 13'b1001001011001: data_out = 18'h3c118; 13'b1001001011010: data_out = 18'h3c205; 13'b1001001011011: data_out = 18'h3c352; 13'b1001001011100: data_out = 18'h3c439; 13'b1001001011101: data_out = 18'h3c584; 13'b1001001011110: data_out = 18'h3c69d; 13'b1001001011111: data_out = 18'h3c83f; 13'b1001001100000: data_out = 18'h3c971; 13'b1001001100001: data_out = 18'h3c9ff; 13'b1001001100010: data_out = 18'h3cb78; 13'b1001001100011: data_out = 18'h3ccc2; 13'b1001001100100: data_out = 18'h3cdfb; 13'b1001001100101: data_out = 18'h3cf31; 13'b1001001100110: data_out = 18'h3d05b; 13'b1001001100111: data_out = 18'h3d18d; 13'b1001001101000: data_out = 18'h3d2f1; 13'b1001001101001: data_out = 18'h3d45f; 13'b1001001101010: data_out = 18'h3d585; 13'b1001001101011: data_out = 18'h3d6de; 13'b1001001101100: data_out = 18'h3d813; 13'b1001001101101: data_out = 18'h3d963; 13'b1001001101110: data_out = 18'h3daae; 13'b1001001101111: data_out = 18'h3dc5c; 13'b1001001110000: data_out = 18'h3dd41; 13'b1001001110001: data_out = 18'h3dea3; 13'b1001001110010: data_out = 18'h3dfe2; 13'b1001001110011: data_out = 18'h3e167; 13'b1001001110100: data_out = 18'h3e2dc; 13'b1001001110101: data_out = 18'h3e3b6; 13'b1001001110110: data_out = 18'h3e570; 13'b1001001110111: data_out = 18'h3e684; 13'b1001001111000: data_out = 18'h3e7ed; 13'b1001001111001: data_out = 18'h3e929; 13'b1001001111010: data_out = 18'h3ea86; 13'b1001001111011: data_out = 18'h3ec01; 13'b1001001111100: data_out = 18'h3ed77; 13'b1001001111101: data_out = 18'h3eebc; 13'b1001001111110: data_out = 18'h3f000; 13'b1001001111111: data_out = 18'h3f18f; 13'b1001010000000: data_out = 18'h3f2a4; 13'b1001010000001: data_out = 18'h3f3e9; 13'b1001010000010: data_out = 18'h3f50b; 13'b1001010000011: data_out = 18'h3f65b; 13'b1001010000100: data_out = 18'h3f7c9; 13'b1001010000101: data_out = 18'h3f94d; 13'b1001010000110: data_out = 18'h3fa84; 13'b1001010000111: data_out = 18'h3fb8b; 13'b1001010001000: data_out = 18'h3fcf1; 13'b1001010001001: data_out = 18'h3fe8e; 13'b1001010001010: data_out = 18'h3ff6f; 13'b1001010001011: data_out = 18'h000d7; 13'b1001010001100: data_out = 18'h00247; 13'b1001010001101: data_out = 18'h0036c; 13'b1001010001110: data_out = 18'h0046d; 13'b1001010001111: data_out = 18'h005db; 13'b1001010010000: data_out = 18'h00790; 13'b1001010010001: data_out = 18'h00823; 13'b1001010010010: data_out = 18'h00959; 13'b1001010010011: data_out = 18'h00b1b; 13'b1001010010100: data_out = 18'h00c9f; 13'b1001010010101: data_out = 18'h00d57; 13'b1001010010110: data_out = 18'h00e9e; 13'b1001010010111: data_out = 18'h00fe4; 13'b1001010011000: data_out = 18'h01131; 13'b1001010011001: data_out = 18'h01280; 13'b1001010011010: data_out = 18'h0138b; 13'b1001010011011: data_out = 18'h014d0; 13'b1001010011100: data_out = 18'h015da; 13'b1001010011101: data_out = 18'h0173c; 13'b1001010011110: data_out = 18'h01871; 13'b1001010011111: data_out = 18'h01999; 13'b1001010100000: data_out = 18'h01abd; 13'b1001010100001: data_out = 18'h01bd6; 13'b1001010100010: data_out = 18'h01d0d; 13'b1001010100011: data_out = 18'h01e35; 13'b1001010100100: data_out = 18'h01f0d; 13'b1001010100101: data_out = 18'h0204a; 13'b1001010100110: data_out = 18'h0214d; 13'b1001010100111: data_out = 18'h022a2; 13'b1001010101000: data_out = 18'h0236c; 13'b1001010101001: data_out = 18'h02483; 13'b1001010101010: data_out = 18'h02569; 13'b1001010101011: data_out = 18'h026b0; 13'b1001010101100: data_out = 18'h02765; 13'b1001010101101: data_out = 18'h028d0; 13'b1001010101110: data_out = 18'h029b6; 13'b1001010101111: data_out = 18'h02a84; 13'b1001010110000: data_out = 18'h02b9f; 13'b1001010110001: data_out = 18'h02cec; 13'b1001010110010: data_out = 18'h02dad; 13'b1001010110011: data_out = 18'h02ea3; 13'b1001010110100: data_out = 18'h02fc5; 13'b1001010110101: data_out = 18'h03060; 13'b1001010110110: data_out = 18'h03185; 13'b1001010110111: data_out = 18'h0325a; 13'b1001010111000: data_out = 18'h0333f; 13'b1001010111001: data_out = 18'h0343c; 13'b1001010111010: data_out = 18'h034c2; 13'b1001010111011: data_out = 18'h035df; 13'b1001010111100: data_out = 18'h036b6; 13'b1001010111101: data_out = 18'h037b2; 13'b1001010111110: data_out = 18'h0386c; 13'b1001010111111: data_out = 18'h0390a; 13'b1001011000000: data_out = 18'h039e0; 13'b1001011000001: data_out = 18'h03ab1; 13'b1001011000010: data_out = 18'h03b73; 13'b1001011000011: data_out = 18'h03bfb; 13'b1001011000100: data_out = 18'h03cba; 13'b1001011000101: data_out = 18'h03da5; 13'b1001011000110: data_out = 18'h03e24; 13'b1001011000111: data_out = 18'h03f04; 13'b1001011001000: data_out = 18'h04013; 13'b1001011001001: data_out = 18'h04097; 13'b1001011001010: data_out = 18'h040c0; 13'b1001011001011: data_out = 18'h041c0; 13'b1001011001100: data_out = 18'h04290; 13'b1001011001101: data_out = 18'h04366; 13'b1001011001110: data_out = 18'h04421; 13'b1001011001111: data_out = 18'h0447f; 13'b1001011010000: data_out = 18'h044ff; 13'b1001011010001: data_out = 18'h04547; 13'b1001011010010: data_out = 18'h04671; 13'b1001011010011: data_out = 18'h046c9; 13'b1001011010100: data_out = 18'h0473c; 13'b1001011010101: data_out = 18'h047be; 13'b1001011010110: data_out = 18'h0480a; 13'b1001011010111: data_out = 18'h04883; 13'b1001011011000: data_out = 18'h04912; 13'b1001011011001: data_out = 18'h04955; 13'b1001011011010: data_out = 18'h0498b; 13'b1001011011011: data_out = 18'h04a61; 13'b1001011011100: data_out = 18'h04a9f; 13'b1001011011101: data_out = 18'h04af3; 13'b1001011011110: data_out = 18'h04b91; 13'b1001011011111: data_out = 18'h04c05; 13'b1001011100000: data_out = 18'h04c68; 13'b1001011100001: data_out = 18'h04c67; 13'b1001011100010: data_out = 18'h04d60; 13'b1001011100011: data_out = 18'h04d65; 13'b1001011100100: data_out = 18'h04db5; 13'b1001011100101: data_out = 18'h04e61; 13'b1001011100110: data_out = 18'h04e54; 13'b1001011100111: data_out = 18'h04eb6; 13'b1001011101000: data_out = 18'h04f08; 13'b1001011101001: data_out = 18'h04f89; 13'b1001011101010: data_out = 18'h04f7b; 13'b1001011101011: data_out = 18'h04fc5; 13'b1001011101100: data_out = 18'h04ffa; 13'b1001011101101: data_out = 18'h05031; 13'b1001011101110: data_out = 18'h05035; 13'b1001011101111: data_out = 18'h050a3; 13'b1001011110000: data_out = 18'h05098; 13'b1001011110001: data_out = 18'h050ad; 13'b1001011110010: data_out = 18'h050e9; 13'b1001011110011: data_out = 18'h0510d; 13'b1001011110100: data_out = 18'h0515e; 13'b1001011110101: data_out = 18'h0517e; 13'b1001011110110: data_out = 18'h051a2; 13'b1001011110111: data_out = 18'h051c6; 13'b1001011111000: data_out = 18'h05189; 13'b1001011111001: data_out = 18'h051b4; 13'b1001011111010: data_out = 18'h05214; 13'b1001011111011: data_out = 18'h051fb; 13'b1001011111100: data_out = 18'h051f8; 13'b1001011111101: data_out = 18'h0519e; 13'b1001011111110: data_out = 18'h051ce; 13'b1001011111111: data_out = 18'h051c9; 13'b1001100000000: data_out = 18'h05217; 13'b1001100000001: data_out = 18'h051d1; 13'b1001100000010: data_out = 18'h051db; 13'b1001100000011: data_out = 18'h0517e; 13'b1001100000100: data_out = 18'h05162; 13'b1001100000101: data_out = 18'h05179; 13'b1001100000110: data_out = 18'h051b7; 13'b1001100000111: data_out = 18'h051aa; 13'b1001100001000: data_out = 18'h05119; 13'b1001100001001: data_out = 18'h05135; 13'b1001100001010: data_out = 18'h05164; 13'b1001100001011: data_out = 18'h05167; 13'b1001100001100: data_out = 18'h050ed; 13'b1001100001101: data_out = 18'h050b8; 13'b1001100001110: data_out = 18'h05100; 13'b1001100001111: data_out = 18'h050d2; 13'b1001100010000: data_out = 18'h05075; 13'b1001100010001: data_out = 18'h0501f; 13'b1001100010010: data_out = 18'h04fdf; 13'b1001100010011: data_out = 18'h04f9c; 13'b1001100010100: data_out = 18'h04f1b; 13'b1001100010101: data_out = 18'h04f16; 13'b1001100010110: data_out = 18'h04f3b; 13'b1001100010111: data_out = 18'h04f00; 13'b1001100011000: data_out = 18'h04e7b; 13'b1001100011001: data_out = 18'h04e58; 13'b1001100011010: data_out = 18'h04dfd; 13'b1001100011011: data_out = 18'h04dc2; 13'b1001100011100: data_out = 18'h04da5; 13'b1001100011101: data_out = 18'h04d20; 13'b1001100011110: data_out = 18'h04cc0; 13'b1001100011111: data_out = 18'h04c9c; 13'b1001100100000: data_out = 18'h04be1; 13'b1001100100001: data_out = 18'h04b97; 13'b1001100100010: data_out = 18'h04b63; 13'b1001100100011: data_out = 18'h04b2d; 13'b1001100100100: data_out = 18'h04b05; 13'b1001100100101: data_out = 18'h04a68; 13'b1001100100110: data_out = 18'h049a8; 13'b1001100100111: data_out = 18'h0494d; 13'b1001100101000: data_out = 18'h04965; 13'b1001100101001: data_out = 18'h048a3; 13'b1001100101010: data_out = 18'h04835; 13'b1001100101011: data_out = 18'h047da; 13'b1001100101100: data_out = 18'h047a8; 13'b1001100101101: data_out = 18'h0472a; 13'b1001100101110: data_out = 18'h04684; 13'b1001100101111: data_out = 18'h04614; 13'b1001100110000: data_out = 18'h04578; 13'b1001100110001: data_out = 18'h04545; 13'b1001100110010: data_out = 18'h04494; 13'b1001100110011: data_out = 18'h043f1; 13'b1001100110100: data_out = 18'h043ae; 13'b1001100110101: data_out = 18'h042df; 13'b1001100110110: data_out = 18'h04267; 13'b1001100110111: data_out = 18'h041c5; 13'b1001100111000: data_out = 18'h0418d; 13'b1001100111001: data_out = 18'h040ab; 13'b1001100111010: data_out = 18'h03fff; 13'b1001100111011: data_out = 18'h03f74; 13'b1001100111100: data_out = 18'h03f3d; 13'b1001100111101: data_out = 18'h03e88; 13'b1001100111110: data_out = 18'h03dfb; 13'b1001100111111: data_out = 18'h03d61; 13'b1001101000000: data_out = 18'h03cd3; 13'b1001101000001: data_out = 18'h03c1f; 13'b1001101000010: data_out = 18'h03b76; 13'b1001101000011: data_out = 18'h03ac8; 13'b1001101000100: data_out = 18'h03a32; 13'b1001101000101: data_out = 18'h03950; 13'b1001101000110: data_out = 18'h03863; 13'b1001101000111: data_out = 18'h037e7; 13'b1001101001000: data_out = 18'h036d2; 13'b1001101001001: data_out = 18'h036c2; 13'b1001101001010: data_out = 18'h035c3; 13'b1001101001011: data_out = 18'h034f7; 13'b1001101001100: data_out = 18'h03472; 13'b1001101001101: data_out = 18'h033e0; 13'b1001101001110: data_out = 18'h03329; 13'b1001101001111: data_out = 18'h03218; 13'b1001101010000: data_out = 18'h0318d; 13'b1001101010001: data_out = 18'h030dd; 13'b1001101010010: data_out = 18'h02ff4; 13'b1001101010011: data_out = 18'h02f2c; 13'b1001101010100: data_out = 18'h02e8a; 13'b1001101010101: data_out = 18'h02db7; 13'b1001101010110: data_out = 18'h02d03; 13'b1001101010111: data_out = 18'h02c1f; 13'b1001101011000: data_out = 18'h02b40; 13'b1001101011001: data_out = 18'h02ace; 13'b1001101011010: data_out = 18'h02a1c; 13'b1001101011011: data_out = 18'h0291b; 13'b1001101011100: data_out = 18'h027df; 13'b1001101011101: data_out = 18'h0277c; 13'b1001101011110: data_out = 18'h0270f; 13'b1001101011111: data_out = 18'h02643; 13'b1001101100000: data_out = 18'h024cb; 13'b1001101100001: data_out = 18'h02412; 13'b1001101100010: data_out = 18'h02394; 13'b1001101100011: data_out = 18'h022a7; 13'b1001101100100: data_out = 18'h0219d; 13'b1001101100101: data_out = 18'h020e7; 13'b1001101100110: data_out = 18'h0200c; 13'b1001101100111: data_out = 18'h01f65; 13'b1001101101000: data_out = 18'h01e31; 13'b1001101101001: data_out = 18'h01d27; 13'b1001101101010: data_out = 18'h01c66; 13'b1001101101011: data_out = 18'h01b9b; 13'b1001101101100: data_out = 18'h01a72; 13'b1001101101101: data_out = 18'h019f0; 13'b1001101101110: data_out = 18'h01909; 13'b1001101101111: data_out = 18'h01828; 13'b1001101110000: data_out = 18'h0175d; 13'b1001101110001: data_out = 18'h0169c; 13'b1001101110010: data_out = 18'h0153a; 13'b1001101110011: data_out = 18'h014cc; 13'b1001101110100: data_out = 18'h0144a; 13'b1001101110101: data_out = 18'h01336; 13'b1001101110110: data_out = 18'h0123c; 13'b1001101110111: data_out = 18'h01150; 13'b1001101111000: data_out = 18'h01042; 13'b1001101111001: data_out = 18'h00fa0; 13'b1001101111010: data_out = 18'h00ee7; 13'b1001101111011: data_out = 18'h00e19; 13'b1001101111100: data_out = 18'h00d38; 13'b1001101111101: data_out = 18'h00c16; 13'b1001101111110: data_out = 18'h00b8d; 13'b1001101111111: data_out = 18'h00a99; 13'b1001110000000: data_out = 18'h009a6; 13'b1001110000001: data_out = 18'h0088f; 13'b1001110000010: data_out = 18'h007b3; 13'b1001110000011: data_out = 18'h00704; 13'b1001110000100: data_out = 18'h00644; 13'b1001110000101: data_out = 18'h00538; 13'b1001110000110: data_out = 18'h0048f; 13'b1001110000111: data_out = 18'h003c8; default: data_out = 18'h0_0000; endcase end endmodule module snare (clock, address, data_out); input clock; input [12:0] address; output [17:0] data_out; reg [17:0] data_out; always @ (posedge clock) begin case (address) 13'b0000000000000: data_out = 18'h3ffd6; 13'b0000000000001: data_out = 18'h00196; 13'b0000000000010: data_out = 18'h00274; 13'b0000000000011: data_out = 18'h3fe64; 13'b0000000000100: data_out = 18'h3fee2; 13'b0000000000101: data_out = 18'h3f0a2; 13'b0000000000110: data_out = 18'h3d1c4; 13'b0000000000111: data_out = 18'h3b902; 13'b0000000001000: data_out = 18'h3ad8a; 13'b0000000001001: data_out = 18'h3adf2; 13'b0000000001010: data_out = 18'h3a800; 13'b0000000001011: data_out = 18'h3a7b8; 13'b0000000001100: data_out = 18'h3a8a0; 13'b0000000001101: data_out = 18'h3a910; 13'b0000000001110: data_out = 18'h3add4; 13'b0000000001111: data_out = 18'h3d1ba; 13'b0000000010000: data_out = 18'h04564; 13'b0000000010001: data_out = 18'h04680; 13'b0000000010010: data_out = 18'h3724c; 13'b0000000010011: data_out = 18'h3b2c8; 13'b0000000010100: data_out = 18'h3e74e; 13'b0000000010101: data_out = 18'h058a6; 13'b0000000010110: data_out = 18'h0d932; 13'b0000000010111: data_out = 18'h0cdaa; 13'b0000000011000: data_out = 18'h0cafe; 13'b0000000011001: data_out = 18'h0b326; 13'b0000000011010: data_out = 18'h09564; 13'b0000000011011: data_out = 18'h0a3c2; 13'b0000000011100: data_out = 18'h09b52; 13'b0000000011101: data_out = 18'h076e4; 13'b0000000011110: data_out = 18'h0c7f2; 13'b0000000011111: data_out = 18'h097aa; 13'b0000000100000: data_out = 18'h0a2a2; 13'b0000000100001: data_out = 18'h093c2; 13'b0000000100010: data_out = 18'h08ae4; 13'b0000000100011: data_out = 18'h06854; 13'b0000000100100: data_out = 18'h05cae; 13'b0000000100101: data_out = 18'h07528; 13'b0000000100110: data_out = 18'h00362; 13'b0000000100111: data_out = 18'h38368; 13'b0000000101000: data_out = 18'h3f490; 13'b0000000101001: data_out = 18'h0b188; 13'b0000000101010: data_out = 18'h03a02; 13'b0000000101011: data_out = 18'h02c02; 13'b0000000101100: data_out = 18'h0001a; 13'b0000000101101: data_out = 18'h39be6; 13'b0000000101110: data_out = 18'h3c0d4; 13'b0000000101111: data_out = 18'h0319e; 13'b0000000110000: data_out = 18'h34710; 13'b0000000110001: data_out = 18'h366dc; 13'b0000000110010: data_out = 18'h036cc; 13'b0000000110011: data_out = 18'h3af66; 13'b0000000110100: data_out = 18'h307ac; 13'b0000000110101: data_out = 18'h34b10; 13'b0000000110110: data_out = 18'h351be; 13'b0000000110111: data_out = 18'h34f26; 13'b0000000111000: data_out = 18'h35e20; 13'b0000000111001: data_out = 18'h383ac; 13'b0000000111010: data_out = 18'h3a69e; 13'b0000000111011: data_out = 18'h35b28; 13'b0000000111100: data_out = 18'h39b4c; 13'b0000000111101: data_out = 18'h3e5f2; 13'b0000000111110: data_out = 18'h01164; 13'b0000000111111: data_out = 18'h3b718; 13'b0000001000000: data_out = 18'h3e564; 13'b0000001000001: data_out = 18'h39faa; 13'b0000001000010: data_out = 18'h3cd4e; 13'b0000001000011: data_out = 18'h3ee56; 13'b0000001000100: data_out = 18'h00ee8; 13'b0000001000101: data_out = 18'h0343e; 13'b0000001000110: data_out = 18'h02c44; 13'b0000001000111: data_out = 18'h3fba6; 13'b0000001001000: data_out = 18'h3eeee; 13'b0000001001001: data_out = 18'h003e8; 13'b0000001001010: data_out = 18'h3f28a; 13'b0000001001011: data_out = 18'h3e150; 13'b0000001001100: data_out = 18'h3f172; 13'b0000001001101: data_out = 18'h3de10; 13'b0000001001110: data_out = 18'h38fb6; 13'b0000001001111: data_out = 18'h398ba; 13'b0000001010000: data_out = 18'h3baa6; 13'b0000001010001: data_out = 18'h3c142; 13'b0000001010010: data_out = 18'h3e720; 13'b0000001010011: data_out = 18'h06e70; 13'b0000001010100: data_out = 18'h0aa8e; 13'b0000001010101: data_out = 18'h3fdb2; 13'b0000001010110: data_out = 18'h3ad84; 13'b0000001010111: data_out = 18'h39cae; 13'b0000001011000: data_out = 18'h3dc1c; 13'b0000001011001: data_out = 18'h3f0f8; 13'b0000001011010: data_out = 18'h3e6c0; 13'b0000001011011: data_out = 18'h3efcc; 13'b0000001011100: data_out = 18'h3fbac; 13'b0000001011101: data_out = 18'h00c7c; 13'b0000001011110: data_out = 18'h0394e; 13'b0000001011111: data_out = 18'h07706; 13'b0000001100000: data_out = 18'h0381a; 13'b0000001100001: data_out = 18'h01da8; 13'b0000001100010: data_out = 18'h0641e; 13'b0000001100011: data_out = 18'h0a2d0; 13'b0000001100100: data_out = 18'h091ec; 13'b0000001100101: data_out = 18'h00856; 13'b0000001100110: data_out = 18'h05970; 13'b0000001100111: data_out = 18'h0d784; 13'b0000001101000: data_out = 18'h089bc; 13'b0000001101001: data_out = 18'h02ab8; 13'b0000001101010: data_out = 18'h008e0; 13'b0000001101011: data_out = 18'h064ac; 13'b0000001101100: data_out = 18'h0597a; 13'b0000001101101: data_out = 18'h068ba; 13'b0000001101110: data_out = 18'h0b100; 13'b0000001101111: data_out = 18'h09d40; 13'b0000001110000: data_out = 18'h0916e; 13'b0000001110001: data_out = 18'h08452; 13'b0000001110010: data_out = 18'h0925e; 13'b0000001110011: data_out = 18'h07560; 13'b0000001110100: data_out = 18'h07f98; 13'b0000001110101: data_out = 18'h07666; 13'b0000001110110: data_out = 18'h06b1c; 13'b0000001110111: data_out = 18'h06294; 13'b0000001111000: data_out = 18'h06196; 13'b0000001111001: data_out = 18'h056e2; 13'b0000001111010: data_out = 18'h050c2; 13'b0000001111011: data_out = 18'h04c34; 13'b0000001111100: data_out = 18'h0443a; 13'b0000001111101: data_out = 18'h03bd4; 13'b0000001111110: data_out = 18'h02c8c; 13'b0000001111111: data_out = 18'h001d8; 13'b0000010000000: data_out = 18'h0001a; 13'b0000010000001: data_out = 18'h024ac; 13'b0000010000010: data_out = 18'h007a6; 13'b0000010000011: data_out = 18'h028d4; 13'b0000010000100: data_out = 18'h010d2; 13'b0000010000101: data_out = 18'h3e012; 13'b0000010000110: data_out = 18'h3b09a; 13'b0000010000111: data_out = 18'h39780; 13'b0000010001000: data_out = 18'h3c9c0; 13'b0000010001001: data_out = 18'h01866; 13'b0000010001010: data_out = 18'h02d3a; 13'b0000010001011: data_out = 18'h3e00e; 13'b0000010001100: data_out = 18'h3c2c2; 13'b0000010001101: data_out = 18'h37bf4; 13'b0000010001110: data_out = 18'h39314; 13'b0000010001111: data_out = 18'h0335a; 13'b0000010010000: data_out = 18'h3faa0; 13'b0000010010001: data_out = 18'h3df34; 13'b0000010010010: data_out = 18'h3b38c; 13'b0000010010011: data_out = 18'h3dda8; 13'b0000010010100: data_out = 18'h3d4a6; 13'b0000010010101: data_out = 18'h3c40c; 13'b0000010010110: data_out = 18'h3bfe2; 13'b0000010010111: data_out = 18'h3b7c0; 13'b0000010011000: data_out = 18'h3b906; 13'b0000010011001: data_out = 18'h3a2a8; 13'b0000010011010: data_out = 18'h384e8; 13'b0000010011011: data_out = 18'h35bec; 13'b0000010011100: data_out = 18'h39670; 13'b0000010011101: data_out = 18'h3d386; 13'b0000010011110: data_out = 18'h39cea; 13'b0000010011111: data_out = 18'h37464; 13'b0000010100000: data_out = 18'h38482; 13'b0000010100001: data_out = 18'h3c154; 13'b0000010100010: data_out = 18'h38a90; 13'b0000010100011: data_out = 18'h35256; 13'b0000010100100: data_out = 18'h36360; 13'b0000010100101: data_out = 18'h38158; 13'b0000010100110: data_out = 18'h35e62; 13'b0000010100111: data_out = 18'h3a9cc; 13'b0000010101000: data_out = 18'h3b578; 13'b0000010101001: data_out = 18'h366f0; 13'b0000010101010: data_out = 18'h34b24; 13'b0000010101011: data_out = 18'h386dc; 13'b0000010101100: data_out = 18'h3ff6c; 13'b0000010101101: data_out = 18'h3e160; 13'b0000010101110: data_out = 18'h38660; 13'b0000010101111: data_out = 18'h3d684; 13'b0000010110000: data_out = 18'h3b5f8; 13'b0000010110001: data_out = 18'h373a0; 13'b0000010110010: data_out = 18'h35e28; 13'b0000010110011: data_out = 18'h370fc; 13'b0000010110100: data_out = 18'h37f8a; 13'b0000010110101: data_out = 18'h38620; 13'b0000010110110: data_out = 18'h38c24; 13'b0000010110111: data_out = 18'h39282; 13'b0000010111000: data_out = 18'h39738; 13'b0000010111001: data_out = 18'h39e1a; 13'b0000010111010: data_out = 18'h3a4fe; 13'b0000010111011: data_out = 18'h3ab0e; 13'b0000010111100: data_out = 18'h3b0e6; 13'b0000010111101: data_out = 18'h3b6ca; 13'b0000010111110: data_out = 18'h3bc9e; 13'b0000010111111: data_out = 18'h3c258; 13'b0000011000000: data_out = 18'h3c7f4; 13'b0000011000001: data_out = 18'h3cd98; 13'b0000011000010: data_out = 18'h3d312; 13'b0000011000011: data_out = 18'h3d894; 13'b0000011000100: data_out = 18'h3ddd8; 13'b0000011000101: data_out = 18'h3e308; 13'b0000011000110: data_out = 18'h3e7fe; 13'b0000011000111: data_out = 18'h3ed00; 13'b0000011001000: data_out = 18'h3f1c2; 13'b0000011001001: data_out = 18'h3f6c8; 13'b0000011001010: data_out = 18'h3fcea; 13'b0000011001011: data_out = 18'h007d6; 13'b0000011001100: data_out = 18'h0156c; 13'b0000011001101: data_out = 18'h021be; 13'b0000011001110: data_out = 18'h03360; 13'b0000011001111: data_out = 18'h030e0; 13'b0000011010000: data_out = 18'h02990; 13'b0000011010001: data_out = 18'h069d2; 13'b0000011010010: data_out = 18'h0a77e; 13'b0000011010011: data_out = 18'h0c7a6; 13'b0000011010100: data_out = 18'h08fd8; 13'b0000011010101: data_out = 18'h0b1e0; 13'b0000011010110: data_out = 18'h0813a; 13'b0000011010111: data_out = 18'h09464; 13'b0000011011000: data_out = 18'h08114; 13'b0000011011001: data_out = 18'h09378; 13'b0000011011010: data_out = 18'h0da64; 13'b0000011011011: data_out = 18'h0cbf6; 13'b0000011011100: data_out = 18'h0bf78; 13'b0000011011101: data_out = 18'h0a750; 13'b0000011011110: data_out = 18'h0c554; 13'b0000011011111: data_out = 18'h0b828; 13'b0000011100000: data_out = 18'h0bacc; 13'b0000011100001: data_out = 18'h0ac18; 13'b0000011100010: data_out = 18'h0aae6; 13'b0000011100011: data_out = 18'h0a4ea; 13'b0000011100100: data_out = 18'h09e48; 13'b0000011100101: data_out = 18'h098b0; 13'b0000011100110: data_out = 18'h090ce; 13'b0000011100111: data_out = 18'h08a3c; 13'b0000011101000: data_out = 18'h084a6; 13'b0000011101001: data_out = 18'h07e98; 13'b0000011101010: data_out = 18'h07886; 13'b0000011101011: data_out = 18'h071f8; 13'b0000011101100: data_out = 18'h06b60; 13'b0000011101101: data_out = 18'h064bc; 13'b0000011101110: data_out = 18'h05b20; 13'b0000011101111: data_out = 18'h04d80; 13'b0000011110000: data_out = 18'h0421a; 13'b0000011110001: data_out = 18'h02f5c; 13'b0000011110010: data_out = 18'h01000; 13'b0000011110011: data_out = 18'h01eb4; 13'b0000011110100: data_out = 18'h04cc4; 13'b0000011110101: data_out = 18'h0059a; 13'b0000011110110: data_out = 18'h01114; 13'b0000011110111: data_out = 18'h007e4; 13'b0000011111000: data_out = 18'h006aa; 13'b0000011111001: data_out = 18'h3f58c; 13'b0000011111010: data_out = 18'h3f9c8; 13'b0000011111011: data_out = 18'h3ec4a; 13'b0000011111100: data_out = 18'h3e81e; 13'b0000011111101: data_out = 18'h3e5d4; 13'b0000011111110: data_out = 18'h3ddb6; 13'b0000011111111: data_out = 18'h3da08; 13'b0000100000000: data_out = 18'h3d632; 13'b0000100000001: data_out = 18'h3d17a; 13'b0000100000010: data_out = 18'h3ce42; 13'b0000100000011: data_out = 18'h3cac0; 13'b0000100000100: data_out = 18'h3c710; 13'b0000100000101: data_out = 18'h3c34c; 13'b0000100000110: data_out = 18'h3c214; 13'b0000100000111: data_out = 18'h3bd84; 13'b0000100001000: data_out = 18'h3ba20; 13'b0000100001001: data_out = 18'h3b64a; 13'b0000100001010: data_out = 18'h3a9c8; 13'b0000100001011: data_out = 18'h375b2; 13'b0000100001100: data_out = 18'h334ac; 13'b0000100001101: data_out = 18'h34ec4; 13'b0000100001110: data_out = 18'h35fa0; 13'b0000100001111: data_out = 18'h36f9a; 13'b0000100010000: data_out = 18'h379aa; 13'b0000100010001: data_out = 18'h382a4; 13'b0000100010010: data_out = 18'h38850; 13'b0000100010011: data_out = 18'h38c02; 13'b0000100010100: data_out = 18'h38c74; 13'b0000100010101: data_out = 18'h38bb0; 13'b0000100010110: data_out = 18'h3926c; 13'b0000100010111: data_out = 18'h396c4; 13'b0000100011000: data_out = 18'h39bf0; 13'b0000100011001: data_out = 18'h39f9e; 13'b0000100011010: data_out = 18'h3a47c; 13'b0000100011011: data_out = 18'h3a89a; 13'b0000100011100: data_out = 18'h3ac6e; 13'b0000100011101: data_out = 18'h3b0b2; 13'b0000100011110: data_out = 18'h3b530; 13'b0000100011111: data_out = 18'h3b968; 13'b0000100100000: data_out = 18'h3bdc8; 13'b0000100100001: data_out = 18'h3c22e; 13'b0000100100010: data_out = 18'h3c6be; 13'b0000100100011: data_out = 18'h3cbd0; 13'b0000100100100: data_out = 18'h3d4c6; 13'b0000100100101: data_out = 18'h3e078; 13'b0000100100110: data_out = 18'h3e77e; 13'b0000100100111: data_out = 18'h3ef64; 13'b0000100101000: data_out = 18'h3f658; 13'b0000100101001: data_out = 18'h3feaa; 13'b0000100101010: data_out = 18'h004f4; 13'b0000100101011: data_out = 18'h00b26; 13'b0000100101100: data_out = 18'h010ac; 13'b0000100101101: data_out = 18'h017bc; 13'b0000100101110: data_out = 18'h01d40; 13'b0000100101111: data_out = 18'h021ee; 13'b0000100110000: data_out = 18'h0291a; 13'b0000100110001: data_out = 18'h036f6; 13'b0000100110010: data_out = 18'h045a4; 13'b0000100110011: data_out = 18'h0343a; 13'b0000100110100: data_out = 18'h05116; 13'b0000100110101: data_out = 18'h0657c; 13'b0000100110110: data_out = 18'h026a2; 13'b0000100110111: data_out = 18'h09fde; 13'b0000100111000: data_out = 18'h06d28; 13'b0000100111001: data_out = 18'h02986; 13'b0000100111010: data_out = 18'h057f4; 13'b0000100111011: data_out = 18'h094f0; 13'b0000100111100: data_out = 18'h09aee; 13'b0000100111101: data_out = 18'h09b56; 13'b0000100111110: data_out = 18'h0b800; 13'b0000100111111: data_out = 18'h09616; 13'b0000101000000: data_out = 18'h0959c; 13'b0000101000001: data_out = 18'h08d94; 13'b0000101000010: data_out = 18'h08bfc; 13'b0000101000011: data_out = 18'h08586; 13'b0000101000100: data_out = 18'h08120; 13'b0000101000101: data_out = 18'h07dfc; 13'b0000101000110: data_out = 18'h0785a; 13'b0000101000111: data_out = 18'h07330; 13'b0000101001000: data_out = 18'h06e86; 13'b0000101001001: data_out = 18'h069d0; 13'b0000101001010: data_out = 18'h0651c; 13'b0000101001011: data_out = 18'h06064; 13'b0000101001100: data_out = 18'h05b64; 13'b0000101001101: data_out = 18'h0564e; 13'b0000101001110: data_out = 18'h0517c; 13'b0000101001111: data_out = 18'h04c74; 13'b0000101010000: data_out = 18'h0470c; 13'b0000101010001: data_out = 18'h03ee2; 13'b0000101010010: data_out = 18'h033c6; 13'b0000101010011: data_out = 18'h02c5e; 13'b0000101010100: data_out = 18'h023c0; 13'b0000101010101: data_out = 18'h01cb4; 13'b0000101010110: data_out = 18'h0152e; 13'b0000101010111: data_out = 18'h00da8; 13'b0000101011000: data_out = 18'h00724; 13'b0000101011001: data_out = 18'h0008a; 13'b0000101011010: data_out = 18'h3fa62; 13'b0000101011011: data_out = 18'h3f536; 13'b0000101011100: data_out = 18'h3ef26; 13'b0000101011101: data_out = 18'h3e8c6; 13'b0000101011110: data_out = 18'h3e40a; 13'b0000101011111: data_out = 18'h3dd42; 13'b0000101100000: data_out = 18'h3d156; 13'b0000101100001: data_out = 18'h3b3b8; 13'b0000101100010: data_out = 18'h39842; 13'b0000101100011: data_out = 18'h3b76c; 13'b0000101100100: data_out = 18'h3a876; 13'b0000101100101: data_out = 18'h397dc; 13'b0000101100110: data_out = 18'h39e54; 13'b0000101100111: data_out = 18'h39718; 13'b0000101101000: data_out = 18'h3db54; 13'b0000101101001: data_out = 18'h38346; 13'b0000101101010: data_out = 18'h39ebc; 13'b0000101101011: data_out = 18'h3e3b2; 13'b0000101101100: data_out = 18'h0060c; 13'b0000101101101: data_out = 18'h3b248; 13'b0000101101110: data_out = 18'h3755c; 13'b0000101101111: data_out = 18'h38318; 13'b0000101110000: data_out = 18'h3e920; 13'b0000101110001: data_out = 18'h3c174; 13'b0000101110010: data_out = 18'h3595c; 13'b0000101110011: data_out = 18'h339b4; 13'b0000101110100: data_out = 18'h36826; 13'b0000101110101: data_out = 18'h3757c; 13'b0000101110110: data_out = 18'h37bce; 13'b0000101110111: data_out = 18'h3763a; 13'b0000101111000: data_out = 18'h383d4; 13'b0000101111001: data_out = 18'h38210; 13'b0000101111010: data_out = 18'h38758; 13'b0000101111011: data_out = 18'h38c98; 13'b0000101111100: data_out = 18'h39012; 13'b0000101111101: data_out = 18'h3954e; 13'b0000101111110: data_out = 18'h3997e; 13'b0000101111111: data_out = 18'h39d4e; 13'b0000110000000: data_out = 18'h3a260; 13'b0000110000001: data_out = 18'h3a80a; 13'b0000110000010: data_out = 18'h3bac2; 13'b0000110000011: data_out = 18'h3da2e; 13'b0000110000100: data_out = 18'h3b032; 13'b0000110000101: data_out = 18'h3a9bc; 13'b0000110000110: data_out = 18'h3d8de; 13'b0000110000111: data_out = 18'h3ceb4; 13'b0000110001000: data_out = 18'h3d896; 13'b0000110001001: data_out = 18'h3e0c0; 13'b0000110001010: data_out = 18'h3e9e6; 13'b0000110001011: data_out = 18'h3fbf2; 13'b0000110001100: data_out = 18'h00810; 13'b0000110001101: data_out = 18'h3e268; 13'b0000110001110: data_out = 18'h3f354; 13'b0000110001111: data_out = 18'h01608; 13'b0000110010000: data_out = 18'h3feb0; 13'b0000110010001: data_out = 18'h01192; 13'b0000110010010: data_out = 18'h0110a; 13'b0000110010011: data_out = 18'h016cc; 13'b0000110010100: data_out = 18'h01ed2; 13'b0000110010101: data_out = 18'h01c68; 13'b0000110010110: data_out = 18'h024e4; 13'b0000110010111: data_out = 18'h027fc; 13'b0000110011000: data_out = 18'h029ac; 13'b0000110011001: data_out = 18'h0314c; 13'b0000110011010: data_out = 18'h039f0; 13'b0000110011011: data_out = 18'h0457c; 13'b0000110011100: data_out = 18'h04e6c; 13'b0000110011101: data_out = 18'h059c0; 13'b0000110011110: data_out = 18'h00e1e; 13'b0000110011111: data_out = 18'h0239c; 13'b0000110100000: data_out = 18'h06eae; 13'b0000110100001: data_out = 18'h06258; 13'b0000110100010: data_out = 18'h081a6; 13'b0000110100011: data_out = 18'h06da0; 13'b0000110100100: data_out = 18'h0958c; 13'b0000110100101: data_out = 18'h097cc; 13'b0000110100110: data_out = 18'h0a812; 13'b0000110100111: data_out = 18'h07cd2; 13'b0000110101000: data_out = 18'h08328; 13'b0000110101001: data_out = 18'h053fa; 13'b0000110101010: data_out = 18'h0679c; 13'b0000110101011: data_out = 18'h09f22; 13'b0000110101100: data_out = 18'h0723a; 13'b0000110101101: data_out = 18'h07696; 13'b0000110101110: data_out = 18'h06d68; 13'b0000110101111: data_out = 18'h06b02; 13'b0000110110000: data_out = 18'h065f4; 13'b0000110110001: data_out = 18'h060de; 13'b0000110110010: data_out = 18'h05d6e; 13'b0000110110011: data_out = 18'h058bc; 13'b0000110110100: data_out = 18'h05432; 13'b0000110110101: data_out = 18'h04fae; 13'b0000110110110: data_out = 18'h04b12; 13'b0000110110111: data_out = 18'h0453a; 13'b0000110111000: data_out = 18'h038dc; 13'b0000110111001: data_out = 18'h0347e; 13'b0000110111010: data_out = 18'h03766; 13'b0000110111011: data_out = 18'h00d94; 13'b0000110111100: data_out = 18'h011e6; 13'b0000110111101: data_out = 18'h02f72; 13'b0000110111110: data_out = 18'h00fc6; 13'b0000110111111: data_out = 18'h3e326; 13'b0000111000000: data_out = 18'h00cee; 13'b0000111000001: data_out = 18'h023e8; 13'b0000111000010: data_out = 18'h3e3e2; 13'b0000111000011: data_out = 18'h3fdee; 13'b0000111000100: data_out = 18'h3e95a; 13'b0000111000101: data_out = 18'h3f1ee; 13'b0000111000110: data_out = 18'h3df64; 13'b0000111000111: data_out = 18'h3d992; 13'b0000111001000: data_out = 18'h3cf10; 13'b0000111001001: data_out = 18'h3e512; 13'b0000111001010: data_out = 18'h3c682; 13'b0000111001011: data_out = 18'h3c3b8; 13'b0000111001100: data_out = 18'h3edee; 13'b0000111001101: data_out = 18'h3c3e6; 13'b0000111001110: data_out = 18'h3c3d8; 13'b0000111001111: data_out = 18'h3c3b6; 13'b0000111010000: data_out = 18'h3a318; 13'b0000111010001: data_out = 18'h3715a; 13'b0000111010010: data_out = 18'h391cc; 13'b0000111010011: data_out = 18'h3d904; 13'b0000111010100: data_out = 18'h398c8; 13'b0000111010101: data_out = 18'h36ed0; 13'b0000111010110: data_out = 18'h37ad2; 13'b0000111010111: data_out = 18'h00624; 13'b0000111011000: data_out = 18'h36738; 13'b0000111011001: data_out = 18'h34ec0; 13'b0000111011010: data_out = 18'h3d542; 13'b0000111011011: data_out = 18'h3b52e; 13'b0000111011100: data_out = 18'h34794; 13'b0000111011101: data_out = 18'h36a0c; 13'b0000111011110: data_out = 18'h37146; 13'b0000111011111: data_out = 18'h3915e; 13'b0000111100000: data_out = 18'h39784; 13'b0000111100001: data_out = 18'h36f20; 13'b0000111100010: data_out = 18'h37b5a; 13'b0000111100011: data_out = 18'h39818; 13'b0000111100100: data_out = 18'h3c96a; 13'b0000111100101: data_out = 18'h3ddc4; 13'b0000111100110: data_out = 18'h38ed0; 13'b0000111100111: data_out = 18'h3a538; 13'b0000111101000: data_out = 18'h399e2; 13'b0000111101001: data_out = 18'h3a2fe; 13'b0000111101010: data_out = 18'h3a4da; 13'b0000111101011: data_out = 18'h39952; 13'b0000111101100: data_out = 18'h3b1d2; 13'b0000111101101: data_out = 18'h3b12a; 13'b0000111101110: data_out = 18'h3b222; 13'b0000111101111: data_out = 18'h3be88; 13'b0000111110000: data_out = 18'h3c64a; 13'b0000111110001: data_out = 18'h3d07c; 13'b0000111110010: data_out = 18'h3e2cc; 13'b0000111110011: data_out = 18'h3e16e; 13'b0000111110100: data_out = 18'h3d430; 13'b0000111110101: data_out = 18'h0059e; 13'b0000111110110: data_out = 18'h3f5b2; 13'b0000111110111: data_out = 18'h3d87e; 13'b0000111111000: data_out = 18'h006e2; 13'b0000111111001: data_out = 18'h00430; 13'b0000111111010: data_out = 18'h00658; 13'b0000111111011: data_out = 18'h008bc; 13'b0000111111100: data_out = 18'h017b8; 13'b0000111111101: data_out = 18'h0158a; 13'b0000111111110: data_out = 18'h023dc; 13'b0000111111111: data_out = 18'h01ec4; 13'b0001000000000: data_out = 18'h03336; 13'b0001000000001: data_out = 18'h053ec; 13'b0001000000010: data_out = 18'h04ff6; 13'b0001000000011: data_out = 18'h0125a; 13'b0001000000100: data_out = 18'h020f8; 13'b0001000000101: data_out = 18'h09730; 13'b0001000000110: data_out = 18'h04b50; 13'b0001000000111: data_out = 18'h3f902; 13'b0001000001000: data_out = 18'h01c50; 13'b0001000001001: data_out = 18'h0799e; 13'b0001000001010: data_out = 18'h070e6; 13'b0001000001011: data_out = 18'h05122; 13'b0001000001100: data_out = 18'h01f24; 13'b0001000001101: data_out = 18'h09f6e; 13'b0001000001110: data_out = 18'h077de; 13'b0001000001111: data_out = 18'h04d76; 13'b0001000010000: data_out = 18'h02f9e; 13'b0001000010001: data_out = 18'h03974; 13'b0001000010010: data_out = 18'h05e68; 13'b0001000010011: data_out = 18'h0bc44; 13'b0001000010100: data_out = 18'h07eac; 13'b0001000010101: data_out = 18'h05ba0; 13'b0001000010110: data_out = 18'h0849c; 13'b0001000010111: data_out = 18'h09742; 13'b0001000011000: data_out = 18'h071b6; 13'b0001000011001: data_out = 18'h09d34; 13'b0001000011010: data_out = 18'h08244; 13'b0001000011011: data_out = 18'h08234; 13'b0001000011100: data_out = 18'h07ed8; 13'b0001000011101: data_out = 18'h076ea; 13'b0001000011110: data_out = 18'h06cbe; 13'b0001000011111: data_out = 18'h06340; 13'b0001000100000: data_out = 18'h07000; 13'b0001000100001: data_out = 18'h061a8; 13'b0001000100010: data_out = 18'h0576e; 13'b0001000100011: data_out = 18'h04f7c; 13'b0001000100100: data_out = 18'h05e32; 13'b0001000100101: data_out = 18'h03ee6; 13'b0001000100110: data_out = 18'h03fa8; 13'b0001000100111: data_out = 18'h033ce; 13'b0001000101000: data_out = 18'h0308c; 13'b0001000101001: data_out = 18'h0268a; 13'b0001000101010: data_out = 18'h02162; 13'b0001000101011: data_out = 18'h01824; 13'b0001000101100: data_out = 18'h012f2; 13'b0001000101101: data_out = 18'h00e32; 13'b0001000101110: data_out = 18'h0058a; 13'b0001000101111: data_out = 18'h000d0; 13'b0001000110000: data_out = 18'h3fa62; 13'b0001000110001: data_out = 18'h3f060; 13'b0001000110010: data_out = 18'h3dd1c; 13'b0001000110011: data_out = 18'h3d74c; 13'b0001000110100: data_out = 18'h00284; 13'b0001000110101: data_out = 18'h3d716; 13'b0001000110110: data_out = 18'h390ac; 13'b0001000110111: data_out = 18'h39c68; 13'b0001000111000: data_out = 18'h3eb52; 13'b0001000111001: data_out = 18'h3ca08; 13'b0001000111010: data_out = 18'h3d280; 13'b0001000111011: data_out = 18'h3eec0; 13'b0001000111100: data_out = 18'h38c0a; 13'b0001000111101: data_out = 18'h36db4; 13'b0001000111110: data_out = 18'h3961a; 13'b0001000111111: data_out = 18'h39608; 13'b0001001000000: data_out = 18'h3912a; 13'b0001001000001: data_out = 18'h3851e; 13'b0001001000010: data_out = 18'h37a44; 13'b0001001000011: data_out = 18'h3e67e; 13'b0001001000100: data_out = 18'h384dc; 13'b0001001000101: data_out = 18'h38f66; 13'b0001001000110: data_out = 18'h3cefc; 13'b0001001000111: data_out = 18'h3bdc8; 13'b0001001001000: data_out = 18'h3a46e; 13'b0001001001001: data_out = 18'h3a338; 13'b0001001001010: data_out = 18'h3e1fa; 13'b0001001001011: data_out = 18'h3e658; 13'b0001001001100: data_out = 18'h39c3c; 13'b0001001001101: data_out = 18'h39bca; 13'b0001001001110: data_out = 18'h382c4; 13'b0001001001111: data_out = 18'h3c916; 13'b0001001010000: data_out = 18'h3b7d0; 13'b0001001010001: data_out = 18'h3b624; 13'b0001001010010: data_out = 18'h39438; 13'b0001001010011: data_out = 18'h3b9f4; 13'b0001001010100: data_out = 18'h3bb98; 13'b0001001010101: data_out = 18'h3bca2; 13'b0001001010110: data_out = 18'h3e3b4; 13'b0001001010111: data_out = 18'h3eff8; 13'b0001001011000: data_out = 18'h391f8; 13'b0001001011001: data_out = 18'h3e640; 13'b0001001011010: data_out = 18'h01cd8; 13'b0001001011011: data_out = 18'h38314; 13'b0001001011100: data_out = 18'h3b0f8; 13'b0001001011101: data_out = 18'h02c8c; 13'b0001001011110: data_out = 18'h040ee; 13'b0001001011111: data_out = 18'h3a890; 13'b0001001100000: data_out = 18'h387ba; 13'b0001001100001: data_out = 18'h3d8bc; 13'b0001001100010: data_out = 18'h3d964; 13'b0001001100011: data_out = 18'h3c64c; 13'b0001001100100: data_out = 18'h3ef9e; 13'b0001001100101: data_out = 18'h3e010; 13'b0001001100110: data_out = 18'h3f276; 13'b0001001100111: data_out = 18'h3ebcc; 13'b0001001101000: data_out = 18'h01944; 13'b0001001101001: data_out = 18'h03b8a; 13'b0001001101010: data_out = 18'h3dc6e; 13'b0001001101011: data_out = 18'h3c7fa; 13'b0001001101100: data_out = 18'h03dd8; 13'b0001001101101: data_out = 18'h3fb5a; 13'b0001001101110: data_out = 18'h00c5e; 13'b0001001101111: data_out = 18'h00be6; 13'b0001001110000: data_out = 18'h02372; 13'b0001001110001: data_out = 18'h026ec; 13'b0001001110010: data_out = 18'h044ce; 13'b0001001110011: data_out = 18'h04d50; 13'b0001001110100: data_out = 18'h0243c; 13'b0001001110101: data_out = 18'h03a26; 13'b0001001110110: data_out = 18'h03532; 13'b0001001110111: data_out = 18'h065ba; 13'b0001001111000: data_out = 18'h3fd16; 13'b0001001111001: data_out = 18'h003b2; 13'b0001001111010: data_out = 18'h09206; 13'b0001001111011: data_out = 18'h06af6; 13'b0001001111100: data_out = 18'h02a3c; 13'b0001001111101: data_out = 18'h3f04c; 13'b0001001111110: data_out = 18'h064f8; 13'b0001001111111: data_out = 18'h07b72; 13'b0001010000000: data_out = 18'h01b54; 13'b0001010000001: data_out = 18'h05866; 13'b0001010000010: data_out = 18'h0a75c; 13'b0001010000011: data_out = 18'h05e8c; 13'b0001010000100: data_out = 18'h04218; 13'b0001010000101: data_out = 18'h0aa9e; 13'b0001010000110: data_out = 18'h08a6a; 13'b0001010000111: data_out = 18'h03216; 13'b0001010001000: data_out = 18'h08946; 13'b0001010001001: data_out = 18'h099da; 13'b0001010001010: data_out = 18'h03230; 13'b0001010001011: data_out = 18'h04498; 13'b0001010001100: data_out = 18'h0b45e; 13'b0001010001101: data_out = 18'h064e0; 13'b0001010001110: data_out = 18'h071ca; 13'b0001010001111: data_out = 18'h06242; 13'b0001010010000: data_out = 18'h0611c; 13'b0001010010001: data_out = 18'h043d2; 13'b0001010010010: data_out = 18'h042a2; 13'b0001010010011: data_out = 18'h05a9c; 13'b0001010010100: data_out = 18'h03724; 13'b0001010010101: data_out = 18'h02b30; 13'b0001010010110: data_out = 18'h02f12; 13'b0001010010111: data_out = 18'h04db8; 13'b0001010011000: data_out = 18'h0072c; 13'b0001010011001: data_out = 18'h00310; 13'b0001010011010: data_out = 18'h3e3be; 13'b0001010011011: data_out = 18'h00734; 13'b0001010011100: data_out = 18'h3cfde; 13'b0001010011101: data_out = 18'h02888; 13'b0001010011110: data_out = 18'h059b4; 13'b0001010011111: data_out = 18'h3cf20; 13'b0001010100000: data_out = 18'h00848; 13'b0001010100001: data_out = 18'h3f908; 13'b0001010100010: data_out = 18'h3f8ce; 13'b0001010100011: data_out = 18'h3eb2c; 13'b0001010100100: data_out = 18'h3ed50; 13'b0001010100101: data_out = 18'h3df1c; 13'b0001010100110: data_out = 18'h3c2fc; 13'b0001010100111: data_out = 18'h3b14e; 13'b0001010101000: data_out = 18'h3f3e0; 13'b0001010101001: data_out = 18'h005c0; 13'b0001010101010: data_out = 18'h3a69e; 13'b0001010101011: data_out = 18'h3c19c; 13'b0001010101100: data_out = 18'h3e618; 13'b0001010101101: data_out = 18'h3b4ae; 13'b0001010101110: data_out = 18'h3557a; 13'b0001010101111: data_out = 18'h38366; 13'b0001010110000: data_out = 18'h3cf0a; 13'b0001010110001: data_out = 18'h3a738; 13'b0001010110010: data_out = 18'h36edc; 13'b0001010110011: data_out = 18'h33ecc; 13'b0001010110100: data_out = 18'h373e2; 13'b0001010110101: data_out = 18'h3a2c6; 13'b0001010110110: data_out = 18'h3cd46; 13'b0001010110111: data_out = 18'h3d9e2; 13'b0001010111000: data_out = 18'h393c2; 13'b0001010111001: data_out = 18'h35118; 13'b0001010111010: data_out = 18'h3f64c; 13'b0001010111011: data_out = 18'h3d4da; 13'b0001010111100: data_out = 18'h33cf6; 13'b0001010111101: data_out = 18'h39ce4; 13'b0001010111110: data_out = 18'h3cf96; 13'b0001010111111: data_out = 18'h3d5ac; 13'b0001011000000: data_out = 18'h3732a; 13'b0001011000001: data_out = 18'h3a52c; 13'b0001011000010: data_out = 18'h3d53e; 13'b0001011000011: data_out = 18'h3926c; 13'b0001011000100: data_out = 18'h3bcbc; 13'b0001011000101: data_out = 18'h01df4; 13'b0001011000110: data_out = 18'h3cfb6; 13'b0001011000111: data_out = 18'h3d022; 13'b0001011001000: data_out = 18'h0109c; 13'b0001011001001: data_out = 18'h3fee6; 13'b0001011001010: data_out = 18'h3c720; 13'b0001011001011: data_out = 18'h3bcf2; 13'b0001011001100: data_out = 18'h03578; 13'b0001011001101: data_out = 18'h3d164; 13'b0001011001110: data_out = 18'h3b9c6; 13'b0001011001111: data_out = 18'h02b50; 13'b0001011010000: data_out = 18'h3d012; 13'b0001011010001: data_out = 18'h3cd54; 13'b0001011010010: data_out = 18'h00b1e; 13'b0001011010011: data_out = 18'h3fc76; 13'b0001011010100: data_out = 18'h3be2e; 13'b0001011010101: data_out = 18'h00cbc; 13'b0001011010110: data_out = 18'h0003e; 13'b0001011010111: data_out = 18'h3cd52; 13'b0001011011000: data_out = 18'h3ee5a; 13'b0001011011001: data_out = 18'h3fc6c; 13'b0001011011010: data_out = 18'h00022; 13'b0001011011011: data_out = 18'h001c8; 13'b0001011011100: data_out = 18'h00c72; 13'b0001011011101: data_out = 18'h00412; 13'b0001011011110: data_out = 18'h02890; 13'b0001011011111: data_out = 18'h041f6; 13'b0001011100000: data_out = 18'h3fd06; 13'b0001011100001: data_out = 18'h3e8f4; 13'b0001011100010: data_out = 18'h05602; 13'b0001011100011: data_out = 18'h035c8; 13'b0001011100100: data_out = 18'h00b4a; 13'b0001011100101: data_out = 18'h01886; 13'b0001011100110: data_out = 18'h08038; 13'b0001011100111: data_out = 18'h044f6; 13'b0001011101000: data_out = 18'h3f952; 13'b0001011101001: data_out = 18'h051ae; 13'b0001011101010: data_out = 18'h05252; 13'b0001011101011: data_out = 18'h085a2; 13'b0001011101100: data_out = 18'h080a8; 13'b0001011101101: data_out = 18'h023e0; 13'b0001011101110: data_out = 18'h3fd8a; 13'b0001011101111: data_out = 18'h030ae; 13'b0001011110000: data_out = 18'h06a3c; 13'b0001011110001: data_out = 18'h08ca2; 13'b0001011110010: data_out = 18'h04e76; 13'b0001011110011: data_out = 18'h065c0; 13'b0001011110100: data_out = 18'h06842; 13'b0001011110101: data_out = 18'h05d16; 13'b0001011110110: data_out = 18'h08612; 13'b0001011110111: data_out = 18'h07898; 13'b0001011111000: data_out = 18'h07330; 13'b0001011111001: data_out = 18'h06e66; 13'b0001011111010: data_out = 18'h05e3a; 13'b0001011111011: data_out = 18'h03bea; 13'b0001011111100: data_out = 18'h02db8; 13'b0001011111101: data_out = 18'h045da; 13'b0001011111110: data_out = 18'h0296e; 13'b0001011111111: data_out = 18'h04eda; 13'b0001100000000: data_out = 18'h06d46; 13'b0001100000001: data_out = 18'h02e72; 13'b0001100000010: data_out = 18'h018be; 13'b0001100000011: data_out = 18'h03286; 13'b0001100000100: data_out = 18'h01a20; 13'b0001100000101: data_out = 18'h03202; 13'b0001100000110: data_out = 18'h00a30; 13'b0001100000111: data_out = 18'h3effc; 13'b0001100001000: data_out = 18'h02670; 13'b0001100001001: data_out = 18'h0173c; 13'b0001100001010: data_out = 18'h3d4ba; 13'b0001100001011: data_out = 18'h3f7ea; 13'b0001100001100: data_out = 18'h030a4; 13'b0001100001101: data_out = 18'h0145c; 13'b0001100001110: data_out = 18'h3e86a; 13'b0001100001111: data_out = 18'h3dd68; 13'b0001100010000: data_out = 18'h3ed7e; 13'b0001100010001: data_out = 18'h3ea26; 13'b0001100010010: data_out = 18'h3c820; 13'b0001100010011: data_out = 18'h3d806; 13'b0001100010100: data_out = 18'h01b92; 13'b0001100010101: data_out = 18'h3d6f0; 13'b0001100010110: data_out = 18'h38afa; 13'b0001100010111: data_out = 18'h3d268; 13'b0001100011000: data_out = 18'h3cb20; 13'b0001100011001: data_out = 18'h37e74; 13'b0001100011010: data_out = 18'h3b8ee; 13'b0001100011011: data_out = 18'h3f7be; 13'b0001100011100: data_out = 18'h3c77c; 13'b0001100011101: data_out = 18'h365bc; 13'b0001100011110: data_out = 18'h3c7d2; 13'b0001100011111: data_out = 18'h3fb10; 13'b0001100100000: data_out = 18'h37550; 13'b0001100100001: data_out = 18'h3a91c; 13'b0001100100010: data_out = 18'h00982; 13'b0001100100011: data_out = 18'h3cdce; 13'b0001100100100: data_out = 18'h3a77a; 13'b0001100100101: data_out = 18'h38696; 13'b0001100100110: data_out = 18'h38252; 13'b0001100100111: data_out = 18'h390c8; 13'b0001100101000: data_out = 18'h3d882; 13'b0001100101001: data_out = 18'h3deb6; 13'b0001100101010: data_out = 18'h3cdd6; 13'b0001100101011: data_out = 18'h3b356; 13'b0001100101100: data_out = 18'h38534; 13'b0001100101101: data_out = 18'h3722c; 13'b0001100101110: data_out = 18'h3cb5e; 13'b0001100101111: data_out = 18'h3c02e; 13'b0001100110000: data_out = 18'h3a766; 13'b0001100110001: data_out = 18'h3fdf0; 13'b0001100110010: data_out = 18'h3b824; 13'b0001100110011: data_out = 18'h3fe6e; 13'b0001100110100: data_out = 18'h3d5b8; 13'b0001100110101: data_out = 18'h37542; 13'b0001100110110: data_out = 18'h3fb3a; 13'b0001100110111: data_out = 18'h3e0f4; 13'b0001100111000: data_out = 18'h39668; 13'b0001100111001: data_out = 18'h3ec44; 13'b0001100111010: data_out = 18'h0022a; 13'b0001100111011: data_out = 18'h3a44c; 13'b0001100111100: data_out = 18'h3b754; 13'b0001100111101: data_out = 18'h3f146; 13'b0001100111110: data_out = 18'h02464; 13'b0001100111111: data_out = 18'h3ee98; 13'b0001101000000: data_out = 18'h39af6; 13'b0001101000001: data_out = 18'h01370; 13'b0001101000010: data_out = 18'h02766; 13'b0001101000011: data_out = 18'h3eddc; 13'b0001101000100: data_out = 18'h002b4; 13'b0001101000101: data_out = 18'h3fed4; 13'b0001101000110: data_out = 18'h0373c; 13'b0001101000111: data_out = 18'h073ae; 13'b0001101001000: data_out = 18'h3ed40; 13'b0001101001001: data_out = 18'h0135a; 13'b0001101001010: data_out = 18'h04952; 13'b0001101001011: data_out = 18'h3eac2; 13'b0001101001100: data_out = 18'h01820; 13'b0001101001101: data_out = 18'h08c4c; 13'b0001101001110: data_out = 18'h00bf6; 13'b0001101001111: data_out = 18'h3d4e2; 13'b0001101010000: data_out = 18'h04718; 13'b0001101010001: data_out = 18'h036e6; 13'b0001101010010: data_out = 18'h3c618; 13'b0001101010011: data_out = 18'h03abc; 13'b0001101010100: data_out = 18'h093bc; 13'b0001101010101: data_out = 18'h043ee; 13'b0001101010110: data_out = 18'h01132; 13'b0001101010111: data_out = 18'h03d10; 13'b0001101011000: data_out = 18'h032b6; 13'b0001101011001: data_out = 18'h02118; 13'b0001101011010: data_out = 18'h004c6; 13'b0001101011011: data_out = 18'h08214; 13'b0001101011100: data_out = 18'h05074; 13'b0001101011101: data_out = 18'h00d94; 13'b0001101011110: data_out = 18'h07c42; 13'b0001101011111: data_out = 18'h06cc0; 13'b0001101100000: data_out = 18'h0689c; 13'b0001101100001: data_out = 18'h0254c; 13'b0001101100010: data_out = 18'h00962; 13'b0001101100011: data_out = 18'h07e26; 13'b0001101100100: data_out = 18'h09a02; 13'b0001101100101: data_out = 18'h04058; 13'b0001101100110: data_out = 18'h0228c; 13'b0001101100111: data_out = 18'h07bf0; 13'b0001101101000: data_out = 18'h03478; 13'b0001101101001: data_out = 18'h057f6; 13'b0001101101010: data_out = 18'h07b5e; 13'b0001101101011: data_out = 18'h012c8; 13'b0001101101100: data_out = 18'h03a2e; 13'b0001101101101: data_out = 18'h06b20; 13'b0001101101110: data_out = 18'h3f85c; 13'b0001101101111: data_out = 18'h04cea; 13'b0001101110000: data_out = 18'h0606e; 13'b0001101110001: data_out = 18'h020e6; 13'b0001101110010: data_out = 18'h03ec0; 13'b0001101110011: data_out = 18'h3f730; 13'b0001101110100: data_out = 18'h3c46a; 13'b0001101110101: data_out = 18'h00852; 13'b0001101110110: data_out = 18'h037dc; 13'b0001101110111: data_out = 18'h01d24; 13'b0001101111000: data_out = 18'h02392; 13'b0001101111001: data_out = 18'h005a8; 13'b0001101111010: data_out = 18'h0034c; 13'b0001101111011: data_out = 18'h3eb3e; 13'b0001101111100: data_out = 18'h3f46e; 13'b0001101111101: data_out = 18'h3a162; 13'b0001101111110: data_out = 18'h3d328; 13'b0001101111111: data_out = 18'h04b32; 13'b0001110000000: data_out = 18'h3df7a; 13'b0001110000001: data_out = 18'h3e2c2; 13'b0001110000010: data_out = 18'h0091a; 13'b0001110000011: data_out = 18'h3c090; 13'b0001110000100: data_out = 18'h38be0; 13'b0001110000101: data_out = 18'h3b434; 13'b0001110000110: data_out = 18'h02b30; 13'b0001110000111: data_out = 18'h008da; 13'b0001110001000: data_out = 18'h39d68; 13'b0001110001001: data_out = 18'h3dd30; 13'b0001110001010: data_out = 18'h3c31c; 13'b0001110001011: data_out = 18'h3eb02; 13'b0001110001100: data_out = 18'h3ca54; 13'b0001110001101: data_out = 18'h3c3cc; 13'b0001110001110: data_out = 18'h3d0a0; 13'b0001110001111: data_out = 18'h399ec; 13'b0001110010000: data_out = 18'h38ef6; 13'b0001110010001: data_out = 18'h3dc94; 13'b0001110010010: data_out = 18'h3ef78; 13'b0001110010011: data_out = 18'h3a990; 13'b0001110010100: data_out = 18'h3c6e6; 13'b0001110010101: data_out = 18'h01d48; 13'b0001110010110: data_out = 18'h3f392; 13'b0001110010111: data_out = 18'h3a90e; 13'b0001110011000: data_out = 18'h38dca; 13'b0001110011001: data_out = 18'h3c2e6; 13'b0001110011010: data_out = 18'h3da9e; 13'b0001110011011: data_out = 18'h3abe6; 13'b0001110011100: data_out = 18'h38950; 13'b0001110011101: data_out = 18'h3c2ec; 13'b0001110011110: data_out = 18'h3ef68; 13'b0001110011111: data_out = 18'h3a74a; 13'b0001110100000: data_out = 18'h39c40; 13'b0001110100001: data_out = 18'h3d036; 13'b0001110100010: data_out = 18'h3c0ae; 13'b0001110100011: data_out = 18'h3aee0; 13'b0001110100100: data_out = 18'h3e17a; 13'b0001110100101: data_out = 18'h3cff4; 13'b0001110100110: data_out = 18'h3ce28; 13'b0001110100111: data_out = 18'h3d53a; 13'b0001110101000: data_out = 18'h3e17c; 13'b0001110101001: data_out = 18'h3d8e8; 13'b0001110101010: data_out = 18'h3cf96; 13'b0001110101011: data_out = 18'h3c0ba; 13'b0001110101100: data_out = 18'h3d13c; 13'b0001110101101: data_out = 18'h3ffc6; 13'b0001110101110: data_out = 18'h0016e; 13'b0001110101111: data_out = 18'h3e91a; 13'b0001110110000: data_out = 18'h0159e; 13'b0001110110001: data_out = 18'h02774; 13'b0001110110010: data_out = 18'h3baea; 13'b0001110110011: data_out = 18'h3e50a; 13'b0001110110100: data_out = 18'h02380; 13'b0001110110101: data_out = 18'h01580; 13'b0001110110110: data_out = 18'h0024c; 13'b0001110110111: data_out = 18'h01a52; 13'b0001110111000: data_out = 18'h03072; 13'b0001110111001: data_out = 18'h03234; 13'b0001110111010: data_out = 18'h02dfa; 13'b0001110111011: data_out = 18'h0346a; 13'b0001110111100: data_out = 18'h0164c; 13'b0001110111101: data_out = 18'h034ba; 13'b0001110111110: data_out = 18'h03226; 13'b0001110111111: data_out = 18'h025a6; 13'b0001111000000: data_out = 18'h02a76; 13'b0001111000001: data_out = 18'h05382; 13'b0001111000010: data_out = 18'h05372; 13'b0001111000011: data_out = 18'h044aa; 13'b0001111000100: data_out = 18'h05efc; 13'b0001111000101: data_out = 18'h036be; 13'b0001111000110: data_out = 18'h0236c; 13'b0001111000111: data_out = 18'h03b16; 13'b0001111001000: data_out = 18'h01dc8; 13'b0001111001001: data_out = 18'h0157c; 13'b0001111001010: data_out = 18'h02ea8; 13'b0001111001011: data_out = 18'h04f96; 13'b0001111001100: data_out = 18'h017dc; 13'b0001111001101: data_out = 18'h01bf0; 13'b0001111001110: data_out = 18'h07052; 13'b0001111001111: data_out = 18'h034b0; 13'b0001111010000: data_out = 18'h006a4; 13'b0001111010001: data_out = 18'h039be; 13'b0001111010010: data_out = 18'h0389a; 13'b0001111010011: data_out = 18'h03de4; 13'b0001111010100: data_out = 18'h05b18; 13'b0001111010101: data_out = 18'h06fbc; 13'b0001111010110: data_out = 18'h01714; 13'b0001111010111: data_out = 18'h3fac4; 13'b0001111011000: data_out = 18'h04c58; 13'b0001111011001: data_out = 18'h041a8; 13'b0001111011010: data_out = 18'h03748; 13'b0001111011011: data_out = 18'h05e40; 13'b0001111011100: data_out = 18'h02f92; 13'b0001111011101: data_out = 18'h03c78; 13'b0001111011110: data_out = 18'h03208; 13'b0001111011111: data_out = 18'h01ad6; 13'b0001111100000: data_out = 18'h00024; 13'b0001111100001: data_out = 18'h04b78; 13'b0001111100010: data_out = 18'h046c6; 13'b0001111100011: data_out = 18'h3f06a; 13'b0001111100100: data_out = 18'h026ae; 13'b0001111100101: data_out = 18'h0204e; 13'b0001111100110: data_out = 18'h00b78; 13'b0001111100111: data_out = 18'h0179a; 13'b0001111101000: data_out = 18'h3e5d0; 13'b0001111101001: data_out = 18'h02694; 13'b0001111101010: data_out = 18'h02936; 13'b0001111101011: data_out = 18'h3d31c; 13'b0001111101100: data_out = 18'h01dbe; 13'b0001111101101: data_out = 18'h042b2; 13'b0001111101110: data_out = 18'h3eca8; 13'b0001111101111: data_out = 18'h0047c; 13'b0001111110000: data_out = 18'h3e65a; 13'b0001111110001: data_out = 18'h3c936; 13'b0001111110010: data_out = 18'h0069c; 13'b0001111110011: data_out = 18'h3f056; 13'b0001111110100: data_out = 18'h3a6c0; 13'b0001111110101: data_out = 18'h3840c; 13'b0001111110110: data_out = 18'h00310; 13'b0001111110111: data_out = 18'h002e6; 13'b0001111111000: data_out = 18'h3a68a; 13'b0001111111001: data_out = 18'h3c704; 13'b0001111111010: data_out = 18'h3a970; 13'b0001111111011: data_out = 18'h3b05e; 13'b0001111111100: data_out = 18'h3d39e; 13'b0001111111101: data_out = 18'h3c408; 13'b0001111111110: data_out = 18'h39fd0; 13'b0001111111111: data_out = 18'h3c3a8; 13'b0010000000000: data_out = 18'h3eac6; 13'b0010000000001: data_out = 18'h3af60; 13'b0010000000010: data_out = 18'h3a4ba; 13'b0010000000011: data_out = 18'h3dc2a; 13'b0010000000100: data_out = 18'h3af00; 13'b0010000000101: data_out = 18'h3a416; 13'b0010000000110: data_out = 18'h3d872; 13'b0010000000111: data_out = 18'h3d448; 13'b0010000001000: data_out = 18'h3af52; 13'b0010000001001: data_out = 18'h3c750; 13'b0010000001010: data_out = 18'h3bfee; 13'b0010000001011: data_out = 18'h3d89e; 13'b0010000001100: data_out = 18'h3c83c; 13'b0010000001101: data_out = 18'h397fa; 13'b0010000001110: data_out = 18'h3f8ca; 13'b0010000001111: data_out = 18'h3e634; 13'b0010000010000: data_out = 18'h3dc32; 13'b0010000010001: data_out = 18'h3d312; 13'b0010000010010: data_out = 18'h3f346; 13'b0010000010011: data_out = 18'h3b8fa; 13'b0010000010100: data_out = 18'h3e5d2; 13'b0010000010101: data_out = 18'h01a1c; 13'b0010000010110: data_out = 18'h3aac4; 13'b0010000010111: data_out = 18'h3945a; 13'b0010000011000: data_out = 18'h3c47c; 13'b0010000011001: data_out = 18'h001fa; 13'b0010000011010: data_out = 18'h0155c; 13'b0010000011011: data_out = 18'h3d4bc; 13'b0010000011100: data_out = 18'h3df58; 13'b0010000011101: data_out = 18'h3cd30; 13'b0010000011110: data_out = 18'h3d934; 13'b0010000011111: data_out = 18'h0390e; 13'b0010000100000: data_out = 18'h01a8a; 13'b0010000100001: data_out = 18'h3a8ea; 13'b0010000100010: data_out = 18'h00d5c; 13'b0010000100011: data_out = 18'h027ea; 13'b0010000100100: data_out = 18'h3cd8e; 13'b0010000100101: data_out = 18'h03472; 13'b0010000100110: data_out = 18'h033dc; 13'b0010000100111: data_out = 18'h0045a; 13'b0010000101000: data_out = 18'h04946; 13'b0010000101001: data_out = 18'h05046; 13'b0010000101010: data_out = 18'h0008e; 13'b0010000101011: data_out = 18'h3ef56; 13'b0010000101100: data_out = 18'h010a2; 13'b0010000101101: data_out = 18'h01894; 13'b0010000101110: data_out = 18'h04b74; 13'b0010000101111: data_out = 18'h02528; 13'b0010000110000: data_out = 18'h063c6; 13'b0010000110001: data_out = 18'h03d24; 13'b0010000110010: data_out = 18'h0298c; 13'b0010000110011: data_out = 18'h0443c; 13'b0010000110100: data_out = 18'h0377e; 13'b0010000110101: data_out = 18'h03b82; 13'b0010000110110: data_out = 18'h03fe0; 13'b0010000110111: data_out = 18'h067e4; 13'b0010000111000: data_out = 18'h02726; 13'b0010000111001: data_out = 18'h04902; 13'b0010000111010: data_out = 18'h05b20; 13'b0010000111011: data_out = 18'h03b70; 13'b0010000111100: data_out = 18'h035d8; 13'b0010000111101: data_out = 18'h04738; 13'b0010000111110: data_out = 18'h04712; 13'b0010000111111: data_out = 18'h02a56; 13'b0010001000000: data_out = 18'h02662; 13'b0010001000001: data_out = 18'h0316c; 13'b0010001000010: data_out = 18'h03420; 13'b0010001000011: data_out = 18'h01a94; 13'b0010001000100: data_out = 18'h05bf4; 13'b0010001000101: data_out = 18'h04de8; 13'b0010001000110: data_out = 18'h015ec; 13'b0010001000111: data_out = 18'h01458; 13'b0010001001000: data_out = 18'h0390a; 13'b0010001001001: data_out = 18'h026d0; 13'b0010001001010: data_out = 18'h3ed88; 13'b0010001001011: data_out = 18'h04576; 13'b0010001001100: data_out = 18'h0161e; 13'b0010001001101: data_out = 18'h01684; 13'b0010001001110: data_out = 18'h000c2; 13'b0010001001111: data_out = 18'h00632; 13'b0010001010000: data_out = 18'h02fb6; 13'b0010001010001: data_out = 18'h03312; 13'b0010001010010: data_out = 18'h3eb76; 13'b0010001010011: data_out = 18'h3e61c; 13'b0010001010100: data_out = 18'h0310c; 13'b0010001010101: data_out = 18'h3d6d2; 13'b0010001010110: data_out = 18'h3c790; 13'b0010001010111: data_out = 18'h3f3c2; 13'b0010001011000: data_out = 18'h013dc; 13'b0010001011001: data_out = 18'h01470; 13'b0010001011010: data_out = 18'h3cf88; 13'b0010001011011: data_out = 18'h3c4dc; 13'b0010001011100: data_out = 18'h3d848; 13'b0010001011101: data_out = 18'h3fcd0; 13'b0010001011110: data_out = 18'h0110e; 13'b0010001011111: data_out = 18'h00e56; 13'b0010001100000: data_out = 18'h3c436; 13'b0010001100001: data_out = 18'h3d0e2; 13'b0010001100010: data_out = 18'h00050; 13'b0010001100011: data_out = 18'h3f754; 13'b0010001100100: data_out = 18'h3c372; 13'b0010001100101: data_out = 18'h3c888; 13'b0010001100110: data_out = 18'h3e592; 13'b0010001100111: data_out = 18'h3bc6a; 13'b0010001101000: data_out = 18'h005d8; 13'b0010001101001: data_out = 18'h006e8; 13'b0010001101010: data_out = 18'h00202; 13'b0010001101011: data_out = 18'h3cd8c; 13'b0010001101100: data_out = 18'h3d1cc; 13'b0010001101101: data_out = 18'h3f64e; 13'b0010001101110: data_out = 18'h3cbb2; 13'b0010001101111: data_out = 18'h3f2f4; 13'b0010001110000: data_out = 18'h0075c; 13'b0010001110001: data_out = 18'h3b14a; 13'b0010001110010: data_out = 18'h3afa6; 13'b0010001110011: data_out = 18'h004d8; 13'b0010001110100: data_out = 18'h3f638; 13'b0010001110101: data_out = 18'h3911c; 13'b0010001110110: data_out = 18'h3d82c; 13'b0010001110111: data_out = 18'h3f9aa; 13'b0010001111000: data_out = 18'h3bffa; 13'b0010001111001: data_out = 18'h3b468; 13'b0010001111010: data_out = 18'h3da44; 13'b0010001111011: data_out = 18'h3ea6c; 13'b0010001111100: data_out = 18'h3a28a; 13'b0010001111101: data_out = 18'h3ebd8; 13'b0010001111110: data_out = 18'h3f684; 13'b0010001111111: data_out = 18'h3b90c; 13'b0010010000000: data_out = 18'h3f666; 13'b0010010000001: data_out = 18'h3da26; 13'b0010010000010: data_out = 18'h3b0f4; 13'b0010010000011: data_out = 18'h3bcf2; 13'b0010010000100: data_out = 18'h00558; 13'b0010010000101: data_out = 18'h3ec70; 13'b0010010000110: data_out = 18'h3da6c; 13'b0010010000111: data_out = 18'h3c348; 13'b0010010001000: data_out = 18'h3dbde; 13'b0010010001001: data_out = 18'h3fb3a; 13'b0010010001010: data_out = 18'h3ed38; 13'b0010010001011: data_out = 18'h3ffdc; 13'b0010010001100: data_out = 18'h3ee86; 13'b0010010001101: data_out = 18'h3ec8e; 13'b0010010001110: data_out = 18'h0019e; 13'b0010010001111: data_out = 18'h00e12; 13'b0010010010000: data_out = 18'h3dd70; 13'b0010010010001: data_out = 18'h3ec46; 13'b0010010010010: data_out = 18'h03084; 13'b0010010010011: data_out = 18'h0010e; 13'b0010010010100: data_out = 18'h3dd88; 13'b0010010010101: data_out = 18'h00a3c; 13'b0010010010110: data_out = 18'h0134e; 13'b0010010010111: data_out = 18'h006d0; 13'b0010010011000: data_out = 18'h015fa; 13'b0010010011001: data_out = 18'h05318; 13'b0010010011010: data_out = 18'h3d978; 13'b0010010011011: data_out = 18'h3d310; 13'b0010010011100: data_out = 18'h064be; 13'b0010010011101: data_out = 18'h00a2c; 13'b0010010011110: data_out = 18'h3e38e; 13'b0010010011111: data_out = 18'h03918; 13'b0010010100000: data_out = 18'h04530; 13'b0010010100001: data_out = 18'h01ddc; 13'b0010010100010: data_out = 18'h02e74; 13'b0010010100011: data_out = 18'h3fe44; 13'b0010010100100: data_out = 18'h028c8; 13'b0010010100101: data_out = 18'h0212c; 13'b0010010100110: data_out = 18'h02d46; 13'b0010010100111: data_out = 18'h03fbc; 13'b0010010101000: data_out = 18'h03f76; 13'b0010010101001: data_out = 18'h3f02e; 13'b0010010101010: data_out = 18'h04882; 13'b0010010101011: data_out = 18'h05f14; 13'b0010010101100: data_out = 18'h3f342; 13'b0010010101101: data_out = 18'h038d6; 13'b0010010101110: data_out = 18'h022f4; 13'b0010010101111: data_out = 18'h02096; 13'b0010010110000: data_out = 18'h00c9e; 13'b0010010110001: data_out = 18'h02578; 13'b0010010110010: data_out = 18'h3ffc4; 13'b0010010110011: data_out = 18'h021b2; 13'b0010010110100: data_out = 18'h02b9c; 13'b0010010110101: data_out = 18'h3eaaa; 13'b0010010110110: data_out = 18'h02ea4; 13'b0010010110111: data_out = 18'h05248; 13'b0010010111000: data_out = 18'h036a0; 13'b0010010111001: data_out = 18'h01bd4; 13'b0010010111010: data_out = 18'h02c82; 13'b0010010111011: data_out = 18'h01668; 13'b0010010111100: data_out = 18'h0180c; 13'b0010010111101: data_out = 18'h0154a; 13'b0010010111110: data_out = 18'h00ca2; 13'b0010010111111: data_out = 18'h01d70; 13'b0010011000000: data_out = 18'h02e34; 13'b0010011000001: data_out = 18'h022be; 13'b0010011000010: data_out = 18'h3fb14; 13'b0010011000011: data_out = 18'h3fbce; 13'b0010011000100: data_out = 18'h004d0; 13'b0010011000101: data_out = 18'h03796; 13'b0010011000110: data_out = 18'h0122a; 13'b0010011000111: data_out = 18'h022ee; 13'b0010011001000: data_out = 18'h01588; 13'b0010011001001: data_out = 18'h002aa; 13'b0010011001010: data_out = 18'h01674; 13'b0010011001011: data_out = 18'h02168; 13'b0010011001100: data_out = 18'h03154; 13'b0010011001101: data_out = 18'h3e91a; 13'b0010011001110: data_out = 18'h3f7fe; 13'b0010011001111: data_out = 18'h03f72; 13'b0010011010000: data_out = 18'h3f95a; 13'b0010011010001: data_out = 18'h3d8ea; 13'b0010011010010: data_out = 18'h034c8; 13'b0010011010011: data_out = 18'h01134; 13'b0010011010100: data_out = 18'h3f150; 13'b0010011010101: data_out = 18'h03048; 13'b0010011010110: data_out = 18'h3cba2; 13'b0010011010111: data_out = 18'h3bdba; 13'b0010011011000: data_out = 18'h002aa; 13'b0010011011001: data_out = 18'h3eb2c; 13'b0010011011010: data_out = 18'h3ce0e; 13'b0010011011011: data_out = 18'h3d720; 13'b0010011011100: data_out = 18'h3e2c6; 13'b0010011011101: data_out = 18'h3d138; 13'b0010011011110: data_out = 18'h3db52; 13'b0010011011111: data_out = 18'h3aef2; 13'b0010011100000: data_out = 18'h3e2cc; 13'b0010011100001: data_out = 18'h3f4ae; 13'b0010011100010: data_out = 18'h3c5ec; 13'b0010011100011: data_out = 18'h3cb68; 13'b0010011100100: data_out = 18'h3a580; 13'b0010011100101: data_out = 18'h3aa1c; 13'b0010011100110: data_out = 18'h3db18; 13'b0010011100111: data_out = 18'h3e1a4; 13'b0010011101000: data_out = 18'h38bbe; 13'b0010011101001: data_out = 18'h3a406; 13'b0010011101010: data_out = 18'h3e014; 13'b0010011101011: data_out = 18'h3bd3c; 13'b0010011101100: data_out = 18'h3c9fe; 13'b0010011101101: data_out = 18'h3e4f8; 13'b0010011101110: data_out = 18'h3bf28; 13'b0010011101111: data_out = 18'h39c2a; 13'b0010011110000: data_out = 18'h3beee; 13'b0010011110001: data_out = 18'h014f2; 13'b0010011110010: data_out = 18'h3ebc4; 13'b0010011110011: data_out = 18'h3c042; 13'b0010011110100: data_out = 18'h3cbd0; 13'b0010011110101: data_out = 18'h3edd2; 13'b0010011110110: data_out = 18'h3b674; 13'b0010011110111: data_out = 18'h3d730; 13'b0010011111000: data_out = 18'h015e2; 13'b0010011111001: data_out = 18'h3f44c; 13'b0010011111010: data_out = 18'h018b6; 13'b0010011111011: data_out = 18'h3fc9c; 13'b0010011111100: data_out = 18'h3dad4; 13'b0010011111101: data_out = 18'h3fc30; 13'b0010011111110: data_out = 18'h013a0; 13'b0010011111111: data_out = 18'h3dd5e; 13'b0010100000000: data_out = 18'h3e8d2; 13'b0010100000001: data_out = 18'h03314; 13'b0010100000010: data_out = 18'h03562; 13'b0010100000011: data_out = 18'h01518; 13'b0010100000100: data_out = 18'h03862; 13'b0010100000101: data_out = 18'h3f878; 13'b0010100000110: data_out = 18'h3dcd0; 13'b0010100000111: data_out = 18'h01ef4; 13'b0010100001000: data_out = 18'h02988; 13'b0010100001001: data_out = 18'h02b24; 13'b0010100001010: data_out = 18'h3f3e4; 13'b0010100001011: data_out = 18'h047c8; 13'b0010100001100: data_out = 18'h01760; 13'b0010100001101: data_out = 18'h3d96a; 13'b0010100001110: data_out = 18'h009e0; 13'b0010100001111: data_out = 18'h03bcc; 13'b0010100010000: data_out = 18'h013fe; 13'b0010100010001: data_out = 18'h3f7a4; 13'b0010100010010: data_out = 18'h00cc0; 13'b0010100010011: data_out = 18'h00376; 13'b0010100010100: data_out = 18'h3e568; 13'b0010100010101: data_out = 18'h00bc8; 13'b0010100010110: data_out = 18'h00e36; 13'b0010100010111: data_out = 18'h020e6; 13'b0010100011000: data_out = 18'h0131a; 13'b0010100011001: data_out = 18'h01284; 13'b0010100011010: data_out = 18'h0344a; 13'b0010100011011: data_out = 18'h03ca0; 13'b0010100011100: data_out = 18'h01c44; 13'b0010100011101: data_out = 18'h01810; 13'b0010100011110: data_out = 18'h0127c; 13'b0010100011111: data_out = 18'h0296a; 13'b0010100100000: data_out = 18'h02f7c; 13'b0010100100001: data_out = 18'h03a5a; 13'b0010100100010: data_out = 18'h0494c; 13'b0010100100011: data_out = 18'h02fc2; 13'b0010100100100: data_out = 18'h00f92; 13'b0010100100101: data_out = 18'h03c1c; 13'b0010100100110: data_out = 18'h046c6; 13'b0010100100111: data_out = 18'h01254; 13'b0010100101000: data_out = 18'h3fcf8; 13'b0010100101001: data_out = 18'h05c4e; 13'b0010100101010: data_out = 18'h04bb0; 13'b0010100101011: data_out = 18'h3fc00; 13'b0010100101100: data_out = 18'h03754; 13'b0010100101101: data_out = 18'h03ab8; 13'b0010100101110: data_out = 18'h00234; 13'b0010100101111: data_out = 18'h03ff0; 13'b0010100110000: data_out = 18'h051fc; 13'b0010100110001: data_out = 18'h3d3d2; 13'b0010100110010: data_out = 18'h3f4f4; 13'b0010100110011: data_out = 18'h02936; 13'b0010100110100: data_out = 18'h3e0ca; 13'b0010100110101: data_out = 18'h3fbba; 13'b0010100110110: data_out = 18'h02194; 13'b0010100110111: data_out = 18'h3fc1c; 13'b0010100111000: data_out = 18'h3ec84; 13'b0010100111001: data_out = 18'h002f8; 13'b0010100111010: data_out = 18'h02ce0; 13'b0010100111011: data_out = 18'h3f7ba; 13'b0010100111100: data_out = 18'h009d6; 13'b0010100111101: data_out = 18'h3d9e8; 13'b0010100111110: data_out = 18'h3dad6; 13'b0010100111111: data_out = 18'h3f060; 13'b0010101000000: data_out = 18'h3d99e; 13'b0010101000001: data_out = 18'h008ae; 13'b0010101000010: data_out = 18'h3e864; 13'b0010101000011: data_out = 18'h3e71a; 13'b0010101000100: data_out = 18'h0049a; 13'b0010101000101: data_out = 18'h3f778; 13'b0010101000110: data_out = 18'h3be9e; 13'b0010101000111: data_out = 18'h3c718; 13'b0010101001000: data_out = 18'h00ee0; 13'b0010101001001: data_out = 18'h00b82; 13'b0010101001010: data_out = 18'h3d896; 13'b0010101001011: data_out = 18'h3e518; 13'b0010101001100: data_out = 18'h3fab2; 13'b0010101001101: data_out = 18'h3de9a; 13'b0010101001110: data_out = 18'h3c95a; 13'b0010101001111: data_out = 18'h3e6ca; 13'b0010101010000: data_out = 18'h01044; 13'b0010101010001: data_out = 18'h3e7c6; 13'b0010101010010: data_out = 18'h3de44; 13'b0010101010011: data_out = 18'h3f586; 13'b0010101010100: data_out = 18'h3f022; 13'b0010101010101: data_out = 18'h3ddda; 13'b0010101010110: data_out = 18'h3de0a; 13'b0010101010111: data_out = 18'h3c650; 13'b0010101011000: data_out = 18'h3e88a; 13'b0010101011001: data_out = 18'h3f068; 13'b0010101011010: data_out = 18'h3b7be; 13'b0010101011011: data_out = 18'h3fdc2; 13'b0010101011100: data_out = 18'h3cf3e; 13'b0010101011101: data_out = 18'h3a4d8; 13'b0010101011110: data_out = 18'h01502; 13'b0010101011111: data_out = 18'h3c634; 13'b0010101100000: data_out = 18'h3b208; 13'b0010101100001: data_out = 18'h3f77a; 13'b0010101100010: data_out = 18'h3f146; 13'b0010101100011: data_out = 18'h3d4f0; 13'b0010101100100: data_out = 18'h3e774; 13'b0010101100101: data_out = 18'h3e66e; 13'b0010101100110: data_out = 18'h3e90c; 13'b0010101100111: data_out = 18'h3ef1e; 13'b0010101101000: data_out = 18'h3be62; 13'b0010101101001: data_out = 18'h3c05a; 13'b0010101101010: data_out = 18'h3f20e; 13'b0010101101011: data_out = 18'h3e8a2; 13'b0010101101100: data_out = 18'h3cb68; 13'b0010101101101: data_out = 18'h3ce84; 13'b0010101101110: data_out = 18'h01bb0; 13'b0010101101111: data_out = 18'h3e676; 13'b0010101110000: data_out = 18'h3b0dc; 13'b0010101110001: data_out = 18'h3f4e6; 13'b0010101110010: data_out = 18'h3fd82; 13'b0010101110011: data_out = 18'h021b6; 13'b0010101110100: data_out = 18'h023e8; 13'b0010101110101: data_out = 18'h3d7a4; 13'b0010101110110: data_out = 18'h3fa76; 13'b0010101110111: data_out = 18'h02a8e; 13'b0010101111000: data_out = 18'h0146e; 13'b0010101111001: data_out = 18'h3f0ee; 13'b0010101111010: data_out = 18'h00082; 13'b0010101111011: data_out = 18'h03ccc; 13'b0010101111100: data_out = 18'h3e984; 13'b0010101111101: data_out = 18'h3fefa; 13'b0010101111110: data_out = 18'h028dc; 13'b0010101111111: data_out = 18'h3fe06; 13'b0010110000000: data_out = 18'h023a4; 13'b0010110000001: data_out = 18'h02fba; 13'b0010110000010: data_out = 18'h01788; 13'b0010110000011: data_out = 18'h02c90; 13'b0010110000100: data_out = 18'h01ce0; 13'b0010110000101: data_out = 18'h02508; 13'b0010110000110: data_out = 18'h3f266; 13'b0010110000111: data_out = 18'h03b7e; 13'b0010110001000: data_out = 18'h0208c; 13'b0010110001001: data_out = 18'h3fd52; 13'b0010110001010: data_out = 18'h0020e; 13'b0010110001011: data_out = 18'h00b4c; 13'b0010110001100: data_out = 18'h015e2; 13'b0010110001101: data_out = 18'h00ce0; 13'b0010110001110: data_out = 18'h02aa6; 13'b0010110001111: data_out = 18'h02cd2; 13'b0010110010000: data_out = 18'h01d0e; 13'b0010110010001: data_out = 18'h01922; 13'b0010110010010: data_out = 18'h01fec; 13'b0010110010011: data_out = 18'h0178a; 13'b0010110010100: data_out = 18'h0195e; 13'b0010110010101: data_out = 18'h00a32; 13'b0010110010110: data_out = 18'h01804; 13'b0010110010111: data_out = 18'h04c66; 13'b0010110011000: data_out = 18'h0269a; 13'b0010110011001: data_out = 18'h3f93e; 13'b0010110011010: data_out = 18'h01b10; 13'b0010110011011: data_out = 18'h03c78; 13'b0010110011100: data_out = 18'h03364; 13'b0010110011101: data_out = 18'h0217c; 13'b0010110011110: data_out = 18'h015f4; 13'b0010110011111: data_out = 18'h03a56; 13'b0010110100000: data_out = 18'h03344; 13'b0010110100001: data_out = 18'h02186; 13'b0010110100010: data_out = 18'h00788; 13'b0010110100011: data_out = 18'h00e30; 13'b0010110100100: data_out = 18'h02a7a; 13'b0010110100101: data_out = 18'h02f2c; 13'b0010110100110: data_out = 18'h027e2; 13'b0010110100111: data_out = 18'h02e46; 13'b0010110101000: data_out = 18'h00332; 13'b0010110101001: data_out = 18'h00db0; 13'b0010110101010: data_out = 18'h03826; 13'b0010110101011: data_out = 18'h0084c; 13'b0010110101100: data_out = 18'h0097c; 13'b0010110101101: data_out = 18'h00272; 13'b0010110101110: data_out = 18'h00e2a; 13'b0010110101111: data_out = 18'h02b40; 13'b0010110110000: data_out = 18'h01696; 13'b0010110110001: data_out = 18'h3f2a2; 13'b0010110110010: data_out = 18'h00bb2; 13'b0010110110011: data_out = 18'h3fd5e; 13'b0010110110100: data_out = 18'h3ead6; 13'b0010110110101: data_out = 18'h02a5e; 13'b0010110110110: data_out = 18'h00916; 13'b0010110110111: data_out = 18'h3e33c; 13'b0010110111000: data_out = 18'h3f522; 13'b0010110111001: data_out = 18'h3faf2; 13'b0010110111010: data_out = 18'h3f062; 13'b0010110111011: data_out = 18'h3d24e; 13'b0010110111100: data_out = 18'h00adc; 13'b0010110111101: data_out = 18'h3eed4; 13'b0010110111110: data_out = 18'h3ccd0; 13'b0010110111111: data_out = 18'h3ccee; 13'b0010111000000: data_out = 18'h3dd56; 13'b0010111000001: data_out = 18'h3dd7a; 13'b0010111000010: data_out = 18'h3aae6; 13'b0010111000011: data_out = 18'h3c1ec; 13'b0010111000100: data_out = 18'h3fb22; 13'b0010111000101: data_out = 18'h3c0a6; 13'b0010111000110: data_out = 18'h3967c; 13'b0010111000111: data_out = 18'h3be20; 13'b0010111001000: data_out = 18'h3f038; 13'b0010111001001: data_out = 18'h3b926; 13'b0010111001010: data_out = 18'h39072; 13'b0010111001011: data_out = 18'h3ec06; 13'b0010111001100: data_out = 18'h3b91c; 13'b0010111001101: data_out = 18'h39f58; 13'b0010111001110: data_out = 18'h3b72e; 13'b0010111001111: data_out = 18'h3c692; 13'b0010111010000: data_out = 18'h3d328; 13'b0010111010001: data_out = 18'h3c532; 13'b0010111010010: data_out = 18'h3eade; 13'b0010111010011: data_out = 18'h3de66; 13'b0010111010100: data_out = 18'h39cd2; 13'b0010111010101: data_out = 18'h3ce50; 13'b0010111010110: data_out = 18'h3f678; 13'b0010111010111: data_out = 18'h3d9e0; 13'b0010111011000: data_out = 18'h3c5c6; 13'b0010111011001: data_out = 18'h3fbe4; 13'b0010111011010: data_out = 18'h000a4; 13'b0010111011011: data_out = 18'h3d59c; 13'b0010111011100: data_out = 18'h3ed5c; 13'b0010111011101: data_out = 18'h3f750; 13'b0010111011110: data_out = 18'h3e1ea; 13'b0010111011111: data_out = 18'h3d95e; 13'b0010111100000: data_out = 18'h3f8b0; 13'b0010111100001: data_out = 18'h0022a; 13'b0010111100010: data_out = 18'h3fe3c; 13'b0010111100011: data_out = 18'h3feee; 13'b0010111100100: data_out = 18'h00aac; 13'b0010111100101: data_out = 18'h03e34; 13'b0010111100110: data_out = 18'h032f6; 13'b0010111100111: data_out = 18'h028e4; 13'b0010111101000: data_out = 18'h02356; 13'b0010111101001: data_out = 18'h3f30e; 13'b0010111101010: data_out = 18'h01994; 13'b0010111101011: data_out = 18'h0276e; 13'b0010111101100: data_out = 18'h3f0d4; 13'b0010111101101: data_out = 18'h01f7c; 13'b0010111101110: data_out = 18'h06b2a; 13'b0010111101111: data_out = 18'h005e2; 13'b0010111110000: data_out = 18'h0019c; 13'b0010111110001: data_out = 18'h0219c; 13'b0010111110010: data_out = 18'h02fbc; 13'b0010111110011: data_out = 18'h012dc; 13'b0010111110100: data_out = 18'h3fcec; 13'b0010111110101: data_out = 18'h03a48; 13'b0010111110110: data_out = 18'h00932; 13'b0010111110111: data_out = 18'h022ac; 13'b0010111111000: data_out = 18'h02828; 13'b0010111111001: data_out = 18'h01d14; 13'b0010111111010: data_out = 18'h019c0; 13'b0010111111011: data_out = 18'h00f8e; 13'b0010111111100: data_out = 18'h02656; 13'b0010111111101: data_out = 18'h01244; 13'b0010111111110: data_out = 18'h032da; 13'b0010111111111: data_out = 18'h01296; 13'b0011000000000: data_out = 18'h3feca; 13'b0011000000001: data_out = 18'h03d38; 13'b0011000000010: data_out = 18'h05868; 13'b0011000000011: data_out = 18'h03948; 13'b0011000000100: data_out = 18'h00c46; 13'b0011000000101: data_out = 18'h00a32; 13'b0011000000110: data_out = 18'h02f78; 13'b0011000000111: data_out = 18'h0361c; 13'b0011000001000: data_out = 18'h3fece; 13'b0011000001001: data_out = 18'h3f752; 13'b0011000001010: data_out = 18'h039f2; 13'b0011000001011: data_out = 18'h05a98; 13'b0011000001100: data_out = 18'h04f90; 13'b0011000001101: data_out = 18'h01ecc; 13'b0011000001110: data_out = 18'h01910; 13'b0011000001111: data_out = 18'h00f62; 13'b0011000010000: data_out = 18'h021b4; 13'b0011000010001: data_out = 18'h049fc; 13'b0011000010010: data_out = 18'h3fe36; 13'b0011000010011: data_out = 18'h01764; 13'b0011000010100: data_out = 18'h01830; 13'b0011000010101: data_out = 18'h00300; 13'b0011000010110: data_out = 18'h00c14; 13'b0011000010111: data_out = 18'h3fe96; 13'b0011000011000: data_out = 18'h004a8; 13'b0011000011001: data_out = 18'h3f90e; 13'b0011000011010: data_out = 18'h0265c; 13'b0011000011011: data_out = 18'h0198c; 13'b0011000011100: data_out = 18'h3e1a6; 13'b0011000011101: data_out = 18'h00d8a; 13'b0011000011110: data_out = 18'h0011c; 13'b0011000011111: data_out = 18'h3e560; 13'b0011000100000: data_out = 18'h3e34a; 13'b0011000100001: data_out = 18'h3fc28; 13'b0011000100010: data_out = 18'h3efec; 13'b0011000100011: data_out = 18'h3eeae; 13'b0011000100100: data_out = 18'h3d376; 13'b0011000100101: data_out = 18'h3fbb8; 13'b0011000100110: data_out = 18'h3c004; 13'b0011000100111: data_out = 18'h3d936; 13'b0011000101000: data_out = 18'h3ed3c; 13'b0011000101001: data_out = 18'h3f866; 13'b0011000101010: data_out = 18'h3ee68; 13'b0011000101011: data_out = 18'h3b2d0; 13'b0011000101100: data_out = 18'h3dc28; 13'b0011000101101: data_out = 18'h01618; 13'b0011000101110: data_out = 18'h3bb5c; 13'b0011000101111: data_out = 18'h39520; 13'b0011000110000: data_out = 18'h3f5b0; 13'b0011000110001: data_out = 18'h3e82c; 13'b0011000110010: data_out = 18'h3cd1c; 13'b0011000110011: data_out = 18'h3c022; 13'b0011000110100: data_out = 18'h3c85a; 13'b0011000110101: data_out = 18'h3df08; 13'b0011000110110: data_out = 18'h3d1c0; 13'b0011000110111: data_out = 18'h3e17a; 13'b0011000111000: data_out = 18'h3d4ee; 13'b0011000111001: data_out = 18'h0114a; 13'b0011000111010: data_out = 18'h3e58a; 13'b0011000111011: data_out = 18'h3db8a; 13'b0011000111100: data_out = 18'h3e322; 13'b0011000111101: data_out = 18'h3e344; 13'b0011000111110: data_out = 18'h3f9e2; 13'b0011000111111: data_out = 18'h3f026; 13'b0011001000000: data_out = 18'h3df34; 13'b0011001000001: data_out = 18'h3db88; 13'b0011001000010: data_out = 18'h3df20; 13'b0011001000011: data_out = 18'h0142e; 13'b0011001000100: data_out = 18'h00bd4; 13'b0011001000101: data_out = 18'h3e348; 13'b0011001000110: data_out = 18'h3d9ac; 13'b0011001000111: data_out = 18'h3fd08; 13'b0011001001000: data_out = 18'h00f80; 13'b0011001001001: data_out = 18'h3f664; 13'b0011001001010: data_out = 18'h002ae; 13'b0011001001011: data_out = 18'h3dc94; 13'b0011001001100: data_out = 18'h3d59a; 13'b0011001001101: data_out = 18'h026d0; 13'b0011001001110: data_out = 18'h3f8da; 13'b0011001001111: data_out = 18'h3f6fc; 13'b0011001010000: data_out = 18'h00110; 13'b0011001010001: data_out = 18'h3d750; 13'b0011001010010: data_out = 18'h3ef10; 13'b0011001010011: data_out = 18'h0142e; 13'b0011001010100: data_out = 18'h02134; 13'b0011001010101: data_out = 18'h00f7a; 13'b0011001010110: data_out = 18'h3dc68; 13'b0011001010111: data_out = 18'h3f87c; 13'b0011001011000: data_out = 18'h02362; 13'b0011001011001: data_out = 18'h0026a; 13'b0011001011010: data_out = 18'h01c14; 13'b0011001011011: data_out = 18'h02700; 13'b0011001011100: data_out = 18'h0064e; 13'b0011001011101: data_out = 18'h3f4f6; 13'b0011001011110: data_out = 18'h01b28; 13'b0011001011111: data_out = 18'h0204a; 13'b0011001100000: data_out = 18'h3de6e; 13'b0011001100001: data_out = 18'h3f968; 13'b0011001100010: data_out = 18'h01f36; 13'b0011001100011: data_out = 18'h00796; 13'b0011001100100: data_out = 18'h03008; 13'b0011001100101: data_out = 18'h0007c; 13'b0011001100110: data_out = 18'h3f770; 13'b0011001100111: data_out = 18'h0163e; 13'b0011001101000: data_out = 18'h00450; 13'b0011001101001: data_out = 18'h00942; 13'b0011001101010: data_out = 18'h04388; 13'b0011001101011: data_out = 18'h0075a; 13'b0011001101100: data_out = 18'h3f410; 13'b0011001101101: data_out = 18'h01554; 13'b0011001101110: data_out = 18'h037d6; 13'b0011001101111: data_out = 18'h0295e; 13'b0011001110000: data_out = 18'h3f8c0; 13'b0011001110001: data_out = 18'h01b18; 13'b0011001110010: data_out = 18'h02a42; 13'b0011001110011: data_out = 18'h0125c; 13'b0011001110100: data_out = 18'h3f322; 13'b0011001110101: data_out = 18'h010ba; 13'b0011001110110: data_out = 18'h02d0a; 13'b0011001110111: data_out = 18'h01c04; 13'b0011001111000: data_out = 18'h3fdb2; 13'b0011001111001: data_out = 18'h3f96c; 13'b0011001111010: data_out = 18'h03a5c; 13'b0011001111011: data_out = 18'h3f97c; 13'b0011001111100: data_out = 18'h3cc68; 13'b0011001111101: data_out = 18'h01dfc; 13'b0011001111110: data_out = 18'h0248c; 13'b0011001111111: data_out = 18'h3faaa; 13'b0011010000000: data_out = 18'h3f4b6; 13'b0011010000001: data_out = 18'h0263a; 13'b0011010000010: data_out = 18'h0283a; 13'b0011010000011: data_out = 18'h3ebb0; 13'b0011010000100: data_out = 18'h02c4e; 13'b0011010000101: data_out = 18'h02076; 13'b0011010000110: data_out = 18'h3ea76; 13'b0011010000111: data_out = 18'h3f466; 13'b0011010001000: data_out = 18'h02570; 13'b0011010001001: data_out = 18'h036c6; 13'b0011010001010: data_out = 18'h00b1a; 13'b0011010001011: data_out = 18'h3f264; 13'b0011010001100: data_out = 18'h00cac; 13'b0011010001101: data_out = 18'h02c60; 13'b0011010001110: data_out = 18'h01ea8; 13'b0011010001111: data_out = 18'h3ff6e; 13'b0011010010000: data_out = 18'h00862; 13'b0011010010001: data_out = 18'h0231e; 13'b0011010010010: data_out = 18'h00ea8; 13'b0011010010011: data_out = 18'h0109c; 13'b0011010010100: data_out = 18'h3f136; 13'b0011010010101: data_out = 18'h00d8c; 13'b0011010010110: data_out = 18'h0211c; 13'b0011010010111: data_out = 18'h3f85c; 13'b0011010011000: data_out = 18'h01e40; 13'b0011010011001: data_out = 18'h00b66; 13'b0011010011010: data_out = 18'h00072; 13'b0011010011011: data_out = 18'h3fc94; 13'b0011010011100: data_out = 18'h008d6; 13'b0011010011101: data_out = 18'h01f16; 13'b0011010011110: data_out = 18'h3eb54; 13'b0011010011111: data_out = 18'h3d13a; 13'b0011010100000: data_out = 18'h3ec52; 13'b0011010100001: data_out = 18'h0120e; 13'b0011010100010: data_out = 18'h3ecce; 13'b0011010100011: data_out = 18'h3ac16; 13'b0011010100100: data_out = 18'h3f99a; 13'b0011010100101: data_out = 18'h019a0; 13'b0011010100110: data_out = 18'h3d0e6; 13'b0011010100111: data_out = 18'h3e8c6; 13'b0011010101000: data_out = 18'h00cba; 13'b0011010101001: data_out = 18'h3efb6; 13'b0011010101010: data_out = 18'h3bf9a; 13'b0011010101011: data_out = 18'h3e90e; 13'b0011010101100: data_out = 18'h3ee90; 13'b0011010101101: data_out = 18'h3a0ce; 13'b0011010101110: data_out = 18'h3c8b6; 13'b0011010101111: data_out = 18'h0195c; 13'b0011010110000: data_out = 18'h3e184; 13'b0011010110001: data_out = 18'h3e552; 13'b0011010110010: data_out = 18'h3f0dc; 13'b0011010110011: data_out = 18'h3dea4; 13'b0011010110100: data_out = 18'h3b894; 13'b0011010110101: data_out = 18'h3d286; 13'b0011010110110: data_out = 18'h00eec; 13'b0011010110111: data_out = 18'h3e1a4; 13'b0011010111000: data_out = 18'h3e48a; 13'b0011010111001: data_out = 18'h3dcfa; 13'b0011010111010: data_out = 18'h3d6ca; 13'b0011010111011: data_out = 18'h3e0da; 13'b0011010111100: data_out = 18'h3e13e; 13'b0011010111101: data_out = 18'h3f33a; 13'b0011010111110: data_out = 18'h3f498; 13'b0011010111111: data_out = 18'h0017e; 13'b0011011000000: data_out = 18'h3ea06; 13'b0011011000001: data_out = 18'h3dd0a; 13'b0011011000010: data_out = 18'h3f55c; 13'b0011011000011: data_out = 18'h3e9a6; 13'b0011011000100: data_out = 18'h3fb68; 13'b0011011000101: data_out = 18'h003fa; 13'b0011011000110: data_out = 18'h3e7c0; 13'b0011011000111: data_out = 18'h3e508; 13'b0011011001000: data_out = 18'h0013e; 13'b0011011001001: data_out = 18'h00174; 13'b0011011001010: data_out = 18'h3e320; 13'b0011011001011: data_out = 18'h3fb6c; 13'b0011011001100: data_out = 18'h021b6; 13'b0011011001101: data_out = 18'h3fb32; 13'b0011011001110: data_out = 18'h3fc3e; 13'b0011011001111: data_out = 18'h3f0ac; 13'b0011011010000: data_out = 18'h3e7f4; 13'b0011011010001: data_out = 18'h00048; 13'b0011011010010: data_out = 18'h00912; 13'b0011011010011: data_out = 18'h015a4; 13'b0011011010100: data_out = 18'h3f818; 13'b0011011010101: data_out = 18'h0073a; 13'b0011011010110: data_out = 18'h00276; 13'b0011011010111: data_out = 18'h3fb52; 13'b0011011011000: data_out = 18'h0265a; 13'b0011011011001: data_out = 18'h3edf6; 13'b0011011011010: data_out = 18'h00374; 13'b0011011011011: data_out = 18'h0330e; 13'b0011011011100: data_out = 18'h006e6; 13'b0011011011101: data_out = 18'h3f8ec; 13'b0011011011110: data_out = 18'h01ed0; 13'b0011011011111: data_out = 18'h02fd6; 13'b0011011100000: data_out = 18'h03310; 13'b0011011100001: data_out = 18'h3fc36; 13'b0011011100010: data_out = 18'h02646; 13'b0011011100011: data_out = 18'h01ccc; 13'b0011011100100: data_out = 18'h020bc; 13'b0011011100101: data_out = 18'h02956; 13'b0011011100110: data_out = 18'h011c4; 13'b0011011100111: data_out = 18'h001b4; 13'b0011011101000: data_out = 18'h04bb8; 13'b0011011101001: data_out = 18'h0570a; 13'b0011011101010: data_out = 18'h3ec86; 13'b0011011101011: data_out = 18'h3eab0; 13'b0011011101100: data_out = 18'h04740; 13'b0011011101101: data_out = 18'h046fc; 13'b0011011101110: data_out = 18'h0063a; 13'b0011011101111: data_out = 18'h02f14; 13'b0011011110000: data_out = 18'h04a82; 13'b0011011110001: data_out = 18'h00486; 13'b0011011110010: data_out = 18'h004f4; 13'b0011011110011: data_out = 18'h02cf6; 13'b0011011110100: data_out = 18'h01a62; 13'b0011011110101: data_out = 18'h00e28; 13'b0011011110110: data_out = 18'h02d44; 13'b0011011110111: data_out = 18'h0187c; 13'b0011011111000: data_out = 18'h003e8; 13'b0011011111001: data_out = 18'h0092e; 13'b0011011111010: data_out = 18'h01a94; 13'b0011011111011: data_out = 18'h005be; 13'b0011011111100: data_out = 18'h0202a; 13'b0011011111101: data_out = 18'h04032; 13'b0011011111110: data_out = 18'h00b60; 13'b0011011111111: data_out = 18'h3f84a; 13'b0011100000000: data_out = 18'h022bc; 13'b0011100000001: data_out = 18'h00aca; 13'b0011100000010: data_out = 18'h00e0e; 13'b0011100000011: data_out = 18'h01740; 13'b0011100000100: data_out = 18'h00318; 13'b0011100000101: data_out = 18'h3ee22; 13'b0011100000110: data_out = 18'h01ebe; 13'b0011100000111: data_out = 18'h01248; 13'b0011100001000: data_out = 18'h3ee82; 13'b0011100001001: data_out = 18'h00344; 13'b0011100001010: data_out = 18'h3ff12; 13'b0011100001011: data_out = 18'h3ee0e; 13'b0011100001100: data_out = 18'h3f5cc; 13'b0011100001101: data_out = 18'h01388; 13'b0011100001110: data_out = 18'h3cd72; 13'b0011100001111: data_out = 18'h3ec78; 13'b0011100010000: data_out = 18'h00ca4; 13'b0011100010001: data_out = 18'h3bb8a; 13'b0011100010010: data_out = 18'h3d484; 13'b0011100010011: data_out = 18'h3e6c8; 13'b0011100010100: data_out = 18'h3f690; 13'b0011100010101: data_out = 18'h3f078; 13'b0011100010110: data_out = 18'h3d330; 13'b0011100010111: data_out = 18'h3d0a4; 13'b0011100011000: data_out = 18'h3d080; 13'b0011100011001: data_out = 18'h3d022; 13'b0011100011010: data_out = 18'h3cee6; 13'b0011100011011: data_out = 18'h3e526; 13'b0011100011100: data_out = 18'h3d98c; 13'b0011100011101: data_out = 18'h3afa4; 13'b0011100011110: data_out = 18'h3c6d8; 13'b0011100011111: data_out = 18'h00172; 13'b0011100100000: data_out = 18'h3f744; 13'b0011100100001: data_out = 18'h3c26c; 13'b0011100100010: data_out = 18'h3d412; 13'b0011100100011: data_out = 18'h3fe0a; 13'b0011100100100: data_out = 18'h3d98e; 13'b0011100100101: data_out = 18'h3d2b8; 13'b0011100100110: data_out = 18'h3f226; 13'b0011100100111: data_out = 18'h3e80e; 13'b0011100101000: data_out = 18'h3e7c8; 13'b0011100101001: data_out = 18'h01900; 13'b0011100101010: data_out = 18'h3fa2e; 13'b0011100101011: data_out = 18'h3ce0e; 13'b0011100101100: data_out = 18'h3d890; 13'b0011100101101: data_out = 18'h006b4; 13'b0011100101110: data_out = 18'h0008c; 13'b0011100101111: data_out = 18'h3f52e; 13'b0011100110000: data_out = 18'h003ce; 13'b0011100110001: data_out = 18'h3fa84; 13'b0011100110010: data_out = 18'h0088c; 13'b0011100110011: data_out = 18'h00d32; 13'b0011100110100: data_out = 18'h00c52; 13'b0011100110101: data_out = 18'h3f468; 13'b0011100110110: data_out = 18'h004b2; 13'b0011100110111: data_out = 18'h3ea0c; 13'b0011100111000: data_out = 18'h3ea24; 13'b0011100111001: data_out = 18'h3f9d2; 13'b0011100111010: data_out = 18'h007fc; 13'b0011100111011: data_out = 18'h3fa74; 13'b0011100111100: data_out = 18'h3e2d4; 13'b0011100111101: data_out = 18'h0068e; 13'b0011100111110: data_out = 18'h3f9ba; 13'b0011100111111: data_out = 18'h3fb32; 13'b0011101000000: data_out = 18'h01b66; 13'b0011101000001: data_out = 18'h3f43a; 13'b0011101000010: data_out = 18'h3e37c; 13'b0011101000011: data_out = 18'h009bc; 13'b0011101000100: data_out = 18'h02a82; 13'b0011101000101: data_out = 18'h02af0; 13'b0011101000110: data_out = 18'h3eadc; 13'b0011101000111: data_out = 18'h3f9e6; 13'b0011101001000: data_out = 18'h3ff72; 13'b0011101001001: data_out = 18'h3e7f4; 13'b0011101001010: data_out = 18'h0051e; 13'b0011101001011: data_out = 18'h012b0; 13'b0011101001100: data_out = 18'h009e0; 13'b0011101001101: data_out = 18'h3d31a; 13'b0011101001110: data_out = 18'h00842; 13'b0011101001111: data_out = 18'h02e00; 13'b0011101010000: data_out = 18'h3e9dc; 13'b0011101010001: data_out = 18'h3e04a; 13'b0011101010010: data_out = 18'h00bc4; 13'b0011101010011: data_out = 18'h003a6; 13'b0011101010100: data_out = 18'h003bc; 13'b0011101010101: data_out = 18'h02368; 13'b0011101010110: data_out = 18'h002da; 13'b0011101010111: data_out = 18'h0109a; 13'b0011101011000: data_out = 18'h018c4; 13'b0011101011001: data_out = 18'h00d0c; 13'b0011101011010: data_out = 18'h00ffa; 13'b0011101011011: data_out = 18'h027f0; 13'b0011101011100: data_out = 18'h0228e; 13'b0011101011101: data_out = 18'h0154c; 13'b0011101011110: data_out = 18'h015b6; 13'b0011101011111: data_out = 18'h03c16; 13'b0011101100000: data_out = 18'h027b4; 13'b0011101100001: data_out = 18'h02bb0; 13'b0011101100010: data_out = 18'h041a6; 13'b0011101100011: data_out = 18'h021b0; 13'b0011101100100: data_out = 18'h00240; 13'b0011101100101: data_out = 18'h0222c; 13'b0011101100110: data_out = 18'h02d36; 13'b0011101100111: data_out = 18'h0071a; 13'b0011101101000: data_out = 18'h02d14; 13'b0011101101001: data_out = 18'h03d06; 13'b0011101101010: data_out = 18'h01b8e; 13'b0011101101011: data_out = 18'h00430; 13'b0011101101100: data_out = 18'h01aa0; 13'b0011101101101: data_out = 18'h0135a; 13'b0011101101110: data_out = 18'h03334; 13'b0011101101111: data_out = 18'h01af8; 13'b0011101110000: data_out = 18'h000ca; 13'b0011101110001: data_out = 18'h02a6e; 13'b0011101110010: data_out = 18'h00958; 13'b0011101110011: data_out = 18'h01968; 13'b0011101110100: data_out = 18'h0243e; 13'b0011101110101: data_out = 18'h00108; 13'b0011101110110: data_out = 18'h3ebee; 13'b0011101110111: data_out = 18'h3f1ce; 13'b0011101111000: data_out = 18'h00750; 13'b0011101111001: data_out = 18'h021a2; 13'b0011101111010: data_out = 18'h0045c; 13'b0011101111011: data_out = 18'h3f448; 13'b0011101111100: data_out = 18'h00e70; 13'b0011101111101: data_out = 18'h006a2; 13'b0011101111110: data_out = 18'h00564; 13'b0011101111111: data_out = 18'h3e78a; 13'b0011110000000: data_out = 18'h00f48; 13'b0011110000001: data_out = 18'h01e9c; 13'b0011110000010: data_out = 18'h3ef7e; 13'b0011110000011: data_out = 18'h3f652; 13'b0011110000100: data_out = 18'h0057e; 13'b0011110000101: data_out = 18'h0093e; 13'b0011110000110: data_out = 18'h3f9b0; 13'b0011110000111: data_out = 18'h3e87c; 13'b0011110001000: data_out = 18'h3f07c; 13'b0011110001001: data_out = 18'h3f4ae; 13'b0011110001010: data_out = 18'h3c84a; 13'b0011110001011: data_out = 18'h3e6ee; 13'b0011110001100: data_out = 18'h00dac; 13'b0011110001101: data_out = 18'h3ecac; 13'b0011110001110: data_out = 18'h3caa0; 13'b0011110001111: data_out = 18'h3ed3a; 13'b0011110010000: data_out = 18'h004b0; 13'b0011110010001: data_out = 18'h3bf40; 13'b0011110010010: data_out = 18'h3ac82; 13'b0011110010011: data_out = 18'h011d0; 13'b0011110010100: data_out = 18'h3f472; 13'b0011110010101: data_out = 18'h3b44e; 13'b0011110010110: data_out = 18'h3d57e; 13'b0011110010111: data_out = 18'h3d800; 13'b0011110011000: data_out = 18'h3f232; 13'b0011110011001: data_out = 18'h3d2f0; 13'b0011110011010: data_out = 18'h3dc78; 13'b0011110011011: data_out = 18'h3d17c; 13'b0011110011100: data_out = 18'h3d858; 13'b0011110011101: data_out = 18'h3e148; 13'b0011110011110: data_out = 18'h3ac24; 13'b0011110011111: data_out = 18'h3c97e; 13'b0011110100000: data_out = 18'h3f3dc; 13'b0011110100001: data_out = 18'h3b8fe; 13'b0011110100010: data_out = 18'h3ae78; 13'b0011110100011: data_out = 18'h00d90; 13'b0011110100100: data_out = 18'h3e890; 13'b0011110100101: data_out = 18'h3a4e2; 13'b0011110100110: data_out = 18'h3ce24; 13'b0011110100111: data_out = 18'h3f1a4; 13'b0011110101000: data_out = 18'h3be68; 13'b0011110101001: data_out = 18'h3dda6; 13'b0011110101010: data_out = 18'h00b38; 13'b0011110101011: data_out = 18'h3eb96; 13'b0011110101100: data_out = 18'h3e1f8; 13'b0011110101101: data_out = 18'h3deee; 13'b0011110101110: data_out = 18'h000c2; 13'b0011110101111: data_out = 18'h3f502; 13'b0011110110000: data_out = 18'h3df6c; 13'b0011110110001: data_out = 18'h00fd0; 13'b0011110110010: data_out = 18'h03982; 13'b0011110110011: data_out = 18'h0139c; 13'b0011110110100: data_out = 18'h3fc80; 13'b0011110110101: data_out = 18'h3fd14; 13'b0011110110110: data_out = 18'h3f554; 13'b0011110110111: data_out = 18'h01aee; 13'b0011110111000: data_out = 18'h02352; 13'b0011110111001: data_out = 18'h023e8; 13'b0011110111010: data_out = 18'h00b3e; 13'b0011110111011: data_out = 18'h00c00; 13'b0011110111100: data_out = 18'h01f74; 13'b0011110111101: data_out = 18'h0133a; 13'b0011110111110: data_out = 18'h017a8; 13'b0011110111111: data_out = 18'h0232e; 13'b0011111000000: data_out = 18'h01082; 13'b0011111000001: data_out = 18'h0107c; 13'b0011111000010: data_out = 18'h0224a; 13'b0011111000011: data_out = 18'h02700; 13'b0011111000100: data_out = 18'h00e64; 13'b0011111000101: data_out = 18'h02b2c; 13'b0011111000110: data_out = 18'h00edc; 13'b0011111000111: data_out = 18'h0204a; 13'b0011111001000: data_out = 18'h0612a; 13'b0011111001001: data_out = 18'h01f6c; 13'b0011111001010: data_out = 18'h0255c; 13'b0011111001011: data_out = 18'h0303c; 13'b0011111001100: data_out = 18'h033f6; 13'b0011111001101: data_out = 18'h020e2; 13'b0011111001110: data_out = 18'h01fb0; 13'b0011111001111: data_out = 18'h036fa; 13'b0011111010000: data_out = 18'h03604; 13'b0011111010001: data_out = 18'h02584; 13'b0011111010010: data_out = 18'h01154; 13'b0011111010011: data_out = 18'h047b4; 13'b0011111010100: data_out = 18'h00164; 13'b0011111010101: data_out = 18'h0098e; 13'b0011111010110: data_out = 18'h031a4; 13'b0011111010111: data_out = 18'h0056e; 13'b0011111011000: data_out = 18'h024c8; 13'b0011111011001: data_out = 18'h0348a; 13'b0011111011010: data_out = 18'h02208; 13'b0011111011011: data_out = 18'h0151c; 13'b0011111011100: data_out = 18'h00ca2; 13'b0011111011101: data_out = 18'h0289c; 13'b0011111011110: data_out = 18'h008f6; 13'b0011111011111: data_out = 18'h3f5e4; 13'b0011111100000: data_out = 18'h0140c; 13'b0011111100001: data_out = 18'h03344; 13'b0011111100010: data_out = 18'h02956; 13'b0011111100011: data_out = 18'h3fe86; 13'b0011111100100: data_out = 18'h0008a; 13'b0011111100101: data_out = 18'h01fd6; 13'b0011111100110: data_out = 18'h3ed28; 13'b0011111100111: data_out = 18'h3e34c; 13'b0011111101000: data_out = 18'h010f0; 13'b0011111101001: data_out = 18'h3fa10; 13'b0011111101010: data_out = 18'h3d060; 13'b0011111101011: data_out = 18'h3f860; 13'b0011111101100: data_out = 18'h3f43c; 13'b0011111101101: data_out = 18'h3f33a; 13'b0011111101110: data_out = 18'h3f0c4; 13'b0011111101111: data_out = 18'h3e744; 13'b0011111110000: data_out = 18'h3ea68; 13'b0011111110001: data_out = 18'h3ee36; 13'b0011111110010: data_out = 18'h3fc0c; 13'b0011111110011: data_out = 18'h3e97c; 13'b0011111110100: data_out = 18'h3dbc8; 13'b0011111110101: data_out = 18'h3e4c4; 13'b0011111110110: data_out = 18'h3dde4; 13'b0011111110111: data_out = 18'h3cb16; 13'b0011111111000: data_out = 18'h3f80a; 13'b0011111111001: data_out = 18'h3f27a; 13'b0011111111010: data_out = 18'h3b406; 13'b0011111111011: data_out = 18'h3da0e; 13'b0011111111100: data_out = 18'h3e4f6; 13'b0011111111101: data_out = 18'h3c194; 13'b0011111111110: data_out = 18'h3d4f2; 13'b0011111111111: data_out = 18'h3dbe6; 13'b0100000000000: data_out = 18'h3deb8; 13'b0100000000001: data_out = 18'h3e10e; 13'b0100000000010: data_out = 18'h3c72a; 13'b0100000000011: data_out = 18'h3d6e6; 13'b0100000000100: data_out = 18'h3f032; 13'b0100000000101: data_out = 18'h3e7c4; 13'b0100000000110: data_out = 18'h3e6ee; 13'b0100000000111: data_out = 18'h3ee28; 13'b0100000001000: data_out = 18'h3f30c; 13'b0100000001001: data_out = 18'h3e2a6; 13'b0100000001010: data_out = 18'h3df52; 13'b0100000001011: data_out = 18'h3fab0; 13'b0100000001100: data_out = 18'h3fa8a; 13'b0100000001101: data_out = 18'h3ff0e; 13'b0100000001110: data_out = 18'h3e6a4; 13'b0100000001111: data_out = 18'h3db74; 13'b0100000010000: data_out = 18'h00108; 13'b0100000010001: data_out = 18'h3fec0; 13'b0100000010010: data_out = 18'h3e542; 13'b0100000010011: data_out = 18'h3fe2a; 13'b0100000010100: data_out = 18'h00c24; 13'b0100000010101: data_out = 18'h3fed8; 13'b0100000010110: data_out = 18'h3e9c8; 13'b0100000010111: data_out = 18'h3f4d8; 13'b0100000011000: data_out = 18'h3fb56; 13'b0100000011001: data_out = 18'h001be; 13'b0100000011010: data_out = 18'h3ffba; 13'b0100000011011: data_out = 18'h3fa32; 13'b0100000011100: data_out = 18'h025a4; 13'b0100000011101: data_out = 18'h0056a; 13'b0100000011110: data_out = 18'h3f7d0; 13'b0100000011111: data_out = 18'h3e782; 13'b0100000100000: data_out = 18'h3f004; 13'b0100000100001: data_out = 18'h00dc4; 13'b0100000100010: data_out = 18'h00de8; 13'b0100000100011: data_out = 18'h021d4; 13'b0100000100100: data_out = 18'h00f1a; 13'b0100000100101: data_out = 18'h006e2; 13'b0100000100110: data_out = 18'h3ec9e; 13'b0100000100111: data_out = 18'h00138; 13'b0100000101000: data_out = 18'h3f34e; 13'b0100000101001: data_out = 18'h00980; 13'b0100000101010: data_out = 18'h01a42; 13'b0100000101011: data_out = 18'h009fe; 13'b0100000101100: data_out = 18'h0129a; 13'b0100000101101: data_out = 18'h3ffe2; 13'b0100000101110: data_out = 18'h02248; 13'b0100000101111: data_out = 18'h01f6a; 13'b0100000110000: data_out = 18'h3f4c4; 13'b0100000110001: data_out = 18'h3ff58; 13'b0100000110010: data_out = 18'h0116a; 13'b0100000110011: data_out = 18'h3fe1e; 13'b0100000110100: data_out = 18'h3ef2a; 13'b0100000110101: data_out = 18'h0178c; 13'b0100000110110: data_out = 18'h0143a; 13'b0100000110111: data_out = 18'h0025c; 13'b0100000111000: data_out = 18'h000ce; 13'b0100000111001: data_out = 18'h016dc; 13'b0100000111010: data_out = 18'h0019c; 13'b0100000111011: data_out = 18'h015d4; 13'b0100000111100: data_out = 18'h029fe; 13'b0100000111101: data_out = 18'h3fc52; 13'b0100000111110: data_out = 18'h3f4a2; 13'b0100000111111: data_out = 18'h02782; 13'b0100001000000: data_out = 18'h020e8; 13'b0100001000001: data_out = 18'h018e8; 13'b0100001000010: data_out = 18'h00ab2; 13'b0100001000011: data_out = 18'h00ee4; 13'b0100001000100: data_out = 18'h00ef8; 13'b0100001000101: data_out = 18'h3fb8e; 13'b0100001000110: data_out = 18'h3fc50; 13'b0100001000111: data_out = 18'h0173a; 13'b0100001001000: data_out = 18'h0231c; 13'b0100001001001: data_out = 18'h02946; 13'b0100001001010: data_out = 18'h01886; 13'b0100001001011: data_out = 18'h019e4; 13'b0100001001100: data_out = 18'h3f4b0; 13'b0100001001101: data_out = 18'h00f4c; 13'b0100001001110: data_out = 18'h03428; 13'b0100001001111: data_out = 18'h02108; 13'b0100001010000: data_out = 18'h3fc28; 13'b0100001010001: data_out = 18'h3f056; 13'b0100001010010: data_out = 18'h01b0c; 13'b0100001010011: data_out = 18'h01b24; 13'b0100001010100: data_out = 18'h01b3c; 13'b0100001010101: data_out = 18'h016b0; 13'b0100001010110: data_out = 18'h025be; 13'b0100001010111: data_out = 18'h3f81a; 13'b0100001011000: data_out = 18'h016b8; 13'b0100001011001: data_out = 18'h01c3e; 13'b0100001011010: data_out = 18'h3dda0; 13'b0100001011011: data_out = 18'h00268; 13'b0100001011100: data_out = 18'h01634; 13'b0100001011101: data_out = 18'h3fb86; 13'b0100001011110: data_out = 18'h3fb8a; 13'b0100001011111: data_out = 18'h3ed0e; 13'b0100001100000: data_out = 18'h3fc8e; 13'b0100001100001: data_out = 18'h3ff5c; 13'b0100001100010: data_out = 18'h3fbc4; 13'b0100001100011: data_out = 18'h01728; 13'b0100001100100: data_out = 18'h00412; 13'b0100001100101: data_out = 18'h3da06; 13'b0100001100110: data_out = 18'h3fb7c; 13'b0100001100111: data_out = 18'h006a6; 13'b0100001101000: data_out = 18'h3f7e4; 13'b0100001101001: data_out = 18'h3d1d2; 13'b0100001101010: data_out = 18'h3f1e2; 13'b0100001101011: data_out = 18'h3f2fa; 13'b0100001101100: data_out = 18'h3cfe0; 13'b0100001101101: data_out = 18'h3e66c; 13'b0100001101110: data_out = 18'h00536; 13'b0100001101111: data_out = 18'h3d3f4; 13'b0100001110000: data_out = 18'h3da74; 13'b0100001110001: data_out = 18'h00424; 13'b0100001110010: data_out = 18'h3ec54; 13'b0100001110011: data_out = 18'h3c63a; 13'b0100001110100: data_out = 18'h3f2f2; 13'b0100001110101: data_out = 18'h000d8; 13'b0100001110110: data_out = 18'h3fdbe; 13'b0100001110111: data_out = 18'h3ccb0; 13'b0100001111000: data_out = 18'h3dadc; 13'b0100001111001: data_out = 18'h3e336; 13'b0100001111010: data_out = 18'h007c6; 13'b0100001111011: data_out = 18'h003d0; 13'b0100001111100: data_out = 18'h3d39a; 13'b0100001111101: data_out = 18'h3e638; 13'b0100001111110: data_out = 18'h3f3e4; 13'b0100001111111: data_out = 18'h00e50; 13'b0100010000000: data_out = 18'h00360; 13'b0100010000001: data_out = 18'h3c6d0; 13'b0100010000010: data_out = 18'h3d016; 13'b0100010000011: data_out = 18'h000fa; 13'b0100010000100: data_out = 18'h3f6f6; 13'b0100010000101: data_out = 18'h3e26c; 13'b0100010000110: data_out = 18'h3e236; 13'b0100010000111: data_out = 18'h3f0d0; 13'b0100010001000: data_out = 18'h3f98e; 13'b0100010001001: data_out = 18'h3faae; 13'b0100010001010: data_out = 18'h3faba; 13'b0100010001011: data_out = 18'h3daa0; 13'b0100010001100: data_out = 18'h3e7de; 13'b0100010001101: data_out = 18'h3fd00; 13'b0100010001110: data_out = 18'h000fc; 13'b0100010001111: data_out = 18'h3eee0; 13'b0100010010000: data_out = 18'h3f018; 13'b0100010010001: data_out = 18'h3ed62; 13'b0100010010010: data_out = 18'h3e22a; 13'b0100010010011: data_out = 18'h3f09a; 13'b0100010010100: data_out = 18'h3d8f4; 13'b0100010010101: data_out = 18'h3d0ea; 13'b0100010010110: data_out = 18'h00786; 13'b0100010010111: data_out = 18'h00db8; 13'b0100010011000: data_out = 18'h3e2a6; 13'b0100010011001: data_out = 18'h3cf04; 13'b0100010011010: data_out = 18'h3fd22; 13'b0100010011011: data_out = 18'h00c28; 13'b0100010011100: data_out = 18'h00272; 13'b0100010011101: data_out = 18'h02cba; 13'b0100010011110: data_out = 18'h00dfc; 13'b0100010011111: data_out = 18'h3f6e4; 13'b0100010100000: data_out = 18'h3f6f4; 13'b0100010100001: data_out = 18'h00a82; 13'b0100010100010: data_out = 18'h0299e; 13'b0100010100011: data_out = 18'h034c4; 13'b0100010100100: data_out = 18'h3f9a2; 13'b0100010100101: data_out = 18'h3f3ec; 13'b0100010100110: data_out = 18'h0306e; 13'b0100010100111: data_out = 18'h0249e; 13'b0100010101000: data_out = 18'h01e1e; 13'b0100010101001: data_out = 18'h02152; 13'b0100010101010: data_out = 18'h03312; 13'b0100010101011: data_out = 18'h01944; 13'b0100010101100: data_out = 18'h0192a; 13'b0100010101101: data_out = 18'h01f76; 13'b0100010101110: data_out = 18'h02e80; 13'b0100010101111: data_out = 18'h03c50; 13'b0100010110000: data_out = 18'h01986; 13'b0100010110001: data_out = 18'h022b0; 13'b0100010110010: data_out = 18'h0429e; 13'b0100010110011: data_out = 18'h03990; 13'b0100010110100: data_out = 18'h00bce; 13'b0100010110101: data_out = 18'h010f6; 13'b0100010110110: data_out = 18'h02ede; 13'b0100010110111: data_out = 18'h01f50; 13'b0100010111000: data_out = 18'h005ec; 13'b0100010111001: data_out = 18'h02198; 13'b0100010111010: data_out = 18'h01720; 13'b0100010111011: data_out = 18'h003c0; 13'b0100010111100: data_out = 18'h0305c; 13'b0100010111101: data_out = 18'h02f1e; 13'b0100010111110: data_out = 18'h00c90; 13'b0100010111111: data_out = 18'h3fab4; 13'b0100011000000: data_out = 18'h009cc; 13'b0100011000001: data_out = 18'h3fb04; 13'b0100011000010: data_out = 18'h3fb34; 13'b0100011000011: data_out = 18'h3ff46; 13'b0100011000100: data_out = 18'h00540; 13'b0100011000101: data_out = 18'h01240; 13'b0100011000110: data_out = 18'h0121e; 13'b0100011000111: data_out = 18'h3d7ac; 13'b0100011001000: data_out = 18'h3e788; 13'b0100011001001: data_out = 18'h0091e; 13'b0100011001010: data_out = 18'h009aa; 13'b0100011001011: data_out = 18'h00bee; 13'b0100011001100: data_out = 18'h3e1f4; 13'b0100011001101: data_out = 18'h3f9ae; 13'b0100011001110: data_out = 18'h3fd90; 13'b0100011001111: data_out = 18'h004b2; 13'b0100011010000: data_out = 18'h00bd8; 13'b0100011010001: data_out = 18'h3e2dc; 13'b0100011010010: data_out = 18'h3ebfc; 13'b0100011010011: data_out = 18'h018c2; 13'b0100011010100: data_out = 18'h3ea48; 13'b0100011010101: data_out = 18'h3eec8; 13'b0100011010110: data_out = 18'h3fe90; 13'b0100011010111: data_out = 18'h00eb8; 13'b0100011011000: data_out = 18'h3e4e6; 13'b0100011011001: data_out = 18'h3e8b4; 13'b0100011011010: data_out = 18'h3f97c; 13'b0100011011011: data_out = 18'h3dd0a; 13'b0100011011100: data_out = 18'h3f8fc; 13'b0100011011101: data_out = 18'h3e12a; 13'b0100011011110: data_out = 18'h3d4dc; 13'b0100011011111: data_out = 18'h00b4c; 13'b0100011100000: data_out = 18'h3d80e; 13'b0100011100001: data_out = 18'h3e5d8; 13'b0100011100010: data_out = 18'h3e944; 13'b0100011100011: data_out = 18'h3e5c2; 13'b0100011100100: data_out = 18'h3de46; 13'b0100011100101: data_out = 18'h3cb58; 13'b0100011100110: data_out = 18'h3f952; 13'b0100011100111: data_out = 18'h3f518; 13'b0100011101000: data_out = 18'h3fa12; 13'b0100011101001: data_out = 18'h3f144; 13'b0100011101010: data_out = 18'h3cd22; 13'b0100011101011: data_out = 18'h3f29c; 13'b0100011101100: data_out = 18'h3e77a; 13'b0100011101101: data_out = 18'h3de6a; 13'b0100011101110: data_out = 18'h3f1ba; 13'b0100011101111: data_out = 18'h3f2cc; 13'b0100011110000: data_out = 18'h3e78c; 13'b0100011110001: data_out = 18'h3e394; 13'b0100011110010: data_out = 18'h3ff1a; 13'b0100011110011: data_out = 18'h3fe36; 13'b0100011110100: data_out = 18'h3d8ce; 13'b0100011110101: data_out = 18'h3ebc8; 13'b0100011110110: data_out = 18'h3f098; 13'b0100011110111: data_out = 18'h3def2; 13'b0100011111000: data_out = 18'h001b2; 13'b0100011111001: data_out = 18'h3fb26; 13'b0100011111010: data_out = 18'h3e970; 13'b0100011111011: data_out = 18'h008d4; 13'b0100011111100: data_out = 18'h3ec5a; 13'b0100011111101: data_out = 18'h00316; 13'b0100011111110: data_out = 18'h01d08; 13'b0100011111111: data_out = 18'h3f64c; 13'b0100100000000: data_out = 18'h3ea0e; 13'b0100100000001: data_out = 18'h3ea92; 13'b0100100000010: data_out = 18'h00902; 13'b0100100000011: data_out = 18'h00130; 13'b0100100000100: data_out = 18'h3fcd0; 13'b0100100000101: data_out = 18'h01abe; 13'b0100100000110: data_out = 18'h01ad8; 13'b0100100000111: data_out = 18'h3f642; 13'b0100100001000: data_out = 18'h009c0; 13'b0100100001001: data_out = 18'h003bc; 13'b0100100001010: data_out = 18'h3f992; 13'b0100100001011: data_out = 18'h019d6; 13'b0100100001100: data_out = 18'h00d3e; 13'b0100100001101: data_out = 18'h00252; 13'b0100100001110: data_out = 18'h00b2c; 13'b0100100001111: data_out = 18'h02206; 13'b0100100010000: data_out = 18'h009b4; 13'b0100100010001: data_out = 18'h00a94; 13'b0100100010010: data_out = 18'h008b2; 13'b0100100010011: data_out = 18'h020d2; 13'b0100100010100: data_out = 18'h023e0; 13'b0100100010101: data_out = 18'h00b6e; 13'b0100100010110: data_out = 18'h00f6e; 13'b0100100010111: data_out = 18'h01a6e; 13'b0100100011000: data_out = 18'h011de; 13'b0100100011001: data_out = 18'h3fcac; 13'b0100100011010: data_out = 18'h0111c; 13'b0100100011011: data_out = 18'h3ff32; 13'b0100100011100: data_out = 18'h023ea; 13'b0100100011101: data_out = 18'h008d6; 13'b0100100011110: data_out = 18'h00898; 13'b0100100011111: data_out = 18'h00b56; 13'b0100100100000: data_out = 18'h0031a; 13'b0100100100001: data_out = 18'h011ca; 13'b0100100100010: data_out = 18'h3fe54; 13'b0100100100011: data_out = 18'h3f1a0; 13'b0100100100100: data_out = 18'h00d1e; 13'b0100100100101: data_out = 18'h0122e; 13'b0100100100110: data_out = 18'h000c2; 13'b0100100100111: data_out = 18'h00922; 13'b0100100101000: data_out = 18'h3ffa4; 13'b0100100101001: data_out = 18'h3f91e; 13'b0100100101010: data_out = 18'h0052a; 13'b0100100101011: data_out = 18'h3f9ae; 13'b0100100101100: data_out = 18'h3f89c; 13'b0100100101101: data_out = 18'h003f2; 13'b0100100101110: data_out = 18'h3f43a; 13'b0100100101111: data_out = 18'h000a0; 13'b0100100110000: data_out = 18'h01226; 13'b0100100110001: data_out = 18'h009fe; 13'b0100100110010: data_out = 18'h01e62; 13'b0100100110011: data_out = 18'h026ba; 13'b0100100110100: data_out = 18'h00d8a; 13'b0100100110101: data_out = 18'h3f986; 13'b0100100110110: data_out = 18'h01362; 13'b0100100110111: data_out = 18'h01766; 13'b0100100111000: data_out = 18'h0120a; 13'b0100100111001: data_out = 18'h01382; 13'b0100100111010: data_out = 18'h00c0e; 13'b0100100111011: data_out = 18'h00cb4; 13'b0100100111100: data_out = 18'h023de; 13'b0100100111101: data_out = 18'h00680; 13'b0100100111110: data_out = 18'h3fb18; 13'b0100100111111: data_out = 18'h0085e; 13'b0100101000000: data_out = 18'h00b40; 13'b0100101000001: data_out = 18'h005b8; 13'b0100101000010: data_out = 18'h01250; 13'b0100101000011: data_out = 18'h00e72; 13'b0100101000100: data_out = 18'h01ec2; 13'b0100101000101: data_out = 18'h3fa74; 13'b0100101000110: data_out = 18'h00166; 13'b0100101000111: data_out = 18'h3fcfc; 13'b0100101001000: data_out = 18'h00de0; 13'b0100101001001: data_out = 18'h0024a; 13'b0100101001010: data_out = 18'h3d614; 13'b0100101001011: data_out = 18'h3e91c; 13'b0100101001100: data_out = 18'h0048e; 13'b0100101001101: data_out = 18'h3fafc; 13'b0100101001110: data_out = 18'h3f4de; 13'b0100101001111: data_out = 18'h3e75c; 13'b0100101010000: data_out = 18'h3ff0e; 13'b0100101010001: data_out = 18'h3e9f4; 13'b0100101010010: data_out = 18'h3f444; 13'b0100101010011: data_out = 18'h3ef4e; 13'b0100101010100: data_out = 18'h3d3da; 13'b0100101010101: data_out = 18'h3f44a; 13'b0100101010110: data_out = 18'h3f934; 13'b0100101010111: data_out = 18'h3f2fe; 13'b0100101011000: data_out = 18'h3ed96; 13'b0100101011001: data_out = 18'h3c976; 13'b0100101011010: data_out = 18'h3eec0; 13'b0100101011011: data_out = 18'h011e4; 13'b0100101011100: data_out = 18'h3e224; 13'b0100101011101: data_out = 18'h3f04e; 13'b0100101011110: data_out = 18'h3eed8; 13'b0100101011111: data_out = 18'h3f648; 13'b0100101100000: data_out = 18'h3e6f6; 13'b0100101100001: data_out = 18'h3ee76; 13'b0100101100010: data_out = 18'h3fffe; 13'b0100101100011: data_out = 18'h3fb14; 13'b0100101100100: data_out = 18'h3f290; 13'b0100101100101: data_out = 18'h3e572; 13'b0100101100110: data_out = 18'h3e400; 13'b0100101100111: data_out = 18'h3f2b6; 13'b0100101101000: data_out = 18'h3dcd0; 13'b0100101101001: data_out = 18'h3d80a; 13'b0100101101010: data_out = 18'h3fd86; 13'b0100101101011: data_out = 18'h3ddea; 13'b0100101101100: data_out = 18'h3f938; 13'b0100101101101: data_out = 18'h3ec94; 13'b0100101101110: data_out = 18'h3ea94; 13'b0100101101111: data_out = 18'h3ff04; 13'b0100101110000: data_out = 18'h3f268; 13'b0100101110001: data_out = 18'h3fb56; 13'b0100101110010: data_out = 18'h3fe5a; 13'b0100101110011: data_out = 18'h3f704; 13'b0100101110100: data_out = 18'h3cf42; 13'b0100101110101: data_out = 18'h3e170; 13'b0100101110110: data_out = 18'h3fa88; 13'b0100101110111: data_out = 18'h3e8e6; 13'b0100101111000: data_out = 18'h3e146; 13'b0100101111001: data_out = 18'h00008; 13'b0100101111010: data_out = 18'h00eb2; 13'b0100101111011: data_out = 18'h003d8; 13'b0100101111100: data_out = 18'h3eff4; 13'b0100101111101: data_out = 18'h3feac; 13'b0100101111110: data_out = 18'h3edb6; 13'b0100101111111: data_out = 18'h3f122; 13'b0100110000000: data_out = 18'h3fd36; 13'b0100110000001: data_out = 18'h3fa6c; 13'b0100110000010: data_out = 18'h00bcc; 13'b0100110000011: data_out = 18'h015dc; 13'b0100110000100: data_out = 18'h012c2; 13'b0100110000101: data_out = 18'h00ef2; 13'b0100110000110: data_out = 18'h3fc50; 13'b0100110000111: data_out = 18'h3f796; 13'b0100110001000: data_out = 18'h01ee4; 13'b0100110001001: data_out = 18'h01942; 13'b0100110001010: data_out = 18'h00f9a; 13'b0100110001011: data_out = 18'h0186a; 13'b0100110001100: data_out = 18'h01f06; 13'b0100110001101: data_out = 18'h01bd6; 13'b0100110001110: data_out = 18'h00fac; 13'b0100110001111: data_out = 18'h0493e; 13'b0100110010000: data_out = 18'h03d12; 13'b0100110010001: data_out = 18'h01d6c; 13'b0100110010010: data_out = 18'h0198e; 13'b0100110010011: data_out = 18'h01e2c; 13'b0100110010100: data_out = 18'h0280e; 13'b0100110010101: data_out = 18'h02788; 13'b0100110010110: data_out = 18'h02cae; 13'b0100110010111: data_out = 18'h01ee6; 13'b0100110011000: data_out = 18'h015f4; 13'b0100110011001: data_out = 18'h019f2; 13'b0100110011010: data_out = 18'h0117c; 13'b0100110011011: data_out = 18'h010e4; 13'b0100110011100: data_out = 18'h004f4; 13'b0100110011101: data_out = 18'h019ae; 13'b0100110011110: data_out = 18'h03fb0; 13'b0100110011111: data_out = 18'h02a72; 13'b0100110100000: data_out = 18'h3f58e; 13'b0100110100001: data_out = 18'h022b0; 13'b0100110100010: data_out = 18'h02ac4; 13'b0100110100011: data_out = 18'h012d4; 13'b0100110100100: data_out = 18'h3fde6; 13'b0100110100101: data_out = 18'h02ba6; 13'b0100110100110: data_out = 18'h00976; 13'b0100110100111: data_out = 18'h3e87c; 13'b0100110101000: data_out = 18'h3dd50; 13'b0100110101001: data_out = 18'h3f6aa; 13'b0100110101010: data_out = 18'h3fb46; 13'b0100110101011: data_out = 18'h3da46; 13'b0100110101100: data_out = 18'h3eb70; 13'b0100110101101: data_out = 18'h3f206; 13'b0100110101110: data_out = 18'h3e11c; 13'b0100110101111: data_out = 18'h3e592; 13'b0100110110000: data_out = 18'h3f6d0; 13'b0100110110001: data_out = 18'h00152; 13'b0100110110010: data_out = 18'h3fa26; 13'b0100110110011: data_out = 18'h3f33c; 13'b0100110110100: data_out = 18'h3f290; 13'b0100110110101: data_out = 18'h002ee; 13'b0100110110110: data_out = 18'h00f96; 13'b0100110110111: data_out = 18'h3ee02; 13'b0100110111000: data_out = 18'h3dd50; 13'b0100110111001: data_out = 18'h00596; 13'b0100110111010: data_out = 18'h3ee1c; 13'b0100110111011: data_out = 18'h3e81a; 13'b0100110111100: data_out = 18'h3f4bc; 13'b0100110111101: data_out = 18'h3fdfa; 13'b0100110111110: data_out = 18'h3f3c8; 13'b0100110111111: data_out = 18'h001ae; 13'b0100111000000: data_out = 18'h3e6e4; 13'b0100111000001: data_out = 18'h3fe96; 13'b0100111000010: data_out = 18'h3e778; 13'b0100111000011: data_out = 18'h3fa2a; 13'b0100111000100: data_out = 18'h3f864; 13'b0100111000101: data_out = 18'h3f7d6; 13'b0100111000110: data_out = 18'h002a2; 13'b0100111000111: data_out = 18'h3f3a2; 13'b0100111001000: data_out = 18'h3e0e6; 13'b0100111001001: data_out = 18'h3e512; 13'b0100111001010: data_out = 18'h3f0dc; 13'b0100111001011: data_out = 18'h3f142; 13'b0100111001100: data_out = 18'h3fb10; 13'b0100111001101: data_out = 18'h3f24e; 13'b0100111001110: data_out = 18'h3dc1a; 13'b0100111001111: data_out = 18'h3d9d8; 13'b0100111010000: data_out = 18'h3e570; 13'b0100111010001: data_out = 18'h3e2ca; 13'b0100111010010: data_out = 18'h3f4ae; 13'b0100111010011: data_out = 18'h3f364; 13'b0100111010100: data_out = 18'h3e928; 13'b0100111010101: data_out = 18'h3daaa; 13'b0100111010110: data_out = 18'h3ebc2; 13'b0100111010111: data_out = 18'h00492; 13'b0100111011000: data_out = 18'h3f77a; 13'b0100111011001: data_out = 18'h3ed6a; 13'b0100111011010: data_out = 18'h3f7ca; 13'b0100111011011: data_out = 18'h3d71a; 13'b0100111011100: data_out = 18'h3ef86; 13'b0100111011101: data_out = 18'h00ab6; 13'b0100111011110: data_out = 18'h3fa5e; 13'b0100111011111: data_out = 18'h3f948; 13'b0100111100000: data_out = 18'h010dc; 13'b0100111100001: data_out = 18'h02078; 13'b0100111100010: data_out = 18'h3ed66; 13'b0100111100011: data_out = 18'h3ddb0; 13'b0100111100100: data_out = 18'h3f67e; 13'b0100111100101: data_out = 18'h00d86; 13'b0100111100110: data_out = 18'h0095c; 13'b0100111100111: data_out = 18'h3fb62; 13'b0100111101000: data_out = 18'h3fa1a; 13'b0100111101001: data_out = 18'h00676; 13'b0100111101010: data_out = 18'h001a6; 13'b0100111101011: data_out = 18'h00f98; 13'b0100111101100: data_out = 18'h01344; 13'b0100111101101: data_out = 18'h02cc6; 13'b0100111101110: data_out = 18'h0211c; 13'b0100111101111: data_out = 18'h00990; 13'b0100111110000: data_out = 18'h025f2; 13'b0100111110001: data_out = 18'h012be; 13'b0100111110010: data_out = 18'h00a60; 13'b0100111110011: data_out = 18'h005d8; 13'b0100111110100: data_out = 18'h00d12; 13'b0100111110101: data_out = 18'h0262a; 13'b0100111110110: data_out = 18'h01750; 13'b0100111110111: data_out = 18'h3e9f0; 13'b0100111111000: data_out = 18'h3f962; 13'b0100111111001: data_out = 18'h012f2; 13'b0100111111010: data_out = 18'h0197e; 13'b0100111111011: data_out = 18'h01366; 13'b0100111111100: data_out = 18'h011a4; 13'b0100111111101: data_out = 18'h00b3a; 13'b0100111111110: data_out = 18'h3efd8; 13'b0100111111111: data_out = 18'h3fb0a; 13'b0101000000000: data_out = 18'h00182; 13'b0101000000001: data_out = 18'h011e2; 13'b0101000000010: data_out = 18'h02100; 13'b0101000000011: data_out = 18'h3f860; 13'b0101000000100: data_out = 18'h3f87a; 13'b0101000000101: data_out = 18'h3fa3e; 13'b0101000000110: data_out = 18'h016ba; 13'b0101000000111: data_out = 18'h001b6; 13'b0101000001000: data_out = 18'h3ed3a; 13'b0101000001001: data_out = 18'h005d6; 13'b0101000001010: data_out = 18'h008a2; 13'b0101000001011: data_out = 18'h3ff8c; 13'b0101000001100: data_out = 18'h00bfe; 13'b0101000001101: data_out = 18'h008c8; 13'b0101000001110: data_out = 18'h3f31e; 13'b0101000001111: data_out = 18'h00412; 13'b0101000010000: data_out = 18'h019b4; 13'b0101000010001: data_out = 18'h002d2; 13'b0101000010010: data_out = 18'h00f56; 13'b0101000010011: data_out = 18'h3fc70; 13'b0101000010100: data_out = 18'h014c6; 13'b0101000010101: data_out = 18'h021d2; 13'b0101000010110: data_out = 18'h00e96; 13'b0101000010111: data_out = 18'h010c0; 13'b0101000011000: data_out = 18'h00450; 13'b0101000011001: data_out = 18'h0024a; 13'b0101000011010: data_out = 18'h02234; 13'b0101000011011: data_out = 18'h01bee; 13'b0101000011100: data_out = 18'h3e946; 13'b0101000011101: data_out = 18'h00214; 13'b0101000011110: data_out = 18'h03180; 13'b0101000011111: data_out = 18'h00f18; 13'b0101000100000: data_out = 18'h3efe6; 13'b0101000100001: data_out = 18'h00fb4; 13'b0101000100010: data_out = 18'h0178a; 13'b0101000100011: data_out = 18'h3f6da; 13'b0101000100100: data_out = 18'h3f46a; 13'b0101000100101: data_out = 18'h0044a; 13'b0101000100110: data_out = 18'h00dea; 13'b0101000100111: data_out = 18'h0029e; 13'b0101000101000: data_out = 18'h3ee28; 13'b0101000101001: data_out = 18'h3dfa2; 13'b0101000101010: data_out = 18'h3ed7e; 13'b0101000101011: data_out = 18'h00068; 13'b0101000101100: data_out = 18'h0125a; 13'b0101000101101: data_out = 18'h3f1e6; 13'b0101000101110: data_out = 18'h3df3a; 13'b0101000101111: data_out = 18'h3d844; 13'b0101000110000: data_out = 18'h3d94a; 13'b0101000110001: data_out = 18'h3faa2; 13'b0101000110010: data_out = 18'h007c4; 13'b0101000110011: data_out = 18'h3f8a6; 13'b0101000110100: data_out = 18'h3fd10; 13'b0101000110101: data_out = 18'h3e582; 13'b0101000110110: data_out = 18'h3cb70; 13'b0101000110111: data_out = 18'h3d830; 13'b0101000111000: data_out = 18'h004a8; 13'b0101000111001: data_out = 18'h005a6; 13'b0101000111010: data_out = 18'h3f9fa; 13'b0101000111011: data_out = 18'h3f490; 13'b0101000111100: data_out = 18'h3ec10; 13'b0101000111101: data_out = 18'h00caa; 13'b0101000111110: data_out = 18'h01b08; 13'b0101000111111: data_out = 18'h3fe48; 13'b0101001000000: data_out = 18'h3edfc; 13'b0101001000001: data_out = 18'h3ec0e; 13'b0101001000010: data_out = 18'h3f9f2; 13'b0101001000011: data_out = 18'h3f4c2; 13'b0101001000100: data_out = 18'h3ead4; 13'b0101001000101: data_out = 18'h3e642; 13'b0101001000110: data_out = 18'h00080; 13'b0101001000111: data_out = 18'h3f772; 13'b0101001001000: data_out = 18'h3e89a; 13'b0101001001001: data_out = 18'h3f148; 13'b0101001001010: data_out = 18'h00102; 13'b0101001001011: data_out = 18'h00104; 13'b0101001001100: data_out = 18'h3efe2; 13'b0101001001101: data_out = 18'h006f6; 13'b0101001001110: data_out = 18'h009b8; 13'b0101001001111: data_out = 18'h3e8a4; 13'b0101001010000: data_out = 18'h3d358; 13'b0101001010001: data_out = 18'h003b4; 13'b0101001010010: data_out = 18'h3fd86; 13'b0101001010011: data_out = 18'h3e1ca; 13'b0101001010100: data_out = 18'h3e90c; 13'b0101001010101: data_out = 18'h3f206; 13'b0101001010110: data_out = 18'h3f2ea; 13'b0101001010111: data_out = 18'h3f624; 13'b0101001011000: data_out = 18'h3e594; 13'b0101001011001: data_out = 18'h3fe7a; 13'b0101001011010: data_out = 18'h00b8a; 13'b0101001011011: data_out = 18'h3fc74; 13'b0101001011100: data_out = 18'h3f1ca; 13'b0101001011101: data_out = 18'h00556; 13'b0101001011110: data_out = 18'h00558; 13'b0101001011111: data_out = 18'h002b6; 13'b0101001100000: data_out = 18'h01eca; 13'b0101001100001: data_out = 18'h3fbca; 13'b0101001100010: data_out = 18'h3ed40; 13'b0101001100011: data_out = 18'h3fdbc; 13'b0101001100100: data_out = 18'h00c68; 13'b0101001100101: data_out = 18'h00cee; 13'b0101001100110: data_out = 18'h3f436; 13'b0101001100111: data_out = 18'h00db4; 13'b0101001101000: data_out = 18'h01546; 13'b0101001101001: data_out = 18'h00174; 13'b0101001101010: data_out = 18'h3ff50; 13'b0101001101011: data_out = 18'h01784; 13'b0101001101100: data_out = 18'h01384; 13'b0101001101101: data_out = 18'h01ae4; 13'b0101001101110: data_out = 18'h017d6; 13'b0101001101111: data_out = 18'h00d9a; 13'b0101001110000: data_out = 18'h00d5a; 13'b0101001110001: data_out = 18'h0066e; 13'b0101001110010: data_out = 18'h01330; 13'b0101001110011: data_out = 18'h01466; 13'b0101001110100: data_out = 18'h01a18; 13'b0101001110101: data_out = 18'h0075c; 13'b0101001110110: data_out = 18'h005ea; 13'b0101001110111: data_out = 18'h3ffa8; 13'b0101001111000: data_out = 18'h01b48; 13'b0101001111001: data_out = 18'h0152e; 13'b0101001111010: data_out = 18'h0208a; 13'b0101001111011: data_out = 18'h004da; 13'b0101001111100: data_out = 18'h3fa2e; 13'b0101001111101: data_out = 18'h01046; 13'b0101001111110: data_out = 18'h03208; 13'b0101001111111: data_out = 18'h02012; 13'b0101010000000: data_out = 18'h3ef7e; 13'b0101010000001: data_out = 18'h00e88; 13'b0101010000010: data_out = 18'h01b28; 13'b0101010000011: data_out = 18'h01176; 13'b0101010000100: data_out = 18'h01808; 13'b0101010000101: data_out = 18'h01180; 13'b0101010000110: data_out = 18'h01fb6; 13'b0101010000111: data_out = 18'h00498; 13'b0101010001000: data_out = 18'h3fdf0; 13'b0101010001001: data_out = 18'h01862; 13'b0101010001010: data_out = 18'h0256a; 13'b0101010001011: data_out = 18'h00d54; 13'b0101010001100: data_out = 18'h00f0e; 13'b0101010001101: data_out = 18'h00718; 13'b0101010001110: data_out = 18'h3ff56; 13'b0101010001111: data_out = 18'h007a4; 13'b0101010010000: data_out = 18'h0188c; 13'b0101010010001: data_out = 18'h00b3a; 13'b0101010010010: data_out = 18'h3e540; 13'b0101010010011: data_out = 18'h3e572; 13'b0101010010100: data_out = 18'h00400; 13'b0101010010101: data_out = 18'h000b4; 13'b0101010010110: data_out = 18'h3fa18; 13'b0101010010111: data_out = 18'h3f0be; 13'b0101010011000: data_out = 18'h3f74e; 13'b0101010011001: data_out = 18'h3e9fa; 13'b0101010011010: data_out = 18'h3ec70; 13'b0101010011011: data_out = 18'h3ec06; 13'b0101010011100: data_out = 18'h3e6c0; 13'b0101010011101: data_out = 18'h3ef24; 13'b0101010011110: data_out = 18'h3db08; 13'b0101010011111: data_out = 18'h3eee4; 13'b0101010100000: data_out = 18'h3f4ec; 13'b0101010100001: data_out = 18'h3ce2e; 13'b0101010100010: data_out = 18'h3ef50; 13'b0101010100011: data_out = 18'h3eee2; 13'b0101010100100: data_out = 18'h3ec5a; 13'b0101010100101: data_out = 18'h3ee2e; 13'b0101010100110: data_out = 18'h3e954; 13'b0101010100111: data_out = 18'h3f4ae; 13'b0101010101000: data_out = 18'h3f150; 13'b0101010101001: data_out = 18'h3f16a; 13'b0101010101010: data_out = 18'h3d334; 13'b0101010101011: data_out = 18'h3f0a6; 13'b0101010101100: data_out = 18'h000f2; 13'b0101010101101: data_out = 18'h3ee86; 13'b0101010101110: data_out = 18'h00132; 13'b0101010101111: data_out = 18'h3fb02; 13'b0101010110000: data_out = 18'h3de6c; 13'b0101010110001: data_out = 18'h003b6; 13'b0101010110010: data_out = 18'h3eeea; 13'b0101010110011: data_out = 18'h3e70a; 13'b0101010110100: data_out = 18'h3f3ea; 13'b0101010110101: data_out = 18'h3e89e; 13'b0101010110110: data_out = 18'h3f556; 13'b0101010110111: data_out = 18'h3effe; 13'b0101010111000: data_out = 18'h0079a; 13'b0101010111001: data_out = 18'h007ba; 13'b0101010111010: data_out = 18'h00558; 13'b0101010111011: data_out = 18'h01c92; 13'b0101010111100: data_out = 18'h00cc4; 13'b0101010111101: data_out = 18'h3fa32; 13'b0101010111110: data_out = 18'h3ff6c; 13'b0101010111111: data_out = 18'h00814; 13'b0101011000000: data_out = 18'h00606; 13'b0101011000001: data_out = 18'h0021e; 13'b0101011000010: data_out = 18'h000ca; 13'b0101011000011: data_out = 18'h0046e; 13'b0101011000100: data_out = 18'h006cc; 13'b0101011000101: data_out = 18'h3fe0c; 13'b0101011000110: data_out = 18'h3ebe8; 13'b0101011000111: data_out = 18'h3ee58; 13'b0101011001000: data_out = 18'h001f4; 13'b0101011001001: data_out = 18'h3f326; 13'b0101011001010: data_out = 18'h3e302; 13'b0101011001011: data_out = 18'h00aea; 13'b0101011001100: data_out = 18'h00e5c; 13'b0101011001101: data_out = 18'h3e35c; 13'b0101011001110: data_out = 18'h3f67e; 13'b0101011001111: data_out = 18'h3fd08; 13'b0101011010000: data_out = 18'h3fb1c; 13'b0101011010001: data_out = 18'h00de0; 13'b0101011010010: data_out = 18'h01756; 13'b0101011010011: data_out = 18'h3fcb6; 13'b0101011010100: data_out = 18'h3eb00; 13'b0101011010101: data_out = 18'h00506; 13'b0101011010110: data_out = 18'h00c2a; 13'b0101011010111: data_out = 18'h3ff82; 13'b0101011011000: data_out = 18'h01a70; 13'b0101011011001: data_out = 18'h01354; 13'b0101011011010: data_out = 18'h3f61a; 13'b0101011011011: data_out = 18'h00744; 13'b0101011011100: data_out = 18'h00852; 13'b0101011011101: data_out = 18'h01952; 13'b0101011011110: data_out = 18'h00f88; 13'b0101011011111: data_out = 18'h0162c; 13'b0101011100000: data_out = 18'h01cb2; 13'b0101011100001: data_out = 18'h02542; 13'b0101011100010: data_out = 18'h0258a; 13'b0101011100011: data_out = 18'h010a0; 13'b0101011100100: data_out = 18'h00f10; 13'b0101011100101: data_out = 18'h0187c; 13'b0101011100110: data_out = 18'h021d2; 13'b0101011100111: data_out = 18'h01478; 13'b0101011101000: data_out = 18'h01512; 13'b0101011101001: data_out = 18'h01770; 13'b0101011101010: data_out = 18'h00edc; 13'b0101011101011: data_out = 18'h0141a; 13'b0101011101100: data_out = 18'h01116; 13'b0101011101101: data_out = 18'h00068; 13'b0101011101110: data_out = 18'h0165c; 13'b0101011101111: data_out = 18'h01fce; 13'b0101011110000: data_out = 18'h007aa; 13'b0101011110001: data_out = 18'h3ff7e; 13'b0101011110010: data_out = 18'h00552; 13'b0101011110011: data_out = 18'h0063c; 13'b0101011110100: data_out = 18'h3ec3c; 13'b0101011110101: data_out = 18'h3f43a; 13'b0101011110110: data_out = 18'h3efce; 13'b0101011110111: data_out = 18'h00726; 13'b0101011111000: data_out = 18'h3f978; 13'b0101011111001: data_out = 18'h3d90a; 13'b0101011111010: data_out = 18'h0017c; 13'b0101011111011: data_out = 18'h3fab6; 13'b0101011111100: data_out = 18'h3fa22; 13'b0101011111101: data_out = 18'h00542; 13'b0101011111110: data_out = 18'h3f762; 13'b0101011111111: data_out = 18'h3e382; 13'b0101100000000: data_out = 18'h3f442; 13'b0101100000001: data_out = 18'h009da; 13'b0101100000010: data_out = 18'h3f6bc; 13'b0101100000011: data_out = 18'h3fa9e; 13'b0101100000100: data_out = 18'h3eeac; 13'b0101100000101: data_out = 18'h3f762; 13'b0101100000110: data_out = 18'h00328; 13'b0101100000111: data_out = 18'h00876; 13'b0101100001000: data_out = 18'h3f9e8; 13'b0101100001001: data_out = 18'h3f592; 13'b0101100001010: data_out = 18'h002d6; 13'b0101100001011: data_out = 18'h004be; 13'b0101100001100: data_out = 18'h3fd48; 13'b0101100001101: data_out = 18'h00f56; 13'b0101100001110: data_out = 18'h3f850; 13'b0101100001111: data_out = 18'h3e60e; 13'b0101100010000: data_out = 18'h3e3e6; 13'b0101100010001: data_out = 18'h00470; 13'b0101100010010: data_out = 18'h01066; 13'b0101100010011: data_out = 18'h00eb0; 13'b0101100010100: data_out = 18'h3fac2; 13'b0101100010101: data_out = 18'h3ff7c; 13'b0101100010110: data_out = 18'h005a2; 13'b0101100010111: data_out = 18'h0077e; 13'b0101100011000: data_out = 18'h3fb54; 13'b0101100011001: data_out = 18'h3f6b0; 13'b0101100011010: data_out = 18'h00178; 13'b0101100011011: data_out = 18'h3f24a; 13'b0101100011100: data_out = 18'h3fe6a; 13'b0101100011101: data_out = 18'h3e26e; 13'b0101100011110: data_out = 18'h3dc32; 13'b0101100011111: data_out = 18'h00afc; 13'b0101100100000: data_out = 18'h01348; 13'b0101100100001: data_out = 18'h3f562; 13'b0101100100010: data_out = 18'h3f8f2; 13'b0101100100011: data_out = 18'h3f6f8; 13'b0101100100100: data_out = 18'h3e80e; 13'b0101100100101: data_out = 18'h3e322; 13'b0101100100110: data_out = 18'h3f5e8; 13'b0101100100111: data_out = 18'h3faa8; 13'b0101100101000: data_out = 18'h3f5f2; 13'b0101100101001: data_out = 18'h3fe8e; 13'b0101100101010: data_out = 18'h00914; 13'b0101100101011: data_out = 18'h007a8; 13'b0101100101100: data_out = 18'h3f89a; 13'b0101100101101: data_out = 18'h0058c; 13'b0101100101110: data_out = 18'h00dba; 13'b0101100101111: data_out = 18'h3f7b2; 13'b0101100110000: data_out = 18'h3ea5c; 13'b0101100110001: data_out = 18'h3effc; 13'b0101100110010: data_out = 18'h3eaac; 13'b0101100110011: data_out = 18'h0045c; 13'b0101100110100: data_out = 18'h3fa68; 13'b0101100110101: data_out = 18'h3f3fc; 13'b0101100110110: data_out = 18'h3fa06; 13'b0101100110111: data_out = 18'h00b46; 13'b0101100111000: data_out = 18'h3f560; 13'b0101100111001: data_out = 18'h3eaf4; 13'b0101100111010: data_out = 18'h00ad8; 13'b0101100111011: data_out = 18'h0057a; 13'b0101100111100: data_out = 18'h3ff66; 13'b0101100111101: data_out = 18'h0092e; 13'b0101100111110: data_out = 18'h3f6d2; 13'b0101100111111: data_out = 18'h3faf4; 13'b0101101000000: data_out = 18'h004aa; 13'b0101101000001: data_out = 18'h3fdd8; 13'b0101101000010: data_out = 18'h3f298; 13'b0101101000011: data_out = 18'h00530; 13'b0101101000100: data_out = 18'h3f87c; 13'b0101101000101: data_out = 18'h3e77c; 13'b0101101000110: data_out = 18'h3fb70; 13'b0101101000111: data_out = 18'h0026e; 13'b0101101001000: data_out = 18'h3f1a0; 13'b0101101001001: data_out = 18'h3ec38; 13'b0101101001010: data_out = 18'h00e8c; 13'b0101101001011: data_out = 18'h010ca; 13'b0101101001100: data_out = 18'h3f0e6; 13'b0101101001101: data_out = 18'h3e8d2; 13'b0101101001110: data_out = 18'h3f2be; 13'b0101101001111: data_out = 18'h01324; 13'b0101101010000: data_out = 18'h00af6; 13'b0101101010001: data_out = 18'h3f4ac; 13'b0101101010010: data_out = 18'h3ffce; 13'b0101101010011: data_out = 18'h3fd8e; 13'b0101101010100: data_out = 18'h01faa; 13'b0101101010101: data_out = 18'h0207c; 13'b0101101010110: data_out = 18'h3fb42; 13'b0101101010111: data_out = 18'h0090c; 13'b0101101011000: data_out = 18'h3f642; 13'b0101101011001: data_out = 18'h00cee; 13'b0101101011010: data_out = 18'h00786; 13'b0101101011011: data_out = 18'h00798; 13'b0101101011100: data_out = 18'h0142e; 13'b0101101011101: data_out = 18'h3fec0; 13'b0101101011110: data_out = 18'h007a4; 13'b0101101011111: data_out = 18'h01998; 13'b0101101100000: data_out = 18'h010b8; 13'b0101101100001: data_out = 18'h00cb6; 13'b0101101100010: data_out = 18'h038ae; 13'b0101101100011: data_out = 18'h01bc4; 13'b0101101100100: data_out = 18'h00236; 13'b0101101100101: data_out = 18'h014ba; 13'b0101101100110: data_out = 18'h01ee6; 13'b0101101100111: data_out = 18'h027aa; 13'b0101101101000: data_out = 18'h028be; 13'b0101101101001: data_out = 18'h01b7c; 13'b0101101101010: data_out = 18'h0112a; 13'b0101101101011: data_out = 18'h01246; 13'b0101101101100: data_out = 18'h008ea; 13'b0101101101101: data_out = 18'h0059e; 13'b0101101101110: data_out = 18'h00f5a; 13'b0101101101111: data_out = 18'h022be; 13'b0101101110000: data_out = 18'h01448; 13'b0101101110001: data_out = 18'h00bd4; 13'b0101101110010: data_out = 18'h00240; 13'b0101101110011: data_out = 18'h00b48; 13'b0101101110100: data_out = 18'h0113a; 13'b0101101110101: data_out = 18'h00442; 13'b0101101110110: data_out = 18'h00590; 13'b0101101110111: data_out = 18'h3f758; 13'b0101101111000: data_out = 18'h3f728; 13'b0101101111001: data_out = 18'h00aa4; 13'b0101101111010: data_out = 18'h3fd68; 13'b0101101111011: data_out = 18'h3fae8; 13'b0101101111100: data_out = 18'h3f52e; 13'b0101101111101: data_out = 18'h3f672; 13'b0101101111110: data_out = 18'h3f686; 13'b0101101111111: data_out = 18'h3e2a2; 13'b0101110000000: data_out = 18'h3ef86; 13'b0101110000001: data_out = 18'h3f9ce; 13'b0101110000010: data_out = 18'h3e7c4; 13'b0101110000011: data_out = 18'h3e80a; 13'b0101110000100: data_out = 18'h3e88e; 13'b0101110000101: data_out = 18'h3f37e; 13'b0101110000110: data_out = 18'h3dd56; 13'b0101110000111: data_out = 18'h3e61c; 13'b0101110001000: data_out = 18'h000a6; 13'b0101110001001: data_out = 18'h3ee34; 13'b0101110001010: data_out = 18'h3e7b2; 13'b0101110001011: data_out = 18'h00380; 13'b0101110001100: data_out = 18'h3ec26; 13'b0101110001101: data_out = 18'h3e2c4; 13'b0101110001110: data_out = 18'h3f1ba; 13'b0101110001111: data_out = 18'h3eeb4; 13'b0101110010000: data_out = 18'h3e2fa; 13'b0101110010001: data_out = 18'h3eb76; 13'b0101110010010: data_out = 18'h3fc1e; 13'b0101110010011: data_out = 18'h3ed20; 13'b0101110010100: data_out = 18'h3f59e; 13'b0101110010101: data_out = 18'h007a4; 13'b0101110010110: data_out = 18'h3e4ec; 13'b0101110010111: data_out = 18'h3dd1e; 13'b0101110011000: data_out = 18'h3e792; 13'b0101110011001: data_out = 18'h3ecbc; 13'b0101110011010: data_out = 18'h3e9f2; 13'b0101110011011: data_out = 18'h3f142; 13'b0101110011100: data_out = 18'h0074e; 13'b0101110011101: data_out = 18'h3f170; 13'b0101110011110: data_out = 18'h3ebb8; 13'b0101110011111: data_out = 18'h000dc; 13'b0101110100000: data_out = 18'h3f848; 13'b0101110100001: data_out = 18'h3f934; 13'b0101110100010: data_out = 18'h003b4; 13'b0101110100011: data_out = 18'h3f634; 13'b0101110100100: data_out = 18'h3eb68; 13'b0101110100101: data_out = 18'h3f1ee; 13'b0101110100110: data_out = 18'h0035c; 13'b0101110100111: data_out = 18'h3fb26; 13'b0101110101000: data_out = 18'h3fb9e; 13'b0101110101001: data_out = 18'h0006c; 13'b0101110101010: data_out = 18'h3ff18; 13'b0101110101011: data_out = 18'h001e6; 13'b0101110101100: data_out = 18'h0030a; 13'b0101110101101: data_out = 18'h006b2; 13'b0101110101110: data_out = 18'h00c02; 13'b0101110101111: data_out = 18'h00708; 13'b0101110110000: data_out = 18'h3ff46; 13'b0101110110001: data_out = 18'h00b26; 13'b0101110110010: data_out = 18'h00c88; 13'b0101110110011: data_out = 18'h009bc; 13'b0101110110100: data_out = 18'h00708; 13'b0101110110101: data_out = 18'h00178; 13'b0101110110110: data_out = 18'h00dc6; 13'b0101110110111: data_out = 18'h3fe3c; 13'b0101110111000: data_out = 18'h00ff6; 13'b0101110111001: data_out = 18'h012c6; 13'b0101110111010: data_out = 18'h00c6e; 13'b0101110111011: data_out = 18'h3f52c; 13'b0101110111100: data_out = 18'h00bc6; 13'b0101110111101: data_out = 18'h011d4; 13'b0101110111110: data_out = 18'h00e64; 13'b0101110111111: data_out = 18'h3f87e; 13'b0101111000000: data_out = 18'h3fea0; 13'b0101111000001: data_out = 18'h01c3e; 13'b0101111000010: data_out = 18'h00f84; 13'b0101111000011: data_out = 18'h3fc7a; 13'b0101111000100: data_out = 18'h3f9f2; 13'b0101111000101: data_out = 18'h0215a; 13'b0101111000110: data_out = 18'h016de; 13'b0101111000111: data_out = 18'h006c4; 13'b0101111001000: data_out = 18'h00d88; 13'b0101111001001: data_out = 18'h007b0; 13'b0101111001010: data_out = 18'h016bc; 13'b0101111001011: data_out = 18'h00964; 13'b0101111001100: data_out = 18'h0030a; 13'b0101111001101: data_out = 18'h014cc; 13'b0101111001110: data_out = 18'h011d8; 13'b0101111001111: data_out = 18'h3f6b0; 13'b0101111010000: data_out = 18'h00d2e; 13'b0101111010001: data_out = 18'h01978; 13'b0101111010010: data_out = 18'h008b4; 13'b0101111010011: data_out = 18'h00f7a; 13'b0101111010100: data_out = 18'h00c38; 13'b0101111010101: data_out = 18'h0157e; 13'b0101111010110: data_out = 18'h00ef8; 13'b0101111010111: data_out = 18'h009e0; 13'b0101111011000: data_out = 18'h00056; 13'b0101111011001: data_out = 18'h00b7a; 13'b0101111011010: data_out = 18'h00e6e; 13'b0101111011011: data_out = 18'h00116; 13'b0101111011100: data_out = 18'h006b4; 13'b0101111011101: data_out = 18'h003cc; 13'b0101111011110: data_out = 18'h3ff1e; 13'b0101111011111: data_out = 18'h0100e; 13'b0101111100000: data_out = 18'h001d0; 13'b0101111100001: data_out = 18'h3ed1e; 13'b0101111100010: data_out = 18'h001c6; 13'b0101111100011: data_out = 18'h00c24; 13'b0101111100100: data_out = 18'h015aa; 13'b0101111100101: data_out = 18'h00a90; 13'b0101111100110: data_out = 18'h3f298; 13'b0101111100111: data_out = 18'h3fb04; 13'b0101111101000: data_out = 18'h3fe30; 13'b0101111101001: data_out = 18'h3fdac; 13'b0101111101010: data_out = 18'h3fa36; 13'b0101111101011: data_out = 18'h3f154; 13'b0101111101100: data_out = 18'h3faf2; 13'b0101111101101: data_out = 18'h3fd10; 13'b0101111101110: data_out = 18'h3edfa; 13'b0101111101111: data_out = 18'h3ef36; 13'b0101111110000: data_out = 18'h3fc06; 13'b0101111110001: data_out = 18'h00ac6; 13'b0101111110010: data_out = 18'h3e40e; 13'b0101111110011: data_out = 18'h3e73c; 13'b0101111110100: data_out = 18'h3fd8a; 13'b0101111110101: data_out = 18'h00010; 13'b0101111110110: data_out = 18'h3eeaa; 13'b0101111110111: data_out = 18'h3f2ba; 13'b0101111111000: data_out = 18'h3ffa8; 13'b0101111111001: data_out = 18'h3f870; 13'b0101111111010: data_out = 18'h3eb96; 13'b0101111111011: data_out = 18'h3ef42; 13'b0101111111100: data_out = 18'h003f8; 13'b0101111111101: data_out = 18'h00736; 13'b0101111111110: data_out = 18'h3ebd8; 13'b0101111111111: data_out = 18'h3fbc6; 13'b0110000000000: data_out = 18'h0014c; 13'b0110000000001: data_out = 18'h3e872; 13'b0110000000010: data_out = 18'h3e97c; 13'b0110000000011: data_out = 18'h3ffd4; 13'b0110000000100: data_out = 18'h3eb58; 13'b0110000000101: data_out = 18'h3edf2; 13'b0110000000110: data_out = 18'h3f036; 13'b0110000000111: data_out = 18'h3e4f6; 13'b0110000001000: data_out = 18'h3fdea; 13'b0110000001001: data_out = 18'h00312; 13'b0110000001010: data_out = 18'h3f7f6; 13'b0110000001011: data_out = 18'h3f3d6; 13'b0110000001100: data_out = 18'h00268; 13'b0110000001101: data_out = 18'h00f7c; 13'b0110000001110: data_out = 18'h3f886; 13'b0110000001111: data_out = 18'h3e744; 13'b0110000010000: data_out = 18'h3f426; 13'b0110000010001: data_out = 18'h00a8e; 13'b0110000010010: data_out = 18'h3f45a; 13'b0110000010011: data_out = 18'h3efea; 13'b0110000010100: data_out = 18'h3fe90; 13'b0110000010101: data_out = 18'h3fbb4; 13'b0110000010110: data_out = 18'h0025e; 13'b0110000010111: data_out = 18'h3eebc; 13'b0110000011000: data_out = 18'h3f9b0; 13'b0110000011001: data_out = 18'h3f560; 13'b0110000011010: data_out = 18'h00108; 13'b0110000011011: data_out = 18'h001a4; 13'b0110000011100: data_out = 18'h0038e; 13'b0110000011101: data_out = 18'h3fc14; 13'b0110000011110: data_out = 18'h004a6; 13'b0110000011111: data_out = 18'h3f278; 13'b0110000100000: data_out = 18'h007d6; 13'b0110000100001: data_out = 18'h00d64; 13'b0110000100010: data_out = 18'h3f698; 13'b0110000100011: data_out = 18'h3f81c; 13'b0110000100100: data_out = 18'h0061e; 13'b0110000100101: data_out = 18'h01e02; 13'b0110000100110: data_out = 18'h00774; 13'b0110000100111: data_out = 18'h3f388; 13'b0110000101000: data_out = 18'h3f410; 13'b0110000101001: data_out = 18'h019a8; 13'b0110000101010: data_out = 18'h015fc; 13'b0110000101011: data_out = 18'h3fe02; 13'b0110000101100: data_out = 18'h003ac; 13'b0110000101101: data_out = 18'h00098; 13'b0110000101110: data_out = 18'h3fe44; 13'b0110000101111: data_out = 18'h00372; 13'b0110000110000: data_out = 18'h01056; 13'b0110000110001: data_out = 18'h001d6; 13'b0110000110010: data_out = 18'h3f764; 13'b0110000110011: data_out = 18'h3f798; 13'b0110000110100: data_out = 18'h00124; 13'b0110000110101: data_out = 18'h004be; 13'b0110000110110: data_out = 18'h00548; 13'b0110000110111: data_out = 18'h3ff32; 13'b0110000111000: data_out = 18'h0065a; 13'b0110000111001: data_out = 18'h01a7e; 13'b0110000111010: data_out = 18'h3f856; 13'b0110000111011: data_out = 18'h3f652; 13'b0110000111100: data_out = 18'h3fb1a; 13'b0110000111101: data_out = 18'h0008c; 13'b0110000111110: data_out = 18'h00112; 13'b0110000111111: data_out = 18'h0017c; 13'b0110001000000: data_out = 18'h018ee; 13'b0110001000001: data_out = 18'h00af0; 13'b0110001000010: data_out = 18'h00820; 13'b0110001000011: data_out = 18'h012e2; 13'b0110001000100: data_out = 18'h00cd0; 13'b0110001000101: data_out = 18'h00590; 13'b0110001000110: data_out = 18'h018ca; 13'b0110001000111: data_out = 18'h01d6c; 13'b0110001001000: data_out = 18'h01168; 13'b0110001001001: data_out = 18'h019d0; 13'b0110001001010: data_out = 18'h00414; 13'b0110001001011: data_out = 18'h01470; 13'b0110001001100: data_out = 18'h02506; 13'b0110001001101: data_out = 18'h0175c; 13'b0110001001110: data_out = 18'h006ec; 13'b0110001001111: data_out = 18'h0020a; 13'b0110001010000: data_out = 18'h0156c; 13'b0110001010001: data_out = 18'h012b0; 13'b0110001010010: data_out = 18'h016fe; 13'b0110001010011: data_out = 18'h00ece; 13'b0110001010100: data_out = 18'h00814; 13'b0110001010101: data_out = 18'h016b2; 13'b0110001010110: data_out = 18'h018a6; 13'b0110001010111: data_out = 18'h000a2; 13'b0110001011000: data_out = 18'h3fd62; 13'b0110001011001: data_out = 18'h001ce; 13'b0110001011010: data_out = 18'h00812; 13'b0110001011011: data_out = 18'h00a36; 13'b0110001011100: data_out = 18'h3f7ae; 13'b0110001011101: data_out = 18'h3f196; 13'b0110001011110: data_out = 18'h3f75e; 13'b0110001011111: data_out = 18'h3fafc; 13'b0110001100000: data_out = 18'h3fef6; 13'b0110001100001: data_out = 18'h3f1a4; 13'b0110001100010: data_out = 18'h3eca2; 13'b0110001100011: data_out = 18'h3f260; 13'b0110001100100: data_out = 18'h3f3de; 13'b0110001100101: data_out = 18'h3ef10; 13'b0110001100110: data_out = 18'h3ddea; 13'b0110001100111: data_out = 18'h3e028; 13'b0110001101000: data_out = 18'h3f852; 13'b0110001101001: data_out = 18'h3e362; 13'b0110001101010: data_out = 18'h3dfe8; 13'b0110001101011: data_out = 18'h3ec2e; 13'b0110001101100: data_out = 18'h3e24e; 13'b0110001101101: data_out = 18'h3ddd4; 13'b0110001101110: data_out = 18'h3ee24; 13'b0110001101111: data_out = 18'h3f106; 13'b0110001110000: data_out = 18'h3ec68; 13'b0110001110001: data_out = 18'h3df42; 13'b0110001110010: data_out = 18'h3ea28; 13'b0110001110011: data_out = 18'h3ed0c; 13'b0110001110100: data_out = 18'h3f77e; 13'b0110001110101: data_out = 18'h3fc54; 13'b0110001110110: data_out = 18'h3f2e8; 13'b0110001110111: data_out = 18'h3f22a; 13'b0110001111000: data_out = 18'h3f504; 13'b0110001111001: data_out = 18'h3fdec; 13'b0110001111010: data_out = 18'h3f6e8; 13'b0110001111011: data_out = 18'h3f752; 13'b0110001111100: data_out = 18'h0094c; 13'b0110001111101: data_out = 18'h00942; 13'b0110001111110: data_out = 18'h00fc0; 13'b0110001111111: data_out = 18'h009d0; 13'b0110010000000: data_out = 18'h003d4; 13'b0110010000001: data_out = 18'h3fc0c; 13'b0110010000010: data_out = 18'h3f6f6; 13'b0110010000011: data_out = 18'h0013e; 13'b0110010000100: data_out = 18'h006ea; 13'b0110010000101: data_out = 18'h00b30; 13'b0110010000110: data_out = 18'h3f924; 13'b0110010000111: data_out = 18'h3f488; 13'b0110010001000: data_out = 18'h00ae4; 13'b0110010001001: data_out = 18'h3f502; 13'b0110010001010: data_out = 18'h3f12e; 13'b0110010001011: data_out = 18'h00bcc; 13'b0110010001100: data_out = 18'h00ac6; 13'b0110010001101: data_out = 18'h006fe; 13'b0110010001110: data_out = 18'h3f34c; 13'b0110010001111: data_out = 18'h3eb28; 13'b0110010010000: data_out = 18'h3fc2a; 13'b0110010010001: data_out = 18'h005be; 13'b0110010010010: data_out = 18'h3fed4; 13'b0110010010011: data_out = 18'h3fcf2; 13'b0110010010100: data_out = 18'h00510; 13'b0110010010101: data_out = 18'h0050a; 13'b0110010010110: data_out = 18'h3ff60; 13'b0110010010111: data_out = 18'h3f2ba; 13'b0110010011000: data_out = 18'h002ce; 13'b0110010011001: data_out = 18'h009b6; 13'b0110010011010: data_out = 18'h001da; 13'b0110010011011: data_out = 18'h0062a; 13'b0110010011100: data_out = 18'h00a14; 13'b0110010011101: data_out = 18'h0052a; 13'b0110010011110: data_out = 18'h00ad2; 13'b0110010011111: data_out = 18'h00f94; 13'b0110010100000: data_out = 18'h00990; 13'b0110010100001: data_out = 18'h00ef4; 13'b0110010100010: data_out = 18'h01032; 13'b0110010100011: data_out = 18'h011dc; 13'b0110010100100: data_out = 18'h00c32; 13'b0110010100101: data_out = 18'h00ac0; 13'b0110010100110: data_out = 18'h3fbfc; 13'b0110010100111: data_out = 18'h00ce6; 13'b0110010101000: data_out = 18'h01022; 13'b0110010101001: data_out = 18'h005c4; 13'b0110010101010: data_out = 18'h01600; 13'b0110010101011: data_out = 18'h00720; 13'b0110010101100: data_out = 18'h0084c; 13'b0110010101101: data_out = 18'h00a70; 13'b0110010101110: data_out = 18'h3fdec; 13'b0110010101111: data_out = 18'h0086c; 13'b0110010110000: data_out = 18'h00abc; 13'b0110010110001: data_out = 18'h01314; 13'b0110010110010: data_out = 18'h00c9c; 13'b0110010110011: data_out = 18'h0022c; 13'b0110010110100: data_out = 18'h006c2; 13'b0110010110101: data_out = 18'h012cc; 13'b0110010110110: data_out = 18'h010f8; 13'b0110010110111: data_out = 18'h0158a; 13'b0110010111000: data_out = 18'h00e82; 13'b0110010111001: data_out = 18'h00072; 13'b0110010111010: data_out = 18'h00a82; 13'b0110010111011: data_out = 18'h003ae; 13'b0110010111100: data_out = 18'h00732; 13'b0110010111101: data_out = 18'h004e0; 13'b0110010111110: data_out = 18'h0081e; 13'b0110010111111: data_out = 18'h00098; 13'b0110011000000: data_out = 18'h3f4f6; 13'b0110011000001: data_out = 18'h003ea; 13'b0110011000010: data_out = 18'h3fd1c; 13'b0110011000011: data_out = 18'h3ffaa; 13'b0110011000100: data_out = 18'h3ef18; 13'b0110011000101: data_out = 18'h3fa6c; 13'b0110011000110: data_out = 18'h00ce6; 13'b0110011000111: data_out = 18'h00912; 13'b0110011001000: data_out = 18'h3fb26; 13'b0110011001001: data_out = 18'h3f58a; 13'b0110011001010: data_out = 18'h3f1f8; 13'b0110011001011: data_out = 18'h3fc82; 13'b0110011001100: data_out = 18'h3f894; 13'b0110011001101: data_out = 18'h3e6b4; 13'b0110011001110: data_out = 18'h3eb00; 13'b0110011001111: data_out = 18'h3f4da; 13'b0110011010000: data_out = 18'h3f8d4; 13'b0110011010001: data_out = 18'h00178; 13'b0110011010010: data_out = 18'h3f4d8; 13'b0110011010011: data_out = 18'h3ebe4; 13'b0110011010100: data_out = 18'h3f820; 13'b0110011010101: data_out = 18'h3fbea; 13'b0110011010110: data_out = 18'h3e9aa; 13'b0110011010111: data_out = 18'h3e4ea; 13'b0110011011000: data_out = 18'h3eace; 13'b0110011011001: data_out = 18'h3f424; 13'b0110011011010: data_out = 18'h3f80c; 13'b0110011011011: data_out = 18'h3f3f2; 13'b0110011011100: data_out = 18'h3e1de; 13'b0110011011101: data_out = 18'h3ee9a; 13'b0110011011110: data_out = 18'h3fe1c; 13'b0110011011111: data_out = 18'h3fb7a; 13'b0110011100000: data_out = 18'h3fd8c; 13'b0110011100001: data_out = 18'h3f2ba; 13'b0110011100010: data_out = 18'h3f378; 13'b0110011100011: data_out = 18'h3fc54; 13'b0110011100100: data_out = 18'h3f87c; 13'b0110011100101: data_out = 18'h3ff8a; 13'b0110011100110: data_out = 18'h3f82e; 13'b0110011100111: data_out = 18'h00362; 13'b0110011101000: data_out = 18'h00736; 13'b0110011101001: data_out = 18'h0014a; 13'b0110011101010: data_out = 18'h00dd8; 13'b0110011101011: data_out = 18'h001c6; 13'b0110011101100: data_out = 18'h006bc; 13'b0110011101101: data_out = 18'h00ce2; 13'b0110011101110: data_out = 18'h000be; 13'b0110011101111: data_out = 18'h3ffd8; 13'b0110011110000: data_out = 18'h0023c; 13'b0110011110001: data_out = 18'h00ba8; 13'b0110011110010: data_out = 18'h00196; 13'b0110011110011: data_out = 18'h0108e; 13'b0110011110100: data_out = 18'h009f4; 13'b0110011110101: data_out = 18'h00506; 13'b0110011110110: data_out = 18'h00ef8; 13'b0110011110111: data_out = 18'h002b6; 13'b0110011111000: data_out = 18'h0013a; 13'b0110011111001: data_out = 18'h00cfc; 13'b0110011111010: data_out = 18'h00c82; 13'b0110011111011: data_out = 18'h008cc; 13'b0110011111100: data_out = 18'h00952; 13'b0110011111101: data_out = 18'h004e6; 13'b0110011111110: data_out = 18'h00a3c; 13'b0110011111111: data_out = 18'h00872; 13'b0110100000000: data_out = 18'h3f294; 13'b0110100000001: data_out = 18'h0000c; 13'b0110100000010: data_out = 18'h002c4; 13'b0110100000011: data_out = 18'h00522; 13'b0110100000100: data_out = 18'h3fd72; 13'b0110100000101: data_out = 18'h3f52c; 13'b0110100000110: data_out = 18'h00666; 13'b0110100000111: data_out = 18'h3ff68; 13'b0110100001000: data_out = 18'h005c6; 13'b0110100001001: data_out = 18'h3f028; 13'b0110100001010: data_out = 18'h3f01c; 13'b0110100001011: data_out = 18'h3fed8; 13'b0110100001100: data_out = 18'h3fdfe; 13'b0110100001101: data_out = 18'h3f59c; 13'b0110100001110: data_out = 18'h3ffc6; 13'b0110100001111: data_out = 18'h3f0ce; 13'b0110100010000: data_out = 18'h3fb9a; 13'b0110100010001: data_out = 18'h00780; 13'b0110100010010: data_out = 18'h0012e; 13'b0110100010011: data_out = 18'h3f930; 13'b0110100010100: data_out = 18'h3f7e6; 13'b0110100010101: data_out = 18'h00a68; 13'b0110100010110: data_out = 18'h00a94; 13'b0110100010111: data_out = 18'h3f86c; 13'b0110100011000: data_out = 18'h3ecae; 13'b0110100011001: data_out = 18'h0030e; 13'b0110100011010: data_out = 18'h018c4; 13'b0110100011011: data_out = 18'h013f0; 13'b0110100011100: data_out = 18'h3fcf8; 13'b0110100011101: data_out = 18'h006b6; 13'b0110100011110: data_out = 18'h0017c; 13'b0110100011111: data_out = 18'h3fe14; 13'b0110100100000: data_out = 18'h3fbdc; 13'b0110100100001: data_out = 18'h3fbf2; 13'b0110100100010: data_out = 18'h3f5a0; 13'b0110100100011: data_out = 18'h3f9cc; 13'b0110100100100: data_out = 18'h00fe6; 13'b0110100100101: data_out = 18'h00342; 13'b0110100100110: data_out = 18'h3fd98; 13'b0110100100111: data_out = 18'h002e6; 13'b0110100101000: data_out = 18'h3f4ea; 13'b0110100101001: data_out = 18'h3fe16; 13'b0110100101010: data_out = 18'h00974; 13'b0110100101011: data_out = 18'h00124; 13'b0110100101100: data_out = 18'h3f72e; 13'b0110100101101: data_out = 18'h00012; 13'b0110100101110: data_out = 18'h3f920; 13'b0110100101111: data_out = 18'h3f740; 13'b0110100110000: data_out = 18'h3fbe2; 13'b0110100110001: data_out = 18'h0084e; 13'b0110100110010: data_out = 18'h006f0; 13'b0110100110011: data_out = 18'h000ec; 13'b0110100110100: data_out = 18'h00d26; 13'b0110100110101: data_out = 18'h00ab4; 13'b0110100110110: data_out = 18'h00132; 13'b0110100110111: data_out = 18'h00c3c; 13'b0110100111000: data_out = 18'h01362; 13'b0110100111001: data_out = 18'h3fb1e; 13'b0110100111010: data_out = 18'h00b2a; 13'b0110100111011: data_out = 18'h00a36; 13'b0110100111100: data_out = 18'h00326; 13'b0110100111101: data_out = 18'h00044; 13'b0110100111110: data_out = 18'h0083e; 13'b0110100111111: data_out = 18'h0016a; 13'b0110101000000: data_out = 18'h004ba; 13'b0110101000001: data_out = 18'h00a84; 13'b0110101000010: data_out = 18'h3fa8e; 13'b0110101000011: data_out = 18'h3fb22; 13'b0110101000100: data_out = 18'h00a00; 13'b0110101000101: data_out = 18'h01714; 13'b0110101000110: data_out = 18'h00a66; 13'b0110101000111: data_out = 18'h3fb1c; 13'b0110101001000: data_out = 18'h3fe24; 13'b0110101001001: data_out = 18'h0080c; 13'b0110101001010: data_out = 18'h3fd92; 13'b0110101001011: data_out = 18'h3f940; 13'b0110101001100: data_out = 18'h0008a; 13'b0110101001101: data_out = 18'h00278; 13'b0110101001110: data_out = 18'h3fc7a; 13'b0110101001111: data_out = 18'h3f8c0; 13'b0110101010000: data_out = 18'h00338; 13'b0110101010001: data_out = 18'h3f958; 13'b0110101010010: data_out = 18'h00546; 13'b0110101010011: data_out = 18'h3ff0e; 13'b0110101010100: data_out = 18'h3f68a; 13'b0110101010101: data_out = 18'h3f78a; 13'b0110101010110: data_out = 18'h0010c; 13'b0110101010111: data_out = 18'h3f22e; 13'b0110101011000: data_out = 18'h3ee02; 13'b0110101011001: data_out = 18'h3eaa8; 13'b0110101011010: data_out = 18'h3e990; 13'b0110101011011: data_out = 18'h001b0; 13'b0110101011100: data_out = 18'h3ff00; 13'b0110101011101: data_out = 18'h3f57e; 13'b0110101011110: data_out = 18'h3edb8; 13'b0110101011111: data_out = 18'h3f09e; 13'b0110101100000: data_out = 18'h3f678; 13'b0110101100001: data_out = 18'h3fba6; 13'b0110101100010: data_out = 18'h3ec76; 13'b0110101100011: data_out = 18'h3eebe; 13'b0110101100100: data_out = 18'h3f3e8; 13'b0110101100101: data_out = 18'h006f4; 13'b0110101100110: data_out = 18'h3f60e; 13'b0110101100111: data_out = 18'h3ff76; 13'b0110101101000: data_out = 18'h00924; 13'b0110101101001: data_out = 18'h3e62e; 13'b0110101101010: data_out = 18'h3f4ea; 13'b0110101101011: data_out = 18'h0018e; 13'b0110101101100: data_out = 18'h003d2; 13'b0110101101101: data_out = 18'h007f0; 13'b0110101101110: data_out = 18'h00f58; 13'b0110101101111: data_out = 18'h00654; 13'b0110101110000: data_out = 18'h00254; 13'b0110101110001: data_out = 18'h00b08; 13'b0110101110010: data_out = 18'h00e36; 13'b0110101110011: data_out = 18'h003c0; 13'b0110101110100: data_out = 18'h00090; 13'b0110101110101: data_out = 18'h3fc88; 13'b0110101110110: data_out = 18'h3fb5a; 13'b0110101110111: data_out = 18'h3fe68; 13'b0110101111000: data_out = 18'h006da; 13'b0110101111001: data_out = 18'h00246; 13'b0110101111010: data_out = 18'h00342; 13'b0110101111011: data_out = 18'h3f43c; 13'b0110101111100: data_out = 18'h3fdca; 13'b0110101111101: data_out = 18'h00eae; 13'b0110101111110: data_out = 18'h0096c; 13'b0110101111111: data_out = 18'h00292; 13'b0110110000000: data_out = 18'h3ee92; 13'b0110110000001: data_out = 18'h3fbe4; 13'b0110110000010: data_out = 18'h00318; 13'b0110110000011: data_out = 18'h00aee; 13'b0110110000100: data_out = 18'h3fbc8; 13'b0110110000101: data_out = 18'h3f3da; 13'b0110110000110: data_out = 18'h00738; 13'b0110110000111: data_out = 18'h00568; 13'b0110110001000: data_out = 18'h003be; 13'b0110110001001: data_out = 18'h003e2; 13'b0110110001010: data_out = 18'h3f7dc; 13'b0110110001011: data_out = 18'h3fda0; 13'b0110110001100: data_out = 18'h0075c; 13'b0110110001101: data_out = 18'h007f8; 13'b0110110001110: data_out = 18'h0050a; 13'b0110110001111: data_out = 18'h3f998; 13'b0110110010000: data_out = 18'h002c6; 13'b0110110010001: data_out = 18'h00a8c; 13'b0110110010010: data_out = 18'h008e6; 13'b0110110010011: data_out = 18'h0082c; 13'b0110110010100: data_out = 18'h3f9be; 13'b0110110010101: data_out = 18'h3fae0; 13'b0110110010110: data_out = 18'h00646; 13'b0110110010111: data_out = 18'h00d38; 13'b0110110011000: data_out = 18'h00dc2; 13'b0110110011001: data_out = 18'h0057c; 13'b0110110011010: data_out = 18'h003c4; 13'b0110110011011: data_out = 18'h3fdd4; 13'b0110110011100: data_out = 18'h007ce; 13'b0110110011101: data_out = 18'h00930; 13'b0110110011110: data_out = 18'h012fc; 13'b0110110011111: data_out = 18'h00b62; 13'b0110110100000: data_out = 18'h0090c; 13'b0110110100001: data_out = 18'h00708; 13'b0110110100010: data_out = 18'h0037c; 13'b0110110100011: data_out = 18'h00d5c; 13'b0110110100100: data_out = 18'h00854; 13'b0110110100101: data_out = 18'h3fe42; 13'b0110110100110: data_out = 18'h00d5a; 13'b0110110100111: data_out = 18'h005b6; 13'b0110110101000: data_out = 18'h3f752; 13'b0110110101001: data_out = 18'h3f85a; 13'b0110110101010: data_out = 18'h3fa12; 13'b0110110101011: data_out = 18'h3ff2a; 13'b0110110101100: data_out = 18'h00a36; 13'b0110110101101: data_out = 18'h00bea; 13'b0110110101110: data_out = 18'h3f342; 13'b0110110101111: data_out = 18'h3ed98; 13'b0110110110000: data_out = 18'h3f45e; 13'b0110110110001: data_out = 18'h3f2fa; 13'b0110110110010: data_out = 18'h3fde6; 13'b0110110110011: data_out = 18'h3f284; 13'b0110110110100: data_out = 18'h3e2d8; 13'b0110110110101: data_out = 18'h3f222; 13'b0110110110110: data_out = 18'h3ff5e; 13'b0110110110111: data_out = 18'h3ff32; 13'b0110110111000: data_out = 18'h3fe3e; 13'b0110110111001: data_out = 18'h3fb1e; 13'b0110110111010: data_out = 18'h3eb22; 13'b0110110111011: data_out = 18'h3f224; 13'b0110110111100: data_out = 18'h3ff26; 13'b0110110111101: data_out = 18'h3fff0; 13'b0110110111110: data_out = 18'h3f768; 13'b0110110111111: data_out = 18'h3fb0a; 13'b0110111000000: data_out = 18'h0005a; 13'b0110111000001: data_out = 18'h006de; 13'b0110111000010: data_out = 18'h3f7f0; 13'b0110111000011: data_out = 18'h3e7b4; 13'b0110111000100: data_out = 18'h3fbba; 13'b0110111000101: data_out = 18'h012f6; 13'b0110111000110: data_out = 18'h0076e; 13'b0110111000111: data_out = 18'h3f5ae; 13'b0110111001000: data_out = 18'h000b8; 13'b0110111001001: data_out = 18'h00c24; 13'b0110111001010: data_out = 18'h0078c; 13'b0110111001011: data_out = 18'h00344; 13'b0110111001100: data_out = 18'h3f186; 13'b0110111001101: data_out = 18'h3f2fe; 13'b0110111001110: data_out = 18'h3f55e; 13'b0110111001111: data_out = 18'h002a0; 13'b0110111010000: data_out = 18'h00e92; 13'b0110111010001: data_out = 18'h000d0; 13'b0110111010010: data_out = 18'h3fff6; 13'b0110111010011: data_out = 18'h0007a; 13'b0110111010100: data_out = 18'h007e6; 13'b0110111010101: data_out = 18'h0074e; 13'b0110111010110: data_out = 18'h0058c; 13'b0110111010111: data_out = 18'h00108; 13'b0110111011000: data_out = 18'h3fe82; 13'b0110111011001: data_out = 18'h0055c; 13'b0110111011010: data_out = 18'h00e56; 13'b0110111011011: data_out = 18'h00c86; 13'b0110111011100: data_out = 18'h003d2; 13'b0110111011101: data_out = 18'h3ff2c; 13'b0110111011110: data_out = 18'h00a4c; 13'b0110111011111: data_out = 18'h01bc6; 13'b0110111100000: data_out = 18'h015a8; 13'b0110111100001: data_out = 18'h004a2; 13'b0110111100010: data_out = 18'h3ff1e; 13'b0110111100011: data_out = 18'h3faa0; 13'b0110111100100: data_out = 18'h3f684; 13'b0110111100101: data_out = 18'h0050c; 13'b0110111100110: data_out = 18'h00aae; 13'b0110111100111: data_out = 18'h000b6; 13'b0110111101000: data_out = 18'h3f308; 13'b0110111101001: data_out = 18'h00c34; 13'b0110111101010: data_out = 18'h010ae; 13'b0110111101011: data_out = 18'h3fbc4; 13'b0110111101100: data_out = 18'h006b0; 13'b0110111101101: data_out = 18'h00216; 13'b0110111101110: data_out = 18'h3f914; 13'b0110111101111: data_out = 18'h3f5f0; 13'b0110111110000: data_out = 18'h3fb8a; 13'b0110111110001: data_out = 18'h3f640; 13'b0110111110010: data_out = 18'h00416; 13'b0110111110011: data_out = 18'h00306; 13'b0110111110100: data_out = 18'h3ef5c; 13'b0110111110101: data_out = 18'h3fb4a; 13'b0110111110110: data_out = 18'h3eaf2; 13'b0110111110111: data_out = 18'h3ec0a; 13'b0110111111000: data_out = 18'h3fcbc; 13'b0110111111001: data_out = 18'h3f7c6; 13'b0110111111010: data_out = 18'h3ee0c; 13'b0110111111011: data_out = 18'h3f0fa; 13'b0110111111100: data_out = 18'h3f20a; 13'b0110111111101: data_out = 18'h3f922; 13'b0110111111110: data_out = 18'h3ebf2; 13'b0110111111111: data_out = 18'h3ef04; 13'b0111000000000: data_out = 18'h3fbe4; 13'b0111000000001: data_out = 18'h3f436; 13'b0111000000010: data_out = 18'h3fda0; 13'b0111000000011: data_out = 18'h3fcec; 13'b0111000000100: data_out = 18'h001b8; 13'b0111000000101: data_out = 18'h3fd8a; 13'b0111000000110: data_out = 18'h3f246; 13'b0111000000111: data_out = 18'h00568; 13'b0111000001000: data_out = 18'h009fe; 13'b0111000001001: data_out = 18'h3fe1a; 13'b0111000001010: data_out = 18'h0023c; 13'b0111000001011: data_out = 18'h00278; 13'b0111000001100: data_out = 18'h3f72a; 13'b0111000001101: data_out = 18'h3fbc0; 13'b0111000001110: data_out = 18'h3f858; 13'b0111000001111: data_out = 18'h00a32; 13'b0111000010000: data_out = 18'h00482; 13'b0111000010001: data_out = 18'h004f0; 13'b0111000010010: data_out = 18'h013ee; 13'b0111000010011: data_out = 18'h00bb4; 13'b0111000010100: data_out = 18'h00b10; 13'b0111000010101: data_out = 18'h004e0; 13'b0111000010110: data_out = 18'h00346; 13'b0111000010111: data_out = 18'h008d0; 13'b0111000011000: data_out = 18'h0083c; 13'b0111000011001: data_out = 18'h3fee4; 13'b0111000011010: data_out = 18'h006a8; 13'b0111000011011: data_out = 18'h01192; 13'b0111000011100: data_out = 18'h01104; 13'b0111000011101: data_out = 18'h01216; 13'b0111000011110: data_out = 18'h00bb0; 13'b0111000011111: data_out = 18'h00a2e; 13'b0111000100000: data_out = 18'h011da; 13'b0111000100001: data_out = 18'h00d84; 13'b0111000100010: data_out = 18'h3fee8; 13'b0111000100011: data_out = 18'h007de; 13'b0111000100100: data_out = 18'h00dcc; 13'b0111000100101: data_out = 18'h00a20; 13'b0111000100110: data_out = 18'h3fcde; 13'b0111000100111: data_out = 18'h00d34; 13'b0111000101000: data_out = 18'h007d2; 13'b0111000101001: data_out = 18'h3f59a; 13'b0111000101010: data_out = 18'h3fadc; 13'b0111000101011: data_out = 18'h00968; 13'b0111000101100: data_out = 18'h0096c; 13'b0111000101101: data_out = 18'h3f87c; 13'b0111000101110: data_out = 18'h3fdd0; 13'b0111000101111: data_out = 18'h000d6; 13'b0111000110000: data_out = 18'h3f604; 13'b0111000110001: data_out = 18'h3f7a4; 13'b0111000110010: data_out = 18'h3fd5a; 13'b0111000110011: data_out = 18'h3fe5a; 13'b0111000110100: data_out = 18'h3edec; 13'b0111000110101: data_out = 18'h3f4cc; 13'b0111000110110: data_out = 18'h3fdbe; 13'b0111000110111: data_out = 18'h3fe86; 13'b0111000111000: data_out = 18'h3fc8e; 13'b0111000111001: data_out = 18'h3f870; 13'b0111000111010: data_out = 18'h001d8; 13'b0111000111011: data_out = 18'h0071e; 13'b0111000111100: data_out = 18'h3fbaa; 13'b0111000111101: data_out = 18'h3eeea; 13'b0111000111110: data_out = 18'h3f702; 13'b0111000111111: data_out = 18'h3f840; 13'b0111001000000: data_out = 18'h002a4; 13'b0111001000001: data_out = 18'h00846; 13'b0111001000010: data_out = 18'h3fa42; 13'b0111001000011: data_out = 18'h0016c; 13'b0111001000100: data_out = 18'h006ea; 13'b0111001000101: data_out = 18'h3fe38; 13'b0111001000110: data_out = 18'h3f99e; 13'b0111001000111: data_out = 18'h3fce2; 13'b0111001001000: data_out = 18'h3fc24; 13'b0111001001001: data_out = 18'h3f77e; 13'b0111001001010: data_out = 18'h3ff6c; 13'b0111001001011: data_out = 18'h3ff06; 13'b0111001001100: data_out = 18'h00128; 13'b0111001001101: data_out = 18'h3fc52; 13'b0111001001110: data_out = 18'h3fe1a; 13'b0111001001111: data_out = 18'h3fc7e; 13'b0111001010000: data_out = 18'h3f31a; 13'b0111001010001: data_out = 18'h3f2ec; 13'b0111001010010: data_out = 18'h3fbc4; 13'b0111001010011: data_out = 18'h0043a; 13'b0111001010100: data_out = 18'h3faea; 13'b0111001010101: data_out = 18'h3fd60; 13'b0111001010110: data_out = 18'h3f0fc; 13'b0111001010111: data_out = 18'h3f086; 13'b0111001011000: data_out = 18'h00394; 13'b0111001011001: data_out = 18'h004c2; 13'b0111001011010: data_out = 18'h00196; 13'b0111001011011: data_out = 18'h3f5cc; 13'b0111001011100: data_out = 18'h3f626; 13'b0111001011101: data_out = 18'h0036a; 13'b0111001011110: data_out = 18'h00088; 13'b0111001011111: data_out = 18'h3f9d2; 13'b0111001100000: data_out = 18'h3fd00; 13'b0111001100001: data_out = 18'h0044a; 13'b0111001100010: data_out = 18'h3f8d0; 13'b0111001100011: data_out = 18'h00346; 13'b0111001100100: data_out = 18'h005b4; 13'b0111001100101: data_out = 18'h3fd1a; 13'b0111001100110: data_out = 18'h3fd22; 13'b0111001100111: data_out = 18'h0065e; 13'b0111001101000: data_out = 18'h3fd4a; 13'b0111001101001: data_out = 18'h3f80a; 13'b0111001101010: data_out = 18'h008fe; 13'b0111001101011: data_out = 18'h01240; 13'b0111001101100: data_out = 18'h00756; 13'b0111001101101: data_out = 18'h3fff6; 13'b0111001101110: data_out = 18'h00780; 13'b0111001101111: data_out = 18'h00a7c; 13'b0111001110000: data_out = 18'h3f9b6; 13'b0111001110001: data_out = 18'h3fb92; 13'b0111001110010: data_out = 18'h00ef4; 13'b0111001110011: data_out = 18'h00a32; 13'b0111001110100: data_out = 18'h0013e; 13'b0111001110101: data_out = 18'h0024a; 13'b0111001110110: data_out = 18'h0120a; 13'b0111001110111: data_out = 18'h0099c; 13'b0111001111000: data_out = 18'h3ff46; 13'b0111001111001: data_out = 18'h3fe64; 13'b0111001111010: data_out = 18'h00e3a; 13'b0111001111011: data_out = 18'h00514; 13'b0111001111100: data_out = 18'h3f9b0; 13'b0111001111101: data_out = 18'h0005a; 13'b0111001111110: data_out = 18'h3fe50; 13'b0111001111111: data_out = 18'h0069e; 13'b0111010000000: data_out = 18'h00dac; 13'b0111010000001: data_out = 18'h0065c; 13'b0111010000010: data_out = 18'h013d2; 13'b0111010000011: data_out = 18'h0049e; 13'b0111010000100: data_out = 18'h00b80; 13'b0111010000101: data_out = 18'h00504; 13'b0111010000110: data_out = 18'h0062c; 13'b0111010000111: data_out = 18'h00b34; 13'b0111010001000: data_out = 18'h003fc; 13'b0111010001001: data_out = 18'h3fe82; 13'b0111010001010: data_out = 18'h3ff06; 13'b0111010001011: data_out = 18'h3fe86; 13'b0111010001100: data_out = 18'h002b8; 13'b0111010001101: data_out = 18'h006c0; 13'b0111010001110: data_out = 18'h3fdf2; 13'b0111010001111: data_out = 18'h3f740; 13'b0111010010000: data_out = 18'h3f62c; 13'b0111010010001: data_out = 18'h3f6fa; 13'b0111010010010: data_out = 18'h00662; 13'b0111010010011: data_out = 18'h00244; 13'b0111010010100: data_out = 18'h3fb68; 13'b0111010010101: data_out = 18'h3f9e8; 13'b0111010010110: data_out = 18'h3fd16; 13'b0111010010111: data_out = 18'h3ee4c; 13'b0111010011000: data_out = 18'h3ead4; 13'b0111010011001: data_out = 18'h3f792; 13'b0111010011010: data_out = 18'h3e84c; 13'b0111010011011: data_out = 18'h3f264; 13'b0111010011100: data_out = 18'h3f47c; 13'b0111010011101: data_out = 18'h3f22e; 13'b0111010011110: data_out = 18'h3f552; 13'b0111010011111: data_out = 18'h3f582; 13'b0111010100000: data_out = 18'h002fa; 13'b0111010100001: data_out = 18'h3f582; 13'b0111010100010: data_out = 18'h3ebf6; 13'b0111010100011: data_out = 18'h3fdca; 13'b0111010100100: data_out = 18'h3f536; 13'b0111010100101: data_out = 18'h3f032; 13'b0111010100110: data_out = 18'h3fd88; 13'b0111010100111: data_out = 18'h3fe0a; 13'b0111010101000: data_out = 18'h3f966; 13'b0111010101001: data_out = 18'h3fc8a; 13'b0111010101010: data_out = 18'h3ff7a; 13'b0111010101011: data_out = 18'h0084e; 13'b0111010101100: data_out = 18'h3ffd8; 13'b0111010101101: data_out = 18'h3f492; 13'b0111010101110: data_out = 18'h3fdea; 13'b0111010101111: data_out = 18'h3fbf6; 13'b0111010110000: data_out = 18'h013ae; 13'b0111010110001: data_out = 18'h00f34; 13'b0111010110010: data_out = 18'h3fcdc; 13'b0111010110011: data_out = 18'h00e60; 13'b0111010110100: data_out = 18'h00e72; 13'b0111010110101: data_out = 18'h00af8; 13'b0111010110110: data_out = 18'h008f6; 13'b0111010110111: data_out = 18'h00e9e; 13'b0111010111000: data_out = 18'h00650; 13'b0111010111001: data_out = 18'h015a6; 13'b0111010111010: data_out = 18'h00e92; 13'b0111010111011: data_out = 18'h00d56; 13'b0111010111100: data_out = 18'h00bdc; 13'b0111010111101: data_out = 18'h00c70; 13'b0111010111110: data_out = 18'h0102a; 13'b0111010111111: data_out = 18'h01a88; 13'b0111011000000: data_out = 18'h00bf6; 13'b0111011000001: data_out = 18'h00792; 13'b0111011000010: data_out = 18'h0060e; 13'b0111011000011: data_out = 18'h00814; 13'b0111011000100: data_out = 18'h00410; 13'b0111011000101: data_out = 18'h00e94; 13'b0111011000110: data_out = 18'h006e8; 13'b0111011000111: data_out = 18'h002d2; 13'b0111011001000: data_out = 18'h0026a; 13'b0111011001001: data_out = 18'h00480; 13'b0111011001010: data_out = 18'h3fe72; 13'b0111011001011: data_out = 18'h0054e; 13'b0111011001100: data_out = 18'h0029c; 13'b0111011001101: data_out = 18'h3f4a6; 13'b0111011001110: data_out = 18'h3fe74; 13'b0111011001111: data_out = 18'h00156; 13'b0111011010000: data_out = 18'h3f47e; 13'b0111011010001: data_out = 18'h3fdf2; 13'b0111011010010: data_out = 18'h3eca6; 13'b0111011010011: data_out = 18'h3f348; 13'b0111011010100: data_out = 18'h3f9a6; 13'b0111011010101: data_out = 18'h3f938; 13'b0111011010110: data_out = 18'h00218; 13'b0111011010111: data_out = 18'h3e978; 13'b0111011011000: data_out = 18'h3eb2e; 13'b0111011011001: data_out = 18'h3f9bc; 13'b0111011011010: data_out = 18'h3f496; 13'b0111011011011: data_out = 18'h3fac8; 13'b0111011011100: data_out = 18'h3f31a; 13'b0111011011101: data_out = 18'h3ed42; 13'b0111011011110: data_out = 18'h3eeb6; 13'b0111011011111: data_out = 18'h3f66c; 13'b0111011100000: data_out = 18'h3f770; 13'b0111011100001: data_out = 18'h3ee2a; 13'b0111011100010: data_out = 18'h3f610; 13'b0111011100011: data_out = 18'h3fcea; 13'b0111011100100: data_out = 18'h3f6f6; 13'b0111011100101: data_out = 18'h3f8f2; 13'b0111011100110: data_out = 18'h3f908; 13'b0111011100111: data_out = 18'h3fbe4; 13'b0111011101000: data_out = 18'h3f43e; 13'b0111011101001: data_out = 18'h3f1e6; 13'b0111011101010: data_out = 18'h00666; 13'b0111011101011: data_out = 18'h00752; 13'b0111011101100: data_out = 18'h3fad0; 13'b0111011101101: data_out = 18'h3f7e0; 13'b0111011101110: data_out = 18'h3ff4c; 13'b0111011101111: data_out = 18'h006e4; 13'b0111011110000: data_out = 18'h3fee0; 13'b0111011110001: data_out = 18'h0000e; 13'b0111011110010: data_out = 18'h3fe78; 13'b0111011110011: data_out = 18'h3fae4; 13'b0111011110100: data_out = 18'h3fe92; 13'b0111011110101: data_out = 18'h009c8; 13'b0111011110110: data_out = 18'h3f364; 13'b0111011110111: data_out = 18'h3ed14; 13'b0111011111000: data_out = 18'h00008; 13'b0111011111001: data_out = 18'h000e6; 13'b0111011111010: data_out = 18'h003c6; 13'b0111011111011: data_out = 18'h00336; 13'b0111011111100: data_out = 18'h3f8c8; 13'b0111011111101: data_out = 18'h3fe6e; 13'b0111011111110: data_out = 18'h00232; 13'b0111011111111: data_out = 18'h006b4; 13'b0111100000000: data_out = 18'h006ae; 13'b0111100000001: data_out = 18'h3fb7e; 13'b0111100000010: data_out = 18'h005ea; 13'b0111100000011: data_out = 18'h009da; 13'b0111100000100: data_out = 18'h00560; 13'b0111100000101: data_out = 18'h006a4; 13'b0111100000110: data_out = 18'h013fa; 13'b0111100000111: data_out = 18'h01448; 13'b0111100001000: data_out = 18'h00cea; 13'b0111100001001: data_out = 18'h00258; 13'b0111100001010: data_out = 18'h014d2; 13'b0111100001011: data_out = 18'h0167c; 13'b0111100001100: data_out = 18'h00824; 13'b0111100001101: data_out = 18'h00662; 13'b0111100001110: data_out = 18'h00db0; 13'b0111100001111: data_out = 18'h0174c; 13'b0111100010000: data_out = 18'h0117a; 13'b0111100010001: data_out = 18'h3fef4; 13'b0111100010010: data_out = 18'h00a8a; 13'b0111100010011: data_out = 18'h01db2; 13'b0111100010100: data_out = 18'h00984; 13'b0111100010101: data_out = 18'h00ad6; 13'b0111100010110: data_out = 18'h009da; 13'b0111100010111: data_out = 18'h0005c; 13'b0111100011000: data_out = 18'h00384; 13'b0111100011001: data_out = 18'h00674; 13'b0111100011010: data_out = 18'h00b28; 13'b0111100011011: data_out = 18'h00b2e; 13'b0111100011100: data_out = 18'h002b0; 13'b0111100011101: data_out = 18'h3fc70; 13'b0111100011110: data_out = 18'h00624; 13'b0111100011111: data_out = 18'h003a6; 13'b0111100100000: data_out = 18'h3fa34; 13'b0111100100001: data_out = 18'h000d2; 13'b0111100100010: data_out = 18'h3fe7a; 13'b0111100100011: data_out = 18'h3f4be; 13'b0111100100100: data_out = 18'h3ffb6; 13'b0111100100101: data_out = 18'h3fc1e; 13'b0111100100110: data_out = 18'h3f75a; 13'b0111100100111: data_out = 18'h3ee6a; 13'b0111100101000: data_out = 18'h3ef36; 13'b0111100101001: data_out = 18'h3f732; 13'b0111100101010: data_out = 18'h3fb3a; 13'b0111100101011: data_out = 18'h000b8; 13'b0111100101100: data_out = 18'h3f384; 13'b0111100101101: data_out = 18'h3f138; 13'b0111100101110: data_out = 18'h3f57a; 13'b0111100101111: data_out = 18'h3ef2c; 13'b0111100110000: data_out = 18'h3f5de; 13'b0111100110001: data_out = 18'h3fbd4; 13'b0111100110010: data_out = 18'h3f3ce; 13'b0111100110011: data_out = 18'h3f600; 13'b0111100110100: data_out = 18'h00698; 13'b0111100110101: data_out = 18'h3fa4c; 13'b0111100110110: data_out = 18'h3ef74; 13'b0111100110111: data_out = 18'h3ee36; 13'b0111100111000: data_out = 18'h3f70e; 13'b0111100111001: data_out = 18'h3f4a6; 13'b0111100111010: data_out = 18'h3fb68; 13'b0111100111011: data_out = 18'h3fdce; 13'b0111100111100: data_out = 18'h3f51c; 13'b0111100111101: data_out = 18'h3f716; 13'b0111100111110: data_out = 18'h3ffc6; 13'b0111100111111: data_out = 18'h3fb82; 13'b0111101000000: data_out = 18'h3f324; 13'b0111101000001: data_out = 18'h3f83e; 13'b0111101000010: data_out = 18'h3f7b0; 13'b0111101000011: data_out = 18'h004f8; 13'b0111101000100: data_out = 18'h0085a; 13'b0111101000101: data_out = 18'h3f7de; 13'b0111101000110: data_out = 18'h3f6b6; 13'b0111101000111: data_out = 18'h0009e; 13'b0111101001000: data_out = 18'h3fe66; 13'b0111101001001: data_out = 18'h3f6e0; 13'b0111101001010: data_out = 18'h0010e; 13'b0111101001011: data_out = 18'h001a0; 13'b0111101001100: data_out = 18'h005a0; 13'b0111101001101: data_out = 18'h00684; 13'b0111101001110: data_out = 18'h004f8; 13'b0111101001111: data_out = 18'h3ff1c; 13'b0111101010000: data_out = 18'h3fe30; 13'b0111101010001: data_out = 18'h3fea6; 13'b0111101010010: data_out = 18'h3fd0a; 13'b0111101010011: data_out = 18'h3fdcc; 13'b0111101010100: data_out = 18'h0027a; 13'b0111101010101: data_out = 18'h00230; 13'b0111101010110: data_out = 18'h006b6; 13'b0111101010111: data_out = 18'h3f7c0; 13'b0111101011000: data_out = 18'h3f618; 13'b0111101011001: data_out = 18'h3ffc8; 13'b0111101011010: data_out = 18'h0055e; 13'b0111101011011: data_out = 18'h00ac0; 13'b0111101011100: data_out = 18'h3f8a0; 13'b0111101011101: data_out = 18'h3f5b8; 13'b0111101011110: data_out = 18'h3fed4; 13'b0111101011111: data_out = 18'h0036e; 13'b0111101100000: data_out = 18'h00ad0; 13'b0111101100001: data_out = 18'h0014e; 13'b0111101100010: data_out = 18'h3fde2; 13'b0111101100011: data_out = 18'h006e6; 13'b0111101100100: data_out = 18'h00fdc; 13'b0111101100101: data_out = 18'h00ecc; 13'b0111101100110: data_out = 18'h3fd98; 13'b0111101100111: data_out = 18'h00206; 13'b0111101101000: data_out = 18'h016e6; 13'b0111101101001: data_out = 18'h00a6c; 13'b0111101101010: data_out = 18'h001c8; 13'b0111101101011: data_out = 18'h3fed0; 13'b0111101101100: data_out = 18'h004fe; 13'b0111101101101: data_out = 18'h0122a; 13'b0111101101110: data_out = 18'h00e26; 13'b0111101101111: data_out = 18'h3fd84; 13'b0111101110000: data_out = 18'h0076c; 13'b0111101110001: data_out = 18'h00e50; 13'b0111101110010: data_out = 18'h005f8; 13'b0111101110011: data_out = 18'h00e02; 13'b0111101110100: data_out = 18'h00e40; 13'b0111101110101: data_out = 18'h0076c; 13'b0111101110110: data_out = 18'h00aaa; 13'b0111101110111: data_out = 18'h000cc; 13'b0111101111000: data_out = 18'h00026; 13'b0111101111001: data_out = 18'h00e12; 13'b0111101111010: data_out = 18'h00bb6; 13'b0111101111011: data_out = 18'h002f2; 13'b0111101111100: data_out = 18'h0045a; 13'b0111101111101: data_out = 18'h3fd50; 13'b0111101111110: data_out = 18'h3f6ea; 13'b0111101111111: data_out = 18'h3f9ba; 13'b0111110000000: data_out = 18'h00128; 13'b0111110000001: data_out = 18'h3ffec; 13'b0111110000010: data_out = 18'h3fc1a; 13'b0111110000011: data_out = 18'h3fb06; 13'b0111110000100: data_out = 18'h3f9ca; 13'b0111110000101: data_out = 18'h3f756; 13'b0111110000110: data_out = 18'h3f5e8; 13'b0111110000111: data_out = 18'h3fae4; 13'b0111110001000: data_out = 18'h0010e; 13'b0111110001001: data_out = 18'h005a6; 13'b0111110001010: data_out = 18'h3f8b8; 13'b0111110001011: data_out = 18'h3f86c; 13'b0111110001100: data_out = 18'h3ff62; 13'b0111110001101: data_out = 18'h3fa9c; 13'b0111110001110: data_out = 18'h3f960; 13'b0111110001111: data_out = 18'h3fb8e; 13'b0111110010000: data_out = 18'h3f656; 13'b0111110010001: data_out = 18'h3f5ee; 13'b0111110010010: data_out = 18'h3f4b2; 13'b0111110010011: data_out = 18'h3fc9e; 13'b0111110010100: data_out = 18'h3fd52; 13'b0111110010101: data_out = 18'h0006c; 13'b0111110010110: data_out = 18'h00b92; 13'b0111110010111: data_out = 18'h3fa82; 13'b0111110011000: data_out = 18'h3fae2; 13'b0111110011001: data_out = 18'h00b5c; 13'b0111110011010: data_out = 18'h002d2; 13'b0111110011011: data_out = 18'h00228; 13'b0111110011100: data_out = 18'h002b4; 13'b0111110011101: data_out = 18'h3fe4c; 13'b0111110011110: data_out = 18'h3fd5c; 13'b0111110011111: data_out = 18'h3f642; 13'b0111110100000: data_out = 18'h005de; 13'b0111110100001: data_out = 18'h00738; 13'b0111110100010: data_out = 18'h0043a; 13'b0111110100011: data_out = 18'h007c2; 13'b0111110100100: data_out = 18'h00388; 13'b0111110100101: data_out = 18'h3f93e; 13'b0111110100110: data_out = 18'h00174; 13'b0111110100111: data_out = 18'h005c6; 13'b0111110101000: data_out = 18'h00798; 13'b0111110101001: data_out = 18'h0062c; 13'b0111110101010: data_out = 18'h3fb44; 13'b0111110101011: data_out = 18'h3fc2c; 13'b0111110101100: data_out = 18'h3fba6; 13'b0111110101101: data_out = 18'h00274; 13'b0111110101110: data_out = 18'h00216; 13'b0111110101111: data_out = 18'h00046; 13'b0111110110000: data_out = 18'h3fbe8; 13'b0111110110001: data_out = 18'h0027a; 13'b0111110110010: data_out = 18'h0004a; 13'b0111110110011: data_out = 18'h006b4; 13'b0111110110100: data_out = 18'h000d0; 13'b0111110110101: data_out = 18'h3f6be; 13'b0111110110110: data_out = 18'h3fc10; 13'b0111110110111: data_out = 18'h3f4f8; 13'b0111110111000: data_out = 18'h3f9d8; 13'b0111110111001: data_out = 18'h3f24a; 13'b0111110111010: data_out = 18'h3fffa; 13'b0111110111011: data_out = 18'h3fc08; 13'b0111110111100: data_out = 18'h3f25c; 13'b0111110111101: data_out = 18'h3efda; 13'b0111110111110: data_out = 18'h3eaf8; 13'b0111110111111: data_out = 18'h3f744; 13'b0111111000000: data_out = 18'h3fd2c; 13'b0111111000001: data_out = 18'h3f2ec; 13'b0111111000010: data_out = 18'h3f626; 13'b0111111000011: data_out = 18'h3fa34; 13'b0111111000100: data_out = 18'h003ce; 13'b0111111000101: data_out = 18'h3fcbe; 13'b0111111000110: data_out = 18'h3ecce; 13'b0111111000111: data_out = 18'h3ef96; 13'b0111111001000: data_out = 18'h3f9de; 13'b0111111001001: data_out = 18'h3fd1a; 13'b0111111001010: data_out = 18'h3f4f8; 13'b0111111001011: data_out = 18'h3f3b4; 13'b0111111001100: data_out = 18'h002e0; 13'b0111111001101: data_out = 18'h005fe; 13'b0111111001110: data_out = 18'h3fdda; 13'b0111111001111: data_out = 18'h004d4; 13'b0111111010000: data_out = 18'h00802; 13'b0111111010001: data_out = 18'h0031a; 13'b0111111010010: data_out = 18'h00bac; 13'b0111111010011: data_out = 18'h00d90; 13'b0111111010100: data_out = 18'h005f8; 13'b0111111010101: data_out = 18'h005a8; 13'b0111111010110: data_out = 18'h0012e; 13'b0111111010111: data_out = 18'h00054; 13'b0111111011000: data_out = 18'h0092c; 13'b0111111011001: data_out = 18'h3ff4c; 13'b0111111011010: data_out = 18'h3ff60; 13'b0111111011011: data_out = 18'h00278; 13'b0111111011100: data_out = 18'h00664; 13'b0111111011101: data_out = 18'h3f9f6; 13'b0111111011110: data_out = 18'h3fca8; 13'b0111111011111: data_out = 18'h000fc; 13'b0111111100000: data_out = 18'h00a72; 13'b0111111100001: data_out = 18'h0086c; 13'b0111111100010: data_out = 18'h00880; 13'b0111111100011: data_out = 18'h00550; 13'b0111111100100: data_out = 18'h00492; 13'b0111111100101: data_out = 18'h0038e; 13'b0111111100110: data_out = 18'h001ea; 13'b0111111100111: data_out = 18'h00ee6; 13'b0111111101000: data_out = 18'h00674; 13'b0111111101001: data_out = 18'h002ee; 13'b0111111101010: data_out = 18'h006c6; 13'b0111111101011: data_out = 18'h0054a; 13'b0111111101100: data_out = 18'h0042c; 13'b0111111101101: data_out = 18'h00d38; 13'b0111111101110: data_out = 18'h00a8c; 13'b0111111101111: data_out = 18'h0000e; 13'b0111111110000: data_out = 18'h00940; 13'b0111111110001: data_out = 18'h00ce8; 13'b0111111110010: data_out = 18'h00274; 13'b0111111110011: data_out = 18'h00610; 13'b0111111110100: data_out = 18'h01088; 13'b0111111110101: data_out = 18'h01272; 13'b0111111110110: data_out = 18'h00410; 13'b0111111110111: data_out = 18'h0049c; 13'b0111111111000: data_out = 18'h00018; 13'b0111111111001: data_out = 18'h00848; 13'b0111111111010: data_out = 18'h01610; 13'b0111111111011: data_out = 18'h0121c; 13'b0111111111100: data_out = 18'h00576; 13'b0111111111101: data_out = 18'h0060e; 13'b0111111111110: data_out = 18'h00c54; 13'b0111111111111: data_out = 18'h00e32; 13'b1000000000000: data_out = 18'h00384; 13'b1000000000001: data_out = 18'h000ca; 13'b1000000000010: data_out = 18'h3f912; 13'b1000000000011: data_out = 18'h3fd7e; 13'b1000000000100: data_out = 18'h00564; 13'b1000000000101: data_out = 18'h3fdfa; 13'b1000000000110: data_out = 18'h3fc22; 13'b1000000000111: data_out = 18'h3fb82; 13'b1000000001000: data_out = 18'h3fc6e; 13'b1000000001001: data_out = 18'h3fe3a; 13'b1000000001010: data_out = 18'h3f53c; 13'b1000000001011: data_out = 18'h3f4ec; 13'b1000000001100: data_out = 18'h3f98a; 13'b1000000001101: data_out = 18'h3fe02; 13'b1000000001110: data_out = 18'h004b6; 13'b1000000001111: data_out = 18'h3f37e; 13'b1000000010000: data_out = 18'h3e8aa; 13'b1000000010001: data_out = 18'h3f934; 13'b1000000010010: data_out = 18'h3f51e; 13'b1000000010011: data_out = 18'h3f33a; 13'b1000000010100: data_out = 18'h3f22c; 13'b1000000010101: data_out = 18'h3f0f2; 13'b1000000010110: data_out = 18'h3f822; 13'b1000000010111: data_out = 18'h3f7b8; 13'b1000000011000: data_out = 18'h3f56a; 13'b1000000011001: data_out = 18'h3f0e4; 13'b1000000011010: data_out = 18'h3f640; 13'b1000000011011: data_out = 18'h3fe2a; 13'b1000000011100: data_out = 18'h3fa12; 13'b1000000011101: data_out = 18'h3f224; 13'b1000000011110: data_out = 18'h3f502; 13'b1000000011111: data_out = 18'h00554; 13'b1000000100000: data_out = 18'h00374; 13'b1000000100001: data_out = 18'h3ff6e; 13'b1000000100010: data_out = 18'h3ed2e; 13'b1000000100011: data_out = 18'h3f9da; 13'b1000000100100: data_out = 18'h0067c; 13'b1000000100101: data_out = 18'h3f4ba; 13'b1000000100110: data_out = 18'h3f264; 13'b1000000100111: data_out = 18'h3fba8; 13'b1000000101000: data_out = 18'h3fce0; 13'b1000000101001: data_out = 18'h3f21c; 13'b1000000101010: data_out = 18'h3fa64; 13'b1000000101011: data_out = 18'h3f506; 13'b1000000101100: data_out = 18'h3fa26; 13'b1000000101101: data_out = 18'h00302; 13'b1000000101110: data_out = 18'h3f640; 13'b1000000101111: data_out = 18'h3f482; 13'b1000000110000: data_out = 18'h3f570; 13'b1000000110001: data_out = 18'h00034; 13'b1000000110010: data_out = 18'h0081a; 13'b1000000110011: data_out = 18'h0055a; 13'b1000000110100: data_out = 18'h3ffe6; 13'b1000000110101: data_out = 18'h004b4; 13'b1000000110110: data_out = 18'h00c00; 13'b1000000110111: data_out = 18'h3f95a; 13'b1000000111000: data_out = 18'h000e8; 13'b1000000111001: data_out = 18'h3feba; 13'b1000000111010: data_out = 18'h3fd10; 13'b1000000111011: data_out = 18'h3f7b8; 13'b1000000111100: data_out = 18'h3fabe; 13'b1000000111101: data_out = 18'h00518; 13'b1000000111110: data_out = 18'h00ce2; 13'b1000000111111: data_out = 18'h006ca; 13'b1000001000000: data_out = 18'h3fa2c; 13'b1000001000001: data_out = 18'h3fa58; 13'b1000001000010: data_out = 18'h00888; 13'b1000001000011: data_out = 18'h0094c; 13'b1000001000100: data_out = 18'h00d3e; 13'b1000001000101: data_out = 18'h00df0; 13'b1000001000110: data_out = 18'h004fe; 13'b1000001000111: data_out = 18'h006de; 13'b1000001001000: data_out = 18'h00618; 13'b1000001001001: data_out = 18'h00756; 13'b1000001001010: data_out = 18'h0077a; 13'b1000001001011: data_out = 18'h0030e; 13'b1000001001100: data_out = 18'h00562; 13'b1000001001101: data_out = 18'h00b14; 13'b1000001001110: data_out = 18'h00dfe; 13'b1000001001111: data_out = 18'h0102c; 13'b1000001010000: data_out = 18'h0048c; 13'b1000001010001: data_out = 18'h00a06; 13'b1000001010010: data_out = 18'h00a78; 13'b1000001010011: data_out = 18'h0058a; 13'b1000001010100: data_out = 18'h007aa; 13'b1000001010101: data_out = 18'h0006a; 13'b1000001010110: data_out = 18'h3fec8; 13'b1000001010111: data_out = 18'h00526; 13'b1000001011000: data_out = 18'h00be0; 13'b1000001011001: data_out = 18'h00b62; 13'b1000001011010: data_out = 18'h0062e; 13'b1000001011011: data_out = 18'h00642; 13'b1000001011100: data_out = 18'h00122; 13'b1000001011101: data_out = 18'h3fba4; 13'b1000001011110: data_out = 18'h3fcee; 13'b1000001011111: data_out = 18'h001aa; 13'b1000001100000: data_out = 18'h3fc26; 13'b1000001100001: data_out = 18'h3ffd6; 13'b1000001100010: data_out = 18'h00710; 13'b1000001100011: data_out = 18'h00448; 13'b1000001100100: data_out = 18'h3f840; 13'b1000001100101: data_out = 18'h3f540; 13'b1000001100110: data_out = 18'h3f9aa; 13'b1000001100111: data_out = 18'h3ffd0; 13'b1000001101000: data_out = 18'h3fe72; 13'b1000001101001: data_out = 18'h3fcb4; 13'b1000001101010: data_out = 18'h3fd02; 13'b1000001101011: data_out = 18'h3f626; 13'b1000001101100: data_out = 18'h3fcd4; 13'b1000001101101: data_out = 18'h3ff04; 13'b1000001101110: data_out = 18'h3f746; 13'b1000001101111: data_out = 18'h3f974; 13'b1000001110000: data_out = 18'h000f8; 13'b1000001110001: data_out = 18'h3fd30; 13'b1000001110010: data_out = 18'h3fd7a; 13'b1000001110011: data_out = 18'h3fb90; 13'b1000001110100: data_out = 18'h3fb2e; 13'b1000001110101: data_out = 18'h3fc46; 13'b1000001110110: data_out = 18'h3f738; 13'b1000001110111: data_out = 18'h3fd4a; 13'b1000001111000: data_out = 18'h004d2; 13'b1000001111001: data_out = 18'h001f0; 13'b1000001111010: data_out = 18'h0010e; 13'b1000001111011: data_out = 18'h3fe04; 13'b1000001111100: data_out = 18'h007a0; 13'b1000001111101: data_out = 18'h001fa; 13'b1000001111110: data_out = 18'h002ec; 13'b1000001111111: data_out = 18'h003a0; 13'b1000010000000: data_out = 18'h3fcee; 13'b1000010000001: data_out = 18'h3fd66; 13'b1000010000010: data_out = 18'h00044; 13'b1000010000011: data_out = 18'h004a8; 13'b1000010000100: data_out = 18'h00086; 13'b1000010000101: data_out = 18'h00ad2; 13'b1000010000110: data_out = 18'h00014; 13'b1000010000111: data_out = 18'h0017e; 13'b1000010001000: data_out = 18'h3fbb6; 13'b1000010001001: data_out = 18'h3fe3e; 13'b1000010001010: data_out = 18'h3ffa8; 13'b1000010001011: data_out = 18'h3f76e; 13'b1000010001100: data_out = 18'h3f500; 13'b1000010001101: data_out = 18'h3fffc; 13'b1000010001110: data_out = 18'h3fb1e; 13'b1000010001111: data_out = 18'h00410; 13'b1000010010000: data_out = 18'h0011e; 13'b1000010010001: data_out = 18'h3fe72; 13'b1000010010010: data_out = 18'h3fcb8; 13'b1000010010011: data_out = 18'h3fafc; 13'b1000010010100: data_out = 18'h3f86c; 13'b1000010010101: data_out = 18'h3fcda; 13'b1000010010110: data_out = 18'h00062; 13'b1000010010111: data_out = 18'h00228; 13'b1000010011000: data_out = 18'h00512; 13'b1000010011001: data_out = 18'h0038c; 13'b1000010011010: data_out = 18'h00070; 13'b1000010011011: data_out = 18'h3ff2c; 13'b1000010011100: data_out = 18'h3f810; 13'b1000010011101: data_out = 18'h3f77a; 13'b1000010011110: data_out = 18'h3fe8a; 13'b1000010011111: data_out = 18'h3fe9c; 13'b1000010100000: data_out = 18'h3f91e; 13'b1000010100001: data_out = 18'h3fcc6; 13'b1000010100010: data_out = 18'h0020c; 13'b1000010100011: data_out = 18'h3f8c2; 13'b1000010100100: data_out = 18'h3f240; 13'b1000010100101: data_out = 18'h3fe60; 13'b1000010100110: data_out = 18'h001b4; 13'b1000010100111: data_out = 18'h3f91e; 13'b1000010101000: data_out = 18'h3fa2e; 13'b1000010101001: data_out = 18'h3ffa4; 13'b1000010101010: data_out = 18'h00400; 13'b1000010101011: data_out = 18'h3f9be; 13'b1000010101100: data_out = 18'h3fc0e; 13'b1000010101101: data_out = 18'h001bc; 13'b1000010101110: data_out = 18'h3f76c; 13'b1000010101111: data_out = 18'h3fa30; 13'b1000010110000: data_out = 18'h3fe40; 13'b1000010110001: data_out = 18'h3fc5e; 13'b1000010110010: data_out = 18'h3f55c; 13'b1000010110011: data_out = 18'h3f704; 13'b1000010110100: data_out = 18'h00884; 13'b1000010110101: data_out = 18'h006ae; 13'b1000010110110: data_out = 18'h3fd56; 13'b1000010110111: data_out = 18'h002ca; 13'b1000010111000: data_out = 18'h0021a; 13'b1000010111001: data_out = 18'h3fa48; 13'b1000010111010: data_out = 18'h0089a; 13'b1000010111011: data_out = 18'h0060a; 13'b1000010111100: data_out = 18'h3f70e; 13'b1000010111101: data_out = 18'h00234; 13'b1000010111110: data_out = 18'h00196; 13'b1000010111111: data_out = 18'h3f4d0; 13'b1000011000000: data_out = 18'h3fb32; 13'b1000011000001: data_out = 18'h00d1a; 13'b1000011000010: data_out = 18'h00782; 13'b1000011000011: data_out = 18'h3fba0; 13'b1000011000100: data_out = 18'h3fbf4; 13'b1000011000101: data_out = 18'h00572; 13'b1000011000110: data_out = 18'h0064e; 13'b1000011000111: data_out = 18'h001bc; 13'b1000011001000: data_out = 18'h00322; 13'b1000011001001: data_out = 18'h0020e; 13'b1000011001010: data_out = 18'h00480; 13'b1000011001011: data_out = 18'h3fe4a; 13'b1000011001100: data_out = 18'h00330; 13'b1000011001101: data_out = 18'h00dc6; 13'b1000011001110: data_out = 18'h00f3a; 13'b1000011001111: data_out = 18'h00268; 13'b1000011010000: data_out = 18'h0049e; 13'b1000011010001: data_out = 18'h0036e; 13'b1000011010010: data_out = 18'h0076a; 13'b1000011010011: data_out = 18'h007f0; 13'b1000011010100: data_out = 18'h006c6; 13'b1000011010101: data_out = 18'h004d4; 13'b1000011010110: data_out = 18'h00296; 13'b1000011010111: data_out = 18'h009ba; 13'b1000011011000: data_out = 18'h006be; 13'b1000011011001: data_out = 18'h3ff66; 13'b1000011011010: data_out = 18'h00150; 13'b1000011011011: data_out = 18'h003b8; 13'b1000011011100: data_out = 18'h00a90; 13'b1000011011101: data_out = 18'h00df8; 13'b1000011011110: data_out = 18'h009f0; 13'b1000011011111: data_out = 18'h00950; 13'b1000011100000: data_out = 18'h00b92; 13'b1000011100001: data_out = 18'h00dfc; 13'b1000011100010: data_out = 18'h00e4c; 13'b1000011100011: data_out = 18'h006c6; 13'b1000011100100: data_out = 18'h001c8; 13'b1000011100101: data_out = 18'h009f6; 13'b1000011100110: data_out = 18'h00786; 13'b1000011100111: data_out = 18'h00116; 13'b1000011101000: data_out = 18'h000ce; 13'b1000011101001: data_out = 18'h001ea; 13'b1000011101010: data_out = 18'h005f2; 13'b1000011101011: data_out = 18'h00a84; 13'b1000011101100: data_out = 18'h00090; 13'b1000011101101: data_out = 18'h3f8ce; 13'b1000011101110: data_out = 18'h3f898; 13'b1000011101111: data_out = 18'h3fc0c; 13'b1000011110000: data_out = 18'h3fe00; 13'b1000011110001: data_out = 18'h3fd5a; 13'b1000011110010: data_out = 18'h3f646; 13'b1000011110011: data_out = 18'h3f922; 13'b1000011110100: data_out = 18'h3f866; 13'b1000011110101: data_out = 18'h3f61c; 13'b1000011110110: data_out = 18'h3f7dc; 13'b1000011110111: data_out = 18'h3f738; 13'b1000011111000: data_out = 18'h3fdee; 13'b1000011111001: data_out = 18'h3fdd0; 13'b1000011111010: data_out = 18'h3f43c; 13'b1000011111011: data_out = 18'h3eef4; 13'b1000011111100: data_out = 18'h3eeec; 13'b1000011111101: data_out = 18'h3fb02; 13'b1000011111110: data_out = 18'h3fad4; 13'b1000011111111: data_out = 18'h3f86c; 13'b1000100000000: data_out = 18'h3f732; 13'b1000100000001: data_out = 18'h3fda8; 13'b1000100000010: data_out = 18'h3f5d0; 13'b1000100000011: data_out = 18'h3f898; 13'b1000100000100: data_out = 18'h3fc86; 13'b1000100000101: data_out = 18'h3f44c; 13'b1000100000110: data_out = 18'h3f136; 13'b1000100000111: data_out = 18'h3f932; 13'b1000100001000: data_out = 18'h3fb26; 13'b1000100001001: data_out = 18'h3edc0; 13'b1000100001010: data_out = 18'h3eb14; 13'b1000100001011: data_out = 18'h3f780; 13'b1000100001100: data_out = 18'h001ce; 13'b1000100001101: data_out = 18'h3fa26; 13'b1000100001110: data_out = 18'h3f70e; 13'b1000100001111: data_out = 18'h3fb94; 13'b1000100010000: data_out = 18'h3fe8e; 13'b1000100010001: data_out = 18'h004ac; 13'b1000100010010: data_out = 18'h3f9e8; 13'b1000100010011: data_out = 18'h3f5ea; 13'b1000100010100: data_out = 18'h3fee8; 13'b1000100010101: data_out = 18'h009d4; 13'b1000100010110: data_out = 18'h00214; 13'b1000100010111: data_out = 18'h3f72a; 13'b1000100011000: data_out = 18'h3fd34; 13'b1000100011001: data_out = 18'h00260; 13'b1000100011010: data_out = 18'h00980; 13'b1000100011011: data_out = 18'h00684; 13'b1000100011100: data_out = 18'h00566; 13'b1000100011101: data_out = 18'h007fe; 13'b1000100011110: data_out = 18'h006f4; 13'b1000100011111: data_out = 18'h0016c; 13'b1000100100000: data_out = 18'h00c16; 13'b1000100100001: data_out = 18'h00a1c; 13'b1000100100010: data_out = 18'h3fc2a; 13'b1000100100011: data_out = 18'h004a2; 13'b1000100100100: data_out = 18'h0062c; 13'b1000100100101: data_out = 18'h000da; 13'b1000100100110: data_out = 18'h3ff0a; 13'b1000100100111: data_out = 18'h0040a; 13'b1000100101000: data_out = 18'h0071a; 13'b1000100101001: data_out = 18'h00232; 13'b1000100101010: data_out = 18'h006be; 13'b1000100101011: data_out = 18'h004a4; 13'b1000100101100: data_out = 18'h3fb7c; 13'b1000100101101: data_out = 18'h3ff1c; 13'b1000100101110: data_out = 18'h0026c; 13'b1000100101111: data_out = 18'h00546; 13'b1000100110000: data_out = 18'h3ff48; 13'b1000100110001: data_out = 18'h00172; 13'b1000100110010: data_out = 18'h3fdea; 13'b1000100110011: data_out = 18'h00382; 13'b1000100110100: data_out = 18'h007a6; 13'b1000100110101: data_out = 18'h00348; 13'b1000100110110: data_out = 18'h003a8; 13'b1000100110111: data_out = 18'h007f0; 13'b1000100111000: data_out = 18'h00486; 13'b1000100111001: data_out = 18'h00286; 13'b1000100111010: data_out = 18'h00f44; 13'b1000100111011: data_out = 18'h004f6; 13'b1000100111100: data_out = 18'h3faec; 13'b1000100111101: data_out = 18'h3fe6e; 13'b1000100111110: data_out = 18'h007c0; 13'b1000100111111: data_out = 18'h00814; 13'b1000101000000: data_out = 18'h006e0; 13'b1000101000001: data_out = 18'h3fff6; 13'b1000101000010: data_out = 18'h002dc; 13'b1000101000011: data_out = 18'h0096c; 13'b1000101000100: data_out = 18'h001b8; 13'b1000101000101: data_out = 18'h3ff90; 13'b1000101000110: data_out = 18'h00212; 13'b1000101000111: data_out = 18'h00192; 13'b1000101001000: data_out = 18'h004e2; 13'b1000101001001: data_out = 18'h001f8; 13'b1000101001010: data_out = 18'h0067c; 13'b1000101001011: data_out = 18'h00448; 13'b1000101001100: data_out = 18'h3fdd6; 13'b1000101001101: data_out = 18'h3fa6e; 13'b1000101001110: data_out = 18'h3f34e; 13'b1000101001111: data_out = 18'h3fa88; 13'b1000101010000: data_out = 18'h004d4; 13'b1000101010001: data_out = 18'h0009c; 13'b1000101010010: data_out = 18'h3fbae; 13'b1000101010011: data_out = 18'h3fb58; 13'b1000101010100: data_out = 18'h3f6cc; 13'b1000101010101: data_out = 18'h3f80a; 13'b1000101010110: data_out = 18'h3f6e4; 13'b1000101010111: data_out = 18'h3f998; 13'b1000101011000: data_out = 18'h3f9a2; 13'b1000101011001: data_out = 18'h00096; 13'b1000101011010: data_out = 18'h3f89e; 13'b1000101011011: data_out = 18'h3fa4a; 13'b1000101011100: data_out = 18'h3ff44; 13'b1000101011101: data_out = 18'h3fd88; 13'b1000101011110: data_out = 18'h3fd84; 13'b1000101011111: data_out = 18'h3fe6e; 13'b1000101100000: data_out = 18'h3fd6a; 13'b1000101100001: data_out = 18'h003de; 13'b1000101100010: data_out = 18'h0028a; 13'b1000101100011: data_out = 18'h3fb92; 13'b1000101100100: data_out = 18'h3fddc; 13'b1000101100101: data_out = 18'h3fb14; 13'b1000101100110: data_out = 18'h3faca; 13'b1000101100111: data_out = 18'h00338; 13'b1000101101000: data_out = 18'h003fa; 13'b1000101101001: data_out = 18'h004e6; 13'b1000101101010: data_out = 18'h004e2; 13'b1000101101011: data_out = 18'h3fdae; 13'b1000101101100: data_out = 18'h3fd1e; 13'b1000101101101: data_out = 18'h00536; 13'b1000101101110: data_out = 18'h3fc58; 13'b1000101101111: data_out = 18'h3fda2; 13'b1000101110000: data_out = 18'h004f6; 13'b1000101110001: data_out = 18'h0032e; 13'b1000101110010: data_out = 18'h3fb36; 13'b1000101110011: data_out = 18'h3faac; 13'b1000101110100: data_out = 18'h3fdf2; 13'b1000101110101: data_out = 18'h00018; 13'b1000101110110: data_out = 18'h3fd54; 13'b1000101110111: data_out = 18'h3f85a; 13'b1000101111000: data_out = 18'h002c4; 13'b1000101111001: data_out = 18'h3fe0c; 13'b1000101111010: data_out = 18'h3fa36; 13'b1000101111011: data_out = 18'h00608; 13'b1000101111100: data_out = 18'h3fcc0; 13'b1000101111101: data_out = 18'h3f02c; 13'b1000101111110: data_out = 18'h3ff64; 13'b1000101111111: data_out = 18'h003e0; 13'b1000110000000: data_out = 18'h3fefc; 13'b1000110000001: data_out = 18'h3ffc4; 13'b1000110000010: data_out = 18'h00594; 13'b1000110000011: data_out = 18'h00024; 13'b1000110000100: data_out = 18'h3fb8a; 13'b1000110000101: data_out = 18'h3fa14; 13'b1000110000110: data_out = 18'h00488; 13'b1000110000111: data_out = 18'h00718; 13'b1000110001000: data_out = 18'h3faf0; 13'b1000110001001: data_out = 18'h3fd6e; 13'b1000110001010: data_out = 18'h003aa; 13'b1000110001011: data_out = 18'h0069c; 13'b1000110001100: data_out = 18'h3fc4a; 13'b1000110001101: data_out = 18'h3f974; 13'b1000110001110: data_out = 18'h00118; 13'b1000110001111: data_out = 18'h3fd58; 13'b1000110010000: data_out = 18'h000ba; 13'b1000110010001: data_out = 18'h00320; 13'b1000110010010: data_out = 18'h00654; 13'b1000110010011: data_out = 18'h0034e; 13'b1000110010100: data_out = 18'h3ffbc; 13'b1000110010101: data_out = 18'h0041c; 13'b1000110010110: data_out = 18'h002d8; 13'b1000110010111: data_out = 18'h3fa9e; 13'b1000110011000: data_out = 18'h3fe3e; 13'b1000110011001: data_out = 18'h3fe26; 13'b1000110011010: data_out = 18'h3ffda; 13'b1000110011011: data_out = 18'h00942; 13'b1000110011100: data_out = 18'h0003c; 13'b1000110011101: data_out = 18'h0020c; 13'b1000110011110: data_out = 18'h3fe4e; 13'b1000110011111: data_out = 18'h005a4; 13'b1000110100000: data_out = 18'h0074c; 13'b1000110100001: data_out = 18'h3f748; 13'b1000110100010: data_out = 18'h3fc3c; 13'b1000110100011: data_out = 18'h007ee; 13'b1000110100100: data_out = 18'h00182; 13'b1000110100101: data_out = 18'h3fb90; 13'b1000110100110: data_out = 18'h3fa46; 13'b1000110100111: data_out = 18'h3fba6; 13'b1000110101000: data_out = 18'h0010e; 13'b1000110101001: data_out = 18'h0017e; 13'b1000110101010: data_out = 18'h000c2; 13'b1000110101011: data_out = 18'h3f9aa; 13'b1000110101100: data_out = 18'h3fce6; 13'b1000110101101: data_out = 18'h0008e; 13'b1000110101110: data_out = 18'h3f926; 13'b1000110101111: data_out = 18'h00076; 13'b1000110110000: data_out = 18'h3ffec; 13'b1000110110001: data_out = 18'h3f7d2; 13'b1000110110010: data_out = 18'h3fac4; 13'b1000110110011: data_out = 18'h00296; 13'b1000110110100: data_out = 18'h00536; 13'b1000110110101: data_out = 18'h00756; 13'b1000110110110: data_out = 18'h00158; 13'b1000110110111: data_out = 18'h3fe3e; 13'b1000110111000: data_out = 18'h0016c; 13'b1000110111001: data_out = 18'h005a8; 13'b1000110111010: data_out = 18'h0055c; 13'b1000110111011: data_out = 18'h3fd24; 13'b1000110111100: data_out = 18'h0028c; 13'b1000110111101: data_out = 18'h004fa; 13'b1000110111110: data_out = 18'h00412; 13'b1000110111111: data_out = 18'h003a2; 13'b1000111000000: data_out = 18'h0059c; 13'b1000111000001: data_out = 18'h01102; 13'b1000111000010: data_out = 18'h00976; 13'b1000111000011: data_out = 18'h00018; 13'b1000111000100: data_out = 18'h0038e; 13'b1000111000101: data_out = 18'h3ff96; 13'b1000111000110: data_out = 18'h003c2; 13'b1000111000111: data_out = 18'h00f9e; 13'b1000111001000: data_out = 18'h00f90; 13'b1000111001001: data_out = 18'h003d4; 13'b1000111001010: data_out = 18'h3fe14; 13'b1000111001011: data_out = 18'h3fdf6; 13'b1000111001100: data_out = 18'h01012; 13'b1000111001101: data_out = 18'h00b3c; 13'b1000111001110: data_out = 18'h00344; 13'b1000111001111: data_out = 18'h3fd6c; 13'b1000111010000: data_out = 18'h3fd40; 13'b1000111010001: data_out = 18'h001f4; 13'b1000111010010: data_out = 18'h3f8dc; 13'b1000111010011: data_out = 18'h3fc70; 13'b1000111010100: data_out = 18'h0016a; 13'b1000111010101: data_out = 18'h3fbb0; 13'b1000111010110: data_out = 18'h3f69c; 13'b1000111010111: data_out = 18'h3f750; 13'b1000111011000: data_out = 18'h3f75c; 13'b1000111011001: data_out = 18'h3ffbc; 13'b1000111011010: data_out = 18'h3fdb8; 13'b1000111011011: data_out = 18'h3f948; 13'b1000111011100: data_out = 18'h3f9e8; 13'b1000111011101: data_out = 18'h3f4e0; 13'b1000111011110: data_out = 18'h3f714; 13'b1000111011111: data_out = 18'h3fd04; 13'b1000111100000: data_out = 18'h3f9f4; 13'b1000111100001: data_out = 18'h3f596; 13'b1000111100010: data_out = 18'h3f4f8; 13'b1000111100011: data_out = 18'h3fb24; 13'b1000111100100: data_out = 18'h0003a; 13'b1000111100101: data_out = 18'h3f5b8; 13'b1000111100110: data_out = 18'h3f5cc; 13'b1000111100111: data_out = 18'h3fa8c; 13'b1000111101000: data_out = 18'h3fcf0; 13'b1000111101001: data_out = 18'h3fdb2; 13'b1000111101010: data_out = 18'h3fc3e; 13'b1000111101011: data_out = 18'h00018; 13'b1000111101100: data_out = 18'h3fbc2; 13'b1000111101101: data_out = 18'h3ff7c; 13'b1000111101110: data_out = 18'h3f886; 13'b1000111101111: data_out = 18'h3f3e8; 13'b1000111110000: data_out = 18'h3fa64; 13'b1000111110001: data_out = 18'h3f720; 13'b1000111110010: data_out = 18'h3ff80; 13'b1000111110011: data_out = 18'h00646; 13'b1000111110100: data_out = 18'h00136; 13'b1000111110101: data_out = 18'h0019e; 13'b1000111110110: data_out = 18'h3fa5a; 13'b1000111110111: data_out = 18'h3fa2a; 13'b1000111111000: data_out = 18'h3fbd8; 13'b1000111111001: data_out = 18'h002f8; 13'b1000111111010: data_out = 18'h3fb24; 13'b1000111111011: data_out = 18'h000c4; 13'b1000111111100: data_out = 18'h004b4; 13'b1000111111101: data_out = 18'h000b2; 13'b1000111111110: data_out = 18'h000ce; 13'b1000111111111: data_out = 18'h0000a; 13'b1001000000000: data_out = 18'h00072; 13'b1001000000001: data_out = 18'h3fc98; 13'b1001000000010: data_out = 18'h3fcfe; 13'b1001000000011: data_out = 18'h0015c; 13'b1001000000100: data_out = 18'h3fc52; 13'b1001000000101: data_out = 18'h00370; 13'b1001000000110: data_out = 18'h006a2; 13'b1001000000111: data_out = 18'h3ffec; 13'b1001000001000: data_out = 18'h3ff7c; 13'b1001000001001: data_out = 18'h001ac; 13'b1001000001010: data_out = 18'h007a6; 13'b1001000001011: data_out = 18'h00496; 13'b1001000001100: data_out = 18'h001b4; 13'b1001000001101: data_out = 18'h0053a; 13'b1001000001110: data_out = 18'h00874; 13'b1001000001111: data_out = 18'h00bb0; 13'b1001000010000: data_out = 18'h00368; 13'b1001000010001: data_out = 18'h000aa; 13'b1001000010010: data_out = 18'h00246; 13'b1001000010011: data_out = 18'h00694; 13'b1001000010100: data_out = 18'h004fa; 13'b1001000010101: data_out = 18'h0081a; 13'b1001000010110: data_out = 18'h0060a; 13'b1001000010111: data_out = 18'h00712; 13'b1001000011000: data_out = 18'h003fc; 13'b1001000011001: data_out = 18'h3fc4c; 13'b1001000011010: data_out = 18'h003f0; 13'b1001000011011: data_out = 18'h0084c; 13'b1001000011100: data_out = 18'h00624; 13'b1001000011101: data_out = 18'h001fa; 13'b1001000011110: data_out = 18'h3fd78; 13'b1001000011111: data_out = 18'h00074; 13'b1001000100000: data_out = 18'h009da; 13'b1001000100001: data_out = 18'h006f2; 13'b1001000100010: data_out = 18'h00698; 13'b1001000100011: data_out = 18'h005ee; 13'b1001000100100: data_out = 18'h003b0; 13'b1001000100101: data_out = 18'h001d8; 13'b1001000100110: data_out = 18'h00186; 13'b1001000100111: data_out = 18'h005d0; 13'b1001000101000: data_out = 18'h3fe9c; 13'b1001000101001: data_out = 18'h005c6; 13'b1001000101010: data_out = 18'h00980; 13'b1001000101011: data_out = 18'h3ff30; 13'b1001000101100: data_out = 18'h3fe82; 13'b1001000101101: data_out = 18'h0017c; 13'b1001000101110: data_out = 18'h00628; 13'b1001000101111: data_out = 18'h00330; 13'b1001000110000: data_out = 18'h0036e; 13'b1001000110001: data_out = 18'h3fdf4; 13'b1001000110010: data_out = 18'h001f6; 13'b1001000110011: data_out = 18'h004b2; 13'b1001000110100: data_out = 18'h0024a; 13'b1001000110101: data_out = 18'h3fe1c; 13'b1001000110110: data_out = 18'h3fb0a; 13'b1001000110111: data_out = 18'h3f6d2; 13'b1001000111000: data_out = 18'h3ffbc; 13'b1001000111001: data_out = 18'h3ffe4; 13'b1001000111010: data_out = 18'h0009e; 13'b1001000111011: data_out = 18'h3fe8e; 13'b1001000111100: data_out = 18'h3fccc; 13'b1001000111101: data_out = 18'h3faec; 13'b1001000111110: data_out = 18'h3f682; 13'b1001000111111: data_out = 18'h3fa1a; 13'b1001001000000: data_out = 18'h00224; 13'b1001001000001: data_out = 18'h3fc6a; 13'b1001001000010: data_out = 18'h3f9a4; 13'b1001001000011: data_out = 18'h3f908; 13'b1001001000100: data_out = 18'h3fac2; 13'b1001001000101: data_out = 18'h3fa0c; 13'b1001001000110: data_out = 18'h3f4d8; 13'b1001001000111: data_out = 18'h3f6a0; 13'b1001001001000: data_out = 18'h3f9f2; 13'b1001001001001: data_out = 18'h3fd32; 13'b1001001001010: data_out = 18'h3f5e2; 13'b1001001001011: data_out = 18'h3f75e; 13'b1001001001100: data_out = 18'h3fa2a; 13'b1001001001101: data_out = 18'h3fb72; 13'b1001001001110: data_out = 18'h3fb7c; 13'b1001001001111: data_out = 18'h3f7ac; 13'b1001001010000: data_out = 18'h3f408; 13'b1001001010001: data_out = 18'h3f9f8; 13'b1001001010010: data_out = 18'h3fde4; 13'b1001001010011: data_out = 18'h3f896; 13'b1001001010100: data_out = 18'h3f9dc; 13'b1001001010101: data_out = 18'h000fe; 13'b1001001010110: data_out = 18'h3fe7c; 13'b1001001010111: data_out = 18'h3fdc8; 13'b1001001011000: data_out = 18'h000da; 13'b1001001011001: data_out = 18'h3fd6e; 13'b1001001011010: data_out = 18'h3fef4; 13'b1001001011011: data_out = 18'h007d8; 13'b1001001011100: data_out = 18'h00152; 13'b1001001011101: data_out = 18'h3fd0e; 13'b1001001011110: data_out = 18'h00160; 13'b1001001011111: data_out = 18'h3fee2; 13'b1001001100000: data_out = 18'h0034c; 13'b1001001100001: data_out = 18'h00fd6; 13'b1001001100010: data_out = 18'h00678; 13'b1001001100011: data_out = 18'h003f2; 13'b1001001100100: data_out = 18'h3ffa6; 13'b1001001100101: data_out = 18'h001ba; 13'b1001001100110: data_out = 18'h002a0; 13'b1001001100111: data_out = 18'h004e8; 13'b1001001101000: data_out = 18'h009c8; 13'b1001001101001: data_out = 18'h00316; 13'b1001001101010: data_out = 18'h002ba; 13'b1001001101011: data_out = 18'h00782; 13'b1001001101100: data_out = 18'h00752; 13'b1001001101101: data_out = 18'h000fc; 13'b1001001101110: data_out = 18'h006ca; 13'b1001001101111: data_out = 18'h004ce; 13'b1001001110000: data_out = 18'h0009e; 13'b1001001110001: data_out = 18'h3faa4; 13'b1001001110010: data_out = 18'h3f950; 13'b1001001110011: data_out = 18'h3fb9c; 13'b1001001110100: data_out = 18'h001a4; 13'b1001001110101: data_out = 18'h3fe3a; 13'b1001001110110: data_out = 18'h0005c; 13'b1001001110111: data_out = 18'h00598; 13'b1001001111000: data_out = 18'h3fc70; 13'b1001001111001: data_out = 18'h3f9ce; 13'b1001001111010: data_out = 18'h00510; 13'b1001001111011: data_out = 18'h00880; 13'b1001001111100: data_out = 18'h001a8; 13'b1001001111101: data_out = 18'h3fc98; 13'b1001001111110: data_out = 18'h3fc8e; 13'b1001001111111: data_out = 18'h0001a; 13'b1001010000000: data_out = 18'h001aa; 13'b1001010000001: data_out = 18'h3fe16; 13'b1001010000010: data_out = 18'h3fb82; 13'b1001010000011: data_out = 18'h3fe0a; 13'b1001010000100: data_out = 18'h000c6; 13'b1001010000101: data_out = 18'h3fb56; 13'b1001010000110: data_out = 18'h00096; 13'b1001010000111: data_out = 18'h3ffb2; 13'b1001010001000: data_out = 18'h3fdec; 13'b1001010001001: data_out = 18'h3fda8; 13'b1001010001010: data_out = 18'h00084; 13'b1001010001011: data_out = 18'h3fd8e; 13'b1001010001100: data_out = 18'h3fe58; 13'b1001010001101: data_out = 18'h002d2; 13'b1001010001110: data_out = 18'h3fbf0; 13'b1001010001111: data_out = 18'h3fbd6; 13'b1001010010000: data_out = 18'h0035c; 13'b1001010010001: data_out = 18'h00252; 13'b1001010010010: data_out = 18'h3f9fe; 13'b1001010010011: data_out = 18'h3f7f2; 13'b1001010010100: data_out = 18'h0060c; 13'b1001010010101: data_out = 18'h008dc; 13'b1001010010110: data_out = 18'h3ff5c; 13'b1001010010111: data_out = 18'h3fdb2; 13'b1001010011000: data_out = 18'h3fc4c; 13'b1001010011001: data_out = 18'h3fe70; 13'b1001010011010: data_out = 18'h3fd60; 13'b1001010011011: data_out = 18'h00060; 13'b1001010011100: data_out = 18'h0010e; 13'b1001010011101: data_out = 18'h3fcde; 13'b1001010011110: data_out = 18'h3f9f4; 13'b1001010011111: data_out = 18'h00040; 13'b1001010100000: data_out = 18'h007da; 13'b1001010100001: data_out = 18'h0049a; 13'b1001010100010: data_out = 18'h00248; 13'b1001010100011: data_out = 18'h0081c; 13'b1001010100100: data_out = 18'h0058e; 13'b1001010100101: data_out = 18'h001a4; 13'b1001010100110: data_out = 18'h0009e; 13'b1001010100111: data_out = 18'h0047e; 13'b1001010101000: data_out = 18'h007ba; 13'b1001010101001: data_out = 18'h004e6; 13'b1001010101010: data_out = 18'h007f0; 13'b1001010101011: data_out = 18'h00222; 13'b1001010101100: data_out = 18'h0056c; 13'b1001010101101: data_out = 18'h0042a; 13'b1001010101110: data_out = 18'h00208; 13'b1001010101111: data_out = 18'h00122; 13'b1001010110000: data_out = 18'h00224; 13'b1001010110001: data_out = 18'h0006c; 13'b1001010110010: data_out = 18'h3fd6e; 13'b1001010110011: data_out = 18'h000f6; 13'b1001010110100: data_out = 18'h0031c; 13'b1001010110101: data_out = 18'h00016; 13'b1001010110110: data_out = 18'h3ff68; 13'b1001010110111: data_out = 18'h0047c; 13'b1001010111000: data_out = 18'h006b6; 13'b1001010111001: data_out = 18'h00042; 13'b1001010111010: data_out = 18'h001c6; 13'b1001010111011: data_out = 18'h00114; 13'b1001010111100: data_out = 18'h3ff76; 13'b1001010111101: data_out = 18'h00204; 13'b1001010111110: data_out = 18'h3fd24; 13'b1001010111111: data_out = 18'h3f5ee; 13'b1001011000000: data_out = 18'h3fb74; 13'b1001011000001: data_out = 18'h3fb94; 13'b1001011000010: data_out = 18'h3ff86; 13'b1001011000011: data_out = 18'h3feba; 13'b1001011000100: data_out = 18'h3f95c; 13'b1001011000101: data_out = 18'h3f678; 13'b1001011000110: data_out = 18'h3f8f0; 13'b1001011000111: data_out = 18'h3fc22; 13'b1001011001000: data_out = 18'h3fce0; 13'b1001011001001: data_out = 18'h3fc12; 13'b1001011001010: data_out = 18'h3fb4c; 13'b1001011001011: data_out = 18'h3f7ca; 13'b1001011001100: data_out = 18'h3f6ba; 13'b1001011001101: data_out = 18'h3fc8e; 13'b1001011001110: data_out = 18'h3ff4e; 13'b1001011001111: data_out = 18'h3ff38; 13'b1001011010000: data_out = 18'h3fc30; 13'b1001011010001: data_out = 18'h000d2; 13'b1001011010010: data_out = 18'h3fd08; 13'b1001011010011: data_out = 18'h3f6e0; 13'b1001011010100: data_out = 18'h3fc62; 13'b1001011010101: data_out = 18'h0031a; 13'b1001011010110: data_out = 18'h3ffac; 13'b1001011010111: data_out = 18'h3faa4; 13'b1001011011000: data_out = 18'h3fdee; 13'b1001011011001: data_out = 18'h3fe06; 13'b1001011011010: data_out = 18'h3ff02; 13'b1001011011011: data_out = 18'h0007c; 13'b1001011011100: data_out = 18'h3fd4a; 13'b1001011011101: data_out = 18'h3ff84; 13'b1001011011110: data_out = 18'h3fb0e; 13'b1001011011111: data_out = 18'h3fa72; 13'b1001011100000: data_out = 18'h3fbf6; 13'b1001011100001: data_out = 18'h3fc1a; 13'b1001011100010: data_out = 18'h3fbce; 13'b1001011100011: data_out = 18'h3fe7a; 13'b1001011100100: data_out = 18'h00336; 13'b1001011100101: data_out = 18'h3fd36; 13'b1001011100110: data_out = 18'h3fabc; 13'b1001011100111: data_out = 18'h00166; 13'b1001011101000: data_out = 18'h3fd08; 13'b1001011101001: data_out = 18'h3f9b8; 13'b1001011101010: data_out = 18'h3ff3c; 13'b1001011101011: data_out = 18'h00400; 13'b1001011101100: data_out = 18'h3ffc0; 13'b1001011101101: data_out = 18'h3fcb2; 13'b1001011101110: data_out = 18'h3ff2e; 13'b1001011101111: data_out = 18'h3ffaa; 13'b1001011110000: data_out = 18'h0028a; 13'b1001011110001: data_out = 18'h0041c; 13'b1001011110010: data_out = 18'h0041c; 13'b1001011110011: data_out = 18'h0045a; 13'b1001011110100: data_out = 18'h3fdee; 13'b1001011110101: data_out = 18'h3fe14; 13'b1001011110110: data_out = 18'h00354; 13'b1001011110111: data_out = 18'h003cc; 13'b1001011111000: data_out = 18'h00c10; 13'b1001011111001: data_out = 18'h005d6; 13'b1001011111010: data_out = 18'h3fe90; 13'b1001011111011: data_out = 18'h00158; 13'b1001011111100: data_out = 18'h0053a; 13'b1001011111101: data_out = 18'h007b4; 13'b1001011111110: data_out = 18'h00518; 13'b1001011111111: data_out = 18'h00292; 13'b1001100000000: data_out = 18'h0007a; 13'b1001100000001: data_out = 18'h3fee4; 13'b1001100000010: data_out = 18'h00756; 13'b1001100000011: data_out = 18'h0079c; 13'b1001100000100: data_out = 18'h0097a; 13'b1001100000101: data_out = 18'h006aa; 13'b1001100000110: data_out = 18'h00456; 13'b1001100000111: data_out = 18'h009e0; 13'b1001100001000: data_out = 18'h006e0; 13'b1001100001001: data_out = 18'h0079e; 13'b1001100001010: data_out = 18'h00846; 13'b1001100001011: data_out = 18'h00736; 13'b1001100001100: data_out = 18'h008dc; 13'b1001100001101: data_out = 18'h002cc; 13'b1001100001110: data_out = 18'h3fc1e; 13'b1001100001111: data_out = 18'h3fecc; 13'b1001100010000: data_out = 18'h00142; 13'b1001100010001: data_out = 18'h002a0; 13'b1001100010010: data_out = 18'h00170; 13'b1001100010011: data_out = 18'h0057e; 13'b1001100010100: data_out = 18'h008ce; 13'b1001100010101: data_out = 18'h0011e; 13'b1001100010110: data_out = 18'h3ffb4; 13'b1001100010111: data_out = 18'h00030; 13'b1001100011000: data_out = 18'h3fd10; 13'b1001100011001: data_out = 18'h3ffb0; 13'b1001100011010: data_out = 18'h3fa6c; 13'b1001100011011: data_out = 18'h3fbc2; 13'b1001100011100: data_out = 18'h3fa7c; 13'b1001100011101: data_out = 18'h3fa0c; 13'b1001100011110: data_out = 18'h3fa5c; 13'b1001100011111: data_out = 18'h3fbba; 13'b1001100100000: data_out = 18'h3fbd0; 13'b1001100100001: data_out = 18'h3f64a; 13'b1001100100010: data_out = 18'h3f7c6; 13'b1001100100011: data_out = 18'h3ff3e; 13'b1001100100100: data_out = 18'h0000e; 13'b1001100100101: data_out = 18'h3fd96; 13'b1001100100110: data_out = 18'h3ffee; 13'b1001100100111: data_out = 18'h3feac; 13'b1001100101000: data_out = 18'h3fca8; 13'b1001100101001: data_out = 18'h3fc3a; 13'b1001100101010: data_out = 18'h3f87a; 13'b1001100101011: data_out = 18'h3f846; 13'b1001100101100: data_out = 18'h3ff0c; 13'b1001100101101: data_out = 18'h000d2; 13'b1001100101110: data_out = 18'h3fd7c; 13'b1001100101111: data_out = 18'h3fe66; 13'b1001100110000: data_out = 18'h3fc6a; 13'b1001100110001: data_out = 18'h3fc40; 13'b1001100110010: data_out = 18'h3fc24; 13'b1001100110011: data_out = 18'h3fd04; 13'b1001100110100: data_out = 18'h3fe66; 13'b1001100110101: data_out = 18'h3fd82; 13'b1001100110110: data_out = 18'h3ff5e; 13'b1001100110111: data_out = 18'h3fef8; 13'b1001100111000: data_out = 18'h3fd8e; 13'b1001100111001: data_out = 18'h3fcf6; 13'b1001100111010: data_out = 18'h3ff8c; 13'b1001100111011: data_out = 18'h00078; 13'b1001100111100: data_out = 18'h00684; 13'b1001100111101: data_out = 18'h00272; 13'b1001100111110: data_out = 18'h3fbde; 13'b1001100111111: data_out = 18'h3fe6e; 13'b1001101000000: data_out = 18'h3fdb4; 13'b1001101000001: data_out = 18'h0007c; 13'b1001101000010: data_out = 18'h00344; 13'b1001101000011: data_out = 18'h001ac; 13'b1001101000100: data_out = 18'h00038; 13'b1001101000101: data_out = 18'h001a2; 13'b1001101000110: data_out = 18'h000a4; 13'b1001101000111: data_out = 18'h00106; 13'b1001101001000: data_out = 18'h3fb12; 13'b1001101001001: data_out = 18'h3fe1a; 13'b1001101001010: data_out = 18'h3fecc; 13'b1001101001011: data_out = 18'h3ff82; 13'b1001101001100: data_out = 18'h3feb0; 13'b1001101001101: data_out = 18'h3f998; 13'b1001101001110: data_out = 18'h3ff04; 13'b1001101001111: data_out = 18'h00602; 13'b1001101010000: data_out = 18'h3ff26; 13'b1001101010001: data_out = 18'h0013a; 13'b1001101010010: data_out = 18'h3fce6; 13'b1001101010011: data_out = 18'h3fffe; 13'b1001101010100: data_out = 18'h003ae; 13'b1001101010101: data_out = 18'h00412; 13'b1001101010110: data_out = 18'h00090; 13'b1001101010111: data_out = 18'h001f4; 13'b1001101011000: data_out = 18'h0033a; 13'b1001101011001: data_out = 18'h002a2; 13'b1001101011010: data_out = 18'h3fc26; 13'b1001101011011: data_out = 18'h0000a; 13'b1001101011100: data_out = 18'h000c2; 13'b1001101011101: data_out = 18'h0016a; 13'b1001101011110: data_out = 18'h00002; 13'b1001101011111: data_out = 18'h3fed2; 13'b1001101100000: data_out = 18'h3fe10; 13'b1001101100001: data_out = 18'h00204; 13'b1001101100010: data_out = 18'h005fc; 13'b1001101100011: data_out = 18'h00638; 13'b1001101100100: data_out = 18'h00020; 13'b1001101100101: data_out = 18'h3fcd6; 13'b1001101100110: data_out = 18'h3fbe4; 13'b1001101100111: data_out = 18'h3fcf4; 13'b1001101101000: data_out = 18'h00148; 13'b1001101101001: data_out = 18'h3fd32; 13'b1001101101010: data_out = 18'h3fbbe; 13'b1001101101011: data_out = 18'h3f830; 13'b1001101101100: data_out = 18'h3fad6; 13'b1001101101101: data_out = 18'h3fcae; 13'b1001101101110: data_out = 18'h3ffd2; 13'b1001101101111: data_out = 18'h3fe6c; 13'b1001101110000: data_out = 18'h0035a; 13'b1001101110001: data_out = 18'h3fdf6; 13'b1001101110010: data_out = 18'h3f9e0; 13'b1001101110011: data_out = 18'h3ff4c; 13'b1001101110100: data_out = 18'h3ffd2; 13'b1001101110101: data_out = 18'h000dc; 13'b1001101110110: data_out = 18'h00092; 13'b1001101110111: data_out = 18'h000de; 13'b1001101111000: data_out = 18'h3fe9e; 13'b1001101111001: data_out = 18'h3fc2a; 13'b1001101111010: data_out = 18'h0039a; 13'b1001101111011: data_out = 18'h00866; 13'b1001101111100: data_out = 18'h3ff8a; 13'b1001101111101: data_out = 18'h3fe5a; 13'b1001101111110: data_out = 18'h00334; 13'b1001101111111: data_out = 18'h001e6; 13'b1001110000000: data_out = 18'h0048e; 13'b1001110000001: data_out = 18'h003ba; 13'b1001110000010: data_out = 18'h000a4; 13'b1001110000011: data_out = 18'h0043a; 13'b1001110000100: data_out = 18'h000c8; 13'b1001110000101: data_out = 18'h0019e; 13'b1001110000110: data_out = 18'h002ea; 13'b1001110000111: data_out = 18'h3ff28; default: data_out = 18'h0_0000; endcase end endmodule module hat (clock, address, data_out); input clock; input [12:0] address; output [17:0] data_out; reg [17:0] data_out; always @ (posedge clock) begin case (address) 13'b0000000000000: data_out = 18'h3fff6; 13'b0000000000001: data_out = 18'h00000; 13'b0000000000010: data_out = 18'h0000a; 13'b0000000000011: data_out = 18'h00004; 13'b0000000000100: data_out = 18'h00002; 13'b0000000000101: data_out = 18'h00016; 13'b0000000000110: data_out = 18'h00030; 13'b0000000000111: data_out = 18'h00028; 13'b0000000001000: data_out = 18'h00024; 13'b0000000001001: data_out = 18'h3fff0; 13'b0000000001010: data_out = 18'h3ffd0; 13'b0000000001011: data_out = 18'h0001c; 13'b0000000001100: data_out = 18'h0000c; 13'b0000000001101: data_out = 18'h00408; 13'b0000000001110: data_out = 18'h3fafc; 13'b0000000001111: data_out = 18'h0002c; 13'b0000000010000: data_out = 18'h0004c; 13'b0000000010001: data_out = 18'h0020e; 13'b0000000010010: data_out = 18'h3fe18; 13'b0000000010011: data_out = 18'h3fa90; 13'b0000000010100: data_out = 18'h00274; 13'b0000000010101: data_out = 18'h00b08; 13'b0000000010110: data_out = 18'h3f49c; 13'b0000000010111: data_out = 18'h3fbd2; 13'b0000000011000: data_out = 18'h01716; 13'b0000000011001: data_out = 18'h3cb7e; 13'b0000000011010: data_out = 18'h03850; 13'b0000000011011: data_out = 18'h3e5e6; 13'b0000000011100: data_out = 18'h00dea; 13'b0000000011101: data_out = 18'h3fc68; 13'b0000000011110: data_out = 18'h3deac; 13'b0000000011111: data_out = 18'h033ae; 13'b0000000100000: data_out = 18'h3faf4; 13'b0000000100001: data_out = 18'h3d284; 13'b0000000100010: data_out = 18'h010ac; 13'b0000000100011: data_out = 18'h01512; 13'b0000000100100: data_out = 18'h3fe54; 13'b0000000100101: data_out = 18'h3fa62; 13'b0000000100110: data_out = 18'h000fc; 13'b0000000100111: data_out = 18'h00030; 13'b0000000101000: data_out = 18'h3f3d4; 13'b0000000101001: data_out = 18'h01bfe; 13'b0000000101010: data_out = 18'h3e75a; 13'b0000000101011: data_out = 18'h010c2; 13'b0000000101100: data_out = 18'h3fed0; 13'b0000000101101: data_out = 18'h3f01c; 13'b0000000101110: data_out = 18'h3fdfc; 13'b0000000101111: data_out = 18'h0077a; 13'b0000000110000: data_out = 18'h3ffc0; 13'b0000000110001: data_out = 18'h0035a; 13'b0000000110010: data_out = 18'h3fc1e; 13'b0000000110011: data_out = 18'h0102e; 13'b0000000110100: data_out = 18'h3e728; 13'b0000000110101: data_out = 18'h009de; 13'b0000000110110: data_out = 18'h3f6c6; 13'b0000000110111: data_out = 18'h016c0; 13'b0000000111000: data_out = 18'h3ef0a; 13'b0000000111001: data_out = 18'h0037c; 13'b0000000111010: data_out = 18'h0000c; 13'b0000000111011: data_out = 18'h3f230; 13'b0000000111100: data_out = 18'h01d68; 13'b0000000111101: data_out = 18'h3f496; 13'b0000000111110: data_out = 18'h0045c; 13'b0000000111111: data_out = 18'h3f7be; 13'b0000001000000: data_out = 18'h3fa02; 13'b0000001000001: data_out = 18'h00cd6; 13'b0000001000010: data_out = 18'h3e88e; 13'b0000001000011: data_out = 18'h00ee8; 13'b0000001000100: data_out = 18'h00842; 13'b0000001000101: data_out = 18'h0052c; 13'b0000001000110: data_out = 18'h3e26e; 13'b0000001000111: data_out = 18'h01e6a; 13'b0000001001000: data_out = 18'h3f414; 13'b0000001001001: data_out = 18'h3f9e8; 13'b0000001001010: data_out = 18'h01d64; 13'b0000001001011: data_out = 18'h3d5aa; 13'b0000001001100: data_out = 18'h3f67a; 13'b0000001001101: data_out = 18'h01b76; 13'b0000001001110: data_out = 18'h003e4; 13'b0000001001111: data_out = 18'h3f160; 13'b0000001010000: data_out = 18'h00f90; 13'b0000001010001: data_out = 18'h3f39a; 13'b0000001010010: data_out = 18'h00b52; 13'b0000001010011: data_out = 18'h3f274; 13'b0000001010100: data_out = 18'h00e08; 13'b0000001010101: data_out = 18'h0035e; 13'b0000001010110: data_out = 18'h3efd4; 13'b0000001010111: data_out = 18'h011e0; 13'b0000001011000: data_out = 18'h005c6; 13'b0000001011001: data_out = 18'h3d93c; 13'b0000001011010: data_out = 18'h3fec8; 13'b0000001011011: data_out = 18'h030f8; 13'b0000001011100: data_out = 18'h3fd2a; 13'b0000001011101: data_out = 18'h3dc3c; 13'b0000001011110: data_out = 18'h01322; 13'b0000001011111: data_out = 18'h00bae; 13'b0000001100000: data_out = 18'h3ed4c; 13'b0000001100001: data_out = 18'h017b8; 13'b0000001100010: data_out = 18'h3c94a; 13'b0000001100011: data_out = 18'h0173e; 13'b0000001100100: data_out = 18'h0376e; 13'b0000001100101: data_out = 18'h3cb1a; 13'b0000001100110: data_out = 18'h3f9cc; 13'b0000001100111: data_out = 18'h017c6; 13'b0000001101000: data_out = 18'h3f22c; 13'b0000001101001: data_out = 18'h3fc4c; 13'b0000001101010: data_out = 18'h3fb32; 13'b0000001101011: data_out = 18'h02ea6; 13'b0000001101100: data_out = 18'h3bdf2; 13'b0000001101101: data_out = 18'h02124; 13'b0000001101110: data_out = 18'h01346; 13'b0000001101111: data_out = 18'h3ea40; 13'b0000001110000: data_out = 18'h3f8e0; 13'b0000001110001: data_out = 18'h00d80; 13'b0000001110010: data_out = 18'h3fed0; 13'b0000001110011: data_out = 18'h00f0c; 13'b0000001110100: data_out = 18'h3f1a4; 13'b0000001110101: data_out = 18'h3fcae; 13'b0000001110110: data_out = 18'h01146; 13'b0000001110111: data_out = 18'h3d69a; 13'b0000001111000: data_out = 18'h030f2; 13'b0000001111001: data_out = 18'h3e69a; 13'b0000001111010: data_out = 18'h3edc8; 13'b0000001111011: data_out = 18'h017ba; 13'b0000001111100: data_out = 18'h3f6be; 13'b0000001111101: data_out = 18'h3f03a; 13'b0000001111110: data_out = 18'h00c90; 13'b0000001111111: data_out = 18'h00248; 13'b0000010000000: data_out = 18'h023c6; 13'b0000010000001: data_out = 18'h3bfbe; 13'b0000010000010: data_out = 18'h0249e; 13'b0000010000011: data_out = 18'h3e7ea; 13'b0000010000100: data_out = 18'h0183c; 13'b0000010000101: data_out = 18'h3ed92; 13'b0000010000110: data_out = 18'h0181c; 13'b0000010000111: data_out = 18'h3f3b4; 13'b0000010001000: data_out = 18'h00332; 13'b0000010001001: data_out = 18'h3fc9e; 13'b0000010001010: data_out = 18'h3dda6; 13'b0000010001011: data_out = 18'h0316e; 13'b0000010001100: data_out = 18'h3f2fa; 13'b0000010001101: data_out = 18'h00418; 13'b0000010001110: data_out = 18'h00030; 13'b0000010001111: data_out = 18'h00876; 13'b0000010010000: data_out = 18'h3ecfa; 13'b0000010010001: data_out = 18'h006a4; 13'b0000010010010: data_out = 18'h016c2; 13'b0000010010011: data_out = 18'h3e412; 13'b0000010010100: data_out = 18'h3fdb4; 13'b0000010010101: data_out = 18'h00bba; 13'b0000010010110: data_out = 18'h00c76; 13'b0000010010111: data_out = 18'h3fb00; 13'b0000010011000: data_out = 18'h3eb5c; 13'b0000010011001: data_out = 18'h00d20; 13'b0000010011010: data_out = 18'h3e912; 13'b0000010011011: data_out = 18'h0094c; 13'b0000010011100: data_out = 18'h00d5c; 13'b0000010011101: data_out = 18'h01aae; 13'b0000010011110: data_out = 18'h3dd5a; 13'b0000010011111: data_out = 18'h3fcd0; 13'b0000010100000: data_out = 18'h00fe6; 13'b0000010100001: data_out = 18'h3f05c; 13'b0000010100010: data_out = 18'h01136; 13'b0000010100011: data_out = 18'h3fb52; 13'b0000010100100: data_out = 18'h3f802; 13'b0000010100101: data_out = 18'h3fedc; 13'b0000010100110: data_out = 18'h01006; 13'b0000010100111: data_out = 18'h3f22a; 13'b0000010101000: data_out = 18'h3f646; 13'b0000010101001: data_out = 18'h00624; 13'b0000010101010: data_out = 18'h024a2; 13'b0000010101011: data_out = 18'h3c5ac; 13'b0000010101100: data_out = 18'h01fea; 13'b0000010101101: data_out = 18'h3fdf0; 13'b0000010101110: data_out = 18'h3fb5a; 13'b0000010101111: data_out = 18'h3f68a; 13'b0000010110000: data_out = 18'h00c9a; 13'b0000010110001: data_out = 18'h3f35c; 13'b0000010110010: data_out = 18'h3ec06; 13'b0000010110011: data_out = 18'h02eb6; 13'b0000010110100: data_out = 18'h3ee5a; 13'b0000010110101: data_out = 18'h0045c; 13'b0000010110110: data_out = 18'h00a16; 13'b0000010110111: data_out = 18'h3f70a; 13'b0000010111000: data_out = 18'h3fa62; 13'b0000010111001: data_out = 18'h3fc2c; 13'b0000010111010: data_out = 18'h010d2; 13'b0000010111011: data_out = 18'h3fe70; 13'b0000010111100: data_out = 18'h3fab6; 13'b0000010111101: data_out = 18'h3fed4; 13'b0000010111110: data_out = 18'h3ee3c; 13'b0000010111111: data_out = 18'h02610; 13'b0000011000000: data_out = 18'h3e86a; 13'b0000011000001: data_out = 18'h3e6ae; 13'b0000011000010: data_out = 18'h01c00; 13'b0000011000011: data_out = 18'h3f908; 13'b0000011000100: data_out = 18'h3e4a2; 13'b0000011000101: data_out = 18'h032a2; 13'b0000011000110: data_out = 18'h3e49c; 13'b0000011000111: data_out = 18'h3fd50; 13'b0000011001000: data_out = 18'h013b4; 13'b0000011001001: data_out = 18'h00846; 13'b0000011001010: data_out = 18'h3dc0c; 13'b0000011001011: data_out = 18'h02c9c; 13'b0000011001100: data_out = 18'h3e842; 13'b0000011001101: data_out = 18'h009be; 13'b0000011001110: data_out = 18'h3f3b0; 13'b0000011001111: data_out = 18'h01680; 13'b0000011010000: data_out = 18'h3f734; 13'b0000011010001: data_out = 18'h3da62; 13'b0000011010010: data_out = 18'h01b6e; 13'b0000011010011: data_out = 18'h000b6; 13'b0000011010100: data_out = 18'h011b4; 13'b0000011010101: data_out = 18'h3e942; 13'b0000011010110: data_out = 18'h3f85c; 13'b0000011010111: data_out = 18'h3f9d0; 13'b0000011011000: data_out = 18'h026b8; 13'b0000011011001: data_out = 18'h3ec5e; 13'b0000011011010: data_out = 18'h00b94; 13'b0000011011011: data_out = 18'h3e54e; 13'b0000011011100: data_out = 18'h001c2; 13'b0000011011101: data_out = 18'h01de4; 13'b0000011011110: data_out = 18'h3de64; 13'b0000011011111: data_out = 18'h3f718; 13'b0000011100000: data_out = 18'h0119a; 13'b0000011100001: data_out = 18'h3fa28; 13'b0000011100010: data_out = 18'h00556; 13'b0000011100011: data_out = 18'h00baa; 13'b0000011100100: data_out = 18'h3edb8; 13'b0000011100101: data_out = 18'h3f692; 13'b0000011100110: data_out = 18'h0353c; 13'b0000011100111: data_out = 18'h3eb26; 13'b0000011101000: data_out = 18'h3ea1a; 13'b0000011101001: data_out = 18'h0058e; 13'b0000011101010: data_out = 18'h01e98; 13'b0000011101011: data_out = 18'h3f0ec; 13'b0000011101100: data_out = 18'h3eb14; 13'b0000011101101: data_out = 18'h3fec4; 13'b0000011101110: data_out = 18'h024a0; 13'b0000011101111: data_out = 18'h3eaac; 13'b0000011110000: data_out = 18'h3f87e; 13'b0000011110001: data_out = 18'h01844; 13'b0000011110010: data_out = 18'h3e44c; 13'b0000011110011: data_out = 18'h3f810; 13'b0000011110100: data_out = 18'h00954; 13'b0000011110101: data_out = 18'h00a12; 13'b0000011110110: data_out = 18'h3f60a; 13'b0000011110111: data_out = 18'h00e4a; 13'b0000011111000: data_out = 18'h3f6ee; 13'b0000011111001: data_out = 18'h3f33e; 13'b0000011111010: data_out = 18'h00ff0; 13'b0000011111011: data_out = 18'h00630; 13'b0000011111100: data_out = 18'h3fa30; 13'b0000011111101: data_out = 18'h3fb9e; 13'b0000011111110: data_out = 18'h013d6; 13'b0000011111111: data_out = 18'h3ed68; 13'b0000100000000: data_out = 18'h3ff36; 13'b0000100000001: data_out = 18'h01522; 13'b0000100000010: data_out = 18'h3dfb6; 13'b0000100000011: data_out = 18'h008c8; 13'b0000100000100: data_out = 18'h0150c; 13'b0000100000101: data_out = 18'h3e3ea; 13'b0000100000110: data_out = 18'h02070; 13'b0000100000111: data_out = 18'h3e4c2; 13'b0000100001000: data_out = 18'h00546; 13'b0000100001001: data_out = 18'h3eb9c; 13'b0000100001010: data_out = 18'h01d52; 13'b0000100001011: data_out = 18'h3eed4; 13'b0000100001100: data_out = 18'h00d3c; 13'b0000100001101: data_out = 18'h3ef8a; 13'b0000100001110: data_out = 18'h3f4ea; 13'b0000100001111: data_out = 18'h02134; 13'b0000100010000: data_out = 18'h3e80a; 13'b0000100010001: data_out = 18'h01a2c; 13'b0000100010010: data_out = 18'h3ee22; 13'b0000100010011: data_out = 18'h0115a; 13'b0000100010100: data_out = 18'h3ff02; 13'b0000100010101: data_out = 18'h3d536; 13'b0000100010110: data_out = 18'h03278; 13'b0000100010111: data_out = 18'h3f8b2; 13'b0000100011000: data_out = 18'h3f710; 13'b0000100011001: data_out = 18'h01c92; 13'b0000100011010: data_out = 18'h3dbe0; 13'b0000100011011: data_out = 18'h3fd0e; 13'b0000100011100: data_out = 18'h00304; 13'b0000100011101: data_out = 18'h00708; 13'b0000100011110: data_out = 18'h009e0; 13'b0000100011111: data_out = 18'h3db1c; 13'b0000100100000: data_out = 18'h02abe; 13'b0000100100001: data_out = 18'h3ed76; 13'b0000100100010: data_out = 18'h00a56; 13'b0000100100011: data_out = 18'h3f4c0; 13'b0000100100100: data_out = 18'h000de; 13'b0000100100101: data_out = 18'h3f9e2; 13'b0000100100110: data_out = 18'h01090; 13'b0000100100111: data_out = 18'h3ea8e; 13'b0000100101000: data_out = 18'h0077a; 13'b0000100101001: data_out = 18'h003a4; 13'b0000100101010: data_out = 18'h00264; 13'b0000100101011: data_out = 18'h3d7ee; 13'b0000100101100: data_out = 18'h03ff4; 13'b0000100101101: data_out = 18'h3f1cc; 13'b0000100101110: data_out = 18'h3fa72; 13'b0000100101111: data_out = 18'h3eeba; 13'b0000100110000: data_out = 18'h0212c; 13'b0000100110001: data_out = 18'h3e8be; 13'b0000100110010: data_out = 18'h3f370; 13'b0000100110011: data_out = 18'h01ad8; 13'b0000100110100: data_out = 18'h3f648; 13'b0000100110101: data_out = 18'h004da; 13'b0000100110110: data_out = 18'h3e7f6; 13'b0000100110111: data_out = 18'h0113e; 13'b0000100111000: data_out = 18'h3fc00; 13'b0000100111001: data_out = 18'h008ba; 13'b0000100111010: data_out = 18'h3f91c; 13'b0000100111011: data_out = 18'h3fd9a; 13'b0000100111100: data_out = 18'h0022a; 13'b0000100111101: data_out = 18'h00102; 13'b0000100111110: data_out = 18'h3fc8a; 13'b0000100111111: data_out = 18'h00022; 13'b0000101000000: data_out = 18'h0197a; 13'b0000101000001: data_out = 18'h3ed5e; 13'b0000101000010: data_out = 18'h3d14e; 13'b0000101000011: data_out = 18'h03ff6; 13'b0000101000100: data_out = 18'h3f33c; 13'b0000101000101: data_out = 18'h3fca2; 13'b0000101000110: data_out = 18'h3e50e; 13'b0000101000111: data_out = 18'h018c2; 13'b0000101001000: data_out = 18'h007bc; 13'b0000101001001: data_out = 18'h00710; 13'b0000101001010: data_out = 18'h3edc8; 13'b0000101001011: data_out = 18'h0119a; 13'b0000101001100: data_out = 18'h3e362; 13'b0000101001101: data_out = 18'h0149a; 13'b0000101001110: data_out = 18'h3ef58; 13'b0000101001111: data_out = 18'h00ae4; 13'b0000101010000: data_out = 18'h006a0; 13'b0000101010001: data_out = 18'h3e424; 13'b0000101010010: data_out = 18'h00bfc; 13'b0000101010011: data_out = 18'h00322; 13'b0000101010100: data_out = 18'h00c2a; 13'b0000101010101: data_out = 18'h3f72c; 13'b0000101010110: data_out = 18'h000f4; 13'b0000101010111: data_out = 18'h3fd02; 13'b0000101011000: data_out = 18'h00b76; 13'b0000101011001: data_out = 18'h3dac2; 13'b0000101011010: data_out = 18'h0297e; 13'b0000101011011: data_out = 18'h00880; 13'b0000101011100: data_out = 18'h3e3b8; 13'b0000101011101: data_out = 18'h019ee; 13'b0000101011110: data_out = 18'h005f8; 13'b0000101011111: data_out = 18'h3deaa; 13'b0000101100000: data_out = 18'h00f3a; 13'b0000101100001: data_out = 18'h3f874; 13'b0000101100010: data_out = 18'h3e732; 13'b0000101100011: data_out = 18'h02016; 13'b0000101100100: data_out = 18'h3ea10; 13'b0000101100101: data_out = 18'h00546; 13'b0000101100110: data_out = 18'h01f80; 13'b0000101100111: data_out = 18'h3ea54; 13'b0000101101000: data_out = 18'h00260; 13'b0000101101001: data_out = 18'h3eb48; 13'b0000101101010: data_out = 18'h014fc; 13'b0000101101011: data_out = 18'h3e64c; 13'b0000101101100: data_out = 18'h03144; 13'b0000101101101: data_out = 18'h3e754; 13'b0000101101110: data_out = 18'h3f2c2; 13'b0000101101111: data_out = 18'h3f482; 13'b0000101110000: data_out = 18'h02b20; 13'b0000101110001: data_out = 18'h3dd62; 13'b0000101110010: data_out = 18'h01dfc; 13'b0000101110011: data_out = 18'h3f038; 13'b0000101110100: data_out = 18'h002bc; 13'b0000101110101: data_out = 18'h3d994; 13'b0000101110110: data_out = 18'h03b6c; 13'b0000101110111: data_out = 18'h3ebe6; 13'b0000101111000: data_out = 18'h3ee7c; 13'b0000101111001: data_out = 18'h02578; 13'b0000101111010: data_out = 18'h3de6a; 13'b0000101111011: data_out = 18'h001e4; 13'b0000101111100: data_out = 18'h03032; 13'b0000101111101: data_out = 18'h3dbf6; 13'b0000101111110: data_out = 18'h3da70; 13'b0000101111111: data_out = 18'h03990; 13'b0000110000000: data_out = 18'h3d60a; 13'b0000110000001: data_out = 18'h008e2; 13'b0000110000010: data_out = 18'h027cc; 13'b0000110000011: data_out = 18'h3f030; 13'b0000110000100: data_out = 18'h3e88c; 13'b0000110000101: data_out = 18'h00568; 13'b0000110000110: data_out = 18'h00942; 13'b0000110000111: data_out = 18'h3fc7c; 13'b0000110001000: data_out = 18'h00024; 13'b0000110001001: data_out = 18'h002c4; 13'b0000110001010: data_out = 18'h3ff1c; 13'b0000110001011: data_out = 18'h00850; 13'b0000110001100: data_out = 18'h3d668; 13'b0000110001101: data_out = 18'h028d8; 13'b0000110001110: data_out = 18'h3f9ca; 13'b0000110001111: data_out = 18'h3f764; 13'b0000110010000: data_out = 18'h01260; 13'b0000110010001: data_out = 18'h3d120; 13'b0000110010010: data_out = 18'h01ed6; 13'b0000110010011: data_out = 18'h0173c; 13'b0000110010100: data_out = 18'h3d3ca; 13'b0000110010101: data_out = 18'h006ae; 13'b0000110010110: data_out = 18'h00974; 13'b0000110010111: data_out = 18'h00388; 13'b0000110011000: data_out = 18'h0019e; 13'b0000110011001: data_out = 18'h3fb10; 13'b0000110011010: data_out = 18'h3fcfc; 13'b0000110011011: data_out = 18'h003de; 13'b0000110011100: data_out = 18'h00880; 13'b0000110011101: data_out = 18'h3f7ca; 13'b0000110011110: data_out = 18'h3f0ee; 13'b0000110011111: data_out = 18'h02c0a; 13'b0000110100000: data_out = 18'h3f314; 13'b0000110100001: data_out = 18'h3ecee; 13'b0000110100010: data_out = 18'h3f17a; 13'b0000110100011: data_out = 18'h03932; 13'b0000110100100: data_out = 18'h3d29c; 13'b0000110100101: data_out = 18'h00406; 13'b0000110100110: data_out = 18'h02230; 13'b0000110100111: data_out = 18'h3e668; 13'b0000110101000: data_out = 18'h3d430; 13'b0000110101001: data_out = 18'h045d8; 13'b0000110101010: data_out = 18'h3f4a8; 13'b0000110101011: data_out = 18'h3e3da; 13'b0000110101100: data_out = 18'h01772; 13'b0000110101101: data_out = 18'h3e774; 13'b0000110101110: data_out = 18'h01e0e; 13'b0000110101111: data_out = 18'h3f388; 13'b0000110110000: data_out = 18'h3f990; 13'b0000110110001: data_out = 18'h3fb80; 13'b0000110110010: data_out = 18'h008fc; 13'b0000110110011: data_out = 18'h005bc; 13'b0000110110100: data_out = 18'h3ed2c; 13'b0000110110101: data_out = 18'h00eee; 13'b0000110110110: data_out = 18'h00782; 13'b0000110110111: data_out = 18'h3e73e; 13'b0000110111000: data_out = 18'h3ff10; 13'b0000110111001: data_out = 18'h0056a; 13'b0000110111010: data_out = 18'h0151e; 13'b0000110111011: data_out = 18'h3fd18; 13'b0000110111100: data_out = 18'h3e750; 13'b0000110111101: data_out = 18'h01932; 13'b0000110111110: data_out = 18'h3e3ec; 13'b0000110111111: data_out = 18'h00c42; 13'b0000111000000: data_out = 18'h00320; 13'b0000111000001: data_out = 18'h3fc1a; 13'b0000111000010: data_out = 18'h0063e; 13'b0000111000011: data_out = 18'h3f240; 13'b0000111000100: data_out = 18'h3ecca; 13'b0000111000101: data_out = 18'h02dca; 13'b0000111000110: data_out = 18'h3f40c; 13'b0000111000111: data_out = 18'h3f86c; 13'b0000111001000: data_out = 18'h3f9fe; 13'b0000111001001: data_out = 18'h00dda; 13'b0000111001010: data_out = 18'h3f2de; 13'b0000111001011: data_out = 18'h019f8; 13'b0000111001100: data_out = 18'h3ea62; 13'b0000111001101: data_out = 18'h0051a; 13'b0000111001110: data_out = 18'h01d12; 13'b0000111001111: data_out = 18'h3d638; 13'b0000111010000: data_out = 18'h01742; 13'b0000111010001: data_out = 18'h3fb20; 13'b0000111010010: data_out = 18'h3faf2; 13'b0000111010011: data_out = 18'h018ae; 13'b0000111010100: data_out = 18'h3ec1e; 13'b0000111010101: data_out = 18'h3dee2; 13'b0000111010110: data_out = 18'h03196; 13'b0000111010111: data_out = 18'h3f82c; 13'b0000111011000: data_out = 18'h3eb4c; 13'b0000111011001: data_out = 18'h01064; 13'b0000111011010: data_out = 18'h002a8; 13'b0000111011011: data_out = 18'h3e3fe; 13'b0000111011100: data_out = 18'h01716; 13'b0000111011101: data_out = 18'h3ff48; 13'b0000111011110: data_out = 18'h00d10; 13'b0000111011111: data_out = 18'h3e430; 13'b0000111100000: data_out = 18'h3ec0c; 13'b0000111100001: data_out = 18'h01678; 13'b0000111100010: data_out = 18'h0227e; 13'b0000111100011: data_out = 18'h3cb18; 13'b0000111100100: data_out = 18'h01d78; 13'b0000111100101: data_out = 18'h00e2c; 13'b0000111100110: data_out = 18'h3ecb8; 13'b0000111100111: data_out = 18'h3e972; 13'b0000111101000: data_out = 18'h012a0; 13'b0000111101001: data_out = 18'h3fcb6; 13'b0000111101010: data_out = 18'h021ac; 13'b0000111101011: data_out = 18'h3c8bc; 13'b0000111101100: data_out = 18'h0164a; 13'b0000111101101: data_out = 18'h02742; 13'b0000111101110: data_out = 18'h3db7e; 13'b0000111101111: data_out = 18'h00e8e; 13'b0000111110000: data_out = 18'h3ef90; 13'b0000111110001: data_out = 18'h3fe4c; 13'b0000111110010: data_out = 18'h01ff4; 13'b0000111110011: data_out = 18'h3df0e; 13'b0000111110100: data_out = 18'h002c0; 13'b0000111110101: data_out = 18'h00c60; 13'b0000111110110: data_out = 18'h00b86; 13'b0000111110111: data_out = 18'h3d260; 13'b0000111111000: data_out = 18'h01fae; 13'b0000111111001: data_out = 18'h00bd0; 13'b0000111111010: data_out = 18'h3e7b2; 13'b0000111111011: data_out = 18'h00884; 13'b0000111111100: data_out = 18'h3f462; 13'b0000111111101: data_out = 18'h01778; 13'b0000111111110: data_out = 18'h3f9b2; 13'b0000111111111: data_out = 18'h3eeda; 13'b0001000000000: data_out = 18'h00f90; 13'b0001000000001: data_out = 18'h00686; 13'b0001000000010: data_out = 18'h3e228; 13'b0001000000011: data_out = 18'h0303e; 13'b0001000000100: data_out = 18'h3d5c4; 13'b0001000000101: data_out = 18'h00814; 13'b0001000000110: data_out = 18'h3fe76; 13'b0001000000111: data_out = 18'h00c8c; 13'b0001000001000: data_out = 18'h009c0; 13'b0001000001001: data_out = 18'h3e88e; 13'b0001000001010: data_out = 18'h0084a; 13'b0001000001011: data_out = 18'h003ae; 13'b0001000001100: data_out = 18'h3f1ca; 13'b0001000001101: data_out = 18'h016d8; 13'b0001000001110: data_out = 18'h3e744; 13'b0001000001111: data_out = 18'h01244; 13'b0001000010000: data_out = 18'h3ef72; 13'b0001000010001: data_out = 18'h01060; 13'b0001000010010: data_out = 18'h3f2ba; 13'b0001000010011: data_out = 18'h003f2; 13'b0001000010100: data_out = 18'h004a2; 13'b0001000010101: data_out = 18'h00990; 13'b0001000010110: data_out = 18'h3d646; 13'b0001000010111: data_out = 18'h0219a; 13'b0001000011000: data_out = 18'h01ede; 13'b0001000011001: data_out = 18'h3e868; 13'b0001000011010: data_out = 18'h3e826; 13'b0001000011011: data_out = 18'h0237c; 13'b0001000011100: data_out = 18'h3fcf2; 13'b0001000011101: data_out = 18'h3e072; 13'b0001000011110: data_out = 18'h00a98; 13'b0001000011111: data_out = 18'h00236; 13'b0001000100000: data_out = 18'h00ff8; 13'b0001000100001: data_out = 18'h3f2a2; 13'b0001000100010: data_out = 18'h3e6d0; 13'b0001000100011: data_out = 18'h0219a; 13'b0001000100100: data_out = 18'h3f52e; 13'b0001000100101: data_out = 18'h3ffba; 13'b0001000100110: data_out = 18'h006ec; 13'b0001000100111: data_out = 18'h3ec88; 13'b0001000101000: data_out = 18'h00c70; 13'b0001000101001: data_out = 18'h3f426; 13'b0001000101010: data_out = 18'h01bae; 13'b0001000101011: data_out = 18'h3f00e; 13'b0001000101100: data_out = 18'h3ebf2; 13'b0001000101101: data_out = 18'h01ba8; 13'b0001000101110: data_out = 18'h003a8; 13'b0001000101111: data_out = 18'h3e990; 13'b0001000110000: data_out = 18'h02566; 13'b0001000110001: data_out = 18'h3dbea; 13'b0001000110010: data_out = 18'h00796; 13'b0001000110011: data_out = 18'h00660; 13'b0001000110100: data_out = 18'h3fb44; 13'b0001000110101: data_out = 18'h3f716; 13'b0001000110110: data_out = 18'h00c24; 13'b0001000110111: data_out = 18'h00a6c; 13'b0001000111000: data_out = 18'h3fc2c; 13'b0001000111001: data_out = 18'h3f766; 13'b0001000111010: data_out = 18'h3fcd0; 13'b0001000111011: data_out = 18'h3f7ee; 13'b0001000111100: data_out = 18'h00dee; 13'b0001000111101: data_out = 18'h006e2; 13'b0001000111110: data_out = 18'h3e85a; 13'b0001000111111: data_out = 18'h3f988; 13'b0001001000000: data_out = 18'h01bea; 13'b0001001000001: data_out = 18'h3f078; 13'b0001001000010: data_out = 18'h005a4; 13'b0001001000011: data_out = 18'h00e86; 13'b0001001000100: data_out = 18'h3e850; 13'b0001001000101: data_out = 18'h01a14; 13'b0001001000110: data_out = 18'h3f640; 13'b0001001000111: data_out = 18'h3fdb2; 13'b0001001001000: data_out = 18'h0045c; 13'b0001001001001: data_out = 18'h3fd46; 13'b0001001001010: data_out = 18'h0081a; 13'b0001001001011: data_out = 18'h3ff02; 13'b0001001001100: data_out = 18'h3e09e; 13'b0001001001101: data_out = 18'h02524; 13'b0001001001110: data_out = 18'h3e604; 13'b0001001001111: data_out = 18'h01680; 13'b0001001010000: data_out = 18'h3f4c8; 13'b0001001010001: data_out = 18'h3f8cc; 13'b0001001010010: data_out = 18'h0106a; 13'b0001001010011: data_out = 18'h3ef6a; 13'b0001001010100: data_out = 18'h3fa32; 13'b0001001010101: data_out = 18'h01528; 13'b0001001010110: data_out = 18'h3f026; 13'b0001001010111: data_out = 18'h00b22; 13'b0001001011000: data_out = 18'h3f838; 13'b0001001011001: data_out = 18'h3e506; 13'b0001001011010: data_out = 18'h023e0; 13'b0001001011011: data_out = 18'h011c0; 13'b0001001011100: data_out = 18'h3d00e; 13'b0001001011101: data_out = 18'h018d4; 13'b0001001011110: data_out = 18'h007f0; 13'b0001001011111: data_out = 18'h3e714; 13'b0001001100000: data_out = 18'h01258; 13'b0001001100001: data_out = 18'h006cc; 13'b0001001100010: data_out = 18'h3f38c; 13'b0001001100011: data_out = 18'h3ffaa; 13'b0001001100100: data_out = 18'h017d4; 13'b0001001100101: data_out = 18'h3e244; 13'b0001001100110: data_out = 18'h00e76; 13'b0001001100111: data_out = 18'h00588; 13'b0001001101000: data_out = 18'h3e13c; 13'b0001001101001: data_out = 18'h00c54; 13'b0001001101010: data_out = 18'h01628; 13'b0001001101011: data_out = 18'h3f526; 13'b0001001101100: data_out = 18'h3e746; 13'b0001001101101: data_out = 18'h02e54; 13'b0001001101110: data_out = 18'h3d79e; 13'b0001001101111: data_out = 18'h00f7c; 13'b0001001110000: data_out = 18'h00098; 13'b0001001110001: data_out = 18'h009f0; 13'b0001001110010: data_out = 18'h3e014; 13'b0001001110011: data_out = 18'h036da; 13'b0001001110100: data_out = 18'h3e25c; 13'b0001001110101: data_out = 18'h3f3dc; 13'b0001001110110: data_out = 18'h00ab8; 13'b0001001110111: data_out = 18'h00bbe; 13'b0001001111000: data_out = 18'h3e03c; 13'b0001001111001: data_out = 18'h02f04; 13'b0001001111010: data_out = 18'h3e07a; 13'b0001001111011: data_out = 18'h00ab4; 13'b0001001111100: data_out = 18'h3e1c6; 13'b0001001111101: data_out = 18'h01e80; 13'b0001001111110: data_out = 18'h3e7dc; 13'b0001001111111: data_out = 18'h029ee; 13'b0001010000000: data_out = 18'h3eb74; 13'b0001010000001: data_out = 18'h3e15e; 13'b0001010000010: data_out = 18'h00ba6; 13'b0001010000011: data_out = 18'h02036; 13'b0001010000100: data_out = 18'h3e380; 13'b0001010000101: data_out = 18'h00f68; 13'b0001010000110: data_out = 18'h3fada; 13'b0001010000111: data_out = 18'h3e762; 13'b0001010001000: data_out = 18'h01a96; 13'b0001010001001: data_out = 18'h3f67a; 13'b0001010001010: data_out = 18'h0159a; 13'b0001010001011: data_out = 18'h3d308; 13'b0001010001100: data_out = 18'h0314a; 13'b0001010001101: data_out = 18'h3ec7c; 13'b0001010001110: data_out = 18'h0067c; 13'b0001010001111: data_out = 18'h3e486; 13'b0001010010000: data_out = 18'h02e90; 13'b0001010010001: data_out = 18'h0021e; 13'b0001010010010: data_out = 18'h3d800; 13'b0001010010011: data_out = 18'h0087c; 13'b0001010010100: data_out = 18'h3fc58; 13'b0001010010101: data_out = 18'h3f39e; 13'b0001010010110: data_out = 18'h01e7c; 13'b0001010010111: data_out = 18'h00476; 13'b0001010011000: data_out = 18'h3dc0c; 13'b0001010011001: data_out = 18'h01a3a; 13'b0001010011010: data_out = 18'h3f40e; 13'b0001010011011: data_out = 18'h01a2c; 13'b0001010011100: data_out = 18'h3e0b4; 13'b0001010011101: data_out = 18'h012b8; 13'b0001010011110: data_out = 18'h3ff46; 13'b0001010011111: data_out = 18'h3f636; 13'b0001010100000: data_out = 18'h3f156; 13'b0001010100001: data_out = 18'h01450; 13'b0001010100010: data_out = 18'h0048c; 13'b0001010100011: data_out = 18'h00964; 13'b0001010100100: data_out = 18'h3e55c; 13'b0001010100101: data_out = 18'h3f5a0; 13'b0001010100110: data_out = 18'h025f2; 13'b0001010100111: data_out = 18'h002ec; 13'b0001010101000: data_out = 18'h3dc0c; 13'b0001010101001: data_out = 18'h006d6; 13'b0001010101010: data_out = 18'h023f0; 13'b0001010101011: data_out = 18'h3d0ae; 13'b0001010101100: data_out = 18'h02b82; 13'b0001010101101: data_out = 18'h3eea0; 13'b0001010101110: data_out = 18'h01090; 13'b0001010101111: data_out = 18'h3e6e2; 13'b0001010110000: data_out = 18'h3fd26; 13'b0001010110001: data_out = 18'h00d8c; 13'b0001010110010: data_out = 18'h3eae4; 13'b0001010110011: data_out = 18'h00390; 13'b0001010110100: data_out = 18'h02108; 13'b0001010110101: data_out = 18'h3e84c; 13'b0001010110110: data_out = 18'h00156; 13'b0001010110111: data_out = 18'h3eecc; 13'b0001010111000: data_out = 18'h0223e; 13'b0001010111001: data_out = 18'h3e324; 13'b0001010111010: data_out = 18'h00c10; 13'b0001010111011: data_out = 18'h0039c; 13'b0001010111100: data_out = 18'h3f1bc; 13'b0001010111101: data_out = 18'h01f3a; 13'b0001010111110: data_out = 18'h3f30e; 13'b0001010111111: data_out = 18'h3d71e; 13'b0001011000000: data_out = 18'h02ce8; 13'b0001011000001: data_out = 18'h3dfec; 13'b0001011000010: data_out = 18'h00af2; 13'b0001011000011: data_out = 18'h00fe2; 13'b0001011000100: data_out = 18'h3f5a8; 13'b0001011000101: data_out = 18'h3f568; 13'b0001011000110: data_out = 18'h003c8; 13'b0001011000111: data_out = 18'h01d1a; 13'b0001011001000: data_out = 18'h3d760; 13'b0001011001001: data_out = 18'h01ca2; 13'b0001011001010: data_out = 18'h3f27e; 13'b0001011001011: data_out = 18'h01334; 13'b0001011001100: data_out = 18'h0002e; 13'b0001011001101: data_out = 18'h3d798; 13'b0001011001110: data_out = 18'h02100; 13'b0001011001111: data_out = 18'h3fc44; 13'b0001011010000: data_out = 18'h3efb8; 13'b0001011010001: data_out = 18'h0123c; 13'b0001011010010: data_out = 18'h3faac; 13'b0001011010011: data_out = 18'h00508; 13'b0001011010100: data_out = 18'h012a0; 13'b0001011010101: data_out = 18'h3ddf2; 13'b0001011010110: data_out = 18'h01178; 13'b0001011010111: data_out = 18'h00496; 13'b0001011011000: data_out = 18'h00480; 13'b0001011011001: data_out = 18'h3ef9c; 13'b0001011011010: data_out = 18'h3fc32; 13'b0001011011011: data_out = 18'h01f4a; 13'b0001011011100: data_out = 18'h3e7e2; 13'b0001011011101: data_out = 18'h3f380; 13'b0001011011110: data_out = 18'h01ad6; 13'b0001011011111: data_out = 18'h3eb52; 13'b0001011100000: data_out = 18'h01630; 13'b0001011100001: data_out = 18'h3dae8; 13'b0001011100010: data_out = 18'h00ac0; 13'b0001011100011: data_out = 18'h010ec; 13'b0001011100100: data_out = 18'h3fdea; 13'b0001011100101: data_out = 18'h004ae; 13'b0001011100110: data_out = 18'h3ecc0; 13'b0001011100111: data_out = 18'h01ce6; 13'b0001011101000: data_out = 18'h3e21a; 13'b0001011101001: data_out = 18'h3f2b2; 13'b0001011101010: data_out = 18'h027ee; 13'b0001011101011: data_out = 18'h3ed00; 13'b0001011101100: data_out = 18'h3f8cc; 13'b0001011101101: data_out = 18'h00a8a; 13'b0001011101110: data_out = 18'h3e788; 13'b0001011101111: data_out = 18'h02ab6; 13'b0001011110000: data_out = 18'h3e734; 13'b0001011110001: data_out = 18'h007f6; 13'b0001011110010: data_out = 18'h3e9f4; 13'b0001011110011: data_out = 18'h007a8; 13'b0001011110100: data_out = 18'h00ca8; 13'b0001011110101: data_out = 18'h00f90; 13'b0001011110110: data_out = 18'h3edae; 13'b0001011110111: data_out = 18'h3f860; 13'b0001011111000: data_out = 18'h0108a; 13'b0001011111001: data_out = 18'h3ec96; 13'b0001011111010: data_out = 18'h00354; 13'b0001011111011: data_out = 18'h01f72; 13'b0001011111100: data_out = 18'h3ead2; 13'b0001011111101: data_out = 18'h3f5f2; 13'b0001011111110: data_out = 18'h00cc4; 13'b0001011111111: data_out = 18'h3f77c; 13'b0001100000000: data_out = 18'h3feda; 13'b0001100000001: data_out = 18'h005a6; 13'b0001100000010: data_out = 18'h00aae; 13'b0001100000011: data_out = 18'h3d8a6; 13'b0001100000100: data_out = 18'h023d4; 13'b0001100000101: data_out = 18'h00540; 13'b0001100000110: data_out = 18'h3fc0e; 13'b0001100000111: data_out = 18'h3f0e4; 13'b0001100001000: data_out = 18'h00a7a; 13'b0001100001001: data_out = 18'h3f9ea; 13'b0001100001010: data_out = 18'h0128c; 13'b0001100001011: data_out = 18'h3d748; 13'b0001100001100: data_out = 18'h020aa; 13'b0001100001101: data_out = 18'h001f2; 13'b0001100001110: data_out = 18'h000de; 13'b0001100001111: data_out = 18'h3fa5c; 13'b0001100010000: data_out = 18'h3eed2; 13'b0001100010001: data_out = 18'h014fc; 13'b0001100010010: data_out = 18'h3fb74; 13'b0001100010011: data_out = 18'h012d0; 13'b0001100010100: data_out = 18'h3e390; 13'b0001100010101: data_out = 18'h00212; 13'b0001100010110: data_out = 18'h3fa4c; 13'b0001100010111: data_out = 18'h00e4a; 13'b0001100011000: data_out = 18'h00dde; 13'b0001100011001: data_out = 18'h3ef70; 13'b0001100011010: data_out = 18'h3edce; 13'b0001100011011: data_out = 18'h018b6; 13'b0001100011100: data_out = 18'h3f6c2; 13'b0001100011101: data_out = 18'h3ec86; 13'b0001100011110: data_out = 18'h02ae2; 13'b0001100011111: data_out = 18'h3de8a; 13'b0001100100000: data_out = 18'h3f4b4; 13'b0001100100001: data_out = 18'h02272; 13'b0001100100010: data_out = 18'h3ef56; 13'b0001100100011: data_out = 18'h3fc24; 13'b0001100100100: data_out = 18'h00d80; 13'b0001100100101: data_out = 18'h0076c; 13'b0001100100110: data_out = 18'h3e066; 13'b0001100100111: data_out = 18'h00178; 13'b0001100101000: data_out = 18'h013a0; 13'b0001100101001: data_out = 18'h3ee7e; 13'b0001100101010: data_out = 18'h009e8; 13'b0001100101011: data_out = 18'h001ae; 13'b0001100101100: data_out = 18'h3fdd0; 13'b0001100101101: data_out = 18'h00dfe; 13'b0001100101110: data_out = 18'h3ed54; 13'b0001100101111: data_out = 18'h3fd64; 13'b0001100110000: data_out = 18'h01a8c; 13'b0001100110001: data_out = 18'h3fdbe; 13'b0001100110010: data_out = 18'h3e7a4; 13'b0001100110011: data_out = 18'h00fc6; 13'b0001100110100: data_out = 18'h3fa30; 13'b0001100110101: data_out = 18'h3feb0; 13'b0001100110110: data_out = 18'h0060e; 13'b0001100110111: data_out = 18'h3f944; 13'b0001100111000: data_out = 18'h3f6a6; 13'b0001100111001: data_out = 18'h0249a; 13'b0001100111010: data_out = 18'h3e322; 13'b0001100111011: data_out = 18'h017a6; 13'b0001100111100: data_out = 18'h3ec30; 13'b0001100111101: data_out = 18'h00b22; 13'b0001100111110: data_out = 18'h3f02e; 13'b0001100111111: data_out = 18'h012c0; 13'b0001101000000: data_out = 18'h3fc0e; 13'b0001101000001: data_out = 18'h3ef1e; 13'b0001101000010: data_out = 18'h01714; 13'b0001101000011: data_out = 18'h3f08e; 13'b0001101000100: data_out = 18'h3fa5e; 13'b0001101000101: data_out = 18'h01202; 13'b0001101000110: data_out = 18'h3e810; 13'b0001101000111: data_out = 18'h0114c; 13'b0001101001000: data_out = 18'h3fa3e; 13'b0001101001001: data_out = 18'h3ed40; 13'b0001101001010: data_out = 18'h02770; 13'b0001101001011: data_out = 18'h3dfc0; 13'b0001101001100: data_out = 18'h02b0c; 13'b0001101001101: data_out = 18'h3d6b6; 13'b0001101001110: data_out = 18'h00e0e; 13'b0001101001111: data_out = 18'h004f6; 13'b0001101010000: data_out = 18'h00798; 13'b0001101010001: data_out = 18'h3ed2e; 13'b0001101010010: data_out = 18'h3ec9c; 13'b0001101010011: data_out = 18'h022a8; 13'b0001101010100: data_out = 18'h3de3e; 13'b0001101010101: data_out = 18'h01bba; 13'b0001101010110: data_out = 18'h3f4bc; 13'b0001101010111: data_out = 18'h010c0; 13'b0001101011000: data_out = 18'h3ec1a; 13'b0001101011001: data_out = 18'h3feea; 13'b0001101011010: data_out = 18'h3f38c; 13'b0001101011011: data_out = 18'h02c68; 13'b0001101011100: data_out = 18'h3e1a0; 13'b0001101011101: data_out = 18'h00afe; 13'b0001101011110: data_out = 18'h3e604; 13'b0001101011111: data_out = 18'h01b04; 13'b0001101100000: data_out = 18'h3f994; 13'b0001101100001: data_out = 18'h3ea1e; 13'b0001101100010: data_out = 18'h02b70; 13'b0001101100011: data_out = 18'h3d978; 13'b0001101100100: data_out = 18'h01c6e; 13'b0001101100101: data_out = 18'h3f7d6; 13'b0001101100110: data_out = 18'h008d6; 13'b0001101100111: data_out = 18'h00ad4; 13'b0001101101000: data_out = 18'h3e972; 13'b0001101101001: data_out = 18'h3f4e4; 13'b0001101101010: data_out = 18'h01bf4; 13'b0001101101011: data_out = 18'h3e902; 13'b0001101101100: data_out = 18'h0159a; 13'b0001101101101: data_out = 18'h3f70e; 13'b0001101101110: data_out = 18'h000a8; 13'b0001101101111: data_out = 18'h3f4da; 13'b0001101110000: data_out = 18'h3f38a; 13'b0001101110001: data_out = 18'h0296a; 13'b0001101110010: data_out = 18'h3e396; 13'b0001101110011: data_out = 18'h3fbec; 13'b0001101110100: data_out = 18'h00f6a; 13'b0001101110101: data_out = 18'h3f1dc; 13'b0001101110110: data_out = 18'h013f6; 13'b0001101110111: data_out = 18'h3f5d6; 13'b0001101111000: data_out = 18'h009c4; 13'b0001101111001: data_out = 18'h000ee; 13'b0001101111010: data_out = 18'h3f508; 13'b0001101111011: data_out = 18'h3eed0; 13'b0001101111100: data_out = 18'h00664; 13'b0001101111101: data_out = 18'h022a6; 13'b0001101111110: data_out = 18'h3e554; 13'b0001101111111: data_out = 18'h00078; 13'b0001110000000: data_out = 18'h0068e; 13'b0001110000001: data_out = 18'h3e00e; 13'b0001110000010: data_out = 18'h01dd8; 13'b0001110000011: data_out = 18'h3f58c; 13'b0001110000100: data_out = 18'h0165e; 13'b0001110000101: data_out = 18'h3e7ec; 13'b0001110000110: data_out = 18'h0022e; 13'b0001110000111: data_out = 18'h3f1ee; 13'b0001110001000: data_out = 18'h0156e; 13'b0001110001001: data_out = 18'h00b64; 13'b0001110001010: data_out = 18'h3e718; 13'b0001110001011: data_out = 18'h004fc; 13'b0001110001100: data_out = 18'h3fe4a; 13'b0001110001101: data_out = 18'h3f0d0; 13'b0001110001110: data_out = 18'h02f66; 13'b0001110001111: data_out = 18'h3df10; 13'b0001110010000: data_out = 18'h01324; 13'b0001110010001: data_out = 18'h3efa4; 13'b0001110010010: data_out = 18'h00292; 13'b0001110010011: data_out = 18'h01f2a; 13'b0001110010100: data_out = 18'h3e940; 13'b0001110010101: data_out = 18'h3ee02; 13'b0001110010110: data_out = 18'h03f36; 13'b0001110010111: data_out = 18'h3c54c; 13'b0001110011000: data_out = 18'h3eace; 13'b0001110011001: data_out = 18'h035b8; 13'b0001110011010: data_out = 18'h3f646; 13'b0001110011011: data_out = 18'h0040c; 13'b0001110011100: data_out = 18'h3df80; 13'b0001110011101: data_out = 18'h021a4; 13'b0001110011110: data_out = 18'h3e352; 13'b0001110011111: data_out = 18'h00924; 13'b0001110100000: data_out = 18'h00000; 13'b0001110100001: data_out = 18'h3ff46; 13'b0001110100010: data_out = 18'h019f8; 13'b0001110100011: data_out = 18'h3df66; 13'b0001110100100: data_out = 18'h006b2; 13'b0001110100101: data_out = 18'h3ef16; 13'b0001110100110: data_out = 18'h015ee; 13'b0001110100111: data_out = 18'h0017a; 13'b0001110101000: data_out = 18'h3fd3e; 13'b0001110101001: data_out = 18'h3fb2a; 13'b0001110101010: data_out = 18'h006e4; 13'b0001110101011: data_out = 18'h3e67e; 13'b0001110101100: data_out = 18'h01360; 13'b0001110101101: data_out = 18'h0031a; 13'b0001110101110: data_out = 18'h3ed44; 13'b0001110101111: data_out = 18'h02352; 13'b0001110110000: data_out = 18'h3d4a8; 13'b0001110110001: data_out = 18'h01c76; 13'b0001110110010: data_out = 18'h3ff14; 13'b0001110110011: data_out = 18'h00578; 13'b0001110110100: data_out = 18'h3ec46; 13'b0001110110101: data_out = 18'h00fac; 13'b0001110110110: data_out = 18'h007de; 13'b0001110110111: data_out = 18'h3df4a; 13'b0001110111000: data_out = 18'h00738; 13'b0001110111001: data_out = 18'h02884; 13'b0001110111010: data_out = 18'h3d7f6; 13'b0001110111011: data_out = 18'h0140e; 13'b0001110111100: data_out = 18'h3fe78; 13'b0001110111101: data_out = 18'h0145e; 13'b0001110111110: data_out = 18'h3ece8; 13'b0001110111111: data_out = 18'h3fb6e; 13'b0001111000000: data_out = 18'h010fe; 13'b0001111000001: data_out = 18'h3f0fa; 13'b0001111000010: data_out = 18'h3fb28; 13'b0001111000011: data_out = 18'h00508; 13'b0001111000100: data_out = 18'h00684; 13'b0001111000101: data_out = 18'h3ff90; 13'b0001111000110: data_out = 18'h3ede2; 13'b0001111000111: data_out = 18'h3f952; 13'b0001111001000: data_out = 18'h01666; 13'b0001111001001: data_out = 18'h00078; 13'b0001111001010: data_out = 18'h3db62; 13'b0001111001011: data_out = 18'h018f8; 13'b0001111001100: data_out = 18'h01480; 13'b0001111001101: data_out = 18'h3e288; 13'b0001111001110: data_out = 18'h3ff3a; 13'b0001111001111: data_out = 18'h01570; 13'b0001111010000: data_out = 18'h3f6aa; 13'b0001111010001: data_out = 18'h00bfa; 13'b0001111010010: data_out = 18'h00044; 13'b0001111010011: data_out = 18'h3e05e; 13'b0001111010100: data_out = 18'h02204; 13'b0001111010101: data_out = 18'h3f47e; 13'b0001111010110: data_out = 18'h3dbd2; 13'b0001111010111: data_out = 18'h02a74; 13'b0001111011000: data_out = 18'h00b1e; 13'b0001111011001: data_out = 18'h3e8dc; 13'b0001111011010: data_out = 18'h0086a; 13'b0001111011011: data_out = 18'h3f610; 13'b0001111011100: data_out = 18'h00c54; 13'b0001111011101: data_out = 18'h00094; 13'b0001111011110: data_out = 18'h3f586; 13'b0001111011111: data_out = 18'h3ea1a; 13'b0001111100000: data_out = 18'h02b92; 13'b0001111100001: data_out = 18'h3d398; 13'b0001111100010: data_out = 18'h04068; 13'b0001111100011: data_out = 18'h3d07c; 13'b0001111100100: data_out = 18'h3ebf6; 13'b0001111100101: data_out = 18'h03472; 13'b0001111100110: data_out = 18'h3e55c; 13'b0001111100111: data_out = 18'h01b0e; 13'b0001111101000: data_out = 18'h3efce; 13'b0001111101001: data_out = 18'h3f91c; 13'b0001111101010: data_out = 18'h00836; 13'b0001111101011: data_out = 18'h3fa02; 13'b0001111101100: data_out = 18'h3fb28; 13'b0001111101101: data_out = 18'h0077e; 13'b0001111101110: data_out = 18'h00c8c; 13'b0001111101111: data_out = 18'h3e83a; 13'b0001111110000: data_out = 18'h3feb2; 13'b0001111110001: data_out = 18'h3fabe; 13'b0001111110010: data_out = 18'h3fdb0; 13'b0001111110011: data_out = 18'h01ce4; 13'b0001111110100: data_out = 18'h3d18a; 13'b0001111110101: data_out = 18'h028c6; 13'b0001111110110: data_out = 18'h3f96e; 13'b0001111110111: data_out = 18'h3e5ee; 13'b0001111111000: data_out = 18'h02586; 13'b0001111111001: data_out = 18'h3f376; 13'b0001111111010: data_out = 18'h3f8ba; 13'b0001111111011: data_out = 18'h00e7c; 13'b0001111111100: data_out = 18'h3fce4; 13'b0001111111101: data_out = 18'h3f48a; 13'b0001111111110: data_out = 18'h00668; 13'b0001111111111: data_out = 18'h00652; 13'b0010000000000: data_out = 18'h3fbe8; 13'b0010000000001: data_out = 18'h00934; 13'b0010000000010: data_out = 18'h3ee44; 13'b0010000000011: data_out = 18'h01314; 13'b0010000000100: data_out = 18'h3f380; 13'b0010000000101: data_out = 18'h00648; 13'b0010000000110: data_out = 18'h3fa28; 13'b0010000000111: data_out = 18'h01694; 13'b0010000001000: data_out = 18'h3d9a2; 13'b0010000001001: data_out = 18'h009cc; 13'b0010000001010: data_out = 18'h017fc; 13'b0010000001011: data_out = 18'h3df18; 13'b0010000001100: data_out = 18'h01cd6; 13'b0010000001101: data_out = 18'h3da52; 13'b0010000001110: data_out = 18'h01808; 13'b0010000001111: data_out = 18'h0075c; 13'b0010000010000: data_out = 18'h3ee72; 13'b0010000010001: data_out = 18'h3ffa2; 13'b0010000010010: data_out = 18'h008ea; 13'b0010000010011: data_out = 18'h006ac; 13'b0010000010100: data_out = 18'h3e1d6; 13'b0010000010101: data_out = 18'h0364c; 13'b0010000010110: data_out = 18'h3dabc; 13'b0010000010111: data_out = 18'h00e5c; 13'b0010000011000: data_out = 18'h3f730; 13'b0010000011001: data_out = 18'h003c4; 13'b0010000011010: data_out = 18'h00606; 13'b0010000011011: data_out = 18'h000da; 13'b0010000011100: data_out = 18'h3d8fe; 13'b0010000011101: data_out = 18'h01732; 13'b0010000011110: data_out = 18'h3fd92; 13'b0010000011111: data_out = 18'h0196c; 13'b0010000100000: data_out = 18'h3e6cc; 13'b0010000100001: data_out = 18'h0126a; 13'b0010000100010: data_out = 18'h3ea1c; 13'b0010000100011: data_out = 18'h00074; 13'b0010000100100: data_out = 18'h024d4; 13'b0010000100101: data_out = 18'h3ef20; 13'b0010000100110: data_out = 18'h3fd82; 13'b0010000100111: data_out = 18'h3fc30; 13'b0010000101000: data_out = 18'h0033a; 13'b0010000101001: data_out = 18'h3f7b2; 13'b0010000101010: data_out = 18'h00b52; 13'b0010000101011: data_out = 18'h3f62a; 13'b0010000101100: data_out = 18'h01290; 13'b0010000101101: data_out = 18'h3e402; 13'b0010000101110: data_out = 18'h0177e; 13'b0010000101111: data_out = 18'h3f072; 13'b0010000110000: data_out = 18'h3f828; 13'b0010000110001: data_out = 18'h0231e; 13'b0010000110010: data_out = 18'h3e1c0; 13'b0010000110011: data_out = 18'h008ce; 13'b0010000110100: data_out = 18'h003d4; 13'b0010000110101: data_out = 18'h3e964; 13'b0010000110110: data_out = 18'h0246a; 13'b0010000110111: data_out = 18'h3edbc; 13'b0010000111000: data_out = 18'h3fde0; 13'b0010000111001: data_out = 18'h3e59a; 13'b0010000111010: data_out = 18'h00a24; 13'b0010000111011: data_out = 18'h0123c; 13'b0010000111100: data_out = 18'h004d0; 13'b0010000111101: data_out = 18'h3fe56; 13'b0010000111110: data_out = 18'h3f2b4; 13'b0010000111111: data_out = 18'h00ca4; 13'b0010001000000: data_out = 18'h3ec9c; 13'b0010001000001: data_out = 18'h01aac; 13'b0010001000010: data_out = 18'h3fb8c; 13'b0010001000011: data_out = 18'h3ff00; 13'b0010001000100: data_out = 18'h3f62e; 13'b0010001000101: data_out = 18'h3fc2e; 13'b0010001000110: data_out = 18'h009fc; 13'b0010001000111: data_out = 18'h0097c; 13'b0010001001000: data_out = 18'h000a0; 13'b0010001001001: data_out = 18'h3e84c; 13'b0010001001010: data_out = 18'h00856; 13'b0010001001011: data_out = 18'h3f946; 13'b0010001001100: data_out = 18'h006f2; 13'b0010001001101: data_out = 18'h3f258; 13'b0010001001110: data_out = 18'h0263e; 13'b0010001001111: data_out = 18'h3e202; 13'b0010001010000: data_out = 18'h0128e; 13'b0010001010001: data_out = 18'h3fa84; 13'b0010001010010: data_out = 18'h3f86e; 13'b0010001010011: data_out = 18'h00556; 13'b0010001010100: data_out = 18'h00a68; 13'b0010001010101: data_out = 18'h3ff26; 13'b0010001010110: data_out = 18'h3ecd8; 13'b0010001010111: data_out = 18'h00680; 13'b0010001011000: data_out = 18'h007d4; 13'b0010001011001: data_out = 18'h3f9e4; 13'b0010001011010: data_out = 18'h001d6; 13'b0010001011011: data_out = 18'h3f94e; 13'b0010001011100: data_out = 18'h3f3e0; 13'b0010001011101: data_out = 18'h01430; 13'b0010001011110: data_out = 18'h00846; 13'b0010001011111: data_out = 18'h3fb8a; 13'b0010001100000: data_out = 18'h3e5a8; 13'b0010001100001: data_out = 18'h02058; 13'b0010001100010: data_out = 18'h001f2; 13'b0010001100011: data_out = 18'h3d81e; 13'b0010001100100: data_out = 18'h013a2; 13'b0010001100101: data_out = 18'h0017a; 13'b0010001100110: data_out = 18'h00976; 13'b0010001100111: data_out = 18'h3f26a; 13'b0010001101000: data_out = 18'h3f14c; 13'b0010001101001: data_out = 18'h024c4; 13'b0010001101010: data_out = 18'h3fa6e; 13'b0010001101011: data_out = 18'h3e7f0; 13'b0010001101100: data_out = 18'h3fec0; 13'b0010001101101: data_out = 18'h01bf6; 13'b0010001101110: data_out = 18'h003e8; 13'b0010001101111: data_out = 18'h3db06; 13'b0010001110000: data_out = 18'h02d46; 13'b0010001110001: data_out = 18'h3e526; 13'b0010001110010: data_out = 18'h001fa; 13'b0010001110011: data_out = 18'h3ff22; 13'b0010001110100: data_out = 18'h0049e; 13'b0010001110101: data_out = 18'h00126; 13'b0010001110110: data_out = 18'h0022e; 13'b0010001110111: data_out = 18'h3fd4e; 13'b0010001111000: data_out = 18'h3f6d4; 13'b0010001111001: data_out = 18'h00888; 13'b0010001111010: data_out = 18'h3f5a6; 13'b0010001111011: data_out = 18'h01000; 13'b0010001111100: data_out = 18'h3dff4; 13'b0010001111101: data_out = 18'h02784; 13'b0010001111110: data_out = 18'h3e84e; 13'b0010001111111: data_out = 18'h01344; 13'b0010010000000: data_out = 18'h3f1ea; 13'b0010010000001: data_out = 18'h00df4; 13'b0010010000010: data_out = 18'h3e6a6; 13'b0010010000011: data_out = 18'h021aa; 13'b0010010000100: data_out = 18'h3dafe; 13'b0010010000101: data_out = 18'h016ba; 13'b0010010000110: data_out = 18'h0017c; 13'b0010010000111: data_out = 18'h3f046; 13'b0010010001000: data_out = 18'h3f0b0; 13'b0010010001001: data_out = 18'h0244e; 13'b0010010001010: data_out = 18'h3df78; 13'b0010010001011: data_out = 18'h029e0; 13'b0010010001100: data_out = 18'h3effc; 13'b0010010001101: data_out = 18'h002d2; 13'b0010010001110: data_out = 18'h3ed44; 13'b0010010001111: data_out = 18'h006a6; 13'b0010010010000: data_out = 18'h3fcd4; 13'b0010010010001: data_out = 18'h007aa; 13'b0010010010010: data_out = 18'h3edd0; 13'b0010010010011: data_out = 18'h01b64; 13'b0010010010100: data_out = 18'h3f7fe; 13'b0010010010101: data_out = 18'h3f212; 13'b0010010010110: data_out = 18'h0200a; 13'b0010010010111: data_out = 18'h3e3fe; 13'b0010010011000: data_out = 18'h00f44; 13'b0010010011001: data_out = 18'h3f39e; 13'b0010010011010: data_out = 18'h3f71e; 13'b0010010011011: data_out = 18'h0124e; 13'b0010010011100: data_out = 18'h00b82; 13'b0010010011101: data_out = 18'h3f7ea; 13'b0010010011110: data_out = 18'h3f52c; 13'b0010010011111: data_out = 18'h00392; 13'b0010010100000: data_out = 18'h00470; 13'b0010010100001: data_out = 18'h003c0; 13'b0010010100010: data_out = 18'h3e35e; 13'b0010010100011: data_out = 18'h020d6; 13'b0010010100100: data_out = 18'h3f522; 13'b0010010100101: data_out = 18'h3e6a8; 13'b0010010100110: data_out = 18'h00e7c; 13'b0010010100111: data_out = 18'h020a6; 13'b0010010101000: data_out = 18'h3e65c; 13'b0010010101001: data_out = 18'h003d8; 13'b0010010101010: data_out = 18'h005d2; 13'b0010010101011: data_out = 18'h3f5ee; 13'b0010010101100: data_out = 18'h3f64a; 13'b0010010101101: data_out = 18'h0168a; 13'b0010010101110: data_out = 18'h3fd22; 13'b0010010101111: data_out = 18'h3ece6; 13'b0010010110000: data_out = 18'h0178c; 13'b0010010110001: data_out = 18'h3ea02; 13'b0010010110010: data_out = 18'h0124c; 13'b0010010110011: data_out = 18'h3f880; 13'b0010010110100: data_out = 18'h3f568; 13'b0010010110101: data_out = 18'h3ff7e; 13'b0010010110110: data_out = 18'h00e2a; 13'b0010010110111: data_out = 18'h3f42c; 13'b0010010111000: data_out = 18'h00356; 13'b0010010111001: data_out = 18'h3f986; 13'b0010010111010: data_out = 18'h021a6; 13'b0010010111011: data_out = 18'h3e8f2; 13'b0010010111100: data_out = 18'h3e888; 13'b0010010111101: data_out = 18'h02466; 13'b0010010111110: data_out = 18'h3ea70; 13'b0010010111111: data_out = 18'h0179a; 13'b0010011000000: data_out = 18'h3ebf2; 13'b0010011000001: data_out = 18'h005d2; 13'b0010011000010: data_out = 18'h3ec70; 13'b0010011000011: data_out = 18'h0142a; 13'b0010011000100: data_out = 18'h00772; 13'b0010011000101: data_out = 18'h3fb6c; 13'b0010011000110: data_out = 18'h00aa0; 13'b0010011000111: data_out = 18'h3f1a0; 13'b0010011001000: data_out = 18'h001ce; 13'b0010011001001: data_out = 18'h00146; 13'b0010011001010: data_out = 18'h0112c; 13'b0010011001011: data_out = 18'h3dfbc; 13'b0010011001100: data_out = 18'h00aaa; 13'b0010011001101: data_out = 18'h3f93a; 13'b0010011001110: data_out = 18'h0104c; 13'b0010011001111: data_out = 18'h3ef2c; 13'b0010011010000: data_out = 18'h00bf2; 13'b0010011010001: data_out = 18'h3ef50; 13'b0010011010010: data_out = 18'h0125c; 13'b0010011010011: data_out = 18'h3f6e2; 13'b0010011010100: data_out = 18'h3fbb6; 13'b0010011010101: data_out = 18'h00306; 13'b0010011010110: data_out = 18'h00172; 13'b0010011010111: data_out = 18'h016fa; 13'b0010011011000: data_out = 18'h3de1c; 13'b0010011011001: data_out = 18'h00f06; 13'b0010011011010: data_out = 18'h015ba; 13'b0010011011011: data_out = 18'h3dde6; 13'b0010011011100: data_out = 18'h3fa30; 13'b0010011011101: data_out = 18'h01ed8; 13'b0010011011110: data_out = 18'h3fc44; 13'b0010011011111: data_out = 18'h3f292; 13'b0010011100000: data_out = 18'h3f50c; 13'b0010011100001: data_out = 18'h02610; 13'b0010011100010: data_out = 18'h3f206; 13'b0010011100011: data_out = 18'h3ef66; 13'b0010011100100: data_out = 18'h0043a; 13'b0010011100101: data_out = 18'h01024; 13'b0010011100110: data_out = 18'h3f222; 13'b0010011100111: data_out = 18'h00994; 13'b0010011101000: data_out = 18'h3f12a; 13'b0010011101001: data_out = 18'h01624; 13'b0010011101010: data_out = 18'h3e0ba; 13'b0010011101011: data_out = 18'h00e72; 13'b0010011101100: data_out = 18'h3fcc8; 13'b0010011101101: data_out = 18'h0062e; 13'b0010011101110: data_out = 18'h00616; 13'b0010011101111: data_out = 18'h3dba4; 13'b0010011110000: data_out = 18'h02cce; 13'b0010011110001: data_out = 18'h3e7fe; 13'b0010011110010: data_out = 18'h3fba0; 13'b0010011110011: data_out = 18'h01d62; 13'b0010011110100: data_out = 18'h3eade; 13'b0010011110101: data_out = 18'h00820; 13'b0010011110110: data_out = 18'h3f5a2; 13'b0010011110111: data_out = 18'h3fac4; 13'b0010011111000: data_out = 18'h01cb8; 13'b0010011111001: data_out = 18'h3e906; 13'b0010011111010: data_out = 18'h3f940; 13'b0010011111011: data_out = 18'h00b64; 13'b0010011111100: data_out = 18'h00ac2; 13'b0010011111101: data_out = 18'h3e33c; 13'b0010011111110: data_out = 18'h00b10; 13'b0010011111111: data_out = 18'h01584; 13'b0010100000000: data_out = 18'h3f92e; 13'b0010100000001: data_out = 18'h3ffc8; 13'b0010100000010: data_out = 18'h3f382; 13'b0010100000011: data_out = 18'h006a8; 13'b0010100000100: data_out = 18'h0096c; 13'b0010100000101: data_out = 18'h3f23c; 13'b0010100000110: data_out = 18'h005f2; 13'b0010100000111: data_out = 18'h3f86c; 13'b0010100001000: data_out = 18'h008f0; 13'b0010100001001: data_out = 18'h00e4a; 13'b0010100001010: data_out = 18'h3e4ec; 13'b0010100001011: data_out = 18'h0019c; 13'b0010100001100: data_out = 18'h01230; 13'b0010100001101: data_out = 18'h3efe0; 13'b0010100001110: data_out = 18'h3f4f2; 13'b0010100001111: data_out = 18'h02600; 13'b0010100010000: data_out = 18'h3f004; 13'b0010100010001: data_out = 18'h000b6; 13'b0010100010010: data_out = 18'h3fe10; 13'b0010100010011: data_out = 18'h3f73a; 13'b0010100010100: data_out = 18'h002a4; 13'b0010100010101: data_out = 18'h00214; 13'b0010100010110: data_out = 18'h3f0be; 13'b0010100010111: data_out = 18'h01336; 13'b0010100011000: data_out = 18'h008a0; 13'b0010100011001: data_out = 18'h3dca8; 13'b0010100011010: data_out = 18'h00a62; 13'b0010100011011: data_out = 18'h01f9a; 13'b0010100011100: data_out = 18'h3e7b0; 13'b0010100011101: data_out = 18'h00358; 13'b0010100011110: data_out = 18'h3f976; 13'b0010100011111: data_out = 18'h012e6; 13'b0010100100000: data_out = 18'h3f0f4; 13'b0010100100001: data_out = 18'h00412; 13'b0010100100010: data_out = 18'h3f9c4; 13'b0010100100011: data_out = 18'h00b7e; 13'b0010100100100: data_out = 18'h3fe9c; 13'b0010100100101: data_out = 18'h3f232; 13'b0010100100110: data_out = 18'h01b70; 13'b0010100100111: data_out = 18'h3d96c; 13'b0010100101000: data_out = 18'h01ae0; 13'b0010100101001: data_out = 18'h3ece0; 13'b0010100101010: data_out = 18'h00e86; 13'b0010100101011: data_out = 18'h3fb30; 13'b0010100101100: data_out = 18'h00698; 13'b0010100101101: data_out = 18'h00086; 13'b0010100101110: data_out = 18'h3fce2; 13'b0010100101111: data_out = 18'h00eee; 13'b0010100110000: data_out = 18'h3eee4; 13'b0010100110001: data_out = 18'h00614; 13'b0010100110010: data_out = 18'h3fbe6; 13'b0010100110011: data_out = 18'h004f4; 13'b0010100110100: data_out = 18'h3f8bc; 13'b0010100110101: data_out = 18'h00a8c; 13'b0010100110110: data_out = 18'h3ebae; 13'b0010100110111: data_out = 18'h00ee2; 13'b0010100111000: data_out = 18'h3f760; 13'b0010100111001: data_out = 18'h011ac; 13'b0010100111010: data_out = 18'h3f556; 13'b0010100111011: data_out = 18'h3f3a0; 13'b0010100111100: data_out = 18'h0183e; 13'b0010100111101: data_out = 18'h3ef64; 13'b0010100111110: data_out = 18'h3f90a; 13'b0010100111111: data_out = 18'h02758; 13'b0010101000000: data_out = 18'h3d7c0; 13'b0010101000001: data_out = 18'h3fce6; 13'b0010101000010: data_out = 18'h01360; 13'b0010101000011: data_out = 18'h3f516; 13'b0010101000100: data_out = 18'h3fb58; 13'b0010101000101: data_out = 18'h00cbc; 13'b0010101000110: data_out = 18'h3eace; 13'b0010101000111: data_out = 18'h02486; 13'b0010101001000: data_out = 18'h3df74; 13'b0010101001001: data_out = 18'h01d12; 13'b0010101001010: data_out = 18'h3f24c; 13'b0010101001011: data_out = 18'h00baa; 13'b0010101001100: data_out = 18'h3ef8e; 13'b0010101001101: data_out = 18'h0074a; 13'b0010101001110: data_out = 18'h3f760; 13'b0010101001111: data_out = 18'h00322; 13'b0010101010000: data_out = 18'h00b72; 13'b0010101010001: data_out = 18'h3e54a; 13'b0010101010010: data_out = 18'h027e2; 13'b0010101010011: data_out = 18'h3df98; 13'b0010101010100: data_out = 18'h00b1e; 13'b0010101010101: data_out = 18'h006c2; 13'b0010101010110: data_out = 18'h3fd8a; 13'b0010101010111: data_out = 18'h3f1cc; 13'b0010101011000: data_out = 18'h00c44; 13'b0010101011001: data_out = 18'h3f374; 13'b0010101011010: data_out = 18'h008fa; 13'b0010101011011: data_out = 18'h00ac2; 13'b0010101011100: data_out = 18'h3f12a; 13'b0010101011101: data_out = 18'h00318; 13'b0010101011110: data_out = 18'h012e8; 13'b0010101011111: data_out = 18'h3e896; 13'b0010101100000: data_out = 18'h00622; 13'b0010101100001: data_out = 18'h3ffb0; 13'b0010101100010: data_out = 18'h000ec; 13'b0010101100011: data_out = 18'h3f816; 13'b0010101100100: data_out = 18'h00aa6; 13'b0010101100101: data_out = 18'h00296; 13'b0010101100110: data_out = 18'h3ffc6; 13'b0010101100111: data_out = 18'h3fb18; 13'b0010101101000: data_out = 18'h0015a; 13'b0010101101001: data_out = 18'h3f0a2; 13'b0010101101010: data_out = 18'h0120c; 13'b0010101101011: data_out = 18'h3fe02; 13'b0010101101100: data_out = 18'h3fce8; 13'b0010101101101: data_out = 18'h3ff7e; 13'b0010101101110: data_out = 18'h3f086; 13'b0010101101111: data_out = 18'h00dea; 13'b0010101110000: data_out = 18'h3fd4e; 13'b0010101110001: data_out = 18'h0043c; 13'b0010101110010: data_out = 18'h0082c; 13'b0010101110011: data_out = 18'h3edbc; 13'b0010101110100: data_out = 18'h016ec; 13'b0010101110101: data_out = 18'h3e9fc; 13'b0010101110110: data_out = 18'h00b42; 13'b0010101110111: data_out = 18'h00f42; 13'b0010101111000: data_out = 18'h3eb0e; 13'b0010101111001: data_out = 18'h3f7f0; 13'b0010101111010: data_out = 18'h0176e; 13'b0010101111011: data_out = 18'h3f002; 13'b0010101111100: data_out = 18'h01028; 13'b0010101111101: data_out = 18'h3f890; 13'b0010101111110: data_out = 18'h3fd4a; 13'b0010101111111: data_out = 18'h3f0e6; 13'b0010110000000: data_out = 18'h0168e; 13'b0010110000001: data_out = 18'h3fb80; 13'b0010110000010: data_out = 18'h3f13a; 13'b0010110000011: data_out = 18'h00b92; 13'b0010110000100: data_out = 18'h00a84; 13'b0010110000101: data_out = 18'h3f308; 13'b0010110000110: data_out = 18'h00638; 13'b0010110000111: data_out = 18'h3ef4e; 13'b0010110001000: data_out = 18'h019e6; 13'b0010110001001: data_out = 18'h3f40e; 13'b0010110001010: data_out = 18'h3ed00; 13'b0010110001011: data_out = 18'h0115e; 13'b0010110001100: data_out = 18'h002c0; 13'b0010110001101: data_out = 18'h3f5e2; 13'b0010110001110: data_out = 18'h00a68; 13'b0010110001111: data_out = 18'h006dc; 13'b0010110010000: data_out = 18'h002e0; 13'b0010110010001: data_out = 18'h3ed52; 13'b0010110010010: data_out = 18'h3fe74; 13'b0010110010011: data_out = 18'h011ac; 13'b0010110010100: data_out = 18'h3f994; 13'b0010110010101: data_out = 18'h3f5ee; 13'b0010110010110: data_out = 18'h3fe36; 13'b0010110010111: data_out = 18'h0016c; 13'b0010110011000: data_out = 18'h00db4; 13'b0010110011001: data_out = 18'h3f59e; 13'b0010110011010: data_out = 18'h3f3b6; 13'b0010110011011: data_out = 18'h01472; 13'b0010110011100: data_out = 18'h3f69c; 13'b0010110011101: data_out = 18'h0111e; 13'b0010110011110: data_out = 18'h3ee40; 13'b0010110011111: data_out = 18'h00b4e; 13'b0010110100000: data_out = 18'h3f556; 13'b0010110100001: data_out = 18'h0121c; 13'b0010110100010: data_out = 18'h3f0b2; 13'b0010110100011: data_out = 18'h3f986; 13'b0010110100100: data_out = 18'h01cb8; 13'b0010110100101: data_out = 18'h3ea50; 13'b0010110100110: data_out = 18'h3f964; 13'b0010110100111: data_out = 18'h0123e; 13'b0010110101000: data_out = 18'h3ee76; 13'b0010110101001: data_out = 18'h008c0; 13'b0010110101010: data_out = 18'h3f650; 13'b0010110101011: data_out = 18'h008ee; 13'b0010110101100: data_out = 18'h3e97e; 13'b0010110101101: data_out = 18'h02798; 13'b0010110101110: data_out = 18'h3e088; 13'b0010110101111: data_out = 18'h00f16; 13'b0010110110000: data_out = 18'h3f8dc; 13'b0010110110001: data_out = 18'h00664; 13'b0010110110010: data_out = 18'h3fe9e; 13'b0010110110011: data_out = 18'h00606; 13'b0010110110100: data_out = 18'h000c0; 13'b0010110110101: data_out = 18'h3ef1c; 13'b0010110110110: data_out = 18'h3faaa; 13'b0010110110111: data_out = 18'h02042; 13'b0010110111000: data_out = 18'h3ebbe; 13'b0010110111001: data_out = 18'h3f7a8; 13'b0010110111010: data_out = 18'h012c2; 13'b0010110111011: data_out = 18'h00d44; 13'b0010110111100: data_out = 18'h3ec34; 13'b0010110111101: data_out = 18'h3fb52; 13'b0010110111110: data_out = 18'h00ce0; 13'b0010110111111: data_out = 18'h001a4; 13'b0010111000000: data_out = 18'h3f9e2; 13'b0010111000001: data_out = 18'h3feb2; 13'b0010111000010: data_out = 18'h3eeb4; 13'b0010111000011: data_out = 18'h02280; 13'b0010111000100: data_out = 18'h3e184; 13'b0010111000101: data_out = 18'h002dc; 13'b0010111000110: data_out = 18'h00ee4; 13'b0010111000111: data_out = 18'h3ea72; 13'b0010111001000: data_out = 18'h00f74; 13'b0010111001001: data_out = 18'h0047c; 13'b0010111001010: data_out = 18'h3f7e0; 13'b0010111001011: data_out = 18'h004dc; 13'b0010111001100: data_out = 18'h3f90c; 13'b0010111001101: data_out = 18'h01060; 13'b0010111001110: data_out = 18'h3f33a; 13'b0010111001111: data_out = 18'h0140c; 13'b0010111010000: data_out = 18'h3e502; 13'b0010111010001: data_out = 18'h002ae; 13'b0010111010010: data_out = 18'h013cc; 13'b0010111010011: data_out = 18'h3e3ee; 13'b0010111010100: data_out = 18'h3fb86; 13'b0010111010101: data_out = 18'h018ca; 13'b0010111010110: data_out = 18'h3f9ce; 13'b0010111010111: data_out = 18'h3fcba; 13'b0010111011000: data_out = 18'h3fd5e; 13'b0010111011001: data_out = 18'h3f940; 13'b0010111011010: data_out = 18'h02006; 13'b0010111011011: data_out = 18'h3dea4; 13'b0010111011100: data_out = 18'h00e2e; 13'b0010111011101: data_out = 18'h3f55c; 13'b0010111011110: data_out = 18'h01664; 13'b0010111011111: data_out = 18'h3f480; 13'b0010111100000: data_out = 18'h00518; 13'b0010111100001: data_out = 18'h3f420; 13'b0010111100010: data_out = 18'h007b2; 13'b0010111100011: data_out = 18'h3f688; 13'b0010111100100: data_out = 18'h013a6; 13'b0010111100101: data_out = 18'h3f4f6; 13'b0010111100110: data_out = 18'h00ef2; 13'b0010111100111: data_out = 18'h3f242; 13'b0010111101000: data_out = 18'h00328; 13'b0010111101001: data_out = 18'h00418; 13'b0010111101010: data_out = 18'h3eeb0; 13'b0010111101011: data_out = 18'h0106e; 13'b0010111101100: data_out = 18'h3fc50; 13'b0010111101101: data_out = 18'h3fc9c; 13'b0010111101110: data_out = 18'h3f134; 13'b0010111101111: data_out = 18'h003bc; 13'b0010111110000: data_out = 18'h00eac; 13'b0010111110001: data_out = 18'h3f9c4; 13'b0010111110010: data_out = 18'h001d2; 13'b0010111110011: data_out = 18'h3eec2; 13'b0010111110100: data_out = 18'h00c64; 13'b0010111110101: data_out = 18'h3f804; 13'b0010111110110: data_out = 18'h02058; 13'b0010111110111: data_out = 18'h3dd9c; 13'b0010111111000: data_out = 18'h00bd4; 13'b0010111111001: data_out = 18'h01610; 13'b0010111111010: data_out = 18'h3dc0c; 13'b0010111111011: data_out = 18'h00e62; 13'b0010111111100: data_out = 18'h01a18; 13'b0010111111101: data_out = 18'h3e436; 13'b0010111111110: data_out = 18'h00158; 13'b0010111111111: data_out = 18'h3fe4e; 13'b0011000000000: data_out = 18'h00ba4; 13'b0011000000001: data_out = 18'h3ee2c; 13'b0011000000010: data_out = 18'h0089e; 13'b0011000000011: data_out = 18'h005b8; 13'b0011000000100: data_out = 18'h3fc20; 13'b0011000000101: data_out = 18'h0087e; 13'b0011000000110: data_out = 18'h3e932; 13'b0011000000111: data_out = 18'h0161a; 13'b0011000001000: data_out = 18'h0062a; 13'b0011000001001: data_out = 18'h3f3d4; 13'b0011000001010: data_out = 18'h3f62e; 13'b0011000001011: data_out = 18'h00e2c; 13'b0011000001100: data_out = 18'h3fab0; 13'b0011000001101: data_out = 18'h006b6; 13'b0011000001110: data_out = 18'h3ef52; 13'b0011000001111: data_out = 18'h00b0c; 13'b0011000010000: data_out = 18'h00318; 13'b0011000010001: data_out = 18'h3ef00; 13'b0011000010010: data_out = 18'h01442; 13'b0011000010011: data_out = 18'h004ca; 13'b0011000010100: data_out = 18'h3e644; 13'b0011000010101: data_out = 18'h00ac2; 13'b0011000010110: data_out = 18'h0028e; 13'b0011000010111: data_out = 18'h002ce; 13'b0011000011000: data_out = 18'h3fcca; 13'b0011000011001: data_out = 18'h3f8f8; 13'b0011000011010: data_out = 18'h00b92; 13'b0011000011011: data_out = 18'h3fd6e; 13'b0011000011100: data_out = 18'h3f152; 13'b0011000011101: data_out = 18'h0074e; 13'b0011000011110: data_out = 18'h004e8; 13'b0011000011111: data_out = 18'h3fa52; 13'b0011000100000: data_out = 18'h3fa0e; 13'b0011000100001: data_out = 18'h00768; 13'b0011000100010: data_out = 18'h3f5f6; 13'b0011000100011: data_out = 18'h02298; 13'b0011000100100: data_out = 18'h3e5e2; 13'b0011000100101: data_out = 18'h0078c; 13'b0011000100110: data_out = 18'h0035e; 13'b0011000100111: data_out = 18'h0025a; 13'b0011000101000: data_out = 18'h3f7f8; 13'b0011000101001: data_out = 18'h002b4; 13'b0011000101010: data_out = 18'h3f9e6; 13'b0011000101011: data_out = 18'h00b26; 13'b0011000101100: data_out = 18'h000f4; 13'b0011000101101: data_out = 18'h3f6ae; 13'b0011000101110: data_out = 18'h00098; 13'b0011000101111: data_out = 18'h012be; 13'b0011000110000: data_out = 18'h3dfa0; 13'b0011000110001: data_out = 18'h01ea8; 13'b0011000110010: data_out = 18'h3e308; 13'b0011000110011: data_out = 18'h3fcf6; 13'b0011000110100: data_out = 18'h01cd6; 13'b0011000110101: data_out = 18'h3f95c; 13'b0011000110110: data_out = 18'h3f33c; 13'b0011000110111: data_out = 18'h01466; 13'b0011000111000: data_out = 18'h3eb74; 13'b0011000111001: data_out = 18'h00424; 13'b0011000111010: data_out = 18'h01b2a; 13'b0011000111011: data_out = 18'h3d0d8; 13'b0011000111100: data_out = 18'h00a36; 13'b0011000111101: data_out = 18'h008ae; 13'b0011000111110: data_out = 18'h001b6; 13'b0011000111111: data_out = 18'h008e8; 13'b0011001000000: data_out = 18'h3fe9a; 13'b0011001000001: data_out = 18'h3ffb0; 13'b0011001000010: data_out = 18'h3f9c4; 13'b0011001000011: data_out = 18'h3f530; 13'b0011001000100: data_out = 18'h00e82; 13'b0011001000101: data_out = 18'h3fd3a; 13'b0011001000110: data_out = 18'h00024; 13'b0011001000111: data_out = 18'h3f602; 13'b0011001001000: data_out = 18'h0149e; 13'b0011001001001: data_out = 18'h3f0f4; 13'b0011001001010: data_out = 18'h3efe6; 13'b0011001001011: data_out = 18'h016ae; 13'b0011001001100: data_out = 18'h00564; 13'b0011001001101: data_out = 18'h3f8e8; 13'b0011001001110: data_out = 18'h3fe26; 13'b0011001001111: data_out = 18'h3f2ca; 13'b0011001010000: data_out = 18'h022f0; 13'b0011001010001: data_out = 18'h3e284; 13'b0011001010010: data_out = 18'h00628; 13'b0011001010011: data_out = 18'h006b6; 13'b0011001010100: data_out = 18'h00950; 13'b0011001010101: data_out = 18'h3e78c; 13'b0011001010110: data_out = 18'h00b96; 13'b0011001010111: data_out = 18'h3fd8c; 13'b0011001011000: data_out = 18'h0147e; 13'b0011001011001: data_out = 18'h3ddf0; 13'b0011001011010: data_out = 18'h0033c; 13'b0011001011011: data_out = 18'h028a0; 13'b0011001011100: data_out = 18'h3ed28; 13'b0011001011101: data_out = 18'h3e7ce; 13'b0011001011110: data_out = 18'h01a38; 13'b0011001011111: data_out = 18'h3ea96; 13'b0011001100000: data_out = 18'h002ec; 13'b0011001100001: data_out = 18'h0098c; 13'b0011001100010: data_out = 18'h3eb0a; 13'b0011001100011: data_out = 18'h02fc0; 13'b0011001100100: data_out = 18'h3e4e4; 13'b0011001100101: data_out = 18'h3efb4; 13'b0011001100110: data_out = 18'h3fc06; 13'b0011001100111: data_out = 18'h01ab2; 13'b0011001101000: data_out = 18'h000c6; 13'b0011001101001: data_out = 18'h3f55e; 13'b0011001101010: data_out = 18'h3feb4; 13'b0011001101011: data_out = 18'h00870; 13'b0011001101100: data_out = 18'h3f4ac; 13'b0011001101101: data_out = 18'h3fb86; 13'b0011001101110: data_out = 18'h0172a; 13'b0011001101111: data_out = 18'h3f444; 13'b0011001110000: data_out = 18'h0038a; 13'b0011001110001: data_out = 18'h3ecc4; 13'b0011001110010: data_out = 18'h00970; 13'b0011001110011: data_out = 18'h012dc; 13'b0011001110100: data_out = 18'h3f162; 13'b0011001110101: data_out = 18'h3ff46; 13'b0011001110110: data_out = 18'h3f852; 13'b0011001110111: data_out = 18'h00f26; 13'b0011001111000: data_out = 18'h3f940; 13'b0011001111001: data_out = 18'h3f67a; 13'b0011001111010: data_out = 18'h0126e; 13'b0011001111011: data_out = 18'h0082e; 13'b0011001111100: data_out = 18'h3da84; 13'b0011001111101: data_out = 18'h011d6; 13'b0011001111110: data_out = 18'h00d1e; 13'b0011001111111: data_out = 18'h3fbec; 13'b0011010000000: data_out = 18'h3f9d6; 13'b0011010000001: data_out = 18'h3f576; 13'b0011010000010: data_out = 18'h00b3e; 13'b0011010000011: data_out = 18'h3fe20; 13'b0011010000100: data_out = 18'h0095c; 13'b0011010000101: data_out = 18'h3f59e; 13'b0011010000110: data_out = 18'h00a2e; 13'b0011010000111: data_out = 18'h3f7c0; 13'b0011010001000: data_out = 18'h3f06a; 13'b0011010001001: data_out = 18'h00412; 13'b0011010001010: data_out = 18'h01970; 13'b0011010001011: data_out = 18'h3fd68; 13'b0011010001100: data_out = 18'h3f3d6; 13'b0011010001101: data_out = 18'h001ba; 13'b0011010001110: data_out = 18'h3f6da; 13'b0011010001111: data_out = 18'h005be; 13'b0011010010000: data_out = 18'h00864; 13'b0011010010001: data_out = 18'h3eaf6; 13'b0011010010010: data_out = 18'h019e4; 13'b0011010010011: data_out = 18'h3fcf2; 13'b0011010010100: data_out = 18'h3eaf0; 13'b0011010010101: data_out = 18'h017ca; 13'b0011010010110: data_out = 18'h002ee; 13'b0011010010111: data_out = 18'h3f55e; 13'b0011010011000: data_out = 18'h3f340; 13'b0011010011001: data_out = 18'h00e18; 13'b0011010011010: data_out = 18'h3fdb4; 13'b0011010011011: data_out = 18'h3fb24; 13'b0011010011100: data_out = 18'h00670; 13'b0011010011101: data_out = 18'h3ffae; 13'b0011010011110: data_out = 18'h3fe2a; 13'b0011010011111: data_out = 18'h3f7de; 13'b0011010100000: data_out = 18'h3f874; 13'b0011010100001: data_out = 18'h01470; 13'b0011010100010: data_out = 18'h00524; 13'b0011010100011: data_out = 18'h3f126; 13'b0011010100100: data_out = 18'h00210; 13'b0011010100101: data_out = 18'h3ef80; 13'b0011010100110: data_out = 18'h01f4e; 13'b0011010100111: data_out = 18'h3f6e0; 13'b0011010101000: data_out = 18'h3fa8a; 13'b0011010101001: data_out = 18'h3fe62; 13'b0011010101010: data_out = 18'h0115e; 13'b0011010101011: data_out = 18'h3eaee; 13'b0011010101100: data_out = 18'h00712; 13'b0011010101101: data_out = 18'h002c2; 13'b0011010101110: data_out = 18'h00a5a; 13'b0011010101111: data_out = 18'h3e7f6; 13'b0011010110000: data_out = 18'h01064; 13'b0011010110001: data_out = 18'h3fa46; 13'b0011010110010: data_out = 18'h0054e; 13'b0011010110011: data_out = 18'h3fcfc; 13'b0011010110100: data_out = 18'h3ecc6; 13'b0011010110101: data_out = 18'h01ab0; 13'b0011010110110: data_out = 18'h3fc50; 13'b0011010110111: data_out = 18'h000f8; 13'b0011010111000: data_out = 18'h3f668; 13'b0011010111001: data_out = 18'h3f922; 13'b0011010111010: data_out = 18'h00b88; 13'b0011010111011: data_out = 18'h3f9ae; 13'b0011010111100: data_out = 18'h001b4; 13'b0011010111101: data_out = 18'h0052c; 13'b0011010111110: data_out = 18'h3f8ee; 13'b0011010111111: data_out = 18'h001c0; 13'b0011011000000: data_out = 18'h00a48; 13'b0011011000001: data_out = 18'h3edfc; 13'b0011011000010: data_out = 18'h00b04; 13'b0011011000011: data_out = 18'h008f6; 13'b0011011000100: data_out = 18'h3ef3a; 13'b0011011000101: data_out = 18'h01474; 13'b0011011000110: data_out = 18'h3f550; 13'b0011011000111: data_out = 18'h3fad8; 13'b0011011001000: data_out = 18'h005fa; 13'b0011011001001: data_out = 18'h3fa54; 13'b0011011001010: data_out = 18'h3fe06; 13'b0011011001011: data_out = 18'h00278; 13'b0011011001100: data_out = 18'h00412; 13'b0011011001101: data_out = 18'h3f536; 13'b0011011001110: data_out = 18'h3ff72; 13'b0011011001111: data_out = 18'h01930; 13'b0011011010000: data_out = 18'h3ee40; 13'b0011011010001: data_out = 18'h3fea6; 13'b0011011010010: data_out = 18'h0076a; 13'b0011011010011: data_out = 18'h00596; 13'b0011011010100: data_out = 18'h3f8f8; 13'b0011011010101: data_out = 18'h3fc08; 13'b0011011010110: data_out = 18'h3fad4; 13'b0011011010111: data_out = 18'h00664; 13'b0011011011000: data_out = 18'h3fcdc; 13'b0011011011001: data_out = 18'h009c0; 13'b0011011011010: data_out = 18'h3fc3a; 13'b0011011011011: data_out = 18'h0029c; 13'b0011011011100: data_out = 18'h3edca; 13'b0011011011101: data_out = 18'h01b36; 13'b0011011011110: data_out = 18'h3f490; 13'b0011011011111: data_out = 18'h3fc96; 13'b0011011100000: data_out = 18'h0024e; 13'b0011011100001: data_out = 18'h3fd5e; 13'b0011011100010: data_out = 18'h00a28; 13'b0011011100011: data_out = 18'h3ed72; 13'b0011011100100: data_out = 18'h00904; 13'b0011011100101: data_out = 18'h00c26; 13'b0011011100110: data_out = 18'h3ee32; 13'b0011011100111: data_out = 18'h3fc7a; 13'b0011011101000: data_out = 18'h3fdc6; 13'b0011011101001: data_out = 18'h011d2; 13'b0011011101010: data_out = 18'h3f3a2; 13'b0011011101011: data_out = 18'h005f4; 13'b0011011101100: data_out = 18'h3f1a6; 13'b0011011101101: data_out = 18'h0125c; 13'b0011011101110: data_out = 18'h0039a; 13'b0011011101111: data_out = 18'h3fcde; 13'b0011011110000: data_out = 18'h3f0d2; 13'b0011011110001: data_out = 18'h00ee6; 13'b0011011110010: data_out = 18'h3fffa; 13'b0011011110011: data_out = 18'h004ca; 13'b0011011110100: data_out = 18'h3eadc; 13'b0011011110101: data_out = 18'h004c6; 13'b0011011110110: data_out = 18'h01c1c; 13'b0011011110111: data_out = 18'h3e812; 13'b0011011111000: data_out = 18'h3f8cc; 13'b0011011111001: data_out = 18'h00b7a; 13'b0011011111010: data_out = 18'h3fb7a; 13'b0011011111011: data_out = 18'h00b38; 13'b0011011111100: data_out = 18'h3f480; 13'b0011011111101: data_out = 18'h0031e; 13'b0011011111110: data_out = 18'h0054c; 13'b0011011111111: data_out = 18'h001a4; 13'b0011100000000: data_out = 18'h3f8aa; 13'b0011100000001: data_out = 18'h002e2; 13'b0011100000010: data_out = 18'h00c9c; 13'b0011100000011: data_out = 18'h3ef7a; 13'b0011100000100: data_out = 18'h0032a; 13'b0011100000101: data_out = 18'h3fdaa; 13'b0011100000110: data_out = 18'h0071c; 13'b0011100000111: data_out = 18'h3f694; 13'b0011100001000: data_out = 18'h00560; 13'b0011100001001: data_out = 18'h000bc; 13'b0011100001010: data_out = 18'h3f51c; 13'b0011100001011: data_out = 18'h00814; 13'b0011100001100: data_out = 18'h00736; 13'b0011100001101: data_out = 18'h3f1d4; 13'b0011100001110: data_out = 18'h01076; 13'b0011100001111: data_out = 18'h3fa4a; 13'b0011100010000: data_out = 18'h3f65c; 13'b0011100010001: data_out = 18'h00a34; 13'b0011100010010: data_out = 18'h3fab0; 13'b0011100010011: data_out = 18'h3f452; 13'b0011100010100: data_out = 18'h0113c; 13'b0011100010101: data_out = 18'h3f94a; 13'b0011100010110: data_out = 18'h3fa28; 13'b0011100010111: data_out = 18'h00268; 13'b0011100011000: data_out = 18'h003d8; 13'b0011100011001: data_out = 18'h3f5e4; 13'b0011100011010: data_out = 18'h00dc0; 13'b0011100011011: data_out = 18'h00b7e; 13'b0011100011100: data_out = 18'h3efc4; 13'b0011100011101: data_out = 18'h002b0; 13'b0011100011110: data_out = 18'h00d58; 13'b0011100011111: data_out = 18'h3edee; 13'b0011100100000: data_out = 18'h00f5c; 13'b0011100100001: data_out = 18'h3edf2; 13'b0011100100010: data_out = 18'h00e78; 13'b0011100100011: data_out = 18'h3f1d4; 13'b0011100100100: data_out = 18'h006ea; 13'b0011100100101: data_out = 18'h00042; 13'b0011100100110: data_out = 18'h0063a; 13'b0011100100111: data_out = 18'h3f9fe; 13'b0011100101000: data_out = 18'h3fc7c; 13'b0011100101001: data_out = 18'h00678; 13'b0011100101010: data_out = 18'h3fdbe; 13'b0011100101011: data_out = 18'h00508; 13'b0011100101100: data_out = 18'h0048a; 13'b0011100101101: data_out = 18'h3fc80; 13'b0011100101110: data_out = 18'h3fbd6; 13'b0011100101111: data_out = 18'h3fe06; 13'b0011100110000: data_out = 18'h3f116; 13'b0011100110001: data_out = 18'h01782; 13'b0011100110010: data_out = 18'h00368; 13'b0011100110011: data_out = 18'h3ed4c; 13'b0011100110100: data_out = 18'h00ade; 13'b0011100110101: data_out = 18'h3f0c6; 13'b0011100110110: data_out = 18'h004ba; 13'b0011100110111: data_out = 18'h005c6; 13'b0011100111000: data_out = 18'h0029e; 13'b0011100111001: data_out = 18'h3ff06; 13'b0011100111010: data_out = 18'h3fe6c; 13'b0011100111011: data_out = 18'h3f650; 13'b0011100111100: data_out = 18'h3ff30; 13'b0011100111101: data_out = 18'h01fac; 13'b0011100111110: data_out = 18'h3e1cc; 13'b0011100111111: data_out = 18'h005c8; 13'b0011101000000: data_out = 18'h3ff9e; 13'b0011101000001: data_out = 18'h3f5dc; 13'b0011101000010: data_out = 18'h00a6e; 13'b0011101000011: data_out = 18'h0097c; 13'b0011101000100: data_out = 18'h3f8ce; 13'b0011101000101: data_out = 18'h00cd6; 13'b0011101000110: data_out = 18'h3ee5e; 13'b0011101000111: data_out = 18'h3f6b4; 13'b0011101001000: data_out = 18'h02190; 13'b0011101001001: data_out = 18'h3f326; 13'b0011101001010: data_out = 18'h00754; 13'b0011101001011: data_out = 18'h3f4b4; 13'b0011101001100: data_out = 18'h3f6ee; 13'b0011101001101: data_out = 18'h00c4e; 13'b0011101001110: data_out = 18'h002de; 13'b0011101001111: data_out = 18'h3f4c8; 13'b0011101010000: data_out = 18'h0023c; 13'b0011101010001: data_out = 18'h0117e; 13'b0011101010010: data_out = 18'h3df64; 13'b0011101010011: data_out = 18'h0098c; 13'b0011101010100: data_out = 18'h003d0; 13'b0011101010101: data_out = 18'h00e84; 13'b0011101010110: data_out = 18'h3f6d4; 13'b0011101010111: data_out = 18'h3f940; 13'b0011101011000: data_out = 18'h3fd6a; 13'b0011101011001: data_out = 18'h0101e; 13'b0011101011010: data_out = 18'h3f6f2; 13'b0011101011011: data_out = 18'h008b0; 13'b0011101011100: data_out = 18'h3f8e8; 13'b0011101011101: data_out = 18'h3f4e4; 13'b0011101011110: data_out = 18'h0016a; 13'b0011101011111: data_out = 18'h0064e; 13'b0011101100000: data_out = 18'h002b2; 13'b0011101100001: data_out = 18'h009a8; 13'b0011101100010: data_out = 18'h3f6b2; 13'b0011101100011: data_out = 18'h3efee; 13'b0011101100100: data_out = 18'h01000; 13'b0011101100101: data_out = 18'h3fc5a; 13'b0011101100110: data_out = 18'h0088a; 13'b0011101100111: data_out = 18'h002b4; 13'b0011101101000: data_out = 18'h3f106; 13'b0011101101001: data_out = 18'h3fe70; 13'b0011101101010: data_out = 18'h00e60; 13'b0011101101011: data_out = 18'h3fb0a; 13'b0011101101100: data_out = 18'h00422; 13'b0011101101101: data_out = 18'h3fdb2; 13'b0011101101110: data_out = 18'h3f200; 13'b0011101101111: data_out = 18'h006c8; 13'b0011101110000: data_out = 18'h01132; 13'b0011101110001: data_out = 18'h3e824; 13'b0011101110010: data_out = 18'h01142; 13'b0011101110011: data_out = 18'h3fa2e; 13'b0011101110100: data_out = 18'h3fce4; 13'b0011101110101: data_out = 18'h00592; 13'b0011101110110: data_out = 18'h000a0; 13'b0011101110111: data_out = 18'h005c6; 13'b0011101111000: data_out = 18'h3fb86; 13'b0011101111001: data_out = 18'h3ec24; 13'b0011101111010: data_out = 18'h00fc0; 13'b0011101111011: data_out = 18'h00566; 13'b0011101111100: data_out = 18'h3eaa0; 13'b0011101111101: data_out = 18'h014fa; 13'b0011101111110: data_out = 18'h3f6a8; 13'b0011101111111: data_out = 18'h3fab0; 13'b0011110000000: data_out = 18'h008c6; 13'b0011110000001: data_out = 18'h3f752; 13'b0011110000010: data_out = 18'h0093a; 13'b0011110000011: data_out = 18'h000a2; 13'b0011110000100: data_out = 18'h00680; 13'b0011110000101: data_out = 18'h3eb48; 13'b0011110000110: data_out = 18'h01718; 13'b0011110000111: data_out = 18'h3f29e; 13'b0011110001000: data_out = 18'h3f744; 13'b0011110001001: data_out = 18'h016e4; 13'b0011110001010: data_out = 18'h3f554; 13'b0011110001011: data_out = 18'h3f5d6; 13'b0011110001100: data_out = 18'h01642; 13'b0011110001101: data_out = 18'h3e932; 13'b0011110001110: data_out = 18'h010f6; 13'b0011110001111: data_out = 18'h3fe74; 13'b0011110010000: data_out = 18'h3f73c; 13'b0011110010001: data_out = 18'h3fe28; 13'b0011110010010: data_out = 18'h01092; 13'b0011110010011: data_out = 18'h3f7e4; 13'b0011110010100: data_out = 18'h007d2; 13'b0011110010101: data_out = 18'h3e6ba; 13'b0011110010110: data_out = 18'h01a24; 13'b0011110010111: data_out = 18'h3fd46; 13'b0011110011000: data_out = 18'h3e8ca; 13'b0011110011001: data_out = 18'h01734; 13'b0011110011010: data_out = 18'h3f8d6; 13'b0011110011011: data_out = 18'h3f390; 13'b0011110011100: data_out = 18'h00934; 13'b0011110011101: data_out = 18'h0097c; 13'b0011110011110: data_out = 18'h3fae6; 13'b0011110011111: data_out = 18'h001fe; 13'b0011110100000: data_out = 18'h3fc72; 13'b0011110100001: data_out = 18'h3f5a6; 13'b0011110100010: data_out = 18'h00998; 13'b0011110100011: data_out = 18'h007ec; 13'b0011110100100: data_out = 18'h3ec0c; 13'b0011110100101: data_out = 18'h007a4; 13'b0011110100110: data_out = 18'h002ee; 13'b0011110100111: data_out = 18'h3fd36; 13'b0011110101000: data_out = 18'h3ff5c; 13'b0011110101001: data_out = 18'h00c20; 13'b0011110101010: data_out = 18'h3fd26; 13'b0011110101011: data_out = 18'h3eacc; 13'b0011110101100: data_out = 18'h00df0; 13'b0011110101101: data_out = 18'h00396; 13'b0011110101110: data_out = 18'h3feb6; 13'b0011110101111: data_out = 18'h3fece; 13'b0011110110000: data_out = 18'h3ff68; 13'b0011110110001: data_out = 18'h00312; 13'b0011110110010: data_out = 18'h3f890; 13'b0011110110011: data_out = 18'h00880; 13'b0011110110100: data_out = 18'h3ffcc; 13'b0011110110101: data_out = 18'h00226; 13'b0011110110110: data_out = 18'h00b24; 13'b0011110110111: data_out = 18'h3dc2a; 13'b0011110111000: data_out = 18'h00850; 13'b0011110111001: data_out = 18'h00f66; 13'b0011110111010: data_out = 18'h00914; 13'b0011110111011: data_out = 18'h3ffa8; 13'b0011110111100: data_out = 18'h3fa56; 13'b0011110111101: data_out = 18'h00098; 13'b0011110111110: data_out = 18'h3f140; 13'b0011110111111: data_out = 18'h00608; 13'b0011111000000: data_out = 18'h003fe; 13'b0011111000001: data_out = 18'h007b2; 13'b0011111000010: data_out = 18'h3f1d0; 13'b0011111000011: data_out = 18'h00128; 13'b0011111000100: data_out = 18'h3fd5e; 13'b0011111000101: data_out = 18'h00ace; 13'b0011111000110: data_out = 18'h00088; 13'b0011111000111: data_out = 18'h3fb88; 13'b0011111001000: data_out = 18'h3f512; 13'b0011111001001: data_out = 18'h01526; 13'b0011111001010: data_out = 18'h3e6dc; 13'b0011111001011: data_out = 18'h00a62; 13'b0011111001100: data_out = 18'h008d8; 13'b0011111001101: data_out = 18'h3f726; 13'b0011111001110: data_out = 18'h3fa28; 13'b0011111001111: data_out = 18'h00bc6; 13'b0011111010000: data_out = 18'h3f8f6; 13'b0011111010001: data_out = 18'h0055a; 13'b0011111010010: data_out = 18'h005a6; 13'b0011111010011: data_out = 18'h3fada; 13'b0011111010100: data_out = 18'h3f82a; 13'b0011111010101: data_out = 18'h0026a; 13'b0011111010110: data_out = 18'h012e4; 13'b0011111010111: data_out = 18'h3ea98; 13'b0011111011000: data_out = 18'h01240; 13'b0011111011001: data_out = 18'h3f60a; 13'b0011111011010: data_out = 18'h3ffe8; 13'b0011111011011: data_out = 18'h3f77c; 13'b0011111011100: data_out = 18'h3fbbe; 13'b0011111011101: data_out = 18'h01c94; 13'b0011111011110: data_out = 18'h3ef98; 13'b0011111011111: data_out = 18'h001ec; 13'b0011111100000: data_out = 18'h3f7a6; 13'b0011111100001: data_out = 18'h3f6e0; 13'b0011111100010: data_out = 18'h01470; 13'b0011111100011: data_out = 18'h3f836; 13'b0011111100100: data_out = 18'h005a6; 13'b0011111100101: data_out = 18'h00908; 13'b0011111100110: data_out = 18'h3e848; 13'b0011111100111: data_out = 18'h3f830; 13'b0011111101000: data_out = 18'h02394; 13'b0011111101001: data_out = 18'h3ef60; 13'b0011111101010: data_out = 18'h3fe96; 13'b0011111101011: data_out = 18'h3fd6c; 13'b0011111101100: data_out = 18'h0060c; 13'b0011111101101: data_out = 18'h3f74a; 13'b0011111101110: data_out = 18'h00c5c; 13'b0011111101111: data_out = 18'h3fc4a; 13'b0011111110000: data_out = 18'h3fe08; 13'b0011111110001: data_out = 18'h3fa30; 13'b0011111110010: data_out = 18'h00222; 13'b0011111110011: data_out = 18'h3ffac; 13'b0011111110100: data_out = 18'h010e8; 13'b0011111110101: data_out = 18'h3f75a; 13'b0011111110110: data_out = 18'h3ffbe; 13'b0011111110111: data_out = 18'h3f4fa; 13'b0011111111000: data_out = 18'h3feca; 13'b0011111111001: data_out = 18'h00d8c; 13'b0011111111010: data_out = 18'h00436; 13'b0011111111011: data_out = 18'h3ea34; 13'b0011111111100: data_out = 18'h018b2; 13'b0011111111101: data_out = 18'h3e81a; 13'b0011111111110: data_out = 18'h00da4; 13'b0011111111111: data_out = 18'h0086c; 13'b0100000000000: data_out = 18'h3f4d6; 13'b0100000000001: data_out = 18'h009e4; 13'b0100000000010: data_out = 18'h3f78a; 13'b0100000000011: data_out = 18'h3f03e; 13'b0100000000100: data_out = 18'h00eb4; 13'b0100000000101: data_out = 18'h00a42; 13'b0100000000110: data_out = 18'h3f5c4; 13'b0100000000111: data_out = 18'h3fdd0; 13'b0100000001000: data_out = 18'h0046e; 13'b0100000001001: data_out = 18'h0039a; 13'b0100000001010: data_out = 18'h3ed6e; 13'b0100000001011: data_out = 18'h00b2e; 13'b0100000001100: data_out = 18'h0040e; 13'b0100000001101: data_out = 18'h3f78c; 13'b0100000001110: data_out = 18'h3f934; 13'b0100000001111: data_out = 18'h00824; 13'b0100000010000: data_out = 18'h004ba; 13'b0100000010001: data_out = 18'h00238; 13'b0100000010010: data_out = 18'h3fb80; 13'b0100000010011: data_out = 18'h3fd68; 13'b0100000010100: data_out = 18'h00bb8; 13'b0100000010101: data_out = 18'h3fa4e; 13'b0100000010110: data_out = 18'h00348; 13'b0100000010111: data_out = 18'h3f15c; 13'b0100000011000: data_out = 18'h011ce; 13'b0100000011001: data_out = 18'h3f424; 13'b0100000011010: data_out = 18'h00036; 13'b0100000011011: data_out = 18'h00c28; 13'b0100000011100: data_out = 18'h3fca4; 13'b0100000011101: data_out = 18'h3f9de; 13'b0100000011110: data_out = 18'h00032; 13'b0100000011111: data_out = 18'h00422; 13'b0100000100000: data_out = 18'h3fdb8; 13'b0100000100001: data_out = 18'h003f4; 13'b0100000100010: data_out = 18'h3f62a; 13'b0100000100011: data_out = 18'h00888; 13'b0100000100100: data_out = 18'h002b4; 13'b0100000100101: data_out = 18'h00b44; 13'b0100000100110: data_out = 18'h3e2ec; 13'b0100000100111: data_out = 18'h00d76; 13'b0100000101000: data_out = 18'h3ff12; 13'b0100000101001: data_out = 18'h00316; 13'b0100000101010: data_out = 18'h3ed12; 13'b0100000101011: data_out = 18'h0118c; 13'b0100000101100: data_out = 18'h3fe52; 13'b0100000101101: data_out = 18'h3feb4; 13'b0100000101110: data_out = 18'h003f2; 13'b0100000101111: data_out = 18'h3fa72; 13'b0100000110000: data_out = 18'h3ff26; 13'b0100000110001: data_out = 18'h010c4; 13'b0100000110010: data_out = 18'h3f13e; 13'b0100000110011: data_out = 18'h3fc1e; 13'b0100000110100: data_out = 18'h3ff72; 13'b0100000110101: data_out = 18'h3ff6e; 13'b0100000110110: data_out = 18'h3f62e; 13'b0100000110111: data_out = 18'h01344; 13'b0100000111000: data_out = 18'h3fd50; 13'b0100000111001: data_out = 18'h3fe7c; 13'b0100000111010: data_out = 18'h3fc8c; 13'b0100000111011: data_out = 18'h001c0; 13'b0100000111100: data_out = 18'h3fb54; 13'b0100000111101: data_out = 18'h002b0; 13'b0100000111110: data_out = 18'h0097a; 13'b0100000111111: data_out = 18'h3fcb8; 13'b0100001000000: data_out = 18'h00158; 13'b0100001000001: data_out = 18'h3fbaa; 13'b0100001000010: data_out = 18'h00428; 13'b0100001000011: data_out = 18'h00942; 13'b0100001000100: data_out = 18'h3fd6a; 13'b0100001000101: data_out = 18'h3e986; 13'b0100001000110: data_out = 18'h00b8e; 13'b0100001000111: data_out = 18'h00b82; 13'b0100001001000: data_out = 18'h3fcd0; 13'b0100001001001: data_out = 18'h3ee60; 13'b0100001001010: data_out = 18'h015d4; 13'b0100001001011: data_out = 18'h3faf6; 13'b0100001001100: data_out = 18'h3f12c; 13'b0100001001101: data_out = 18'h00a10; 13'b0100001001110: data_out = 18'h00944; 13'b0100001001111: data_out = 18'h3f7e8; 13'b0100001010000: data_out = 18'h3f8dc; 13'b0100001010001: data_out = 18'h00b36; 13'b0100001010010: data_out = 18'h3e502; 13'b0100001010011: data_out = 18'h01bbc; 13'b0100001010100: data_out = 18'h3fada; 13'b0100001010101: data_out = 18'h3fb68; 13'b0100001010110: data_out = 18'h000c6; 13'b0100001010111: data_out = 18'h3fe84; 13'b0100001011000: data_out = 18'h3fda4; 13'b0100001011001: data_out = 18'h3f652; 13'b0100001011010: data_out = 18'h015e8; 13'b0100001011011: data_out = 18'h3f5aa; 13'b0100001011100: data_out = 18'h0092a; 13'b0100001011101: data_out = 18'h3ef5e; 13'b0100001011110: data_out = 18'h00de6; 13'b0100001011111: data_out = 18'h00084; 13'b0100001100000: data_out = 18'h000c0; 13'b0100001100001: data_out = 18'h3f71e; 13'b0100001100010: data_out = 18'h00054; 13'b0100001100011: data_out = 18'h00816; 13'b0100001100100: data_out = 18'h3fe34; 13'b0100001100101: data_out = 18'h3f250; 13'b0100001100110: data_out = 18'h003b8; 13'b0100001100111: data_out = 18'h01b38; 13'b0100001101000: data_out = 18'h3ea6a; 13'b0100001101001: data_out = 18'h3fbb8; 13'b0100001101010: data_out = 18'h0069e; 13'b0100001101011: data_out = 18'h01068; 13'b0100001101100: data_out = 18'h3ed36; 13'b0100001101101: data_out = 18'h00abe; 13'b0100001101110: data_out = 18'h3fe0e; 13'b0100001101111: data_out = 18'h3ee5a; 13'b0100001110000: data_out = 18'h016b6; 13'b0100001110001: data_out = 18'h3fcac; 13'b0100001110010: data_out = 18'h3f6c6; 13'b0100001110011: data_out = 18'h0003a; 13'b0100001110100: data_out = 18'h00100; 13'b0100001110101: data_out = 18'h3fc4c; 13'b0100001110110: data_out = 18'h008b4; 13'b0100001110111: data_out = 18'h3f262; 13'b0100001111000: data_out = 18'h00a2c; 13'b0100001111001: data_out = 18'h00200; 13'b0100001111010: data_out = 18'h3f92a; 13'b0100001111011: data_out = 18'h3fcba; 13'b0100001111100: data_out = 18'h3ff62; 13'b0100001111101: data_out = 18'h00b16; 13'b0100001111110: data_out = 18'h00392; 13'b0100001111111: data_out = 18'h3e924; 13'b0100010000000: data_out = 18'h0103a; 13'b0100010000001: data_out = 18'h3f6d0; 13'b0100010000010: data_out = 18'h00144; 13'b0100010000011: data_out = 18'h00808; 13'b0100010000100: data_out = 18'h004b6; 13'b0100010000101: data_out = 18'h3f77e; 13'b0100010000110: data_out = 18'h3f758; 13'b0100010000111: data_out = 18'h009c8; 13'b0100010001000: data_out = 18'h000ec; 13'b0100010001001: data_out = 18'h00b54; 13'b0100010001010: data_out = 18'h3f770; 13'b0100010001011: data_out = 18'h3fe7e; 13'b0100010001100: data_out = 18'h000a4; 13'b0100010001101: data_out = 18'h00706; 13'b0100010001110: data_out = 18'h3fa80; 13'b0100010001111: data_out = 18'h3f960; 13'b0100010010000: data_out = 18'h0117e; 13'b0100010010001: data_out = 18'h3f9e8; 13'b0100010010010: data_out = 18'h3ef70; 13'b0100010010011: data_out = 18'h00c1a; 13'b0100010010100: data_out = 18'h3eec0; 13'b0100010010101: data_out = 18'h0217a; 13'b0100010010110: data_out = 18'h3e754; 13'b0100010010111: data_out = 18'h007c2; 13'b0100010011000: data_out = 18'h3f9c0; 13'b0100010011001: data_out = 18'h00fc0; 13'b0100010011010: data_out = 18'h3fb66; 13'b0100010011011: data_out = 18'h3fa0a; 13'b0100010011100: data_out = 18'h3f42a; 13'b0100010011101: data_out = 18'h01454; 13'b0100010011110: data_out = 18'h3ed4a; 13'b0100010011111: data_out = 18'h3fd08; 13'b0100010100000: data_out = 18'h00964; 13'b0100010100001: data_out = 18'h3f61a; 13'b0100010100010: data_out = 18'h00e22; 13'b0100010100011: data_out = 18'h00288; 13'b0100010100100: data_out = 18'h3efec; 13'b0100010100101: data_out = 18'h0112c; 13'b0100010100110: data_out = 18'h3f726; 13'b0100010100111: data_out = 18'h3f93e; 13'b0100010101000: data_out = 18'h012ea; 13'b0100010101001: data_out = 18'h3ef1e; 13'b0100010101010: data_out = 18'h0094a; 13'b0100010101011: data_out = 18'h3fb0c; 13'b0100010101100: data_out = 18'h00cb0; 13'b0100010101101: data_out = 18'h3f742; 13'b0100010101110: data_out = 18'h3f796; 13'b0100010101111: data_out = 18'h00884; 13'b0100010110000: data_out = 18'h0063a; 13'b0100010110001: data_out = 18'h3fb62; 13'b0100010110010: data_out = 18'h3fe3e; 13'b0100010110011: data_out = 18'h0093e; 13'b0100010110100: data_out = 18'h3fd1e; 13'b0100010110101: data_out = 18'h3fac8; 13'b0100010110110: data_out = 18'h0030e; 13'b0100010110111: data_out = 18'h3fcb2; 13'b0100010111000: data_out = 18'h00590; 13'b0100010111001: data_out = 18'h3fc10; 13'b0100010111010: data_out = 18'h3fe96; 13'b0100010111011: data_out = 18'h00328; 13'b0100010111100: data_out = 18'h3f616; 13'b0100010111101: data_out = 18'h3fecc; 13'b0100010111110: data_out = 18'h3fd7e; 13'b0100010111111: data_out = 18'h018fa; 13'b0100011000000: data_out = 18'h3ea1e; 13'b0100011000001: data_out = 18'h3fc38; 13'b0100011000010: data_out = 18'h01058; 13'b0100011000011: data_out = 18'h3f56a; 13'b0100011000100: data_out = 18'h00a54; 13'b0100011000101: data_out = 18'h3f202; 13'b0100011000110: data_out = 18'h01026; 13'b0100011000111: data_out = 18'h3f088; 13'b0100011001000: data_out = 18'h00c58; 13'b0100011001001: data_out = 18'h3f088; 13'b0100011001010: data_out = 18'h00ab8; 13'b0100011001011: data_out = 18'h3fa46; 13'b0100011001100: data_out = 18'h00976; 13'b0100011001101: data_out = 18'h3f60a; 13'b0100011001110: data_out = 18'h3f8de; 13'b0100011001111: data_out = 18'h01bce; 13'b0100011010000: data_out = 18'h3f494; 13'b0100011010001: data_out = 18'h3efd4; 13'b0100011010010: data_out = 18'h00f76; 13'b0100011010011: data_out = 18'h3f7f6; 13'b0100011010100: data_out = 18'h3fe32; 13'b0100011010101: data_out = 18'h019e6; 13'b0100011010110: data_out = 18'h3eb2a; 13'b0100011010111: data_out = 18'h0075c; 13'b0100011011000: data_out = 18'h3f65c; 13'b0100011011001: data_out = 18'h00d46; 13'b0100011011010: data_out = 18'h3f71c; 13'b0100011011011: data_out = 18'h3fa5c; 13'b0100011011100: data_out = 18'h01582; 13'b0100011011101: data_out = 18'h3f018; 13'b0100011011110: data_out = 18'h3f152; 13'b0100011011111: data_out = 18'h01a7a; 13'b0100011100000: data_out = 18'h3fba4; 13'b0100011100001: data_out = 18'h3f02a; 13'b0100011100010: data_out = 18'h00d2c; 13'b0100011100011: data_out = 18'h000cc; 13'b0100011100100: data_out = 18'h3fce8; 13'b0100011100101: data_out = 18'h3fc44; 13'b0100011100110: data_out = 18'h3fe9a; 13'b0100011100111: data_out = 18'h3ff58; 13'b0100011101000: data_out = 18'h005e0; 13'b0100011101001: data_out = 18'h3f6e6; 13'b0100011101010: data_out = 18'h3f262; 13'b0100011101011: data_out = 18'h01fd6; 13'b0100011101100: data_out = 18'h3fc36; 13'b0100011101101: data_out = 18'h3e4f6; 13'b0100011101110: data_out = 18'h01104; 13'b0100011101111: data_out = 18'h00d62; 13'b0100011110000: data_out = 18'h3ed14; 13'b0100011110001: data_out = 18'h00a70; 13'b0100011110010: data_out = 18'h3fb3a; 13'b0100011110011: data_out = 18'h00998; 13'b0100011110100: data_out = 18'h00080; 13'b0100011110101: data_out = 18'h3fab4; 13'b0100011110110: data_out = 18'h3f0fa; 13'b0100011110111: data_out = 18'h00d8c; 13'b0100011111000: data_out = 18'h005c0; 13'b0100011111001: data_out = 18'h3ff06; 13'b0100011111010: data_out = 18'h3f916; 13'b0100011111011: data_out = 18'h3fd22; 13'b0100011111100: data_out = 18'h0101e; 13'b0100011111101: data_out = 18'h3e6f2; 13'b0100011111110: data_out = 18'h00476; 13'b0100011111111: data_out = 18'h0160c; 13'b0100100000000: data_out = 18'h3f408; 13'b0100100000001: data_out = 18'h3f40e; 13'b0100100000010: data_out = 18'h01264; 13'b0100100000011: data_out = 18'h3f22c; 13'b0100100000100: data_out = 18'h005fe; 13'b0100100000101: data_out = 18'h004c8; 13'b0100100000110: data_out = 18'h3f0f4; 13'b0100100000111: data_out = 18'h01566; 13'b0100100001000: data_out = 18'h3f414; 13'b0100100001001: data_out = 18'h3f534; 13'b0100100001010: data_out = 18'h0069a; 13'b0100100001011: data_out = 18'h0067a; 13'b0100100001100: data_out = 18'h3fd9e; 13'b0100100001101: data_out = 18'h3ff7e; 13'b0100100001110: data_out = 18'h003d6; 13'b0100100001111: data_out = 18'h3fca6; 13'b0100100010000: data_out = 18'h3fe2a; 13'b0100100010001: data_out = 18'h3fbb4; 13'b0100100010010: data_out = 18'h009f6; 13'b0100100010011: data_out = 18'h003ca; 13'b0100100010100: data_out = 18'h3f0f8; 13'b0100100010101: data_out = 18'h0072e; 13'b0100100010110: data_out = 18'h008c0; 13'b0100100010111: data_out = 18'h3f23a; 13'b0100100011000: data_out = 18'h009a0; 13'b0100100011001: data_out = 18'h3fea4; 13'b0100100011010: data_out = 18'h000c6; 13'b0100100011011: data_out = 18'h00466; 13'b0100100011100: data_out = 18'h3f90a; 13'b0100100011101: data_out = 18'h3f4a4; 13'b0100100011110: data_out = 18'h017c4; 13'b0100100011111: data_out = 18'h3f8cc; 13'b0100100100000: data_out = 18'h3f028; 13'b0100100100001: data_out = 18'h010b6; 13'b0100100100010: data_out = 18'h3f6e0; 13'b0100100100011: data_out = 18'h3fdbe; 13'b0100100100100: data_out = 18'h00a26; 13'b0100100100101: data_out = 18'h3feca; 13'b0100100100110: data_out = 18'h3fbd4; 13'b0100100100111: data_out = 18'h3fdf4; 13'b0100100101000: data_out = 18'h3feba; 13'b0100100101001: data_out = 18'h00312; 13'b0100100101010: data_out = 18'h3feea; 13'b0100100101011: data_out = 18'h00018; 13'b0100100101100: data_out = 18'h3feb8; 13'b0100100101101: data_out = 18'h3ef52; 13'b0100100101110: data_out = 18'h01a08; 13'b0100100101111: data_out = 18'h3fba2; 13'b0100100110000: data_out = 18'h3f770; 13'b0100100110001: data_out = 18'h005b8; 13'b0100100110010: data_out = 18'h000c4; 13'b0100100110011: data_out = 18'h3fe7e; 13'b0100100110100: data_out = 18'h3fe4a; 13'b0100100110101: data_out = 18'h00420; 13'b0100100110110: data_out = 18'h00646; 13'b0100100110111: data_out = 18'h3f7c2; 13'b0100100111000: data_out = 18'h008ea; 13'b0100100111001: data_out = 18'h3ea74; 13'b0100100111010: data_out = 18'h0100c; 13'b0100100111011: data_out = 18'h001d8; 13'b0100100111100: data_out = 18'h3f412; 13'b0100100111101: data_out = 18'h00c5a; 13'b0100100111110: data_out = 18'h000ae; 13'b0100100111111: data_out = 18'h3efde; 13'b0100101000000: data_out = 18'h00984; 13'b0100101000001: data_out = 18'h00908; 13'b0100101000010: data_out = 18'h0014a; 13'b0100101000011: data_out = 18'h3ede0; 13'b0100101000100: data_out = 18'h00e2e; 13'b0100101000101: data_out = 18'h3fc74; 13'b0100101000110: data_out = 18'h3fb34; 13'b0100101000111: data_out = 18'h00584; 13'b0100101001000: data_out = 18'h3fe7a; 13'b0100101001001: data_out = 18'h002ec; 13'b0100101001010: data_out = 18'h3f204; 13'b0100101001011: data_out = 18'h009ca; 13'b0100101001100: data_out = 18'h002fe; 13'b0100101001101: data_out = 18'h3ff74; 13'b0100101001110: data_out = 18'h3fdc0; 13'b0100101001111: data_out = 18'h3ff0e; 13'b0100101010000: data_out = 18'h3fff2; 13'b0100101010001: data_out = 18'h3fea8; 13'b0100101010010: data_out = 18'h3fe84; 13'b0100101010011: data_out = 18'h00334; 13'b0100101010100: data_out = 18'h00e68; 13'b0100101010101: data_out = 18'h3e6e2; 13'b0100101010110: data_out = 18'h001f4; 13'b0100101010111: data_out = 18'h00d38; 13'b0100101011000: data_out = 18'h3fdce; 13'b0100101011001: data_out = 18'h0077c; 13'b0100101011010: data_out = 18'h3ed62; 13'b0100101011011: data_out = 18'h006b2; 13'b0100101011100: data_out = 18'h3fcc2; 13'b0100101011101: data_out = 18'h00468; 13'b0100101011110: data_out = 18'h00568; 13'b0100101011111: data_out = 18'h009aa; 13'b0100101100000: data_out = 18'h3f3ca; 13'b0100101100001: data_out = 18'h3fa5c; 13'b0100101100010: data_out = 18'h000b6; 13'b0100101100011: data_out = 18'h00156; 13'b0100101100100: data_out = 18'h00e68; 13'b0100101100101: data_out = 18'h3f956; 13'b0100101100110: data_out = 18'h3ef9c; 13'b0100101100111: data_out = 18'h006d2; 13'b0100101101000: data_out = 18'h0097c; 13'b0100101101001: data_out = 18'h3f846; 13'b0100101101010: data_out = 18'h005e0; 13'b0100101101011: data_out = 18'h3fba0; 13'b0100101101100: data_out = 18'h3fddc; 13'b0100101101101: data_out = 18'h3ff6a; 13'b0100101101110: data_out = 18'h3fdc2; 13'b0100101101111: data_out = 18'h011d6; 13'b0100101110000: data_out = 18'h3f89a; 13'b0100101110001: data_out = 18'h3fa58; 13'b0100101110010: data_out = 18'h3fc18; 13'b0100101110011: data_out = 18'h0039c; 13'b0100101110100: data_out = 18'h000ec; 13'b0100101110101: data_out = 18'h000ba; 13'b0100101110110: data_out = 18'h3ff3e; 13'b0100101110111: data_out = 18'h3ffa4; 13'b0100101111000: data_out = 18'h3fc40; 13'b0100101111001: data_out = 18'h00420; 13'b0100101111010: data_out = 18'h001bc; 13'b0100101111011: data_out = 18'h3ff84; 13'b0100101111100: data_out = 18'h00a66; 13'b0100101111101: data_out = 18'h3e68a; 13'b0100101111110: data_out = 18'h00f4c; 13'b0100101111111: data_out = 18'h00676; 13'b0100110000000: data_out = 18'h3f836; 13'b0100110000001: data_out = 18'h0010a; 13'b0100110000010: data_out = 18'h0040c; 13'b0100110000011: data_out = 18'h3fec0; 13'b0100110000100: data_out = 18'h3f4a4; 13'b0100110000101: data_out = 18'h00488; 13'b0100110000110: data_out = 18'h004da; 13'b0100110000111: data_out = 18'h008fe; 13'b0100110001000: data_out = 18'h3e3a0; 13'b0100110001001: data_out = 18'h00ce4; 13'b0100110001010: data_out = 18'h01556; 13'b0100110001011: data_out = 18'h3ee14; 13'b0100110001100: data_out = 18'h009bc; 13'b0100110001101: data_out = 18'h3f72a; 13'b0100110001110: data_out = 18'h00358; 13'b0100110001111: data_out = 18'h3fc6a; 13'b0100110010000: data_out = 18'h3fd60; 13'b0100110010001: data_out = 18'h00424; 13'b0100110010010: data_out = 18'h001d6; 13'b0100110010011: data_out = 18'h000be; 13'b0100110010100: data_out = 18'h3ec68; 13'b0100110010101: data_out = 18'h010fc; 13'b0100110010110: data_out = 18'h00594; 13'b0100110010111: data_out = 18'h3fb3e; 13'b0100110011000: data_out = 18'h3f606; 13'b0100110011001: data_out = 18'h005a6; 13'b0100110011010: data_out = 18'h00116; 13'b0100110011011: data_out = 18'h3ffd8; 13'b0100110011100: data_out = 18'h00092; 13'b0100110011101: data_out = 18'h00bec; 13'b0100110011110: data_out = 18'h3ee9c; 13'b0100110011111: data_out = 18'h005ee; 13'b0100110100000: data_out = 18'h3ff4c; 13'b0100110100001: data_out = 18'h3fff0; 13'b0100110100010: data_out = 18'h00500; 13'b0100110100011: data_out = 18'h006ba; 13'b0100110100100: data_out = 18'h3f0b8; 13'b0100110100101: data_out = 18'h3f29a; 13'b0100110100110: data_out = 18'h01b88; 13'b0100110100111: data_out = 18'h3fff2; 13'b0100110101000: data_out = 18'h3ef0e; 13'b0100110101001: data_out = 18'h01928; 13'b0100110101010: data_out = 18'h3efa0; 13'b0100110101011: data_out = 18'h3f7e2; 13'b0100110101100: data_out = 18'h011fe; 13'b0100110101101: data_out = 18'h3f50a; 13'b0100110101110: data_out = 18'h00b7a; 13'b0100110101111: data_out = 18'h3f85a; 13'b0100110110000: data_out = 18'h3ea88; 13'b0100110110001: data_out = 18'h00d0e; 13'b0100110110010: data_out = 18'h00a4a; 13'b0100110110011: data_out = 18'h001fc; 13'b0100110110100: data_out = 18'h3fad4; 13'b0100110110101: data_out = 18'h3f29c; 13'b0100110110110: data_out = 18'h01218; 13'b0100110110111: data_out = 18'h3efa2; 13'b0100110111000: data_out = 18'h00922; 13'b0100110111001: data_out = 18'h00bd2; 13'b0100110111010: data_out = 18'h3edba; 13'b0100110111011: data_out = 18'h00380; 13'b0100110111100: data_out = 18'h007ba; 13'b0100110111101: data_out = 18'h3f90c; 13'b0100110111110: data_out = 18'h0052c; 13'b0100110111111: data_out = 18'h00dce; 13'b0100111000000: data_out = 18'h3e86e; 13'b0100111000001: data_out = 18'h3faa6; 13'b0100111000010: data_out = 18'h3ff3e; 13'b0100111000011: data_out = 18'h01876; 13'b0100111000100: data_out = 18'h3f5c6; 13'b0100111000101: data_out = 18'h000bc; 13'b0100111000110: data_out = 18'h3f910; 13'b0100111000111: data_out = 18'h006d6; 13'b0100111001000: data_out = 18'h3fba6; 13'b0100111001001: data_out = 18'h003d2; 13'b0100111001010: data_out = 18'h00630; 13'b0100111001011: data_out = 18'h3fff4; 13'b0100111001100: data_out = 18'h3ee68; 13'b0100111001101: data_out = 18'h3ffb8; 13'b0100111001110: data_out = 18'h010b4; 13'b0100111001111: data_out = 18'h3f53c; 13'b0100111010000: data_out = 18'h0064e; 13'b0100111010001: data_out = 18'h003f8; 13'b0100111010010: data_out = 18'h3efce; 13'b0100111010011: data_out = 18'h01556; 13'b0100111010100: data_out = 18'h3f10a; 13'b0100111010101: data_out = 18'h00406; 13'b0100111010110: data_out = 18'h00ee0; 13'b0100111010111: data_out = 18'h3eb74; 13'b0100111011000: data_out = 18'h0026e; 13'b0100111011001: data_out = 18'h005b8; 13'b0100111011010: data_out = 18'h008f8; 13'b0100111011011: data_out = 18'h3f0a8; 13'b0100111011100: data_out = 18'h00d4c; 13'b0100111011101: data_out = 18'h3f24c; 13'b0100111011110: data_out = 18'h00188; 13'b0100111011111: data_out = 18'h000c0; 13'b0100111100000: data_out = 18'h3fbfe; 13'b0100111100001: data_out = 18'h0069e; 13'b0100111100010: data_out = 18'h0074c; 13'b0100111100011: data_out = 18'h3f440; 13'b0100111100100: data_out = 18'h3ff80; 13'b0100111100101: data_out = 18'h00892; 13'b0100111100110: data_out = 18'h00216; 13'b0100111100111: data_out = 18'h3f3b6; 13'b0100111101000: data_out = 18'h00406; 13'b0100111101001: data_out = 18'h00ce0; 13'b0100111101010: data_out = 18'h3f02a; 13'b0100111101011: data_out = 18'h00380; 13'b0100111101100: data_out = 18'h006ca; 13'b0100111101101: data_out = 18'h3f660; 13'b0100111101110: data_out = 18'h00742; 13'b0100111101111: data_out = 18'h3ff84; 13'b0100111110000: data_out = 18'h3fcb0; 13'b0100111110001: data_out = 18'h0006c; 13'b0100111110010: data_out = 18'h003a2; 13'b0100111110011: data_out = 18'h3fa10; 13'b0100111110100: data_out = 18'h3f960; 13'b0100111110101: data_out = 18'h018f2; 13'b0100111110110: data_out = 18'h3e968; 13'b0100111110111: data_out = 18'h002e6; 13'b0100111111000: data_out = 18'h00ec8; 13'b0100111111001: data_out = 18'h3ef26; 13'b0100111111010: data_out = 18'h004c4; 13'b0100111111011: data_out = 18'h3fe8e; 13'b0100111111100: data_out = 18'h3fba2; 13'b0100111111101: data_out = 18'h0076e; 13'b0100111111110: data_out = 18'h00526; 13'b0100111111111: data_out = 18'h3f3bc; 13'b0101000000000: data_out = 18'h00780; 13'b0101000000001: data_out = 18'h3f7ea; 13'b0101000000010: data_out = 18'h01582; 13'b0101000000011: data_out = 18'h3eca0; 13'b0101000000100: data_out = 18'h0099a; 13'b0101000000101: data_out = 18'h00122; 13'b0101000000110: data_out = 18'h3f406; 13'b0101000000111: data_out = 18'h00476; 13'b0101000001000: data_out = 18'h00ca8; 13'b0101000001001: data_out = 18'h3f4de; 13'b0101000001010: data_out = 18'h3ff08; 13'b0101000001011: data_out = 18'h00782; 13'b0101000001100: data_out = 18'h3f9f4; 13'b0101000001101: data_out = 18'h3feee; 13'b0101000001110: data_out = 18'h00324; 13'b0101000001111: data_out = 18'h00066; 13'b0101000010000: data_out = 18'h3fda2; 13'b0101000010001: data_out = 18'h002c0; 13'b0101000010010: data_out = 18'h3fe56; 13'b0101000010011: data_out = 18'h002d0; 13'b0101000010100: data_out = 18'h3ff38; 13'b0101000010101: data_out = 18'h3fc46; 13'b0101000010110: data_out = 18'h00094; 13'b0101000010111: data_out = 18'h00084; 13'b0101000011000: data_out = 18'h00452; 13'b0101000011001: data_out = 18'h3f4e4; 13'b0101000011010: data_out = 18'h3fd08; 13'b0101000011011: data_out = 18'h0139c; 13'b0101000011100: data_out = 18'h3f598; 13'b0101000011101: data_out = 18'h3f45e; 13'b0101000011110: data_out = 18'h00b42; 13'b0101000011111: data_out = 18'h005c6; 13'b0101000100000: data_out = 18'h3f63e; 13'b0101000100001: data_out = 18'h003e6; 13'b0101000100010: data_out = 18'h0012a; 13'b0101000100011: data_out = 18'h0004a; 13'b0101000100100: data_out = 18'h3fd20; 13'b0101000100101: data_out = 18'h001f2; 13'b0101000100110: data_out = 18'h3f984; 13'b0101000100111: data_out = 18'h00a7c; 13'b0101000101000: data_out = 18'h3fd10; 13'b0101000101001: data_out = 18'h3fc38; 13'b0101000101010: data_out = 18'h3f6ac; 13'b0101000101011: data_out = 18'h0150a; 13'b0101000101100: data_out = 18'h3f724; 13'b0101000101101: data_out = 18'h00676; 13'b0101000101110: data_out = 18'h3f944; 13'b0101000101111: data_out = 18'h0058a; 13'b0101000110000: data_out = 18'h3f868; 13'b0101000110001: data_out = 18'h00390; 13'b0101000110010: data_out = 18'h0034c; 13'b0101000110011: data_out = 18'h3fe5e; 13'b0101000110100: data_out = 18'h3fd84; 13'b0101000110101: data_out = 18'h007fa; 13'b0101000110110: data_out = 18'h3f20c; 13'b0101000110111: data_out = 18'h005b4; 13'b0101000111000: data_out = 18'h00474; 13'b0101000111001: data_out = 18'h3f42c; 13'b0101000111010: data_out = 18'h009dc; 13'b0101000111011: data_out = 18'h3ff4c; 13'b0101000111100: data_out = 18'h3f8d4; 13'b0101000111101: data_out = 18'h01020; 13'b0101000111110: data_out = 18'h3f6a2; 13'b0101000111111: data_out = 18'h3fdb2; 13'b0101001000000: data_out = 18'h001bc; 13'b0101001000001: data_out = 18'h3fd7a; 13'b0101001000010: data_out = 18'h00444; 13'b0101001000011: data_out = 18'h3f608; 13'b0101001000100: data_out = 18'h00ab8; 13'b0101001000101: data_out = 18'h3f792; 13'b0101001000110: data_out = 18'h009f6; 13'b0101001000111: data_out = 18'h3f960; 13'b0101001001000: data_out = 18'h3fe8c; 13'b0101001001001: data_out = 18'h3faba; 13'b0101001001010: data_out = 18'h00a32; 13'b0101001001011: data_out = 18'h00226; 13'b0101001001100: data_out = 18'h3f870; 13'b0101001001101: data_out = 18'h00372; 13'b0101001001110: data_out = 18'h0019e; 13'b0101001001111: data_out = 18'h3ffee; 13'b0101001010000: data_out = 18'h3f91c; 13'b0101001010001: data_out = 18'h0088e; 13'b0101001010010: data_out = 18'h3fc52; 13'b0101001010011: data_out = 18'h0019a; 13'b0101001010100: data_out = 18'h3f95e; 13'b0101001010101: data_out = 18'h00594; 13'b0101001010110: data_out = 18'h3fd16; 13'b0101001010111: data_out = 18'h0051c; 13'b0101001011000: data_out = 18'h3f668; 13'b0101001011001: data_out = 18'h00926; 13'b0101001011010: data_out = 18'h0053a; 13'b0101001011011: data_out = 18'h3f87e; 13'b0101001011100: data_out = 18'h00340; 13'b0101001011101: data_out = 18'h00382; 13'b0101001011110: data_out = 18'h3fd2c; 13'b0101001011111: data_out = 18'h3fae0; 13'b0101001100000: data_out = 18'h0045a; 13'b0101001100001: data_out = 18'h3feae; 13'b0101001100010: data_out = 18'h0052e; 13'b0101001100011: data_out = 18'h3f364; 13'b0101001100100: data_out = 18'h008d4; 13'b0101001100101: data_out = 18'h3fd9a; 13'b0101001100110: data_out = 18'h00508; 13'b0101001100111: data_out = 18'h3f724; 13'b0101001101000: data_out = 18'h004c8; 13'b0101001101001: data_out = 18'h3fd10; 13'b0101001101010: data_out = 18'h007ac; 13'b0101001101011: data_out = 18'h3f580; 13'b0101001101100: data_out = 18'h00124; 13'b0101001101101: data_out = 18'h00378; 13'b0101001101110: data_out = 18'h00272; 13'b0101001101111: data_out = 18'h3f74c; 13'b0101001110000: data_out = 18'h004ea; 13'b0101001110001: data_out = 18'h002f4; 13'b0101001110010: data_out = 18'h3f85e; 13'b0101001110011: data_out = 18'h00ffc; 13'b0101001110100: data_out = 18'h3f144; 13'b0101001110101: data_out = 18'h0095e; 13'b0101001110110: data_out = 18'h3f362; 13'b0101001110111: data_out = 18'h010c8; 13'b0101001111000: data_out = 18'h3f336; 13'b0101001111001: data_out = 18'h00882; 13'b0101001111010: data_out = 18'h3f9b4; 13'b0101001111011: data_out = 18'h00286; 13'b0101001111100: data_out = 18'h3ff2e; 13'b0101001111101: data_out = 18'h3fd28; 13'b0101001111110: data_out = 18'h0044c; 13'b0101001111111: data_out = 18'h00218; 13'b0101010000000: data_out = 18'h3fc0e; 13'b0101010000001: data_out = 18'h0005e; 13'b0101010000010: data_out = 18'h3fc76; 13'b0101010000011: data_out = 18'h00094; 13'b0101010000100: data_out = 18'h0019e; 13'b0101010000101: data_out = 18'h0041e; 13'b0101010000110: data_out = 18'h3fa72; 13'b0101010000111: data_out = 18'h002a0; 13'b0101010001000: data_out = 18'h0024e; 13'b0101010001001: data_out = 18'h3fc74; 13'b0101010001010: data_out = 18'h3fe8e; 13'b0101010001011: data_out = 18'h00754; 13'b0101010001100: data_out = 18'h3f6f4; 13'b0101010001101: data_out = 18'h00518; 13'b0101010001110: data_out = 18'h00038; 13'b0101010001111: data_out = 18'h3fe30; 13'b0101010010000: data_out = 18'h00516; 13'b0101010010001: data_out = 18'h3ff6c; 13'b0101010010010: data_out = 18'h3f776; 13'b0101010010011: data_out = 18'h009ea; 13'b0101010010100: data_out = 18'h3fd0a; 13'b0101010010101: data_out = 18'h000e4; 13'b0101010010110: data_out = 18'h3f87e; 13'b0101010010111: data_out = 18'h006d2; 13'b0101010011000: data_out = 18'h001d6; 13'b0101010011001: data_out = 18'h3f590; 13'b0101010011010: data_out = 18'h00dd0; 13'b0101010011011: data_out = 18'h3f5e0; 13'b0101010011100: data_out = 18'h00370; 13'b0101010011101: data_out = 18'h007c0; 13'b0101010011110: data_out = 18'h3ed3a; 13'b0101010011111: data_out = 18'h00e74; 13'b0101010100000: data_out = 18'h3fde6; 13'b0101010100001: data_out = 18'h3feee; 13'b0101010100010: data_out = 18'h0009a; 13'b0101010100011: data_out = 18'h3febe; 13'b0101010100100: data_out = 18'h00358; 13'b0101010100101: data_out = 18'h3f9e8; 13'b0101010100110: data_out = 18'h00478; 13'b0101010100111: data_out = 18'h3feb0; 13'b0101010101000: data_out = 18'h3fec8; 13'b0101010101001: data_out = 18'h3fd20; 13'b0101010101010: data_out = 18'h00036; 13'b0101010101011: data_out = 18'h0070c; 13'b0101010101100: data_out = 18'h3fbe0; 13'b0101010101101: data_out = 18'h3f696; 13'b0101010101110: data_out = 18'h00f96; 13'b0101010101111: data_out = 18'h3f75a; 13'b0101010110000: data_out = 18'h00228; 13'b0101010110001: data_out = 18'h00428; 13'b0101010110010: data_out = 18'h3f8f0; 13'b0101010110011: data_out = 18'h3ff52; 13'b0101010110100: data_out = 18'h3ff1c; 13'b0101010110101: data_out = 18'h00a1a; 13'b0101010110110: data_out = 18'h3fcf8; 13'b0101010110111: data_out = 18'h3fc16; 13'b0101010111000: data_out = 18'h007f0; 13'b0101010111001: data_out = 18'h3fadc; 13'b0101010111010: data_out = 18'h3f734; 13'b0101010111011: data_out = 18'h00d9c; 13'b0101010111100: data_out = 18'h001a8; 13'b0101010111101: data_out = 18'h3fa74; 13'b0101010111110: data_out = 18'h3fd6a; 13'b0101010111111: data_out = 18'h001b0; 13'b0101011000000: data_out = 18'h00264; 13'b0101011000001: data_out = 18'h3fa42; 13'b0101011000010: data_out = 18'h00932; 13'b0101011000011: data_out = 18'h3f546; 13'b0101011000100: data_out = 18'h00476; 13'b0101011000101: data_out = 18'h001fa; 13'b0101011000110: data_out = 18'h3fb72; 13'b0101011000111: data_out = 18'h000d8; 13'b0101011001000: data_out = 18'h003f6; 13'b0101011001001: data_out = 18'h0037c; 13'b0101011001010: data_out = 18'h3ee68; 13'b0101011001011: data_out = 18'h00c3e; 13'b0101011001100: data_out = 18'h000ee; 13'b0101011001101: data_out = 18'h3ff06; 13'b0101011001110: data_out = 18'h00052; 13'b0101011001111: data_out = 18'h3ff5a; 13'b0101011010000: data_out = 18'h3fc50; 13'b0101011010001: data_out = 18'h0021a; 13'b0101011010010: data_out = 18'h00766; 13'b0101011010011: data_out = 18'h3fd64; 13'b0101011010100: data_out = 18'h3f3be; 13'b0101011010101: data_out = 18'h00960; 13'b0101011010110: data_out = 18'h3fd38; 13'b0101011010111: data_out = 18'h003c0; 13'b0101011011000: data_out = 18'h3fa52; 13'b0101011011001: data_out = 18'h00744; 13'b0101011011010: data_out = 18'h3ffa2; 13'b0101011011011: data_out = 18'h3fada; 13'b0101011011100: data_out = 18'h3ff3e; 13'b0101011011101: data_out = 18'h005e8; 13'b0101011011110: data_out = 18'h3fa8a; 13'b0101011011111: data_out = 18'h0089e; 13'b0101011100000: data_out = 18'h3fc16; 13'b0101011100001: data_out = 18'h3f9ca; 13'b0101011100010: data_out = 18'h00646; 13'b0101011100011: data_out = 18'h0002c; 13'b0101011100100: data_out = 18'h3fe08; 13'b0101011100101: data_out = 18'h3fc3a; 13'b0101011100110: data_out = 18'h00752; 13'b0101011100111: data_out = 18'h3fd44; 13'b0101011101000: data_out = 18'h00064; 13'b0101011101001: data_out = 18'h3fc6e; 13'b0101011101010: data_out = 18'h008c2; 13'b0101011101011: data_out = 18'h3f630; 13'b0101011101100: data_out = 18'h00334; 13'b0101011101101: data_out = 18'h3fe12; 13'b0101011101110: data_out = 18'h0019a; 13'b0101011101111: data_out = 18'h003ea; 13'b0101011110000: data_out = 18'h3f9a8; 13'b0101011110001: data_out = 18'h0039c; 13'b0101011110010: data_out = 18'h3fc62; 13'b0101011110011: data_out = 18'h00044; 13'b0101011110100: data_out = 18'h3fc92; 13'b0101011110101: data_out = 18'h00c06; 13'b0101011110110: data_out = 18'h3f702; 13'b0101011110111: data_out = 18'h0024a; 13'b0101011111000: data_out = 18'h3ff4a; 13'b0101011111001: data_out = 18'h3fe20; 13'b0101011111010: data_out = 18'h00712; 13'b0101011111011: data_out = 18'h00062; 13'b0101011111100: data_out = 18'h3fa7e; 13'b0101011111101: data_out = 18'h3ffcc; 13'b0101011111110: data_out = 18'h3fe24; 13'b0101011111111: data_out = 18'h00660; 13'b0101100000000: data_out = 18'h3fa04; 13'b0101100000001: data_out = 18'h00a68; 13'b0101100000010: data_out = 18'h3f28a; 13'b0101100000011: data_out = 18'h0002e; 13'b0101100000100: data_out = 18'h0075e; 13'b0101100000101: data_out = 18'h00360; 13'b0101100000110: data_out = 18'h3fca4; 13'b0101100000111: data_out = 18'h00046; 13'b0101100001000: data_out = 18'h3fbd6; 13'b0101100001001: data_out = 18'h007a0; 13'b0101100001010: data_out = 18'h3fcd8; 13'b0101100001011: data_out = 18'h3fafe; 13'b0101100001100: data_out = 18'h0071c; 13'b0101100001101: data_out = 18'h3fc68; 13'b0101100001110: data_out = 18'h0031a; 13'b0101100001111: data_out = 18'h3f85a; 13'b0101100010000: data_out = 18'h00388; 13'b0101100010001: data_out = 18'h002ca; 13'b0101100010010: data_out = 18'h3faf0; 13'b0101100010011: data_out = 18'h003b4; 13'b0101100010100: data_out = 18'h3ffa6; 13'b0101100010101: data_out = 18'h3ff9c; 13'b0101100010110: data_out = 18'h3fd00; 13'b0101100010111: data_out = 18'h0000e; 13'b0101100011000: data_out = 18'h000d0; 13'b0101100011001: data_out = 18'h00298; 13'b0101100011010: data_out = 18'h3fe82; 13'b0101100011011: data_out = 18'h00030; 13'b0101100011100: data_out = 18'h0004e; 13'b0101100011101: data_out = 18'h3fd88; 13'b0101100011110: data_out = 18'h00402; 13'b0101100011111: data_out = 18'h3ff2a; 13'b0101100100000: data_out = 18'h3f8e8; 13'b0101100100001: data_out = 18'h00334; 13'b0101100100010: data_out = 18'h006fa; 13'b0101100100011: data_out = 18'h3fa6e; 13'b0101100100100: data_out = 18'h005dc; 13'b0101100100101: data_out = 18'h3f94c; 13'b0101100100110: data_out = 18'h00240; 13'b0101100100111: data_out = 18'h3fee0; 13'b0101100101000: data_out = 18'h0079e; 13'b0101100101001: data_out = 18'h3fd06; 13'b0101100101010: data_out = 18'h3fa82; 13'b0101100101011: data_out = 18'h00400; 13'b0101100101100: data_out = 18'h3fde8; 13'b0101100101101: data_out = 18'h00156; 13'b0101100101110: data_out = 18'h3fff0; 13'b0101100101111: data_out = 18'h3fff0; 13'b0101100110000: data_out = 18'h3fd6a; 13'b0101100110001: data_out = 18'h002c2; 13'b0101100110010: data_out = 18'h0016e; 13'b0101100110011: data_out = 18'h3fe78; 13'b0101100110100: data_out = 18'h000c6; 13'b0101100110101: data_out = 18'h00166; 13'b0101100110110: data_out = 18'h3ffc2; 13'b0101100110111: data_out = 18'h3fc7e; 13'b0101100111000: data_out = 18'h002f4; 13'b0101100111001: data_out = 18'h00428; 13'b0101100111010: data_out = 18'h3f906; 13'b0101100111011: data_out = 18'h00384; 13'b0101100111100: data_out = 18'h3f8e8; 13'b0101100111101: data_out = 18'h0010e; 13'b0101100111110: data_out = 18'h002aa; 13'b0101100111111: data_out = 18'h000ce; 13'b0101101000000: data_out = 18'h3ff48; 13'b0101101000001: data_out = 18'h3fd92; 13'b0101101000010: data_out = 18'h00202; 13'b0101101000011: data_out = 18'h3f9a6; 13'b0101101000100: data_out = 18'h00b4e; 13'b0101101000101: data_out = 18'h3faf0; 13'b0101101000110: data_out = 18'h0013e; 13'b0101101000111: data_out = 18'h3fe64; 13'b0101101001000: data_out = 18'h002f8; 13'b0101101001001: data_out = 18'h3fc60; 13'b0101101001010: data_out = 18'h0055a; 13'b0101101001011: data_out = 18'h3fb20; 13'b0101101001100: data_out = 18'h002fc; 13'b0101101001101: data_out = 18'h3fd7c; 13'b0101101001110: data_out = 18'h3fe42; 13'b0101101001111: data_out = 18'h0021e; 13'b0101101010000: data_out = 18'h00298; 13'b0101101010001: data_out = 18'h3ff54; 13'b0101101010010: data_out = 18'h00172; 13'b0101101010011: data_out = 18'h3fb76; 13'b0101101010100: data_out = 18'h3fef8; 13'b0101101010101: data_out = 18'h00b46; 13'b0101101010110: data_out = 18'h3f7fa; 13'b0101101010111: data_out = 18'h3fcc4; 13'b0101101011000: data_out = 18'h006ac; 13'b0101101011001: data_out = 18'h3fd92; 13'b0101101011010: data_out = 18'h3fa2c; 13'b0101101011011: data_out = 18'h001d2; 13'b0101101011100: data_out = 18'h005e4; 13'b0101101011101: data_out = 18'h3f93a; 13'b0101101011110: data_out = 18'h3fe58; 13'b0101101011111: data_out = 18'h00d22; 13'b0101101100000: data_out = 18'h3f8aa; 13'b0101101100001: data_out = 18'h3fe22; 13'b0101101100010: data_out = 18'h00298; 13'b0101101100011: data_out = 18'h00090; 13'b0101101100100: data_out = 18'h3fe38; 13'b0101101100101: data_out = 18'h00284; 13'b0101101100110: data_out = 18'h3feba; 13'b0101101100111: data_out = 18'h00012; 13'b0101101101000: data_out = 18'h000dc; 13'b0101101101001: data_out = 18'h00136; 13'b0101101101010: data_out = 18'h3f9c4; 13'b0101101101011: data_out = 18'h0008e; 13'b0101101101100: data_out = 18'h00536; 13'b0101101101101: data_out = 18'h3f944; 13'b0101101101110: data_out = 18'h00826; 13'b0101101101111: data_out = 18'h3f662; 13'b0101101110000: data_out = 18'h0084a; 13'b0101101110001: data_out = 18'h3f842; 13'b0101101110010: data_out = 18'h002f4; 13'b0101101110011: data_out = 18'h006ea; 13'b0101101110100: data_out = 18'h3fbe4; 13'b0101101110101: data_out = 18'h3fb3e; 13'b0101101110110: data_out = 18'h00580; 13'b0101101110111: data_out = 18'h3fd86; 13'b0101101111000: data_out = 18'h3fccc; 13'b0101101111001: data_out = 18'h00986; 13'b0101101111010: data_out = 18'h3fc6a; 13'b0101101111011: data_out = 18'h3fc18; 13'b0101101111100: data_out = 18'h00350; 13'b0101101111101: data_out = 18'h3fca4; 13'b0101101111110: data_out = 18'h3ffec; 13'b0101101111111: data_out = 18'h0066c; 13'b0101110000000: data_out = 18'h3fd52; 13'b0101110000001: data_out = 18'h3f938; 13'b0101110000010: data_out = 18'h006f4; 13'b0101110000011: data_out = 18'h0011e; 13'b0101110000100: data_out = 18'h3f98c; 13'b0101110000101: data_out = 18'h002dc; 13'b0101110000110: data_out = 18'h00216; 13'b0101110000111: data_out = 18'h3faf4; 13'b0101110001000: data_out = 18'h00162; 13'b0101110001001: data_out = 18'h000f2; 13'b0101110001010: data_out = 18'h0006a; 13'b0101110001011: data_out = 18'h00188; 13'b0101110001100: data_out = 18'h3ffba; 13'b0101110001101: data_out = 18'h3fe84; 13'b0101110001110: data_out = 18'h3fbd4; 13'b0101110001111: data_out = 18'h007ca; 13'b0101110010000: data_out = 18'h00022; 13'b0101110010001: data_out = 18'h3ff7a; 13'b0101110010010: data_out = 18'h3fe4e; 13'b0101110010011: data_out = 18'h3fff8; 13'b0101110010100: data_out = 18'h00062; 13'b0101110010101: data_out = 18'h0016a; 13'b0101110010110: data_out = 18'h3fffc; 13'b0101110010111: data_out = 18'h3fd6c; 13'b0101110011000: data_out = 18'h3fe12; 13'b0101110011001: data_out = 18'h00392; 13'b0101110011010: data_out = 18'h0005c; 13'b0101110011011: data_out = 18'h3fc2a; 13'b0101110011100: data_out = 18'h00212; 13'b0101110011101: data_out = 18'h00204; 13'b0101110011110: data_out = 18'h3fbbc; 13'b0101110011111: data_out = 18'h00160; 13'b0101110100000: data_out = 18'h001d0; 13'b0101110100001: data_out = 18'h000c0; 13'b0101110100010: data_out = 18'h00020; 13'b0101110100011: data_out = 18'h3fda4; 13'b0101110100100: data_out = 18'h3fdb6; 13'b0101110100101: data_out = 18'h007a4; 13'b0101110100110: data_out = 18'h3f9f4; 13'b0101110100111: data_out = 18'h00198; 13'b0101110101000: data_out = 18'h000c2; 13'b0101110101001: data_out = 18'h002ea; 13'b0101110101010: data_out = 18'h3fa34; 13'b0101110101011: data_out = 18'h00036; 13'b0101110101100: data_out = 18'h003d2; 13'b0101110101101: data_out = 18'h3fe8a; 13'b0101110101110: data_out = 18'h00216; 13'b0101110101111: data_out = 18'h3fad4; 13'b0101110110000: data_out = 18'h003e6; 13'b0101110110001: data_out = 18'h3fb98; 13'b0101110110010: data_out = 18'h00026; 13'b0101110110011: data_out = 18'h0031e; 13'b0101110110100: data_out = 18'h3ff08; 13'b0101110110101: data_out = 18'h3ff44; 13'b0101110110110: data_out = 18'h3fd66; 13'b0101110110111: data_out = 18'h003b4; 13'b0101110111000: data_out = 18'h00054; 13'b0101110111001: data_out = 18'h0010e; 13'b0101110111010: data_out = 18'h3fb68; 13'b0101110111011: data_out = 18'h00348; 13'b0101110111100: data_out = 18'h0011a; 13'b0101110111101: data_out = 18'h00014; 13'b0101110111110: data_out = 18'h3fc8a; 13'b0101110111111: data_out = 18'h0036c; 13'b0101111000000: data_out = 18'h0014e; 13'b0101111000001: data_out = 18'h3fc6e; 13'b0101111000010: data_out = 18'h0038c; 13'b0101111000011: data_out = 18'h3fd5a; 13'b0101111000100: data_out = 18'h003c6; 13'b0101111000101: data_out = 18'h3fd2c; 13'b0101111000110: data_out = 18'h3fff4; 13'b0101111000111: data_out = 18'h00026; 13'b0101111001000: data_out = 18'h3fd92; 13'b0101111001001: data_out = 18'h003d2; 13'b0101111001010: data_out = 18'h3f9f0; 13'b0101111001011: data_out = 18'h00840; 13'b0101111001100: data_out = 18'h3fcee; 13'b0101111001101: data_out = 18'h3fd18; 13'b0101111001110: data_out = 18'h00002; 13'b0101111001111: data_out = 18'h001c8; 13'b0101111010000: data_out = 18'h00134; 13'b0101111010001: data_out = 18'h3fcac; 13'b0101111010010: data_out = 18'h00164; 13'b0101111010011: data_out = 18'h002de; 13'b0101111010100: data_out = 18'h0003a; 13'b0101111010101: data_out = 18'h3fdbc; 13'b0101111010110: data_out = 18'h3ff60; 13'b0101111010111: data_out = 18'h00016; 13'b0101111011000: data_out = 18'h001da; 13'b0101111011001: data_out = 18'h3fec8; 13'b0101111011010: data_out = 18'h00170; 13'b0101111011011: data_out = 18'h3fcf0; 13'b0101111011100: data_out = 18'h00220; 13'b0101111011101: data_out = 18'h3fe42; 13'b0101111011110: data_out = 18'h000a0; 13'b0101111011111: data_out = 18'h0001e; 13'b0101111100000: data_out = 18'h00158; 13'b0101111100001: data_out = 18'h3fd10; 13'b0101111100010: data_out = 18'h3ff28; 13'b0101111100011: data_out = 18'h00632; 13'b0101111100100: data_out = 18'h3fbce; 13'b0101111100101: data_out = 18'h3fd40; 13'b0101111100110: data_out = 18'h00622; 13'b0101111100111: data_out = 18'h3f740; 13'b0101111101000: data_out = 18'h00480; 13'b0101111101001: data_out = 18'h00302; 13'b0101111101010: data_out = 18'h00242; 13'b0101111101011: data_out = 18'h3fb7a; 13'b0101111101100: data_out = 18'h3fff4; 13'b0101111101101: data_out = 18'h3ff50; 13'b0101111101110: data_out = 18'h00540; 13'b0101111101111: data_out = 18'h3fe6a; 13'b0101111110000: data_out = 18'h3fcb8; 13'b0101111110001: data_out = 18'h000fe; 13'b0101111110010: data_out = 18'h0006c; 13'b0101111110011: data_out = 18'h00010; 13'b0101111110100: data_out = 18'h00060; 13'b0101111110101: data_out = 18'h3ff72; 13'b0101111110110: data_out = 18'h000f4; 13'b0101111110111: data_out = 18'h3fdf8; 13'b0101111111000: data_out = 18'h002ce; 13'b0101111111001: data_out = 18'h3fc0e; 13'b0101111111010: data_out = 18'h00186; 13'b0101111111011: data_out = 18'h00194; 13'b0101111111100: data_out = 18'h3fe9a; 13'b0101111111101: data_out = 18'h00072; 13'b0101111111110: data_out = 18'h000a8; 13'b0101111111111: data_out = 18'h3febc; 13'b0110000000000: data_out = 18'h001fa; 13'b0110000000001: data_out = 18'h3feae; 13'b0110000000010: data_out = 18'h3ff94; 13'b0110000000011: data_out = 18'h00064; 13'b0110000000100: data_out = 18'h001d4; 13'b0110000000101: data_out = 18'h3fbec; 13'b0110000000110: data_out = 18'h0040a; 13'b0110000000111: data_out = 18'h3fea4; 13'b0110000001000: data_out = 18'h3ff44; 13'b0110000001001: data_out = 18'h00104; 13'b0110000001010: data_out = 18'h0007c; 13'b0110000001011: data_out = 18'h3fb84; 13'b0110000001100: data_out = 18'h0026a; 13'b0110000001101: data_out = 18'h0028a; 13'b0110000001110: data_out = 18'h3fbb4; 13'b0110000001111: data_out = 18'h0038c; 13'b0110000010000: data_out = 18'h3fd94; 13'b0110000010001: data_out = 18'h00368; 13'b0110000010010: data_out = 18'h3fcfc; 13'b0110000010011: data_out = 18'h3ffe6; 13'b0110000010100: data_out = 18'h00086; 13'b0110000010101: data_out = 18'h000d0; 13'b0110000010110: data_out = 18'h3ffba; 13'b0110000010111: data_out = 18'h3ff56; 13'b0110000011000: data_out = 18'h00176; 13'b0110000011001: data_out = 18'h00074; 13'b0110000011010: data_out = 18'h3fc8c; 13'b0110000011011: data_out = 18'h0021e; 13'b0110000011100: data_out = 18'h3ffc8; 13'b0110000011101: data_out = 18'h001f4; 13'b0110000011110: data_out = 18'h3febe; 13'b0110000011111: data_out = 18'h3ff48; 13'b0110000100000: data_out = 18'h0006c; 13'b0110000100001: data_out = 18'h001da; 13'b0110000100010: data_out = 18'h3fe4c; 13'b0110000100011: data_out = 18'h3ffe6; 13'b0110000100100: data_out = 18'h3fefe; 13'b0110000100101: data_out = 18'h00282; 13'b0110000100110: data_out = 18'h3fef8; 13'b0110000100111: data_out = 18'h00010; 13'b0110000101000: data_out = 18'h3fd7c; 13'b0110000101001: data_out = 18'h001f6; 13'b0110000101010: data_out = 18'h3fd54; 13'b0110000101011: data_out = 18'h002a4; 13'b0110000101100: data_out = 18'h3ff9c; 13'b0110000101101: data_out = 18'h0025c; 13'b0110000101110: data_out = 18'h3fe0c; 13'b0110000101111: data_out = 18'h3ff4e; 13'b0110000110000: data_out = 18'h00086; 13'b0110000110001: data_out = 18'h0025e; 13'b0110000110010: data_out = 18'h3fdb2; 13'b0110000110011: data_out = 18'h001bc; 13'b0110000110100: data_out = 18'h3fbee; 13'b0110000110101: data_out = 18'h003e0; 13'b0110000110110: data_out = 18'h3ffa0; 13'b0110000110111: data_out = 18'h3fd5a; 13'b0110000111000: data_out = 18'h003ec; 13'b0110000111001: data_out = 18'h3ff2a; 13'b0110000111010: data_out = 18'h3fc1e; 13'b0110000111011: data_out = 18'h00244; 13'b0110000111100: data_out = 18'h00046; 13'b0110000111101: data_out = 18'h3fe8a; 13'b0110000111110: data_out = 18'h000ac; 13'b0110000111111: data_out = 18'h00112; 13'b0110001000000: data_out = 18'h3fe5a; 13'b0110001000001: data_out = 18'h000be; 13'b0110001000010: data_out = 18'h3ff08; 13'b0110001000011: data_out = 18'h000b4; 13'b0110001000100: data_out = 18'h0013a; 13'b0110001000101: data_out = 18'h3fe24; 13'b0110001000110: data_out = 18'h00128; 13'b0110001000111: data_out = 18'h3ff00; 13'b0110001001000: data_out = 18'h00270; 13'b0110001001001: data_out = 18'h3ffee; 13'b0110001001010: data_out = 18'h3fcb8; 13'b0110001001011: data_out = 18'h00386; 13'b0110001001100: data_out = 18'h0009c; 13'b0110001001101: data_out = 18'h3fc96; 13'b0110001001110: data_out = 18'h00398; 13'b0110001001111: data_out = 18'h3fe30; 13'b0110001010000: data_out = 18'h001e8; 13'b0110001010001: data_out = 18'h3fa84; 13'b0110001010010: data_out = 18'h00504; 13'b0110001010011: data_out = 18'h3fdd4; 13'b0110001010100: data_out = 18'h000c6; 13'b0110001010101: data_out = 18'h3ff32; 13'b0110001010110: data_out = 18'h00136; 13'b0110001010111: data_out = 18'h3fed8; 13'b0110001011000: data_out = 18'h003c6; 13'b0110001011001: data_out = 18'h3fa12; 13'b0110001011010: data_out = 18'h0039c; 13'b0110001011011: data_out = 18'h3fea6; 13'b0110001011100: data_out = 18'h3fef8; 13'b0110001011101: data_out = 18'h3ff88; 13'b0110001011110: data_out = 18'h0036e; 13'b0110001011111: data_out = 18'h3ffae; 13'b0110001100000: data_out = 18'h3fc18; 13'b0110001100001: data_out = 18'h00638; 13'b0110001100010: data_out = 18'h3f8f2; 13'b0110001100011: data_out = 18'h002f4; 13'b0110001100100: data_out = 18'h3fff0; 13'b0110001100101: data_out = 18'h00154; 13'b0110001100110: data_out = 18'h3ff78; 13'b0110001100111: data_out = 18'h3fe52; 13'b0110001101000: data_out = 18'h000da; 13'b0110001101001: data_out = 18'h00262; 13'b0110001101010: data_out = 18'h3fd6e; 13'b0110001101011: data_out = 18'h00184; 13'b0110001101100: data_out = 18'h00026; 13'b0110001101101: data_out = 18'h3ff20; 13'b0110001101110: data_out = 18'h3ff10; 13'b0110001101111: data_out = 18'h3fffa; 13'b0110001110000: data_out = 18'h003c2; 13'b0110001110001: data_out = 18'h3fa78; 13'b0110001110010: data_out = 18'h00306; 13'b0110001110011: data_out = 18'h3fc5e; 13'b0110001110100: data_out = 18'h004e4; 13'b0110001110101: data_out = 18'h3ff0a; 13'b0110001110110: data_out = 18'h3fe56; 13'b0110001110111: data_out = 18'h3fdee; 13'b0110001111000: data_out = 18'h00416; 13'b0110001111001: data_out = 18'h3fe22; 13'b0110001111010: data_out = 18'h0026a; 13'b0110001111011: data_out = 18'h3fe86; 13'b0110001111100: data_out = 18'h0013a; 13'b0110001111101: data_out = 18'h3fde8; 13'b0110001111110: data_out = 18'h0020a; 13'b0110001111111: data_out = 18'h3fcea; 13'b0110010000000: data_out = 18'h000ba; 13'b0110010000001: data_out = 18'h0022c; 13'b0110010000010: data_out = 18'h3ff74; 13'b0110010000011: data_out = 18'h00014; 13'b0110010000100: data_out = 18'h3ff94; 13'b0110010000101: data_out = 18'h00040; 13'b0110010000110: data_out = 18'h3fe02; 13'b0110010000111: data_out = 18'h0043e; 13'b0110010001000: data_out = 18'h3fe10; 13'b0110010001001: data_out = 18'h3fe4e; 13'b0110010001010: data_out = 18'h00010; 13'b0110010001011: data_out = 18'h0018a; 13'b0110010001100: data_out = 18'h3fdc2; 13'b0110010001101: data_out = 18'h001b6; 13'b0110010001110: data_out = 18'h00090; 13'b0110010001111: data_out = 18'h3ff30; 13'b0110010010000: data_out = 18'h000b4; 13'b0110010010001: data_out = 18'h0006c; 13'b0110010010010: data_out = 18'h3fd4a; 13'b0110010010011: data_out = 18'h002a6; 13'b0110010010100: data_out = 18'h00016; 13'b0110010010101: data_out = 18'h3fff6; 13'b0110010010110: data_out = 18'h3fdee; 13'b0110010010111: data_out = 18'h0023e; 13'b0110010011000: data_out = 18'h00092; 13'b0110010011001: data_out = 18'h3fd3a; 13'b0110010011010: data_out = 18'h3fed6; 13'b0110010011011: data_out = 18'h004ce; 13'b0110010011100: data_out = 18'h3fc36; 13'b0110010011101: data_out = 18'h000b4; 13'b0110010011110: data_out = 18'h000ee; 13'b0110010011111: data_out = 18'h3fe8e; 13'b0110010100000: data_out = 18'h0012c; 13'b0110010100001: data_out = 18'h3ff8e; 13'b0110010100010: data_out = 18'h3ff12; 13'b0110010100011: data_out = 18'h00112; 13'b0110010100100: data_out = 18'h3ff4c; 13'b0110010100101: data_out = 18'h001f6; 13'b0110010100110: data_out = 18'h3fd0c; 13'b0110010100111: data_out = 18'h002d6; 13'b0110010101000: data_out = 18'h3fe2e; 13'b0110010101001: data_out = 18'h00108; 13'b0110010101010: data_out = 18'h3ff7c; 13'b0110010101011: data_out = 18'h00122; 13'b0110010101100: data_out = 18'h3fd62; 13'b0110010101101: data_out = 18'h00026; 13'b0110010101110: data_out = 18'h0060e; 13'b0110010101111: data_out = 18'h3f9e2; 13'b0110010110000: data_out = 18'h002ec; 13'b0110010110001: data_out = 18'h3fdbe; 13'b0110010110010: data_out = 18'h001c0; 13'b0110010110011: data_out = 18'h3fff0; 13'b0110010110100: data_out = 18'h00088; 13'b0110010110101: data_out = 18'h3fef6; 13'b0110010110110: data_out = 18'h3ffaa; 13'b0110010110111: data_out = 18'h000c2; 13'b0110010111000: data_out = 18'h3feca; 13'b0110010111001: data_out = 18'h3ff6c; 13'b0110010111010: data_out = 18'h00380; 13'b0110010111011: data_out = 18'h3fd96; 13'b0110010111100: data_out = 18'h3fd56; 13'b0110010111101: data_out = 18'h001f4; 13'b0110010111110: data_out = 18'h0011c; 13'b0110010111111: data_out = 18'h00034; 13'b0110011000000: data_out = 18'h3fec0; 13'b0110011000001: data_out = 18'h3ff4a; 13'b0110011000010: data_out = 18'h00176; 13'b0110011000011: data_out = 18'h00150; 13'b0110011000100: data_out = 18'h3febe; 13'b0110011000101: data_out = 18'h3fff8; 13'b0110011000110: data_out = 18'h0037e; 13'b0110011000111: data_out = 18'h3fa4a; 13'b0110011001000: data_out = 18'h0030a; 13'b0110011001001: data_out = 18'h3fda2; 13'b0110011001010: data_out = 18'h00244; 13'b0110011001011: data_out = 18'h00082; 13'b0110011001100: data_out = 18'h3ff3c; 13'b0110011001101: data_out = 18'h3ff8e; 13'b0110011001110: data_out = 18'h3fe70; 13'b0110011001111: data_out = 18'h00162; 13'b0110011010000: data_out = 18'h00194; 13'b0110011010001: data_out = 18'h3ff12; 13'b0110011010010: data_out = 18'h3fec6; 13'b0110011010011: data_out = 18'h00272; 13'b0110011010100: data_out = 18'h3fc98; 13'b0110011010101: data_out = 18'h00260; 13'b0110011010110: data_out = 18'h3fec6; 13'b0110011010111: data_out = 18'h00080; 13'b0110011011000: data_out = 18'h3fffa; 13'b0110011011001: data_out = 18'h001de; 13'b0110011011010: data_out = 18'h3fce6; 13'b0110011011011: data_out = 18'h00140; 13'b0110011011100: data_out = 18'h3ff50; 13'b0110011011101: data_out = 18'h00262; 13'b0110011011110: data_out = 18'h3ffdc; 13'b0110011011111: data_out = 18'h3fd1c; 13'b0110011100000: data_out = 18'h000b6; 13'b0110011100001: data_out = 18'h002da; 13'b0110011100010: data_out = 18'h3fdb4; 13'b0110011100011: data_out = 18'h3ff34; 13'b0110011100100: data_out = 18'h0016e; 13'b0110011100101: data_out = 18'h3ff6c; 13'b0110011100110: data_out = 18'h3fe1e; 13'b0110011100111: data_out = 18'h001d8; 13'b0110011101000: data_out = 18'h0001a; 13'b0110011101001: data_out = 18'h3ffac; 13'b0110011101010: data_out = 18'h000dc; 13'b0110011101011: data_out = 18'h3fe6e; 13'b0110011101100: data_out = 18'h3ffee; 13'b0110011101101: data_out = 18'h00340; 13'b0110011101110: data_out = 18'h3fe52; 13'b0110011101111: data_out = 18'h3ffbe; 13'b0110011110000: data_out = 18'h001ae; 13'b0110011110001: data_out = 18'h3fe6a; 13'b0110011110010: data_out = 18'h3ffa6; 13'b0110011110011: data_out = 18'h3ff32; 13'b0110011110100: data_out = 18'h002a0; 13'b0110011110101: data_out = 18'h3fb06; 13'b0110011110110: data_out = 18'h0043a; 13'b0110011110111: data_out = 18'h3fed6; 13'b0110011111000: data_out = 18'h000fc; 13'b0110011111001: data_out = 18'h3fe12; 13'b0110011111010: data_out = 18'h0019e; 13'b0110011111011: data_out = 18'h3ff60; 13'b0110011111100: data_out = 18'h3ff30; 13'b0110011111101: data_out = 18'h002a8; 13'b0110011111110: data_out = 18'h3fd7a; 13'b0110011111111: data_out = 18'h3fea2; 13'b0110100000000: data_out = 18'h0044e; 13'b0110100000001: data_out = 18'h3fe86; 13'b0110100000010: data_out = 18'h3fe40; 13'b0110100000011: data_out = 18'h002be; 13'b0110100000100: data_out = 18'h3fdba; 13'b0110100000101: data_out = 18'h00158; 13'b0110100000110: data_out = 18'h3fe56; 13'b0110100000111: data_out = 18'h3ffe0; 13'b0110100001000: data_out = 18'h002d6; 13'b0110100001001: data_out = 18'h3fc5e; 13'b0110100001010: data_out = 18'h001f8; 13'b0110100001011: data_out = 18'h00194; 13'b0110100001100: data_out = 18'h00012; 13'b0110100001101: data_out = 18'h3fd8a; 13'b0110100001110: data_out = 18'h00106; 13'b0110100001111: data_out = 18'h3ff9c; 13'b0110100010000: data_out = 18'h3ff68; 13'b0110100010001: data_out = 18'h3ff6c; 13'b0110100010010: data_out = 18'h002a2; 13'b0110100010011: data_out = 18'h3fdf6; 13'b0110100010100: data_out = 18'h0010c; 13'b0110100010101: data_out = 18'h3ff6c; 13'b0110100010110: data_out = 18'h3fe80; 13'b0110100010111: data_out = 18'h0027c; 13'b0110100011000: data_out = 18'h3ffae; 13'b0110100011001: data_out = 18'h0002e; 13'b0110100011010: data_out = 18'h3ffda; 13'b0110100011011: data_out = 18'h000dc; 13'b0110100011100: data_out = 18'h3fe80; 13'b0110100011101: data_out = 18'h3ff5e; 13'b0110100011110: data_out = 18'h0018a; 13'b0110100011111: data_out = 18'h3ffd0; 13'b0110100100000: data_out = 18'h3fe6a; 13'b0110100100001: data_out = 18'h3ffe8; 13'b0110100100010: data_out = 18'h0033c; 13'b0110100100011: data_out = 18'h3fbbc; 13'b0110100100100: data_out = 18'h00256; 13'b0110100100101: data_out = 18'h00064; 13'b0110100100110: data_out = 18'h3ffca; 13'b0110100100111: data_out = 18'h3fedc; 13'b0110100101000: data_out = 18'h001ae; 13'b0110100101001: data_out = 18'h0007e; 13'b0110100101010: data_out = 18'h3fe16; 13'b0110100101011: data_out = 18'h0004a; 13'b0110100101100: data_out = 18'h3ffd6; 13'b0110100101101: data_out = 18'h00190; 13'b0110100101110: data_out = 18'h3ff08; 13'b0110100101111: data_out = 18'h0005a; 13'b0110100110000: data_out = 18'h3feda; 13'b0110100110001: data_out = 18'h00136; 13'b0110100110010: data_out = 18'h00096; 13'b0110100110011: data_out = 18'h00006; 13'b0110100110100: data_out = 18'h3fcfc; 13'b0110100110101: data_out = 18'h00138; 13'b0110100110110: data_out = 18'h00064; 13'b0110100110111: data_out = 18'h3fec0; 13'b0110100111000: data_out = 18'h003c4; 13'b0110100111001: data_out = 18'h3fdfe; 13'b0110100111010: data_out = 18'h3fe00; 13'b0110100111011: data_out = 18'h00070; 13'b0110100111100: data_out = 18'h003a2; 13'b0110100111101: data_out = 18'h3fe02; 13'b0110100111110: data_out = 18'h3fc3a; 13'b0110100111111: data_out = 18'h00300; 13'b0110101000000: data_out = 18'h00026; 13'b0110101000001: data_out = 18'h3ff3c; 13'b0110101000010: data_out = 18'h3ff7c; 13'b0110101000011: data_out = 18'h001ec; 13'b0110101000100: data_out = 18'h0008c; 13'b0110101000101: data_out = 18'h00196; 13'b0110101000110: data_out = 18'h3fc34; 13'b0110101000111: data_out = 18'h3ff92; 13'b0110101001000: data_out = 18'h001f8; 13'b0110101001001: data_out = 18'h0025c; 13'b0110101001010: data_out = 18'h3fccc; 13'b0110101001011: data_out = 18'h3ff74; 13'b0110101001100: data_out = 18'h00300; 13'b0110101001101: data_out = 18'h3fe48; 13'b0110101001110: data_out = 18'h3ff5e; 13'b0110101001111: data_out = 18'h00430; 13'b0110101010000: data_out = 18'h3fb0e; 13'b0110101010001: data_out = 18'h3ff48; 13'b0110101010010: data_out = 18'h00354; 13'b0110101010011: data_out = 18'h3fd04; 13'b0110101010100: data_out = 18'h002c0; 13'b0110101010101: data_out = 18'h3ffb8; 13'b0110101010110: data_out = 18'h3ff58; 13'b0110101010111: data_out = 18'h00040; 13'b0110101011000: data_out = 18'h3fd64; 13'b0110101011001: data_out = 18'h00480; 13'b0110101011010: data_out = 18'h3fc96; 13'b0110101011011: data_out = 18'h000fa; 13'b0110101011100: data_out = 18'h00158; 13'b0110101011101: data_out = 18'h3fe82; 13'b0110101011110: data_out = 18'h3fe80; 13'b0110101011111: data_out = 18'h002da; 13'b0110101100000: data_out = 18'h3ffba; 13'b0110101100001: data_out = 18'h3fe70; 13'b0110101100010: data_out = 18'h3fff6; 13'b0110101100011: data_out = 18'h001b4; 13'b0110101100100: data_out = 18'h3fe18; 13'b0110101100101: data_out = 18'h00196; 13'b0110101100110: data_out = 18'h3ff3e; 13'b0110101100111: data_out = 18'h0009e; 13'b0110101101000: data_out = 18'h3ff70; 13'b0110101101001: data_out = 18'h3ff6a; 13'b0110101101010: data_out = 18'h3ffb6; 13'b0110101101011: data_out = 18'h000e0; 13'b0110101101100: data_out = 18'h0012a; 13'b0110101101101: data_out = 18'h00062; 13'b0110101101110: data_out = 18'h3fd18; 13'b0110101101111: data_out = 18'h000f6; 13'b0110101110000: data_out = 18'h3ffee; 13'b0110101110001: data_out = 18'h00126; 13'b0110101110010: data_out = 18'h3ff5e; 13'b0110101110011: data_out = 18'h000b8; 13'b0110101110100: data_out = 18'h3fe46; 13'b0110101110101: data_out = 18'h000b8; 13'b0110101110110: data_out = 18'h00020; 13'b0110101110111: data_out = 18'h3ff4c; 13'b0110101111000: data_out = 18'h00180; 13'b0110101111001: data_out = 18'h3fee4; 13'b0110101111010: data_out = 18'h3ffaa; 13'b0110101111011: data_out = 18'h3ff52; 13'b0110101111100: data_out = 18'h001ba; 13'b0110101111101: data_out = 18'h0005c; 13'b0110101111110: data_out = 18'h000ca; 13'b0110101111111: data_out = 18'h3feda; 13'b0110110000000: data_out = 18'h3ff66; 13'b0110110000001: data_out = 18'h00080; 13'b0110110000010: data_out = 18'h0013a; 13'b0110110000011: data_out = 18'h3ff4c; 13'b0110110000100: data_out = 18'h3feb4; 13'b0110110000101: data_out = 18'h001ec; 13'b0110110000110: data_out = 18'h3fefc; 13'b0110110000111: data_out = 18'h00154; 13'b0110110001000: data_out = 18'h3fd3a; 13'b0110110001001: data_out = 18'h0025c; 13'b0110110001010: data_out = 18'h3ff56; 13'b0110110001011: data_out = 18'h3fed6; 13'b0110110001100: data_out = 18'h3ff8c; 13'b0110110001101: data_out = 18'h00276; 13'b0110110001110: data_out = 18'h3feca; 13'b0110110001111: data_out = 18'h000e4; 13'b0110110010000: data_out = 18'h00098; 13'b0110110010001: data_out = 18'h3fda4; 13'b0110110010010: data_out = 18'h3ff14; 13'b0110110010011: data_out = 18'h00360; 13'b0110110010100: data_out = 18'h3fd86; 13'b0110110010101: data_out = 18'h3fffc; 13'b0110110010110: data_out = 18'h00278; 13'b0110110010111: data_out = 18'h3fe22; 13'b0110110011000: data_out = 18'h3ff62; 13'b0110110011001: data_out = 18'h3fff6; 13'b0110110011010: data_out = 18'h0012e; 13'b0110110011011: data_out = 18'h0006a; 13'b0110110011100: data_out = 18'h3ff2a; 13'b0110110011101: data_out = 18'h3ff56; 13'b0110110011110: data_out = 18'h00068; 13'b0110110011111: data_out = 18'h3ffec; 13'b0110110100000: data_out = 18'h00046; 13'b0110110100001: data_out = 18'h3ff6e; 13'b0110110100010: data_out = 18'h001c4; 13'b0110110100011: data_out = 18'h3fd4a; 13'b0110110100100: data_out = 18'h001d4; 13'b0110110100101: data_out = 18'h3fe4a; 13'b0110110100110: data_out = 18'h00124; 13'b0110110100111: data_out = 18'h00088; 13'b0110110101000: data_out = 18'h00062; 13'b0110110101001: data_out = 18'h3febc; 13'b0110110101010: data_out = 18'h00028; 13'b0110110101011: data_out = 18'h000f2; 13'b0110110101100: data_out = 18'h3ffce; 13'b0110110101101: data_out = 18'h000d0; 13'b0110110101110: data_out = 18'h3ffaa; 13'b0110110101111: data_out = 18'h0011e; 13'b0110110110000: data_out = 18'h3fd5c; 13'b0110110110001: data_out = 18'h0020c; 13'b0110110110010: data_out = 18'h3fee4; 13'b0110110110011: data_out = 18'h3ff18; 13'b0110110110100: data_out = 18'h0054c; 13'b0110110110101: data_out = 18'h3fab6; 13'b0110110110110: data_out = 18'h000c4; 13'b0110110110111: data_out = 18'h000ac; 13'b0110110111000: data_out = 18'h00184; 13'b0110110111001: data_out = 18'h3ff44; 13'b0110110111010: data_out = 18'h3fd26; 13'b0110110111011: data_out = 18'h003ea; 13'b0110110111100: data_out = 18'h3fbb0; 13'b0110110111101: data_out = 18'h0027e; 13'b0110110111110: data_out = 18'h0005a; 13'b0110110111111: data_out = 18'h3fe88; 13'b0110111000000: data_out = 18'h3ff92; 13'b0110111000001: data_out = 18'h0013e; 13'b0110111000010: data_out = 18'h3fd3e; 13'b0110111000011: data_out = 18'h00364; 13'b0110111000100: data_out = 18'h3fdde; 13'b0110111000101: data_out = 18'h00058; 13'b0110111000110: data_out = 18'h000fa; 13'b0110111000111: data_out = 18'h00088; 13'b0110111001000: data_out = 18'h3fd32; 13'b0110111001001: data_out = 18'h3ffa6; 13'b0110111001010: data_out = 18'h0047c; 13'b0110111001011: data_out = 18'h3feaa; 13'b0110111001100: data_out = 18'h3ff4a; 13'b0110111001101: data_out = 18'h3fe94; 13'b0110111001110: data_out = 18'h0027c; 13'b0110111001111: data_out = 18'h3fe96; 13'b0110111010000: data_out = 18'h00124; 13'b0110111010001: data_out = 18'h3fdd2; 13'b0110111010010: data_out = 18'h001b4; 13'b0110111010011: data_out = 18'h3ff42; 13'b0110111010100: data_out = 18'h00094; 13'b0110111010101: data_out = 18'h3fde6; 13'b0110111010110: data_out = 18'h002e4; 13'b0110111010111: data_out = 18'h3ff3e; 13'b0110111011000: data_out = 18'h0010a; 13'b0110111011001: data_out = 18'h3fd38; 13'b0110111011010: data_out = 18'h001ec; 13'b0110111011011: data_out = 18'h00132; 13'b0110111011100: data_out = 18'h3feca; 13'b0110111011101: data_out = 18'h3fff8; 13'b0110111011110: data_out = 18'h001e2; 13'b0110111011111: data_out = 18'h3fdd6; 13'b0110111100000: data_out = 18'h000c0; 13'b0110111100001: data_out = 18'h00100; 13'b0110111100010: data_out = 18'h3ff10; 13'b0110111100011: data_out = 18'h0007c; 13'b0110111100100: data_out = 18'h3ff2e; 13'b0110111100101: data_out = 18'h0004e; 13'b0110111100110: data_out = 18'h3ff9c; 13'b0110111100111: data_out = 18'h000fc; 13'b0110111101000: data_out = 18'h3fe28; 13'b0110111101001: data_out = 18'h00056; 13'b0110111101010: data_out = 18'h0009a; 13'b0110111101011: data_out = 18'h3fdda; 13'b0110111101100: data_out = 18'h0013c; 13'b0110111101101: data_out = 18'h00150; 13'b0110111101110: data_out = 18'h3fe2e; 13'b0110111101111: data_out = 18'h0000e; 13'b0110111110000: data_out = 18'h3fec8; 13'b0110111110001: data_out = 18'h002c6; 13'b0110111110010: data_out = 18'h3fd20; 13'b0110111110011: data_out = 18'h002c8; 13'b0110111110100: data_out = 18'h3fc18; 13'b0110111110101: data_out = 18'h004e2; 13'b0110111110110: data_out = 18'h3fdf6; 13'b0110111110111: data_out = 18'h3fee4; 13'b0110111111000: data_out = 18'h0027e; 13'b0110111111001: data_out = 18'h3fdca; 13'b0110111111010: data_out = 18'h002ec; 13'b0110111111011: data_out = 18'h3ff22; 13'b0110111111100: data_out = 18'h3fea2; 13'b0110111111101: data_out = 18'h000c4; 13'b0110111111110: data_out = 18'h00120; 13'b0110111111111: data_out = 18'h3fde2; 13'b0111000000000: data_out = 18'h000e0; 13'b0111000000001: data_out = 18'h00170; 13'b0111000000010: data_out = 18'h3fcf4; 13'b0111000000011: data_out = 18'h000e4; 13'b0111000000100: data_out = 18'h001a6; 13'b0111000000101: data_out = 18'h3feaa; 13'b0111000000110: data_out = 18'h3ff76; 13'b0111000000111: data_out = 18'h001da; 13'b0111000001000: data_out = 18'h3feca; 13'b0111000001001: data_out = 18'h001a6; 13'b0111000001010: data_out = 18'h3fdd8; 13'b0111000001011: data_out = 18'h0006a; 13'b0111000001100: data_out = 18'h0024c; 13'b0111000001101: data_out = 18'h3fe98; 13'b0111000001110: data_out = 18'h3ffc0; 13'b0111000001111: data_out = 18'h3ffc6; 13'b0111000010000: data_out = 18'h00056; 13'b0111000010001: data_out = 18'h00154; 13'b0111000010010: data_out = 18'h3fe6a; 13'b0111000010011: data_out = 18'h000d0; 13'b0111000010100: data_out = 18'h00010; 13'b0111000010101: data_out = 18'h3fe3e; 13'b0111000010110: data_out = 18'h00100; 13'b0111000010111: data_out = 18'h3fef2; 13'b0111000011000: data_out = 18'h00206; 13'b0111000011001: data_out = 18'h0007c; 13'b0111000011010: data_out = 18'h3fe52; 13'b0111000011011: data_out = 18'h00000; 13'b0111000011100: data_out = 18'h3fd36; 13'b0111000011101: data_out = 18'h0036a; 13'b0111000011110: data_out = 18'h3ff2c; 13'b0111000011111: data_out = 18'h0018e; 13'b0111000100000: data_out = 18'h3fe26; 13'b0111000100001: data_out = 18'h00046; 13'b0111000100010: data_out = 18'h3ffc4; 13'b0111000100011: data_out = 18'h3ff6c; 13'b0111000100100: data_out = 18'h0018a; 13'b0111000100101: data_out = 18'h0017c; 13'b0111000100110: data_out = 18'h3fdbe; 13'b0111000100111: data_out = 18'h3fd74; 13'b0111000101000: data_out = 18'h00474; 13'b0111000101001: data_out = 18'h0004e; 13'b0111000101010: data_out = 18'h3fddc; 13'b0111000101011: data_out = 18'h3ff22; 13'b0111000101100: data_out = 18'h002f0; 13'b0111000101101: data_out = 18'h3fc48; 13'b0111000101110: data_out = 18'h3feb4; 13'b0111000101111: data_out = 18'h00500; 13'b0111000110000: data_out = 18'h0011e; 13'b0111000110001: data_out = 18'h3fc78; 13'b0111000110010: data_out = 18'h3fed4; 13'b0111000110011: data_out = 18'h002ce; 13'b0111000110100: data_out = 18'h3fc7e; 13'b0111000110101: data_out = 18'h00276; 13'b0111000110110: data_out = 18'h00080; 13'b0111000110111: data_out = 18'h3ff0e; 13'b0111000111000: data_out = 18'h0002e; 13'b0111000111001: data_out = 18'h0000e; 13'b0111000111010: data_out = 18'h3fda0; 13'b0111000111011: data_out = 18'h00588; 13'b0111000111100: data_out = 18'h3ff38; 13'b0111000111101: data_out = 18'h3fe0e; 13'b0111000111110: data_out = 18'h3fd0a; 13'b0111000111111: data_out = 18'h00408; 13'b0111001000000: data_out = 18'h3fff4; 13'b0111001000001: data_out = 18'h3fe0c; 13'b0111001000010: data_out = 18'h001f2; 13'b0111001000011: data_out = 18'h0016a; 13'b0111001000100: data_out = 18'h3fc36; 13'b0111001000101: data_out = 18'h0002a; 13'b0111001000110: data_out = 18'h00122; 13'b0111001000111: data_out = 18'h00020; 13'b0111001001000: data_out = 18'h3ffda; 13'b0111001001001: data_out = 18'h000aa; 13'b0111001001010: data_out = 18'h3fdf8; 13'b0111001001011: data_out = 18'h3fed8; 13'b0111001001100: data_out = 18'h0049a; 13'b0111001001101: data_out = 18'h3ffc6; 13'b0111001001110: data_out = 18'h3fd5c; 13'b0111001001111: data_out = 18'h0029c; 13'b0111001010000: data_out = 18'h3fede; 13'b0111001010001: data_out = 18'h3fef6; 13'b0111001010010: data_out = 18'h00126; 13'b0111001010011: data_out = 18'h000ce; 13'b0111001010100: data_out = 18'h3fd76; 13'b0111001010101: data_out = 18'h000fc; 13'b0111001010110: data_out = 18'h3ffa0; 13'b0111001010111: data_out = 18'h00022; 13'b0111001011000: data_out = 18'h3ff08; 13'b0111001011001: data_out = 18'h00216; 13'b0111001011010: data_out = 18'h3fdfa; 13'b0111001011011: data_out = 18'h00226; 13'b0111001011100: data_out = 18'h3fcb4; 13'b0111001011101: data_out = 18'h001c6; 13'b0111001011110: data_out = 18'h3ff60; 13'b0111001011111: data_out = 18'h001b2; 13'b0111001100000: data_out = 18'h3fe9c; 13'b0111001100001: data_out = 18'h3fd78; 13'b0111001100010: data_out = 18'h0044c; 13'b0111001100011: data_out = 18'h3fe48; 13'b0111001100100: data_out = 18'h3fe50; 13'b0111001100101: data_out = 18'h001cc; 13'b0111001100110: data_out = 18'h00266; 13'b0111001100111: data_out = 18'h3fcc4; 13'b0111001101000: data_out = 18'h000f0; 13'b0111001101001: data_out = 18'h0002a; 13'b0111001101010: data_out = 18'h002e6; 13'b0111001101011: data_out = 18'h3fdec; 13'b0111001101100: data_out = 18'h3ff86; 13'b0111001101101: data_out = 18'h3fff0; 13'b0111001101110: data_out = 18'h3ff24; 13'b0111001101111: data_out = 18'h002fa; 13'b0111001110000: data_out = 18'h3fe4c; 13'b0111001110001: data_out = 18'h000c8; 13'b0111001110010: data_out = 18'h3fe98; 13'b0111001110011: data_out = 18'h3ffb0; 13'b0111001110100: data_out = 18'h00238; 13'b0111001110101: data_out = 18'h3fc76; 13'b0111001110110: data_out = 18'h002a6; 13'b0111001110111: data_out = 18'h000ba; 13'b0111001111000: data_out = 18'h3fe98; 13'b0111001111001: data_out = 18'h3ffc0; 13'b0111001111010: data_out = 18'h0019a; 13'b0111001111011: data_out = 18'h3fe16; 13'b0111001111100: data_out = 18'h000a2; 13'b0111001111101: data_out = 18'h00110; 13'b0111001111110: data_out = 18'h3fd70; 13'b0111001111111: data_out = 18'h00000; 13'b0111010000000: data_out = 18'h0027a; 13'b0111010000001: data_out = 18'h3feb6; 13'b0111010000010: data_out = 18'h3ff70; 13'b0111010000011: data_out = 18'h3ffa4; 13'b0111010000100: data_out = 18'h0023c; 13'b0111010000101: data_out = 18'h0000e; 13'b0111010000110: data_out = 18'h3fc3c; 13'b0111010000111: data_out = 18'h0023c; 13'b0111010001000: data_out = 18'h00194; 13'b0111010001001: data_out = 18'h3fe40; 13'b0111010001010: data_out = 18'h3fffc; 13'b0111010001011: data_out = 18'h3fea4; 13'b0111010001100: data_out = 18'h00226; 13'b0111010001101: data_out = 18'h3fe8e; 13'b0111010001110: data_out = 18'h000f6; 13'b0111010001111: data_out = 18'h00034; 13'b0111010010000: data_out = 18'h00028; 13'b0111010010001: data_out = 18'h3fe3e; 13'b0111010010010: data_out = 18'h00384; 13'b0111010010011: data_out = 18'h3fcd0; 13'b0111010010100: data_out = 18'h00120; 13'b0111010010101: data_out = 18'h001e2; 13'b0111010010110: data_out = 18'h3fe8c; 13'b0111010010111: data_out = 18'h000e8; 13'b0111010011000: data_out = 18'h3fda8; 13'b0111010011001: data_out = 18'h00290; 13'b0111010011010: data_out = 18'h00058; 13'b0111010011011: data_out = 18'h3ffc6; 13'b0111010011100: data_out = 18'h3ff0c; 13'b0111010011101: data_out = 18'h3fe20; 13'b0111010011110: data_out = 18'h00136; 13'b0111010011111: data_out = 18'h3fff6; 13'b0111010100000: data_out = 18'h3ff2c; 13'b0111010100001: data_out = 18'h0018e; 13'b0111010100010: data_out = 18'h3ffec; 13'b0111010100011: data_out = 18'h3ff24; 13'b0111010100100: data_out = 18'h00000; 13'b0111010100101: data_out = 18'h3ff02; 13'b0111010100110: data_out = 18'h0016e; 13'b0111010100111: data_out = 18'h000e2; 13'b0111010101000: data_out = 18'h0001a; 13'b0111010101001: data_out = 18'h3fce4; 13'b0111010101010: data_out = 18'h000fa; 13'b0111010101011: data_out = 18'h001e6; 13'b0111010101100: data_out = 18'h3ff8a; 13'b0111010101101: data_out = 18'h3fede; 13'b0111010101110: data_out = 18'h002ca; 13'b0111010101111: data_out = 18'h3fd5c; 13'b0111010110000: data_out = 18'h3fe12; 13'b0111010110001: data_out = 18'h0041e; 13'b0111010110010: data_out = 18'h3fe36; 13'b0111010110011: data_out = 18'h3ff54; 13'b0111010110100: data_out = 18'h002f6; 13'b0111010110101: data_out = 18'h3fdd4; 13'b0111010110110: data_out = 18'h3ff84; 13'b0111010110111: data_out = 18'h00122; 13'b0111010111000: data_out = 18'h0009e; 13'b0111010111001: data_out = 18'h3ff02; 13'b0111010111010: data_out = 18'h0006c; 13'b0111010111011: data_out = 18'h3fde2; 13'b0111010111100: data_out = 18'h00194; 13'b0111010111101: data_out = 18'h00116; 13'b0111010111110: data_out = 18'h3feb8; 13'b0111010111111: data_out = 18'h0015a; 13'b0111011000000: data_out = 18'h3ff24; 13'b0111011000001: data_out = 18'h3febe; 13'b0111011000010: data_out = 18'h3ffbc; 13'b0111011000011: data_out = 18'h00084; 13'b0111011000100: data_out = 18'h0000e; 13'b0111011000101: data_out = 18'h0021a; 13'b0111011000110: data_out = 18'h3fc1c; 13'b0111011000111: data_out = 18'h002ca; 13'b0111011001000: data_out = 18'h3fec0; 13'b0111011001001: data_out = 18'h0011c; 13'b0111011001010: data_out = 18'h3ffb8; 13'b0111011001011: data_out = 18'h00110; 13'b0111011001100: data_out = 18'h3fed0; 13'b0111011001101: data_out = 18'h3ff34; 13'b0111011001110: data_out = 18'h001ba; 13'b0111011001111: data_out = 18'h3fdac; 13'b0111011010000: data_out = 18'h002b6; 13'b0111011010001: data_out = 18'h00118; 13'b0111011010010: data_out = 18'h3fdf4; 13'b0111011010011: data_out = 18'h000d2; 13'b0111011010100: data_out = 18'h3ff84; 13'b0111011010101: data_out = 18'h3fcf6; 13'b0111011010110: data_out = 18'h002e4; 13'b0111011010111: data_out = 18'h000e6; 13'b0111011011000: data_out = 18'h3fe40; 13'b0111011011001: data_out = 18'h3fe9a; 13'b0111011011010: data_out = 18'h0022a; 13'b0111011011011: data_out = 18'h3fdae; 13'b0111011011100: data_out = 18'h0023e; 13'b0111011011101: data_out = 18'h0014a; 13'b0111011011110: data_out = 18'h3fe00; 13'b0111011011111: data_out = 18'h00240; 13'b0111011100000: data_out = 18'h3fdf0; 13'b0111011100001: data_out = 18'h00096; 13'b0111011100010: data_out = 18'h0013e; 13'b0111011100011: data_out = 18'h3fbae; 13'b0111011100100: data_out = 18'h0044e; 13'b0111011100101: data_out = 18'h3fe08; 13'b0111011100110: data_out = 18'h00214; 13'b0111011100111: data_out = 18'h0001a; 13'b0111011101000: data_out = 18'h3fe46; 13'b0111011101001: data_out = 18'h3ffb2; 13'b0111011101010: data_out = 18'h3ff60; 13'b0111011101011: data_out = 18'h3fffc; 13'b0111011101100: data_out = 18'h3ff90; 13'b0111011101101: data_out = 18'h0023e; 13'b0111011101110: data_out = 18'h0000c; 13'b0111011101111: data_out = 18'h3fed6; 13'b0111011110000: data_out = 18'h000e6; 13'b0111011110001: data_out = 18'h3fea8; 13'b0111011110010: data_out = 18'h3fc92; 13'b0111011110011: data_out = 18'h004d2; 13'b0111011110100: data_out = 18'h3fe50; 13'b0111011110101: data_out = 18'h000da; 13'b0111011110110: data_out = 18'h3ff60; 13'b0111011110111: data_out = 18'h3ff5c; 13'b0111011111000: data_out = 18'h000c8; 13'b0111011111001: data_out = 18'h0011c; 13'b0111011111010: data_out = 18'h000ac; 13'b0111011111011: data_out = 18'h3ff9a; 13'b0111011111100: data_out = 18'h3fe62; 13'b0111011111101: data_out = 18'h00230; 13'b0111011111110: data_out = 18'h3ff0c; 13'b0111011111111: data_out = 18'h0006a; 13'b0111100000000: data_out = 18'h3ffdc; 13'b0111100000001: data_out = 18'h0003c; 13'b0111100000010: data_out = 18'h3fe1c; 13'b0111100000011: data_out = 18'h000fa; 13'b0111100000100: data_out = 18'h001ba; 13'b0111100000101: data_out = 18'h3fc7a; 13'b0111100000110: data_out = 18'h002b0; 13'b0111100000111: data_out = 18'h0002c; 13'b0111100001000: data_out = 18'h3fd8e; 13'b0111100001001: data_out = 18'h00124; 13'b0111100001010: data_out = 18'h0006e; 13'b0111100001011: data_out = 18'h3ff74; 13'b0111100001100: data_out = 18'h00316; 13'b0111100001101: data_out = 18'h3faf4; 13'b0111100001110: data_out = 18'h001f6; 13'b0111100001111: data_out = 18'h0003e; 13'b0111100010000: data_out = 18'h0002c; 13'b0111100010001: data_out = 18'h001d6; 13'b0111100010010: data_out = 18'h3fc86; 13'b0111100010011: data_out = 18'h0017e; 13'b0111100010100: data_out = 18'h3ff50; 13'b0111100010101: data_out = 18'h000e4; 13'b0111100010110: data_out = 18'h3ffac; 13'b0111100010111: data_out = 18'h00262; 13'b0111100011000: data_out = 18'h3ff5a; 13'b0111100011001: data_out = 18'h3fe5a; 13'b0111100011010: data_out = 18'h3ff1a; 13'b0111100011011: data_out = 18'h000f4; 13'b0111100011100: data_out = 18'h000d6; 13'b0111100011101: data_out = 18'h3ffae; 13'b0111100011110: data_out = 18'h3fdac; 13'b0111100011111: data_out = 18'h0012e; 13'b0111100100000: data_out = 18'h00000; 13'b0111100100001: data_out = 18'h3ff76; 13'b0111100100010: data_out = 18'h00190; 13'b0111100100011: data_out = 18'h3ff76; 13'b0111100100100: data_out = 18'h3ffc0; 13'b0111100100101: data_out = 18'h3feec; 13'b0111100100110: data_out = 18'h00148; 13'b0111100100111: data_out = 18'h0006c; 13'b0111100101000: data_out = 18'h3ff34; 13'b0111100101001: data_out = 18'h002c0; 13'b0111100101010: data_out = 18'h3ffb2; 13'b0111100101011: data_out = 18'h3fd98; 13'b0111100101100: data_out = 18'h000a0; 13'b0111100101101: data_out = 18'h00172; 13'b0111100101110: data_out = 18'h3ffbc; 13'b0111100101111: data_out = 18'h3fda6; 13'b0111100110000: data_out = 18'h00088; 13'b0111100110001: data_out = 18'h0006a; 13'b0111100110010: data_out = 18'h3ff80; 13'b0111100110011: data_out = 18'h00244; 13'b0111100110100: data_out = 18'h3fe90; 13'b0111100110101: data_out = 18'h3ff6a; 13'b0111100110110: data_out = 18'h0027a; 13'b0111100110111: data_out = 18'h3fca6; 13'b0111100111000: data_out = 18'h3ff12; 13'b0111100111001: data_out = 18'h00358; 13'b0111100111010: data_out = 18'h3ffca; 13'b0111100111011: data_out = 18'h3fc70; 13'b0111100111100: data_out = 18'h002f6; 13'b0111100111101: data_out = 18'h0000a; 13'b0111100111110: data_out = 18'h3fec4; 13'b0111100111111: data_out = 18'h00114; 13'b0111101000000: data_out = 18'h000fc; 13'b0111101000001: data_out = 18'h3fd78; 13'b0111101000010: data_out = 18'h001d4; 13'b0111101000011: data_out = 18'h00140; 13'b0111101000100: data_out = 18'h3fece; 13'b0111101000101: data_out = 18'h3feaa; 13'b0111101000110: data_out = 18'h002dc; 13'b0111101000111: data_out = 18'h3ff36; 13'b0111101001000: data_out = 18'h3ffa0; 13'b0111101001001: data_out = 18'h3ff86; 13'b0111101001010: data_out = 18'h00064; 13'b0111101001011: data_out = 18'h3fdb0; 13'b0111101001100: data_out = 18'h00216; 13'b0111101001101: data_out = 18'h3fea0; 13'b0111101001110: data_out = 18'h3fed8; 13'b0111101001111: data_out = 18'h001ce; 13'b0111101010000: data_out = 18'h00166; 13'b0111101010001: data_out = 18'h3fdc0; 13'b0111101010010: data_out = 18'h3fee8; 13'b0111101010011: data_out = 18'h00430; 13'b0111101010100: data_out = 18'h3fe50; 13'b0111101010101: data_out = 18'h000ec; 13'b0111101010110: data_out = 18'h00012; 13'b0111101010111: data_out = 18'h3fd56; 13'b0111101011000: data_out = 18'h00260; 13'b0111101011001: data_out = 18'h3ff96; 13'b0111101011010: data_out = 18'h3fe02; 13'b0111101011011: data_out = 18'h001f0; 13'b0111101011100: data_out = 18'h3feae; 13'b0111101011101: data_out = 18'h0035a; 13'b0111101011110: data_out = 18'h3fbfa; 13'b0111101011111: data_out = 18'h0004e; 13'b0111101100000: data_out = 18'h00286; 13'b0111101100001: data_out = 18'h3fe20; 13'b0111101100010: data_out = 18'h0000a; 13'b0111101100011: data_out = 18'h3ffd2; 13'b0111101100100: data_out = 18'h0007e; 13'b0111101100101: data_out = 18'h3ffbc; 13'b0111101100110: data_out = 18'h0007c; 13'b0111101100111: data_out = 18'h3fe8a; 13'b0111101101000: data_out = 18'h3feb8; 13'b0111101101001: data_out = 18'h00238; 13'b0111101101010: data_out = 18'h3fdd6; 13'b0111101101011: data_out = 18'h00222; 13'b0111101101100: data_out = 18'h000e0; 13'b0111101101101: data_out = 18'h3feb2; 13'b0111101101110: data_out = 18'h00092; 13'b0111101101111: data_out = 18'h3ff8a; 13'b0111101110000: data_out = 18'h0035a; 13'b0111101110001: data_out = 18'h00024; 13'b0111101110010: data_out = 18'h3fd90; 13'b0111101110011: data_out = 18'h00274; 13'b0111101110100: data_out = 18'h3fdac; 13'b0111101110101: data_out = 18'h3fefc; 13'b0111101110110: data_out = 18'h00316; 13'b0111101110111: data_out = 18'h3ff26; 13'b0111101111000: data_out = 18'h3fec6; 13'b0111101111001: data_out = 18'h00036; 13'b0111101111010: data_out = 18'h3fdf2; 13'b0111101111011: data_out = 18'h00054; 13'b0111101111100: data_out = 18'h00126; 13'b0111101111101: data_out = 18'h00208; 13'b0111101111110: data_out = 18'h3fc1e; 13'b0111101111111: data_out = 18'h0027a; 13'b0111110000000: data_out = 18'h0002a; 13'b0111110000001: data_out = 18'h3fdfe; 13'b0111110000010: data_out = 18'h00106; 13'b0111110000011: data_out = 18'h0020a; 13'b0111110000100: data_out = 18'h3fd04; 13'b0111110000101: data_out = 18'h3ff62; 13'b0111110000110: data_out = 18'h0006a; 13'b0111110000111: data_out = 18'h00122; 13'b0111110001000: data_out = 18'h3fe82; 13'b0111110001001: data_out = 18'h003da; 13'b0111110001010: data_out = 18'h3fc8c; 13'b0111110001011: data_out = 18'h3ff30; 13'b0111110001100: data_out = 18'h00350; 13'b0111110001101: data_out = 18'h3fe66; 13'b0111110001110: data_out = 18'h000f4; 13'b0111110001111: data_out = 18'h00012; 13'b0111110010000: data_out = 18'h3fd96; 13'b0111110010001: data_out = 18'h00068; 13'b0111110010010: data_out = 18'h000f2; 13'b0111110010011: data_out = 18'h00162; 13'b0111110010100: data_out = 18'h3fd6c; 13'b0111110010101: data_out = 18'h0025e; 13'b0111110010110: data_out = 18'h3fdf4; 13'b0111110010111: data_out = 18'h0011c; 13'b0111110011000: data_out = 18'h3ff4a; 13'b0111110011001: data_out = 18'h000fa; 13'b0111110011010: data_out = 18'h000ca; 13'b0111110011011: data_out = 18'h00090; 13'b0111110011100: data_out = 18'h3ffae; 13'b0111110011101: data_out = 18'h3fd8e; 13'b0111110011110: data_out = 18'h003f2; 13'b0111110011111: data_out = 18'h00008; 13'b0111110100000: data_out = 18'h3fc8e; 13'b0111110100001: data_out = 18'h000a0; 13'b0111110100010: data_out = 18'h002a6; 13'b0111110100011: data_out = 18'h3fc68; 13'b0111110100100: data_out = 18'h3ff12; 13'b0111110100101: data_out = 18'h002a2; 13'b0111110100110: data_out = 18'h3ff72; 13'b0111110100111: data_out = 18'h3ffe2; 13'b0111110101000: data_out = 18'h3ffd4; 13'b0111110101001: data_out = 18'h0000e; 13'b0111110101010: data_out = 18'h3ff8c; 13'b0111110101011: data_out = 18'h002b8; 13'b0111110101100: data_out = 18'h3ff2a; 13'b0111110101101: data_out = 18'h3fc10; 13'b0111110101110: data_out = 18'h0030a; 13'b0111110101111: data_out = 18'h3ffb2; 13'b0111110110000: data_out = 18'h3ff38; 13'b0111110110001: data_out = 18'h3ffb6; 13'b0111110110010: data_out = 18'h00348; 13'b0111110110011: data_out = 18'h3fcae; 13'b0111110110100: data_out = 18'h3fe74; 13'b0111110110101: data_out = 18'h002f4; 13'b0111110110110: data_out = 18'h3ff28; 13'b0111110110111: data_out = 18'h00094; 13'b0111110111000: data_out = 18'h0017a; 13'b0111110111001: data_out = 18'h3fdee; 13'b0111110111010: data_out = 18'h001b8; 13'b0111110111011: data_out = 18'h3ffac; 13'b0111110111100: data_out = 18'h3fe02; 13'b0111110111101: data_out = 18'h00146; 13'b0111110111110: data_out = 18'h3ffc4; 13'b0111110111111: data_out = 18'h3feb8; 13'b0111111000000: data_out = 18'h00154; 13'b0111111000001: data_out = 18'h3ff5c; 13'b0111111000010: data_out = 18'h000c8; 13'b0111111000011: data_out = 18'h3fe36; 13'b0111111000100: data_out = 18'h00046; 13'b0111111000101: data_out = 18'h00226; 13'b0111111000110: data_out = 18'h000ee; 13'b0111111000111: data_out = 18'h3fc8e; 13'b0111111001000: data_out = 18'h0008a; 13'b0111111001001: data_out = 18'h001ee; 13'b0111111001010: data_out = 18'h00042; 13'b0111111001011: data_out = 18'h0005e; 13'b0111111001100: data_out = 18'h3fd10; 13'b0111111001101: data_out = 18'h001ac; 13'b0111111001110: data_out = 18'h00104; 13'b0111111001111: data_out = 18'h3ff1a; 13'b0111111010000: data_out = 18'h3feba; 13'b0111111010001: data_out = 18'h00188; 13'b0111111010010: data_out = 18'h0025c; 13'b0111111010011: data_out = 18'h3fb36; 13'b0111111010100: data_out = 18'h0007c; 13'b0111111010101: data_out = 18'h004bc; 13'b0111111010110: data_out = 18'h3feae; 13'b0111111010111: data_out = 18'h3fdd4; 13'b0111111011000: data_out = 18'h000b8; 13'b0111111011001: data_out = 18'h3fe4c; 13'b0111111011010: data_out = 18'h002c8; 13'b0111111011011: data_out = 18'h3fe4a; 13'b0111111011100: data_out = 18'h00028; 13'b0111111011101: data_out = 18'h00164; 13'b0111111011110: data_out = 18'h3fd8c; 13'b0111111011111: data_out = 18'h3ff62; 13'b0111111100000: data_out = 18'h0004e; 13'b0111111100001: data_out = 18'h0018e; 13'b0111111100010: data_out = 18'h000f8; 13'b0111111100011: data_out = 18'h3fd30; 13'b0111111100100: data_out = 18'h00204; 13'b0111111100101: data_out = 18'h3fff4; 13'b0111111100110: data_out = 18'h3ff2e; 13'b0111111100111: data_out = 18'h00132; 13'b0111111101000: data_out = 18'h3ffee; 13'b0111111101001: data_out = 18'h000f8; 13'b0111111101010: data_out = 18'h3fcb8; 13'b0111111101011: data_out = 18'h000e0; 13'b0111111101100: data_out = 18'h00066; 13'b0111111101101: data_out = 18'h001b0; 13'b0111111101110: data_out = 18'h3fde0; 13'b0111111101111: data_out = 18'h3ffde; 13'b0111111110000: data_out = 18'h0005c; 13'b0111111110001: data_out = 18'h0020e; 13'b0111111110010: data_out = 18'h3fdea; 13'b0111111110011: data_out = 18'h0007a; 13'b0111111110100: data_out = 18'h00264; 13'b0111111110101: data_out = 18'h3ff60; 13'b0111111110110: data_out = 18'h3fc5a; 13'b0111111110111: data_out = 18'h0017a; 13'b0111111111000: data_out = 18'h001d8; 13'b0111111111001: data_out = 18'h3ff7a; 13'b0111111111010: data_out = 18'h3fe6c; 13'b0111111111011: data_out = 18'h0008a; 13'b0111111111100: data_out = 18'h3ffa6; 13'b0111111111101: data_out = 18'h00066; 13'b0111111111110: data_out = 18'h0016e; 13'b0111111111111: data_out = 18'h3fdfc; 13'b1000000000000: data_out = 18'h000d8; 13'b1000000000001: data_out = 18'h001a8; 13'b1000000000010: data_out = 18'h3fccc; 13'b1000000000011: data_out = 18'h000f2; 13'b1000000000100: data_out = 18'h003b0; 13'b1000000000101: data_out = 18'h3fe82; 13'b1000000000110: data_out = 18'h3fdc2; 13'b1000000000111: data_out = 18'h001fc; 13'b1000000001000: data_out = 18'h3fefa; 13'b1000000001001: data_out = 18'h3ff20; 13'b1000000001010: data_out = 18'h0009c; 13'b1000000001011: data_out = 18'h3ff42; 13'b1000000001100: data_out = 18'h0007a; 13'b1000000001101: data_out = 18'h3fff2; 13'b1000000001110: data_out = 18'h3ff06; 13'b1000000001111: data_out = 18'h0011e; 13'b1000000010000: data_out = 18'h00198; 13'b1000000010001: data_out = 18'h3fd5a; 13'b1000000010010: data_out = 18'h000bc; 13'b1000000010011: data_out = 18'h00130; 13'b1000000010100: data_out = 18'h3ffa2; 13'b1000000010101: data_out = 18'h3fec2; 13'b1000000010110: data_out = 18'h000a2; 13'b1000000010111: data_out = 18'h002b6; 13'b1000000011000: data_out = 18'h3fc42; 13'b1000000011001: data_out = 18'h3fee6; 13'b1000000011010: data_out = 18'h0020a; 13'b1000000011011: data_out = 18'h00212; 13'b1000000011100: data_out = 18'h3ff0c; 13'b1000000011101: data_out = 18'h3fe22; 13'b1000000011110: data_out = 18'h001fc; 13'b1000000011111: data_out = 18'h00112; 13'b1000000100000: data_out = 18'h3fca0; 13'b1000000100001: data_out = 18'h001e8; 13'b1000000100010: data_out = 18'h00026; 13'b1000000100011: data_out = 18'h3feb2; 13'b1000000100100: data_out = 18'h001a4; 13'b1000000100101: data_out = 18'h3fee6; 13'b1000000100110: data_out = 18'h3fe8e; 13'b1000000100111: data_out = 18'h0015e; 13'b1000000101000: data_out = 18'h00080; 13'b1000000101001: data_out = 18'h3fee0; 13'b1000000101010: data_out = 18'h00002; 13'b1000000101011: data_out = 18'h000f0; 13'b1000000101100: data_out = 18'h3fed2; 13'b1000000101101: data_out = 18'h001dc; 13'b1000000101110: data_out = 18'h3ff90; 13'b1000000101111: data_out = 18'h0007a; 13'b1000000110000: data_out = 18'h0002c; 13'b1000000110001: data_out = 18'h3ffa4; 13'b1000000110010: data_out = 18'h3fea2; 13'b1000000110011: data_out = 18'h00042; 13'b1000000110100: data_out = 18'h3ff68; 13'b1000000110101: data_out = 18'h002fe; 13'b1000000110110: data_out = 18'h3fc40; 13'b1000000110111: data_out = 18'h0029c; 13'b1000000111000: data_out = 18'h3ff90; 13'b1000000111001: data_out = 18'h3fd36; 13'b1000000111010: data_out = 18'h003ee; 13'b1000000111011: data_out = 18'h3fde0; 13'b1000000111100: data_out = 18'h00190; 13'b1000000111101: data_out = 18'h3fda6; 13'b1000000111110: data_out = 18'h00256; 13'b1000000111111: data_out = 18'h3ffae; 13'b1000001000000: data_out = 18'h00014; 13'b1000001000001: data_out = 18'h3fd8c; 13'b1000001000010: data_out = 18'h00290; 13'b1000001000011: data_out = 18'h0015e; 13'b1000001000100: data_out = 18'h3fccc; 13'b1000001000101: data_out = 18'h3fe18; 13'b1000001000110: data_out = 18'h005f2; 13'b1000001000111: data_out = 18'h3ff26; 13'b1000001001000: data_out = 18'h3fd22; 13'b1000001001001: data_out = 18'h3ff7c; 13'b1000001001010: data_out = 18'h00318; 13'b1000001001011: data_out = 18'h3fdbe; 13'b1000001001100: data_out = 18'h0017e; 13'b1000001001101: data_out = 18'h00096; 13'b1000001001110: data_out = 18'h3fd5e; 13'b1000001001111: data_out = 18'h3ffa0; 13'b1000001010000: data_out = 18'h0023c; 13'b1000001010001: data_out = 18'h3fd04; 13'b1000001010010: data_out = 18'h000b0; 13'b1000001010011: data_out = 18'h0020c; 13'b1000001010100: data_out = 18'h3ff6c; 13'b1000001010101: data_out = 18'h3fc96; 13'b1000001010110: data_out = 18'h003b6; 13'b1000001010111: data_out = 18'h3ffb2; 13'b1000001011000: data_out = 18'h3fe1e; 13'b1000001011001: data_out = 18'h00380; 13'b1000001011010: data_out = 18'h00000; 13'b1000001011011: data_out = 18'h3fcfc; 13'b1000001011100: data_out = 18'h00140; 13'b1000001011101: data_out = 18'h002e6; 13'b1000001011110: data_out = 18'h3fc8e; 13'b1000001011111: data_out = 18'h0029a; 13'b1000001100000: data_out = 18'h3fd78; 13'b1000001100001: data_out = 18'h001d8; 13'b1000001100010: data_out = 18'h3febc; 13'b1000001100011: data_out = 18'h00084; 13'b1000001100100: data_out = 18'h000ba; 13'b1000001100101: data_out = 18'h3fe84; 13'b1000001100110: data_out = 18'h0007c; 13'b1000001100111: data_out = 18'h3fef0; 13'b1000001101000: data_out = 18'h00186; 13'b1000001101001: data_out = 18'h3ff1a; 13'b1000001101010: data_out = 18'h0016a; 13'b1000001101011: data_out = 18'h3fe54; 13'b1000001101100: data_out = 18'h3fdae; 13'b1000001101101: data_out = 18'h00090; 13'b1000001101110: data_out = 18'h002dc; 13'b1000001101111: data_out = 18'h3fd10; 13'b1000001110000: data_out = 18'h00164; 13'b1000001110001: data_out = 18'h00044; 13'b1000001110010: data_out = 18'h000d2; 13'b1000001110011: data_out = 18'h3ff7c; 13'b1000001110100: data_out = 18'h001ac; 13'b1000001110101: data_out = 18'h3fe3c; 13'b1000001110110: data_out = 18'h0031c; 13'b1000001110111: data_out = 18'h3fe34; 13'b1000001111000: data_out = 18'h3fde4; 13'b1000001111001: data_out = 18'h00176; 13'b1000001111010: data_out = 18'h00204; 13'b1000001111011: data_out = 18'h3fe76; 13'b1000001111100: data_out = 18'h000bc; 13'b1000001111101: data_out = 18'h3fe88; 13'b1000001111110: data_out = 18'h3fe38; 13'b1000001111111: data_out = 18'h00292; 13'b1000010000000: data_out = 18'h3fe00; 13'b1000010000001: data_out = 18'h0011c; 13'b1000010000010: data_out = 18'h3ffc2; 13'b1000010000011: data_out = 18'h3fe10; 13'b1000010000100: data_out = 18'h0035a; 13'b1000010000101: data_out = 18'h3ffa6; 13'b1000010000110: data_out = 18'h00000; 13'b1000010000111: data_out = 18'h3ff56; 13'b1000010001000: data_out = 18'h00138; 13'b1000010001001: data_out = 18'h3fe30; 13'b1000010001010: data_out = 18'h3ffec; 13'b1000010001011: data_out = 18'h000f0; 13'b1000010001100: data_out = 18'h0016c; 13'b1000010001101: data_out = 18'h3fca2; 13'b1000010001110: data_out = 18'h0017a; 13'b1000010001111: data_out = 18'h0023a; 13'b1000010010000: data_out = 18'h3fecc; 13'b1000010010001: data_out = 18'h3fe78; 13'b1000010010010: data_out = 18'h0020c; 13'b1000010010011: data_out = 18'h3fef4; 13'b1000010010100: data_out = 18'h3fef6; 13'b1000010010101: data_out = 18'h001f8; 13'b1000010010110: data_out = 18'h3ff70; 13'b1000010010111: data_out = 18'h3fe1a; 13'b1000010011000: data_out = 18'h3fff2; 13'b1000010011001: data_out = 18'h0027c; 13'b1000010011010: data_out = 18'h3fea4; 13'b1000010011011: data_out = 18'h3ff6c; 13'b1000010011100: data_out = 18'h3ff84; 13'b1000010011101: data_out = 18'h00002; 13'b1000010011110: data_out = 18'h00208; 13'b1000010011111: data_out = 18'h3fe7c; 13'b1000010100000: data_out = 18'h3ff78; 13'b1000010100001: data_out = 18'h003a6; 13'b1000010100010: data_out = 18'h3ff94; 13'b1000010100011: data_out = 18'h3fc44; 13'b1000010100100: data_out = 18'h001dc; 13'b1000010100101: data_out = 18'h0016a; 13'b1000010100110: data_out = 18'h3ffd0; 13'b1000010100111: data_out = 18'h3fd8c; 13'b1000010101000: data_out = 18'h0007c; 13'b1000010101001: data_out = 18'h00218; 13'b1000010101010: data_out = 18'h3fca2; 13'b1000010101011: data_out = 18'h000b8; 13'b1000010101100: data_out = 18'h0011a; 13'b1000010101101: data_out = 18'h3ffd8; 13'b1000010101110: data_out = 18'h000ae; 13'b1000010101111: data_out = 18'h3fef8; 13'b1000010110000: data_out = 18'h0012c; 13'b1000010110001: data_out = 18'h3fed6; 13'b1000010110010: data_out = 18'h00124; 13'b1000010110011: data_out = 18'h0011a; 13'b1000010110100: data_out = 18'h3fe0a; 13'b1000010110101: data_out = 18'h00150; 13'b1000010110110: data_out = 18'h3fdf2; 13'b1000010110111: data_out = 18'h00224; 13'b1000010111000: data_out = 18'h3ff64; 13'b1000010111001: data_out = 18'h0003e; 13'b1000010111010: data_out = 18'h3fe0a; 13'b1000010111011: data_out = 18'h00044; 13'b1000010111100: data_out = 18'h00112; 13'b1000010111101: data_out = 18'h0000e; 13'b1000010111110: data_out = 18'h00162; 13'b1000010111111: data_out = 18'h3fd5c; 13'b1000011000000: data_out = 18'h001f2; 13'b1000011000001: data_out = 18'h3ff6e; 13'b1000011000010: data_out = 18'h3ff7c; 13'b1000011000011: data_out = 18'h001ae; 13'b1000011000100: data_out = 18'h3ff4c; 13'b1000011000101: data_out = 18'h00104; 13'b1000011000110: data_out = 18'h3fcac; 13'b1000011000111: data_out = 18'h3fed0; 13'b1000011001000: data_out = 18'h0030a; 13'b1000011001001: data_out = 18'h000c4; 13'b1000011001010: data_out = 18'h3fe6e; 13'b1000011001011: data_out = 18'h3ffb2; 13'b1000011001100: data_out = 18'h0002e; 13'b1000011001101: data_out = 18'h00176; 13'b1000011001110: data_out = 18'h3ffda; 13'b1000011001111: data_out = 18'h3ff6e; 13'b1000011010000: data_out = 18'h000ce; 13'b1000011010001: data_out = 18'h3fdf0; 13'b1000011010010: data_out = 18'h00226; 13'b1000011010011: data_out = 18'h3feec; 13'b1000011010100: data_out = 18'h3ff8c; 13'b1000011010101: data_out = 18'h00186; 13'b1000011010110: data_out = 18'h3ffda; 13'b1000011010111: data_out = 18'h3fe6e; 13'b1000011011000: data_out = 18'h000fc; 13'b1000011011001: data_out = 18'h3ff26; 13'b1000011011010: data_out = 18'h000c8; 13'b1000011011011: data_out = 18'h00082; 13'b1000011011100: data_out = 18'h3fedc; 13'b1000011011101: data_out = 18'h00062; 13'b1000011011110: data_out = 18'h00002; 13'b1000011011111: data_out = 18'h0018c; 13'b1000011100000: data_out = 18'h3ff72; 13'b1000011100001: data_out = 18'h3fde2; 13'b1000011100010: data_out = 18'h0005e; 13'b1000011100011: data_out = 18'h0011e; 13'b1000011100100: data_out = 18'h3fe8a; 13'b1000011100101: data_out = 18'h3feb0; 13'b1000011100110: data_out = 18'h003f4; 13'b1000011100111: data_out = 18'h3ff48; 13'b1000011101000: data_out = 18'h3ff38; 13'b1000011101001: data_out = 18'h3ffd8; 13'b1000011101010: data_out = 18'h000b4; 13'b1000011101011: data_out = 18'h3ff1c; 13'b1000011101100: data_out = 18'h001d4; 13'b1000011101101: data_out = 18'h0005c; 13'b1000011101110: data_out = 18'h3ff16; 13'b1000011101111: data_out = 18'h3fd72; 13'b1000011110000: data_out = 18'h00278; 13'b1000011110001: data_out = 18'h00032; 13'b1000011110010: data_out = 18'h3fe24; 13'b1000011110011: data_out = 18'h000d2; 13'b1000011110100: data_out = 18'h000f4; 13'b1000011110101: data_out = 18'h3ff30; 13'b1000011110110: data_out = 18'h3ff54; 13'b1000011110111: data_out = 18'h0008c; 13'b1000011111000: data_out = 18'h00070; 13'b1000011111001: data_out = 18'h0001e; 13'b1000011111010: data_out = 18'h3fe6c; 13'b1000011111011: data_out = 18'h00334; 13'b1000011111100: data_out = 18'h3fed2; 13'b1000011111101: data_out = 18'h3fe9a; 13'b1000011111110: data_out = 18'h3ff9e; 13'b1000011111111: data_out = 18'h3ff08; 13'b1000100000000: data_out = 18'h001b6; 13'b1000100000001: data_out = 18'h00048; 13'b1000100000010: data_out = 18'h3fca8; 13'b1000100000011: data_out = 18'h00376; 13'b1000100000100: data_out = 18'h3ffb2; 13'b1000100000101: data_out = 18'h3fe2c; 13'b1000100000110: data_out = 18'h0037e; 13'b1000100000111: data_out = 18'h3fe42; 13'b1000100001000: data_out = 18'h00044; 13'b1000100001001: data_out = 18'h3ff2c; 13'b1000100001010: data_out = 18'h0020a; 13'b1000100001011: data_out = 18'h0016a; 13'b1000100001100: data_out = 18'h3fc3e; 13'b1000100001101: data_out = 18'h00104; 13'b1000100001110: data_out = 18'h3fffe; 13'b1000100001111: data_out = 18'h0004a; 13'b1000100010000: data_out = 18'h3ff26; 13'b1000100010001: data_out = 18'h001c2; 13'b1000100010010: data_out = 18'h3ff5e; 13'b1000100010011: data_out = 18'h00038; 13'b1000100010100: data_out = 18'h3fdd8; 13'b1000100010101: data_out = 18'h00178; 13'b1000100010110: data_out = 18'h00088; 13'b1000100010111: data_out = 18'h00088; 13'b1000100011000: data_out = 18'h3fec0; 13'b1000100011001: data_out = 18'h3ff44; 13'b1000100011010: data_out = 18'h0054a; 13'b1000100011011: data_out = 18'h3fac4; 13'b1000100011100: data_out = 18'h00042; 13'b1000100011101: data_out = 18'h000ee; 13'b1000100011110: data_out = 18'h3ff80; 13'b1000100011111: data_out = 18'h0003c; 13'b1000100100000: data_out = 18'h3fdf0; 13'b1000100100001: data_out = 18'h00260; 13'b1000100100010: data_out = 18'h3feb2; 13'b1000100100011: data_out = 18'h00108; 13'b1000100100100: data_out = 18'h3ffaa; 13'b1000100100101: data_out = 18'h0000c; 13'b1000100100110: data_out = 18'h3fe76; 13'b1000100100111: data_out = 18'h001e6; 13'b1000100101000: data_out = 18'h000f4; 13'b1000100101001: data_out = 18'h3fd54; 13'b1000100101010: data_out = 18'h3ff9e; 13'b1000100101011: data_out = 18'h0014e; 13'b1000100101100: data_out = 18'h3ff72; 13'b1000100101101: data_out = 18'h00102; 13'b1000100101110: data_out = 18'h3ffd2; 13'b1000100101111: data_out = 18'h3ff7e; 13'b1000100110000: data_out = 18'h0015a; 13'b1000100110001: data_out = 18'h3fdb2; 13'b1000100110010: data_out = 18'h00180; 13'b1000100110011: data_out = 18'h00128; 13'b1000100110100: data_out = 18'h00096; 13'b1000100110101: data_out = 18'h3ff7e; 13'b1000100110110: data_out = 18'h3ff54; 13'b1000100110111: data_out = 18'h3ffc6; 13'b1000100111000: data_out = 18'h00060; 13'b1000100111001: data_out = 18'h00122; 13'b1000100111010: data_out = 18'h00230; 13'b1000100111011: data_out = 18'h3f99a; 13'b1000100111100: data_out = 18'h000e2; 13'b1000100111101: data_out = 18'h004ca; 13'b1000100111110: data_out = 18'h3fc64; 13'b1000100111111: data_out = 18'h3ffb0; 13'b1000101000000: data_out = 18'h00280; 13'b1000101000001: data_out = 18'h3fd7c; 13'b1000101000010: data_out = 18'h3ffda; 13'b1000101000011: data_out = 18'h0024a; 13'b1000101000100: data_out = 18'h00046; 13'b1000101000101: data_out = 18'h3ff34; 13'b1000101000110: data_out = 18'h000c8; 13'b1000101000111: data_out = 18'h3fc40; 13'b1000101001000: data_out = 18'h0023c; 13'b1000101001001: data_out = 18'h0008a; 13'b1000101001010: data_out = 18'h0000c; 13'b1000101001011: data_out = 18'h3fd34; 13'b1000101001100: data_out = 18'h003f4; 13'b1000101001101: data_out = 18'h3ff44; 13'b1000101001110: data_out = 18'h3fc9e; 13'b1000101001111: data_out = 18'h00260; 13'b1000101010000: data_out = 18'h000aa; 13'b1000101010001: data_out = 18'h3ff68; 13'b1000101010010: data_out = 18'h3fed2; 13'b1000101010011: data_out = 18'h00080; 13'b1000101010100: data_out = 18'h000a2; 13'b1000101010101: data_out = 18'h3feea; 13'b1000101010110: data_out = 18'h001e2; 13'b1000101010111: data_out = 18'h3fe9e; 13'b1000101011000: data_out = 18'h3fe6a; 13'b1000101011001: data_out = 18'h0000e; 13'b1000101011010: data_out = 18'h000a8; 13'b1000101011011: data_out = 18'h001b6; 13'b1000101011100: data_out = 18'h3feee; 13'b1000101011101: data_out = 18'h3feb6; 13'b1000101011110: data_out = 18'h001bc; 13'b1000101011111: data_out = 18'h00102; 13'b1000101100000: data_out = 18'h3ff4e; 13'b1000101100001: data_out = 18'h3ffd0; 13'b1000101100010: data_out = 18'h00108; 13'b1000101100011: data_out = 18'h00302; 13'b1000101100100: data_out = 18'h3fbac; 13'b1000101100101: data_out = 18'h3ffc6; 13'b1000101100110: data_out = 18'h002d8; 13'b1000101100111: data_out = 18'h3fd48; 13'b1000101101000: data_out = 18'h002c8; 13'b1000101101001: data_out = 18'h3fef2; 13'b1000101101010: data_out = 18'h3ff04; 13'b1000101101011: data_out = 18'h00096; 13'b1000101101100: data_out = 18'h0013e; 13'b1000101101101: data_out = 18'h3fd76; 13'b1000101101110: data_out = 18'h3ffcc; 13'b1000101101111: data_out = 18'h00284; 13'b1000101110000: data_out = 18'h3fe9a; 13'b1000101110001: data_out = 18'h3ff98; 13'b1000101110010: data_out = 18'h3fee0; 13'b1000101110011: data_out = 18'h001ce; 13'b1000101110100: data_out = 18'h3ff48; 13'b1000101110101: data_out = 18'h3fe5c; 13'b1000101110110: data_out = 18'h000c2; 13'b1000101110111: data_out = 18'h0008a; 13'b1000101111000: data_out = 18'h0016c; 13'b1000101111001: data_out = 18'h3fe34; 13'b1000101111010: data_out = 18'h00090; 13'b1000101111011: data_out = 18'h3ffac; 13'b1000101111100: data_out = 18'h000f8; 13'b1000101111101: data_out = 18'h3ff9c; 13'b1000101111110: data_out = 18'h3ffba; 13'b1000101111111: data_out = 18'h00230; 13'b1000110000000: data_out = 18'h3fdc2; 13'b1000110000001: data_out = 18'h3fe98; 13'b1000110000010: data_out = 18'h001dc; 13'b1000110000011: data_out = 18'h001ca; 13'b1000110000100: data_out = 18'h3fc72; 13'b1000110000101: data_out = 18'h000d4; 13'b1000110000110: data_out = 18'h3ff3a; 13'b1000110000111: data_out = 18'h00194; 13'b1000110001000: data_out = 18'h00074; 13'b1000110001001: data_out = 18'h3fff4; 13'b1000110001010: data_out = 18'h3fd56; 13'b1000110001011: data_out = 18'h002d2; 13'b1000110001100: data_out = 18'h000cc; 13'b1000110001101: data_out = 18'h3ff4c; 13'b1000110001110: data_out = 18'h3feb4; 13'b1000110001111: data_out = 18'h0024a; 13'b1000110010000: data_out = 18'h3fe3a; 13'b1000110010001: data_out = 18'h3ffde; 13'b1000110010010: data_out = 18'h001cc; 13'b1000110010011: data_out = 18'h3fd22; 13'b1000110010100: data_out = 18'h3fff0; 13'b1000110010101: data_out = 18'h002dc; 13'b1000110010110: data_out = 18'h3fe66; 13'b1000110010111: data_out = 18'h3fe7e; 13'b1000110011000: data_out = 18'h0037c; 13'b1000110011001: data_out = 18'h00082; 13'b1000110011010: data_out = 18'h3fd76; 13'b1000110011011: data_out = 18'h0008e; 13'b1000110011100: data_out = 18'h000d8; 13'b1000110011101: data_out = 18'h3fd3c; 13'b1000110011110: data_out = 18'h0027c; 13'b1000110011111: data_out = 18'h3fe3c; 13'b1000110100000: data_out = 18'h000ee; 13'b1000110100001: data_out = 18'h3fee6; 13'b1000110100010: data_out = 18'h001dc; 13'b1000110100011: data_out = 18'h3feda; 13'b1000110100100: data_out = 18'h3fe24; 13'b1000110100101: data_out = 18'h0039c; 13'b1000110100110: data_out = 18'h3ffc4; 13'b1000110100111: data_out = 18'h3ff0a; 13'b1000110101000: data_out = 18'h3fda6; 13'b1000110101001: data_out = 18'h002f4; 13'b1000110101010: data_out = 18'h3ff84; 13'b1000110101011: data_out = 18'h001e2; 13'b1000110101100: data_out = 18'h3fd8a; 13'b1000110101101: data_out = 18'h3ff38; 13'b1000110101110: data_out = 18'h0009a; 13'b1000110101111: data_out = 18'h00048; 13'b1000110110000: data_out = 18'h00066; 13'b1000110110001: data_out = 18'h3fdb8; 13'b1000110110010: data_out = 18'h00362; 13'b1000110110011: data_out = 18'h3fea6; 13'b1000110110100: data_out = 18'h3fe64; 13'b1000110110101: data_out = 18'h0034e; 13'b1000110110110: data_out = 18'h3feb8; 13'b1000110110111: data_out = 18'h3ffd8; 13'b1000110111000: data_out = 18'h3ff76; 13'b1000110111001: data_out = 18'h001ca; 13'b1000110111010: data_out = 18'h3fdc2; 13'b1000110111011: data_out = 18'h00210; 13'b1000110111100: data_out = 18'h3fea6; 13'b1000110111101: data_out = 18'h3fe94; 13'b1000110111110: data_out = 18'h001b8; 13'b1000110111111: data_out = 18'h3ff84; 13'b1000111000000: data_out = 18'h3fff4; 13'b1000111000001: data_out = 18'h00052; 13'b1000111000010: data_out = 18'h3ffa0; 13'b1000111000011: data_out = 18'h00134; 13'b1000111000100: data_out = 18'h3fe08; 13'b1000111000101: data_out = 18'h00152; 13'b1000111000110: data_out = 18'h3ffcc; 13'b1000111000111: data_out = 18'h3ff54; 13'b1000111001000: data_out = 18'h00260; 13'b1000111001001: data_out = 18'h3fcee; 13'b1000111001010: data_out = 18'h0012e; 13'b1000111001011: data_out = 18'h00030; 13'b1000111001100: data_out = 18'h3fe48; 13'b1000111001101: data_out = 18'h0016e; 13'b1000111001110: data_out = 18'h00034; 13'b1000111001111: data_out = 18'h00102; 13'b1000111010000: data_out = 18'h3feae; 13'b1000111010001: data_out = 18'h3ff02; 13'b1000111010010: data_out = 18'h0035a; 13'b1000111010011: data_out = 18'h3ffd4; 13'b1000111010100: data_out = 18'h3fdc4; 13'b1000111010101: data_out = 18'h0012c; 13'b1000111010110: data_out = 18'h001ce; 13'b1000111010111: data_out = 18'h3fbc6; 13'b1000111011000: data_out = 18'h0027a; 13'b1000111011001: data_out = 18'h00128; 13'b1000111011010: data_out = 18'h3fdbe; 13'b1000111011011: data_out = 18'h3fee8; 13'b1000111011100: data_out = 18'h00224; 13'b1000111011101: data_out = 18'h3fd26; 13'b1000111011110: data_out = 18'h0031a; 13'b1000111011111: data_out = 18'h0005e; 13'b1000111100000: data_out = 18'h3fbf8; 13'b1000111100001: data_out = 18'h0036e; 13'b1000111100010: data_out = 18'h000ec; 13'b1000111100011: data_out = 18'h3fc82; 13'b1000111100100: data_out = 18'h0023a; 13'b1000111100101: data_out = 18'h001c2; 13'b1000111100110: data_out = 18'h3fcf2; 13'b1000111100111: data_out = 18'h001c8; 13'b1000111101000: data_out = 18'h3fdb0; 13'b1000111101001: data_out = 18'h3ff2a; 13'b1000111101010: data_out = 18'h002a6; 13'b1000111101011: data_out = 18'h3ff3e; 13'b1000111101100: data_out = 18'h3fee0; 13'b1000111101101: data_out = 18'h000b2; 13'b1000111101110: data_out = 18'h001d6; 13'b1000111101111: data_out = 18'h3fd30; 13'b1000111110000: data_out = 18'h001a0; 13'b1000111110001: data_out = 18'h0020c; 13'b1000111110010: data_out = 18'h00014; 13'b1000111110011: data_out = 18'h3fcb8; 13'b1000111110100: data_out = 18'h00258; 13'b1000111110101: data_out = 18'h3ff5c; 13'b1000111110110: data_out = 18'h3fe32; 13'b1000111110111: data_out = 18'h0000e; 13'b1000111111000: data_out = 18'h0034c; 13'b1000111111001: data_out = 18'h3fe60; 13'b1000111111010: data_out = 18'h3ff10; 13'b1000111111011: data_out = 18'h0007c; 13'b1000111111100: data_out = 18'h3ff8c; 13'b1000111111101: data_out = 18'h00176; 13'b1000111111110: data_out = 18'h3fe8c; 13'b1000111111111: data_out = 18'h000a8; 13'b1001000000000: data_out = 18'h3ff22; 13'b1001000000001: data_out = 18'h002fc; 13'b1001000000010: data_out = 18'h3fe0a; 13'b1001000000011: data_out = 18'h3fe88; 13'b1001000000100: data_out = 18'h00314; 13'b1001000000101: data_out = 18'h3fe2c; 13'b1001000000110: data_out = 18'h3feb6; 13'b1001000000111: data_out = 18'h3ff5a; 13'b1001000001000: data_out = 18'h00222; 13'b1001000001001: data_out = 18'h3ff2a; 13'b1001000001010: data_out = 18'h00100; 13'b1001000001011: data_out = 18'h3fdea; 13'b1001000001100: data_out = 18'h00196; 13'b1001000001101: data_out = 18'h0011e; 13'b1001000001110: data_out = 18'h0005e; 13'b1001000001111: data_out = 18'h3ff98; 13'b1001000010000: data_out = 18'h3feb8; 13'b1001000010001: data_out = 18'h0020e; 13'b1001000010010: data_out = 18'h3fe6c; 13'b1001000010011: data_out = 18'h00018; 13'b1001000010100: data_out = 18'h00140; 13'b1001000010101: data_out = 18'h3fd74; 13'b1001000010110: data_out = 18'h000ca; 13'b1001000010111: data_out = 18'h3ff84; 13'b1001000011000: data_out = 18'h3ff64; 13'b1001000011001: data_out = 18'h00104; 13'b1001000011010: data_out = 18'h3fee4; 13'b1001000011011: data_out = 18'h00138; 13'b1001000011100: data_out = 18'h00052; 13'b1001000011101: data_out = 18'h00116; 13'b1001000011110: data_out = 18'h3ff40; 13'b1001000011111: data_out = 18'h3fefe; 13'b1001000100000: data_out = 18'h00030; 13'b1001000100001: data_out = 18'h3feac; 13'b1001000100010: data_out = 18'h002b8; 13'b1001000100011: data_out = 18'h3ff58; 13'b1001000100100: data_out = 18'h3fe9c; 13'b1001000100101: data_out = 18'h00218; 13'b1001000100110: data_out = 18'h3fe8c; 13'b1001000100111: data_out = 18'h0009c; 13'b1001000101000: data_out = 18'h3ff26; 13'b1001000101001: data_out = 18'h000f2; 13'b1001000101010: data_out = 18'h3ff3c; 13'b1001000101011: data_out = 18'h0034c; 13'b1001000101100: data_out = 18'h3fdb4; 13'b1001000101101: data_out = 18'h3ffd6; 13'b1001000101110: data_out = 18'h3ffce; 13'b1001000101111: data_out = 18'h3fde2; 13'b1001000110000: data_out = 18'h002cc; 13'b1001000110001: data_out = 18'h000ae; 13'b1001000110010: data_out = 18'h3fda6; 13'b1001000110011: data_out = 18'h3ff64; 13'b1001000110100: data_out = 18'h0016a; 13'b1001000110101: data_out = 18'h3fe1e; 13'b1001000110110: data_out = 18'h001b0; 13'b1001000110111: data_out = 18'h00048; 13'b1001000111000: data_out = 18'h3fea2; 13'b1001000111001: data_out = 18'h002e4; 13'b1001000111010: data_out = 18'h3ff22; 13'b1001000111011: data_out = 18'h3fefc; 13'b1001000111100: data_out = 18'h0022a; 13'b1001000111101: data_out = 18'h3feb6; 13'b1001000111110: data_out = 18'h3ff3a; 13'b1001000111111: data_out = 18'h00050; 13'b1001001000000: data_out = 18'h0017e; 13'b1001001000001: data_out = 18'h3ff78; 13'b1001001000010: data_out = 18'h3fe54; 13'b1001001000011: data_out = 18'h3ff68; 13'b1001001000100: data_out = 18'h0011a; 13'b1001001000101: data_out = 18'h3fea8; 13'b1001001000110: data_out = 18'h0019e; 13'b1001001000111: data_out = 18'h00156; 13'b1001001001000: data_out = 18'h3fc20; 13'b1001001001001: data_out = 18'h0021e; 13'b1001001001010: data_out = 18'h000ba; 13'b1001001001011: data_out = 18'h3fe36; 13'b1001001001100: data_out = 18'h00138; 13'b1001001001101: data_out = 18'h000ae; 13'b1001001001110: data_out = 18'h3ff90; 13'b1001001001111: data_out = 18'h3fe56; 13'b1001001010000: data_out = 18'h002b0; 13'b1001001010001: data_out = 18'h3fe56; 13'b1001001010010: data_out = 18'h3fe66; 13'b1001001010011: data_out = 18'h00462; 13'b1001001010100: data_out = 18'h3fd48; 13'b1001001010101: data_out = 18'h3ffdc; 13'b1001001010110: data_out = 18'h00168; 13'b1001001010111: data_out = 18'h00082; 13'b1001001011000: data_out = 18'h000e4; 13'b1001001011001: data_out = 18'h3fdce; 13'b1001001011010: data_out = 18'h0006a; 13'b1001001011011: data_out = 18'h3ff9a; 13'b1001001011100: data_out = 18'h00112; 13'b1001001011101: data_out = 18'h3ff6e; 13'b1001001011110: data_out = 18'h3ff28; 13'b1001001011111: data_out = 18'h3fd86; 13'b1001001100000: data_out = 18'h00498; 13'b1001001100001: data_out = 18'h3fc1c; 13'b1001001100010: data_out = 18'h00174; 13'b1001001100011: data_out = 18'h001cc; 13'b1001001100100: data_out = 18'h3fe24; 13'b1001001100101: data_out = 18'h0012a; 13'b1001001100110: data_out = 18'h3fe96; 13'b1001001100111: data_out = 18'h3fed8; 13'b1001001101000: data_out = 18'h003fe; 13'b1001001101001: data_out = 18'h3ffbe; 13'b1001001101010: data_out = 18'h3fefe; 13'b1001001101011: data_out = 18'h3ff56; 13'b1001001101100: data_out = 18'h3ff8a; 13'b1001001101101: data_out = 18'h3ffe2; 13'b1001001101110: data_out = 18'h00218; 13'b1001001101111: data_out = 18'h3feba; 13'b1001001110000: data_out = 18'h3feec; 13'b1001001110001: data_out = 18'h00180; 13'b1001001110010: data_out = 18'h3ff42; 13'b1001001110011: data_out = 18'h3fe40; 13'b1001001110100: data_out = 18'h0032a; 13'b1001001110101: data_out = 18'h0003a; 13'b1001001110110: data_out = 18'h3fd0a; 13'b1001001110111: data_out = 18'h000f2; 13'b1001001111000: data_out = 18'h3ff64; 13'b1001001111001: data_out = 18'h000a0; 13'b1001001111010: data_out = 18'h00146; 13'b1001001111011: data_out = 18'h0004e; 13'b1001001111100: data_out = 18'h3fc32; 13'b1001001111101: data_out = 18'h001ce; 13'b1001001111110: data_out = 18'h00222; 13'b1001001111111: data_out = 18'h3febc; 13'b1001010000000: data_out = 18'h0001c; 13'b1001010000001: data_out = 18'h000ae; 13'b1001010000010: data_out = 18'h3fede; 13'b1001010000011: data_out = 18'h0007a; 13'b1001010000100: data_out = 18'h000b2; 13'b1001010000101: data_out = 18'h3ffbc; 13'b1001010000110: data_out = 18'h00214; 13'b1001010000111: data_out = 18'h3fc54; 13'b1001010001000: data_out = 18'h3fee8; 13'b1001010001001: data_out = 18'h001da; 13'b1001010001010: data_out = 18'h000a6; 13'b1001010001011: data_out = 18'h3ffa2; 13'b1001010001100: data_out = 18'h3fe56; 13'b1001010001101: data_out = 18'h00198; 13'b1001010001110: data_out = 18'h3fe90; 13'b1001010001111: data_out = 18'h0022e; 13'b1001010010000: data_out = 18'h0000c; 13'b1001010010001: data_out = 18'h3fdbc; 13'b1001010010010: data_out = 18'h00320; 13'b1001010010011: data_out = 18'h00084; 13'b1001010010100: data_out = 18'h3fd32; 13'b1001010010101: data_out = 18'h3fffc; 13'b1001010010110: data_out = 18'h00336; 13'b1001010010111: data_out = 18'h3fdee; 13'b1001010011000: data_out = 18'h00034; 13'b1001010011001: data_out = 18'h3fe80; 13'b1001010011010: data_out = 18'h3ff9c; 13'b1001010011011: data_out = 18'h000d4; 13'b1001010011100: data_out = 18'h001c4; 13'b1001010011101: data_out = 18'h00002; 13'b1001010011110: data_out = 18'h3fd9e; 13'b1001010011111: data_out = 18'h001f0; 13'b1001010100000: data_out = 18'h3fe6e; 13'b1001010100001: data_out = 18'h000bc; 13'b1001010100010: data_out = 18'h001bc; 13'b1001010100011: data_out = 18'h3fdcc; 13'b1001010100100: data_out = 18'h3fe22; 13'b1001010100101: data_out = 18'h00182; 13'b1001010100110: data_out = 18'h00130; 13'b1001010100111: data_out = 18'h3ffd0; 13'b1001010101000: data_out = 18'h3fde4; 13'b1001010101001: data_out = 18'h003c0; 13'b1001010101010: data_out = 18'h3fdd4; 13'b1001010101011: data_out = 18'h3fc40; 13'b1001010101100: data_out = 18'h0060c; 13'b1001010101101: data_out = 18'h3ff78; 13'b1001010101110: data_out = 18'h3ff90; 13'b1001010101111: data_out = 18'h000e2; 13'b1001010110000: data_out = 18'h3fdae; 13'b1001010110001: data_out = 18'h00052; 13'b1001010110010: data_out = 18'h00192; 13'b1001010110011: data_out = 18'h3fe12; 13'b1001010110100: data_out = 18'h3ff92; 13'b1001010110101: data_out = 18'h00190; 13'b1001010110110: data_out = 18'h3fe42; 13'b1001010110111: data_out = 18'h00002; 13'b1001010111000: data_out = 18'h3ff98; 13'b1001010111001: data_out = 18'h00246; 13'b1001010111010: data_out = 18'h3fe38; 13'b1001010111011: data_out = 18'h001c4; 13'b1001010111100: data_out = 18'h3fdda; 13'b1001010111101: data_out = 18'h00002; 13'b1001010111110: data_out = 18'h00288; 13'b1001010111111: data_out = 18'h3ff1a; 13'b1001011000000: data_out = 18'h000d6; 13'b1001011000001: data_out = 18'h3fd50; 13'b1001011000010: data_out = 18'h0012a; 13'b1001011000011: data_out = 18'h00170; 13'b1001011000100: data_out = 18'h3ff42; 13'b1001011000101: data_out = 18'h3fed0; 13'b1001011000110: data_out = 18'h002f2; 13'b1001011000111: data_out = 18'h3fcb6; 13'b1001011001000: data_out = 18'h0015a; 13'b1001011001001: data_out = 18'h001b0; 13'b1001011001010: data_out = 18'h3fe0a; 13'b1001011001011: data_out = 18'h00078; 13'b1001011001100: data_out = 18'h00120; 13'b1001011001101: data_out = 18'h3fe24; 13'b1001011001110: data_out = 18'h3ff32; 13'b1001011001111: data_out = 18'h001a6; 13'b1001011010000: data_out = 18'h00136; 13'b1001011010001: data_out = 18'h3fe78; 13'b1001011010010: data_out = 18'h3feaa; 13'b1001011010011: data_out = 18'h3ffb4; 13'b1001011010100: data_out = 18'h0013a; 13'b1001011010101: data_out = 18'h3ffb4; 13'b1001011010110: data_out = 18'h3ff3a; 13'b1001011010111: data_out = 18'h00304; 13'b1001011011000: data_out = 18'h3fe8c; 13'b1001011011001: data_out = 18'h0017a; 13'b1001011011010: data_out = 18'h3ff66; 13'b1001011011011: data_out = 18'h3fef0; 13'b1001011011100: data_out = 18'h00296; 13'b1001011011101: data_out = 18'h3fefc; 13'b1001011011110: data_out = 18'h3fe62; 13'b1001011011111: data_out = 18'h000ea; 13'b1001011100000: data_out = 18'h3ff66; 13'b1001011100001: data_out = 18'h0003e; 13'b1001011100010: data_out = 18'h3ffc0; 13'b1001011100011: data_out = 18'h3fdd8; 13'b1001011100100: data_out = 18'h001c8; 13'b1001011100101: data_out = 18'h3ffc2; 13'b1001011100110: data_out = 18'h3ff74; 13'b1001011100111: data_out = 18'h3ff9a; 13'b1001011101000: data_out = 18'h00164; 13'b1001011101001: data_out = 18'h3fe74; 13'b1001011101010: data_out = 18'h00104; 13'b1001011101011: data_out = 18'h00144; 13'b1001011101100: data_out = 18'h3ff26; 13'b1001011101101: data_out = 18'h3fe24; 13'b1001011101110: data_out = 18'h00260; 13'b1001011101111: data_out = 18'h3ff34; 13'b1001011110000: data_out = 18'h3ff52; 13'b1001011110001: data_out = 18'h000cc; 13'b1001011110010: data_out = 18'h000dc; 13'b1001011110011: data_out = 18'h00002; 13'b1001011110100: data_out = 18'h3fda4; 13'b1001011110101: data_out = 18'h00194; 13'b1001011110110: data_out = 18'h00310; 13'b1001011110111: data_out = 18'h3fbd6; 13'b1001011111000: data_out = 18'h001c4; 13'b1001011111001: data_out = 18'h3ffde; 13'b1001011111010: data_out = 18'h00004; 13'b1001011111011: data_out = 18'h3ffe4; 13'b1001011111100: data_out = 18'h3ffc4; 13'b1001011111101: data_out = 18'h0001c; 13'b1001011111110: data_out = 18'h000e2; 13'b1001011111111: data_out = 18'h3fea2; 13'b1001100000000: data_out = 18'h3ffc8; 13'b1001100000001: data_out = 18'h000a8; 13'b1001100000010: data_out = 18'h00024; 13'b1001100000011: data_out = 18'h0002e; 13'b1001100000100: data_out = 18'h000c2; 13'b1001100000101: data_out = 18'h3ffd0; 13'b1001100000110: data_out = 18'h3ff0a; 13'b1001100000111: data_out = 18'h0010c; 13'b1001100001000: data_out = 18'h3ffd4; 13'b1001100001001: data_out = 18'h3ff76; 13'b1001100001010: data_out = 18'h0008a; 13'b1001100001011: data_out = 18'h3ff10; 13'b1001100001100: data_out = 18'h3ffa6; 13'b1001100001101: data_out = 18'h000d0; 13'b1001100001110: data_out = 18'h3fee4; 13'b1001100001111: data_out = 18'h000ac; 13'b1001100010000: data_out = 18'h3ff04; 13'b1001100010001: data_out = 18'h3ff90; 13'b1001100010010: data_out = 18'h0012a; 13'b1001100010011: data_out = 18'h000b4; 13'b1001100010100: data_out = 18'h00050; 13'b1001100010101: data_out = 18'h3fea4; 13'b1001100010110: data_out = 18'h001b6; 13'b1001100010111: data_out = 18'h3fd14; 13'b1001100011000: data_out = 18'h001d2; 13'b1001100011001: data_out = 18'h3fff8; 13'b1001100011010: data_out = 18'h000c8; 13'b1001100011011: data_out = 18'h3ff20; 13'b1001100011100: data_out = 18'h3ff44; 13'b1001100011101: data_out = 18'h3fff4; 13'b1001100011110: data_out = 18'h00030; 13'b1001100011111: data_out = 18'h3ff78; 13'b1001100100000: data_out = 18'h00202; 13'b1001100100001: data_out = 18'h00114; 13'b1001100100010: data_out = 18'h3fd70; 13'b1001100100011: data_out = 18'h00102; 13'b1001100100100: data_out = 18'h3ff58; 13'b1001100100101: data_out = 18'h00138; 13'b1001100100110: data_out = 18'h3ffd2; 13'b1001100100111: data_out = 18'h3fe58; 13'b1001100101000: data_out = 18'h0011c; 13'b1001100101001: data_out = 18'h0013c; 13'b1001100101010: data_out = 18'h3fc4a; 13'b1001100101011: data_out = 18'h001dc; 13'b1001100101100: data_out = 18'h001c0; 13'b1001100101101: data_out = 18'h3fda4; 13'b1001100101110: data_out = 18'h001e8; 13'b1001100101111: data_out = 18'h3ff1e; 13'b1001100110000: data_out = 18'h000ca; 13'b1001100110001: data_out = 18'h00228; 13'b1001100110010: data_out = 18'h3fce8; 13'b1001100110011: data_out = 18'h00242; 13'b1001100110100: data_out = 18'h3fd7c; 13'b1001100110101: data_out = 18'h000e0; 13'b1001100110110: data_out = 18'h3fe3a; 13'b1001100110111: data_out = 18'h0025c; 13'b1001100111000: data_out = 18'h0007c; 13'b1001100111001: data_out = 18'h3fdfe; 13'b1001100111010: data_out = 18'h3fe98; 13'b1001100111011: data_out = 18'h00160; 13'b1001100111100: data_out = 18'h0017a; 13'b1001100111101: data_out = 18'h3fe7c; 13'b1001100111110: data_out = 18'h3ff42; 13'b1001100111111: data_out = 18'h001b0; 13'b1001101000000: data_out = 18'h3ff58; 13'b1001101000001: data_out = 18'h3ffa0; 13'b1001101000010: data_out = 18'h0005c; 13'b1001101000011: data_out = 18'h00166; 13'b1001101000100: data_out = 18'h00048; 13'b1001101000101: data_out = 18'h3ffb8; 13'b1001101000110: data_out = 18'h3fd8e; 13'b1001101000111: data_out = 18'h0009e; 13'b1001101001000: data_out = 18'h001c4; 13'b1001101001001: data_out = 18'h00082; 13'b1001101001010: data_out = 18'h3ff5a; 13'b1001101001011: data_out = 18'h3feca; 13'b1001101001100: data_out = 18'h3ff4a; 13'b1001101001101: data_out = 18'h001e8; 13'b1001101001110: data_out = 18'h000ee; 13'b1001101001111: data_out = 18'h3fe20; 13'b1001101010000: data_out = 18'h00110; 13'b1001101010001: data_out = 18'h3fe94; 13'b1001101010010: data_out = 18'h3ff42; 13'b1001101010011: data_out = 18'h0010e; 13'b1001101010100: data_out = 18'h000c0; 13'b1001101010101: data_out = 18'h3ff40; 13'b1001101010110: data_out = 18'h3ffca; 13'b1001101010111: data_out = 18'h3fd52; 13'b1001101011000: data_out = 18'h00170; 13'b1001101011001: data_out = 18'h0011a; 13'b1001101011010: data_out = 18'h0022c; 13'b1001101011011: data_out = 18'h3fdea; 13'b1001101011100: data_out = 18'h001c0; 13'b1001101011101: data_out = 18'h3fe02; 13'b1001101011110: data_out = 18'h00014; 13'b1001101011111: data_out = 18'h002e6; 13'b1001101100000: data_out = 18'h3fee6; 13'b1001101100001: data_out = 18'h3ff64; 13'b1001101100010: data_out = 18'h00020; 13'b1001101100011: data_out = 18'h3ff26; 13'b1001101100100: data_out = 18'h3ff5c; 13'b1001101100101: data_out = 18'h001b4; 13'b1001101100110: data_out = 18'h3fe90; 13'b1001101100111: data_out = 18'h00158; 13'b1001101101000: data_out = 18'h3fdb0; 13'b1001101101001: data_out = 18'h0009e; 13'b1001101101010: data_out = 18'h00126; 13'b1001101101011: data_out = 18'h0004a; 13'b1001101101100: data_out = 18'h00026; 13'b1001101101101: data_out = 18'h0001c; 13'b1001101101110: data_out = 18'h3fee6; 13'b1001101101111: data_out = 18'h00120; 13'b1001101110000: data_out = 18'h3ffea; 13'b1001101110001: data_out = 18'h0005c; 13'b1001101110010: data_out = 18'h000ba; 13'b1001101110011: data_out = 18'h3fd2a; 13'b1001101110100: data_out = 18'h0002e; 13'b1001101110101: data_out = 18'h00090; 13'b1001101110110: data_out = 18'h3ffa2; 13'b1001101110111: data_out = 18'h0005e; 13'b1001101111000: data_out = 18'h0001c; 13'b1001101111001: data_out = 18'h3ff80; 13'b1001101111010: data_out = 18'h3ffe6; 13'b1001101111011: data_out = 18'h0010c; 13'b1001101111100: data_out = 18'h3ff92; 13'b1001101111101: data_out = 18'h0015e; 13'b1001101111110: data_out = 18'h3fdb6; 13'b1001101111111: data_out = 18'h00088; 13'b1001110000000: data_out = 18'h000d0; 13'b1001110000001: data_out = 18'h00000; 13'b1001110000010: data_out = 18'h00034; 13'b1001110000011: data_out = 18'h3fe50; 13'b1001110000100: data_out = 18'h001a8; 13'b1001110000101: data_out = 18'h3feaa; 13'b1001110000110: data_out = 18'h0000e; 13'b1001110000111: data_out = 18'h001ee; default: data_out = 18'h0_0000; endcase end endmodule

tempo_ROM.v

LUT of cycles per beat for different tempos

Exported from Notepad++
//This module contains LUTs that give back the cycles in 50 MHz between each eighth note or sixteenth note //The address corresponds to the tempo between 50-240BPM in increments of 1BPM module eight_note (clock, address, data_out); input clock; input [7:0] address; output [31:0] data_out; reg [31:0] data_out; always @ (posedge clock) begin case (address) 8'b00000000: data_out = 32'h023c3460; 8'b00000001: data_out = 32'h022e3f96; 8'b00000010: data_out = 32'h0220f4ee; 8'b00000011: data_out = 32'h02144889; 8'b00000100: data_out = 32'h02082f9d; 8'b00000101: data_out = 32'h01fca055; 8'b00000110: data_out = 32'h01f191b8; 8'b00000111: data_out = 32'h01e6fb8e; 8'b00001000: data_out = 32'h01dcd650; 8'b00001001: data_out = 32'h01d31b15; 8'b00001010: data_out = 32'h01c9c380; 8'b00001011: data_out = 32'h01c0c9b5; 8'b00001100: data_out = 32'h01b8284a; 8'b00001101: data_out = 32'h01afda3f; 8'b00001110: data_out = 32'h01a7daf2; 8'b00001111: data_out = 32'h01a02617; 8'b00010000: data_out = 32'h0198b7b2; 8'b00010001: data_out = 32'h01918c0d; 8'b00010010: data_out = 32'h018a9fb5; 8'b00010011: data_out = 32'h0183ef71; 8'b00010100: data_out = 32'h017d7840; 8'b00010101: data_out = 32'h01773754; 8'b00010110: data_out = 32'h01712a0c; 8'b00010111: data_out = 32'h016b4df4; 8'b00011000: data_out = 32'h0165a0bc; 8'b00011001: data_out = 32'h0160203b; 8'b00011010: data_out = 32'h015aca69; 8'b00011011: data_out = 32'h01559d5c; 8'b00011100: data_out = 32'h01509748; 8'b00011101: data_out = 32'h014bb67a; 8'b00011110: data_out = 32'h0146f95b; 8'b00011111: data_out = 32'h01425e69; 8'b00100000: data_out = 32'h013de435; 8'b00100001: data_out = 32'h01398969; 8'b00100010: data_out = 32'h01354cbe; 8'b00100011: data_out = 32'h01312d00; 8'b00100100: data_out = 32'h012d290a; 8'b00100101: data_out = 32'h01293fc7; 8'b00100110: data_out = 32'h01257031; 8'b00100111: data_out = 32'h0121b94e; 8'b00101000: data_out = 32'h011e1a30; 8'b00101001: data_out = 32'h011a91f7; 8'b00101010: data_out = 32'h01171fcb; 8'b00101011: data_out = 32'h0113c2e1; 8'b00101100: data_out = 32'h01107a77; 8'b00101101: data_out = 32'h010d45d3; 8'b00101110: data_out = 32'h010a2444; 8'b00101111: data_out = 32'h01071523; 8'b00110000: data_out = 32'h010417cf; 8'b00110001: data_out = 32'h01012bad; 8'b00110010: data_out = 32'h00fe502b; 8'b00110011: data_out = 32'h00fb84bc; 8'b00110100: data_out = 32'h00f8c8dc; 8'b00110101: data_out = 32'h00f61c08; 8'b00110110: data_out = 32'h00f37dc7; 8'b00110111: data_out = 32'h00f0eda2; 8'b00111000: data_out = 32'h00ee6b28; 8'b00111001: data_out = 32'h00ebf5ee; 8'b00111010: data_out = 32'h00e98d8a; 8'b00111011: data_out = 32'h00e7319b; 8'b00111100: data_out = 32'h00e4e1c0; 8'b00111101: data_out = 32'h00e29d9d; 8'b00111110: data_out = 32'h00e064da; 8'b00111111: data_out = 32'h00de3723; 8'b01000000: data_out = 32'h00dc1425; 8'b01000001: data_out = 32'h00d9fb92; 8'b01000010: data_out = 32'h00d7ed1f; 8'b01000011: data_out = 32'h00d5e884; 8'b01000100: data_out = 32'h00d3ed79; 8'b01000101: data_out = 32'h00d1fbbc; 8'b01000110: data_out = 32'h00d0130c; 8'b01000111: data_out = 32'h00ce332a; 8'b01001000: data_out = 32'h00cc5bd9; 8'b01001001: data_out = 32'h00ca8ce0; 8'b01001010: data_out = 32'h00c8c607; 8'b01001011: data_out = 32'h00c70716; 8'b01001100: data_out = 32'h00c54fda; 8'b01001101: data_out = 32'h00c3a021; 8'b01001110: data_out = 32'h00c1f7b8; 8'b01001111: data_out = 32'h00c05672; 8'b01010000: data_out = 32'h00bebc20; 8'b01010001: data_out = 32'h00bd2896; 8'b01010010: data_out = 32'h00bb9baa; 8'b01010011: data_out = 32'h00ba1532; 8'b01010100: data_out = 32'h00b89506; 8'b01010101: data_out = 32'h00b71b00; 8'b01010110: data_out = 32'h00b5a6fa; 8'b01010111: data_out = 32'h00b438d0; 8'b01011000: data_out = 32'h00b2d05e; 8'b01011001: data_out = 32'h00b16d83; 8'b01011010: data_out = 32'h00b0101e; 8'b01011011: data_out = 32'h00aeb80e; 8'b01011100: data_out = 32'h00ad6534; 8'b01011101: data_out = 32'h00ac1773; 8'b01011110: data_out = 32'h00aaceae; 8'b01011111: data_out = 32'h00a98ac7; 8'b01100000: data_out = 32'h00a84ba4; 8'b01100001: data_out = 32'h00a71129; 8'b01100010: data_out = 32'h00a5db3d; 8'b01100011: data_out = 32'h00a4a9c7; 8'b01100100: data_out = 32'h00a37cae; 8'b01100101: data_out = 32'h00a253da; 8'b01100110: data_out = 32'h00a12f34; 8'b01100111: data_out = 32'h00a00ea6; 8'b01101000: data_out = 32'h009ef21b; 8'b01101001: data_out = 32'h009dd97c; 8'b01101010: data_out = 32'h009cc4b5; 8'b01101011: data_out = 32'h009bb3b2; 8'b01101100: data_out = 32'h009aa65f; 8'b01101101: data_out = 32'h00999caa; 8'b01101110: data_out = 32'h00989680; 8'b01101111: data_out = 32'h009793cf; 8'b01110000: data_out = 32'h00969485; 8'b01110001: data_out = 32'h00959892; 8'b01110010: data_out = 32'h00949fe4; 8'b01110011: data_out = 32'h0093aa6b; 8'b01110100: data_out = 32'h0092b819; 8'b01110101: data_out = 32'h0091c8dc; 8'b01110110: data_out = 32'h0090dca7; 8'b01110111: data_out = 32'h008ff36a; 8'b01111000: data_out = 32'h008f0d18; 8'b01111001: data_out = 32'h008e29a2; 8'b01111010: data_out = 32'h008d48fb; 8'b01111011: data_out = 32'h008c6b16; 8'b01111100: data_out = 32'h008b8fe5; 8'b01111101: data_out = 32'h008ab75d; 8'b01111110: data_out = 32'h0089e171; 8'b01111111: data_out = 32'h00890e14; 8'b10000000: data_out = 32'h00883d3b; 8'b10000001: data_out = 32'h00876edc; 8'b10000010: data_out = 32'h0086a2e9; 8'b10000011: data_out = 32'h0085d95a; 8'b10000100: data_out = 32'h00851222; 8'b10000101: data_out = 32'h00844d38; 8'b10000110: data_out = 32'h00838a92; 8'b10000111: data_out = 32'h0082ca25; 8'b10001000: data_out = 32'h00820be7; 8'b10001001: data_out = 32'h00814fd0; 8'b10001010: data_out = 32'h008095d6; 8'b10001011: data_out = 32'h007fddf0; 8'b10001100: data_out = 32'h007f2815; 8'b10001101: data_out = 32'h007e743d; 8'b10001110: data_out = 32'h007dc25e; 8'b10001111: data_out = 32'h007d1271; 8'b10010000: data_out = 32'h007c646e; 8'b10010001: data_out = 32'h007bb84c; 8'b10010010: data_out = 32'h007b0e04; 8'b10010011: data_out = 32'h007a658e; 8'b10010100: data_out = 32'h0079bee3; 8'b10010101: data_out = 32'h007919fc; 8'b10010110: data_out = 32'h007876d1; 8'b10010111: data_out = 32'h0077d55b; 8'b10011000: data_out = 32'h00773594; 8'b10011001: data_out = 32'h00769775; 8'b10011010: data_out = 32'h0075faf7; 8'b10011011: data_out = 32'h00756014; 8'b10011100: data_out = 32'h0074c6c5; 8'b10011101: data_out = 32'h00742f05; 8'b10011110: data_out = 32'h007398ce; 8'b10011111: data_out = 32'h00730418; 8'b10100000: data_out = 32'h007270e0; 8'b10100001: data_out = 32'h0071df1f; 8'b10100010: data_out = 32'h00714ecf; 8'b10100011: data_out = 32'h0070bfeb; 8'b10100100: data_out = 32'h0070326d; 8'b10100101: data_out = 32'h006fa651; 8'b10100110: data_out = 32'h006f1b91; 8'b10100111: data_out = 32'h006e9229; 8'b10101000: data_out = 32'h006e0a12; 8'b10101001: data_out = 32'h006d8349; 8'b10101010: data_out = 32'h006cfdc9; 8'b10101011: data_out = 32'h006c798d; 8'b10101100: data_out = 32'h006bf690; 8'b10101101: data_out = 32'h006b74ce; 8'b10101110: data_out = 32'h006af442; 8'b10101111: data_out = 32'h006a74e8; 8'b10110000: data_out = 32'h0069f6bc; 8'b10110001: data_out = 32'h006979ba; 8'b10110010: data_out = 32'h0068fdde; 8'b10110011: data_out = 32'h00688323; 8'b10110100: data_out = 32'h00680986; 8'b10110101: data_out = 32'h00679102; 8'b10110110: data_out = 32'h00671995; 8'b10110111: data_out = 32'h0066a339; 8'b10111000: data_out = 32'h00662ded; 8'b10111001: data_out = 32'h0065b9ab; 8'b10111010: data_out = 32'h00654670; 8'b10111011: data_out = 32'h0064d43a; 8'b10111100: data_out = 32'h00646303; 8'b10111101: data_out = 32'h0063f2ca; 8'b10111110: data_out = 32'h0063838b; 8'b10111111: data_out = 32'h00631542; 8'b11000000: data_out = 32'h0062a7ed; 8'b11000001: data_out = 32'h00623b88; 8'b11000010: data_out = 32'h0061d010; 8'b11000011: data_out = 32'h00616583; 8'b11000100: data_out = 32'h0060fbdc; 8'b11000101: data_out = 32'h0060931a; 8'b11000110: data_out = 32'h00602b39; 8'b11000111: data_out = 32'h005fc437; 8'b11001000: data_out = 32'h005f5e10; 8'b11001001: data_out = 32'h005ef8c2; 8'b11001010: data_out = 32'h005e944b; 8'b11001011: data_out = 32'h005e30a8; 8'b11001100: data_out = 32'h005dcdd5; 8'b11001101: data_out = 32'h005d6bd1; 8'b11001110: data_out = 32'h005d0a99; 8'b11001111: data_out = 32'h005caa2a; 8'b11010000: data_out = 32'h005c4a83; 8'b11010001: data_out = 32'h005beba0; 8'b11010010: data_out = 32'h005b8d80; default: data_out = 32'h00000000; endcase end endmodule module sixteen_note (clock, address, data_out); input clock; input [7:0] address; output [31:0] data_out; reg [31:0] data_out; always @ (posedge clock) begin case (address) 8'b00000000: data_out = 32'h011e1a30; 8'b00000001: data_out = 32'h01171fcb; 8'b00000010: data_out = 32'h01107a77; 8'b00000011: data_out = 32'h010a2444; 8'b00000100: data_out = 32'h010417cf; 8'b00000101: data_out = 32'h00fe502b; 8'b00000110: data_out = 32'h00f8c8dc; 8'b00000111: data_out = 32'h00f37dc7; 8'b00001000: data_out = 32'h00ee6b28; 8'b00001001: data_out = 32'h00e98d8a; 8'b00001010: data_out = 32'h00e4e1c0; 8'b00001011: data_out = 32'h00e064da; 8'b00001100: data_out = 32'h00dc1425; 8'b00001101: data_out = 32'h00d7ed1f; 8'b00001110: data_out = 32'h00d3ed79; 8'b00001111: data_out = 32'h00d0130c; 8'b00010000: data_out = 32'h00cc5bd9; 8'b00010001: data_out = 32'h00c8c607; 8'b00010010: data_out = 32'h00c54fda; 8'b00010011: data_out = 32'h00c1f7b8; 8'b00010100: data_out = 32'h00bebc20; 8'b00010101: data_out = 32'h00bb9baa; 8'b00010110: data_out = 32'h00b89506; 8'b00010111: data_out = 32'h00b5a6fa; 8'b00011000: data_out = 32'h00b2d05e; 8'b00011001: data_out = 32'h00b0101e; 8'b00011010: data_out = 32'h00ad6534; 8'b00011011: data_out = 32'h00aaceae; 8'b00011100: data_out = 32'h00a84ba4; 8'b00011101: data_out = 32'h00a5db3d; 8'b00011110: data_out = 32'h00a37cae; 8'b00011111: data_out = 32'h00a12f34; 8'b00100000: data_out = 32'h009ef21b; 8'b00100001: data_out = 32'h009cc4b5; 8'b00100010: data_out = 32'h009aa65f; 8'b00100011: data_out = 32'h00989680; 8'b00100100: data_out = 32'h00969485; 8'b00100101: data_out = 32'h00949fe4; 8'b00100110: data_out = 32'h0092b819; 8'b00100111: data_out = 32'h0090dca7; 8'b00101000: data_out = 32'h008f0d18; 8'b00101001: data_out = 32'h008d48fb; 8'b00101010: data_out = 32'h008b8fe5; 8'b00101011: data_out = 32'h0089e171; 8'b00101100: data_out = 32'h00883d3b; 8'b00101101: data_out = 32'h0086a2e9; 8'b00101110: data_out = 32'h00851222; 8'b00101111: data_out = 32'h00838a92; 8'b00110000: data_out = 32'h00820be7; 8'b00110001: data_out = 32'h008095d6; 8'b00110010: data_out = 32'h007f2815; 8'b00110011: data_out = 32'h007dc25e; 8'b00110100: data_out = 32'h007c646e; 8'b00110101: data_out = 32'h007b0e04; 8'b00110110: data_out = 32'h0079bee3; 8'b00110111: data_out = 32'h007876d1; 8'b00111000: data_out = 32'h00773594; 8'b00111001: data_out = 32'h0075faf7; 8'b00111010: data_out = 32'h0074c6c5; 8'b00111011: data_out = 32'h007398ce; 8'b00111100: data_out = 32'h007270e0; 8'b00111101: data_out = 32'h00714ecf; 8'b00111110: data_out = 32'h0070326d; 8'b00111111: data_out = 32'h006f1b91; 8'b01000000: data_out = 32'h006e0a12; 8'b01000001: data_out = 32'h006cfdc9; 8'b01000010: data_out = 32'h006bf690; 8'b01000011: data_out = 32'h006af442; 8'b01000100: data_out = 32'h0069f6bc; 8'b01000101: data_out = 32'h0068fdde; 8'b01000110: data_out = 32'h00680986; 8'b01000111: data_out = 32'h00671995; 8'b01001000: data_out = 32'h00662ded; 8'b01001001: data_out = 32'h00654670; 8'b01001010: data_out = 32'h00646303; 8'b01001011: data_out = 32'h0063838b; 8'b01001100: data_out = 32'h0062a7ed; 8'b01001101: data_out = 32'h0061d010; 8'b01001110: data_out = 32'h0060fbdc; 8'b01001111: data_out = 32'h00602b39; 8'b01010000: data_out = 32'h005f5e10; 8'b01010001: data_out = 32'h005e944b; 8'b01010010: data_out = 32'h005dcdd5; 8'b01010011: data_out = 32'h005d0a99; 8'b01010100: data_out = 32'h005c4a83; 8'b01010101: data_out = 32'h005b8d80; 8'b01010110: data_out = 32'h005ad37d; 8'b01010111: data_out = 32'h005a1c68; 8'b01011000: data_out = 32'h0059682f; 8'b01011001: data_out = 32'h0058b6c1; 8'b01011010: data_out = 32'h0058080f; 8'b01011011: data_out = 32'h00575c07; 8'b01011100: data_out = 32'h0056b29a; 8'b01011101: data_out = 32'h00560bba; 8'b01011110: data_out = 32'h00556757; 8'b01011111: data_out = 32'h0054c564; 8'b01100000: data_out = 32'h005425d2; 8'b01100001: data_out = 32'h00538895; 8'b01100010: data_out = 32'h0052ed9f; 8'b01100011: data_out = 32'h005254e3; 8'b01100100: data_out = 32'h0051be57; 8'b01100101: data_out = 32'h005129ed; 8'b01100110: data_out = 32'h0050979a; 8'b01100111: data_out = 32'h00500753; 8'b01101000: data_out = 32'h004f790d; 8'b01101001: data_out = 32'h004eecbe; 8'b01101010: data_out = 32'h004e625a; 8'b01101011: data_out = 32'h004dd9d9; 8'b01101100: data_out = 32'h004d5330; 8'b01101101: data_out = 32'h004cce55; 8'b01101110: data_out = 32'h004c4b40; 8'b01101111: data_out = 32'h004bc9e7; 8'b01110000: data_out = 32'h004b4a43; 8'b01110001: data_out = 32'h004acc49; 8'b01110010: data_out = 32'h004a4ff2; 8'b01110011: data_out = 32'h0049d536; 8'b01110100: data_out = 32'h00495c0c; 8'b01110101: data_out = 32'h0048e46e; 8'b01110110: data_out = 32'h00486e53; 8'b01110111: data_out = 32'h0047f9b5; 8'b01111000: data_out = 32'h0047868c; 8'b01111001: data_out = 32'h004714d1; 8'b01111010: data_out = 32'h0046a47e; 8'b01111011: data_out = 32'h0046358b; 8'b01111100: data_out = 32'h0045c7f3; 8'b01111101: data_out = 32'h00455baf; 8'b01111110: data_out = 32'h0044f0b8; 8'b01111111: data_out = 32'h0044870a; 8'b10000000: data_out = 32'h00441e9e; 8'b10000001: data_out = 32'h0043b76e; 8'b10000010: data_out = 32'h00435175; 8'b10000011: data_out = 32'h0042ecad; 8'b10000100: data_out = 32'h00428911; 8'b10000101: data_out = 32'h0042269c; 8'b10000110: data_out = 32'h0041c549; 8'b10000111: data_out = 32'h00416512; 8'b10001000: data_out = 32'h004105f4; 8'b10001001: data_out = 32'h0040a7e8; 8'b10001010: data_out = 32'h00404aeb; 8'b10001011: data_out = 32'h003feef8; 8'b10001100: data_out = 32'h003f940b; 8'b10001101: data_out = 32'h003f3a1e; 8'b10001110: data_out = 32'h003ee12f; 8'b10001111: data_out = 32'h003e8939; 8'b10010000: data_out = 32'h003e3237; 8'b10010001: data_out = 32'h003ddc26; 8'b10010010: data_out = 32'h003d8702; 8'b10010011: data_out = 32'h003d32c7; 8'b10010100: data_out = 32'h003cdf72; 8'b10010101: data_out = 32'h003c8cfe; 8'b10010110: data_out = 32'h003c3b68; 8'b10010111: data_out = 32'h003beaae; 8'b10011000: data_out = 32'h003b9aca; 8'b10011001: data_out = 32'h003b4bba; 8'b10011010: data_out = 32'h003afd7b; 8'b10011011: data_out = 32'h003ab00a; 8'b10011100: data_out = 32'h003a6363; 8'b10011101: data_out = 32'h003a1783; 8'b10011110: data_out = 32'h0039cc67; 8'b10011111: data_out = 32'h0039820c; 8'b10100000: data_out = 32'h00393870; 8'b10100001: data_out = 32'h0038ef8f; 8'b10100010: data_out = 32'h0038a767; 8'b10100011: data_out = 32'h00385ff5; 8'b10100100: data_out = 32'h00381937; 8'b10100101: data_out = 32'h0037d329; 8'b10100110: data_out = 32'h00378dc9; 8'b10100111: data_out = 32'h00374914; 8'b10101000: data_out = 32'h00370509; 8'b10101001: data_out = 32'h0036c1a5; 8'b10101010: data_out = 32'h00367ee5; 8'b10101011: data_out = 32'h00363cc6; 8'b10101100: data_out = 32'h0035fb48; 8'b10101101: data_out = 32'h0035ba67; 8'b10101110: data_out = 32'h00357a21; 8'b10101111: data_out = 32'h00353a74; 8'b10110000: data_out = 32'h0034fb5e; 8'b10110001: data_out = 32'h0034bcdd; 8'b10110010: data_out = 32'h00347eef; 8'b10110011: data_out = 32'h00344192; 8'b10110100: data_out = 32'h003404c3; 8'b10110101: data_out = 32'h0033c881; 8'b10110110: data_out = 32'h00338cca; 8'b10110111: data_out = 32'h0033519d; 8'b10111000: data_out = 32'h003316f6; 8'b10111001: data_out = 32'h0032dcd5; 8'b10111010: data_out = 32'h0032a338; 8'b10111011: data_out = 32'h00326a1d; 8'b10111100: data_out = 32'h00323182; 8'b10111101: data_out = 32'h0031f965; 8'b10111110: data_out = 32'h0031c1c6; 8'b10111111: data_out = 32'h00318aa1; 8'b11000000: data_out = 32'h003153f7; 8'b11000001: data_out = 32'h00311dc4; 8'b11000010: data_out = 32'h0030e808; 8'b11000011: data_out = 32'h0030b2c1; 8'b11000100: data_out = 32'h00307dee; 8'b11000101: data_out = 32'h0030498d; 8'b11000110: data_out = 32'h0030159d; 8'b11000111: data_out = 32'h002fe21b; 8'b11001000: data_out = 32'h002faf08; 8'b11001001: data_out = 32'h002f7c61; 8'b11001010: data_out = 32'h002f4a26; 8'b11001011: data_out = 32'h002f1854; 8'b11001100: data_out = 32'h002ee6ea; 8'b11001101: data_out = 32'h002eb5e8; 8'b11001110: data_out = 32'h002e854c; 8'b11001111: data_out = 32'h002e5515; 8'b11010000: data_out = 32'h002e2542; 8'b11010001: data_out = 32'h002df5d0; 8'b11010010: data_out = 32'h002dc6c0; default: data_out = 32'h00000000; endcase end endmodule

combine_audio.v

Combine up to 8 individual instrumet inputs into a single audio output

Exported from Notepad++
// Combine up to 8 individual instrumet inputs into a single audio output module combine_audio #(parameter NYQ_PERIOD = 16'd960) (audio_clk, inst0, inst1, inst2, inst3, inst4, inst5, inst6, inst7, audio_out); input audio_clk; input signed [21:0] inst0, inst1, inst2, inst3, inst4, inst5, inst6, inst7; output signed [17:0] audio_out; wire signed [17:0] inst0comp, inst1comp, inst2comp, inst3comp, inst4comp, inst5comp, inst6comp, inst7comp; // compress each instrument individually // to help equalize all instruments compressor #(NYQ_PERIOD) comp0 (audio_clk, inst0, inst0comp); compressor #(NYQ_PERIOD) comp1 (audio_clk, inst1, inst1comp); compressor #(NYQ_PERIOD) comp2 (audio_clk, inst2, inst2comp); compressor #(NYQ_PERIOD) comp3 (audio_clk, inst3, inst3comp); compressor #(NYQ_PERIOD) comp4 (audio_clk, inst4, inst4comp); compressor #(NYQ_PERIOD) comp5 (audio_clk, inst5, inst5comp); compressor #(NYQ_PERIOD) comp6 (audio_clk, inst6, inst6comp); compressor #(NYQ_PERIOD) comp7 (audio_clk, inst7, inst7comp); // sum instruments together ito a single audio signal wire signed [21:0] total_audio = inst0comp + inst1comp + inst2comp + inst3comp + inst4comp + inst5comp + inst6comp + inst7comp; wire signed [17:0] audio_comp; // apply final compression to overall audio signal compressor #(NYQ_PERIOD) comp_out (audio_clk, total_audio, audio_comp); assign audio_out = audio_comp; endmodule

compressor.v

Compresses a 22-bit audio signal to an 18-bit audio signal

Exported from Notepad++
// Compresses a 22-bit audio signal to an 18-bit audio signal module compressor #(parameter NYQ_PERIOD = 16'd960) // period of smallest audio fundamental frequency (audio_clk, audio_in, audio_out); input audio_clk; input signed [21:0] audio_in; output reg signed [17:0] audio_out; // counts to maintain each compression amount // ex. count3 = cycles to compress audio by 3 bits reg [15:0] count4, count3, count2, count1; always @ (posedge audio_clk) begin // if the input audio has a 22-bit magnitude if (audio_in[21] == 1'b1) begin // reset the 4-bit compression counter count4 <= NYQ_PERIOD; // else if the 4-bit compression counter hasn't reached zero end else if (count4 != 0) begin // decrement conter count4 <= count4 - 1; end // if the input audio has a 21-bit magnitude if (audio_in[20] == 1'b1) begin // reset the 3-bit compression counter count3 <= NYQ_PERIOD; // else if the 3-bit compression counter hasn't reached zero end else if (count3 != 0) begin // decrement conter count3 <= count3 - 1; end // if the input audio has a 20-bit magnitude if (audio_in[19] == 1'b1) begin // reset the 2-bit compression counter count2 <= NYQ_PERIOD; // else if the 2-bit compression counter hasn't reached zero end else if (count2 != 0) begin // decrement conter count2 <= count2 - 1; end // if the input audio has a 19-bit magnitude if (audio_in[18] == 1'b1) begin // reset the 1-bit compression counter count1 <= NYQ_PERIOD; // else if the 1-bit compression counter hasn't reached zero end else if (count1 != 0) begin // decrement conter count1 <= count1 - 1; end // compress audio based on the highest active counter if (count4 > 0 || audio_in[21] == 1'b1) begin audio_out <= audio_in[21:4]; // compress 4 bits for count4 end else if (count3 > 0 || audio_in[20] == 1'b1) begin audio_out <= audio_in[20:3]; // compress 3 bits for count3 end else if (count2 > 0 || audio_in[19] == 1'b1) begin audio_out <= audio_in[19:2]; // compress 2 bits for count2 end else if (count1 > 0 || audio_in[18] == 1'b1) begin audio_out <= audio_in[18:1]; // compress 1 bits for count1 end else begin audio_out <= audio_in[17:0]; // don't compress if no counters active end end endmodule

Reset_Delay.v

code to reset PLL (written by Bruce Land)

Exported from Notepad++
module Reset_Delay(iCLK,oRESET); input iCLK; output reg oRESET; reg [19:0] Cont; always@(posedge iCLK) begin if(Cont!=20'hFFFFF) begin Cont <= Cont+1; oRESET <= 1'b0; end else oRESET <= 1'b1; end endmodule

VGA_Audio_PLL.v

code to generate audio control clock (written by Bruce Land)

Exported from Notepad++
// megafunction wizard: %ALTPLL% // GENERATION: STANDARD // VERSION: WM1.0 // MODULE: altpll // ============================================================ // File Name: VGA_Audio_PLL.v // Megafunction Name(s): // altpll // // Simulation Library Files(s): // altera_mf // ============================================================ // ************************************************************ // THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE! // // 6.1 Build 201 11/27/2006 SJ Web Edition // ************************************************************ //Copyright (C) 1991-2006 Altera Corporation //Your use of Altera Corporation's design tools, logic functions //and other software and tools, and its AMPP partner logic //functions, and any output files from any of the foregoing //(including device programming or simulation files), and any //associated documentation or information are expressly subject //to the terms and conditions of the Altera Program License //Subscription Agreement, Altera MegaCore Function License //Agreement, or other applicable license agreement, including, //without limitation, that your use is for the sole purpose of //programming logic devices manufactured by Altera and sold by //Altera or its authorized distributors. Please refer to the //applicable agreement for further details. // synopsys translate_off `timescale 1 ps / 1 ps // synopsys translate_on module VGA_Audio_PLL ( areset, inclk0, c0, c1, c2); input areset; input inclk0; output c0; output c1; output c2; wire [5:0] sub_wire0; wire [0:0] sub_wire6 = 1'h0; wire [2:2] sub_wire3 = sub_wire0[2:2]; wire [1:1] sub_wire2 = sub_wire0[1:1]; wire [0:0] sub_wire1 = sub_wire0[0:0]; wire c0 = sub_wire1; wire c1 = sub_wire2; wire c2 = sub_wire3; wire sub_wire4 = inclk0; wire [1:0] sub_wire5 = {sub_wire6, sub_wire4}; altpll altpll_component ( .inclk (sub_wire5), .areset (areset), .clk (sub_wire0), .activeclock (), .clkbad (), .clkena ({6{1'b1}}), .clkloss (), .clkswitch (1'b0), .configupdate (1'b1), .enable0 (), .enable1 (), .extclk (), .extclkena ({4{1'b1}}), .fbin (1'b1), .fbout (), .locked (), .pfdena (1'b1), .phasecounterselect ({4{1'b1}}), .phasedone (), .phasestep (1'b1), .phaseupdown (1'b1), .pllena (1'b1), .scanaclr (1'b0), .scanclk (1'b0), .scanclkena (1'b1), .scandata (1'b0), .scandataout (), .scandone (), .scanread (1'b0), .scanwrite (1'b0), .sclkout0 (), .sclkout1 (), .vcooverrange (), .vcounderrange ()); defparam altpll_component.clk0_divide_by = 15, altpll_component.clk0_duty_cycle = 50, altpll_component.clk0_multiply_by = 14, altpll_component.clk0_phase_shift = "0", altpll_component.clk1_divide_by = 3, altpll_component.clk1_duty_cycle = 50, altpll_component.clk1_multiply_by = 2, altpll_component.clk1_phase_shift = "0", altpll_component.clk2_divide_by = 15, altpll_component.clk2_duty_cycle = 50, altpll_component.clk2_multiply_by = 14, altpll_component.clk2_phase_shift = "-9921", altpll_component.compensate_clock = "CLK0", altpll_component.inclk0_input_frequency = 37037, altpll_component.intended_device_family = "Cyclone II", altpll_component.lpm_type = "altpll", altpll_component.operation_mode = "NORMAL", altpll_component.port_activeclock = "PORT_UNUSED", altpll_component.port_areset = "PORT_USED", altpll_component.port_clkbad0 = "PORT_UNUSED", altpll_component.port_clkbad1 = "PORT_UNUSED", altpll_component.port_clkloss = "PORT_UNUSED", altpll_component.port_clkswitch = "PORT_UNUSED", altpll_component.port_configupdate = "PORT_UNUSED", altpll_component.port_fbin = "PORT_UNUSED", altpll_component.port_inclk0 = "PORT_USED", altpll_component.port_inclk1 = "PORT_UNUSED", altpll_component.port_locked = "PORT_UNUSED", altpll_component.port_pfdena = "PORT_UNUSED", altpll_component.port_phasecounterselect = "PORT_UNUSED", altpll_component.port_phasedone = "PORT_UNUSED", altpll_component.port_phasestep = "PORT_UNUSED", altpll_component.port_phaseupdown = "PORT_UNUSED", altpll_component.port_pllena = "PORT_UNUSED", altpll_component.port_scanaclr = "PORT_UNUSED", altpll_component.port_scanclk = "PORT_UNUSED", altpll_component.port_scanclkena = "PORT_UNUSED", altpll_component.port_scandata = "PORT_UNUSED", altpll_component.port_scandataout = "PORT_UNUSED", altpll_component.port_scandone = "PORT_UNUSED", altpll_component.port_scanread = "PORT_UNUSED", altpll_component.port_scanwrite = "PORT_UNUSED", altpll_component.port_clk0 = "PORT_USED", altpll_component.port_clk1 = "PORT_USED", altpll_component.port_clk2 = "PORT_USED", altpll_component.port_clk3 = "PORT_UNUSED", altpll_component.port_clk4 = "PORT_UNUSED", altpll_component.port_clk5 = "PORT_UNUSED", altpll_component.port_clkena0 = "PORT_UNUSED", altpll_component.port_clkena1 = "PORT_UNUSED", altpll_component.port_clkena2 = "PORT_UNUSED", altpll_component.port_clkena3 = "PORT_UNUSED", altpll_component.port_clkena4 = "PORT_UNUSED", altpll_component.port_clkena5 = "PORT_UNUSED", altpll_component.port_extclk0 = "PORT_UNUSED", altpll_component.port_extclk1 = "PORT_UNUSED", altpll_component.port_extclk2 = "PORT_UNUSED", altpll_component.port_extclk3 = "PORT_UNUSED"; endmodule // ============================================================ // CNX file retrieval info // ============================================================ // Retrieval info: PRIVATE: ACTIVECLK_CHECK STRING "0" // Retrieval info: PRIVATE: BANDWIDTH STRING "1.000" // Retrieval info: PRIVATE: BANDWIDTH_FEATURE_ENABLED STRING "0" // Retrieval info: PRIVATE: BANDWIDTH_FREQ_UNIT STRING "MHz" // Retrieval info: PRIVATE: BANDWIDTH_PRESET STRING "Low" // Retrieval info: PRIVATE: BANDWIDTH_USE_AUTO STRING "1" // Retrieval info: PRIVATE: BANDWIDTH_USE_CUSTOM STRING "0" // Retrieval info: PRIVATE: BANDWIDTH_USE_PRESET STRING "0" // Retrieval info: PRIVATE: CLKBAD_SWITCHOVER_CHECK STRING "0" // Retrieval info: PRIVATE: CLKLOSS_CHECK STRING "0" // Retrieval info: PRIVATE: CLKSWITCH_CHECK STRING "1" // Retrieval info: PRIVATE: CNX_NO_COMPENSATE_RADIO STRING "0" // Retrieval info: PRIVATE: CREATE_CLKBAD_CHECK STRING "0" // Retrieval info: PRIVATE: CREATE_INCLK1_CHECK STRING "0" // Retrieval info: PRIVATE: CUR_DEDICATED_CLK STRING "c0" // Retrieval info: PRIVATE: CUR_FBIN_CLK STRING "e0" // Retrieval info: PRIVATE: DEVICE_SPEED_GRADE STRING "Any" // Retrieval info: PRIVATE: DEV_FAMILY STRING "Cyclone II" // Retrieval info: PRIVATE: DIV_FACTOR0 NUMERIC "1" // Retrieval info: PRIVATE: DIV_FACTOR1 NUMERIC "6" // Retrieval info: PRIVATE: DIV_FACTOR2 NUMERIC "1" // Retrieval info: PRIVATE: DUTY_CYCLE0 STRING "50.00000000" // Retrieval info: PRIVATE: DUTY_CYCLE1 STRING "50.00000000" // Retrieval info: PRIVATE: DUTY_CYCLE2 STRING "50.00000000" // Retrieval info: PRIVATE: EXT_FEEDBACK_RADIO STRING "0" // Retrieval info: PRIVATE: GLOCKED_COUNTER_EDIT_CHANGED STRING "1" // Retrieval info: PRIVATE: GLOCKED_FEATURE_ENABLED STRING "1" // Retrieval info: PRIVATE: GLOCKED_MODE_CHECK STRING "0" // Retrieval info: PRIVATE: GLOCK_COUNTER_EDIT NUMERIC "1048575" // Retrieval info: PRIVATE: HAS_MANUAL_SWITCHOVER STRING "1" // Retrieval info: PRIVATE: INCLK0_FREQ_EDIT STRING "27.000" // Retrieval info: PRIVATE: INCLK0_FREQ_UNIT_COMBO STRING "MHz" // Retrieval info: PRIVATE: INCLK1_FREQ_EDIT STRING "27.000" // Retrieval info: PRIVATE: INCLK1_FREQ_EDIT_CHANGED STRING "1" // Retrieval info: PRIVATE: INCLK1_FREQ_UNIT_CHANGED STRING "1" // Retrieval info: PRIVATE: INCLK1_FREQ_UNIT_COMBO STRING "MHz" // Retrieval info: PRIVATE: INT_FEEDBACK__MODE_RADIO STRING "1" // Retrieval info: PRIVATE: LOCKED_OUTPUT_CHECK STRING "0" // Retrieval info: PRIVATE: LONG_SCAN_RADIO STRING "1" // Retrieval info: PRIVATE: LVDS_MODE_DATA_RATE STRING "Not Available" // Retrieval info: PRIVATE: LVDS_MODE_DATA_RATE_DIRTY NUMERIC "0" // Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT0 STRING "deg" // Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT1 STRING "deg" // Retrieval info: PRIVATE: LVDS_PHASE_SHIFT_UNIT2 STRING "ps" // Retrieval info: PRIVATE: MIRROR_CLK0 STRING "0" // Retrieval info: PRIVATE: MIRROR_CLK1 STRING "0" // Retrieval info: PRIVATE: MIRROR_CLK2 STRING "0" // Retrieval info: PRIVATE: MULT_FACTOR0 NUMERIC "1" // Retrieval info: PRIVATE: MULT_FACTOR1 NUMERIC "5" // Retrieval info: PRIVATE: MULT_FACTOR2 NUMERIC "1" // Retrieval info: PRIVATE: NORMAL_MODE_RADIO STRING "1" // Retrieval info: PRIVATE: OUTPUT_FREQ0 STRING "25.20000000" // Retrieval info: PRIVATE: OUTPUT_FREQ1 STRING "18.00000000" // Retrieval info: PRIVATE: OUTPUT_FREQ2 STRING "25.20000000" // Retrieval info: PRIVATE: OUTPUT_FREQ_MODE0 STRING "1" // Retrieval info: PRIVATE: OUTPUT_FREQ_MODE1 STRING "1" // Retrieval info: PRIVATE: OUTPUT_FREQ_MODE2 STRING "1" // Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT0 STRING "MHz" // Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT1 STRING "MHz" // Retrieval info: PRIVATE: OUTPUT_FREQ_UNIT2 STRING "MHz" // Retrieval info: PRIVATE: PHASE_RECONFIG_FEATURE_ENABLED STRING "0" // Retrieval info: PRIVATE: PHASE_RECONFIG_INPUTS_CHECK STRING "0" // Retrieval info: PRIVATE: PHASE_SHIFT0 STRING "0.00000000" // Retrieval info: PRIVATE: PHASE_SHIFT1 STRING "0.00000000" // Retrieval info: PRIVATE: PHASE_SHIFT2 STRING "-90.00000000" // Retrieval info: PRIVATE: PHASE_SHIFT_UNIT0 STRING "deg" // Retrieval info: PRIVATE: PHASE_SHIFT_UNIT1 STRING "deg" // Retrieval info: PRIVATE: PHASE_SHIFT_UNIT2 STRING "deg" // Retrieval info: PRIVATE: PLL_ADVANCED_PARAM_CHECK STRING "0" // Retrieval info: PRIVATE: PLL_ARESET_CHECK STRING "1" // Retrieval info: PRIVATE: PLL_AUTOPLL_CHECK NUMERIC "1" // Retrieval info: PRIVATE: PLL_ENA_CHECK STRING "0" // Retrieval info: PRIVATE: PLL_ENHPLL_CHECK NUMERIC "0" // Retrieval info: PRIVATE: PLL_FASTPLL_CHECK NUMERIC "0" // Retrieval info: PRIVATE: PLL_LVDS_PLL_CHECK NUMERIC "0" // Retrieval info: PRIVATE: PLL_PFDENA_CHECK STRING "0" // Retrieval info: PRIVATE: PLL_TARGET_HARCOPY_CHECK NUMERIC "0" // Retrieval info: PRIVATE: PRIMARY_CLK_COMBO STRING "inclk0" // Retrieval info: PRIVATE: SACN_INPUTS_CHECK STRING "0" // Retrieval info: PRIVATE: SCAN_FEATURE_ENABLED STRING "0" // Retrieval info: PRIVATE: SELF_RESET_LOCK_LOSS STRING "0" // Retrieval info: PRIVATE: SHORT_SCAN_RADIO STRING "0" // Retrieval info: PRIVATE: SPREAD_FEATURE_ENABLED STRING "0" // Retrieval info: PRIVATE: SPREAD_FREQ STRING "50.000" // Retrieval info: PRIVATE: SPREAD_FREQ_UNIT STRING "KHz" // Retrieval info: PRIVATE: SPREAD_PERCENT STRING "0.500" // Retrieval info: PRIVATE: SPREAD_USE STRING "0" // Retrieval info: PRIVATE: SRC_SYNCH_COMP_RADIO STRING "0" // Retrieval info: PRIVATE: STICKY_CLK0 STRING "1" // Retrieval info: PRIVATE: STICKY_CLK1 STRING "1" // Retrieval info: PRIVATE: STICKY_CLK2 STRING "1" // Retrieval info: PRIVATE: SWITCHOVER_COUNT_EDIT NUMERIC "1" // Retrieval info: PRIVATE: SWITCHOVER_FEATURE_ENABLED STRING "1" // Retrieval info: PRIVATE: USE_CLK0 STRING "1" // Retrieval info: PRIVATE: USE_CLK1 STRING "1" // Retrieval info: PRIVATE: USE_CLK2 STRING "1" // Retrieval info: PRIVATE: USE_CLKENA0 STRING "0" // Retrieval info: PRIVATE: USE_CLKENA1 STRING "0" // Retrieval info: PRIVATE: USE_CLKENA2 STRING "0" // Retrieval info: PRIVATE: ZERO_DELAY_RADIO STRING "0" // Retrieval info: LIBRARY: altera_mf altera_mf.altera_mf_components.all // Retrieval info: CONSTANT: CLK0_DIVIDE_BY NUMERIC "15" // Retrieval info: CONSTANT: CLK0_DUTY_CYCLE NUMERIC "50" // Retrieval info: CONSTANT: CLK0_MULTIPLY_BY NUMERIC "14" // Retrieval info: CONSTANT: CLK0_PHASE_SHIFT STRING "0" // Retrieval info: CONSTANT: CLK1_DIVIDE_BY NUMERIC "3" // Retrieval info: CONSTANT: CLK1_DUTY_CYCLE NUMERIC "50" // Retrieval info: CONSTANT: CLK1_MULTIPLY_BY NUMERIC "2" // Retrieval info: CONSTANT: CLK1_PHASE_SHIFT STRING "0" // Retrieval info: CONSTANT: CLK2_DIVIDE_BY NUMERIC "15" // Retrieval info: CONSTANT: CLK2_DUTY_CYCLE NUMERIC "50" // Retrieval info: CONSTANT: CLK2_MULTIPLY_BY NUMERIC "14" // Retrieval info: CONSTANT: CLK2_PHASE_SHIFT STRING "-9921" // Retrieval info: CONSTANT: COMPENSATE_CLOCK STRING "CLK0" // Retrieval info: CONSTANT: INCLK0_INPUT_FREQUENCY NUMERIC "37037" // Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone II" // Retrieval info: CONSTANT: LPM_TYPE STRING "altpll" // Retrieval info: CONSTANT: OPERATION_MODE STRING "NORMAL" // Retrieval info: CONSTANT: PORT_ACTIVECLOCK STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_ARESET STRING "PORT_USED" // Retrieval info: CONSTANT: PORT_CLKBAD0 STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_CLKBAD1 STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_CLKLOSS STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_CLKSWITCH STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_CONFIGUPDATE STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_FBIN STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_INCLK0 STRING "PORT_USED" // Retrieval info: CONSTANT: PORT_INCLK1 STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_LOCKED STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_PFDENA STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_PHASECOUNTERSELECT STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_PHASEDONE STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_PHASESTEP STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_PHASEUPDOWN STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_PLLENA STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_SCANACLR STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_SCANCLK STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_SCANCLKENA STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_SCANDATA STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_SCANDATAOUT STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_SCANDONE STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_SCANREAD STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_SCANWRITE STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_clk0 STRING "PORT_USED" // Retrieval info: CONSTANT: PORT_clk1 STRING "PORT_USED" // Retrieval info: CONSTANT: PORT_clk2 STRING "PORT_USED" // Retrieval info: CONSTANT: PORT_clk3 STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_clk4 STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_clk5 STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_clkena0 STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_clkena1 STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_clkena2 STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_clkena3 STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_clkena4 STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_clkena5 STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_extclk0 STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_extclk1 STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_extclk2 STRING "PORT_UNUSED" // Retrieval info: CONSTANT: PORT_extclk3 STRING "PORT_UNUSED" // Retrieval info: USED_PORT: @clk 0 0 6 0 OUTPUT_CLK_EXT VCC "@clk[5..0]" // Retrieval info: USED_PORT: @extclk 0 0 4 0 OUTPUT_CLK_EXT VCC "@extclk[3..0]" // Retrieval info: USED_PORT: areset 0 0 0 0 INPUT GND "areset" // Retrieval info: USED_PORT: c0 0 0 0 0 OUTPUT_CLK_EXT VCC "c0" // Retrieval info: USED_PORT: c1 0 0 0 0 OUTPUT_CLK_EXT VCC "c1" // Retrieval info: USED_PORT: c2 0 0 0 0 OUTPUT_CLK_EXT VCC "c2" // Retrieval info: USED_PORT: inclk0 0 0 0 0 INPUT_CLK_EXT GND "inclk0" // Retrieval info: CONNECT: @inclk 0 0 1 0 inclk0 0 0 0 0 // Retrieval info: CONNECT: c0 0 0 0 0 @clk 0 0 1 0 // Retrieval info: CONNECT: c1 0 0 0 0 @clk 0 0 1 1 // Retrieval info: CONNECT: c2 0 0 0 0 @clk 0 0 1 2 // Retrieval info: CONNECT: @inclk 0 0 1 1 GND 0 0 0 0 // Retrieval info: CONNECT: @areset 0 0 0 0 areset 0 0 0 0 // Retrieval info: GEN_FILE: TYPE_NORMAL VGA_Audio_PLL.v TRUE FALSE // Retrieval info: GEN_FILE: TYPE_NORMAL VGA_Audio_PLL.inc FALSE FALSE // Retrieval info: GEN_FILE: TYPE_NORMAL VGA_Audio_PLL.cmp FALSE FALSE // Retrieval info: GEN_FILE: TYPE_NORMAL VGA_Audio_PLL.bsf FALSE FALSE // Retrieval info: GEN_FILE: TYPE_NORMAL VGA_Audio_PLL_inst.v FALSE FALSE // Retrieval info: GEN_FILE: TYPE_NORMAL VGA_Audio_PLL_bb.v FALSE FALSE // Retrieval info: GEN_FILE: TYPE_NORMAL VGA_Audio_PLL_waveforms.html TRUE FALSE // Retrieval info: GEN_FILE: TYPE_NORMAL VGA_Audio_PLL_wave*.jpg FALSE FALSE // Retrieval info: GEN_FILE: TYPE_NORMAL VGA_Audio_PLL.ppf TRUE FALSE // Retrieval info: LIB_FILE: altera_mf

music_gui.m

Main GUI code, after downloading .sof, run this to use GUI

Exported from Notepad++
%pos = [left bottom width height] %Clear workspace and open ports clear all newobjs=instrfind; if ~(isempty(newobjs)) fclose(instrfind) end % Create object param=daqhwinfo('nidaq'); dio=digitalio('nidaq', param.InstalledBoardIds{1}); % create digital IO object addline(dio, 0:7, 0, 'out'); addline(dio, 0, 1, 'out'); %define figure and axis figh = figure('Resize', 'off', 'Position', [10,10,1100,750], 'Color', [.3 .7 0]); clf; imh = axes('Parent', figh, 'Position', [.05 .8 .2 .15]); img=imread('Logo.png'); image(img, 'Parent', imh); set(imh,'XTick',[]); set(imh,'YTick',[]); drawnow; %define the quit button quitbutton=uicontrol('style','pushbutton',... 'string','Quit', ... 'fontsize',12, ... 'position',[1000,50,75,50], ... 'callback','quitit=1;close;'); %define the reset button resetbutton=uicontrol('style','pushbutton',... 'string','Reset', ... 'fontsize',12, ... 'position',[900,50,75,50], ... 'callback','reset=1;'); %define the save drum button savedrumbutton=uicontrol('style','pushbutton',... 'string','Save Drum Pattern',... 'position',[800 650 125 50],... 'callback','savedrum=1;'); %define the load drum button loaddrumbutton=uicontrol('style','pushbutton',... 'string','Load Drum Pattern',... 'position',[800 600 125 50],... 'callback','loaddrum=1;'); %define the save melody button savemelodybutton=uicontrol('style','pushbutton',... 'string','Save Melody Pattern',... 'position',[600 650 125 50],... 'callback','savemelody=1;'); %define the load melody button loadmelodybutton=uicontrol('style','pushbutton',... 'string','Load Melody Pattern',... 'position',[600 600 125 50],... 'callback','loadmelody=1;'); %define the save melody button clearmelodybutton=uicontrol('style','pushbutton',... 'string','Clear Melody Pattern',... 'position',[400 650 125 50],... 'callback','clearmelody=1;'); %define the load melody button cleardrumbutton=uicontrol('style','pushbutton',... 'string','Clear Drum Pattern',... 'position',[400 600 125 50],... 'callback','cleardrum=1;'); %-----------------------define instrument a buttons--------------------- %vector of presses ab=zeros(1,16); aout=false(1,16); % Create the button group. ha = uibuttongroup('visible','on','Units','pixels', 'Position',[20 525 1000 50]); % Create three toggle buttons in the button group. ab(1) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[50 530 40 40],'HandleVisibility','off','Callback','achange=1;'); ab(2) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[110 530 40 40],'HandleVisibility','off','Callback','achange=1;'); ab(3) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[170 530 40 40],'HandleVisibility','off','Callback','achange=1;'); ab(4) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[230 530 40 40],'HandleVisibility','off','Callback','achange=1;'); ab(5) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[290 530 40 40],'HandleVisibility','off','Callback','achange=1;'); ab(6) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[350 530 40 40],'HandleVisibility','off','Callback','achange=1;'); ab(7) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[410 530 40 40],'HandleVisibility','off','Callback','achange=1;'); ab(8) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[470 530 40 40],'HandleVisibility','off','Callback','achange=1;'); ab(9) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[530 530 40 40],'HandleVisibility','off','Callback','achange=1;'); ab(10) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[590 530 40 40],'HandleVisibility','off','Callback','achange=1;'); ab(11) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[650 530 40 40],'HandleVisibility','off','Callback','achange=1;'); ab(12) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[710 530 40 40],'HandleVisibility','off','Callback','achange=1;'); ab(13) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[770 530 40 40],'HandleVisibility','off','Callback','achange=1;'); ab(14) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[830 530 40 40],'HandleVisibility','off','Callback','achange=1;'); ab(15) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[890 530 40 40],'HandleVisibility','off','Callback','achange=1;'); ab(16) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[950 530 40 40],'HandleVisibility','off','Callback','achange=1;'); %-----------------------define instrument b buttons--------------------- %vector of presses bb=zeros(1,16); bout=false(1,16); % Create the button group. hb = uibuttongroup('visible','on','Units','pixels', 'Position',[20 465 1000 50]); % Create three toggle buttons in the button group. bb(1) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[50 470 40 40],'HandleVisibility','off','Callback','bchange=1;'); bb(2) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[110 470 40 40],'HandleVisibility','off','Callback','bchange=1;'); bb(3) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[170 470 40 40],'HandleVisibility','off','Callback','bchange=1;'); bb(4) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[230 470 40 40],'HandleVisibility','off','Callback','bchange=1;'); bb(5) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[290 470 40 40],'HandleVisibility','off','Callback','bchange=1;'); bb(6) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[350 470 40 40],'HandleVisibility','off','Callback','bchange=1;'); bb(7) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[410 470 40 40],'HandleVisibility','off','Callback','bchange=1;'); bb(8) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[470 470 40 40],'HandleVisibility','off','Callback','bchange=1;'); bb(9) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[530 470 40 40],'HandleVisibility','off','Callback','bchange=1;'); bb(10) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[590 470 40 40],'HandleVisibility','off','Callback','bchange=1;'); bb(11) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[650 470 40 40],'HandleVisibility','off','Callback','bchange=1;'); bb(12) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[710 470 40 40],'HandleVisibility','off','Callback','bchange=1;'); bb(13) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[770 470 40 40],'HandleVisibility','off','Callback','bchange=1;'); bb(14) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[830 470 40 40],'HandleVisibility','off','Callback','bchange=1;'); bb(15) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[890 470 40 40],'HandleVisibility','off','Callback','bchange=1;'); bb(16) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[950 470 40 40],'HandleVisibility','off','Callback','bchange=1;'); %-----------------------define instrument c buttons--------------------- %vector of presses cb=zeros(1,16); cout=false(1,16); % Create the button group. hc = uibuttongroup('visible','on','Units','pixels', 'Position',[20 405 1000 50]); % Create three toggle buttons in the button group. cb(1) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[50 410 40 40],'HandleVisibility','off','Callback','cchange=1;'); cb(2) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[110 410 40 40],'HandleVisibility','off','Callback','cchange=1;'); cb(3) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[170 410 40 40],'HandleVisibility','off','Callback','cchange=1;'); cb(4) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[230 410 40 40],'HandleVisibility','off','Callback','cchange=1;'); cb(5) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[290 410 40 40],'HandleVisibility','off','Callback','cchange=1;'); cb(6) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[350 410 40 40],'HandleVisibility','off','Callback','cchange=1;'); cb(7) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[410 410 40 40],'HandleVisibility','off','Callback','cchange=1;'); cb(8) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[470 410 40 40],'HandleVisibility','off','Callback','cchange=1;'); cb(9) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[530 410 40 40],'HandleVisibility','off','Callback','cchange=1;'); cb(10) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[590 410 40 40],'HandleVisibility','off','Callback','cchange=1;'); cb(11) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[650 410 40 40],'HandleVisibility','off','Callback','cchange=1;'); cb(12) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[710 410 40 40],'HandleVisibility','off','Callback','cchange=1;'); cb(13) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[770 410 40 40],'HandleVisibility','off','Callback','cchange=1;'); cb(14) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[830 410 40 40],'HandleVisibility','off','Callback','cchange=1;'); cb(15) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[890 410 40 40],'HandleVisibility','off','Callback','cchange=1;'); cb(16) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[950 410 40 40],'HandleVisibility','off','Callback','cchange=1;'); %-----------------------define instrument c buttons--------------------- %vector of presses db=zeros(1,16); dout=false(1,16); % Create the button group. hd = uibuttongroup('visible','on','Units','pixels', 'Position',[20 345 1000 50]); % Create three toggle buttons in the button group. db(1) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[50 350 40 40],'HandleVisibility','off','Callback','dchange=1;'); db(2) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[110 350 40 40],'HandleVisibility','off','Callback','dchange=1;'); db(3) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[170 350 40 40],'HandleVisibility','off','Callback','dchange=1;'); db(4) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[230 350 40 40],'HandleVisibility','off','Callback','dchange=1;'); db(5) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[290 350 40 40],'HandleVisibility','off','Callback','dchange=1;'); db(6) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[350 350 40 40],'HandleVisibility','off','Callback','dchange=1;'); db(7) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[410 350 40 40],'HandleVisibility','off','Callback','dchange=1;'); db(8) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[470 350 40 40],'HandleVisibility','off','Callback','dchange=1;'); db(9) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[530 350 40 40],'HandleVisibility','off','Callback','dchange=1;'); db(10) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[590 350 40 40],'HandleVisibility','off','Callback','dchange=1;'); db(11) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[650 350 40 40],'HandleVisibility','off','Callback','dchange=1;'); db(12) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[710 350 40 40],'HandleVisibility','off','Callback','dchange=1;'); db(13) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[770 350 40 40],'HandleVisibility','off','Callback','dchange=1;'); db(14) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[830 350 40 40],'HandleVisibility','off','Callback','dchange=1;'); db(15) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[890 350 40 40],'HandleVisibility','off','Callback','dchange=1;'); db(16) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[950 350 40 40],'HandleVisibility','off','Callback','dchange=1;'); %-----------------------define instrument e buttons--------------------- %vector of presses eb=zeros(1,16); eout=false(1,16); % Create the button group. he = uibuttongroup('visible','on','Units','pixels', 'Position',[20 285 1000 50]); % Create three toggle buttons in the button group. eb(1) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[50 290 40 40],'HandleVisibility','off','Callback','echange=1;'); eb(2) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[110 290 40 40],'HandleVisibility','off','Callback','echange=1;'); eb(3) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[170 290 40 40],'HandleVisibility','off','Callback','echange=1;'); eb(4) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[230 290 40 40],'HandleVisibility','off','Callback','echange=1;'); eb(5) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[290 290 40 40],'HandleVisibility','off','Callback','echange=1;'); eb(6) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[350 290 40 40],'HandleVisibility','off','Callback','echange=1;'); eb(7) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[410 290 40 40],'HandleVisibility','off','Callback','echange=1;'); eb(8) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[470 290 40 40],'HandleVisibility','off','Callback','echange=1;'); eb(9) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[530 290 40 40],'HandleVisibility','off','Callback','echange=1;'); eb(10) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[590 290 40 40],'HandleVisibility','off','Callback','echange=1;'); eb(11) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[650 290 40 40],'HandleVisibility','off','Callback','echange=1;'); eb(12) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[710 290 40 40],'HandleVisibility','off','Callback','echange=1;'); eb(13) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[770 290 40 40],'HandleVisibility','off','Callback','echange=1;'); eb(14) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[830 290 40 40],'HandleVisibility','off','Callback','echange=1;'); eb(15) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[890 290 40 40],'HandleVisibility','off','Callback','echange=1;'); eb(16) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[950 290 40 40],'HandleVisibility','off','Callback','echange=1;'); %-----------------------define instrument f buttons--------------------- %vector of presses fb=zeros(1,16); fout=false(1,16); % Create the button group. hf = uibuttongroup('visible','on','Units','pixels', 'Position',[20 225 1000 50]); % Create three toggle buttons in the button group. fb(1) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[50 230 40 40],'HandleVisibility','off','Callback','fchange=1;'); fb(2) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[110 230 40 40],'HandleVisibility','off','Callback','fchange=1;'); fb(3) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[170 230 40 40],'HandleVisibility','off','Callback','fchange=1;'); fb(4) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[230 230 40 40],'HandleVisibility','off','Callback','fchange=1;'); fb(5) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[290 230 40 40],'HandleVisibility','off','Callback','fchange=1;'); fb(6) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[350 230 40 40],'HandleVisibility','off','Callback','fchange=1;'); fb(7) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[410 230 40 40],'HandleVisibility','off','Callback','fchange=1;'); fb(8) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[470 230 40 40],'HandleVisibility','off','Callback','fchange=1;'); fb(9) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[530 230 40 40],'HandleVisibility','off','Callback','fchange=1;'); fb(10) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[590 230 40 40],'HandleVisibility','off','Callback','fchange=1;'); fb(11) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[650 230 40 40],'HandleVisibility','off','Callback','fchange=1;'); fb(12) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[710 230 40 40],'HandleVisibility','off','Callback','fchange=1;'); fb(13) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[770 230 40 40],'HandleVisibility','off','Callback','fchange=1;'); fb(14) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[830 230 40 40],'HandleVisibility','off','Callback','fchange=1;'); fb(15) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[890 230 40 40],'HandleVisibility','off','Callback','fchange=1;'); fb(16) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[950 230 40 40],'HandleVisibility','off','Callback','fchange=1;'); %-----------------------define instrument f buttons--------------------- %vector of presses gb=zeros(1,16); gout=false(1,16); % Create the button group. hg = uibuttongroup('visible','on','Units','pixels', 'Position',[20 165 1000 50]); % Create three toggle buttons in the button group. gb(1) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[50 170 40 40],'HandleVisibility','off','Callback','gchange=1;'); gb(2) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[110 170 40 40],'HandleVisibility','off','Callback','gchange=1;'); gb(3) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[170 170 40 40],'HandleVisibility','off','Callback','gchange=1;'); gb(4) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[230 170 40 40],'HandleVisibility','off','Callback','gchange=1;'); gb(5) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[290 170 40 40],'HandleVisibility','off','Callback','gchange=1;'); gb(6) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[350 170 40 40],'HandleVisibility','off','Callback','gchange=1;'); gb(7) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[410 170 40 40],'HandleVisibility','off','Callback','gchange=1;'); gb(8) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[470 170 40 40],'HandleVisibility','off','Callback','gchange=1;'); gb(9) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[530 170 40 40],'HandleVisibility','off','Callback','gchange=1;'); gb(10) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[590 170 40 40],'HandleVisibility','off','Callback','gchange=1;'); gb(11) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[650 170 40 40],'HandleVisibility','off','Callback','gchange=1;'); gb(12) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[710 170 40 40],'HandleVisibility','off','Callback','gchange=1;'); gb(13) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[770 170 40 40],'HandleVisibility','off','Callback','gchange=1;'); gb(14) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[830 170 40 40],'HandleVisibility','off','Callback','gchange=1;'); gb(15) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[890 170 40 40],'HandleVisibility','off','Callback','gchange=1;'); gb(16) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[950 170 40 40],'HandleVisibility','off','Callback','gchange=1;'); %-----------------------define instrument h buttons--------------------- %vector of presses hb=zeros(1,16); hout=false(1,16); % Create the button group. hh = uibuttongroup('visible','on','Units','pixels', 'Position',[20 105 1000 50]); % Create three toggle buttons in the button group. hb(1) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[50 110 40 40],'HandleVisibility','off','Callback','hchange=1;'); hb(2) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[110 110 40 40],'HandleVisibility','off','Callback','hchange=1;'); hb(3) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[170 110 40 40],'HandleVisibility','off','Callback','hchange=1;'); hb(4) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[230 110 40 40],'HandleVisibility','off','Callback','hchange=1;'); hb(5) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[290 110 40 40],'HandleVisibility','off','Callback','hchange=1;'); hb(6) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[350 110 40 40],'HandleVisibility','off','Callback','hchange=1;'); hb(7) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[410 110 40 40],'HandleVisibility','off','Callback','hchange=1;'); hb(8) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[470 110 40 40],'HandleVisibility','off','Callback','hchange=1;'); hb(9) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[530 110 40 40],'HandleVisibility','off','Callback','hchange=1;'); hb(10) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[590 110 40 40],'HandleVisibility','off','Callback','hchange=1;'); hb(11) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[650 110 40 40],'HandleVisibility','off','Callback','hchange=1;'); hb(12) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[710 110 40 40],'HandleVisibility','off','Callback','hchange=1;'); hb(13) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[770 110 40 40],'HandleVisibility','off','Callback','hchange=1;'); hb(14) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[830 110 40 40],'HandleVisibility','off','Callback','hchange=1;'); hb(15) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[890 110 40 40],'HandleVisibility','off','Callback','hchange=1;'); hb(16) = uicontrol('Style','togglebutton','Units','pixels',... 'pos',[950 110 40 40],'HandleVisibility','off','Callback','hchange=1;'); %flags quitit=0; achange=0; bchange=0; cchange=0; dchange=0; echange=0; fchange=0; gchange=0; hchange=0; send=0; done_send=0; savedrum=0; loaddrum=0; cleardrum=0; savemelody=0; loadmelody=0; clearmelody=0; reset=0; %saved patterns drumpattern = [aout bout cout]; melodypattern = [dout eout fout gout hout]; % Output data Fs=.5; per=1/Fs; % Configure the callbacks dio.TimerFcn = @dooutput; dio.TimerPeriod = 1/Fs; %256 Hz % Setup the userdata data=[aout bout cout dout eout fout gout hout]; dio.UserData = data; %Start the object start(dio); %Infinite GUI loop drawnow; while (~quitit) %If any user input changes occur, update the corresponding array if (achange) aout=logical(cell2mat((get(ab(:),'Value'))))'; achange=0; send=1; end if (bchange) bout=logical(cell2mat((get(bb(:),'Value'))))'; bchange=0; send=1; end if (cchange) cout=logical(cell2mat((get(cb(:),'Value'))))'; cchange=0; send=1; end if (dchange) dout=logical(cell2mat((get(db(:),'Value'))))'; dchange=0; send=1; end if (echange) eout=logical(cell2mat((get(eb(:),'Value'))))'; echange=0; send=1; end if (fchange) fout=logical(cell2mat((get(fb(:),'Value'))))'; fchange=0; send=1; end if (gchange) gout=logical(cell2mat((get(gb(:),'Value'))))'; gchange=0; send=1; end if (hchange) hout=logical(cell2mat((get(hb(:),'Value'))))'; hchange=0; send=1; end %save instruments corresponding to drums if (savedrum) drumpattern = [aout bout cout]; savedrum = 0; end %load from memory the instruments corresponding to drum if (loaddrum) aout = drumpattern(1:16); bout = drumpattern(17:32); cout = drumpattern(33:48); set(ab(aout),'Value',1); set(ab(~aout),'Value',0); set(bb(bout),'Value',1); set(bb(~bout),'Value',0); set(cb(cout),'Value',1); set(cb(~cout),'Value',0); loaddrum = 0; send=1; end %save instruments corresponding to melody if (savemelody) melodypattern = [dout eout fout gout hout]; savemelody = 0; end %load from memory the instruments corresponding to melody if (loadmelody) dout = melodypattern(1:16); eout = melodypattern(17:32); fout = melodypattern(33:48); gout = melodypattern(49:64); hout = melodypattern(65:80); set(db(dout),'Value',1); set(db(~dout),'Value',0); set(eb(eout),'Value',1); set(eb(~eout),'Value',0); set(fb(fout),'Value',1); set(fb(~fout),'Value',0); set(gb(gout),'Value',1); set(gb(~gout),'Value',0); set(hb(hout),'Value',1); set(hb(~hout),'Value',0); loadmelody = 0; send=1; end if (cleardrum) aout=false(1,16); bout=false(1,16); cout=false(1,16); set(ab(:),'Value',0); set(bb(:),'Value',0); set(cb(:),'Value',0); cleardrum=0; end if (clearmelody) dout=false(1,16); eout=false(1,16); fout=false(1,16); gout=false(1,16); hout=false(1,16); set(db(:),'Value',0); set(eb(:),'Value',0); set(fb(:),'Value',0); set(gb(:),'Value',0); set(hb(:),'Value',0); clearmelody=0; end %reset all if (reset) aout=false(1,16); bout=false(1,16); cout=false(1,16); set(ab(:),'Value',0); set(bb(:),'Value',0); set(cb(:),'Value',0); dout=false(1,16); eout=false(1,16); fout=false(1,16); gout=false(1,16); hout=false(1,16); set(db(:),'Value',0); set(eb(:),'Value',0); set(fb(:),'Value',0); set(gb(:),'Value',0); set(hb(:),'Value',0); reset=0; end %reassign data for periodic output from dio object data=[aout bout cout dout eout fout gout hout]; dio.UserData = data; drawnow; end

dooutput.m

Periodic sending code used for dio object

Exported from Notepad++
%This module periodically outputs all words corresponding to instrument sequences in 2 bytes per word %Top half of word is sent first with a 1 in port 1.0, Second half is sent second with 0 in port 1.0 function dooutput(obj, event) data=obj.UserData; count=1; L=length(data); msb=1; per=1/50; %.5 Hz update while (count <= L) tic; temp=data(count:(count+7)); if msb putvalue(obj,[temp msb]); %function to put value in NIDAQ else putvalue(obj,[temp msb]); end msb=~msb; count = count + 8; java.lang.Thread.sleep(1000*(per-toc)); %ms accuracy sleep end end

tempo_ROM.m

Used to generate tempo_ROM.v

Exported from Notepad++
%print tempo in ROM modules in verilog tempol=40; tempoh=250; ranget=tempoh-tempol; addr_bits=ceil(log2(ranget)); tempo_factor=3000000000; %50MHz * 60sec = cycles word_length=32; fraction_length=0; %not fixed point notation %file name file_ROM='tempo_ROM.v'; fid=fopen(file_ROM,'w'); %eigth note divisions %print preliminary module items fprintf(fid, 'module eight_note (clock, address, data_out);\n\t'); fprintf(fid, 'input clock;\n\t'); fprintf(fid, 'input [%d:0] address;\n\t', addr_bits-1); fprintf(fid, 'output [%d:0] data_out;\n\n\t', word_length-1); fprintf(fid, 'reg [%d:0] data_out;\n\n\t', word_length-1); fprintf(fid, 'always @ (posedge clock)\n\tbegin\n\t\tcase (address)\n\t\t\t'); for j=1:(ranget+1) address=dec2bin(j-1,addr_bits); a=fi(tempo_factor/((j+tempol-1)*2),'WordLength',word_length,'FractionLength',fraction_length); b=hex(a); fprintf(fid, '%d''b%s: data_out = %d''h%s;\n\t\t\t', addr_bits, address, word_length, b); end fprintf(fid, 'default: data_out = %d''h00000000;\n\t\tendcase\n\tend\nendmodule\n\n', word_length); %sixteenth note divisions %print preliminary module items fprintf(fid, 'module sixteen_note (clock, address, data_out);\n\t'); fprintf(fid, 'input clock;\n\t'); fprintf(fid, 'input [%d:0] address;\n\t', addr_bits-1); fprintf(fid, 'output [%d:0] data_out;\n\n\t', word_length-1); fprintf(fid, 'reg [%d:0] data_out;\n\n\t', word_length-1); fprintf(fid, 'always @ (posedge clock)\n\tbegin\n\t\tcase (address)\n\t\t\t'); for j=1:(ranget+1) address=dec2bin(j-1,addr_bits); a=fi(tempo_factor/((j+tempol-1)*4),'WordLength',word_length,'FractionLength',fraction_length); b=hex(a); fprintf(fid, '%d''b%s: data_out = %d''h%s;\n\t\t\t', addr_bits, address, word_length, b); end fprintf(fid, 'default: data_out = %d''h00000000;\n\t\tendcase\n\tend\nendmodule\n\n', word_length); fclose('all');

slope_ROM.m

Used to generate slope_ROM.v

Exported from Notepad++
%print slope8 LUT in Verilog ROM clear all; tempol=40; tempoh=250; tempo_factor=3000000000; %50MHz * 60sec = cycles ranget=tempoh-tempol; addr_bits=ceil(log2(ranget)); word_length=18; fraction_length=16; for j=1:(ranget+1) a(j)=tempo_factor/((j+tempol-1)*2); end slope8=10000./a; %file name file_ROM='slope_ROM.v'; fid=fopen(file_ROM,'w'); %eigth note divisions %print preliminary module items fprintf(fid, 'module slope8 (clock, address, data_out);\n\t'); fprintf(fid, 'input clock;\n\t'); fprintf(fid, 'input [%d:0] address;\n\t', addr_bits-1); fprintf(fid, 'output [%d:0] data_out;\n\n\t', word_length-1); fprintf(fid, 'reg [%d:0] data_out;\n\n\t', word_length-1); fprintf(fid, 'always @ (posedge clock)\n\tbegin\n\t\tcase (address)\n\t\t\t'); for j=1:(ranget+1) address=dec2bin(j-1,addr_bits); a=fi(slope8(j),'WordLength',word_length,'FractionLength',fraction_length); b=hex(a); fprintf(fid, '%d''b%s: data_out = %d''h%s;\n\t\t\t', addr_bits, address, word_length, b); end fprintf(fid, 'default: data_out = %d''h00000000;\n\t\tendcase\n\tend\nendmodule\n\n', word_length); fclose('all');

Division of Labor

Akshay Makhlook
Additively Synthesized and ROM Sampled Instruments PDE Realtime Drum Machine
Audio Sequencer Audio Compressor
MATLAB GUI/FPGA Interface Webpage Design
Written Report Written Report

References

Datasheets

Vendors

Background Sites