<?xml version='1.0' encoding='utf-8'?>
<?grc format='1' created='3.7.11'?>
<flow_graph>
  <timestamp>Wed Oct  1 11:04:18 2014</timestamp>
  <block>
    <key>options</key>
    <param>
      <key>author</key>
      <value>AA</value>
    </param>
    <param>
      <key>window_size</key>
      <value>2048, 2048</value>
    </param>
    <param>
      <key>category</key>
      <value>Custom</value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>description</key>
      <value>gnuradio flow graph</value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(0, 4)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>generate_options</key>
      <value>qt_gui</value>
    </param>
    <param>
      <key>hier_block_src_path</key>
      <value>.:</value>
    </param>
    <param>
      <key>id</key>
      <value>viterbi_equalization</value>
    </param>
    <param>
      <key>max_nouts</key>
      <value>0</value>
    </param>
    <param>
      <key>qt_qss_theme</key>
      <value></value>
    </param>
    <param>
      <key>realtime_scheduling</key>
      <value></value>
    </param>
    <param>
      <key>run_command</key>
      <value>{python} -u {filename}</value>
    </param>
    <param>
      <key>run_options</key>
      <value>prompt</value>
    </param>
    <param>
      <key>run</key>
      <value>True</value>
    </param>
    <param>
      <key>thread_safe_setters</key>
      <value></value>
    </param>
    <param>
      <key>title</key>
      <value>Viterbi Equalization</value>
    </param>
  </block>
  <block>
    <key>variable</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(464, 68)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>Es</value>
    </param>
    <param>
      <key>value</key>
      <value>numpy.mean((numpy.square(numpy.abs(tot_mod[1]))))</value>
    </param>
  </block>
  <block>
    <key>variable_qtgui_range</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>value</key>
      <value>2</value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(608, 4)</value>
    </param>
    <param>
      <key>gui_hint</key>
      <value></value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>EsN0_dB</value>
    </param>
    <param>
      <key>label</key>
      <value>Es/N0 (dB)</value>
    </param>
    <param>
      <key>min_len</key>
      <value>200</value>
    </param>
    <param>
      <key>orient</key>
      <value>Qt.Horizontal</value>
    </param>
    <param>
      <key>start</key>
      <value>-10</value>
    </param>
    <param>
      <key>step</key>
      <value>1</value>
    </param>
    <param>
      <key>stop</key>
      <value>30</value>
    </param>
    <param>
      <key>rangeType</key>
      <value>float</value>
    </param>
    <param>
      <key>widget</key>
      <value>counter_slider</value>
    </param>
  </block>
  <block>
    <key>variable</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(176, 68)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>R</value>
    </param>
    <param>
      <key>value</key>
      <value>100e3</value>
    </param>
  </block>
  <block>
    <key>variable</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(176, 4)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>block</value>
    </param>
    <param>
      <key>value</key>
      <value>bpsym*1000</value>
    </param>
  </block>
  <block>
    <key>variable</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(464, 4)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>bpsym</value>
    </param>
    <param>
      <key>value</key>
      <value>int(round(math.log(fsm.I())/math.log(2)))</value>
    </param>
  </block>
  <block>
    <key>variable</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(272, 68)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>channel</value>
    </param>
    <param>
      <key>value</key>
      <value>fu.c_channel</value>
    </param>
  </block>
  <block>
    <key>variable</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(272, 132)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>fsm</value>
    </param>
    <param>
      <key>value</key>
      <value>trellis.fsm(len(modulation[1]),len(channel))</value>
    </param>
  </block>
  <block>
    <key>variable</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(272, 4)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>modulation</value>
    </param>
    <param>
      <key>value</key>
      <value>fu.pam4</value>
    </param>
  </block>
  <block>
    <key>variable</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(464, 132)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>noisevar</value>
    </param>
    <param>
      <key>value</key>
      <value>10**(-EsN0_dB/10.0)  * Es   /2.0</value>
    </param>
  </block>
  <block>
    <key>variable</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(272, 196)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>tot_mod</value>
    </param>
    <param>
      <key>value</key>
      <value>fu.make_isi_lookup(modulation,channel,False)</value>
    </param>
  </block>
  <block>
    <key>analog_noise_source_x</key>
    <param>
      <key>amp</key>
      <value>noisevar**0.5</value>
    </param>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(752, 444)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>analog_noise_source_x_0</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>noise_type</key>
      <value>analog.GR_GAUSSIAN</value>
    </param>
    <param>
      <key>type</key>
      <value>float</value>
    </param>
    <param>
      <key>seed</key>
      <value>-42</value>
    </param>
  </block>
  <block>
    <key>analog_random_source_x</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(0, 356)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>analog_random_source_x_0</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>max</key>
      <value>2</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>min</key>
      <value>0</value>
    </param>
    <param>
      <key>num_samps</key>
      <value>1007</value>
    </param>
    <param>
      <key>type</key>
      <value>byte</value>
    </param>
    <param>
      <key>repeat</key>
      <value>True</value>
    </param>
  </block>
  <block>
    <key>blks2_error_rate</key>
    <param>
      <key>bits_per_symbol</key>
      <value>1</value>
    </param>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(816, 708)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>blks2_error_rate_0</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>type</key>
      <value>'BER'</value>
    </param>
    <param>
      <key>win_size</key>
      <value>block*100</value>
    </param>
  </block>
  <block>
    <key>blocks_add_xx</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(1048, 384)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>blocks_add_xx_1</value>
    </param>
    <param>
      <key>type</key>
      <value>float</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>num_inputs</key>
      <value>2</value>
    </param>
    <param>
      <key>vlen</key>
      <value>1</value>
    </param>
  </block>
  <block>
    <key>blocks_null_sink</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>bus_conns</key>
      <value>[[0,],]</value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(1208, 344)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>blocks_null_sink_1</value>
    </param>
    <param>
      <key>type</key>
      <value>float</value>
    </param>
    <param>
      <key>num_inputs</key>
      <value>1</value>
    </param>
    <param>
      <key>vlen</key>
      <value>1</value>
    </param>
  </block>
  <block>
    <key>blocks_pack_k_bits_bb</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(384, 380)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>blocks_pack_k_bits_bb_0</value>
    </param>
    <param>
      <key>k</key>
      <value>bpsym</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
  </block>
  <block>
    <key>blocks_throttle</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(208, 380)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>blocks_throttle_0</value>
    </param>
    <param>
      <key>ignoretag</key>
      <value>True</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>samples_per_second</key>
      <value>R</value>
    </param>
    <param>
      <key>type</key>
      <value>byte</value>
    </param>
    <param>
      <key>vlen</key>
      <value>1</value>
    </param>
  </block>
  <block>
    <key>blocks_unpack_k_bits_bb</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(672, 740)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>blocks_unpack_k_bits_bb_0</value>
    </param>
    <param>
      <key>k</key>
      <value>bpsym</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
  </block>
  <block>
    <key>digital_chunks_to_symbols_xx</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>dimension</key>
      <value>tot_mod[0]</value>
    </param>
    <param>
      <key>_enabled</key>
      <value>False</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(760, 244)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>digital_chunks_to_symbols_xx_0</value>
    </param>
    <param>
      <key>in_type</key>
      <value>short</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>num_ports</key>
      <value>1</value>
    </param>
    <param>
      <key>out_type</key>
      <value>float</value>
    </param>
    <param>
      <key>symbol_table</key>
      <value>tot_mod[1]</value>
    </param>
  </block>
  <block>
    <key>digital_chunks_to_symbols_xx</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>dimension</key>
      <value>modulation[0]</value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(512, 372)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>digital_chunks_to_symbols_xx_0_0</value>
    </param>
    <param>
      <key>in_type</key>
      <value>byte</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>num_ports</key>
      <value>1</value>
    </param>
    <param>
      <key>out_type</key>
      <value>float</value>
    </param>
    <param>
      <key>symbol_table</key>
      <value>modulation[1]</value>
    </param>
  </block>
  <block>
    <key>fir_filter_xxx</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>decim</key>
      <value>1</value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(712, 372)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>fir_filter_xxx_0</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>samp_delay</key>
      <value>0</value>
    </param>
    <param>
      <key>taps</key>
      <value>fu.c_channel</value>
    </param>
    <param>
      <key>type</key>
      <value>fff</value>
    </param>
  </block>
  <block>
    <key>import</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(0, 116)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>import_0</value>
    </param>
    <param>
      <key>import</key>
      <value>import numpy</value>
    </param>
  </block>
  <block>
    <key>import</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(0, 212)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>import_0_0</value>
    </param>
    <param>
      <key>import</key>
      <value>import gnuradio.trellis.fsm_utils as fu</value>
    </param>
  </block>
  <block>
    <key>import</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(0, 164)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>import_0_1</value>
    </param>
    <param>
      <key>import</key>
      <value>import math</value>
    </param>
  </block>
  <block>
    <key>note</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(752, 612)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>note_0</value>
    </param>
    <param>
      <key>note</key>
      <value>Substititue the metrics/Viterbi block with Viterbi_combo</value>
    </param>
  </block>
  <block>
    <key>qtgui_number_sink</key>
    <param>
      <key>autoscale</key>
      <value>False</value>
    </param>
    <param>
      <key>avg</key>
      <value>0</value>
    </param>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>1</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(984, 700)</value>
    </param>
    <param>
      <key>gui_hint</key>
      <value></value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>graph_type</key>
      <value>qtgui.NUM_GRAPH_HORIZ</value>
    </param>
    <param>
      <key>id</key>
      <value>qtgui_number_sink_0</value>
    </param>
    <param>
      <key>type</key>
      <value>float</value>
    </param>
    <param>
      <key>color1</key>
      <value>("black", "black")</value>
    </param>
    <param>
      <key>factor1</key>
      <value>1</value>
    </param>
    <param>
      <key>label1</key>
      <value>BER</value>
    </param>
    <param>
      <key>unit1</key>
      <value></value>
    </param>
    <param>
      <key>color10</key>
      <value>("black", "black")</value>
    </param>
    <param>
      <key>factor10</key>
      <value>1</value>
    </param>
    <param>
      <key>label10</key>
      <value></value>
    </param>
    <param>
      <key>unit10</key>
      <value></value>
    </param>
    <param>
      <key>color2</key>
      <value>("black", "black")</value>
    </param>
    <param>
      <key>factor2</key>
      <value>1</value>
    </param>
    <param>
      <key>label2</key>
      <value></value>
    </param>
    <param>
      <key>unit2</key>
      <value></value>
    </param>
    <param>
      <key>color3</key>
      <value>("black", "black")</value>
    </param>
    <param>
      <key>factor3</key>
      <value>1</value>
    </param>
    <param>
      <key>label3</key>
      <value></value>
    </param>
    <param>
      <key>unit3</key>
      <value></value>
    </param>
    <param>
      <key>color4</key>
      <value>("black", "black")</value>
    </param>
    <param>
      <key>factor4</key>
      <value>1</value>
    </param>
    <param>
      <key>label4</key>
      <value></value>
    </param>
    <param>
      <key>unit4</key>
      <value></value>
    </param>
    <param>
      <key>color5</key>
      <value>("black", "black")</value>
    </param>
    <param>
      <key>factor5</key>
      <value>1</value>
    </param>
    <param>
      <key>label5</key>
      <value></value>
    </param>
    <param>
      <key>unit5</key>
      <value></value>
    </param>
    <param>
      <key>color6</key>
      <value>("black", "black")</value>
    </param>
    <param>
      <key>factor6</key>
      <value>1</value>
    </param>
    <param>
      <key>label6</key>
      <value></value>
    </param>
    <param>
      <key>unit6</key>
      <value></value>
    </param>
    <param>
      <key>color7</key>
      <value>("black", "black")</value>
    </param>
    <param>
      <key>factor7</key>
      <value>1</value>
    </param>
    <param>
      <key>label7</key>
      <value></value>
    </param>
    <param>
      <key>unit7</key>
      <value></value>
    </param>
    <param>
      <key>color8</key>
      <value>("black", "black")</value>
    </param>
    <param>
      <key>factor8</key>
      <value>1</value>
    </param>
    <param>
      <key>label8</key>
      <value></value>
    </param>
    <param>
      <key>unit8</key>
      <value></value>
    </param>
    <param>
      <key>color9</key>
      <value>("black", "black")</value>
    </param>
    <param>
      <key>factor9</key>
      <value>1</value>
    </param>
    <param>
      <key>label9</key>
      <value></value>
    </param>
    <param>
      <key>unit9</key>
      <value></value>
    </param>
    <param>
      <key>max</key>
      <value>1</value>
    </param>
    <param>
      <key>min</key>
      <value>0</value>
    </param>
    <param>
      <key>name</key>
      <value>"BER"</value>
    </param>
    <param>
      <key>nconnections</key>
      <value>1</value>
    </param>
    <param>
      <key>update_time</key>
      <value>0.10</value>
    </param>
  </block>
  <block>
    <key>trellis_encoder_xx</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>blocklength</key>
      <value>0</value>
    </param>
    <param>
      <key>blockwise</key>
      <value>False</value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>False</value>
    </param>
    <param>
      <key>fsm_args</key>
      <value>fsm</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(520, 244)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>trellis_encoder_xx_0</value>
    </param>
    <param>
      <key>init_state</key>
      <value>0</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>type</key>
      <value>bs</value>
    </param>
  </block>
  <block>
    <key>trellis_metrics_x</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>table</key>
      <value>tot_mod[1]</value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>dim</key>
      <value>tot_mod[0]</value>
    </param>
    <param>
      <key>_enabled</key>
      <value>False</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(208, 548)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>trellis_metrics_x_0</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>metric_type</key>
      <value>digital.TRELLIS_EUCLIDEAN</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>card</key>
      <value>fsm.O()</value>
    </param>
    <param>
      <key>type</key>
      <value>f</value>
    </param>
  </block>
  <block>
    <key>trellis_viterbi_combined_xx</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>block_size</key>
      <value>block/bpsym</value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>table</key>
      <value>tot_mod[1]</value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>dim</key>
      <value>tot_mod[0]</value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>fsm_args</key>
      <value>fsm</value>
    </param>
    <param>
      <key>final_state</key>
      <value>-1</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(352, 692)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>trellis_viterbi_combined_xx_0</value>
    </param>
    <param>
      <key>init_state</key>
      <value>-1</value>
    </param>
    <param>
      <key>type</key>
      <value>f</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>metric_type</key>
      <value>digital.TRELLIS_EUCLIDEAN</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>out_type</key>
      <value>b</value>
    </param>
  </block>
  <block>
    <key>trellis_viterbi_x</key>
    <param>
      <key>alias</key>
      <value></value>
    </param>
    <param>
      <key>block_size</key>
      <value>block/bpsym</value>
    </param>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>affinity</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>False</value>
    </param>
    <param>
      <key>fsm_args</key>
      <value>fsm</value>
    </param>
    <param>
      <key>final_state</key>
      <value>-1</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(432, 548)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>trellis_viterbi_x_0</value>
    </param>
    <param>
      <key>init_state</key>
      <value>-1</value>
    </param>
    <param>
      <key>maxoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>minoutbuf</key>
      <value>0</value>
    </param>
    <param>
      <key>type</key>
      <value>b</value>
    </param>
  </block>
  <block>
    <key>virtual_sink</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(1176, 396)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>virtual_sink_0</value>
    </param>
    <param>
      <key>stream_id</key>
      <value>observation</value>
    </param>
  </block>
  <block>
    <key>virtual_sink</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(216, 460)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>virtual_sink_0_0</value>
    </param>
    <param>
      <key>stream_id</key>
      <value>info</value>
    </param>
  </block>
  <block>
    <key>virtual_source</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(0, 740)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>virtual_source_0</value>
    </param>
    <param>
      <key>stream_id</key>
      <value>observation</value>
    </param>
  </block>
  <block>
    <key>virtual_source</key>
    <param>
      <key>comment</key>
      <value></value>
    </param>
    <param>
      <key>_enabled</key>
      <value>True</value>
    </param>
    <param>
      <key>_coordinate</key>
      <value>(416, 460)</value>
    </param>
    <param>
      <key>_rotation</key>
      <value>0</value>
    </param>
    <param>
      <key>id</key>
      <value>virtual_source_0_0</value>
    </param>
    <param>
      <key>stream_id</key>
      <value>info</value>
    </param>
  </block>
  <connection>
    <source_block_id>analog_noise_source_x_0</source_block_id>
    <sink_block_id>blocks_add_xx_1</sink_block_id>
    <source_key>0</source_key>
    <sink_key>1</sink_key>
  </connection>
  <connection>
    <source_block_id>analog_random_source_x_0</source_block_id>
    <sink_block_id>blocks_throttle_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>analog_random_source_x_0</source_block_id>
    <sink_block_id>virtual_sink_0_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>blks2_error_rate_0</source_block_id>
    <sink_block_id>qtgui_number_sink_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>blocks_add_xx_1</source_block_id>
    <sink_block_id>blocks_null_sink_1</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>blocks_add_xx_1</source_block_id>
    <sink_block_id>virtual_sink_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>blocks_pack_k_bits_bb_0</source_block_id>
    <sink_block_id>digital_chunks_to_symbols_xx_0_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>blocks_pack_k_bits_bb_0</source_block_id>
    <sink_block_id>trellis_encoder_xx_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>blocks_throttle_0</source_block_id>
    <sink_block_id>blocks_pack_k_bits_bb_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>blocks_unpack_k_bits_bb_0</source_block_id>
    <sink_block_id>blks2_error_rate_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>1</sink_key>
  </connection>
  <connection>
    <source_block_id>digital_chunks_to_symbols_xx_0</source_block_id>
    <sink_block_id>blocks_add_xx_1</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>digital_chunks_to_symbols_xx_0_0</source_block_id>
    <sink_block_id>fir_filter_xxx_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>fir_filter_xxx_0</source_block_id>
    <sink_block_id>blocks_add_xx_1</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>trellis_encoder_xx_0</source_block_id>
    <sink_block_id>digital_chunks_to_symbols_xx_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>trellis_metrics_x_0</source_block_id>
    <sink_block_id>trellis_viterbi_x_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>trellis_viterbi_combined_xx_0</source_block_id>
    <sink_block_id>blocks_unpack_k_bits_bb_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>trellis_viterbi_x_0</source_block_id>
    <sink_block_id>blocks_unpack_k_bits_bb_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>virtual_source_0</source_block_id>
    <sink_block_id>trellis_metrics_x_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>virtual_source_0</source_block_id>
    <sink_block_id>trellis_viterbi_combined_xx_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
  <connection>
    <source_block_id>virtual_source_0_0</source_block_id>
    <sink_block_id>blks2_error_rate_0</sink_block_id>
    <source_key>0</source_key>
    <sink_key>0</sink_key>
  </connection>
</flow_graph>
