diff --git a/applications/apertif/designs/apertif_unb1_correlator/hdllib.cfg b/applications/apertif/designs/apertif_unb1_correlator/hdllib.cfg
index 342ad7231ff95782803047d6c66dc04533d23a2f..2d646a210efbeb06b2845b74a5a434096f2b5ecf 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/hdllib.cfg
+++ b/applications/apertif/designs/apertif_unb1_correlator/hdllib.cfg
@@ -8,6 +8,7 @@ synth_files =
     src/vhdl/apertif_unb1_correlator_pkg.vhd
     src/vhdl/apertif_unb1_chan320_packetizer.vhd
     src/vhdl/apertif_unb1_correlator_output_framer.vhd
+    src/vhdl/beamlet_lookup.vhd
     src/vhdl/apertif_unb1_correlator_vis_offload.vhd
     src/vhdl/node_apertif_unb1_correlator_input.vhd
     src/vhdl/node_apertif_unb1_correlator_mesh.vhd
diff --git a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_bg_output/hdllib.cfg b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_bg_output/hdllib.cfg
index 640c2cf3ce2363c7a73c80109d3b7366c177db06..4a29a60786e292aee73cc2fe045300279a295d33 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_bg_output/hdllib.cfg
+++ b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_bg_output/hdllib.cfg
@@ -9,6 +9,7 @@ synth_files =
     ../../src/vhdl/apertif_unb1_correlator_pkg.vhd
     ../../src/vhdl/mmm_apertif_unb1_correlator.vhd
     ../../src/vhdl/apertif_unb1_correlator_output_framer.vhd    
+    ../../src/vhdl/beamlet_lookup.vhd
     ../../src/vhdl/apertif_unb1_correlator_vis_offload.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_input_sync_insert.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_processing_acc_flush_sync.vhd
diff --git a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_bm6_bg_ch320/hdllib.cfg b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_bm6_bg_ch320/hdllib.cfg
index c9c54eebfe7f872db11668e45da610275f563ee9..806439cdd0c5fdfec27c243c275b0147e9d50ab4 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_bm6_bg_ch320/hdllib.cfg
+++ b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_bm6_bg_ch320/hdllib.cfg
@@ -10,6 +10,7 @@ synth_files =
     ../../src/vhdl/apertif_unb1_correlator_pkg.vhd
     ../../src/vhdl/mmm_apertif_unb1_correlator.vhd
     ../../src/vhdl/apertif_unb1_correlator_output_framer.vhd    
+    ../../src/vhdl/beamlet_lookup.vhd
     ../../src/vhdl/apertif_unb1_correlator_vis_offload.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_input_sync_insert.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_processing_acc_flush_sync.vhd
diff --git a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_filter/hdllib.cfg b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_filter/hdllib.cfg
index 32099102a879f1819a9ca9dc3c353ba03cb79a1f..304a34612470e10f228cb2e708641ef852ddb470 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_filter/hdllib.cfg
+++ b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_filter/hdllib.cfg
@@ -8,6 +8,7 @@ synth_files =
     $HDL_BUILD_DIR/unb1/quartus/apertif_unb1_correlator_filter/qsys_apertif_unb1_correlator/synthesis/qsys_apertif_unb1_correlator.v
     ../../src/vhdl/apertif_unb1_correlator_pkg.vhd
     ../../src/vhdl/mmm_apertif_unb1_correlator.vhd
+    ../../src/vhdl/beamlet_lookup.vhd
     ../../src/vhdl/apertif_unb1_correlator_vis_offload.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_input_sync_insert.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_processing_acc_flush_sync.vhd
diff --git a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full/hdllib.cfg b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full/hdllib.cfg
index c0ec9b5f7f115925e36cb94f8a8e5febaddf8361..0f85331bd1d93d9268998777358659b56f6dc0b7 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full/hdllib.cfg
+++ b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full/hdllib.cfg
@@ -10,6 +10,7 @@ synth_files =
     ../../src/vhdl/apertif_unb1_correlator_pkg.vhd
     ../../src/vhdl/mmm_apertif_unb1_correlator.vhd
     ../../src/vhdl/apertif_unb1_correlator_output_framer.vhd    
+    ../../src/vhdl/beamlet_lookup.vhd
     ../../src/vhdl/apertif_unb1_correlator_vis_offload.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_input_sync_insert.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_processing_acc_flush_sync.vhd
diff --git a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full_bg/hdllib.cfg b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full_bg/hdllib.cfg
index 67d36b2a469cf3cda7fea20685d7fc79d515f635..1e743143abf26c7f01c70da91b594e2154fabe97 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full_bg/hdllib.cfg
+++ b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full_bg/hdllib.cfg
@@ -9,6 +9,7 @@ synth_files =
     ../../src/vhdl/apertif_unb1_correlator_pkg.vhd
     ../../src/vhdl/mmm_apertif_unb1_correlator.vhd
     ../../src/vhdl/apertif_unb1_correlator_output_framer.vhd    
+    ../../src/vhdl/beamlet_lookup.vhd
     ../../src/vhdl/apertif_unb1_correlator_vis_offload.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_input_sync_insert.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_processing_acc_flush_sync.vhd
diff --git a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full_bg_int/hdllib.cfg b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full_bg_int/hdllib.cfg
index 68325334f7d8f0e26e5221dd15c23e35a24da5ec..61a4d7673c2d64aa97bfa07c2f9f3567ad83b3dd 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full_bg_int/hdllib.cfg
+++ b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full_bg_int/hdllib.cfg
@@ -9,6 +9,7 @@ synth_files =
     ../../src/vhdl/apertif_unb1_correlator_pkg.vhd
     ../../src/vhdl/mmm_apertif_unb1_correlator.vhd
     ../../src/vhdl/apertif_unb1_correlator_output_framer.vhd    
+    ../../src/vhdl/beamlet_lookup.vhd
     ../../src/vhdl/apertif_unb1_correlator_vis_offload.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_input_sync_insert.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_processing_acc_flush_sync.vhd
diff --git a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full_bm6/hdllib.cfg b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full_bm6/hdllib.cfg
index 4096fa4428406fbcaabbbdc004bdd5944332a0af..5a667513ff7c75edfa5401d080d2c1e1c651573c 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full_bm6/hdllib.cfg
+++ b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full_bm6/hdllib.cfg
@@ -10,6 +10,7 @@ synth_files =
     ../../src/vhdl/apertif_unb1_chan320_packetizer.vhd
     ../../src/vhdl/mmm_apertif_unb1_correlator.vhd
     ../../src/vhdl/apertif_unb1_correlator_output_framer.vhd    
+    ../../src/vhdl/beamlet_lookup.vhd
     ../../src/vhdl/apertif_unb1_correlator_vis_offload.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_input_sync_insert.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_processing_acc_flush_sync.vhd
diff --git a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full_no_fft/hdllib.cfg b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full_no_fft/hdllib.cfg
index 43fc550462a9e60e9607b2b1b7aa56fc2822d8a2..44cad6d3fc2dc891d9bd80dd050d51e04233e6ad 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full_no_fft/hdllib.cfg
+++ b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_full_no_fft/hdllib.cfg
@@ -9,6 +9,7 @@ synth_files =
     ../../src/vhdl/apertif_unb1_correlator_pkg.vhd
     ../../src/vhdl/mmm_apertif_unb1_correlator.vhd
     ../../src/vhdl/apertif_unb1_correlator_output_framer.vhd    
+    ../../src/vhdl/beamlet_lookup.vhd
     ../../src/vhdl/apertif_unb1_correlator_vis_offload.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_input_sync_insert.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_processing_acc_flush_sync.vhd
diff --git a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_lite/hdllib.cfg b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_lite/hdllib.cfg
index 2408fa38c7ee34c71d23d4f3b9335c357fcfd512..87a535846a9777756753ab20e960ede8b4ff0e92 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_lite/hdllib.cfg
+++ b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_lite/hdllib.cfg
@@ -9,6 +9,7 @@ synth_files =
     ../../src/vhdl/apertif_unb1_correlator_pkg.vhd
     ../../src/vhdl/mmm_apertif_unb1_correlator.vhd
     ../../src/vhdl/apertif_unb1_correlator_output_framer.vhd
+    ../../src/vhdl/beamlet_lookup.vhd
     ../../src/vhdl/apertif_unb1_correlator_vis_offload.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_input_sync_insert.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_processing_acc_flush_sync.vhd
diff --git a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_lite_bg/hdllib.cfg b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_lite_bg/hdllib.cfg
index a1c48c16f165d8fd74a4667c1b95e7a99d29d939..d11f9dbbd4c62416324c5bf7dc567a9500af808f 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_lite_bg/hdllib.cfg
+++ b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_lite_bg/hdllib.cfg
@@ -9,6 +9,7 @@ synth_files =
     ../../src/vhdl/apertif_unb1_correlator_pkg.vhd
     ../../src/vhdl/mmm_apertif_unb1_correlator.vhd
     ../../src/vhdl/apertif_unb1_correlator_output_framer.vhd
+    ../../src/vhdl/beamlet_lookup.vhd
     ../../src/vhdl/apertif_unb1_correlator_vis_offload.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_input_sync_insert.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_processing_acc_flush_sync.vhd
diff --git a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_lite_bg_8/hdllib.cfg b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_lite_bg_8/hdllib.cfg
index 5ba784a8f0f5edd13ebf82becd4d3ea858b9020f..54b22bdb88c9008e84ca2595a7b4e836c9501a5b 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_lite_bg_8/hdllib.cfg
+++ b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_lite_bg_8/hdllib.cfg
@@ -9,6 +9,7 @@ synth_files =
     ../../src/vhdl/apertif_unb1_correlator_pkg.vhd
     ../../src/vhdl/mmm_apertif_unb1_correlator.vhd
     ../../src/vhdl/apertif_unb1_correlator_output_framer.vhd
+    ../../src/vhdl/beamlet_lookup.vhd
     ../../src/vhdl/apertif_unb1_correlator_vis_offload.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_input_sync_insert.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_processing_acc_flush_sync.vhd
diff --git a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_mesh_distr_ref/hdllib.cfg b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_mesh_distr_ref/hdllib.cfg
index 7f565921ff034ff6b14a9f3ca5cf5adc3728816c..75ce449384c976902aad42d0e7bad9fe4df9efde 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_mesh_distr_ref/hdllib.cfg
+++ b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_mesh_distr_ref/hdllib.cfg
@@ -9,6 +9,7 @@ synth_files =
     ../../src/vhdl/apertif_unb1_correlator_pkg.vhd
     ../../src/vhdl/mmm_apertif_unb1_correlator.vhd
     ../../src/vhdl/apertif_unb1_correlator_output_framer.vhd    
+    ../../src/vhdl/beamlet_lookup.vhd
     ../../src/vhdl/apertif_unb1_correlator_vis_offload.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_input_sync_insert.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_processing_acc_flush_sync.vhd
diff --git a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_mesh_ref/hdllib.cfg b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_mesh_ref/hdllib.cfg
index b8219bf4e821f0d16eb669c0c61df1a94c78decf..c3ecbc46f345d225032ca6fdad798644b438a1c2 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_mesh_ref/hdllib.cfg
+++ b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_mesh_ref/hdllib.cfg
@@ -9,6 +9,7 @@ synth_files =
     ../../src/vhdl/apertif_unb1_correlator_pkg.vhd
     ../../src/vhdl/mmm_apertif_unb1_correlator.vhd
     ../../src/vhdl/apertif_unb1_correlator_output_framer.vhd
+    ../../src/vhdl/beamlet_lookup.vhd
     ../../src/vhdl/apertif_unb1_correlator_vis_offload.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_input_sync_insert.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_processing_acc_flush_sync.vhd
diff --git a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_rx_only/hdllib.cfg b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_rx_only/hdllib.cfg
index 30028500f8f19938b56ad279ba9ae585ad7283d2..dfc183f19b91d3b930f30e60439ce6fc4216da12 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_rx_only/hdllib.cfg
+++ b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_rx_only/hdllib.cfg
@@ -9,6 +9,7 @@ synth_files =
     ../../src/vhdl/apertif_unb1_correlator_pkg.vhd
     ../../src/vhdl/mmm_apertif_unb1_correlator.vhd
     ../../src/vhdl/apertif_unb1_correlator_output_framer.vhd
+    ../../src/vhdl/beamlet_lookup.vhd
     ../../src/vhdl/apertif_unb1_correlator_vis_offload.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_input_sync_insert.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_processing_acc_flush_sync.vhd
diff --git a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_simple/hdllib.cfg b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_simple/hdllib.cfg
index 2aea4250c7f82c4f47d7368465c2cdf782615d92..786352ee01edb486f43fa5ed649b69cba2b8be08 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_simple/hdllib.cfg
+++ b/applications/apertif/designs/apertif_unb1_correlator/revisions/apertif_unb1_correlator_simple/hdllib.cfg
@@ -8,6 +8,7 @@ synth_files =
     $HDL_BUILD_DIR/unb1/quartus/apertif_unb1_correlator_simple/qsys_apertif_unb1_correlator/synthesis/qsys_apertif_unb1_correlator.v
     ../../src/vhdl/apertif_unb1_correlator_pkg.vhd
     ../../src/vhdl/mmm_apertif_unb1_correlator.vhd
+    ../../src/vhdl/beamlet_lookup.vhd
     ../../src/vhdl/apertif_unb1_correlator_vis_offload.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_input_sync_insert.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_processing_acc_flush_sync.vhd
diff --git a/applications/apertif/designs/apertif_unb1_correlator/revisions/sim_apertif_unb1_correlator_nodes/hdllib.cfg b/applications/apertif/designs/apertif_unb1_correlator/revisions/sim_apertif_unb1_correlator_nodes/hdllib.cfg
index 3f12602cd95403c1123df1439367c9e9ab3f0c75..67fd660b122935d7d60f9a388f5f9c236b361367 100644
--- a/applications/apertif/designs/apertif_unb1_correlator/revisions/sim_apertif_unb1_correlator_nodes/hdllib.cfg
+++ b/applications/apertif/designs/apertif_unb1_correlator/revisions/sim_apertif_unb1_correlator_nodes/hdllib.cfg
@@ -7,6 +7,7 @@ hdl_lib_technology = ip_stratixiv
 synth_files =
     ../../src/vhdl/apertif_unb1_correlator_pkg.vhd
     ../../src/vhdl/apertif_unb1_correlator_output_framer.vhd
+    ../../src/vhdl/beamlet_lookup.vhd
     ../../src/vhdl/apertif_unb1_correlator_vis_offload.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_input_sync_insert.vhd
     ../../src/vhdl/node_apertif_unb1_correlator_processing_acc_flush_sync.vhd
diff --git a/applications/apertif/designs/apertif_unb1_correlator/src/python/gen_beamlet_lookup.py b/applications/apertif/designs/apertif_unb1_correlator/src/python/gen_beamlet_lookup.py
new file mode 100644
index 0000000000000000000000000000000000000000..1ffdbb9be0ba926ceecc8c94f1e3147cb05ea8db
--- /dev/null
+++ b/applications/apertif/designs/apertif_unb1_correlator/src/python/gen_beamlet_lookup.py
@@ -0,0 +1,71 @@
+# Author:
+# . Daniel van der Schuur
+# Purpose:
+# . Print beamlet mappings of Imaging vs. Time domain (ARTS SC4, SC3).
+# . Generate the corresponding lookup table as VHDL code.
+
+import numpy as np
+np.set_printoptions(linewidth=250)
+
+print '\nBeamlet mapping (24 subbands*40 CB = 960 beamlets) used for imaging, "300MHz_40CB":'
+b = range(240)+range(256, 256+240)+range(512, 512+240)+range(768, 768+240) # Used beamlets
+i = np.array(b).reshape(24,40) # i contains beamlet mapping for Imaging
+print i
+
+print '\nBeamlet mapping (24 subbands*40 CB = 960 beamlets) used for time domain, "arts_sc4":'
+t = np.copy(i) # t contains beamlet mapping for Time domain
+for cb in range(5): t[:,   cb] = range(    cb*48,    cb*48+48,2) # CB  0...4: beamlets   0,  2,.., 238
+for cb in range(5): t[:, 5+cb] = range(256+cb*48,256+cb*48+48,2) # CB  5...9: beamlets 256,258,.., 494
+for cb in range(5): t[:,10+cb] = range(512+cb*48,512+cb*48+48,2) # CB 10..14: beamlets 512,514,.., 750
+for cb in range(5): t[:,15+cb] = range(768+cb*48,768+cb*48+48,2) # CB 15..19: beamlets 768,770,..,1006
+for cb in range(5): t[:,20+cb] = range(  1+cb*48,  1+cb*48+48,2) # CB 20..24: beamlets   1,  3,.., 239
+for cb in range(5): t[:,25+cb] = range(257+cb*48,257+cb*48+48,2) # CB 25..29: beamlets 257,259,.., 495
+for cb in range(5): t[:,30+cb] = range(513+cb*48,513+cb*48+48,2) # CB 30..34: beamlets 513,515,.., 751
+for cb in range(5): t[:,35+cb] = range(769+cb*48,769+cb*48+48,2) # CB 35..39: beamlets 769,771,..,1007
+print t
+
+print 'Generating VHDL file with lookup table [time domain beamlet] -> [imaging beamlet]: ../vhdl/beamlet_lookup.vhd'
+
+lookup_list = []
+for bt,bi in zip(np.nditer(t), np.nditer(i)):
+    lookup_list.append((int(bt),int(bi)))
+lookup_list.sort(key=lambda tup: tup[0]) # Sort the list so we get incrementing addresses (beamlet_in)
+
+head = """LIBRARY ieee;
+USE ieee.std_logic_1164.all;
+
+-- This file was generated by ../python/gen_beamlet_lookup.py
+
+ENTITY beamlet_lookup IS
+  PORT (
+    clk         : IN  STD_LOGIC;
+    beamlet_in  : IN  STD_LOGIC_VECTOR(9 DOWNTO 0);
+    beamlet_out : OUT STD_LOGIC_VECTOR(9 DOWNTO 0)
+  );
+END beamlet_lookup;
+
+ARCHITECTURE rtl OF beamlet_lookup IS
+BEGIN
+PROCESS(clk)
+  BEGIN
+  IF rising_edge(clk) THEN
+    CASE beamlet_in IS
+"""
+
+tail = """      WHEN OTHERS => beamlet_out <= "0000000000";
+    END CASE;
+  END IF;
+END PROCESS;
+END rtl;
+"""
+
+with open('../vhdl/beamlet_lookup.vhd', 'w') as f:
+    f.write(head)
+    for beamlet_mapping in lookup_list:
+        address  = str(bin(beamlet_mapping[0])[2:].zfill(10))
+        data_out = str(bin(beamlet_mapping[1])[2:].zfill(10))
+        line = '      WHEN "'+address+'" => beamlet_out <= "'+data_out+'";\n'
+        f.write(line)
+    f.write(tail)
+f.close()
+
diff --git a/applications/apertif/designs/apertif_unb1_correlator/src/vhdl/beamlet_lookup.vhd b/applications/apertif/designs/apertif_unb1_correlator/src/vhdl/beamlet_lookup.vhd
new file mode 100644
index 0000000000000000000000000000000000000000..14ce6fcecb6d0fd3ea96861542e7f082ad82756a
--- /dev/null
+++ b/applications/apertif/designs/apertif_unb1_correlator/src/vhdl/beamlet_lookup.vhd
@@ -0,0 +1,984 @@
+LIBRARY ieee;
+USE ieee.std_logic_1164.all;
+
+-- This file was generated by ../python/gen_beamlet_lookup.py
+
+ENTITY beamlet_lookup IS
+  PORT (
+    clk         : IN  STD_LOGIC;
+    beamlet_in  : IN  STD_LOGIC_VECTOR(9 DOWNTO 0);
+    beamlet_out : OUT STD_LOGIC_VECTOR(9 DOWNTO 0)
+  );
+END beamlet_lookup;
+
+ARCHITECTURE rtl OF beamlet_lookup IS
+BEGIN
+PROCESS(clk)
+  BEGIN
+  IF rising_edge(clk) THEN
+    CASE beamlet_in IS
+      WHEN "0000000000" => beamlet_out <= "0000000000";
+      WHEN "0000000001" => beamlet_out <= "0000010100";
+      WHEN "0000000010" => beamlet_out <= "0000101000";
+      WHEN "0000000011" => beamlet_out <= "0000111100";
+      WHEN "0000000100" => beamlet_out <= "0001010000";
+      WHEN "0000000101" => beamlet_out <= "0001100100";
+      WHEN "0000000110" => beamlet_out <= "0001111000";
+      WHEN "0000000111" => beamlet_out <= "0010001100";
+      WHEN "0000001000" => beamlet_out <= "0010100000";
+      WHEN "0000001001" => beamlet_out <= "0010110100";
+      WHEN "0000001010" => beamlet_out <= "0011001000";
+      WHEN "0000001011" => beamlet_out <= "0011011100";
+      WHEN "0000001100" => beamlet_out <= "0100000000";
+      WHEN "0000001101" => beamlet_out <= "0100010100";
+      WHEN "0000001110" => beamlet_out <= "0100101000";
+      WHEN "0000001111" => beamlet_out <= "0100111100";
+      WHEN "0000010000" => beamlet_out <= "0101010000";
+      WHEN "0000010001" => beamlet_out <= "0101100100";
+      WHEN "0000010010" => beamlet_out <= "0101111000";
+      WHEN "0000010011" => beamlet_out <= "0110001100";
+      WHEN "0000010100" => beamlet_out <= "0110100000";
+      WHEN "0000010101" => beamlet_out <= "0110110100";
+      WHEN "0000010110" => beamlet_out <= "0111001000";
+      WHEN "0000010111" => beamlet_out <= "0111011100";
+      WHEN "0000011000" => beamlet_out <= "1000000000";
+      WHEN "0000011001" => beamlet_out <= "1000010100";
+      WHEN "0000011010" => beamlet_out <= "1000101000";
+      WHEN "0000011011" => beamlet_out <= "1000111100";
+      WHEN "0000011100" => beamlet_out <= "1001010000";
+      WHEN "0000011101" => beamlet_out <= "1001100100";
+      WHEN "0000011110" => beamlet_out <= "1001111000";
+      WHEN "0000011111" => beamlet_out <= "1010001100";
+      WHEN "0000100000" => beamlet_out <= "1010100000";
+      WHEN "0000100001" => beamlet_out <= "1010110100";
+      WHEN "0000100010" => beamlet_out <= "1011001000";
+      WHEN "0000100011" => beamlet_out <= "1011011100";
+      WHEN "0000100100" => beamlet_out <= "1100000000";
+      WHEN "0000100101" => beamlet_out <= "1100010100";
+      WHEN "0000100110" => beamlet_out <= "1100101000";
+      WHEN "0000100111" => beamlet_out <= "1100111100";
+      WHEN "0000101000" => beamlet_out <= "1101010000";
+      WHEN "0000101001" => beamlet_out <= "1101100100";
+      WHEN "0000101010" => beamlet_out <= "1101111000";
+      WHEN "0000101011" => beamlet_out <= "1110001100";
+      WHEN "0000101100" => beamlet_out <= "1110100000";
+      WHEN "0000101101" => beamlet_out <= "1110110100";
+      WHEN "0000101110" => beamlet_out <= "1111001000";
+      WHEN "0000101111" => beamlet_out <= "1111011100";
+      WHEN "0000110000" => beamlet_out <= "0000000001";
+      WHEN "0000110001" => beamlet_out <= "0000010101";
+      WHEN "0000110010" => beamlet_out <= "0000101001";
+      WHEN "0000110011" => beamlet_out <= "0000111101";
+      WHEN "0000110100" => beamlet_out <= "0001010001";
+      WHEN "0000110101" => beamlet_out <= "0001100101";
+      WHEN "0000110110" => beamlet_out <= "0001111001";
+      WHEN "0000110111" => beamlet_out <= "0010001101";
+      WHEN "0000111000" => beamlet_out <= "0010100001";
+      WHEN "0000111001" => beamlet_out <= "0010110101";
+      WHEN "0000111010" => beamlet_out <= "0011001001";
+      WHEN "0000111011" => beamlet_out <= "0011011101";
+      WHEN "0000111100" => beamlet_out <= "0100000001";
+      WHEN "0000111101" => beamlet_out <= "0100010101";
+      WHEN "0000111110" => beamlet_out <= "0100101001";
+      WHEN "0000111111" => beamlet_out <= "0100111101";
+      WHEN "0001000000" => beamlet_out <= "0101010001";
+      WHEN "0001000001" => beamlet_out <= "0101100101";
+      WHEN "0001000010" => beamlet_out <= "0101111001";
+      WHEN "0001000011" => beamlet_out <= "0110001101";
+      WHEN "0001000100" => beamlet_out <= "0110100001";
+      WHEN "0001000101" => beamlet_out <= "0110110101";
+      WHEN "0001000110" => beamlet_out <= "0111001001";
+      WHEN "0001000111" => beamlet_out <= "0111011101";
+      WHEN "0001001000" => beamlet_out <= "1000000001";
+      WHEN "0001001001" => beamlet_out <= "1000010101";
+      WHEN "0001001010" => beamlet_out <= "1000101001";
+      WHEN "0001001011" => beamlet_out <= "1000111101";
+      WHEN "0001001100" => beamlet_out <= "1001010001";
+      WHEN "0001001101" => beamlet_out <= "1001100101";
+      WHEN "0001001110" => beamlet_out <= "1001111001";
+      WHEN "0001001111" => beamlet_out <= "1010001101";
+      WHEN "0001010000" => beamlet_out <= "1010100001";
+      WHEN "0001010001" => beamlet_out <= "1010110101";
+      WHEN "0001010010" => beamlet_out <= "1011001001";
+      WHEN "0001010011" => beamlet_out <= "1011011101";
+      WHEN "0001010100" => beamlet_out <= "1100000001";
+      WHEN "0001010101" => beamlet_out <= "1100010101";
+      WHEN "0001010110" => beamlet_out <= "1100101001";
+      WHEN "0001010111" => beamlet_out <= "1100111101";
+      WHEN "0001011000" => beamlet_out <= "1101010001";
+      WHEN "0001011001" => beamlet_out <= "1101100101";
+      WHEN "0001011010" => beamlet_out <= "1101111001";
+      WHEN "0001011011" => beamlet_out <= "1110001101";
+      WHEN "0001011100" => beamlet_out <= "1110100001";
+      WHEN "0001011101" => beamlet_out <= "1110110101";
+      WHEN "0001011110" => beamlet_out <= "1111001001";
+      WHEN "0001011111" => beamlet_out <= "1111011101";
+      WHEN "0001100000" => beamlet_out <= "0000000010";
+      WHEN "0001100001" => beamlet_out <= "0000010110";
+      WHEN "0001100010" => beamlet_out <= "0000101010";
+      WHEN "0001100011" => beamlet_out <= "0000111110";
+      WHEN "0001100100" => beamlet_out <= "0001010010";
+      WHEN "0001100101" => beamlet_out <= "0001100110";
+      WHEN "0001100110" => beamlet_out <= "0001111010";
+      WHEN "0001100111" => beamlet_out <= "0010001110";
+      WHEN "0001101000" => beamlet_out <= "0010100010";
+      WHEN "0001101001" => beamlet_out <= "0010110110";
+      WHEN "0001101010" => beamlet_out <= "0011001010";
+      WHEN "0001101011" => beamlet_out <= "0011011110";
+      WHEN "0001101100" => beamlet_out <= "0100000010";
+      WHEN "0001101101" => beamlet_out <= "0100010110";
+      WHEN "0001101110" => beamlet_out <= "0100101010";
+      WHEN "0001101111" => beamlet_out <= "0100111110";
+      WHEN "0001110000" => beamlet_out <= "0101010010";
+      WHEN "0001110001" => beamlet_out <= "0101100110";
+      WHEN "0001110010" => beamlet_out <= "0101111010";
+      WHEN "0001110011" => beamlet_out <= "0110001110";
+      WHEN "0001110100" => beamlet_out <= "0110100010";
+      WHEN "0001110101" => beamlet_out <= "0110110110";
+      WHEN "0001110110" => beamlet_out <= "0111001010";
+      WHEN "0001110111" => beamlet_out <= "0111011110";
+      WHEN "0001111000" => beamlet_out <= "1000000010";
+      WHEN "0001111001" => beamlet_out <= "1000010110";
+      WHEN "0001111010" => beamlet_out <= "1000101010";
+      WHEN "0001111011" => beamlet_out <= "1000111110";
+      WHEN "0001111100" => beamlet_out <= "1001010010";
+      WHEN "0001111101" => beamlet_out <= "1001100110";
+      WHEN "0001111110" => beamlet_out <= "1001111010";
+      WHEN "0001111111" => beamlet_out <= "1010001110";
+      WHEN "0010000000" => beamlet_out <= "1010100010";
+      WHEN "0010000001" => beamlet_out <= "1010110110";
+      WHEN "0010000010" => beamlet_out <= "1011001010";
+      WHEN "0010000011" => beamlet_out <= "1011011110";
+      WHEN "0010000100" => beamlet_out <= "1100000010";
+      WHEN "0010000101" => beamlet_out <= "1100010110";
+      WHEN "0010000110" => beamlet_out <= "1100101010";
+      WHEN "0010000111" => beamlet_out <= "1100111110";
+      WHEN "0010001000" => beamlet_out <= "1101010010";
+      WHEN "0010001001" => beamlet_out <= "1101100110";
+      WHEN "0010001010" => beamlet_out <= "1101111010";
+      WHEN "0010001011" => beamlet_out <= "1110001110";
+      WHEN "0010001100" => beamlet_out <= "1110100010";
+      WHEN "0010001101" => beamlet_out <= "1110110110";
+      WHEN "0010001110" => beamlet_out <= "1111001010";
+      WHEN "0010001111" => beamlet_out <= "1111011110";
+      WHEN "0010010000" => beamlet_out <= "0000000011";
+      WHEN "0010010001" => beamlet_out <= "0000010111";
+      WHEN "0010010010" => beamlet_out <= "0000101011";
+      WHEN "0010010011" => beamlet_out <= "0000111111";
+      WHEN "0010010100" => beamlet_out <= "0001010011";
+      WHEN "0010010101" => beamlet_out <= "0001100111";
+      WHEN "0010010110" => beamlet_out <= "0001111011";
+      WHEN "0010010111" => beamlet_out <= "0010001111";
+      WHEN "0010011000" => beamlet_out <= "0010100011";
+      WHEN "0010011001" => beamlet_out <= "0010110111";
+      WHEN "0010011010" => beamlet_out <= "0011001011";
+      WHEN "0010011011" => beamlet_out <= "0011011111";
+      WHEN "0010011100" => beamlet_out <= "0100000011";
+      WHEN "0010011101" => beamlet_out <= "0100010111";
+      WHEN "0010011110" => beamlet_out <= "0100101011";
+      WHEN "0010011111" => beamlet_out <= "0100111111";
+      WHEN "0010100000" => beamlet_out <= "0101010011";
+      WHEN "0010100001" => beamlet_out <= "0101100111";
+      WHEN "0010100010" => beamlet_out <= "0101111011";
+      WHEN "0010100011" => beamlet_out <= "0110001111";
+      WHEN "0010100100" => beamlet_out <= "0110100011";
+      WHEN "0010100101" => beamlet_out <= "0110110111";
+      WHEN "0010100110" => beamlet_out <= "0111001011";
+      WHEN "0010100111" => beamlet_out <= "0111011111";
+      WHEN "0010101000" => beamlet_out <= "1000000011";
+      WHEN "0010101001" => beamlet_out <= "1000010111";
+      WHEN "0010101010" => beamlet_out <= "1000101011";
+      WHEN "0010101011" => beamlet_out <= "1000111111";
+      WHEN "0010101100" => beamlet_out <= "1001010011";
+      WHEN "0010101101" => beamlet_out <= "1001100111";
+      WHEN "0010101110" => beamlet_out <= "1001111011";
+      WHEN "0010101111" => beamlet_out <= "1010001111";
+      WHEN "0010110000" => beamlet_out <= "1010100011";
+      WHEN "0010110001" => beamlet_out <= "1010110111";
+      WHEN "0010110010" => beamlet_out <= "1011001011";
+      WHEN "0010110011" => beamlet_out <= "1011011111";
+      WHEN "0010110100" => beamlet_out <= "1100000011";
+      WHEN "0010110101" => beamlet_out <= "1100010111";
+      WHEN "0010110110" => beamlet_out <= "1100101011";
+      WHEN "0010110111" => beamlet_out <= "1100111111";
+      WHEN "0010111000" => beamlet_out <= "1101010011";
+      WHEN "0010111001" => beamlet_out <= "1101100111";
+      WHEN "0010111010" => beamlet_out <= "1101111011";
+      WHEN "0010111011" => beamlet_out <= "1110001111";
+      WHEN "0010111100" => beamlet_out <= "1110100011";
+      WHEN "0010111101" => beamlet_out <= "1110110111";
+      WHEN "0010111110" => beamlet_out <= "1111001011";
+      WHEN "0010111111" => beamlet_out <= "1111011111";
+      WHEN "0011000000" => beamlet_out <= "0000000100";
+      WHEN "0011000001" => beamlet_out <= "0000011000";
+      WHEN "0011000010" => beamlet_out <= "0000101100";
+      WHEN "0011000011" => beamlet_out <= "0001000000";
+      WHEN "0011000100" => beamlet_out <= "0001010100";
+      WHEN "0011000101" => beamlet_out <= "0001101000";
+      WHEN "0011000110" => beamlet_out <= "0001111100";
+      WHEN "0011000111" => beamlet_out <= "0010010000";
+      WHEN "0011001000" => beamlet_out <= "0010100100";
+      WHEN "0011001001" => beamlet_out <= "0010111000";
+      WHEN "0011001010" => beamlet_out <= "0011001100";
+      WHEN "0011001011" => beamlet_out <= "0011100000";
+      WHEN "0011001100" => beamlet_out <= "0100000100";
+      WHEN "0011001101" => beamlet_out <= "0100011000";
+      WHEN "0011001110" => beamlet_out <= "0100101100";
+      WHEN "0011001111" => beamlet_out <= "0101000000";
+      WHEN "0011010000" => beamlet_out <= "0101010100";
+      WHEN "0011010001" => beamlet_out <= "0101101000";
+      WHEN "0011010010" => beamlet_out <= "0101111100";
+      WHEN "0011010011" => beamlet_out <= "0110010000";
+      WHEN "0011010100" => beamlet_out <= "0110100100";
+      WHEN "0011010101" => beamlet_out <= "0110111000";
+      WHEN "0011010110" => beamlet_out <= "0111001100";
+      WHEN "0011010111" => beamlet_out <= "0111100000";
+      WHEN "0011011000" => beamlet_out <= "1000000100";
+      WHEN "0011011001" => beamlet_out <= "1000011000";
+      WHEN "0011011010" => beamlet_out <= "1000101100";
+      WHEN "0011011011" => beamlet_out <= "1001000000";
+      WHEN "0011011100" => beamlet_out <= "1001010100";
+      WHEN "0011011101" => beamlet_out <= "1001101000";
+      WHEN "0011011110" => beamlet_out <= "1001111100";
+      WHEN "0011011111" => beamlet_out <= "1010010000";
+      WHEN "0011100000" => beamlet_out <= "1010100100";
+      WHEN "0011100001" => beamlet_out <= "1010111000";
+      WHEN "0011100010" => beamlet_out <= "1011001100";
+      WHEN "0011100011" => beamlet_out <= "1011100000";
+      WHEN "0011100100" => beamlet_out <= "1100000100";
+      WHEN "0011100101" => beamlet_out <= "1100011000";
+      WHEN "0011100110" => beamlet_out <= "1100101100";
+      WHEN "0011100111" => beamlet_out <= "1101000000";
+      WHEN "0011101000" => beamlet_out <= "1101010100";
+      WHEN "0011101001" => beamlet_out <= "1101101000";
+      WHEN "0011101010" => beamlet_out <= "1101111100";
+      WHEN "0011101011" => beamlet_out <= "1110010000";
+      WHEN "0011101100" => beamlet_out <= "1110100100";
+      WHEN "0011101101" => beamlet_out <= "1110111000";
+      WHEN "0011101110" => beamlet_out <= "1111001100";
+      WHEN "0011101111" => beamlet_out <= "1111100000";
+      WHEN "0100000000" => beamlet_out <= "0000000101";
+      WHEN "0100000001" => beamlet_out <= "0000011001";
+      WHEN "0100000010" => beamlet_out <= "0000101101";
+      WHEN "0100000011" => beamlet_out <= "0001000001";
+      WHEN "0100000100" => beamlet_out <= "0001010101";
+      WHEN "0100000101" => beamlet_out <= "0001101001";
+      WHEN "0100000110" => beamlet_out <= "0001111101";
+      WHEN "0100000111" => beamlet_out <= "0010010001";
+      WHEN "0100001000" => beamlet_out <= "0010100101";
+      WHEN "0100001001" => beamlet_out <= "0010111001";
+      WHEN "0100001010" => beamlet_out <= "0011001101";
+      WHEN "0100001011" => beamlet_out <= "0011100001";
+      WHEN "0100001100" => beamlet_out <= "0100000101";
+      WHEN "0100001101" => beamlet_out <= "0100011001";
+      WHEN "0100001110" => beamlet_out <= "0100101101";
+      WHEN "0100001111" => beamlet_out <= "0101000001";
+      WHEN "0100010000" => beamlet_out <= "0101010101";
+      WHEN "0100010001" => beamlet_out <= "0101101001";
+      WHEN "0100010010" => beamlet_out <= "0101111101";
+      WHEN "0100010011" => beamlet_out <= "0110010001";
+      WHEN "0100010100" => beamlet_out <= "0110100101";
+      WHEN "0100010101" => beamlet_out <= "0110111001";
+      WHEN "0100010110" => beamlet_out <= "0111001101";
+      WHEN "0100010111" => beamlet_out <= "0111100001";
+      WHEN "0100011000" => beamlet_out <= "1000000101";
+      WHEN "0100011001" => beamlet_out <= "1000011001";
+      WHEN "0100011010" => beamlet_out <= "1000101101";
+      WHEN "0100011011" => beamlet_out <= "1001000001";
+      WHEN "0100011100" => beamlet_out <= "1001010101";
+      WHEN "0100011101" => beamlet_out <= "1001101001";
+      WHEN "0100011110" => beamlet_out <= "1001111101";
+      WHEN "0100011111" => beamlet_out <= "1010010001";
+      WHEN "0100100000" => beamlet_out <= "1010100101";
+      WHEN "0100100001" => beamlet_out <= "1010111001";
+      WHEN "0100100010" => beamlet_out <= "1011001101";
+      WHEN "0100100011" => beamlet_out <= "1011100001";
+      WHEN "0100100100" => beamlet_out <= "1100000101";
+      WHEN "0100100101" => beamlet_out <= "1100011001";
+      WHEN "0100100110" => beamlet_out <= "1100101101";
+      WHEN "0100100111" => beamlet_out <= "1101000001";
+      WHEN "0100101000" => beamlet_out <= "1101010101";
+      WHEN "0100101001" => beamlet_out <= "1101101001";
+      WHEN "0100101010" => beamlet_out <= "1101111101";
+      WHEN "0100101011" => beamlet_out <= "1110010001";
+      WHEN "0100101100" => beamlet_out <= "1110100101";
+      WHEN "0100101101" => beamlet_out <= "1110111001";
+      WHEN "0100101110" => beamlet_out <= "1111001101";
+      WHEN "0100101111" => beamlet_out <= "1111100001";
+      WHEN "0100110000" => beamlet_out <= "0000000110";
+      WHEN "0100110001" => beamlet_out <= "0000011010";
+      WHEN "0100110010" => beamlet_out <= "0000101110";
+      WHEN "0100110011" => beamlet_out <= "0001000010";
+      WHEN "0100110100" => beamlet_out <= "0001010110";
+      WHEN "0100110101" => beamlet_out <= "0001101010";
+      WHEN "0100110110" => beamlet_out <= "0001111110";
+      WHEN "0100110111" => beamlet_out <= "0010010010";
+      WHEN "0100111000" => beamlet_out <= "0010100110";
+      WHEN "0100111001" => beamlet_out <= "0010111010";
+      WHEN "0100111010" => beamlet_out <= "0011001110";
+      WHEN "0100111011" => beamlet_out <= "0011100010";
+      WHEN "0100111100" => beamlet_out <= "0100000110";
+      WHEN "0100111101" => beamlet_out <= "0100011010";
+      WHEN "0100111110" => beamlet_out <= "0100101110";
+      WHEN "0100111111" => beamlet_out <= "0101000010";
+      WHEN "0101000000" => beamlet_out <= "0101010110";
+      WHEN "0101000001" => beamlet_out <= "0101101010";
+      WHEN "0101000010" => beamlet_out <= "0101111110";
+      WHEN "0101000011" => beamlet_out <= "0110010010";
+      WHEN "0101000100" => beamlet_out <= "0110100110";
+      WHEN "0101000101" => beamlet_out <= "0110111010";
+      WHEN "0101000110" => beamlet_out <= "0111001110";
+      WHEN "0101000111" => beamlet_out <= "0111100010";
+      WHEN "0101001000" => beamlet_out <= "1000000110";
+      WHEN "0101001001" => beamlet_out <= "1000011010";
+      WHEN "0101001010" => beamlet_out <= "1000101110";
+      WHEN "0101001011" => beamlet_out <= "1001000010";
+      WHEN "0101001100" => beamlet_out <= "1001010110";
+      WHEN "0101001101" => beamlet_out <= "1001101010";
+      WHEN "0101001110" => beamlet_out <= "1001111110";
+      WHEN "0101001111" => beamlet_out <= "1010010010";
+      WHEN "0101010000" => beamlet_out <= "1010100110";
+      WHEN "0101010001" => beamlet_out <= "1010111010";
+      WHEN "0101010010" => beamlet_out <= "1011001110";
+      WHEN "0101010011" => beamlet_out <= "1011100010";
+      WHEN "0101010100" => beamlet_out <= "1100000110";
+      WHEN "0101010101" => beamlet_out <= "1100011010";
+      WHEN "0101010110" => beamlet_out <= "1100101110";
+      WHEN "0101010111" => beamlet_out <= "1101000010";
+      WHEN "0101011000" => beamlet_out <= "1101010110";
+      WHEN "0101011001" => beamlet_out <= "1101101010";
+      WHEN "0101011010" => beamlet_out <= "1101111110";
+      WHEN "0101011011" => beamlet_out <= "1110010010";
+      WHEN "0101011100" => beamlet_out <= "1110100110";
+      WHEN "0101011101" => beamlet_out <= "1110111010";
+      WHEN "0101011110" => beamlet_out <= "1111001110";
+      WHEN "0101011111" => beamlet_out <= "1111100010";
+      WHEN "0101100000" => beamlet_out <= "0000000111";
+      WHEN "0101100001" => beamlet_out <= "0000011011";
+      WHEN "0101100010" => beamlet_out <= "0000101111";
+      WHEN "0101100011" => beamlet_out <= "0001000011";
+      WHEN "0101100100" => beamlet_out <= "0001010111";
+      WHEN "0101100101" => beamlet_out <= "0001101011";
+      WHEN "0101100110" => beamlet_out <= "0001111111";
+      WHEN "0101100111" => beamlet_out <= "0010010011";
+      WHEN "0101101000" => beamlet_out <= "0010100111";
+      WHEN "0101101001" => beamlet_out <= "0010111011";
+      WHEN "0101101010" => beamlet_out <= "0011001111";
+      WHEN "0101101011" => beamlet_out <= "0011100011";
+      WHEN "0101101100" => beamlet_out <= "0100000111";
+      WHEN "0101101101" => beamlet_out <= "0100011011";
+      WHEN "0101101110" => beamlet_out <= "0100101111";
+      WHEN "0101101111" => beamlet_out <= "0101000011";
+      WHEN "0101110000" => beamlet_out <= "0101010111";
+      WHEN "0101110001" => beamlet_out <= "0101101011";
+      WHEN "0101110010" => beamlet_out <= "0101111111";
+      WHEN "0101110011" => beamlet_out <= "0110010011";
+      WHEN "0101110100" => beamlet_out <= "0110100111";
+      WHEN "0101110101" => beamlet_out <= "0110111011";
+      WHEN "0101110110" => beamlet_out <= "0111001111";
+      WHEN "0101110111" => beamlet_out <= "0111100011";
+      WHEN "0101111000" => beamlet_out <= "1000000111";
+      WHEN "0101111001" => beamlet_out <= "1000011011";
+      WHEN "0101111010" => beamlet_out <= "1000101111";
+      WHEN "0101111011" => beamlet_out <= "1001000011";
+      WHEN "0101111100" => beamlet_out <= "1001010111";
+      WHEN "0101111101" => beamlet_out <= "1001101011";
+      WHEN "0101111110" => beamlet_out <= "1001111111";
+      WHEN "0101111111" => beamlet_out <= "1010010011";
+      WHEN "0110000000" => beamlet_out <= "1010100111";
+      WHEN "0110000001" => beamlet_out <= "1010111011";
+      WHEN "0110000010" => beamlet_out <= "1011001111";
+      WHEN "0110000011" => beamlet_out <= "1011100011";
+      WHEN "0110000100" => beamlet_out <= "1100000111";
+      WHEN "0110000101" => beamlet_out <= "1100011011";
+      WHEN "0110000110" => beamlet_out <= "1100101111";
+      WHEN "0110000111" => beamlet_out <= "1101000011";
+      WHEN "0110001000" => beamlet_out <= "1101010111";
+      WHEN "0110001001" => beamlet_out <= "1101101011";
+      WHEN "0110001010" => beamlet_out <= "1101111111";
+      WHEN "0110001011" => beamlet_out <= "1110010011";
+      WHEN "0110001100" => beamlet_out <= "1110100111";
+      WHEN "0110001101" => beamlet_out <= "1110111011";
+      WHEN "0110001110" => beamlet_out <= "1111001111";
+      WHEN "0110001111" => beamlet_out <= "1111100011";
+      WHEN "0110010000" => beamlet_out <= "0000001000";
+      WHEN "0110010001" => beamlet_out <= "0000011100";
+      WHEN "0110010010" => beamlet_out <= "0000110000";
+      WHEN "0110010011" => beamlet_out <= "0001000100";
+      WHEN "0110010100" => beamlet_out <= "0001011000";
+      WHEN "0110010101" => beamlet_out <= "0001101100";
+      WHEN "0110010110" => beamlet_out <= "0010000000";
+      WHEN "0110010111" => beamlet_out <= "0010010100";
+      WHEN "0110011000" => beamlet_out <= "0010101000";
+      WHEN "0110011001" => beamlet_out <= "0010111100";
+      WHEN "0110011010" => beamlet_out <= "0011010000";
+      WHEN "0110011011" => beamlet_out <= "0011100100";
+      WHEN "0110011100" => beamlet_out <= "0100001000";
+      WHEN "0110011101" => beamlet_out <= "0100011100";
+      WHEN "0110011110" => beamlet_out <= "0100110000";
+      WHEN "0110011111" => beamlet_out <= "0101000100";
+      WHEN "0110100000" => beamlet_out <= "0101011000";
+      WHEN "0110100001" => beamlet_out <= "0101101100";
+      WHEN "0110100010" => beamlet_out <= "0110000000";
+      WHEN "0110100011" => beamlet_out <= "0110010100";
+      WHEN "0110100100" => beamlet_out <= "0110101000";
+      WHEN "0110100101" => beamlet_out <= "0110111100";
+      WHEN "0110100110" => beamlet_out <= "0111010000";
+      WHEN "0110100111" => beamlet_out <= "0111100100";
+      WHEN "0110101000" => beamlet_out <= "1000001000";
+      WHEN "0110101001" => beamlet_out <= "1000011100";
+      WHEN "0110101010" => beamlet_out <= "1000110000";
+      WHEN "0110101011" => beamlet_out <= "1001000100";
+      WHEN "0110101100" => beamlet_out <= "1001011000";
+      WHEN "0110101101" => beamlet_out <= "1001101100";
+      WHEN "0110101110" => beamlet_out <= "1010000000";
+      WHEN "0110101111" => beamlet_out <= "1010010100";
+      WHEN "0110110000" => beamlet_out <= "1010101000";
+      WHEN "0110110001" => beamlet_out <= "1010111100";
+      WHEN "0110110010" => beamlet_out <= "1011010000";
+      WHEN "0110110011" => beamlet_out <= "1011100100";
+      WHEN "0110110100" => beamlet_out <= "1100001000";
+      WHEN "0110110101" => beamlet_out <= "1100011100";
+      WHEN "0110110110" => beamlet_out <= "1100110000";
+      WHEN "0110110111" => beamlet_out <= "1101000100";
+      WHEN "0110111000" => beamlet_out <= "1101011000";
+      WHEN "0110111001" => beamlet_out <= "1101101100";
+      WHEN "0110111010" => beamlet_out <= "1110000000";
+      WHEN "0110111011" => beamlet_out <= "1110010100";
+      WHEN "0110111100" => beamlet_out <= "1110101000";
+      WHEN "0110111101" => beamlet_out <= "1110111100";
+      WHEN "0110111110" => beamlet_out <= "1111010000";
+      WHEN "0110111111" => beamlet_out <= "1111100100";
+      WHEN "0111000000" => beamlet_out <= "0000001001";
+      WHEN "0111000001" => beamlet_out <= "0000011101";
+      WHEN "0111000010" => beamlet_out <= "0000110001";
+      WHEN "0111000011" => beamlet_out <= "0001000101";
+      WHEN "0111000100" => beamlet_out <= "0001011001";
+      WHEN "0111000101" => beamlet_out <= "0001101101";
+      WHEN "0111000110" => beamlet_out <= "0010000001";
+      WHEN "0111000111" => beamlet_out <= "0010010101";
+      WHEN "0111001000" => beamlet_out <= "0010101001";
+      WHEN "0111001001" => beamlet_out <= "0010111101";
+      WHEN "0111001010" => beamlet_out <= "0011010001";
+      WHEN "0111001011" => beamlet_out <= "0011100101";
+      WHEN "0111001100" => beamlet_out <= "0100001001";
+      WHEN "0111001101" => beamlet_out <= "0100011101";
+      WHEN "0111001110" => beamlet_out <= "0100110001";
+      WHEN "0111001111" => beamlet_out <= "0101000101";
+      WHEN "0111010000" => beamlet_out <= "0101011001";
+      WHEN "0111010001" => beamlet_out <= "0101101101";
+      WHEN "0111010010" => beamlet_out <= "0110000001";
+      WHEN "0111010011" => beamlet_out <= "0110010101";
+      WHEN "0111010100" => beamlet_out <= "0110101001";
+      WHEN "0111010101" => beamlet_out <= "0110111101";
+      WHEN "0111010110" => beamlet_out <= "0111010001";
+      WHEN "0111010111" => beamlet_out <= "0111100101";
+      WHEN "0111011000" => beamlet_out <= "1000001001";
+      WHEN "0111011001" => beamlet_out <= "1000011101";
+      WHEN "0111011010" => beamlet_out <= "1000110001";
+      WHEN "0111011011" => beamlet_out <= "1001000101";
+      WHEN "0111011100" => beamlet_out <= "1001011001";
+      WHEN "0111011101" => beamlet_out <= "1001101101";
+      WHEN "0111011110" => beamlet_out <= "1010000001";
+      WHEN "0111011111" => beamlet_out <= "1010010101";
+      WHEN "0111100000" => beamlet_out <= "1010101001";
+      WHEN "0111100001" => beamlet_out <= "1010111101";
+      WHEN "0111100010" => beamlet_out <= "1011010001";
+      WHEN "0111100011" => beamlet_out <= "1011100101";
+      WHEN "0111100100" => beamlet_out <= "1100001001";
+      WHEN "0111100101" => beamlet_out <= "1100011101";
+      WHEN "0111100110" => beamlet_out <= "1100110001";
+      WHEN "0111100111" => beamlet_out <= "1101000101";
+      WHEN "0111101000" => beamlet_out <= "1101011001";
+      WHEN "0111101001" => beamlet_out <= "1101101101";
+      WHEN "0111101010" => beamlet_out <= "1110000001";
+      WHEN "0111101011" => beamlet_out <= "1110010101";
+      WHEN "0111101100" => beamlet_out <= "1110101001";
+      WHEN "0111101101" => beamlet_out <= "1110111101";
+      WHEN "0111101110" => beamlet_out <= "1111010001";
+      WHEN "0111101111" => beamlet_out <= "1111100101";
+      WHEN "1000000000" => beamlet_out <= "0000001010";
+      WHEN "1000000001" => beamlet_out <= "0000011110";
+      WHEN "1000000010" => beamlet_out <= "0000110010";
+      WHEN "1000000011" => beamlet_out <= "0001000110";
+      WHEN "1000000100" => beamlet_out <= "0001011010";
+      WHEN "1000000101" => beamlet_out <= "0001101110";
+      WHEN "1000000110" => beamlet_out <= "0010000010";
+      WHEN "1000000111" => beamlet_out <= "0010010110";
+      WHEN "1000001000" => beamlet_out <= "0010101010";
+      WHEN "1000001001" => beamlet_out <= "0010111110";
+      WHEN "1000001010" => beamlet_out <= "0011010010";
+      WHEN "1000001011" => beamlet_out <= "0011100110";
+      WHEN "1000001100" => beamlet_out <= "0100001010";
+      WHEN "1000001101" => beamlet_out <= "0100011110";
+      WHEN "1000001110" => beamlet_out <= "0100110010";
+      WHEN "1000001111" => beamlet_out <= "0101000110";
+      WHEN "1000010000" => beamlet_out <= "0101011010";
+      WHEN "1000010001" => beamlet_out <= "0101101110";
+      WHEN "1000010010" => beamlet_out <= "0110000010";
+      WHEN "1000010011" => beamlet_out <= "0110010110";
+      WHEN "1000010100" => beamlet_out <= "0110101010";
+      WHEN "1000010101" => beamlet_out <= "0110111110";
+      WHEN "1000010110" => beamlet_out <= "0111010010";
+      WHEN "1000010111" => beamlet_out <= "0111100110";
+      WHEN "1000011000" => beamlet_out <= "1000001010";
+      WHEN "1000011001" => beamlet_out <= "1000011110";
+      WHEN "1000011010" => beamlet_out <= "1000110010";
+      WHEN "1000011011" => beamlet_out <= "1001000110";
+      WHEN "1000011100" => beamlet_out <= "1001011010";
+      WHEN "1000011101" => beamlet_out <= "1001101110";
+      WHEN "1000011110" => beamlet_out <= "1010000010";
+      WHEN "1000011111" => beamlet_out <= "1010010110";
+      WHEN "1000100000" => beamlet_out <= "1010101010";
+      WHEN "1000100001" => beamlet_out <= "1010111110";
+      WHEN "1000100010" => beamlet_out <= "1011010010";
+      WHEN "1000100011" => beamlet_out <= "1011100110";
+      WHEN "1000100100" => beamlet_out <= "1100001010";
+      WHEN "1000100101" => beamlet_out <= "1100011110";
+      WHEN "1000100110" => beamlet_out <= "1100110010";
+      WHEN "1000100111" => beamlet_out <= "1101000110";
+      WHEN "1000101000" => beamlet_out <= "1101011010";
+      WHEN "1000101001" => beamlet_out <= "1101101110";
+      WHEN "1000101010" => beamlet_out <= "1110000010";
+      WHEN "1000101011" => beamlet_out <= "1110010110";
+      WHEN "1000101100" => beamlet_out <= "1110101010";
+      WHEN "1000101101" => beamlet_out <= "1110111110";
+      WHEN "1000101110" => beamlet_out <= "1111010010";
+      WHEN "1000101111" => beamlet_out <= "1111100110";
+      WHEN "1000110000" => beamlet_out <= "0000001011";
+      WHEN "1000110001" => beamlet_out <= "0000011111";
+      WHEN "1000110010" => beamlet_out <= "0000110011";
+      WHEN "1000110011" => beamlet_out <= "0001000111";
+      WHEN "1000110100" => beamlet_out <= "0001011011";
+      WHEN "1000110101" => beamlet_out <= "0001101111";
+      WHEN "1000110110" => beamlet_out <= "0010000011";
+      WHEN "1000110111" => beamlet_out <= "0010010111";
+      WHEN "1000111000" => beamlet_out <= "0010101011";
+      WHEN "1000111001" => beamlet_out <= "0010111111";
+      WHEN "1000111010" => beamlet_out <= "0011010011";
+      WHEN "1000111011" => beamlet_out <= "0011100111";
+      WHEN "1000111100" => beamlet_out <= "0100001011";
+      WHEN "1000111101" => beamlet_out <= "0100011111";
+      WHEN "1000111110" => beamlet_out <= "0100110011";
+      WHEN "1000111111" => beamlet_out <= "0101000111";
+      WHEN "1001000000" => beamlet_out <= "0101011011";
+      WHEN "1001000001" => beamlet_out <= "0101101111";
+      WHEN "1001000010" => beamlet_out <= "0110000011";
+      WHEN "1001000011" => beamlet_out <= "0110010111";
+      WHEN "1001000100" => beamlet_out <= "0110101011";
+      WHEN "1001000101" => beamlet_out <= "0110111111";
+      WHEN "1001000110" => beamlet_out <= "0111010011";
+      WHEN "1001000111" => beamlet_out <= "0111100111";
+      WHEN "1001001000" => beamlet_out <= "1000001011";
+      WHEN "1001001001" => beamlet_out <= "1000011111";
+      WHEN "1001001010" => beamlet_out <= "1000110011";
+      WHEN "1001001011" => beamlet_out <= "1001000111";
+      WHEN "1001001100" => beamlet_out <= "1001011011";
+      WHEN "1001001101" => beamlet_out <= "1001101111";
+      WHEN "1001001110" => beamlet_out <= "1010000011";
+      WHEN "1001001111" => beamlet_out <= "1010010111";
+      WHEN "1001010000" => beamlet_out <= "1010101011";
+      WHEN "1001010001" => beamlet_out <= "1010111111";
+      WHEN "1001010010" => beamlet_out <= "1011010011";
+      WHEN "1001010011" => beamlet_out <= "1011100111";
+      WHEN "1001010100" => beamlet_out <= "1100001011";
+      WHEN "1001010101" => beamlet_out <= "1100011111";
+      WHEN "1001010110" => beamlet_out <= "1100110011";
+      WHEN "1001010111" => beamlet_out <= "1101000111";
+      WHEN "1001011000" => beamlet_out <= "1101011011";
+      WHEN "1001011001" => beamlet_out <= "1101101111";
+      WHEN "1001011010" => beamlet_out <= "1110000011";
+      WHEN "1001011011" => beamlet_out <= "1110010111";
+      WHEN "1001011100" => beamlet_out <= "1110101011";
+      WHEN "1001011101" => beamlet_out <= "1110111111";
+      WHEN "1001011110" => beamlet_out <= "1111010011";
+      WHEN "1001011111" => beamlet_out <= "1111100111";
+      WHEN "1001100000" => beamlet_out <= "0000001100";
+      WHEN "1001100001" => beamlet_out <= "0000100000";
+      WHEN "1001100010" => beamlet_out <= "0000110100";
+      WHEN "1001100011" => beamlet_out <= "0001001000";
+      WHEN "1001100100" => beamlet_out <= "0001011100";
+      WHEN "1001100101" => beamlet_out <= "0001110000";
+      WHEN "1001100110" => beamlet_out <= "0010000100";
+      WHEN "1001100111" => beamlet_out <= "0010011000";
+      WHEN "1001101000" => beamlet_out <= "0010101100";
+      WHEN "1001101001" => beamlet_out <= "0011000000";
+      WHEN "1001101010" => beamlet_out <= "0011010100";
+      WHEN "1001101011" => beamlet_out <= "0011101000";
+      WHEN "1001101100" => beamlet_out <= "0100001100";
+      WHEN "1001101101" => beamlet_out <= "0100100000";
+      WHEN "1001101110" => beamlet_out <= "0100110100";
+      WHEN "1001101111" => beamlet_out <= "0101001000";
+      WHEN "1001110000" => beamlet_out <= "0101011100";
+      WHEN "1001110001" => beamlet_out <= "0101110000";
+      WHEN "1001110010" => beamlet_out <= "0110000100";
+      WHEN "1001110011" => beamlet_out <= "0110011000";
+      WHEN "1001110100" => beamlet_out <= "0110101100";
+      WHEN "1001110101" => beamlet_out <= "0111000000";
+      WHEN "1001110110" => beamlet_out <= "0111010100";
+      WHEN "1001110111" => beamlet_out <= "0111101000";
+      WHEN "1001111000" => beamlet_out <= "1000001100";
+      WHEN "1001111001" => beamlet_out <= "1000100000";
+      WHEN "1001111010" => beamlet_out <= "1000110100";
+      WHEN "1001111011" => beamlet_out <= "1001001000";
+      WHEN "1001111100" => beamlet_out <= "1001011100";
+      WHEN "1001111101" => beamlet_out <= "1001110000";
+      WHEN "1001111110" => beamlet_out <= "1010000100";
+      WHEN "1001111111" => beamlet_out <= "1010011000";
+      WHEN "1010000000" => beamlet_out <= "1010101100";
+      WHEN "1010000001" => beamlet_out <= "1011000000";
+      WHEN "1010000010" => beamlet_out <= "1011010100";
+      WHEN "1010000011" => beamlet_out <= "1011101000";
+      WHEN "1010000100" => beamlet_out <= "1100001100";
+      WHEN "1010000101" => beamlet_out <= "1100100000";
+      WHEN "1010000110" => beamlet_out <= "1100110100";
+      WHEN "1010000111" => beamlet_out <= "1101001000";
+      WHEN "1010001000" => beamlet_out <= "1101011100";
+      WHEN "1010001001" => beamlet_out <= "1101110000";
+      WHEN "1010001010" => beamlet_out <= "1110000100";
+      WHEN "1010001011" => beamlet_out <= "1110011000";
+      WHEN "1010001100" => beamlet_out <= "1110101100";
+      WHEN "1010001101" => beamlet_out <= "1111000000";
+      WHEN "1010001110" => beamlet_out <= "1111010100";
+      WHEN "1010001111" => beamlet_out <= "1111101000";
+      WHEN "1010010000" => beamlet_out <= "0000001101";
+      WHEN "1010010001" => beamlet_out <= "0000100001";
+      WHEN "1010010010" => beamlet_out <= "0000110101";
+      WHEN "1010010011" => beamlet_out <= "0001001001";
+      WHEN "1010010100" => beamlet_out <= "0001011101";
+      WHEN "1010010101" => beamlet_out <= "0001110001";
+      WHEN "1010010110" => beamlet_out <= "0010000101";
+      WHEN "1010010111" => beamlet_out <= "0010011001";
+      WHEN "1010011000" => beamlet_out <= "0010101101";
+      WHEN "1010011001" => beamlet_out <= "0011000001";
+      WHEN "1010011010" => beamlet_out <= "0011010101";
+      WHEN "1010011011" => beamlet_out <= "0011101001";
+      WHEN "1010011100" => beamlet_out <= "0100001101";
+      WHEN "1010011101" => beamlet_out <= "0100100001";
+      WHEN "1010011110" => beamlet_out <= "0100110101";
+      WHEN "1010011111" => beamlet_out <= "0101001001";
+      WHEN "1010100000" => beamlet_out <= "0101011101";
+      WHEN "1010100001" => beamlet_out <= "0101110001";
+      WHEN "1010100010" => beamlet_out <= "0110000101";
+      WHEN "1010100011" => beamlet_out <= "0110011001";
+      WHEN "1010100100" => beamlet_out <= "0110101101";
+      WHEN "1010100101" => beamlet_out <= "0111000001";
+      WHEN "1010100110" => beamlet_out <= "0111010101";
+      WHEN "1010100111" => beamlet_out <= "0111101001";
+      WHEN "1010101000" => beamlet_out <= "1000001101";
+      WHEN "1010101001" => beamlet_out <= "1000100001";
+      WHEN "1010101010" => beamlet_out <= "1000110101";
+      WHEN "1010101011" => beamlet_out <= "1001001001";
+      WHEN "1010101100" => beamlet_out <= "1001011101";
+      WHEN "1010101101" => beamlet_out <= "1001110001";
+      WHEN "1010101110" => beamlet_out <= "1010000101";
+      WHEN "1010101111" => beamlet_out <= "1010011001";
+      WHEN "1010110000" => beamlet_out <= "1010101101";
+      WHEN "1010110001" => beamlet_out <= "1011000001";
+      WHEN "1010110010" => beamlet_out <= "1011010101";
+      WHEN "1010110011" => beamlet_out <= "1011101001";
+      WHEN "1010110100" => beamlet_out <= "1100001101";
+      WHEN "1010110101" => beamlet_out <= "1100100001";
+      WHEN "1010110110" => beamlet_out <= "1100110101";
+      WHEN "1010110111" => beamlet_out <= "1101001001";
+      WHEN "1010111000" => beamlet_out <= "1101011101";
+      WHEN "1010111001" => beamlet_out <= "1101110001";
+      WHEN "1010111010" => beamlet_out <= "1110000101";
+      WHEN "1010111011" => beamlet_out <= "1110011001";
+      WHEN "1010111100" => beamlet_out <= "1110101101";
+      WHEN "1010111101" => beamlet_out <= "1111000001";
+      WHEN "1010111110" => beamlet_out <= "1111010101";
+      WHEN "1010111111" => beamlet_out <= "1111101001";
+      WHEN "1011000000" => beamlet_out <= "0000001110";
+      WHEN "1011000001" => beamlet_out <= "0000100010";
+      WHEN "1011000010" => beamlet_out <= "0000110110";
+      WHEN "1011000011" => beamlet_out <= "0001001010";
+      WHEN "1011000100" => beamlet_out <= "0001011110";
+      WHEN "1011000101" => beamlet_out <= "0001110010";
+      WHEN "1011000110" => beamlet_out <= "0010000110";
+      WHEN "1011000111" => beamlet_out <= "0010011010";
+      WHEN "1011001000" => beamlet_out <= "0010101110";
+      WHEN "1011001001" => beamlet_out <= "0011000010";
+      WHEN "1011001010" => beamlet_out <= "0011010110";
+      WHEN "1011001011" => beamlet_out <= "0011101010";
+      WHEN "1011001100" => beamlet_out <= "0100001110";
+      WHEN "1011001101" => beamlet_out <= "0100100010";
+      WHEN "1011001110" => beamlet_out <= "0100110110";
+      WHEN "1011001111" => beamlet_out <= "0101001010";
+      WHEN "1011010000" => beamlet_out <= "0101011110";
+      WHEN "1011010001" => beamlet_out <= "0101110010";
+      WHEN "1011010010" => beamlet_out <= "0110000110";
+      WHEN "1011010011" => beamlet_out <= "0110011010";
+      WHEN "1011010100" => beamlet_out <= "0110101110";
+      WHEN "1011010101" => beamlet_out <= "0111000010";
+      WHEN "1011010110" => beamlet_out <= "0111010110";
+      WHEN "1011010111" => beamlet_out <= "0111101010";
+      WHEN "1011011000" => beamlet_out <= "1000001110";
+      WHEN "1011011001" => beamlet_out <= "1000100010";
+      WHEN "1011011010" => beamlet_out <= "1000110110";
+      WHEN "1011011011" => beamlet_out <= "1001001010";
+      WHEN "1011011100" => beamlet_out <= "1001011110";
+      WHEN "1011011101" => beamlet_out <= "1001110010";
+      WHEN "1011011110" => beamlet_out <= "1010000110";
+      WHEN "1011011111" => beamlet_out <= "1010011010";
+      WHEN "1011100000" => beamlet_out <= "1010101110";
+      WHEN "1011100001" => beamlet_out <= "1011000010";
+      WHEN "1011100010" => beamlet_out <= "1011010110";
+      WHEN "1011100011" => beamlet_out <= "1011101010";
+      WHEN "1011100100" => beamlet_out <= "1100001110";
+      WHEN "1011100101" => beamlet_out <= "1100100010";
+      WHEN "1011100110" => beamlet_out <= "1100110110";
+      WHEN "1011100111" => beamlet_out <= "1101001010";
+      WHEN "1011101000" => beamlet_out <= "1101011110";
+      WHEN "1011101001" => beamlet_out <= "1101110010";
+      WHEN "1011101010" => beamlet_out <= "1110000110";
+      WHEN "1011101011" => beamlet_out <= "1110011010";
+      WHEN "1011101100" => beamlet_out <= "1110101110";
+      WHEN "1011101101" => beamlet_out <= "1111000010";
+      WHEN "1011101110" => beamlet_out <= "1111010110";
+      WHEN "1011101111" => beamlet_out <= "1111101010";
+      WHEN "1100000000" => beamlet_out <= "0000001111";
+      WHEN "1100000001" => beamlet_out <= "0000100011";
+      WHEN "1100000010" => beamlet_out <= "0000110111";
+      WHEN "1100000011" => beamlet_out <= "0001001011";
+      WHEN "1100000100" => beamlet_out <= "0001011111";
+      WHEN "1100000101" => beamlet_out <= "0001110011";
+      WHEN "1100000110" => beamlet_out <= "0010000111";
+      WHEN "1100000111" => beamlet_out <= "0010011011";
+      WHEN "1100001000" => beamlet_out <= "0010101111";
+      WHEN "1100001001" => beamlet_out <= "0011000011";
+      WHEN "1100001010" => beamlet_out <= "0011010111";
+      WHEN "1100001011" => beamlet_out <= "0011101011";
+      WHEN "1100001100" => beamlet_out <= "0100001111";
+      WHEN "1100001101" => beamlet_out <= "0100100011";
+      WHEN "1100001110" => beamlet_out <= "0100110111";
+      WHEN "1100001111" => beamlet_out <= "0101001011";
+      WHEN "1100010000" => beamlet_out <= "0101011111";
+      WHEN "1100010001" => beamlet_out <= "0101110011";
+      WHEN "1100010010" => beamlet_out <= "0110000111";
+      WHEN "1100010011" => beamlet_out <= "0110011011";
+      WHEN "1100010100" => beamlet_out <= "0110101111";
+      WHEN "1100010101" => beamlet_out <= "0111000011";
+      WHEN "1100010110" => beamlet_out <= "0111010111";
+      WHEN "1100010111" => beamlet_out <= "0111101011";
+      WHEN "1100011000" => beamlet_out <= "1000001111";
+      WHEN "1100011001" => beamlet_out <= "1000100011";
+      WHEN "1100011010" => beamlet_out <= "1000110111";
+      WHEN "1100011011" => beamlet_out <= "1001001011";
+      WHEN "1100011100" => beamlet_out <= "1001011111";
+      WHEN "1100011101" => beamlet_out <= "1001110011";
+      WHEN "1100011110" => beamlet_out <= "1010000111";
+      WHEN "1100011111" => beamlet_out <= "1010011011";
+      WHEN "1100100000" => beamlet_out <= "1010101111";
+      WHEN "1100100001" => beamlet_out <= "1011000011";
+      WHEN "1100100010" => beamlet_out <= "1011010111";
+      WHEN "1100100011" => beamlet_out <= "1011101011";
+      WHEN "1100100100" => beamlet_out <= "1100001111";
+      WHEN "1100100101" => beamlet_out <= "1100100011";
+      WHEN "1100100110" => beamlet_out <= "1100110111";
+      WHEN "1100100111" => beamlet_out <= "1101001011";
+      WHEN "1100101000" => beamlet_out <= "1101011111";
+      WHEN "1100101001" => beamlet_out <= "1101110011";
+      WHEN "1100101010" => beamlet_out <= "1110000111";
+      WHEN "1100101011" => beamlet_out <= "1110011011";
+      WHEN "1100101100" => beamlet_out <= "1110101111";
+      WHEN "1100101101" => beamlet_out <= "1111000011";
+      WHEN "1100101110" => beamlet_out <= "1111010111";
+      WHEN "1100101111" => beamlet_out <= "1111101011";
+      WHEN "1100110000" => beamlet_out <= "0000010000";
+      WHEN "1100110001" => beamlet_out <= "0000100100";
+      WHEN "1100110010" => beamlet_out <= "0000111000";
+      WHEN "1100110011" => beamlet_out <= "0001001100";
+      WHEN "1100110100" => beamlet_out <= "0001100000";
+      WHEN "1100110101" => beamlet_out <= "0001110100";
+      WHEN "1100110110" => beamlet_out <= "0010001000";
+      WHEN "1100110111" => beamlet_out <= "0010011100";
+      WHEN "1100111000" => beamlet_out <= "0010110000";
+      WHEN "1100111001" => beamlet_out <= "0011000100";
+      WHEN "1100111010" => beamlet_out <= "0011011000";
+      WHEN "1100111011" => beamlet_out <= "0011101100";
+      WHEN "1100111100" => beamlet_out <= "0100010000";
+      WHEN "1100111101" => beamlet_out <= "0100100100";
+      WHEN "1100111110" => beamlet_out <= "0100111000";
+      WHEN "1100111111" => beamlet_out <= "0101001100";
+      WHEN "1101000000" => beamlet_out <= "0101100000";
+      WHEN "1101000001" => beamlet_out <= "0101110100";
+      WHEN "1101000010" => beamlet_out <= "0110001000";
+      WHEN "1101000011" => beamlet_out <= "0110011100";
+      WHEN "1101000100" => beamlet_out <= "0110110000";
+      WHEN "1101000101" => beamlet_out <= "0111000100";
+      WHEN "1101000110" => beamlet_out <= "0111011000";
+      WHEN "1101000111" => beamlet_out <= "0111101100";
+      WHEN "1101001000" => beamlet_out <= "1000010000";
+      WHEN "1101001001" => beamlet_out <= "1000100100";
+      WHEN "1101001010" => beamlet_out <= "1000111000";
+      WHEN "1101001011" => beamlet_out <= "1001001100";
+      WHEN "1101001100" => beamlet_out <= "1001100000";
+      WHEN "1101001101" => beamlet_out <= "1001110100";
+      WHEN "1101001110" => beamlet_out <= "1010001000";
+      WHEN "1101001111" => beamlet_out <= "1010011100";
+      WHEN "1101010000" => beamlet_out <= "1010110000";
+      WHEN "1101010001" => beamlet_out <= "1011000100";
+      WHEN "1101010010" => beamlet_out <= "1011011000";
+      WHEN "1101010011" => beamlet_out <= "1011101100";
+      WHEN "1101010100" => beamlet_out <= "1100010000";
+      WHEN "1101010101" => beamlet_out <= "1100100100";
+      WHEN "1101010110" => beamlet_out <= "1100111000";
+      WHEN "1101010111" => beamlet_out <= "1101001100";
+      WHEN "1101011000" => beamlet_out <= "1101100000";
+      WHEN "1101011001" => beamlet_out <= "1101110100";
+      WHEN "1101011010" => beamlet_out <= "1110001000";
+      WHEN "1101011011" => beamlet_out <= "1110011100";
+      WHEN "1101011100" => beamlet_out <= "1110110000";
+      WHEN "1101011101" => beamlet_out <= "1111000100";
+      WHEN "1101011110" => beamlet_out <= "1111011000";
+      WHEN "1101011111" => beamlet_out <= "1111101100";
+      WHEN "1101100000" => beamlet_out <= "0000010001";
+      WHEN "1101100001" => beamlet_out <= "0000100101";
+      WHEN "1101100010" => beamlet_out <= "0000111001";
+      WHEN "1101100011" => beamlet_out <= "0001001101";
+      WHEN "1101100100" => beamlet_out <= "0001100001";
+      WHEN "1101100101" => beamlet_out <= "0001110101";
+      WHEN "1101100110" => beamlet_out <= "0010001001";
+      WHEN "1101100111" => beamlet_out <= "0010011101";
+      WHEN "1101101000" => beamlet_out <= "0010110001";
+      WHEN "1101101001" => beamlet_out <= "0011000101";
+      WHEN "1101101010" => beamlet_out <= "0011011001";
+      WHEN "1101101011" => beamlet_out <= "0011101101";
+      WHEN "1101101100" => beamlet_out <= "0100010001";
+      WHEN "1101101101" => beamlet_out <= "0100100101";
+      WHEN "1101101110" => beamlet_out <= "0100111001";
+      WHEN "1101101111" => beamlet_out <= "0101001101";
+      WHEN "1101110000" => beamlet_out <= "0101100001";
+      WHEN "1101110001" => beamlet_out <= "0101110101";
+      WHEN "1101110010" => beamlet_out <= "0110001001";
+      WHEN "1101110011" => beamlet_out <= "0110011101";
+      WHEN "1101110100" => beamlet_out <= "0110110001";
+      WHEN "1101110101" => beamlet_out <= "0111000101";
+      WHEN "1101110110" => beamlet_out <= "0111011001";
+      WHEN "1101110111" => beamlet_out <= "0111101101";
+      WHEN "1101111000" => beamlet_out <= "1000010001";
+      WHEN "1101111001" => beamlet_out <= "1000100101";
+      WHEN "1101111010" => beamlet_out <= "1000111001";
+      WHEN "1101111011" => beamlet_out <= "1001001101";
+      WHEN "1101111100" => beamlet_out <= "1001100001";
+      WHEN "1101111101" => beamlet_out <= "1001110101";
+      WHEN "1101111110" => beamlet_out <= "1010001001";
+      WHEN "1101111111" => beamlet_out <= "1010011101";
+      WHEN "1110000000" => beamlet_out <= "1010110001";
+      WHEN "1110000001" => beamlet_out <= "1011000101";
+      WHEN "1110000010" => beamlet_out <= "1011011001";
+      WHEN "1110000011" => beamlet_out <= "1011101101";
+      WHEN "1110000100" => beamlet_out <= "1100010001";
+      WHEN "1110000101" => beamlet_out <= "1100100101";
+      WHEN "1110000110" => beamlet_out <= "1100111001";
+      WHEN "1110000111" => beamlet_out <= "1101001101";
+      WHEN "1110001000" => beamlet_out <= "1101100001";
+      WHEN "1110001001" => beamlet_out <= "1101110101";
+      WHEN "1110001010" => beamlet_out <= "1110001001";
+      WHEN "1110001011" => beamlet_out <= "1110011101";
+      WHEN "1110001100" => beamlet_out <= "1110110001";
+      WHEN "1110001101" => beamlet_out <= "1111000101";
+      WHEN "1110001110" => beamlet_out <= "1111011001";
+      WHEN "1110001111" => beamlet_out <= "1111101101";
+      WHEN "1110010000" => beamlet_out <= "0000010010";
+      WHEN "1110010001" => beamlet_out <= "0000100110";
+      WHEN "1110010010" => beamlet_out <= "0000111010";
+      WHEN "1110010011" => beamlet_out <= "0001001110";
+      WHEN "1110010100" => beamlet_out <= "0001100010";
+      WHEN "1110010101" => beamlet_out <= "0001110110";
+      WHEN "1110010110" => beamlet_out <= "0010001010";
+      WHEN "1110010111" => beamlet_out <= "0010011110";
+      WHEN "1110011000" => beamlet_out <= "0010110010";
+      WHEN "1110011001" => beamlet_out <= "0011000110";
+      WHEN "1110011010" => beamlet_out <= "0011011010";
+      WHEN "1110011011" => beamlet_out <= "0011101110";
+      WHEN "1110011100" => beamlet_out <= "0100010010";
+      WHEN "1110011101" => beamlet_out <= "0100100110";
+      WHEN "1110011110" => beamlet_out <= "0100111010";
+      WHEN "1110011111" => beamlet_out <= "0101001110";
+      WHEN "1110100000" => beamlet_out <= "0101100010";
+      WHEN "1110100001" => beamlet_out <= "0101110110";
+      WHEN "1110100010" => beamlet_out <= "0110001010";
+      WHEN "1110100011" => beamlet_out <= "0110011110";
+      WHEN "1110100100" => beamlet_out <= "0110110010";
+      WHEN "1110100101" => beamlet_out <= "0111000110";
+      WHEN "1110100110" => beamlet_out <= "0111011010";
+      WHEN "1110100111" => beamlet_out <= "0111101110";
+      WHEN "1110101000" => beamlet_out <= "1000010010";
+      WHEN "1110101001" => beamlet_out <= "1000100110";
+      WHEN "1110101010" => beamlet_out <= "1000111010";
+      WHEN "1110101011" => beamlet_out <= "1001001110";
+      WHEN "1110101100" => beamlet_out <= "1001100010";
+      WHEN "1110101101" => beamlet_out <= "1001110110";
+      WHEN "1110101110" => beamlet_out <= "1010001010";
+      WHEN "1110101111" => beamlet_out <= "1010011110";
+      WHEN "1110110000" => beamlet_out <= "1010110010";
+      WHEN "1110110001" => beamlet_out <= "1011000110";
+      WHEN "1110110010" => beamlet_out <= "1011011010";
+      WHEN "1110110011" => beamlet_out <= "1011101110";
+      WHEN "1110110100" => beamlet_out <= "1100010010";
+      WHEN "1110110101" => beamlet_out <= "1100100110";
+      WHEN "1110110110" => beamlet_out <= "1100111010";
+      WHEN "1110110111" => beamlet_out <= "1101001110";
+      WHEN "1110111000" => beamlet_out <= "1101100010";
+      WHEN "1110111001" => beamlet_out <= "1101110110";
+      WHEN "1110111010" => beamlet_out <= "1110001010";
+      WHEN "1110111011" => beamlet_out <= "1110011110";
+      WHEN "1110111100" => beamlet_out <= "1110110010";
+      WHEN "1110111101" => beamlet_out <= "1111000110";
+      WHEN "1110111110" => beamlet_out <= "1111011010";
+      WHEN "1110111111" => beamlet_out <= "1111101110";
+      WHEN "1111000000" => beamlet_out <= "0000010011";
+      WHEN "1111000001" => beamlet_out <= "0000100111";
+      WHEN "1111000010" => beamlet_out <= "0000111011";
+      WHEN "1111000011" => beamlet_out <= "0001001111";
+      WHEN "1111000100" => beamlet_out <= "0001100011";
+      WHEN "1111000101" => beamlet_out <= "0001110111";
+      WHEN "1111000110" => beamlet_out <= "0010001011";
+      WHEN "1111000111" => beamlet_out <= "0010011111";
+      WHEN "1111001000" => beamlet_out <= "0010110011";
+      WHEN "1111001001" => beamlet_out <= "0011000111";
+      WHEN "1111001010" => beamlet_out <= "0011011011";
+      WHEN "1111001011" => beamlet_out <= "0011101111";
+      WHEN "1111001100" => beamlet_out <= "0100010011";
+      WHEN "1111001101" => beamlet_out <= "0100100111";
+      WHEN "1111001110" => beamlet_out <= "0100111011";
+      WHEN "1111001111" => beamlet_out <= "0101001111";
+      WHEN "1111010000" => beamlet_out <= "0101100011";
+      WHEN "1111010001" => beamlet_out <= "0101110111";
+      WHEN "1111010010" => beamlet_out <= "0110001011";
+      WHEN "1111010011" => beamlet_out <= "0110011111";
+      WHEN "1111010100" => beamlet_out <= "0110110011";
+      WHEN "1111010101" => beamlet_out <= "0111000111";
+      WHEN "1111010110" => beamlet_out <= "0111011011";
+      WHEN "1111010111" => beamlet_out <= "0111101111";
+      WHEN "1111011000" => beamlet_out <= "1000010011";
+      WHEN "1111011001" => beamlet_out <= "1000100111";
+      WHEN "1111011010" => beamlet_out <= "1000111011";
+      WHEN "1111011011" => beamlet_out <= "1001001111";
+      WHEN "1111011100" => beamlet_out <= "1001100011";
+      WHEN "1111011101" => beamlet_out <= "1001110111";
+      WHEN "1111011110" => beamlet_out <= "1010001011";
+      WHEN "1111011111" => beamlet_out <= "1010011111";
+      WHEN "1111100000" => beamlet_out <= "1010110011";
+      WHEN "1111100001" => beamlet_out <= "1011000111";
+      WHEN "1111100010" => beamlet_out <= "1011011011";
+      WHEN "1111100011" => beamlet_out <= "1011101111";
+      WHEN "1111100100" => beamlet_out <= "1100010011";
+      WHEN "1111100101" => beamlet_out <= "1100100111";
+      WHEN "1111100110" => beamlet_out <= "1100111011";
+      WHEN "1111100111" => beamlet_out <= "1101001111";
+      WHEN "1111101000" => beamlet_out <= "1101100011";
+      WHEN "1111101001" => beamlet_out <= "1101110111";
+      WHEN "1111101010" => beamlet_out <= "1110001011";
+      WHEN "1111101011" => beamlet_out <= "1110011111";
+      WHEN "1111101100" => beamlet_out <= "1110110011";
+      WHEN "1111101101" => beamlet_out <= "1111000111";
+      WHEN "1111101110" => beamlet_out <= "1111011011";
+      WHEN "1111101111" => beamlet_out <= "1111101111";
+      WHEN OTHERS => beamlet_out <= "0000000000";
+    END CASE;
+  END IF;
+END PROCESS;
+END rtl;