From df0df1016b7cac4e678c0cd09347f591da1ef5a0 Mon Sep 17 00:00:00 2001
From: Erik Kooistra <kooistra@astron.nl>
Date: Sun, 18 Oct 2015 09:19:17 +0000
Subject: [PATCH] SVN copied data and hex directories so that they can be
 referred to from $RADIOHDL instead of from $UNB.

---
 libraries/base/diag/src/data/bf_in_data.dat   |  384 +++
 libraries/base/diag/src/data/bf_in_data_0.dat |   96 +
 libraries/base/diag/src/data/bf_in_data_0.hex |  129 +
 libraries/base/diag/src/data/bf_in_data_0.mif |  104 +
 libraries/base/diag/src/data/bf_in_data_1.dat |   96 +
 libraries/base/diag/src/data/bf_in_data_1.hex |  129 +
 libraries/base/diag/src/data/bf_in_data_1.mif |  104 +
 .../base/diag/src/data/bf_in_data_10.dat      |   96 +
 .../base/diag/src/data/bf_in_data_10.hex      |  129 +
 .../base/diag/src/data/bf_in_data_10.mif      |  104 +
 .../base/diag/src/data/bf_in_data_11.dat      |   96 +
 .../base/diag/src/data/bf_in_data_11.hex      |  129 +
 .../base/diag/src/data/bf_in_data_11.mif      |  104 +
 .../base/diag/src/data/bf_in_data_12.dat      |   96 +
 .../base/diag/src/data/bf_in_data_12.hex      |  129 +
 .../base/diag/src/data/bf_in_data_12.mif      |  104 +
 .../base/diag/src/data/bf_in_data_13.dat      |   96 +
 .../base/diag/src/data/bf_in_data_13.hex      |  129 +
 .../base/diag/src/data/bf_in_data_13.mif      |  104 +
 .../base/diag/src/data/bf_in_data_14.dat      |   96 +
 .../base/diag/src/data/bf_in_data_14.hex      |  129 +
 .../base/diag/src/data/bf_in_data_14.mif      |  104 +
 .../base/diag/src/data/bf_in_data_15.dat      |   96 +
 .../base/diag/src/data/bf_in_data_15.hex      |  129 +
 .../base/diag/src/data/bf_in_data_15.mif      |  104 +
 libraries/base/diag/src/data/bf_in_data_2.dat |   96 +
 libraries/base/diag/src/data/bf_in_data_2.hex |  129 +
 libraries/base/diag/src/data/bf_in_data_2.mif |  104 +
 libraries/base/diag/src/data/bf_in_data_3.dat |   96 +
 libraries/base/diag/src/data/bf_in_data_3.hex |  129 +
 libraries/base/diag/src/data/bf_in_data_3.mif |  104 +
 libraries/base/diag/src/data/bf_in_data_4.dat |   96 +
 libraries/base/diag/src/data/bf_in_data_4.hex |  129 +
 libraries/base/diag/src/data/bf_in_data_4.mif |  104 +
 libraries/base/diag/src/data/bf_in_data_5.dat |   96 +
 libraries/base/diag/src/data/bf_in_data_5.hex |  129 +
 libraries/base/diag/src/data/bf_in_data_5.mif |  104 +
 libraries/base/diag/src/data/bf_in_data_6.dat |   96 +
 libraries/base/diag/src/data/bf_in_data_6.hex |  129 +
 libraries/base/diag/src/data/bf_in_data_6.mif |  104 +
 libraries/base/diag/src/data/bf_in_data_7.dat |   96 +
 libraries/base/diag/src/data/bf_in_data_7.hex |  129 +
 libraries/base/diag/src/data/bf_in_data_7.mif |  104 +
 libraries/base/diag/src/data/bf_in_data_8.dat |   96 +
 libraries/base/diag/src/data/bf_in_data_8.hex |  129 +
 libraries/base/diag/src/data/bf_in_data_8.mif |  104 +
 libraries/base/diag/src/data/bf_in_data_9.dat |   96 +
 libraries/base/diag/src/data/bf_in_data_9.hex |  129 +
 libraries/base/diag/src/data/bf_in_data_9.mif |  104 +
 libraries/base/diag/src/data/diag_block.hex   |  129 +
 libraries/base/diag/src/data/diag_block.mif   |  104 +
 .../base/diag/src/data/diag_cnt_2048x18.hex   | 2049 ++++++++++++++++
 .../base/diag/src/data/diag_cnt_2048x18.mif   | 2072 +++++++++++++++++
 .../base/diag/src/data/diag_sin_1024x18.hex   | 1025 ++++++++
 .../base/diag/src/data/diag_sin_1024x18.mif   | 1048 +++++++++
 .../base/diag/src/data/diag_sin_1024x18.txt   |   47 +
 .../base/diag/src/data/diag_sin_1024x8.hex    | 1025 ++++++++
 .../base/diag/src/data/diag_sin_1024x8.mif    | 1048 +++++++++
 .../base/diag/src/data/diag_sin_1024x8.txt    | 1024 ++++++++
 .../base/diag/src/data/diag_sin_2048x18.coe   | 2050 ++++++++++++++++
 .../base/diag/src/data/diag_sin_2048x18.hex   | 2049 ++++++++++++++++
 .../base/diag/src/data/diag_sin_2048x18.mif   | 2072 +++++++++++++++++
 .../base/diag/src/data/diag_sin_2048x18.txt   | 2048 ++++++++++++++++
 .../base/diag/src/data/matlab_sin_1024x8.txt  | 1024 ++++++++
 .../base/diag/src/data/matlab_sin_2048x18.txt | 2048 ++++++++++++++++
 .../base/diag/src/data/tcl_sin_1024x8.txt     | 1024 ++++++++
 .../base/diag/src/data/tcl_sin_1024x8.uns     | 1024 ++++++++
 .../base/diag/src/data/tcl_sin_2048x18.txt    | 2048 ++++++++++++++++
 .../base/diag/src/data/wg_to_unsigned.tcl     |   53 +
 libraries/base/diag/src/data/wg_waveform.m    |   30 +
 libraries/base/diag/src/data/wg_waveform.tcl  |   42 +
 71 files changed, 30731 insertions(+)
 create mode 100644 libraries/base/diag/src/data/bf_in_data.dat
 create mode 100644 libraries/base/diag/src/data/bf_in_data_0.dat
 create mode 100644 libraries/base/diag/src/data/bf_in_data_0.hex
 create mode 100644 libraries/base/diag/src/data/bf_in_data_0.mif
 create mode 100644 libraries/base/diag/src/data/bf_in_data_1.dat
 create mode 100644 libraries/base/diag/src/data/bf_in_data_1.hex
 create mode 100644 libraries/base/diag/src/data/bf_in_data_1.mif
 create mode 100644 libraries/base/diag/src/data/bf_in_data_10.dat
 create mode 100644 libraries/base/diag/src/data/bf_in_data_10.hex
 create mode 100644 libraries/base/diag/src/data/bf_in_data_10.mif
 create mode 100644 libraries/base/diag/src/data/bf_in_data_11.dat
 create mode 100644 libraries/base/diag/src/data/bf_in_data_11.hex
 create mode 100644 libraries/base/diag/src/data/bf_in_data_11.mif
 create mode 100644 libraries/base/diag/src/data/bf_in_data_12.dat
 create mode 100644 libraries/base/diag/src/data/bf_in_data_12.hex
 create mode 100644 libraries/base/diag/src/data/bf_in_data_12.mif
 create mode 100644 libraries/base/diag/src/data/bf_in_data_13.dat
 create mode 100644 libraries/base/diag/src/data/bf_in_data_13.hex
 create mode 100644 libraries/base/diag/src/data/bf_in_data_13.mif
 create mode 100644 libraries/base/diag/src/data/bf_in_data_14.dat
 create mode 100644 libraries/base/diag/src/data/bf_in_data_14.hex
 create mode 100644 libraries/base/diag/src/data/bf_in_data_14.mif
 create mode 100644 libraries/base/diag/src/data/bf_in_data_15.dat
 create mode 100644 libraries/base/diag/src/data/bf_in_data_15.hex
 create mode 100644 libraries/base/diag/src/data/bf_in_data_15.mif
 create mode 100644 libraries/base/diag/src/data/bf_in_data_2.dat
 create mode 100644 libraries/base/diag/src/data/bf_in_data_2.hex
 create mode 100644 libraries/base/diag/src/data/bf_in_data_2.mif
 create mode 100644 libraries/base/diag/src/data/bf_in_data_3.dat
 create mode 100644 libraries/base/diag/src/data/bf_in_data_3.hex
 create mode 100644 libraries/base/diag/src/data/bf_in_data_3.mif
 create mode 100644 libraries/base/diag/src/data/bf_in_data_4.dat
 create mode 100644 libraries/base/diag/src/data/bf_in_data_4.hex
 create mode 100644 libraries/base/diag/src/data/bf_in_data_4.mif
 create mode 100644 libraries/base/diag/src/data/bf_in_data_5.dat
 create mode 100644 libraries/base/diag/src/data/bf_in_data_5.hex
 create mode 100644 libraries/base/diag/src/data/bf_in_data_5.mif
 create mode 100644 libraries/base/diag/src/data/bf_in_data_6.dat
 create mode 100644 libraries/base/diag/src/data/bf_in_data_6.hex
 create mode 100644 libraries/base/diag/src/data/bf_in_data_6.mif
 create mode 100644 libraries/base/diag/src/data/bf_in_data_7.dat
 create mode 100644 libraries/base/diag/src/data/bf_in_data_7.hex
 create mode 100644 libraries/base/diag/src/data/bf_in_data_7.mif
 create mode 100644 libraries/base/diag/src/data/bf_in_data_8.dat
 create mode 100644 libraries/base/diag/src/data/bf_in_data_8.hex
 create mode 100644 libraries/base/diag/src/data/bf_in_data_8.mif
 create mode 100644 libraries/base/diag/src/data/bf_in_data_9.dat
 create mode 100644 libraries/base/diag/src/data/bf_in_data_9.hex
 create mode 100644 libraries/base/diag/src/data/bf_in_data_9.mif
 create mode 100644 libraries/base/diag/src/data/diag_block.hex
 create mode 100644 libraries/base/diag/src/data/diag_block.mif
 create mode 100644 libraries/base/diag/src/data/diag_cnt_2048x18.hex
 create mode 100644 libraries/base/diag/src/data/diag_cnt_2048x18.mif
 create mode 100644 libraries/base/diag/src/data/diag_sin_1024x18.hex
 create mode 100644 libraries/base/diag/src/data/diag_sin_1024x18.mif
 create mode 100644 libraries/base/diag/src/data/diag_sin_1024x18.txt
 create mode 100644 libraries/base/diag/src/data/diag_sin_1024x8.hex
 create mode 100644 libraries/base/diag/src/data/diag_sin_1024x8.mif
 create mode 100644 libraries/base/diag/src/data/diag_sin_1024x8.txt
 create mode 100644 libraries/base/diag/src/data/diag_sin_2048x18.coe
 create mode 100644 libraries/base/diag/src/data/diag_sin_2048x18.hex
 create mode 100644 libraries/base/diag/src/data/diag_sin_2048x18.mif
 create mode 100644 libraries/base/diag/src/data/diag_sin_2048x18.txt
 create mode 100644 libraries/base/diag/src/data/matlab_sin_1024x8.txt
 create mode 100644 libraries/base/diag/src/data/matlab_sin_2048x18.txt
 create mode 100644 libraries/base/diag/src/data/tcl_sin_1024x8.txt
 create mode 100644 libraries/base/diag/src/data/tcl_sin_1024x8.uns
 create mode 100644 libraries/base/diag/src/data/tcl_sin_2048x18.txt
 create mode 100644 libraries/base/diag/src/data/wg_to_unsigned.tcl
 create mode 100644 libraries/base/diag/src/data/wg_waveform.m
 create mode 100644 libraries/base/diag/src/data/wg_waveform.tcl

diff --git a/libraries/base/diag/src/data/bf_in_data.dat b/libraries/base/diag/src/data/bf_in_data.dat
new file mode 100644
index 0000000000..4b0432bffd
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data.dat
@@ -0,0 +1,384 @@
+0       0        1        0        2       0        3        0        4       0        5        0        6       0        7        0        8       0        9        0       10       0       11        0       12       0       13        0       14       0       15        0       16       0       17        0       18       0       19        0       20       0       21        0       22       0       23        0       24       0       25        0       26       0       27        0       28       0       29        0       30       0       31        0       32       0       33        0       34       0       35        0       36       0       37        0       38       0       39        0       40       0       41        0       42       0       43        0       44       0       45        0       46       0       47        0       48       0       49        0       50       0       51        0       52       0       53        0       54       0       55        0       56       0       57        0       58       0       59        0       60       0       61        0       62       0       63        0    
+0       1        1        1        2       1        3        1        4       1        5        1        6       1        7        1        8       1        9        1       10       1       11        1       12       1       13        1       14       1       15        1       16       1       17        1       18       1       19        1       20       1       21        1       22       1       23        1       24       1       25        1       26       1       27        1       28       1       29        1       30       1       31        1       32       1       33        1       34       1       35        1       36       1       37        1       38       1       39        1       40       1       41        1       42       1       43        1       44       1       45        1       46       1       47        1       48       1       49        1       50       1       51        1       52       1       53        1       54       1       55        1       56       1       57        1       58       1       59        1       60       1       61        1       62       1       63        1
+0       2        1        2        2       2        3        2        4       2        5        2        6       2        7        2        8       2        9        2       10       2       11        2       12       2       13        2       14       2       15        2       16       2       17        2       18       2       19        2       20       2       21        2       22       2       23        2       24       2       25        2       26       2       27        2       28       2       29        2       30       2       31        2       32       2       33        2       34       2       35        2       36       2       37        2       38       2       39        2       40       2       41        2       42       2       43        2       44       2       45        2       46       2       47        2       48       2       49        2       50       2       51        2       52       2       53        2       54       2       55        2       56       2       57        2       58       2       59        2       60       2       61        2       62       2       63        2
+0       3        1        3        2       3        3        3        4       3        5        3        6       3        7        3        8       3        9        3       10       3       11        3       12       3       13        3       14       3       15        3       16       3       17        3       18       3       19        3       20       3       21        3       22       3       23        3       24       3       25        3       26       3       27        3       28       3       29        3       30       3       31        3       32       3       33        3       34       3       35        3       36       3       37        3       38       3       39        3       40       3       41        3       42       3       43        3       44       3       45        3       46       3       47        3       48       3       49        3       50       3       51        3       52       3       53        3       54       3       55        3       56       3       57        3       58       3       59        3       60       3       61        3       62       3       63        3
+0       4        1        4        2       4        3        4        4       4        5        4        6       4        7        4        8       4        9        4       10       4       11        4       12       4       13        4       14       4       15        4       16       4       17        4       18       4       19        4       20       4       21        4       22       4       23        4       24       4       25        4       26       4       27        4       28       4       29        4       30       4       31        4       32       4       33        4       34       4       35        4       36       4       37        4       38       4       39        4       40       4       41        4       42       4       43        4       44       4       45        4       46       4       47        4       48       4       49        4       50       4       51        4       52       4       53        4       54       4       55        4       56       4       57        4       58       4       59        4       60       4       61        4       62       4       63        4
+0       5        1        5        2       5        3        5        4       5        5        5        6       5        7        5        8       5        9        5       10       5       11        5       12       5       13        5       14       5       15        5       16       5       17        5       18       5       19        5       20       5       21        5       22       5       23        5       24       5       25        5       26       5       27        5       28       5       29        5       30       5       31        5       32       5       33        5       34       5       35        5       36       5       37        5       38       5       39        5       40       5       41        5       42       5       43        5       44       5       45        5       46       5       47        5       48       5       49        5       50       5       51        5       52       5       53        5       54       5       55        5       56       5       57        5       58       5       59        5       60       5       61        5       62       5       63        5
+0       6        1        6        2       6        3        6        4       6        5        6        6       6        7        6        8       6        9        6       10       6       11        6       12       6       13        6       14       6       15        6       16       6       17        6       18       6       19        6       20       6       21        6       22       6       23        6       24       6       25        6       26       6       27        6       28       6       29        6       30       6       31        6       32       6       33        6       34       6       35        6       36       6       37        6       38       6       39        6       40       6       41        6       42       6       43        6       44       6       45        6       46       6       47        6       48       6       49        6       50       6       51        6       52       6       53        6       54       6       55        6       56       6       57        6       58       6       59        6       60       6       61        6       62       6       63        6
+0       7        1        7        2       7        3        7        4       7        5        7        6       7        7        7        8       7        9        7       10       7       11        7       12       7       13        7       14       7       15        7       16       7       17        7       18       7       19        7       20       7       21        7       22       7       23        7       24       7       25        7       26       7       27        7       28       7       29        7       30       7       31        7       32       7       33        7       34       7       35        7       36       7       37        7       38       7       39        7       40       7       41        7       42       7       43        7       44       7       45        7       46       7       47        7       48       7       49        7       50       7       51        7       52       7       53        7       54       7       55        7       56       7       57        7       58       7       59        7       60       7       61        7       62       7       63        7
+0       8        1        8        2       8        3        8        4       8        5        8        6       8        7        8        8       8        9        8       10       8       11        8       12       8       13        8       14       8       15        8       16       8       17        8       18       8       19        8       20       8       21        8       22       8       23        8       24       8       25        8       26       8       27        8       28       8       29        8       30       8       31        8       32       8       33        8       34       8       35        8       36       8       37        8       38       8       39        8       40       8       41        8       42       8       43        8       44       8       45        8       46       8       47        8       48       8       49        8       50       8       51        8       52       8       53        8       54       8       55        8       56       8       57        8       58       8       59        8       60       8       61        8       62       8       63        8
+0       9        1        9        2       9        3        9        4       9        5        9        6       9        7        9        8       9        9        9       10       9       11        9       12       9       13        9       14       9       15        9       16       9       17        9       18       9       19        9       20       9       21        9       22       9       23        9       24       9       25        9       26       9       27        9       28       9       29        9       30       9       31        9       32       9       33        9       34       9       35        9       36       9       37        9       38       9       39        9       40       9       41        9       42       9       43        9       44       9       45        9       46       9       47        9       48       9       49        9       50       9       51        9       52       9       53        9       54       9       55        9       56       9       57        9       58       9       59        9       60       9       61        9       62       9       63        9
+0      10        1       10        2      10        3       10        4      10        5       10        6      10        7       10        8      10        9       10       10      10       11       10       12      10       13       10       14      10       15       10       16      10       17       10       18      10       19       10       20      10       21       10       22      10       23       10       24      10       25       10       26      10       27       10       28      10       29       10       30      10       31       10       32      10       33       10       34      10       35       10       36      10       37       10       38      10       39       10       40      10       41       10       42      10       43       10       44      10       45       10       46      10       47       10       48      10       49       10       50      10       51       10       52      10       53       10       54      10       55       10       56      10       57       10       58      10       59       10       60      10       61       10       62      10       63       10
+0      11        1       11        2      11        3       11        4      11        5       11        6      11        7       11        8      11        9       11       10      11       11       11       12      11       13       11       14      11       15       11       16      11       17       11       18      11       19       11       20      11       21       11       22      11       23       11       24      11       25       11       26      11       27       11       28      11       29       11       30      11       31       11       32      11       33       11       34      11       35       11       36      11       37       11       38      11       39       11       40      11       41       11       42      11       43       11       44      11       45       11       46      11       47       11       48      11       49       11       50      11       51       11       52      11       53       11       54      11       55       11       56      11       57       11       58      11       59       11       60      11       61       11       62      11       63       11
+0      12        1       12        2      12        3       12        4      12        5       12        6      12        7       12        8      12        9       12       10      12       11       12       12      12       13       12       14      12       15       12       16      12       17       12       18      12       19       12       20      12       21       12       22      12       23       12       24      12       25       12       26      12       27       12       28      12       29       12       30      12       31       12       32      12       33       12       34      12       35       12       36      12       37       12       38      12       39       12       40      12       41       12       42      12       43       12       44      12       45       12       46      12       47       12       48      12       49       12       50      12       51       12       52      12       53       12       54      12       55       12       56      12       57       12       58      12       59       12       60      12       61       12       62      12       63       12
+0      13        1       13        2      13        3       13        4      13        5       13        6      13        7       13        8      13        9       13       10      13       11       13       12      13       13       13       14      13       15       13       16      13       17       13       18      13       19       13       20      13       21       13       22      13       23       13       24      13       25       13       26      13       27       13       28      13       29       13       30      13       31       13       32      13       33       13       34      13       35       13       36      13       37       13       38      13       39       13       40      13       41       13       42      13       43       13       44      13       45       13       46      13       47       13       48      13       49       13       50      13       51       13       52      13       53       13       54      13       55       13       56      13       57       13       58      13       59       13       60      13       61       13       62      13       63       13
+0      14        1       14        2      14        3       14        4      14        5       14        6      14        7       14        8      14        9       14       10      14       11       14       12      14       13       14       14      14       15       14       16      14       17       14       18      14       19       14       20      14       21       14       22      14       23       14       24      14       25       14       26      14       27       14       28      14       29       14       30      14       31       14       32      14       33       14       34      14       35       14       36      14       37       14       38      14       39       14       40      14       41       14       42      14       43       14       44      14       45       14       46      14       47       14       48      14       49       14       50      14       51       14       52      14       53       14       54      14       55       14       56      14       57       14       58      14       59       14       60      14       61       14       62      14       63       14
+0      15        1       15        2      15        3       15        4      15        5       15        6      15        7       15        8      15        9       15       10      15       11       15       12      15       13       15       14      15       15       15       16      15       17       15       18      15       19       15       20      15       21       15       22      15       23       15       24      15       25       15       26      15       27       15       28      15       29       15       30      15       31       15       32      15       33       15       34      15       35       15       36      15       37       15       38      15       39       15       40      15       41       15       42      15       43       15       44      15       45       15       46      15       47       15       48      15       49       15       50      15       51       15       52      15       53       15       54      15       55       15       56      15       57       15       58      15       59       15       60      15       61       15       62      15       63       15
+0      16        1       16        2      16        3       16        4      16        5       16        6      16        7       16        8      16        9       16       10      16       11       16       12      16       13       16       14      16       15       16       16      16       17       16       18      16       19       16       20      16       21       16       22      16       23       16       24      16       25       16       26      16       27       16       28      16       29       16       30      16       31       16       32      16       33       16       34      16       35       16       36      16       37       16       38      16       39       16       40      16       41       16       42      16       43       16       44      16       45       16       46      16       47       16       48      16       49       16       50      16       51       16       52      16       53       16       54      16       55       16       56      16       57       16       58      16       59       16       60      16       61       16       62      16       63       16
+0      17        1       17        2      17        3       17        4      17        5       17        6      17        7       17        8      17        9       17       10      17       11       17       12      17       13       17       14      17       15       17       16      17       17       17       18      17       19       17       20      17       21       17       22      17       23       17       24      17       25       17       26      17       27       17       28      17       29       17       30      17       31       17       32      17       33       17       34      17       35       17       36      17       37       17       38      17       39       17       40      17       41       17       42      17       43       17       44      17       45       17       46      17       47       17       48      17       49       17       50      17       51       17       52      17       53       17       54      17       55       17       56      17       57       17       58      17       59       17       60      17       61       17       62      17       63       17
+0      18        1       18        2      18        3       18        4      18        5       18        6      18        7       18        8      18        9       18       10      18       11       18       12      18       13       18       14      18       15       18       16      18       17       18       18      18       19       18       20      18       21       18       22      18       23       18       24      18       25       18       26      18       27       18       28      18       29       18       30      18       31       18       32      18       33       18       34      18       35       18       36      18       37       18       38      18       39       18       40      18       41       18       42      18       43       18       44      18       45       18       46      18       47       18       48      18       49       18       50      18       51       18       52      18       53       18       54      18       55       18       56      18       57       18       58      18       59       18       60      18       61       18       62      18       63       18
+0      19        1       19        2      19        3       19        4      19        5       19        6      19        7       19        8      19        9       19       10      19       11       19       12      19       13       19       14      19       15       19       16      19       17       19       18      19       19       19       20      19       21       19       22      19       23       19       24      19       25       19       26      19       27       19       28      19       29       19       30      19       31       19       32      19       33       19       34      19       35       19       36      19       37       19       38      19       39       19       40      19       41       19       42      19       43       19       44      19       45       19       46      19       47       19       48      19       49       19       50      19       51       19       52      19       53       19       54      19       55       19       56      19       57       19       58      19       59       19       60      19       61       19       62      19       63       19
+0      20        1       20        2      20        3       20        4      20        5       20        6      20        7       20        8      20        9       20       10      20       11       20       12      20       13       20       14      20       15       20       16      20       17       20       18      20       19       20       20      20       21       20       22      20       23       20       24      20       25       20       26      20       27       20       28      20       29       20       30      20       31       20       32      20       33       20       34      20       35       20       36      20       37       20       38      20       39       20       40      20       41       20       42      20       43       20       44      20       45       20       46      20       47       20       48      20       49       20       50      20       51       20       52      20       53       20       54      20       55       20       56      20       57       20       58      20       59       20       60      20       61       20       62      20       63       20
+0      21        1       21        2      21        3       21        4      21        5       21        6      21        7       21        8      21        9       21       10      21       11       21       12      21       13       21       14      21       15       21       16      21       17       21       18      21       19       21       20      21       21       21       22      21       23       21       24      21       25       21       26      21       27       21       28      21       29       21       30      21       31       21       32      21       33       21       34      21       35       21       36      21       37       21       38      21       39       21       40      21       41       21       42      21       43       21       44      21       45       21       46      21       47       21       48      21       49       21       50      21       51       21       52      21       53       21       54      21       55       21       56      21       57       21       58      21       59       21       60      21       61       21       62      21       63       21
+0      22        1       22        2      22        3       22        4      22        5       22        6      22        7       22        8      22        9       22       10      22       11       22       12      22       13       22       14      22       15       22       16      22       17       22       18      22       19       22       20      22       21       22       22      22       23       22       24      22       25       22       26      22       27       22       28      22       29       22       30      22       31       22       32      22       33       22       34      22       35       22       36      22       37       22       38      22       39       22       40      22       41       22       42      22       43       22       44      22       45       22       46      22       47       22       48      22       49       22       50      22       51       22       52      22       53       22       54      22       55       22       56      22       57       22       58      22       59       22       60      22       61       22       62      22       63       22
+0      23        1       23        2      23        3       23        4      23        5       23        6      23        7       23        8      23        9       23       10      23       11       23       12      23       13       23       14      23       15       23       16      23       17       23       18      23       19       23       20      23       21       23       22      23       23       23       24      23       25       23       26      23       27       23       28      23       29       23       30      23       31       23       32      23       33       23       34      23       35       23       36      23       37       23       38      23       39       23       40      23       41       23       42      23       43       23       44      23       45       23       46      23       47       23       48      23       49       23       50      23       51       23       52      23       53       23       54      23       55       23       56      23       57       23       58      23       59       23       60      23       61       23       62      23       63       23
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/libraries/base/diag/src/data/bf_in_data_0.dat b/libraries/base/diag/src/data/bf_in_data_0.dat
new file mode 100644
index 0000000000..7e082200a8
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_0.dat
@@ -0,0 +1,96 @@
+0   0
+0   1
+0   2
+0   3
+0   4
+0   5
+0   6
+0   7
+0   8
+0   9
+0   10
+0   11
+0   12
+0   13
+0   14
+0   15
+0   16
+0   17
+0   18
+0   19
+0   20
+0   21
+0   22
+0   23
+1   0
+1   1
+1   2
+1   3
+1   4
+1   5
+1   6
+1   7
+1   8
+1   9
+1   10
+1   11
+1   12
+1   13
+1   14
+1   15
+1   16
+1   17
+1   18
+1   19
+1   20
+1   21
+1   22
+1   23
+2   0
+2   1
+2   2
+2   3
+2   4
+2   5
+2   6
+2   7
+2   8
+2   9
+2   10
+2   11
+2   12
+2   13
+2   14
+2   15
+2   16
+2   17
+2   18
+2   19
+2   20
+2   21
+2   22
+2   23
+3   0
+3   1
+3   2
+3   3
+3   4
+3   5
+3   6
+3   7
+3   8
+3   9
+3   10
+3   11
+3   12
+3   13
+3   14
+3   15
+3   16
+3   17
+3   18
+3   19
+3   20
+3   21
+3   22
+3   23
diff --git a/libraries/base/diag/src/data/bf_in_data_0.hex b/libraries/base/diag/src/data/bf_in_data_0.hex
new file mode 100644
index 0000000000..5dd6f580e8
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_0.hex
@@ -0,0 +1,129 @@
+:0400000000000000FC
+:0400010000010000FA
+:0400020000020000F8
+:0400030000030000F6
+:0400040000040000F4
+:0400050000050000F2
+:0400060000060000F0
+:0400070000070000EE
+:0400080000080000EC
+:0400090000090000EA
+:04000A00000A0000E8
+:04000B00000B0000E6
+:04000C00000C0000E4
+:04000D00000D0000E2
+:04000E00000E0000E0
+:04000F00000F0000DE
+:0400100000100000DC
+:0400110000110000DA
+:0400120000120000D8
+:0400130000130000D6
+:0400140000140000D4
+:0400150000150000D2
+:0400160000160000D0
+:0400170000170000CE
+:0400180000000001E3
+:0400190000010001E1
+:04001A0000020001DF
+:04001B0000030001DD
+:04001C0000040001DB
+:04001D0000050001D9
+:04001E0000060001D7
+:04001F0000070001D5
+:0400200000080001D3
+:0400210000090001D1
+:04002200000A0001CF
+:04002300000B0001CD
+:04002400000C0001CB
+:04002500000D0001C9
+:04002600000E0001C7
+:04002700000F0001C5
+:0400280000100001C3
+:0400290000110001C1
+:04002A0000120001BF
+:04002B0000130001BD
+:04002C0000140001BB
+:04002D0000150001B9
+:04002E0000160001B7
+:04002F0000170001B5
+:0400300000000002CA
+:0400310000010002C8
+:0400320000020002C6
+:0400330000030002C4
+:0400340000040002C2
+:0400350000050002C0
+:0400360000060002BE
+:0400370000070002BC
+:0400380000080002BA
+:0400390000090002B8
+:04003A00000A0002B6
+:04003B00000B0002B4
+:04003C00000C0002B2
+:04003D00000D0002B0
+:04003E00000E0002AE
+:04003F00000F0002AC
+:0400400000100002AA
+:0400410000110002A8
+:0400420000120002A6
+:0400430000130002A4
+:0400440000140002A2
+:0400450000150002A0
+:04004600001600029E
+:04004700001700029C
+:0400480000000003B1
+:0400490000010003AF
+:04004A0000020003AD
+:04004B0000030003AB
+:04004C0000040003A9
+:04004D0000050003A7
+:04004E0000060003A5
+:04004F0000070003A3
+:0400500000080003A1
+:04005100000900039F
+:04005200000A00039D
+:04005300000B00039B
+:04005400000C000399
+:04005500000D000397
+:04005600000E000395
+:04005700000F000393
+:040058000010000391
+:04005900001100038F
+:04005A00001200038D
+:04005B00001300038B
+:04005C000014000389
+:04005D000015000387
+:04005E000016000385
+:04005F000017000383
+:04006000000000009C
+:04006100000000009B
+:04006200000000009A
+:040063000000000099
+:040064000000000098
+:040065000000000097
+:040066000000000096
+:040067000000000095
+:040068000000000094
+:040069000000000093
+:04006A000000000092
+:04006B000000000091
+:04006C000000000090
+:04006D00000000008F
+:04006E00000000008E
+:04006F00000000008D
+:04007000000000008C
+:04007100000000008B
+:04007200000000008A
+:040073000000000089
+:040074000000000088
+:040075000000000087
+:040076000000000086
+:040077000000000085
+:040078000000000084
+:040079000000000083
+:04007A000000000082
+:04007B000000000081
+:04007C000000000080
+:04007D00000000007F
+:04007E00000000007E
+:04007F00000000007D
+:00000001FF
diff --git a/libraries/base/diag/src/data/bf_in_data_0.mif b/libraries/base/diag/src/data/bf_in_data_0.mif
new file mode 100644
index 0000000000..18557fae1b
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_0.mif
@@ -0,0 +1,104 @@
+WIDTH=32;
+DEPTH=128;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+    0  :              0;
+    1  :          10000;
+    2  :          20000;
+    3  :          30000;
+    4  :          40000;
+    5  :          50000;
+    6  :          60000;
+    7  :          70000;
+    8  :          80000;
+    9  :          90000;
+    a  :          a0000;
+    b  :          b0000;
+    c  :          c0000;
+    d  :          d0000;
+    e  :          e0000;
+    f  :          f0000;
+   10  :         100000;
+   11  :         110000;
+   12  :         120000;
+   13  :         130000;
+   14  :         140000;
+   15  :         150000;
+   16  :         160000;
+   17  :         170000;
+   18  :              1;
+   19  :          10001;
+   1a  :          20001;
+   1b  :          30001;
+   1c  :          40001;
+   1d  :          50001;
+   1e  :          60001;
+   1f  :          70001;
+   20  :          80001;
+   21  :          90001;
+   22  :          a0001;
+   23  :          b0001;
+   24  :          c0001;
+   25  :          d0001;
+   26  :          e0001;
+   27  :          f0001;
+   28  :         100001;
+   29  :         110001;
+   2a  :         120001;
+   2b  :         130001;
+   2c  :         140001;
+   2d  :         150001;
+   2e  :         160001;
+   2f  :         170001;
+   30  :              2;
+   31  :          10002;
+   32  :          20002;
+   33  :          30002;
+   34  :          40002;
+   35  :          50002;
+   36  :          60002;
+   37  :          70002;
+   38  :          80002;
+   39  :          90002;
+   3a  :          a0002;
+   3b  :          b0002;
+   3c  :          c0002;
+   3d  :          d0002;
+   3e  :          e0002;
+   3f  :          f0002;
+   40  :         100002;
+   41  :         110002;
+   42  :         120002;
+   43  :         130002;
+   44  :         140002;
+   45  :         150002;
+   46  :         160002;
+   47  :         170002;
+   48  :              3;
+   49  :          10003;
+   4a  :          20003;
+   4b  :          30003;
+   4c  :          40003;
+   4d  :          50003;
+   4e  :          60003;
+   4f  :          70003;
+   50  :          80003;
+   51  :          90003;
+   52  :          a0003;
+   53  :          b0003;
+   54  :          c0003;
+   55  :          d0003;
+   56  :          e0003;
+   57  :          f0003;
+   58  :         100003;
+   59  :         110003;
+   5a  :         120003;
+   5b  :         130003;
+   5c  :         140003;
+   5d  :         150003;
+   5e  :         160003;
+   5f  :         170003;
+END;
diff --git a/libraries/base/diag/src/data/bf_in_data_1.dat b/libraries/base/diag/src/data/bf_in_data_1.dat
new file mode 100644
index 0000000000..1e9340dc6e
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_1.dat
@@ -0,0 +1,96 @@
+4   0
+4   1
+4   2
+4   3
+4   4
+4   5
+4   6
+4   7
+4   8
+4   9
+4   10
+4   11
+4   12
+4   13
+4   14
+4   15
+4   16
+4   17
+4   18
+4   19
+4   20
+4   21
+4   22
+4   23
+5   0
+5   1
+5   2
+5   3
+5   4
+5   5
+5   6
+5   7
+5   8
+5   9
+5   10
+5   11
+5   12
+5   13
+5   14
+5   15
+5   16
+5   17
+5   18
+5   19
+5   20
+5   21
+5   22
+5   23
+6   0
+6   1
+6   2
+6   3
+6   4
+6   5
+6   6
+6   7
+6   8
+6   9
+6   10
+6   11
+6   12
+6   13
+6   14
+6   15
+6   16
+6   17
+6   18
+6   19
+6   20
+6   21
+6   22
+6   23
+7   0
+7   1
+7   2
+7   3
+7   4
+7   5
+7   6
+7   7
+7   8
+7   9
+7   10
+7   11
+7   12
+7   13
+7   14
+7   15
+7   16
+7   17
+7   18
+7   19
+7   20
+7   21
+7   22
+7   23
diff --git a/libraries/base/diag/src/data/bf_in_data_1.hex b/libraries/base/diag/src/data/bf_in_data_1.hex
new file mode 100644
index 0000000000..2625023d61
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_1.hex
@@ -0,0 +1,129 @@
+:0400000000000004F8
+:0400010000010004F6
+:0400020000020004F4
+:0400030000030004F2
+:0400040000040004F0
+:0400050000050004EE
+:0400060000060004EC
+:0400070000070004EA
+:0400080000080004E8
+:0400090000090004E6
+:04000A00000A0004E4
+:04000B00000B0004E2
+:04000C00000C0004E0
+:04000D00000D0004DE
+:04000E00000E0004DC
+:04000F00000F0004DA
+:0400100000100004D8
+:0400110000110004D6
+:0400120000120004D4
+:0400130000130004D2
+:0400140000140004D0
+:0400150000150004CE
+:0400160000160004CC
+:0400170000170004CA
+:0400180000000005DF
+:0400190000010005DD
+:04001A0000020005DB
+:04001B0000030005D9
+:04001C0000040005D7
+:04001D0000050005D5
+:04001E0000060005D3
+:04001F0000070005D1
+:0400200000080005CF
+:0400210000090005CD
+:04002200000A0005CB
+:04002300000B0005C9
+:04002400000C0005C7
+:04002500000D0005C5
+:04002600000E0005C3
+:04002700000F0005C1
+:0400280000100005BF
+:0400290000110005BD
+:04002A0000120005BB
+:04002B0000130005B9
+:04002C0000140005B7
+:04002D0000150005B5
+:04002E0000160005B3
+:04002F0000170005B1
+:0400300000000006C6
+:0400310000010006C4
+:0400320000020006C2
+:0400330000030006C0
+:0400340000040006BE
+:0400350000050006BC
+:0400360000060006BA
+:0400370000070006B8
+:0400380000080006B6
+:0400390000090006B4
+:04003A00000A0006B2
+:04003B00000B0006B0
+:04003C00000C0006AE
+:04003D00000D0006AC
+:04003E00000E0006AA
+:04003F00000F0006A8
+:0400400000100006A6
+:0400410000110006A4
+:0400420000120006A2
+:0400430000130006A0
+:04004400001400069E
+:04004500001500069C
+:04004600001600069A
+:040047000017000698
+:0400480000000007AD
+:0400490000010007AB
+:04004A0000020007A9
+:04004B0000030007A7
+:04004C0000040007A5
+:04004D0000050007A3
+:04004E0000060007A1
+:04004F00000700079F
+:04005000000800079D
+:04005100000900079B
+:04005200000A000799
+:04005300000B000797
+:04005400000C000795
+:04005500000D000793
+:04005600000E000791
+:04005700000F00078F
+:04005800001000078D
+:04005900001100078B
+:04005A000012000789
+:04005B000013000787
+:04005C000014000785
+:04005D000015000783
+:04005E000016000781
+:04005F00001700077F
+:04006000000000009C
+:04006100000000009B
+:04006200000000009A
+:040063000000000099
+:040064000000000098
+:040065000000000097
+:040066000000000096
+:040067000000000095
+:040068000000000094
+:040069000000000093
+:04006A000000000092
+:04006B000000000091
+:04006C000000000090
+:04006D00000000008F
+:04006E00000000008E
+:04006F00000000008D
+:04007000000000008C
+:04007100000000008B
+:04007200000000008A
+:040073000000000089
+:040074000000000088
+:040075000000000087
+:040076000000000086
+:040077000000000085
+:040078000000000084
+:040079000000000083
+:04007A000000000082
+:04007B000000000081
+:04007C000000000080
+:04007D00000000007F
+:04007E00000000007E
+:04007F00000000007D
+:00000001FF
diff --git a/libraries/base/diag/src/data/bf_in_data_1.mif b/libraries/base/diag/src/data/bf_in_data_1.mif
new file mode 100644
index 0000000000..3d04a1093f
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_1.mif
@@ -0,0 +1,104 @@
+WIDTH=32;
+DEPTH=128;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+    0  :              4;
+    1  :          10004;
+    2  :          20004;
+    3  :          30004;
+    4  :          40004;
+    5  :          50004;
+    6  :          60004;
+    7  :          70004;
+    8  :          80004;
+    9  :          90004;
+    a  :          a0004;
+    b  :          b0004;
+    c  :          c0004;
+    d  :          d0004;
+    e  :          e0004;
+    f  :          f0004;
+   10  :         100004;
+   11  :         110004;
+   12  :         120004;
+   13  :         130004;
+   14  :         140004;
+   15  :         150004;
+   16  :         160004;
+   17  :         170004;
+   18  :              5;
+   19  :          10005;
+   1a  :          20005;
+   1b  :          30005;
+   1c  :          40005;
+   1d  :          50005;
+   1e  :          60005;
+   1f  :          70005;
+   20  :          80005;
+   21  :          90005;
+   22  :          a0005;
+   23  :          b0005;
+   24  :          c0005;
+   25  :          d0005;
+   26  :          e0005;
+   27  :          f0005;
+   28  :         100005;
+   29  :         110005;
+   2a  :         120005;
+   2b  :         130005;
+   2c  :         140005;
+   2d  :         150005;
+   2e  :         160005;
+   2f  :         170005;
+   30  :              6;
+   31  :          10006;
+   32  :          20006;
+   33  :          30006;
+   34  :          40006;
+   35  :          50006;
+   36  :          60006;
+   37  :          70006;
+   38  :          80006;
+   39  :          90006;
+   3a  :          a0006;
+   3b  :          b0006;
+   3c  :          c0006;
+   3d  :          d0006;
+   3e  :          e0006;
+   3f  :          f0006;
+   40  :         100006;
+   41  :         110006;
+   42  :         120006;
+   43  :         130006;
+   44  :         140006;
+   45  :         150006;
+   46  :         160006;
+   47  :         170006;
+   48  :              7;
+   49  :          10007;
+   4a  :          20007;
+   4b  :          30007;
+   4c  :          40007;
+   4d  :          50007;
+   4e  :          60007;
+   4f  :          70007;
+   50  :          80007;
+   51  :          90007;
+   52  :          a0007;
+   53  :          b0007;
+   54  :          c0007;
+   55  :          d0007;
+   56  :          e0007;
+   57  :          f0007;
+   58  :         100007;
+   59  :         110007;
+   5a  :         120007;
+   5b  :         130007;
+   5c  :         140007;
+   5d  :         150007;
+   5e  :         160007;
+   5f  :         170007;
+END;
diff --git a/libraries/base/diag/src/data/bf_in_data_10.dat b/libraries/base/diag/src/data/bf_in_data_10.dat
new file mode 100644
index 0000000000..fef05a7cdc
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_10.dat
@@ -0,0 +1,96 @@
+40   0
+40   1
+40   2
+40   3
+40   4
+40   5
+40   6
+40   7
+40   8
+40   9
+40   10
+40   11
+40   12
+40   13
+40   14
+40   15
+40   16
+40   17
+40   18
+40   19
+40   20
+40   21
+40   22
+40   23
+41   0
+41   1
+41   2
+41   3
+41   4
+41   5
+41   6
+41   7
+41   8
+41   9
+41   10
+41   11
+41   12
+41   13
+41   14
+41   15
+41   16
+41   17
+41   18
+41   19
+41   20
+41   21
+41   22
+41   23
+42   0
+42   1
+42   2
+42   3
+42   4
+42   5
+42   6
+42   7
+42   8
+42   9
+42   10
+42   11
+42   12
+42   13
+42   14
+42   15
+42   16
+42   17
+42   18
+42   19
+42   20
+42   21
+42   22
+42   23
+43   0
+43   1
+43   2
+43   3
+43   4
+43   5
+43   6
+43   7
+43   8
+43   9
+43   10
+43   11
+43   12
+43   13
+43   14
+43   15
+43   16
+43   17
+43   18
+43   19
+43   20
+43   21
+43   22
+43   23
diff --git a/libraries/base/diag/src/data/bf_in_data_10.hex b/libraries/base/diag/src/data/bf_in_data_10.hex
new file mode 100644
index 0000000000..c496fe65a5
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_10.hex
@@ -0,0 +1,129 @@
+:0400000000000028D4
+:0400010000010028D2
+:0400020000020028D0
+:0400030000030028CE
+:0400040000040028CC
+:0400050000050028CA
+:0400060000060028C8
+:0400070000070028C6
+:0400080000080028C4
+:0400090000090028C2
+:04000A00000A0028C0
+:04000B00000B0028BE
+:04000C00000C0028BC
+:04000D00000D0028BA
+:04000E00000E0028B8
+:04000F00000F0028B6
+:0400100000100028B4
+:0400110000110028B2
+:0400120000120028B0
+:0400130000130028AE
+:0400140000140028AC
+:0400150000150028AA
+:0400160000160028A8
+:0400170000170028A6
+:0400180000000029BB
+:0400190000010029B9
+:04001A0000020029B7
+:04001B0000030029B5
+:04001C0000040029B3
+:04001D0000050029B1
+:04001E0000060029AF
+:04001F0000070029AD
+:0400200000080029AB
+:0400210000090029A9
+:04002200000A0029A7
+:04002300000B0029A5
+:04002400000C0029A3
+:04002500000D0029A1
+:04002600000E00299F
+:04002700000F00299D
+:04002800001000299B
+:040029000011002999
+:04002A000012002997
+:04002B000013002995
+:04002C000014002993
+:04002D000015002991
+:04002E00001600298F
+:04002F00001700298D
+:040030000000002AA2
+:040031000001002AA0
+:040032000002002A9E
+:040033000003002A9C
+:040034000004002A9A
+:040035000005002A98
+:040036000006002A96
+:040037000007002A94
+:040038000008002A92
+:040039000009002A90
+:04003A00000A002A8E
+:04003B00000B002A8C
+:04003C00000C002A8A
+:04003D00000D002A88
+:04003E00000E002A86
+:04003F00000F002A84
+:040040000010002A82
+:040041000011002A80
+:040042000012002A7E
+:040043000013002A7C
+:040044000014002A7A
+:040045000015002A78
+:040046000016002A76
+:040047000017002A74
+:040048000000002B89
+:040049000001002B87
+:04004A000002002B85
+:04004B000003002B83
+:04004C000004002B81
+:04004D000005002B7F
+:04004E000006002B7D
+:04004F000007002B7B
+:040050000008002B79
+:040051000009002B77
+:04005200000A002B75
+:04005300000B002B73
+:04005400000C002B71
+:04005500000D002B6F
+:04005600000E002B6D
+:04005700000F002B6B
+:040058000010002B69
+:040059000011002B67
+:04005A000012002B65
+:04005B000013002B63
+:04005C000014002B61
+:04005D000015002B5F
+:04005E000016002B5D
+:04005F000017002B5B
+:04006000000000009C
+:04006100000000009B
+:04006200000000009A
+:040063000000000099
+:040064000000000098
+:040065000000000097
+:040066000000000096
+:040067000000000095
+:040068000000000094
+:040069000000000093
+:04006A000000000092
+:04006B000000000091
+:04006C000000000090
+:04006D00000000008F
+:04006E00000000008E
+:04006F00000000008D
+:04007000000000008C
+:04007100000000008B
+:04007200000000008A
+:040073000000000089
+:040074000000000088
+:040075000000000087
+:040076000000000086
+:040077000000000085
+:040078000000000084
+:040079000000000083
+:04007A000000000082
+:04007B000000000081
+:04007C000000000080
+:04007D00000000007F
+:04007E00000000007E
+:04007F00000000007D
+:00000001FF
diff --git a/libraries/base/diag/src/data/bf_in_data_10.mif b/libraries/base/diag/src/data/bf_in_data_10.mif
new file mode 100644
index 0000000000..cd0df6d372
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_10.mif
@@ -0,0 +1,104 @@
+WIDTH=32;
+DEPTH=128;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+    0  :             28;
+    1  :          10028;
+    2  :          20028;
+    3  :          30028;
+    4  :          40028;
+    5  :          50028;
+    6  :          60028;
+    7  :          70028;
+    8  :          80028;
+    9  :          90028;
+    a  :          a0028;
+    b  :          b0028;
+    c  :          c0028;
+    d  :          d0028;
+    e  :          e0028;
+    f  :          f0028;
+   10  :         100028;
+   11  :         110028;
+   12  :         120028;
+   13  :         130028;
+   14  :         140028;
+   15  :         150028;
+   16  :         160028;
+   17  :         170028;
+   18  :             29;
+   19  :          10029;
+   1a  :          20029;
+   1b  :          30029;
+   1c  :          40029;
+   1d  :          50029;
+   1e  :          60029;
+   1f  :          70029;
+   20  :          80029;
+   21  :          90029;
+   22  :          a0029;
+   23  :          b0029;
+   24  :          c0029;
+   25  :          d0029;
+   26  :          e0029;
+   27  :          f0029;
+   28  :         100029;
+   29  :         110029;
+   2a  :         120029;
+   2b  :         130029;
+   2c  :         140029;
+   2d  :         150029;
+   2e  :         160029;
+   2f  :         170029;
+   30  :             2a;
+   31  :          1002a;
+   32  :          2002a;
+   33  :          3002a;
+   34  :          4002a;
+   35  :          5002a;
+   36  :          6002a;
+   37  :          7002a;
+   38  :          8002a;
+   39  :          9002a;
+   3a  :          a002a;
+   3b  :          b002a;
+   3c  :          c002a;
+   3d  :          d002a;
+   3e  :          e002a;
+   3f  :          f002a;
+   40  :         10002a;
+   41  :         11002a;
+   42  :         12002a;
+   43  :         13002a;
+   44  :         14002a;
+   45  :         15002a;
+   46  :         16002a;
+   47  :         17002a;
+   48  :             2b;
+   49  :          1002b;
+   4a  :          2002b;
+   4b  :          3002b;
+   4c  :          4002b;
+   4d  :          5002b;
+   4e  :          6002b;
+   4f  :          7002b;
+   50  :          8002b;
+   51  :          9002b;
+   52  :          a002b;
+   53  :          b002b;
+   54  :          c002b;
+   55  :          d002b;
+   56  :          e002b;
+   57  :          f002b;
+   58  :         10002b;
+   59  :         11002b;
+   5a  :         12002b;
+   5b  :         13002b;
+   5c  :         14002b;
+   5d  :         15002b;
+   5e  :         16002b;
+   5f  :         17002b;
+END;
diff --git a/libraries/base/diag/src/data/bf_in_data_11.dat b/libraries/base/diag/src/data/bf_in_data_11.dat
new file mode 100644
index 0000000000..f9a8e16c65
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_11.dat
@@ -0,0 +1,96 @@
+44   0
+44   1
+44   2
+44   3
+44   4
+44   5
+44   6
+44   7
+44   8
+44   9
+44   10
+44   11
+44   12
+44   13
+44   14
+44   15
+44   16
+44   17
+44   18
+44   19
+44   20
+44   21
+44   22
+44   23
+45   0
+45   1
+45   2
+45   3
+45   4
+45   5
+45   6
+45   7
+45   8
+45   9
+45   10
+45   11
+45   12
+45   13
+45   14
+45   15
+45   16
+45   17
+45   18
+45   19
+45   20
+45   21
+45   22
+45   23
+46   0
+46   1
+46   2
+46   3
+46   4
+46   5
+46   6
+46   7
+46   8
+46   9
+46   10
+46   11
+46   12
+46   13
+46   14
+46   15
+46   16
+46   17
+46   18
+46   19
+46   20
+46   21
+46   22
+46   23
+47   0
+47   1
+47   2
+47   3
+47   4
+47   5
+47   6
+47   7
+47   8
+47   9
+47   10
+47   11
+47   12
+47   13
+47   14
+47   15
+47   16
+47   17
+47   18
+47   19
+47   20
+47   21
+47   22
+47   23
diff --git a/libraries/base/diag/src/data/bf_in_data_11.hex b/libraries/base/diag/src/data/bf_in_data_11.hex
new file mode 100644
index 0000000000..a86524a9f6
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_11.hex
@@ -0,0 +1,129 @@
+:040000000000002CD0
+:040001000001002CCE
+:040002000002002CCC
+:040003000003002CCA
+:040004000004002CC8
+:040005000005002CC6
+:040006000006002CC4
+:040007000007002CC2
+:040008000008002CC0
+:040009000009002CBE
+:04000A00000A002CBC
+:04000B00000B002CBA
+:04000C00000C002CB8
+:04000D00000D002CB6
+:04000E00000E002CB4
+:04000F00000F002CB2
+:040010000010002CB0
+:040011000011002CAE
+:040012000012002CAC
+:040013000013002CAA
+:040014000014002CA8
+:040015000015002CA6
+:040016000016002CA4
+:040017000017002CA2
+:040018000000002DB7
+:040019000001002DB5
+:04001A000002002DB3
+:04001B000003002DB1
+:04001C000004002DAF
+:04001D000005002DAD
+:04001E000006002DAB
+:04001F000007002DA9
+:040020000008002DA7
+:040021000009002DA5
+:04002200000A002DA3
+:04002300000B002DA1
+:04002400000C002D9F
+:04002500000D002D9D
+:04002600000E002D9B
+:04002700000F002D99
+:040028000010002D97
+:040029000011002D95
+:04002A000012002D93
+:04002B000013002D91
+:04002C000014002D8F
+:04002D000015002D8D
+:04002E000016002D8B
+:04002F000017002D89
+:040030000000002E9E
+:040031000001002E9C
+:040032000002002E9A
+:040033000003002E98
+:040034000004002E96
+:040035000005002E94
+:040036000006002E92
+:040037000007002E90
+:040038000008002E8E
+:040039000009002E8C
+:04003A00000A002E8A
+:04003B00000B002E88
+:04003C00000C002E86
+:04003D00000D002E84
+:04003E00000E002E82
+:04003F00000F002E80
+:040040000010002E7E
+:040041000011002E7C
+:040042000012002E7A
+:040043000013002E78
+:040044000014002E76
+:040045000015002E74
+:040046000016002E72
+:040047000017002E70
+:040048000000002F85
+:040049000001002F83
+:04004A000002002F81
+:04004B000003002F7F
+:04004C000004002F7D
+:04004D000005002F7B
+:04004E000006002F79
+:04004F000007002F77
+:040050000008002F75
+:040051000009002F73
+:04005200000A002F71
+:04005300000B002F6F
+:04005400000C002F6D
+:04005500000D002F6B
+:04005600000E002F69
+:04005700000F002F67
+:040058000010002F65
+:040059000011002F63
+:04005A000012002F61
+:04005B000013002F5F
+:04005C000014002F5D
+:04005D000015002F5B
+:04005E000016002F59
+:04005F000017002F57
+:04006000000000009C
+:04006100000000009B
+:04006200000000009A
+:040063000000000099
+:040064000000000098
+:040065000000000097
+:040066000000000096
+:040067000000000095
+:040068000000000094
+:040069000000000093
+:04006A000000000092
+:04006B000000000091
+:04006C000000000090
+:04006D00000000008F
+:04006E00000000008E
+:04006F00000000008D
+:04007000000000008C
+:04007100000000008B
+:04007200000000008A
+:040073000000000089
+:040074000000000088
+:040075000000000087
+:040076000000000086
+:040077000000000085
+:040078000000000084
+:040079000000000083
+:04007A000000000082
+:04007B000000000081
+:04007C000000000080
+:04007D00000000007F
+:04007E00000000007E
+:04007F00000000007D
+:00000001FF
diff --git a/libraries/base/diag/src/data/bf_in_data_11.mif b/libraries/base/diag/src/data/bf_in_data_11.mif
new file mode 100644
index 0000000000..4a41fd83f0
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_11.mif
@@ -0,0 +1,104 @@
+WIDTH=32;
+DEPTH=128;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+    0  :             2c;
+    1  :          1002c;
+    2  :          2002c;
+    3  :          3002c;
+    4  :          4002c;
+    5  :          5002c;
+    6  :          6002c;
+    7  :          7002c;
+    8  :          8002c;
+    9  :          9002c;
+    a  :          a002c;
+    b  :          b002c;
+    c  :          c002c;
+    d  :          d002c;
+    e  :          e002c;
+    f  :          f002c;
+   10  :         10002c;
+   11  :         11002c;
+   12  :         12002c;
+   13  :         13002c;
+   14  :         14002c;
+   15  :         15002c;
+   16  :         16002c;
+   17  :         17002c;
+   18  :             2d;
+   19  :          1002d;
+   1a  :          2002d;
+   1b  :          3002d;
+   1c  :          4002d;
+   1d  :          5002d;
+   1e  :          6002d;
+   1f  :          7002d;
+   20  :          8002d;
+   21  :          9002d;
+   22  :          a002d;
+   23  :          b002d;
+   24  :          c002d;
+   25  :          d002d;
+   26  :          e002d;
+   27  :          f002d;
+   28  :         10002d;
+   29  :         11002d;
+   2a  :         12002d;
+   2b  :         13002d;
+   2c  :         14002d;
+   2d  :         15002d;
+   2e  :         16002d;
+   2f  :         17002d;
+   30  :             2e;
+   31  :          1002e;
+   32  :          2002e;
+   33  :          3002e;
+   34  :          4002e;
+   35  :          5002e;
+   36  :          6002e;
+   37  :          7002e;
+   38  :          8002e;
+   39  :          9002e;
+   3a  :          a002e;
+   3b  :          b002e;
+   3c  :          c002e;
+   3d  :          d002e;
+   3e  :          e002e;
+   3f  :          f002e;
+   40  :         10002e;
+   41  :         11002e;
+   42  :         12002e;
+   43  :         13002e;
+   44  :         14002e;
+   45  :         15002e;
+   46  :         16002e;
+   47  :         17002e;
+   48  :             2f;
+   49  :          1002f;
+   4a  :          2002f;
+   4b  :          3002f;
+   4c  :          4002f;
+   4d  :          5002f;
+   4e  :          6002f;
+   4f  :          7002f;
+   50  :          8002f;
+   51  :          9002f;
+   52  :          a002f;
+   53  :          b002f;
+   54  :          c002f;
+   55  :          d002f;
+   56  :          e002f;
+   57  :          f002f;
+   58  :         10002f;
+   59  :         11002f;
+   5a  :         12002f;
+   5b  :         13002f;
+   5c  :         14002f;
+   5d  :         15002f;
+   5e  :         16002f;
+   5f  :         17002f;
+END;
diff --git a/libraries/base/diag/src/data/bf_in_data_12.dat b/libraries/base/diag/src/data/bf_in_data_12.dat
new file mode 100644
index 0000000000..3614153019
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_12.dat
@@ -0,0 +1,96 @@
+48   0
+48   1
+48   2
+48   3
+48   4
+48   5
+48   6
+48   7
+48   8
+48   9
+48   10
+48   11
+48   12
+48   13
+48   14
+48   15
+48   16
+48   17
+48   18
+48   19
+48   20
+48   21
+48   22
+48   23
+49   0
+49   1
+49   2
+49   3
+49   4
+49   5
+49   6
+49   7
+49   8
+49   9
+49   10
+49   11
+49   12
+49   13
+49   14
+49   15
+49   16
+49   17
+49   18
+49   19
+49   20
+49   21
+49   22
+49   23
+50   0
+50   1
+50   2
+50   3
+50   4
+50   5
+50   6
+50   7
+50   8
+50   9
+50   10
+50   11
+50   12
+50   13
+50   14
+50   15
+50   16
+50   17
+50   18
+50   19
+50   20
+50   21
+50   22
+50   23
+51   0
+51   1
+51   2
+51   3
+51   4
+51   5
+51   6
+51   7
+51   8
+51   9
+51   10
+51   11
+51   12
+51   13
+51   14
+51   15
+51   16
+51   17
+51   18
+51   19
+51   20
+51   21
+51   22
+51   23
diff --git a/libraries/base/diag/src/data/bf_in_data_12.hex b/libraries/base/diag/src/data/bf_in_data_12.hex
new file mode 100644
index 0000000000..d9525a4b67
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_12.hex
@@ -0,0 +1,129 @@
+:0400000000000030CC
+:0400010000010030CA
+:0400020000020030C8
+:0400030000030030C6
+:0400040000040030C4
+:0400050000050030C2
+:0400060000060030C0
+:0400070000070030BE
+:0400080000080030BC
+:0400090000090030BA
+:04000A00000A0030B8
+:04000B00000B0030B6
+:04000C00000C0030B4
+:04000D00000D0030B2
+:04000E00000E0030B0
+:04000F00000F0030AE
+:0400100000100030AC
+:0400110000110030AA
+:0400120000120030A8
+:0400130000130030A6
+:0400140000140030A4
+:0400150000150030A2
+:0400160000160030A0
+:04001700001700309E
+:0400180000000031B3
+:0400190000010031B1
+:04001A0000020031AF
+:04001B0000030031AD
+:04001C0000040031AB
+:04001D0000050031A9
+:04001E0000060031A7
+:04001F0000070031A5
+:0400200000080031A3
+:0400210000090031A1
+:04002200000A00319F
+:04002300000B00319D
+:04002400000C00319B
+:04002500000D003199
+:04002600000E003197
+:04002700000F003195
+:040028000010003193
+:040029000011003191
+:04002A00001200318F
+:04002B00001300318D
+:04002C00001400318B
+:04002D000015003189
+:04002E000016003187
+:04002F000017003185
+:04003000000000329A
+:040031000001003298
+:040032000002003296
+:040033000003003294
+:040034000004003292
+:040035000005003290
+:04003600000600328E
+:04003700000700328C
+:04003800000800328A
+:040039000009003288
+:04003A00000A003286
+:04003B00000B003284
+:04003C00000C003282
+:04003D00000D003280
+:04003E00000E00327E
+:04003F00000F00327C
+:04004000001000327A
+:040041000011003278
+:040042000012003276
+:040043000013003274
+:040044000014003272
+:040045000015003270
+:04004600001600326E
+:04004700001700326C
+:040048000000003381
+:04004900000100337F
+:04004A00000200337D
+:04004B00000300337B
+:04004C000004003379
+:04004D000005003377
+:04004E000006003375
+:04004F000007003373
+:040050000008003371
+:04005100000900336F
+:04005200000A00336D
+:04005300000B00336B
+:04005400000C003369
+:04005500000D003367
+:04005600000E003365
+:04005700000F003363
+:040058000010003361
+:04005900001100335F
+:04005A00001200335D
+:04005B00001300335B
+:04005C000014003359
+:04005D000015003357
+:04005E000016003355
+:04005F000017003353
+:04006000000000009C
+:04006100000000009B
+:04006200000000009A
+:040063000000000099
+:040064000000000098
+:040065000000000097
+:040066000000000096
+:040067000000000095
+:040068000000000094
+:040069000000000093
+:04006A000000000092
+:04006B000000000091
+:04006C000000000090
+:04006D00000000008F
+:04006E00000000008E
+:04006F00000000008D
+:04007000000000008C
+:04007100000000008B
+:04007200000000008A
+:040073000000000089
+:040074000000000088
+:040075000000000087
+:040076000000000086
+:040077000000000085
+:040078000000000084
+:040079000000000083
+:04007A000000000082
+:04007B000000000081
+:04007C000000000080
+:04007D00000000007F
+:04007E00000000007E
+:04007F00000000007D
+:00000001FF
diff --git a/libraries/base/diag/src/data/bf_in_data_12.mif b/libraries/base/diag/src/data/bf_in_data_12.mif
new file mode 100644
index 0000000000..9230ada2c0
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_12.mif
@@ -0,0 +1,104 @@
+WIDTH=32;
+DEPTH=128;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+    0  :             30;
+    1  :          10030;
+    2  :          20030;
+    3  :          30030;
+    4  :          40030;
+    5  :          50030;
+    6  :          60030;
+    7  :          70030;
+    8  :          80030;
+    9  :          90030;
+    a  :          a0030;
+    b  :          b0030;
+    c  :          c0030;
+    d  :          d0030;
+    e  :          e0030;
+    f  :          f0030;
+   10  :         100030;
+   11  :         110030;
+   12  :         120030;
+   13  :         130030;
+   14  :         140030;
+   15  :         150030;
+   16  :         160030;
+   17  :         170030;
+   18  :             31;
+   19  :          10031;
+   1a  :          20031;
+   1b  :          30031;
+   1c  :          40031;
+   1d  :          50031;
+   1e  :          60031;
+   1f  :          70031;
+   20  :          80031;
+   21  :          90031;
+   22  :          a0031;
+   23  :          b0031;
+   24  :          c0031;
+   25  :          d0031;
+   26  :          e0031;
+   27  :          f0031;
+   28  :         100031;
+   29  :         110031;
+   2a  :         120031;
+   2b  :         130031;
+   2c  :         140031;
+   2d  :         150031;
+   2e  :         160031;
+   2f  :         170031;
+   30  :             32;
+   31  :          10032;
+   32  :          20032;
+   33  :          30032;
+   34  :          40032;
+   35  :          50032;
+   36  :          60032;
+   37  :          70032;
+   38  :          80032;
+   39  :          90032;
+   3a  :          a0032;
+   3b  :          b0032;
+   3c  :          c0032;
+   3d  :          d0032;
+   3e  :          e0032;
+   3f  :          f0032;
+   40  :         100032;
+   41  :         110032;
+   42  :         120032;
+   43  :         130032;
+   44  :         140032;
+   45  :         150032;
+   46  :         160032;
+   47  :         170032;
+   48  :             33;
+   49  :          10033;
+   4a  :          20033;
+   4b  :          30033;
+   4c  :          40033;
+   4d  :          50033;
+   4e  :          60033;
+   4f  :          70033;
+   50  :          80033;
+   51  :          90033;
+   52  :          a0033;
+   53  :          b0033;
+   54  :          c0033;
+   55  :          d0033;
+   56  :          e0033;
+   57  :          f0033;
+   58  :         100033;
+   59  :         110033;
+   5a  :         120033;
+   5b  :         130033;
+   5c  :         140033;
+   5d  :         150033;
+   5e  :         160033;
+   5f  :         170033;
+END;
diff --git a/libraries/base/diag/src/data/bf_in_data_13.dat b/libraries/base/diag/src/data/bf_in_data_13.dat
new file mode 100644
index 0000000000..f604300aaa
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_13.dat
@@ -0,0 +1,96 @@
+52   0
+52   1
+52   2
+52   3
+52   4
+52   5
+52   6
+52   7
+52   8
+52   9
+52   10
+52   11
+52   12
+52   13
+52   14
+52   15
+52   16
+52   17
+52   18
+52   19
+52   20
+52   21
+52   22
+52   23
+53   0
+53   1
+53   2
+53   3
+53   4
+53   5
+53   6
+53   7
+53   8
+53   9
+53   10
+53   11
+53   12
+53   13
+53   14
+53   15
+53   16
+53   17
+53   18
+53   19
+53   20
+53   21
+53   22
+53   23
+54   0
+54   1
+54   2
+54   3
+54   4
+54   5
+54   6
+54   7
+54   8
+54   9
+54   10
+54   11
+54   12
+54   13
+54   14
+54   15
+54   16
+54   17
+54   18
+54   19
+54   20
+54   21
+54   22
+54   23
+55   0
+55   1
+55   2
+55   3
+55   4
+55   5
+55   6
+55   7
+55   8
+55   9
+55   10
+55   11
+55   12
+55   13
+55   14
+55   15
+55   16
+55   17
+55   18
+55   19
+55   20
+55   21
+55   22
+55   23
diff --git a/libraries/base/diag/src/data/bf_in_data_13.hex b/libraries/base/diag/src/data/bf_in_data_13.hex
new file mode 100644
index 0000000000..6427bfee36
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_13.hex
@@ -0,0 +1,129 @@
+:0400000000000034C8
+:0400010000010034C6
+:0400020000020034C4
+:0400030000030034C2
+:0400040000040034C0
+:0400050000050034BE
+:0400060000060034BC
+:0400070000070034BA
+:0400080000080034B8
+:0400090000090034B6
+:04000A00000A0034B4
+:04000B00000B0034B2
+:04000C00000C0034B0
+:04000D00000D0034AE
+:04000E00000E0034AC
+:04000F00000F0034AA
+:0400100000100034A8
+:0400110000110034A6
+:0400120000120034A4
+:0400130000130034A2
+:0400140000140034A0
+:04001500001500349E
+:04001600001600349C
+:04001700001700349A
+:0400180000000035AF
+:0400190000010035AD
+:04001A0000020035AB
+:04001B0000030035A9
+:04001C0000040035A7
+:04001D0000050035A5
+:04001E0000060035A3
+:04001F0000070035A1
+:04002000000800359F
+:04002100000900359D
+:04002200000A00359B
+:04002300000B003599
+:04002400000C003597
+:04002500000D003595
+:04002600000E003593
+:04002700000F003591
+:04002800001000358F
+:04002900001100358D
+:04002A00001200358B
+:04002B000013003589
+:04002C000014003587
+:04002D000015003585
+:04002E000016003583
+:04002F000017003581
+:040030000000003696
+:040031000001003694
+:040032000002003692
+:040033000003003690
+:04003400000400368E
+:04003500000500368C
+:04003600000600368A
+:040037000007003688
+:040038000008003686
+:040039000009003684
+:04003A00000A003682
+:04003B00000B003680
+:04003C00000C00367E
+:04003D00000D00367C
+:04003E00000E00367A
+:04003F00000F003678
+:040040000010003676
+:040041000011003674
+:040042000012003672
+:040043000013003670
+:04004400001400366E
+:04004500001500366C
+:04004600001600366A
+:040047000017003668
+:04004800000000377D
+:04004900000100377B
+:04004A000002003779
+:04004B000003003777
+:04004C000004003775
+:04004D000005003773
+:04004E000006003771
+:04004F00000700376F
+:04005000000800376D
+:04005100000900376B
+:04005200000A003769
+:04005300000B003767
+:04005400000C003765
+:04005500000D003763
+:04005600000E003761
+:04005700000F00375F
+:04005800001000375D
+:04005900001100375B
+:04005A000012003759
+:04005B000013003757
+:04005C000014003755
+:04005D000015003753
+:04005E000016003751
+:04005F00001700374F
+:04006000000000009C
+:04006100000000009B
+:04006200000000009A
+:040063000000000099
+:040064000000000098
+:040065000000000097
+:040066000000000096
+:040067000000000095
+:040068000000000094
+:040069000000000093
+:04006A000000000092
+:04006B000000000091
+:04006C000000000090
+:04006D00000000008F
+:04006E00000000008E
+:04006F00000000008D
+:04007000000000008C
+:04007100000000008B
+:04007200000000008A
+:040073000000000089
+:040074000000000088
+:040075000000000087
+:040076000000000086
+:040077000000000085
+:040078000000000084
+:040079000000000083
+:04007A000000000082
+:04007B000000000081
+:04007C000000000080
+:04007D00000000007F
+:04007E00000000007E
+:04007F00000000007D
+:00000001FF
diff --git a/libraries/base/diag/src/data/bf_in_data_13.mif b/libraries/base/diag/src/data/bf_in_data_13.mif
new file mode 100644
index 0000000000..71499c5115
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_13.mif
@@ -0,0 +1,104 @@
+WIDTH=32;
+DEPTH=128;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+    0  :             34;
+    1  :          10034;
+    2  :          20034;
+    3  :          30034;
+    4  :          40034;
+    5  :          50034;
+    6  :          60034;
+    7  :          70034;
+    8  :          80034;
+    9  :          90034;
+    a  :          a0034;
+    b  :          b0034;
+    c  :          c0034;
+    d  :          d0034;
+    e  :          e0034;
+    f  :          f0034;
+   10  :         100034;
+   11  :         110034;
+   12  :         120034;
+   13  :         130034;
+   14  :         140034;
+   15  :         150034;
+   16  :         160034;
+   17  :         170034;
+   18  :             35;
+   19  :          10035;
+   1a  :          20035;
+   1b  :          30035;
+   1c  :          40035;
+   1d  :          50035;
+   1e  :          60035;
+   1f  :          70035;
+   20  :          80035;
+   21  :          90035;
+   22  :          a0035;
+   23  :          b0035;
+   24  :          c0035;
+   25  :          d0035;
+   26  :          e0035;
+   27  :          f0035;
+   28  :         100035;
+   29  :         110035;
+   2a  :         120035;
+   2b  :         130035;
+   2c  :         140035;
+   2d  :         150035;
+   2e  :         160035;
+   2f  :         170035;
+   30  :             36;
+   31  :          10036;
+   32  :          20036;
+   33  :          30036;
+   34  :          40036;
+   35  :          50036;
+   36  :          60036;
+   37  :          70036;
+   38  :          80036;
+   39  :          90036;
+   3a  :          a0036;
+   3b  :          b0036;
+   3c  :          c0036;
+   3d  :          d0036;
+   3e  :          e0036;
+   3f  :          f0036;
+   40  :         100036;
+   41  :         110036;
+   42  :         120036;
+   43  :         130036;
+   44  :         140036;
+   45  :         150036;
+   46  :         160036;
+   47  :         170036;
+   48  :             37;
+   49  :          10037;
+   4a  :          20037;
+   4b  :          30037;
+   4c  :          40037;
+   4d  :          50037;
+   4e  :          60037;
+   4f  :          70037;
+   50  :          80037;
+   51  :          90037;
+   52  :          a0037;
+   53  :          b0037;
+   54  :          c0037;
+   55  :          d0037;
+   56  :          e0037;
+   57  :          f0037;
+   58  :         100037;
+   59  :         110037;
+   5a  :         120037;
+   5b  :         130037;
+   5c  :         140037;
+   5d  :         150037;
+   5e  :         160037;
+   5f  :         170037;
+END;
diff --git a/libraries/base/diag/src/data/bf_in_data_14.dat b/libraries/base/diag/src/data/bf_in_data_14.dat
new file mode 100644
index 0000000000..518308d78e
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_14.dat
@@ -0,0 +1,96 @@
+56   0
+56   1
+56   2
+56   3
+56   4
+56   5
+56   6
+56   7
+56   8
+56   9
+56   10
+56   11
+56   12
+56   13
+56   14
+56   15
+56   16
+56   17
+56   18
+56   19
+56   20
+56   21
+56   22
+56   23
+57   0
+57   1
+57   2
+57   3
+57   4
+57   5
+57   6
+57   7
+57   8
+57   9
+57   10
+57   11
+57   12
+57   13
+57   14
+57   15
+57   16
+57   17
+57   18
+57   19
+57   20
+57   21
+57   22
+57   23
+58   0
+58   1
+58   2
+58   3
+58   4
+58   5
+58   6
+58   7
+58   8
+58   9
+58   10
+58   11
+58   12
+58   13
+58   14
+58   15
+58   16
+58   17
+58   18
+58   19
+58   20
+58   21
+58   22
+58   23
+59   0
+59   1
+59   2
+59   3
+59   4
+59   5
+59   6
+59   7
+59   8
+59   9
+59   10
+59   11
+59   12
+59   13
+59   14
+59   15
+59   16
+59   17
+59   18
+59   19
+59   20
+59   21
+59   22
+59   23
diff --git a/libraries/base/diag/src/data/bf_in_data_14.hex b/libraries/base/diag/src/data/bf_in_data_14.hex
new file mode 100644
index 0000000000..8b16a5cd14
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_14.hex
@@ -0,0 +1,129 @@
+:0400000000000038C4
+:0400010000010038C2
+:0400020000020038C0
+:0400030000030038BE
+:0400040000040038BC
+:0400050000050038BA
+:0400060000060038B8
+:0400070000070038B6
+:0400080000080038B4
+:0400090000090038B2
+:04000A00000A0038B0
+:04000B00000B0038AE
+:04000C00000C0038AC
+:04000D00000D0038AA
+:04000E00000E0038A8
+:04000F00000F0038A6
+:0400100000100038A4
+:0400110000110038A2
+:0400120000120038A0
+:04001300001300389E
+:04001400001400389C
+:04001500001500389A
+:040016000016003898
+:040017000017003896
+:0400180000000039AB
+:0400190000010039A9
+:04001A0000020039A7
+:04001B0000030039A5
+:04001C0000040039A3
+:04001D0000050039A1
+:04001E00000600399F
+:04001F00000700399D
+:04002000000800399B
+:040021000009003999
+:04002200000A003997
+:04002300000B003995
+:04002400000C003993
+:04002500000D003991
+:04002600000E00398F
+:04002700000F00398D
+:04002800001000398B
+:040029000011003989
+:04002A000012003987
+:04002B000013003985
+:04002C000014003983
+:04002D000015003981
+:04002E00001600397F
+:04002F00001700397D
+:040030000000003A92
+:040031000001003A90
+:040032000002003A8E
+:040033000003003A8C
+:040034000004003A8A
+:040035000005003A88
+:040036000006003A86
+:040037000007003A84
+:040038000008003A82
+:040039000009003A80
+:04003A00000A003A7E
+:04003B00000B003A7C
+:04003C00000C003A7A
+:04003D00000D003A78
+:04003E00000E003A76
+:04003F00000F003A74
+:040040000010003A72
+:040041000011003A70
+:040042000012003A6E
+:040043000013003A6C
+:040044000014003A6A
+:040045000015003A68
+:040046000016003A66
+:040047000017003A64
+:040048000000003B79
+:040049000001003B77
+:04004A000002003B75
+:04004B000003003B73
+:04004C000004003B71
+:04004D000005003B6F
+:04004E000006003B6D
+:04004F000007003B6B
+:040050000008003B69
+:040051000009003B67
+:04005200000A003B65
+:04005300000B003B63
+:04005400000C003B61
+:04005500000D003B5F
+:04005600000E003B5D
+:04005700000F003B5B
+:040058000010003B59
+:040059000011003B57
+:04005A000012003B55
+:04005B000013003B53
+:04005C000014003B51
+:04005D000015003B4F
+:04005E000016003B4D
+:04005F000017003B4B
+:04006000000000009C
+:04006100000000009B
+:04006200000000009A
+:040063000000000099
+:040064000000000098
+:040065000000000097
+:040066000000000096
+:040067000000000095
+:040068000000000094
+:040069000000000093
+:04006A000000000092
+:04006B000000000091
+:04006C000000000090
+:04006D00000000008F
+:04006E00000000008E
+:04006F00000000008D
+:04007000000000008C
+:04007100000000008B
+:04007200000000008A
+:040073000000000089
+:040074000000000088
+:040075000000000087
+:040076000000000086
+:040077000000000085
+:040078000000000084
+:040079000000000083
+:04007A000000000082
+:04007B000000000081
+:04007C000000000080
+:04007D00000000007F
+:04007E00000000007E
+:04007F00000000007D
+:00000001FF
diff --git a/libraries/base/diag/src/data/bf_in_data_14.mif b/libraries/base/diag/src/data/bf_in_data_14.mif
new file mode 100644
index 0000000000..48ebed99c4
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_14.mif
@@ -0,0 +1,104 @@
+WIDTH=32;
+DEPTH=128;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+    0  :             38;
+    1  :          10038;
+    2  :          20038;
+    3  :          30038;
+    4  :          40038;
+    5  :          50038;
+    6  :          60038;
+    7  :          70038;
+    8  :          80038;
+    9  :          90038;
+    a  :          a0038;
+    b  :          b0038;
+    c  :          c0038;
+    d  :          d0038;
+    e  :          e0038;
+    f  :          f0038;
+   10  :         100038;
+   11  :         110038;
+   12  :         120038;
+   13  :         130038;
+   14  :         140038;
+   15  :         150038;
+   16  :         160038;
+   17  :         170038;
+   18  :             39;
+   19  :          10039;
+   1a  :          20039;
+   1b  :          30039;
+   1c  :          40039;
+   1d  :          50039;
+   1e  :          60039;
+   1f  :          70039;
+   20  :          80039;
+   21  :          90039;
+   22  :          a0039;
+   23  :          b0039;
+   24  :          c0039;
+   25  :          d0039;
+   26  :          e0039;
+   27  :          f0039;
+   28  :         100039;
+   29  :         110039;
+   2a  :         120039;
+   2b  :         130039;
+   2c  :         140039;
+   2d  :         150039;
+   2e  :         160039;
+   2f  :         170039;
+   30  :             3a;
+   31  :          1003a;
+   32  :          2003a;
+   33  :          3003a;
+   34  :          4003a;
+   35  :          5003a;
+   36  :          6003a;
+   37  :          7003a;
+   38  :          8003a;
+   39  :          9003a;
+   3a  :          a003a;
+   3b  :          b003a;
+   3c  :          c003a;
+   3d  :          d003a;
+   3e  :          e003a;
+   3f  :          f003a;
+   40  :         10003a;
+   41  :         11003a;
+   42  :         12003a;
+   43  :         13003a;
+   44  :         14003a;
+   45  :         15003a;
+   46  :         16003a;
+   47  :         17003a;
+   48  :             3b;
+   49  :          1003b;
+   4a  :          2003b;
+   4b  :          3003b;
+   4c  :          4003b;
+   4d  :          5003b;
+   4e  :          6003b;
+   4f  :          7003b;
+   50  :          8003b;
+   51  :          9003b;
+   52  :          a003b;
+   53  :          b003b;
+   54  :          c003b;
+   55  :          d003b;
+   56  :          e003b;
+   57  :          f003b;
+   58  :         10003b;
+   59  :         11003b;
+   5a  :         12003b;
+   5b  :         13003b;
+   5c  :         14003b;
+   5d  :         15003b;
+   5e  :         16003b;
+   5f  :         17003b;
+END;
diff --git a/libraries/base/diag/src/data/bf_in_data_15.dat b/libraries/base/diag/src/data/bf_in_data_15.dat
new file mode 100644
index 0000000000..bbeb6f27ce
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_15.dat
@@ -0,0 +1,96 @@
+60   0
+60   1
+60   2
+60   3
+60   4
+60   5
+60   6
+60   7
+60   8
+60   9
+60   10
+60   11
+60   12
+60   13
+60   14
+60   15
+60   16
+60   17
+60   18
+60   19
+60   20
+60   21
+60   22
+60   23
+61   0
+61   1
+61   2
+61   3
+61   4
+61   5
+61   6
+61   7
+61   8
+61   9
+61   10
+61   11
+61   12
+61   13
+61   14
+61   15
+61   16
+61   17
+61   18
+61   19
+61   20
+61   21
+61   22
+61   23
+62   0
+62   1
+62   2
+62   3
+62   4
+62   5
+62   6
+62   7
+62   8
+62   9
+62   10
+62   11
+62   12
+62   13
+62   14
+62   15
+62   16
+62   17
+62   18
+62   19
+62   20
+62   21
+62   22
+62   23
+63   0
+63   1
+63   2
+63   3
+63   4
+63   5
+63   6
+63   7
+63   8
+63   9
+63   10
+63   11
+63   12
+63   13
+63   14
+63   15
+63   16
+63   17
+63   18
+63   19
+63   20
+63   21
+63   22
+63   23
diff --git a/libraries/base/diag/src/data/bf_in_data_15.hex b/libraries/base/diag/src/data/bf_in_data_15.hex
new file mode 100644
index 0000000000..b6a13524cc
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_15.hex
@@ -0,0 +1,129 @@
+:040000000000003CC0
+:040001000001003CBE
+:040002000002003CBC
+:040003000003003CBA
+:040004000004003CB8
+:040005000005003CB6
+:040006000006003CB4
+:040007000007003CB2
+:040008000008003CB0
+:040009000009003CAE
+:04000A00000A003CAC
+:04000B00000B003CAA
+:04000C00000C003CA8
+:04000D00000D003CA6
+:04000E00000E003CA4
+:04000F00000F003CA2
+:040010000010003CA0
+:040011000011003C9E
+:040012000012003C9C
+:040013000013003C9A
+:040014000014003C98
+:040015000015003C96
+:040016000016003C94
+:040017000017003C92
+:040018000000003DA7
+:040019000001003DA5
+:04001A000002003DA3
+:04001B000003003DA1
+:04001C000004003D9F
+:04001D000005003D9D
+:04001E000006003D9B
+:04001F000007003D99
+:040020000008003D97
+:040021000009003D95
+:04002200000A003D93
+:04002300000B003D91
+:04002400000C003D8F
+:04002500000D003D8D
+:04002600000E003D8B
+:04002700000F003D89
+:040028000010003D87
+:040029000011003D85
+:04002A000012003D83
+:04002B000013003D81
+:04002C000014003D7F
+:04002D000015003D7D
+:04002E000016003D7B
+:04002F000017003D79
+:040030000000003E8E
+:040031000001003E8C
+:040032000002003E8A
+:040033000003003E88
+:040034000004003E86
+:040035000005003E84
+:040036000006003E82
+:040037000007003E80
+:040038000008003E7E
+:040039000009003E7C
+:04003A00000A003E7A
+:04003B00000B003E78
+:04003C00000C003E76
+:04003D00000D003E74
+:04003E00000E003E72
+:04003F00000F003E70
+:040040000010003E6E
+:040041000011003E6C
+:040042000012003E6A
+:040043000013003E68
+:040044000014003E66
+:040045000015003E64
+:040046000016003E62
+:040047000017003E60
+:040048000000003F75
+:040049000001003F73
+:04004A000002003F71
+:04004B000003003F6F
+:04004C000004003F6D
+:04004D000005003F6B
+:04004E000006003F69
+:04004F000007003F67
+:040050000008003F65
+:040051000009003F63
+:04005200000A003F61
+:04005300000B003F5F
+:04005400000C003F5D
+:04005500000D003F5B
+:04005600000E003F59
+:04005700000F003F57
+:040058000010003F55
+:040059000011003F53
+:04005A000012003F51
+:04005B000013003F4F
+:04005C000014003F4D
+:04005D000015003F4B
+:04005E000016003F49
+:04005F000017003F47
+:04006000000000009C
+:04006100000000009B
+:04006200000000009A
+:040063000000000099
+:040064000000000098
+:040065000000000097
+:040066000000000096
+:040067000000000095
+:040068000000000094
+:040069000000000093
+:04006A000000000092
+:04006B000000000091
+:04006C000000000090
+:04006D00000000008F
+:04006E00000000008E
+:04006F00000000008D
+:04007000000000008C
+:04007100000000008B
+:04007200000000008A
+:040073000000000089
+:040074000000000088
+:040075000000000087
+:040076000000000086
+:040077000000000085
+:040078000000000084
+:040079000000000083
+:04007A000000000082
+:04007B000000000081
+:04007C000000000080
+:04007D00000000007F
+:04007E00000000007E
+:04007F00000000007D
+:00000001FF
diff --git a/libraries/base/diag/src/data/bf_in_data_15.mif b/libraries/base/diag/src/data/bf_in_data_15.mif
new file mode 100644
index 0000000000..5efddcccc4
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_15.mif
@@ -0,0 +1,104 @@
+WIDTH=32;
+DEPTH=128;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+    0  :             3c;
+    1  :          1003c;
+    2  :          2003c;
+    3  :          3003c;
+    4  :          4003c;
+    5  :          5003c;
+    6  :          6003c;
+    7  :          7003c;
+    8  :          8003c;
+    9  :          9003c;
+    a  :          a003c;
+    b  :          b003c;
+    c  :          c003c;
+    d  :          d003c;
+    e  :          e003c;
+    f  :          f003c;
+   10  :         10003c;
+   11  :         11003c;
+   12  :         12003c;
+   13  :         13003c;
+   14  :         14003c;
+   15  :         15003c;
+   16  :         16003c;
+   17  :         17003c;
+   18  :             3d;
+   19  :          1003d;
+   1a  :          2003d;
+   1b  :          3003d;
+   1c  :          4003d;
+   1d  :          5003d;
+   1e  :          6003d;
+   1f  :          7003d;
+   20  :          8003d;
+   21  :          9003d;
+   22  :          a003d;
+   23  :          b003d;
+   24  :          c003d;
+   25  :          d003d;
+   26  :          e003d;
+   27  :          f003d;
+   28  :         10003d;
+   29  :         11003d;
+   2a  :         12003d;
+   2b  :         13003d;
+   2c  :         14003d;
+   2d  :         15003d;
+   2e  :         16003d;
+   2f  :         17003d;
+   30  :             3e;
+   31  :          1003e;
+   32  :          2003e;
+   33  :          3003e;
+   34  :          4003e;
+   35  :          5003e;
+   36  :          6003e;
+   37  :          7003e;
+   38  :          8003e;
+   39  :          9003e;
+   3a  :          a003e;
+   3b  :          b003e;
+   3c  :          c003e;
+   3d  :          d003e;
+   3e  :          e003e;
+   3f  :          f003e;
+   40  :         10003e;
+   41  :         11003e;
+   42  :         12003e;
+   43  :         13003e;
+   44  :         14003e;
+   45  :         15003e;
+   46  :         16003e;
+   47  :         17003e;
+   48  :             3f;
+   49  :          1003f;
+   4a  :          2003f;
+   4b  :          3003f;
+   4c  :          4003f;
+   4d  :          5003f;
+   4e  :          6003f;
+   4f  :          7003f;
+   50  :          8003f;
+   51  :          9003f;
+   52  :          a003f;
+   53  :          b003f;
+   54  :          c003f;
+   55  :          d003f;
+   56  :          e003f;
+   57  :          f003f;
+   58  :         10003f;
+   59  :         11003f;
+   5a  :         12003f;
+   5b  :         13003f;
+   5c  :         14003f;
+   5d  :         15003f;
+   5e  :         16003f;
+   5f  :         17003f;
+END;
diff --git a/libraries/base/diag/src/data/bf_in_data_2.dat b/libraries/base/diag/src/data/bf_in_data_2.dat
new file mode 100644
index 0000000000..7ed711852d
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_2.dat
@@ -0,0 +1,96 @@
+8   0
+8   1
+8   2
+8   3
+8   4
+8   5
+8   6
+8   7
+8   8
+8   9
+8   10
+8   11
+8   12
+8   13
+8   14
+8   15
+8   16
+8   17
+8   18
+8   19
+8   20
+8   21
+8   22
+8   23
+9   0
+9   1
+9   2
+9   3
+9   4
+9   5
+9   6
+9   7
+9   8
+9   9
+9   10
+9   11
+9   12
+9   13
+9   14
+9   15
+9   16
+9   17
+9   18
+9   19
+9   20
+9   21
+9   22
+9   23
+10   0
+10   1
+10   2
+10   3
+10   4
+10   5
+10   6
+10   7
+10   8
+10   9
+10   10
+10   11
+10   12
+10   13
+10   14
+10   15
+10   16
+10   17
+10   18
+10   19
+10   20
+10   21
+10   22
+10   23
+11   0
+11   1
+11   2
+11   3
+11   4
+11   5
+11   6
+11   7
+11   8
+11   9
+11   10
+11   11
+11   12
+11   13
+11   14
+11   15
+11   16
+11   17
+11   18
+11   19
+11   20
+11   21
+11   22
+11   23
diff --git a/libraries/base/diag/src/data/bf_in_data_2.hex b/libraries/base/diag/src/data/bf_in_data_2.hex
new file mode 100644
index 0000000000..c1def04858
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_2.hex
@@ -0,0 +1,129 @@
+:0400000000000008F4
+:0400010000010008F2
+:0400020000020008F0
+:0400030000030008EE
+:0400040000040008EC
+:0400050000050008EA
+:0400060000060008E8
+:0400070000070008E6
+:0400080000080008E4
+:0400090000090008E2
+:04000A00000A0008E0
+:04000B00000B0008DE
+:04000C00000C0008DC
+:04000D00000D0008DA
+:04000E00000E0008D8
+:04000F00000F0008D6
+:0400100000100008D4
+:0400110000110008D2
+:0400120000120008D0
+:0400130000130008CE
+:0400140000140008CC
+:0400150000150008CA
+:0400160000160008C8
+:0400170000170008C6
+:0400180000000009DB
+:0400190000010009D9
+:04001A0000020009D7
+:04001B0000030009D5
+:04001C0000040009D3
+:04001D0000050009D1
+:04001E0000060009CF
+:04001F0000070009CD
+:0400200000080009CB
+:0400210000090009C9
+:04002200000A0009C7
+:04002300000B0009C5
+:04002400000C0009C3
+:04002500000D0009C1
+:04002600000E0009BF
+:04002700000F0009BD
+:0400280000100009BB
+:0400290000110009B9
+:04002A0000120009B7
+:04002B0000130009B5
+:04002C0000140009B3
+:04002D0000150009B1
+:04002E0000160009AF
+:04002F0000170009AD
+:040030000000000AC2
+:040031000001000AC0
+:040032000002000ABE
+:040033000003000ABC
+:040034000004000ABA
+:040035000005000AB8
+:040036000006000AB6
+:040037000007000AB4
+:040038000008000AB2
+:040039000009000AB0
+:04003A00000A000AAE
+:04003B00000B000AAC
+:04003C00000C000AAA
+:04003D00000D000AA8
+:04003E00000E000AA6
+:04003F00000F000AA4
+:040040000010000AA2
+:040041000011000AA0
+:040042000012000A9E
+:040043000013000A9C
+:040044000014000A9A
+:040045000015000A98
+:040046000016000A96
+:040047000017000A94
+:040048000000000BA9
+:040049000001000BA7
+:04004A000002000BA5
+:04004B000003000BA3
+:04004C000004000BA1
+:04004D000005000B9F
+:04004E000006000B9D
+:04004F000007000B9B
+:040050000008000B99
+:040051000009000B97
+:04005200000A000B95
+:04005300000B000B93
+:04005400000C000B91
+:04005500000D000B8F
+:04005600000E000B8D
+:04005700000F000B8B
+:040058000010000B89
+:040059000011000B87
+:04005A000012000B85
+:04005B000013000B83
+:04005C000014000B81
+:04005D000015000B7F
+:04005E000016000B7D
+:04005F000017000B7B
+:04006000000000009C
+:04006100000000009B
+:04006200000000009A
+:040063000000000099
+:040064000000000098
+:040065000000000097
+:040066000000000096
+:040067000000000095
+:040068000000000094
+:040069000000000093
+:04006A000000000092
+:04006B000000000091
+:04006C000000000090
+:04006D00000000008F
+:04006E00000000008E
+:04006F00000000008D
+:04007000000000008C
+:04007100000000008B
+:04007200000000008A
+:040073000000000089
+:040074000000000088
+:040075000000000087
+:040076000000000086
+:040077000000000085
+:040078000000000084
+:040079000000000083
+:04007A000000000082
+:04007B000000000081
+:04007C000000000080
+:04007D00000000007F
+:04007E00000000007E
+:04007F00000000007D
+:00000001FF
diff --git a/libraries/base/diag/src/data/bf_in_data_2.mif b/libraries/base/diag/src/data/bf_in_data_2.mif
new file mode 100644
index 0000000000..745618392f
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_2.mif
@@ -0,0 +1,104 @@
+WIDTH=32;
+DEPTH=128;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+    0  :              8;
+    1  :          10008;
+    2  :          20008;
+    3  :          30008;
+    4  :          40008;
+    5  :          50008;
+    6  :          60008;
+    7  :          70008;
+    8  :          80008;
+    9  :          90008;
+    a  :          a0008;
+    b  :          b0008;
+    c  :          c0008;
+    d  :          d0008;
+    e  :          e0008;
+    f  :          f0008;
+   10  :         100008;
+   11  :         110008;
+   12  :         120008;
+   13  :         130008;
+   14  :         140008;
+   15  :         150008;
+   16  :         160008;
+   17  :         170008;
+   18  :              9;
+   19  :          10009;
+   1a  :          20009;
+   1b  :          30009;
+   1c  :          40009;
+   1d  :          50009;
+   1e  :          60009;
+   1f  :          70009;
+   20  :          80009;
+   21  :          90009;
+   22  :          a0009;
+   23  :          b0009;
+   24  :          c0009;
+   25  :          d0009;
+   26  :          e0009;
+   27  :          f0009;
+   28  :         100009;
+   29  :         110009;
+   2a  :         120009;
+   2b  :         130009;
+   2c  :         140009;
+   2d  :         150009;
+   2e  :         160009;
+   2f  :         170009;
+   30  :              a;
+   31  :          1000a;
+   32  :          2000a;
+   33  :          3000a;
+   34  :          4000a;
+   35  :          5000a;
+   36  :          6000a;
+   37  :          7000a;
+   38  :          8000a;
+   39  :          9000a;
+   3a  :          a000a;
+   3b  :          b000a;
+   3c  :          c000a;
+   3d  :          d000a;
+   3e  :          e000a;
+   3f  :          f000a;
+   40  :         10000a;
+   41  :         11000a;
+   42  :         12000a;
+   43  :         13000a;
+   44  :         14000a;
+   45  :         15000a;
+   46  :         16000a;
+   47  :         17000a;
+   48  :              b;
+   49  :          1000b;
+   4a  :          2000b;
+   4b  :          3000b;
+   4c  :          4000b;
+   4d  :          5000b;
+   4e  :          6000b;
+   4f  :          7000b;
+   50  :          8000b;
+   51  :          9000b;
+   52  :          a000b;
+   53  :          b000b;
+   54  :          c000b;
+   55  :          d000b;
+   56  :          e000b;
+   57  :          f000b;
+   58  :         10000b;
+   59  :         11000b;
+   5a  :         12000b;
+   5b  :         13000b;
+   5c  :         14000b;
+   5d  :         15000b;
+   5e  :         16000b;
+   5f  :         17000b;
+END;
diff --git a/libraries/base/diag/src/data/bf_in_data_3.dat b/libraries/base/diag/src/data/bf_in_data_3.dat
new file mode 100644
index 0000000000..cbc5f809ec
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_3.dat
@@ -0,0 +1,96 @@
+12   0
+12   1
+12   2
+12   3
+12   4
+12   5
+12   6
+12   7
+12   8
+12   9
+12   10
+12   11
+12   12
+12   13
+12   14
+12   15
+12   16
+12   17
+12   18
+12   19
+12   20
+12   21
+12   22
+12   23
+13   0
+13   1
+13   2
+13   3
+13   4
+13   5
+13   6
+13   7
+13   8
+13   9
+13   10
+13   11
+13   12
+13   13
+13   14
+13   15
+13   16
+13   17
+13   18
+13   19
+13   20
+13   21
+13   22
+13   23
+14   0
+14   1
+14   2
+14   3
+14   4
+14   5
+14   6
+14   7
+14   8
+14   9
+14   10
+14   11
+14   12
+14   13
+14   14
+14   15
+14   16
+14   17
+14   18
+14   19
+14   20
+14   21
+14   22
+14   23
+15   0
+15   1
+15   2
+15   3
+15   4
+15   5
+15   6
+15   7
+15   8
+15   9
+15   10
+15   11
+15   12
+15   13
+15   14
+15   15
+15   16
+15   17
+15   18
+15   19
+15   20
+15   21
+15   22
+15   23
diff --git a/libraries/base/diag/src/data/bf_in_data_3.hex b/libraries/base/diag/src/data/bf_in_data_3.hex
new file mode 100644
index 0000000000..c8d3890539
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_3.hex
@@ -0,0 +1,129 @@
+:040000000000000CF0
+:040001000001000CEE
+:040002000002000CEC
+:040003000003000CEA
+:040004000004000CE8
+:040005000005000CE6
+:040006000006000CE4
+:040007000007000CE2
+:040008000008000CE0
+:040009000009000CDE
+:04000A00000A000CDC
+:04000B00000B000CDA
+:04000C00000C000CD8
+:04000D00000D000CD6
+:04000E00000E000CD4
+:04000F00000F000CD2
+:040010000010000CD0
+:040011000011000CCE
+:040012000012000CCC
+:040013000013000CCA
+:040014000014000CC8
+:040015000015000CC6
+:040016000016000CC4
+:040017000017000CC2
+:040018000000000DD7
+:040019000001000DD5
+:04001A000002000DD3
+:04001B000003000DD1
+:04001C000004000DCF
+:04001D000005000DCD
+:04001E000006000DCB
+:04001F000007000DC9
+:040020000008000DC7
+:040021000009000DC5
+:04002200000A000DC3
+:04002300000B000DC1
+:04002400000C000DBF
+:04002500000D000DBD
+:04002600000E000DBB
+:04002700000F000DB9
+:040028000010000DB7
+:040029000011000DB5
+:04002A000012000DB3
+:04002B000013000DB1
+:04002C000014000DAF
+:04002D000015000DAD
+:04002E000016000DAB
+:04002F000017000DA9
+:040030000000000EBE
+:040031000001000EBC
+:040032000002000EBA
+:040033000003000EB8
+:040034000004000EB6
+:040035000005000EB4
+:040036000006000EB2
+:040037000007000EB0
+:040038000008000EAE
+:040039000009000EAC
+:04003A00000A000EAA
+:04003B00000B000EA8
+:04003C00000C000EA6
+:04003D00000D000EA4
+:04003E00000E000EA2
+:04003F00000F000EA0
+:040040000010000E9E
+:040041000011000E9C
+:040042000012000E9A
+:040043000013000E98
+:040044000014000E96
+:040045000015000E94
+:040046000016000E92
+:040047000017000E90
+:040048000000000FA5
+:040049000001000FA3
+:04004A000002000FA1
+:04004B000003000F9F
+:04004C000004000F9D
+:04004D000005000F9B
+:04004E000006000F99
+:04004F000007000F97
+:040050000008000F95
+:040051000009000F93
+:04005200000A000F91
+:04005300000B000F8F
+:04005400000C000F8D
+:04005500000D000F8B
+:04005600000E000F89
+:04005700000F000F87
+:040058000010000F85
+:040059000011000F83
+:04005A000012000F81
+:04005B000013000F7F
+:04005C000014000F7D
+:04005D000015000F7B
+:04005E000016000F79
+:04005F000017000F77
+:04006000000000009C
+:04006100000000009B
+:04006200000000009A
+:040063000000000099
+:040064000000000098
+:040065000000000097
+:040066000000000096
+:040067000000000095
+:040068000000000094
+:040069000000000093
+:04006A000000000092
+:04006B000000000091
+:04006C000000000090
+:04006D00000000008F
+:04006E00000000008E
+:04006F00000000008D
+:04007000000000008C
+:04007100000000008B
+:04007200000000008A
+:040073000000000089
+:040074000000000088
+:040075000000000087
+:040076000000000086
+:040077000000000085
+:040078000000000084
+:040079000000000083
+:04007A000000000082
+:04007B000000000081
+:04007C000000000080
+:04007D00000000007F
+:04007E00000000007E
+:04007F00000000007D
+:00000001FF
diff --git a/libraries/base/diag/src/data/bf_in_data_3.mif b/libraries/base/diag/src/data/bf_in_data_3.mif
new file mode 100644
index 0000000000..d53737e9f2
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_3.mif
@@ -0,0 +1,104 @@
+WIDTH=32;
+DEPTH=128;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+    0  :              c;
+    1  :          1000c;
+    2  :          2000c;
+    3  :          3000c;
+    4  :          4000c;
+    5  :          5000c;
+    6  :          6000c;
+    7  :          7000c;
+    8  :          8000c;
+    9  :          9000c;
+    a  :          a000c;
+    b  :          b000c;
+    c  :          c000c;
+    d  :          d000c;
+    e  :          e000c;
+    f  :          f000c;
+   10  :         10000c;
+   11  :         11000c;
+   12  :         12000c;
+   13  :         13000c;
+   14  :         14000c;
+   15  :         15000c;
+   16  :         16000c;
+   17  :         17000c;
+   18  :              d;
+   19  :          1000d;
+   1a  :          2000d;
+   1b  :          3000d;
+   1c  :          4000d;
+   1d  :          5000d;
+   1e  :          6000d;
+   1f  :          7000d;
+   20  :          8000d;
+   21  :          9000d;
+   22  :          a000d;
+   23  :          b000d;
+   24  :          c000d;
+   25  :          d000d;
+   26  :          e000d;
+   27  :          f000d;
+   28  :         10000d;
+   29  :         11000d;
+   2a  :         12000d;
+   2b  :         13000d;
+   2c  :         14000d;
+   2d  :         15000d;
+   2e  :         16000d;
+   2f  :         17000d;
+   30  :              e;
+   31  :          1000e;
+   32  :          2000e;
+   33  :          3000e;
+   34  :          4000e;
+   35  :          5000e;
+   36  :          6000e;
+   37  :          7000e;
+   38  :          8000e;
+   39  :          9000e;
+   3a  :          a000e;
+   3b  :          b000e;
+   3c  :          c000e;
+   3d  :          d000e;
+   3e  :          e000e;
+   3f  :          f000e;
+   40  :         10000e;
+   41  :         11000e;
+   42  :         12000e;
+   43  :         13000e;
+   44  :         14000e;
+   45  :         15000e;
+   46  :         16000e;
+   47  :         17000e;
+   48  :              f;
+   49  :          1000f;
+   4a  :          2000f;
+   4b  :          3000f;
+   4c  :          4000f;
+   4d  :          5000f;
+   4e  :          6000f;
+   4f  :          7000f;
+   50  :          8000f;
+   51  :          9000f;
+   52  :          a000f;
+   53  :          b000f;
+   54  :          c000f;
+   55  :          d000f;
+   56  :          e000f;
+   57  :          f000f;
+   58  :         10000f;
+   59  :         11000f;
+   5a  :         12000f;
+   5b  :         13000f;
+   5c  :         14000f;
+   5d  :         15000f;
+   5e  :         16000f;
+   5f  :         17000f;
+END;
diff --git a/libraries/base/diag/src/data/bf_in_data_4.dat b/libraries/base/diag/src/data/bf_in_data_4.dat
new file mode 100644
index 0000000000..e553586ea8
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_4.dat
@@ -0,0 +1,96 @@
+16   0
+16   1
+16   2
+16   3
+16   4
+16   5
+16   6
+16   7
+16   8
+16   9
+16   10
+16   11
+16   12
+16   13
+16   14
+16   15
+16   16
+16   17
+16   18
+16   19
+16   20
+16   21
+16   22
+16   23
+17   0
+17   1
+17   2
+17   3
+17   4
+17   5
+17   6
+17   7
+17   8
+17   9
+17   10
+17   11
+17   12
+17   13
+17   14
+17   15
+17   16
+17   17
+17   18
+17   19
+17   20
+17   21
+17   22
+17   23
+18   0
+18   1
+18   2
+18   3
+18   4
+18   5
+18   6
+18   7
+18   8
+18   9
+18   10
+18   11
+18   12
+18   13
+18   14
+18   15
+18   16
+18   17
+18   18
+18   19
+18   20
+18   21
+18   22
+18   23
+19   0
+19   1
+19   2
+19   3
+19   4
+19   5
+19   6
+19   7
+19   8
+19   9
+19   10
+19   11
+19   12
+19   13
+19   14
+19   15
+19   16
+19   17
+19   18
+19   19
+19   20
+19   21
+19   22
+19   23
diff --git a/libraries/base/diag/src/data/bf_in_data_4.hex b/libraries/base/diag/src/data/bf_in_data_4.hex
new file mode 100644
index 0000000000..8f96a002dd
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_4.hex
@@ -0,0 +1,129 @@
+:0400000000000010EC
+:0400010000010010EA
+:0400020000020010E8
+:0400030000030010E6
+:0400040000040010E4
+:0400050000050010E2
+:0400060000060010E0
+:0400070000070010DE
+:0400080000080010DC
+:0400090000090010DA
+:04000A00000A0010D8
+:04000B00000B0010D6
+:04000C00000C0010D4
+:04000D00000D0010D2
+:04000E00000E0010D0
+:04000F00000F0010CE
+:0400100000100010CC
+:0400110000110010CA
+:0400120000120010C8
+:0400130000130010C6
+:0400140000140010C4
+:0400150000150010C2
+:0400160000160010C0
+:0400170000170010BE
+:0400180000000011D3
+:0400190000010011D1
+:04001A0000020011CF
+:04001B0000030011CD
+:04001C0000040011CB
+:04001D0000050011C9
+:04001E0000060011C7
+:04001F0000070011C5
+:0400200000080011C3
+:0400210000090011C1
+:04002200000A0011BF
+:04002300000B0011BD
+:04002400000C0011BB
+:04002500000D0011B9
+:04002600000E0011B7
+:04002700000F0011B5
+:0400280000100011B3
+:0400290000110011B1
+:04002A0000120011AF
+:04002B0000130011AD
+:04002C0000140011AB
+:04002D0000150011A9
+:04002E0000160011A7
+:04002F0000170011A5
+:0400300000000012BA
+:0400310000010012B8
+:0400320000020012B6
+:0400330000030012B4
+:0400340000040012B2
+:0400350000050012B0
+:0400360000060012AE
+:0400370000070012AC
+:0400380000080012AA
+:0400390000090012A8
+:04003A00000A0012A6
+:04003B00000B0012A4
+:04003C00000C0012A2
+:04003D00000D0012A0
+:04003E00000E00129E
+:04003F00000F00129C
+:04004000001000129A
+:040041000011001298
+:040042000012001296
+:040043000013001294
+:040044000014001292
+:040045000015001290
+:04004600001600128E
+:04004700001700128C
+:0400480000000013A1
+:04004900000100139F
+:04004A00000200139D
+:04004B00000300139B
+:04004C000004001399
+:04004D000005001397
+:04004E000006001395
+:04004F000007001393
+:040050000008001391
+:04005100000900138F
+:04005200000A00138D
+:04005300000B00138B
+:04005400000C001389
+:04005500000D001387
+:04005600000E001385
+:04005700000F001383
+:040058000010001381
+:04005900001100137F
+:04005A00001200137D
+:04005B00001300137B
+:04005C000014001379
+:04005D000015001377
+:04005E000016001375
+:04005F000017001373
+:04006000000000009C
+:04006100000000009B
+:04006200000000009A
+:040063000000000099
+:040064000000000098
+:040065000000000097
+:040066000000000096
+:040067000000000095
+:040068000000000094
+:040069000000000093
+:04006A000000000092
+:04006B000000000091
+:04006C000000000090
+:04006D00000000008F
+:04006E00000000008E
+:04006F00000000008D
+:04007000000000008C
+:04007100000000008B
+:04007200000000008A
+:040073000000000089
+:040074000000000088
+:040075000000000087
+:040076000000000086
+:040077000000000085
+:040078000000000084
+:040079000000000083
+:04007A000000000082
+:04007B000000000081
+:04007C000000000080
+:04007D00000000007F
+:04007E00000000007E
+:04007F00000000007D
+:00000001FF
diff --git a/libraries/base/diag/src/data/bf_in_data_4.mif b/libraries/base/diag/src/data/bf_in_data_4.mif
new file mode 100644
index 0000000000..26d60c7f84
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_4.mif
@@ -0,0 +1,104 @@
+WIDTH=32;
+DEPTH=128;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+    0  :             10;
+    1  :          10010;
+    2  :          20010;
+    3  :          30010;
+    4  :          40010;
+    5  :          50010;
+    6  :          60010;
+    7  :          70010;
+    8  :          80010;
+    9  :          90010;
+    a  :          a0010;
+    b  :          b0010;
+    c  :          c0010;
+    d  :          d0010;
+    e  :          e0010;
+    f  :          f0010;
+   10  :         100010;
+   11  :         110010;
+   12  :         120010;
+   13  :         130010;
+   14  :         140010;
+   15  :         150010;
+   16  :         160010;
+   17  :         170010;
+   18  :             11;
+   19  :          10011;
+   1a  :          20011;
+   1b  :          30011;
+   1c  :          40011;
+   1d  :          50011;
+   1e  :          60011;
+   1f  :          70011;
+   20  :          80011;
+   21  :          90011;
+   22  :          a0011;
+   23  :          b0011;
+   24  :          c0011;
+   25  :          d0011;
+   26  :          e0011;
+   27  :          f0011;
+   28  :         100011;
+   29  :         110011;
+   2a  :         120011;
+   2b  :         130011;
+   2c  :         140011;
+   2d  :         150011;
+   2e  :         160011;
+   2f  :         170011;
+   30  :             12;
+   31  :          10012;
+   32  :          20012;
+   33  :          30012;
+   34  :          40012;
+   35  :          50012;
+   36  :          60012;
+   37  :          70012;
+   38  :          80012;
+   39  :          90012;
+   3a  :          a0012;
+   3b  :          b0012;
+   3c  :          c0012;
+   3d  :          d0012;
+   3e  :          e0012;
+   3f  :          f0012;
+   40  :         100012;
+   41  :         110012;
+   42  :         120012;
+   43  :         130012;
+   44  :         140012;
+   45  :         150012;
+   46  :         160012;
+   47  :         170012;
+   48  :             13;
+   49  :          10013;
+   4a  :          20013;
+   4b  :          30013;
+   4c  :          40013;
+   4d  :          50013;
+   4e  :          60013;
+   4f  :          70013;
+   50  :          80013;
+   51  :          90013;
+   52  :          a0013;
+   53  :          b0013;
+   54  :          c0013;
+   55  :          d0013;
+   56  :          e0013;
+   57  :          f0013;
+   58  :         100013;
+   59  :         110013;
+   5a  :         120013;
+   5b  :         130013;
+   5c  :         140013;
+   5d  :         150013;
+   5e  :         160013;
+   5f  :         170013;
+END;
diff --git a/libraries/base/diag/src/data/bf_in_data_5.dat b/libraries/base/diag/src/data/bf_in_data_5.dat
new file mode 100644
index 0000000000..4c0da4edb5
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_5.dat
@@ -0,0 +1,96 @@
+20   0
+20   1
+20   2
+20   3
+20   4
+20   5
+20   6
+20   7
+20   8
+20   9
+20   10
+20   11
+20   12
+20   13
+20   14
+20   15
+20   16
+20   17
+20   18
+20   19
+20   20
+20   21
+20   22
+20   23
+21   0
+21   1
+21   2
+21   3
+21   4
+21   5
+21   6
+21   7
+21   8
+21   9
+21   10
+21   11
+21   12
+21   13
+21   14
+21   15
+21   16
+21   17
+21   18
+21   19
+21   20
+21   21
+21   22
+21   23
+22   0
+22   1
+22   2
+22   3
+22   4
+22   5
+22   6
+22   7
+22   8
+22   9
+22   10
+22   11
+22   12
+22   13
+22   14
+22   15
+22   16
+22   17
+22   18
+22   19
+22   20
+22   21
+22   22
+22   23
+23   0
+23   1
+23   2
+23   3
+23   4
+23   5
+23   6
+23   7
+23   8
+23   9
+23   10
+23   11
+23   12
+23   13
+23   14
+23   15
+23   16
+23   17
+23   18
+23   19
+23   20
+23   21
+23   22
+23   23
diff --git a/libraries/base/diag/src/data/bf_in_data_5.hex b/libraries/base/diag/src/data/bf_in_data_5.hex
new file mode 100644
index 0000000000..9d6e5d2cca
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_5.hex
@@ -0,0 +1,129 @@
+:0400000000000014E8
+:0400010000010014E6
+:0400020000020014E4
+:0400030000030014E2
+:0400040000040014E0
+:0400050000050014DE
+:0400060000060014DC
+:0400070000070014DA
+:0400080000080014D8
+:0400090000090014D6
+:04000A00000A0014D4
+:04000B00000B0014D2
+:04000C00000C0014D0
+:04000D00000D0014CE
+:04000E00000E0014CC
+:04000F00000F0014CA
+:0400100000100014C8
+:0400110000110014C6
+:0400120000120014C4
+:0400130000130014C2
+:0400140000140014C0
+:0400150000150014BE
+:0400160000160014BC
+:0400170000170014BA
+:0400180000000015CF
+:0400190000010015CD
+:04001A0000020015CB
+:04001B0000030015C9
+:04001C0000040015C7
+:04001D0000050015C5
+:04001E0000060015C3
+:04001F0000070015C1
+:0400200000080015BF
+:0400210000090015BD
+:04002200000A0015BB
+:04002300000B0015B9
+:04002400000C0015B7
+:04002500000D0015B5
+:04002600000E0015B3
+:04002700000F0015B1
+:0400280000100015AF
+:0400290000110015AD
+:04002A0000120015AB
+:04002B0000130015A9
+:04002C0000140015A7
+:04002D0000150015A5
+:04002E0000160015A3
+:04002F0000170015A1
+:0400300000000016B6
+:0400310000010016B4
+:0400320000020016B2
+:0400330000030016B0
+:0400340000040016AE
+:0400350000050016AC
+:0400360000060016AA
+:0400370000070016A8
+:0400380000080016A6
+:0400390000090016A4
+:04003A00000A0016A2
+:04003B00000B0016A0
+:04003C00000C00169E
+:04003D00000D00169C
+:04003E00000E00169A
+:04003F00000F001698
+:040040000010001696
+:040041000011001694
+:040042000012001692
+:040043000013001690
+:04004400001400168E
+:04004500001500168C
+:04004600001600168A
+:040047000017001688
+:04004800000000179D
+:04004900000100179B
+:04004A000002001799
+:04004B000003001797
+:04004C000004001795
+:04004D000005001793
+:04004E000006001791
+:04004F00000700178F
+:04005000000800178D
+:04005100000900178B
+:04005200000A001789
+:04005300000B001787
+:04005400000C001785
+:04005500000D001783
+:04005600000E001781
+:04005700000F00177F
+:04005800001000177D
+:04005900001100177B
+:04005A000012001779
+:04005B000013001777
+:04005C000014001775
+:04005D000015001773
+:04005E000016001771
+:04005F00001700176F
+:04006000000000009C
+:04006100000000009B
+:04006200000000009A
+:040063000000000099
+:040064000000000098
+:040065000000000097
+:040066000000000096
+:040067000000000095
+:040068000000000094
+:040069000000000093
+:04006A000000000092
+:04006B000000000091
+:04006C000000000090
+:04006D00000000008F
+:04006E00000000008E
+:04006F00000000008D
+:04007000000000008C
+:04007100000000008B
+:04007200000000008A
+:040073000000000089
+:040074000000000088
+:040075000000000087
+:040076000000000086
+:040077000000000085
+:040078000000000084
+:040079000000000083
+:04007A000000000082
+:04007B000000000081
+:04007C000000000080
+:04007D00000000007F
+:04007E00000000007E
+:04007F00000000007D
+:00000001FF
diff --git a/libraries/base/diag/src/data/bf_in_data_5.mif b/libraries/base/diag/src/data/bf_in_data_5.mif
new file mode 100644
index 0000000000..fae8d4f493
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_5.mif
@@ -0,0 +1,104 @@
+WIDTH=32;
+DEPTH=128;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+    0  :             14;
+    1  :          10014;
+    2  :          20014;
+    3  :          30014;
+    4  :          40014;
+    5  :          50014;
+    6  :          60014;
+    7  :          70014;
+    8  :          80014;
+    9  :          90014;
+    a  :          a0014;
+    b  :          b0014;
+    c  :          c0014;
+    d  :          d0014;
+    e  :          e0014;
+    f  :          f0014;
+   10  :         100014;
+   11  :         110014;
+   12  :         120014;
+   13  :         130014;
+   14  :         140014;
+   15  :         150014;
+   16  :         160014;
+   17  :         170014;
+   18  :             15;
+   19  :          10015;
+   1a  :          20015;
+   1b  :          30015;
+   1c  :          40015;
+   1d  :          50015;
+   1e  :          60015;
+   1f  :          70015;
+   20  :          80015;
+   21  :          90015;
+   22  :          a0015;
+   23  :          b0015;
+   24  :          c0015;
+   25  :          d0015;
+   26  :          e0015;
+   27  :          f0015;
+   28  :         100015;
+   29  :         110015;
+   2a  :         120015;
+   2b  :         130015;
+   2c  :         140015;
+   2d  :         150015;
+   2e  :         160015;
+   2f  :         170015;
+   30  :             16;
+   31  :          10016;
+   32  :          20016;
+   33  :          30016;
+   34  :          40016;
+   35  :          50016;
+   36  :          60016;
+   37  :          70016;
+   38  :          80016;
+   39  :          90016;
+   3a  :          a0016;
+   3b  :          b0016;
+   3c  :          c0016;
+   3d  :          d0016;
+   3e  :          e0016;
+   3f  :          f0016;
+   40  :         100016;
+   41  :         110016;
+   42  :         120016;
+   43  :         130016;
+   44  :         140016;
+   45  :         150016;
+   46  :         160016;
+   47  :         170016;
+   48  :             17;
+   49  :          10017;
+   4a  :          20017;
+   4b  :          30017;
+   4c  :          40017;
+   4d  :          50017;
+   4e  :          60017;
+   4f  :          70017;
+   50  :          80017;
+   51  :          90017;
+   52  :          a0017;
+   53  :          b0017;
+   54  :          c0017;
+   55  :          d0017;
+   56  :          e0017;
+   57  :          f0017;
+   58  :         100017;
+   59  :         110017;
+   5a  :         120017;
+   5b  :         130017;
+   5c  :         140017;
+   5d  :         150017;
+   5e  :         160017;
+   5f  :         170017;
+END;
diff --git a/libraries/base/diag/src/data/bf_in_data_6.dat b/libraries/base/diag/src/data/bf_in_data_6.dat
new file mode 100644
index 0000000000..6442082f0c
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_6.dat
@@ -0,0 +1,96 @@
+24   0
+24   1
+24   2
+24   3
+24   4
+24   5
+24   6
+24   7
+24   8
+24   9
+24   10
+24   11
+24   12
+24   13
+24   14
+24   15
+24   16
+24   17
+24   18
+24   19
+24   20
+24   21
+24   22
+24   23
+25   0
+25   1
+25   2
+25   3
+25   4
+25   5
+25   6
+25   7
+25   8
+25   9
+25   10
+25   11
+25   12
+25   13
+25   14
+25   15
+25   16
+25   17
+25   18
+25   19
+25   20
+25   21
+25   22
+25   23
+26   0
+26   1
+26   2
+26   3
+26   4
+26   5
+26   6
+26   7
+26   8
+26   9
+26   10
+26   11
+26   12
+26   13
+26   14
+26   15
+26   16
+26   17
+26   18
+26   19
+26   20
+26   21
+26   22
+26   23
+27   0
+27   1
+27   2
+27   3
+27   4
+27   5
+27   6
+27   7
+27   8
+27   9
+27   10
+27   11
+27   12
+27   13
+27   14
+27   15
+27   16
+27   17
+27   18
+27   19
+27   20
+27   21
+27   22
+27   23
diff --git a/libraries/base/diag/src/data/bf_in_data_6.hex b/libraries/base/diag/src/data/bf_in_data_6.hex
new file mode 100644
index 0000000000..93a0d5269c
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_6.hex
@@ -0,0 +1,129 @@
+:0400000000000018E4
+:0400010000010018E2
+:0400020000020018E0
+:0400030000030018DE
+:0400040000040018DC
+:0400050000050018DA
+:0400060000060018D8
+:0400070000070018D6
+:0400080000080018D4
+:0400090000090018D2
+:04000A00000A0018D0
+:04000B00000B0018CE
+:04000C00000C0018CC
+:04000D00000D0018CA
+:04000E00000E0018C8
+:04000F00000F0018C6
+:0400100000100018C4
+:0400110000110018C2
+:0400120000120018C0
+:0400130000130018BE
+:0400140000140018BC
+:0400150000150018BA
+:0400160000160018B8
+:0400170000170018B6
+:0400180000000019CB
+:0400190000010019C9
+:04001A0000020019C7
+:04001B0000030019C5
+:04001C0000040019C3
+:04001D0000050019C1
+:04001E0000060019BF
+:04001F0000070019BD
+:0400200000080019BB
+:0400210000090019B9
+:04002200000A0019B7
+:04002300000B0019B5
+:04002400000C0019B3
+:04002500000D0019B1
+:04002600000E0019AF
+:04002700000F0019AD
+:0400280000100019AB
+:0400290000110019A9
+:04002A0000120019A7
+:04002B0000130019A5
+:04002C0000140019A3
+:04002D0000150019A1
+:04002E00001600199F
+:04002F00001700199D
+:040030000000001AB2
+:040031000001001AB0
+:040032000002001AAE
+:040033000003001AAC
+:040034000004001AAA
+:040035000005001AA8
+:040036000006001AA6
+:040037000007001AA4
+:040038000008001AA2
+:040039000009001AA0
+:04003A00000A001A9E
+:04003B00000B001A9C
+:04003C00000C001A9A
+:04003D00000D001A98
+:04003E00000E001A96
+:04003F00000F001A94
+:040040000010001A92
+:040041000011001A90
+:040042000012001A8E
+:040043000013001A8C
+:040044000014001A8A
+:040045000015001A88
+:040046000016001A86
+:040047000017001A84
+:040048000000001B99
+:040049000001001B97
+:04004A000002001B95
+:04004B000003001B93
+:04004C000004001B91
+:04004D000005001B8F
+:04004E000006001B8D
+:04004F000007001B8B
+:040050000008001B89
+:040051000009001B87
+:04005200000A001B85
+:04005300000B001B83
+:04005400000C001B81
+:04005500000D001B7F
+:04005600000E001B7D
+:04005700000F001B7B
+:040058000010001B79
+:040059000011001B77
+:04005A000012001B75
+:04005B000013001B73
+:04005C000014001B71
+:04005D000015001B6F
+:04005E000016001B6D
+:04005F000017001B6B
+:04006000000000009C
+:04006100000000009B
+:04006200000000009A
+:040063000000000099
+:040064000000000098
+:040065000000000097
+:040066000000000096
+:040067000000000095
+:040068000000000094
+:040069000000000093
+:04006A000000000092
+:04006B000000000091
+:04006C000000000090
+:04006D00000000008F
+:04006E00000000008E
+:04006F00000000008D
+:04007000000000008C
+:04007100000000008B
+:04007200000000008A
+:040073000000000089
+:040074000000000088
+:040075000000000087
+:040076000000000086
+:040077000000000085
+:040078000000000084
+:040079000000000083
+:04007A000000000082
+:04007B000000000081
+:04007C000000000080
+:04007D00000000007F
+:04007E00000000007E
+:04007F00000000007D
+:00000001FF
diff --git a/libraries/base/diag/src/data/bf_in_data_6.mif b/libraries/base/diag/src/data/bf_in_data_6.mif
new file mode 100644
index 0000000000..ace3f83abc
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_6.mif
@@ -0,0 +1,104 @@
+WIDTH=32;
+DEPTH=128;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+    0  :             18;
+    1  :          10018;
+    2  :          20018;
+    3  :          30018;
+    4  :          40018;
+    5  :          50018;
+    6  :          60018;
+    7  :          70018;
+    8  :          80018;
+    9  :          90018;
+    a  :          a0018;
+    b  :          b0018;
+    c  :          c0018;
+    d  :          d0018;
+    e  :          e0018;
+    f  :          f0018;
+   10  :         100018;
+   11  :         110018;
+   12  :         120018;
+   13  :         130018;
+   14  :         140018;
+   15  :         150018;
+   16  :         160018;
+   17  :         170018;
+   18  :             19;
+   19  :          10019;
+   1a  :          20019;
+   1b  :          30019;
+   1c  :          40019;
+   1d  :          50019;
+   1e  :          60019;
+   1f  :          70019;
+   20  :          80019;
+   21  :          90019;
+   22  :          a0019;
+   23  :          b0019;
+   24  :          c0019;
+   25  :          d0019;
+   26  :          e0019;
+   27  :          f0019;
+   28  :         100019;
+   29  :         110019;
+   2a  :         120019;
+   2b  :         130019;
+   2c  :         140019;
+   2d  :         150019;
+   2e  :         160019;
+   2f  :         170019;
+   30  :             1a;
+   31  :          1001a;
+   32  :          2001a;
+   33  :          3001a;
+   34  :          4001a;
+   35  :          5001a;
+   36  :          6001a;
+   37  :          7001a;
+   38  :          8001a;
+   39  :          9001a;
+   3a  :          a001a;
+   3b  :          b001a;
+   3c  :          c001a;
+   3d  :          d001a;
+   3e  :          e001a;
+   3f  :          f001a;
+   40  :         10001a;
+   41  :         11001a;
+   42  :         12001a;
+   43  :         13001a;
+   44  :         14001a;
+   45  :         15001a;
+   46  :         16001a;
+   47  :         17001a;
+   48  :             1b;
+   49  :          1001b;
+   4a  :          2001b;
+   4b  :          3001b;
+   4c  :          4001b;
+   4d  :          5001b;
+   4e  :          6001b;
+   4f  :          7001b;
+   50  :          8001b;
+   51  :          9001b;
+   52  :          a001b;
+   53  :          b001b;
+   54  :          c001b;
+   55  :          d001b;
+   56  :          e001b;
+   57  :          f001b;
+   58  :         10001b;
+   59  :         11001b;
+   5a  :         12001b;
+   5b  :         13001b;
+   5c  :         14001b;
+   5d  :         15001b;
+   5e  :         16001b;
+   5f  :         17001b;
+END;
diff --git a/libraries/base/diag/src/data/bf_in_data_7.dat b/libraries/base/diag/src/data/bf_in_data_7.dat
new file mode 100644
index 0000000000..42ca09f91d
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_7.dat
@@ -0,0 +1,96 @@
+28   0
+28   1
+28   2
+28   3
+28   4
+28   5
+28   6
+28   7
+28   8
+28   9
+28   10
+28   11
+28   12
+28   13
+28   14
+28   15
+28   16
+28   17
+28   18
+28   19
+28   20
+28   21
+28   22
+28   23
+29   0
+29   1
+29   2
+29   3
+29   4
+29   5
+29   6
+29   7
+29   8
+29   9
+29   10
+29   11
+29   12
+29   13
+29   14
+29   15
+29   16
+29   17
+29   18
+29   19
+29   20
+29   21
+29   22
+29   23
+30   0
+30   1
+30   2
+30   3
+30   4
+30   5
+30   6
+30   7
+30   8
+30   9
+30   10
+30   11
+30   12
+30   13
+30   14
+30   15
+30   16
+30   17
+30   18
+30   19
+30   20
+30   21
+30   22
+30   23
+31   0
+31   1
+31   2
+31   3
+31   4
+31   5
+31   6
+31   7
+31   8
+31   9
+31   10
+31   11
+31   12
+31   13
+31   14
+31   15
+31   16
+31   17
+31   18
+31   19
+31   20
+31   21
+31   22
+31   23
diff --git a/libraries/base/diag/src/data/bf_in_data_7.hex b/libraries/base/diag/src/data/bf_in_data_7.hex
new file mode 100644
index 0000000000..b2e1525f0b
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_7.hex
@@ -0,0 +1,129 @@
+:040000000000001CE0
+:040001000001001CDE
+:040002000002001CDC
+:040003000003001CDA
+:040004000004001CD8
+:040005000005001CD6
+:040006000006001CD4
+:040007000007001CD2
+:040008000008001CD0
+:040009000009001CCE
+:04000A00000A001CCC
+:04000B00000B001CCA
+:04000C00000C001CC8
+:04000D00000D001CC6
+:04000E00000E001CC4
+:04000F00000F001CC2
+:040010000010001CC0
+:040011000011001CBE
+:040012000012001CBC
+:040013000013001CBA
+:040014000014001CB8
+:040015000015001CB6
+:040016000016001CB4
+:040017000017001CB2
+:040018000000001DC7
+:040019000001001DC5
+:04001A000002001DC3
+:04001B000003001DC1
+:04001C000004001DBF
+:04001D000005001DBD
+:04001E000006001DBB
+:04001F000007001DB9
+:040020000008001DB7
+:040021000009001DB5
+:04002200000A001DB3
+:04002300000B001DB1
+:04002400000C001DAF
+:04002500000D001DAD
+:04002600000E001DAB
+:04002700000F001DA9
+:040028000010001DA7
+:040029000011001DA5
+:04002A000012001DA3
+:04002B000013001DA1
+:04002C000014001D9F
+:04002D000015001D9D
+:04002E000016001D9B
+:04002F000017001D99
+:040030000000001EAE
+:040031000001001EAC
+:040032000002001EAA
+:040033000003001EA8
+:040034000004001EA6
+:040035000005001EA4
+:040036000006001EA2
+:040037000007001EA0
+:040038000008001E9E
+:040039000009001E9C
+:04003A00000A001E9A
+:04003B00000B001E98
+:04003C00000C001E96
+:04003D00000D001E94
+:04003E00000E001E92
+:04003F00000F001E90
+:040040000010001E8E
+:040041000011001E8C
+:040042000012001E8A
+:040043000013001E88
+:040044000014001E86
+:040045000015001E84
+:040046000016001E82
+:040047000017001E80
+:040048000000001F95
+:040049000001001F93
+:04004A000002001F91
+:04004B000003001F8F
+:04004C000004001F8D
+:04004D000005001F8B
+:04004E000006001F89
+:04004F000007001F87
+:040050000008001F85
+:040051000009001F83
+:04005200000A001F81
+:04005300000B001F7F
+:04005400000C001F7D
+:04005500000D001F7B
+:04005600000E001F79
+:04005700000F001F77
+:040058000010001F75
+:040059000011001F73
+:04005A000012001F71
+:04005B000013001F6F
+:04005C000014001F6D
+:04005D000015001F6B
+:04005E000016001F69
+:04005F000017001F67
+:04006000000000009C
+:04006100000000009B
+:04006200000000009A
+:040063000000000099
+:040064000000000098
+:040065000000000097
+:040066000000000096
+:040067000000000095
+:040068000000000094
+:040069000000000093
+:04006A000000000092
+:04006B000000000091
+:04006C000000000090
+:04006D00000000008F
+:04006E00000000008E
+:04006F00000000008D
+:04007000000000008C
+:04007100000000008B
+:04007200000000008A
+:040073000000000089
+:040074000000000088
+:040075000000000087
+:040076000000000086
+:040077000000000085
+:040078000000000084
+:040079000000000083
+:04007A000000000082
+:04007B000000000081
+:04007C000000000080
+:04007D00000000007F
+:04007E00000000007E
+:04007F00000000007D
+:00000001FF
diff --git a/libraries/base/diag/src/data/bf_in_data_7.mif b/libraries/base/diag/src/data/bf_in_data_7.mif
new file mode 100644
index 0000000000..a52802ab5a
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_7.mif
@@ -0,0 +1,104 @@
+WIDTH=32;
+DEPTH=128;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+    0  :             1c;
+    1  :          1001c;
+    2  :          2001c;
+    3  :          3001c;
+    4  :          4001c;
+    5  :          5001c;
+    6  :          6001c;
+    7  :          7001c;
+    8  :          8001c;
+    9  :          9001c;
+    a  :          a001c;
+    b  :          b001c;
+    c  :          c001c;
+    d  :          d001c;
+    e  :          e001c;
+    f  :          f001c;
+   10  :         10001c;
+   11  :         11001c;
+   12  :         12001c;
+   13  :         13001c;
+   14  :         14001c;
+   15  :         15001c;
+   16  :         16001c;
+   17  :         17001c;
+   18  :             1d;
+   19  :          1001d;
+   1a  :          2001d;
+   1b  :          3001d;
+   1c  :          4001d;
+   1d  :          5001d;
+   1e  :          6001d;
+   1f  :          7001d;
+   20  :          8001d;
+   21  :          9001d;
+   22  :          a001d;
+   23  :          b001d;
+   24  :          c001d;
+   25  :          d001d;
+   26  :          e001d;
+   27  :          f001d;
+   28  :         10001d;
+   29  :         11001d;
+   2a  :         12001d;
+   2b  :         13001d;
+   2c  :         14001d;
+   2d  :         15001d;
+   2e  :         16001d;
+   2f  :         17001d;
+   30  :             1e;
+   31  :          1001e;
+   32  :          2001e;
+   33  :          3001e;
+   34  :          4001e;
+   35  :          5001e;
+   36  :          6001e;
+   37  :          7001e;
+   38  :          8001e;
+   39  :          9001e;
+   3a  :          a001e;
+   3b  :          b001e;
+   3c  :          c001e;
+   3d  :          d001e;
+   3e  :          e001e;
+   3f  :          f001e;
+   40  :         10001e;
+   41  :         11001e;
+   42  :         12001e;
+   43  :         13001e;
+   44  :         14001e;
+   45  :         15001e;
+   46  :         16001e;
+   47  :         17001e;
+   48  :             1f;
+   49  :          1001f;
+   4a  :          2001f;
+   4b  :          3001f;
+   4c  :          4001f;
+   4d  :          5001f;
+   4e  :          6001f;
+   4f  :          7001f;
+   50  :          8001f;
+   51  :          9001f;
+   52  :          a001f;
+   53  :          b001f;
+   54  :          c001f;
+   55  :          d001f;
+   56  :          e001f;
+   57  :          f001f;
+   58  :         10001f;
+   59  :         11001f;
+   5a  :         12001f;
+   5b  :         13001f;
+   5c  :         14001f;
+   5d  :         15001f;
+   5e  :         16001f;
+   5f  :         17001f;
+END;
diff --git a/libraries/base/diag/src/data/bf_in_data_8.dat b/libraries/base/diag/src/data/bf_in_data_8.dat
new file mode 100644
index 0000000000..e3d97da431
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_8.dat
@@ -0,0 +1,96 @@
+32   0
+32   1
+32   2
+32   3
+32   4
+32   5
+32   6
+32   7
+32   8
+32   9
+32   10
+32   11
+32   12
+32   13
+32   14
+32   15
+32   16
+32   17
+32   18
+32   19
+32   20
+32   21
+32   22
+32   23
+33   0
+33   1
+33   2
+33   3
+33   4
+33   5
+33   6
+33   7
+33   8
+33   9
+33   10
+33   11
+33   12
+33   13
+33   14
+33   15
+33   16
+33   17
+33   18
+33   19
+33   20
+33   21
+33   22
+33   23
+34   0
+34   1
+34   2
+34   3
+34   4
+34   5
+34   6
+34   7
+34   8
+34   9
+34   10
+34   11
+34   12
+34   13
+34   14
+34   15
+34   16
+34   17
+34   18
+34   19
+34   20
+34   21
+34   22
+34   23
+35   0
+35   1
+35   2
+35   3
+35   4
+35   5
+35   6
+35   7
+35   8
+35   9
+35   10
+35   11
+35   12
+35   13
+35   14
+35   15
+35   16
+35   17
+35   18
+35   19
+35   20
+35   21
+35   22
+35   23
diff --git a/libraries/base/diag/src/data/bf_in_data_8.hex b/libraries/base/diag/src/data/bf_in_data_8.hex
new file mode 100644
index 0000000000..3291565d32
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_8.hex
@@ -0,0 +1,129 @@
+:0400000000000020DC
+:0400010000010020DA
+:0400020000020020D8
+:0400030000030020D6
+:0400040000040020D4
+:0400050000050020D2
+:0400060000060020D0
+:0400070000070020CE
+:0400080000080020CC
+:0400090000090020CA
+:04000A00000A0020C8
+:04000B00000B0020C6
+:04000C00000C0020C4
+:04000D00000D0020C2
+:04000E00000E0020C0
+:04000F00000F0020BE
+:0400100000100020BC
+:0400110000110020BA
+:0400120000120020B8
+:0400130000130020B6
+:0400140000140020B4
+:0400150000150020B2
+:0400160000160020B0
+:0400170000170020AE
+:0400180000000021C3
+:0400190000010021C1
+:04001A0000020021BF
+:04001B0000030021BD
+:04001C0000040021BB
+:04001D0000050021B9
+:04001E0000060021B7
+:04001F0000070021B5
+:0400200000080021B3
+:0400210000090021B1
+:04002200000A0021AF
+:04002300000B0021AD
+:04002400000C0021AB
+:04002500000D0021A9
+:04002600000E0021A7
+:04002700000F0021A5
+:0400280000100021A3
+:0400290000110021A1
+:04002A00001200219F
+:04002B00001300219D
+:04002C00001400219B
+:04002D000015002199
+:04002E000016002197
+:04002F000017002195
+:0400300000000022AA
+:0400310000010022A8
+:0400320000020022A6
+:0400330000030022A4
+:0400340000040022A2
+:0400350000050022A0
+:04003600000600229E
+:04003700000700229C
+:04003800000800229A
+:040039000009002298
+:04003A00000A002296
+:04003B00000B002294
+:04003C00000C002292
+:04003D00000D002290
+:04003E00000E00228E
+:04003F00000F00228C
+:04004000001000228A
+:040041000011002288
+:040042000012002286
+:040043000013002284
+:040044000014002282
+:040045000015002280
+:04004600001600227E
+:04004700001700227C
+:040048000000002391
+:04004900000100238F
+:04004A00000200238D
+:04004B00000300238B
+:04004C000004002389
+:04004D000005002387
+:04004E000006002385
+:04004F000007002383
+:040050000008002381
+:04005100000900237F
+:04005200000A00237D
+:04005300000B00237B
+:04005400000C002379
+:04005500000D002377
+:04005600000E002375
+:04005700000F002373
+:040058000010002371
+:04005900001100236F
+:04005A00001200236D
+:04005B00001300236B
+:04005C000014002369
+:04005D000015002367
+:04005E000016002365
+:04005F000017002363
+:04006000000000009C
+:04006100000000009B
+:04006200000000009A
+:040063000000000099
+:040064000000000098
+:040065000000000097
+:040066000000000096
+:040067000000000095
+:040068000000000094
+:040069000000000093
+:04006A000000000092
+:04006B000000000091
+:04006C000000000090
+:04006D00000000008F
+:04006E00000000008E
+:04006F00000000008D
+:04007000000000008C
+:04007100000000008B
+:04007200000000008A
+:040073000000000089
+:040074000000000088
+:040075000000000087
+:040076000000000086
+:040077000000000085
+:040078000000000084
+:040079000000000083
+:04007A000000000082
+:04007B000000000081
+:04007C000000000080
+:04007D00000000007F
+:04007E00000000007E
+:04007F00000000007D
+:00000001FF
diff --git a/libraries/base/diag/src/data/bf_in_data_8.mif b/libraries/base/diag/src/data/bf_in_data_8.mif
new file mode 100644
index 0000000000..2ffe10bc9e
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_8.mif
@@ -0,0 +1,104 @@
+WIDTH=32;
+DEPTH=128;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+    0  :             20;
+    1  :          10020;
+    2  :          20020;
+    3  :          30020;
+    4  :          40020;
+    5  :          50020;
+    6  :          60020;
+    7  :          70020;
+    8  :          80020;
+    9  :          90020;
+    a  :          a0020;
+    b  :          b0020;
+    c  :          c0020;
+    d  :          d0020;
+    e  :          e0020;
+    f  :          f0020;
+   10  :         100020;
+   11  :         110020;
+   12  :         120020;
+   13  :         130020;
+   14  :         140020;
+   15  :         150020;
+   16  :         160020;
+   17  :         170020;
+   18  :             21;
+   19  :          10021;
+   1a  :          20021;
+   1b  :          30021;
+   1c  :          40021;
+   1d  :          50021;
+   1e  :          60021;
+   1f  :          70021;
+   20  :          80021;
+   21  :          90021;
+   22  :          a0021;
+   23  :          b0021;
+   24  :          c0021;
+   25  :          d0021;
+   26  :          e0021;
+   27  :          f0021;
+   28  :         100021;
+   29  :         110021;
+   2a  :         120021;
+   2b  :         130021;
+   2c  :         140021;
+   2d  :         150021;
+   2e  :         160021;
+   2f  :         170021;
+   30  :             22;
+   31  :          10022;
+   32  :          20022;
+   33  :          30022;
+   34  :          40022;
+   35  :          50022;
+   36  :          60022;
+   37  :          70022;
+   38  :          80022;
+   39  :          90022;
+   3a  :          a0022;
+   3b  :          b0022;
+   3c  :          c0022;
+   3d  :          d0022;
+   3e  :          e0022;
+   3f  :          f0022;
+   40  :         100022;
+   41  :         110022;
+   42  :         120022;
+   43  :         130022;
+   44  :         140022;
+   45  :         150022;
+   46  :         160022;
+   47  :         170022;
+   48  :             23;
+   49  :          10023;
+   4a  :          20023;
+   4b  :          30023;
+   4c  :          40023;
+   4d  :          50023;
+   4e  :          60023;
+   4f  :          70023;
+   50  :          80023;
+   51  :          90023;
+   52  :          a0023;
+   53  :          b0023;
+   54  :          c0023;
+   55  :          d0023;
+   56  :          e0023;
+   57  :          f0023;
+   58  :         100023;
+   59  :         110023;
+   5a  :         120023;
+   5b  :         130023;
+   5c  :         140023;
+   5d  :         150023;
+   5e  :         160023;
+   5f  :         170023;
+END;
diff --git a/libraries/base/diag/src/data/bf_in_data_9.dat b/libraries/base/diag/src/data/bf_in_data_9.dat
new file mode 100644
index 0000000000..09265831e3
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_9.dat
@@ -0,0 +1,96 @@
+36   0
+36   1
+36   2
+36   3
+36   4
+36   5
+36   6
+36   7
+36   8
+36   9
+36   10
+36   11
+36   12
+36   13
+36   14
+36   15
+36   16
+36   17
+36   18
+36   19
+36   20
+36   21
+36   22
+36   23
+37   0
+37   1
+37   2
+37   3
+37   4
+37   5
+37   6
+37   7
+37   8
+37   9
+37   10
+37   11
+37   12
+37   13
+37   14
+37   15
+37   16
+37   17
+37   18
+37   19
+37   20
+37   21
+37   22
+37   23
+38   0
+38   1
+38   2
+38   3
+38   4
+38   5
+38   6
+38   7
+38   8
+38   9
+38   10
+38   11
+38   12
+38   13
+38   14
+38   15
+38   16
+38   17
+38   18
+38   19
+38   20
+38   21
+38   22
+38   23
+39   0
+39   1
+39   2
+39   3
+39   4
+39   5
+39   6
+39   7
+39   8
+39   9
+39   10
+39   11
+39   12
+39   13
+39   14
+39   15
+39   16
+39   17
+39   18
+39   19
+39   20
+39   21
+39   22
+39   23
diff --git a/libraries/base/diag/src/data/bf_in_data_9.hex b/libraries/base/diag/src/data/bf_in_data_9.hex
new file mode 100644
index 0000000000..ca2ca50e26
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_9.hex
@@ -0,0 +1,129 @@
+:0400000000000024D8
+:0400010000010024D6
+:0400020000020024D4
+:0400030000030024D2
+:0400040000040024D0
+:0400050000050024CE
+:0400060000060024CC
+:0400070000070024CA
+:0400080000080024C8
+:0400090000090024C6
+:04000A00000A0024C4
+:04000B00000B0024C2
+:04000C00000C0024C0
+:04000D00000D0024BE
+:04000E00000E0024BC
+:04000F00000F0024BA
+:0400100000100024B8
+:0400110000110024B6
+:0400120000120024B4
+:0400130000130024B2
+:0400140000140024B0
+:0400150000150024AE
+:0400160000160024AC
+:0400170000170024AA
+:0400180000000025BF
+:0400190000010025BD
+:04001A0000020025BB
+:04001B0000030025B9
+:04001C0000040025B7
+:04001D0000050025B5
+:04001E0000060025B3
+:04001F0000070025B1
+:0400200000080025AF
+:0400210000090025AD
+:04002200000A0025AB
+:04002300000B0025A9
+:04002400000C0025A7
+:04002500000D0025A5
+:04002600000E0025A3
+:04002700000F0025A1
+:04002800001000259F
+:04002900001100259D
+:04002A00001200259B
+:04002B000013002599
+:04002C000014002597
+:04002D000015002595
+:04002E000016002593
+:04002F000017002591
+:0400300000000026A6
+:0400310000010026A4
+:0400320000020026A2
+:0400330000030026A0
+:04003400000400269E
+:04003500000500269C
+:04003600000600269A
+:040037000007002698
+:040038000008002696
+:040039000009002694
+:04003A00000A002692
+:04003B00000B002690
+:04003C00000C00268E
+:04003D00000D00268C
+:04003E00000E00268A
+:04003F00000F002688
+:040040000010002686
+:040041000011002684
+:040042000012002682
+:040043000013002680
+:04004400001400267E
+:04004500001500267C
+:04004600001600267A
+:040047000017002678
+:04004800000000278D
+:04004900000100278B
+:04004A000002002789
+:04004B000003002787
+:04004C000004002785
+:04004D000005002783
+:04004E000006002781
+:04004F00000700277F
+:04005000000800277D
+:04005100000900277B
+:04005200000A002779
+:04005300000B002777
+:04005400000C002775
+:04005500000D002773
+:04005600000E002771
+:04005700000F00276F
+:04005800001000276D
+:04005900001100276B
+:04005A000012002769
+:04005B000013002767
+:04005C000014002765
+:04005D000015002763
+:04005E000016002761
+:04005F00001700275F
+:04006000000000009C
+:04006100000000009B
+:04006200000000009A
+:040063000000000099
+:040064000000000098
+:040065000000000097
+:040066000000000096
+:040067000000000095
+:040068000000000094
+:040069000000000093
+:04006A000000000092
+:04006B000000000091
+:04006C000000000090
+:04006D00000000008F
+:04006E00000000008E
+:04006F00000000008D
+:04007000000000008C
+:04007100000000008B
+:04007200000000008A
+:040073000000000089
+:040074000000000088
+:040075000000000087
+:040076000000000086
+:040077000000000085
+:040078000000000084
+:040079000000000083
+:04007A000000000082
+:04007B000000000081
+:04007C000000000080
+:04007D00000000007F
+:04007E00000000007E
+:04007F00000000007D
+:00000001FF
diff --git a/libraries/base/diag/src/data/bf_in_data_9.mif b/libraries/base/diag/src/data/bf_in_data_9.mif
new file mode 100644
index 0000000000..b3fc048644
--- /dev/null
+++ b/libraries/base/diag/src/data/bf_in_data_9.mif
@@ -0,0 +1,104 @@
+WIDTH=32;
+DEPTH=128;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+    0  :             24;
+    1  :          10024;
+    2  :          20024;
+    3  :          30024;
+    4  :          40024;
+    5  :          50024;
+    6  :          60024;
+    7  :          70024;
+    8  :          80024;
+    9  :          90024;
+    a  :          a0024;
+    b  :          b0024;
+    c  :          c0024;
+    d  :          d0024;
+    e  :          e0024;
+    f  :          f0024;
+   10  :         100024;
+   11  :         110024;
+   12  :         120024;
+   13  :         130024;
+   14  :         140024;
+   15  :         150024;
+   16  :         160024;
+   17  :         170024;
+   18  :             25;
+   19  :          10025;
+   1a  :          20025;
+   1b  :          30025;
+   1c  :          40025;
+   1d  :          50025;
+   1e  :          60025;
+   1f  :          70025;
+   20  :          80025;
+   21  :          90025;
+   22  :          a0025;
+   23  :          b0025;
+   24  :          c0025;
+   25  :          d0025;
+   26  :          e0025;
+   27  :          f0025;
+   28  :         100025;
+   29  :         110025;
+   2a  :         120025;
+   2b  :         130025;
+   2c  :         140025;
+   2d  :         150025;
+   2e  :         160025;
+   2f  :         170025;
+   30  :             26;
+   31  :          10026;
+   32  :          20026;
+   33  :          30026;
+   34  :          40026;
+   35  :          50026;
+   36  :          60026;
+   37  :          70026;
+   38  :          80026;
+   39  :          90026;
+   3a  :          a0026;
+   3b  :          b0026;
+   3c  :          c0026;
+   3d  :          d0026;
+   3e  :          e0026;
+   3f  :          f0026;
+   40  :         100026;
+   41  :         110026;
+   42  :         120026;
+   43  :         130026;
+   44  :         140026;
+   45  :         150026;
+   46  :         160026;
+   47  :         170026;
+   48  :             27;
+   49  :          10027;
+   4a  :          20027;
+   4b  :          30027;
+   4c  :          40027;
+   4d  :          50027;
+   4e  :          60027;
+   4f  :          70027;
+   50  :          80027;
+   51  :          90027;
+   52  :          a0027;
+   53  :          b0027;
+   54  :          c0027;
+   55  :          d0027;
+   56  :          e0027;
+   57  :          f0027;
+   58  :         100027;
+   59  :         110027;
+   5a  :         120027;
+   5b  :         130027;
+   5c  :         140027;
+   5d  :         150027;
+   5e  :         160027;
+   5f  :         170027;
+END;
diff --git a/libraries/base/diag/src/data/diag_block.hex b/libraries/base/diag/src/data/diag_block.hex
new file mode 100644
index 0000000000..9976ec9f77
--- /dev/null
+++ b/libraries/base/diag/src/data/diag_block.hex
@@ -0,0 +1,129 @@
+:0400000000000000FC
+:0400010000010001F9
+:0400020000020002F6
+:0400030000030003F3
+:0400040000040004F0
+:0400050000050005ED
+:0400060000060006EA
+:0400070000070007E7
+:0400080000080008E4
+:0400090000090009E1
+:04000A00000A000ADE
+:04000B00000B000BDB
+:04000C00000C000CD8
+:04000D00000D000DD5
+:04000E00000E000ED2
+:04000F00000F000FCF
+:0400100000100010CC
+:0400110000110011C9
+:0400120000120012C6
+:0400130000130013C3
+:0400140000140014C0
+:0400150000150015BD
+:0400160000160016BA
+:0400170000170017B7
+:0400180000180018B4
+:0400190000190019B1
+:04001A00001A001AAE
+:04001B00001B001BAB
+:04001C00001C001CA8
+:04001D00001D001DA5
+:04001E00001E001EA2
+:04001F00001F001F9F
+:04002000002000209C
+:040021000021002199
+:040022000022002296
+:040023000023002393
+:040024000024002490
+:04002500002500258D
+:04002600002600268A
+:040027000027002787
+:040028000028002884
+:040029000029002981
+:04002A00002A002A7E
+:04002B00002B002B7B
+:04002C00002C002C78
+:04002D00002D002D75
+:04002E00002E002E72
+:04002F00002F002F6F
+:04003000003000306C
+:040031000031003169
+:040032000032003266
+:040033000033003363
+:040034000034003460
+:04003500003500355D
+:04003600003600365A
+:040037000037003757
+:040038000038003854
+:040039000039003951
+:04003A00003A003A4E
+:04003B00003B003B4B
+:04003C00003C003C48
+:04003D00003D003D45
+:04003E00003E003E42
+:04003F00003F003F3F
+:04004000004000403C
+:040041000041004139
+:040042000042004236
+:040043000043004333
+:040044000044004430
+:04004500004500452D
+:04004600004600462A
+:040047000047004727
+:040048000048004824
+:040049000049004921
+:04004A00004A004A1E
+:04004B00004B004B1B
+:04004C00004C004C18
+:04004D00004D004D15
+:04004E00004E004E12
+:04004F00004F004F0F
+:04005000005000500C
+:040051000051005109
+:040052000052005206
+:040053000053005303
+:040054000054005400
+:0400550000550055FD
+:0400560000560056FA
+:0400570000570057F7
+:0400580000580058F4
+:0400590000590059F1
+:04005A00005A005AEE
+:04005B00005B005BEB
+:04005C00005C005CE8
+:04005D00005D005DE5
+:04005E00005E005EE2
+:04005F00005F005FDF
+:04006000000000009C
+:04006100000000009B
+:04006200000000009A
+:040063000000000099
+:040064000000000098
+:040065000000000097
+:040066000000000096
+:040067000000000095
+:040068000000000094
+:040069000000000093
+:04006A000000000092
+:04006B000000000091
+:04006C000000000090
+:04006D00000000008F
+:04006E00000000008E
+:04006F00000000008D
+:04007000000000008C
+:04007100000000008B
+:04007200000000008A
+:040073000000000089
+:040074000000000088
+:040075000000000087
+:040076000000000086
+:040077000000000085
+:040078000000000084
+:040079000000000083
+:04007A000000000082
+:04007B000000000081
+:04007C000000000080
+:04007D00000000007F
+:04007E00000000007E
+:04007F00000000007D
+:00000001FF
diff --git a/libraries/base/diag/src/data/diag_block.mif b/libraries/base/diag/src/data/diag_block.mif
new file mode 100644
index 0000000000..440b21ee63
--- /dev/null
+++ b/libraries/base/diag/src/data/diag_block.mif
@@ -0,0 +1,104 @@
+WIDTH=32;
+DEPTH=128;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+    0  :     00000000;
+    1  :     00010001;
+    2  :     00020002;
+    3  :     00030003;
+    4  :     00040004;
+    5  :     00050005;
+    6  :     00060006;
+    7  :     00070007;
+    8  :     00080008;
+    9  :     00090009;
+    a  :     000a000a;
+    b  :     000b000b;
+    c  :     000c000c;
+    d  :     000d000d;
+    e  :     000e000e;
+    f  :     000f000f;
+   10  :     00100010;
+   11  :     00110011;
+   12  :     00120012;
+   13  :     00130013;
+   14  :     00140014;
+   15  :     00150015;
+   16  :     00160016;
+   17  :     00170017;
+   18  :     00180018;
+   19  :     00190019;
+   1a  :     001a001a;
+   1b  :     001b001b;
+   1c  :     001c001c;
+   1d  :     001d001d;
+   1e  :     001e001e;
+   1f  :     001f001f;
+   20  :     00200020;
+   21  :     00210021;
+   22  :     00220022;
+   23  :     00230023;
+   24  :     00240024;
+   25  :     00250025;
+   26  :     00260026;
+   27  :     00270027;
+   28  :     00280028;
+   29  :     00290029;
+   2a  :     002a002a;
+   2b  :     002b002b;
+   2c  :     002c002c;
+   2d  :     002d002d;
+   2e  :     002e002e;
+   2f  :     002f002f;
+   30  :     00300030;
+   31  :     00310031;
+   32  :     00320032;
+   33  :     00330033;
+   34  :     00340034;
+   35  :     00350035;
+   36  :     00360036;
+   37  :     00370037;
+   38  :     00380038;
+   39  :     00390039;
+   3a  :     003a003a;
+   3b  :     003b003b;
+   3c  :     003c003c;
+   3d  :     003d003d;
+   3e  :     003e003e;
+   3f  :     003f003f;
+   40  :     00400040;
+   41  :     00410041;
+   42  :     00420042;
+   43  :     00430043;
+   44  :     00440044;
+   45  :     00450045;
+   46  :     00460046;
+   47  :     00470047;
+   48  :     00480048;
+   49  :     00490049;
+   4a  :     004a004a;
+   4b  :     004b004b;
+   4c  :     004c004c;
+   4d  :     004d004d;
+   4e  :     004e004e;
+   4f  :     004f004f;
+   50  :     00500050;
+   51  :     00510051;
+   52  :     00520052;
+   53  :     00530053;
+   54  :     00540054;
+   55  :     00550055;
+   56  :     00560056;
+   57  :     00570057;
+   58  :     00580058;
+   59  :     00590059;
+   5a  :     005a005a;
+   5b  :     005b005b;
+   5c  :     005c005c;
+   5d  :     005d005d;
+   5e  :     005e005e;
+   5f  :     005f005f;
+END;
diff --git a/libraries/base/diag/src/data/diag_cnt_2048x18.hex b/libraries/base/diag/src/data/diag_cnt_2048x18.hex
new file mode 100644
index 0000000000..aa584e318d
--- /dev/null
+++ b/libraries/base/diag/src/data/diag_cnt_2048x18.hex
@@ -0,0 +1,2049 @@
+:03000000000000fd
+:03000100000001fb
+:03000200000002f9
+:03000300000003f7
+:03000400000004f5
+:03000500000005f3
+:03000600000006f1
+:03000700000007ef
+:03000800000008ed
+:03000900000009eb
+:03000a0000000ae9
+:03000b0000000be7
+:03000c0000000ce5
+:03000d0000000de3
+:03000e0000000ee1
+:03000f0000000fdf
+:03001000000010dd
+:03001100000011db
+:03001200000012d9
+:03001300000013d7
+:03001400000014d5
+:03001500000015d3
+:03001600000016d1
+:03001700000017cf
+:03001800000018cd
+:03001900000019cb
+:03001a0000001ac9
+:03001b0000001bc7
+:03001c0000001cc5
+:03001d0000001dc3
+:03001e0000001ec1
+:03001f0000001fbf
+:03002000000020bd
+:03002100000021bb
+:03002200000022b9
+:03002300000023b7
+:03002400000024b5
+:03002500000025b3
+:03002600000026b1
+:03002700000027af
+:03002800000028ad
+:03002900000029ab
+:03002a0000002aa9
+:03002b0000002ba7
+:03002c0000002ca5
+:03002d0000002da3
+:03002e0000002ea1
+:03002f0000002f9f
+:030030000000309d
+:030031000000319b
+:0300320000003299
+:0300330000003397
+:0300340000003495
+:0300350000003593
+:0300360000003691
+:030037000000378f
+:030038000000388d
+:030039000000398b
+:03003a0000003a89
+:03003b0000003b87
+:03003c0000003c85
+:03003d0000003d83
+:03003e0000003e81
+:03003f0000003f7f
+:030040000000407d
+:030041000000417b
+:0300420000004279
+:0300430000004377
+:0300440000004475
+:0300450000004573
+:0300460000004671
+:030047000000476f
+:030048000000486d
+:030049000000496b
+:03004a0000004a69
+:03004b0000004b67
+:03004c0000004c65
+:03004d0000004d63
+:03004e0000004e61
+:03004f0000004f5f
+:030050000000505d
+:030051000000515b
+:0300520000005259
+:0300530000005357
+:0300540000005455
+:0300550000005553
+:0300560000005651
+:030057000000574f
+:030058000000584d
+:030059000000594b
+:03005a0000005a49
+:03005b0000005b47
+:03005c0000005c45
+:03005d0000005d43
+:03005e0000005e41
+:03005f0000005f3f
+:030060000000603d
+:030061000000613b
+:0300620000006239
+:0300630000006337
+:0300640000006435
+:0300650000006533
+:0300660000006631
+:030067000000672f
+:030068000000682d
+:030069000000692b
+:03006a0000006a29
+:03006b0000006b27
+:03006c0000006c25
+:03006d0000006d23
+:03006e0000006e21
+:03006f0000006f1f
+:030070000000701d
+:030071000000711b
+:0300720000007219
+:0300730000007317
+:0300740000007415
+:0300750000007513
+:0300760000007611
+:030077000000770f
+:030078000000780d
+:030079000000790b
+:03007a0000007a09
+:03007b0000007b07
+:03007c0000007c05
+:03007d0000007d03
+:03007e0000007e01
+:03007f0000007fff
+:03008000000080fd
+:03008100000081fb
+:03008200000082f9
+:03008300000083f7
+:03008400000084f5
+:03008500000085f3
+:03008600000086f1
+:03008700000087ef
+:03008800000088ed
+:03008900000089eb
+:03008a0000008ae9
+:03008b0000008be7
+:03008c0000008ce5
+:03008d0000008de3
+:03008e0000008ee1
+:03008f0000008fdf
+:03009000000090dd
+:03009100000091db
+:03009200000092d9
+:03009300000093d7
+:03009400000094d5
+:03009500000095d3
+:03009600000096d1
+:03009700000097cf
+:03009800000098cd
+:03009900000099cb
+:03009a0000009ac9
+:03009b0000009bc7
+:03009c0000009cc5
+:03009d0000009dc3
+:03009e0000009ec1
+:03009f0000009fbf
+:0300a0000000a0bd
+:0300a1000000a1bb
+:0300a2000000a2b9
+:0300a3000000a3b7
+:0300a4000000a4b5
+:0300a5000000a5b3
+:0300a6000000a6b1
+:0300a7000000a7af
+:0300a8000000a8ad
+:0300a9000000a9ab
+:0300aa000000aaa9
+:0300ab000000aba7
+:0300ac000000aca5
+:0300ad000000ada3
+:0300ae000000aea1
+:0300af000000af9f
+:0300b0000000b09d
+:0300b1000000b19b
+:0300b2000000b299
+:0300b3000000b397
+:0300b4000000b495
+:0300b5000000b593
+:0300b6000000b691
+:0300b7000000b78f
+:0300b8000000b88d
+:0300b9000000b98b
+:0300ba000000ba89
+:0300bb000000bb87
+:0300bc000000bc85
+:0300bd000000bd83
+:0300be000000be81
+:0300bf000000bf7f
+:0300c0000000c07d
+:0300c1000000c17b
+:0300c2000000c279
+:0300c3000000c377
+:0300c4000000c475
+:0300c5000000c573
+:0300c6000000c671
+:0300c7000000c76f
+:0300c8000000c86d
+:0300c9000000c96b
+:0300ca000000ca69
+:0300cb000000cb67
+:0300cc000000cc65
+:0300cd000000cd63
+:0300ce000000ce61
+:0300cf000000cf5f
+:0300d0000000d05d
+:0300d1000000d15b
+:0300d2000000d259
+:0300d3000000d357
+:0300d4000000d455
+:0300d5000000d553
+:0300d6000000d651
+:0300d7000000d74f
+:0300d8000000d84d
+:0300d9000000d94b
+:0300da000000da49
+:0300db000000db47
+:0300dc000000dc45
+:0300dd000000dd43
+:0300de000000de41
+:0300df000000df3f
+:0300e0000000e03d
+:0300e1000000e13b
+:0300e2000000e239
+:0300e3000000e337
+:0300e4000000e435
+:0300e5000000e533
+:0300e6000000e631
+:0300e7000000e72f
+:0300e8000000e82d
+:0300e9000000e92b
+:0300ea000000ea29
+:0300eb000000eb27
+:0300ec000000ec25
+:0300ed000000ed23
+:0300ee000000ee21
+:0300ef000000ef1f
+:0300f0000000f01d
+:0300f1000000f11b
+:0300f2000000f219
+:0300f3000000f317
+:0300f4000000f415
+:0300f5000000f513
+:0300f6000000f611
+:0300f7000000f70f
+:0300f8000000f80d
+:0300f9000000f90b
+:0300fa000000fa09
+:0300fb000000fb07
+:0300fc000000fc05
+:0300fd000000fd03
+:0300fe000000fe01
+:0300ff000000ffff
+:03010000000100fb
+:03010100000101f9
+:03010200000102f7
+:03010300000103f5
+:03010400000104f3
+:03010500000105f1
+:03010600000106ef
+:03010700000107ed
+:03010800000108eb
+:03010900000109e9
+:03010a0000010ae7
+:03010b0000010be5
+:03010c0000010ce3
+:03010d0000010de1
+:03010e0000010edf
+:03010f0000010fdd
+:03011000000110db
+:03011100000111d9
+:03011200000112d7
+:03011300000113d5
+:03011400000114d3
+:03011500000115d1
+:03011600000116cf
+:03011700000117cd
+:03011800000118cb
+:03011900000119c9
+:03011a0000011ac7
+:03011b0000011bc5
+:03011c0000011cc3
+:03011d0000011dc1
+:03011e0000011ebf
+:03011f0000011fbd
+:03012000000120bb
+:03012100000121b9
+:03012200000122b7
+:03012300000123b5
+:03012400000124b3
+:03012500000125b1
+:03012600000126af
+:03012700000127ad
+:03012800000128ab
+:03012900000129a9
+:03012a0000012aa7
+:03012b0000012ba5
+:03012c0000012ca3
+:03012d0000012da1
+:03012e0000012e9f
+:03012f0000012f9d
+:030130000001309b
+:0301310000013199
+:0301320000013297
+:0301330000013395
+:0301340000013493
+:0301350000013591
+:030136000001368f
+:030137000001378d
+:030138000001388b
+:0301390000013989
+:03013a0000013a87
+:03013b0000013b85
+:03013c0000013c83
+:03013d0000013d81
+:03013e0000013e7f
+:03013f0000013f7d
+:030140000001407b
+:0301410000014179
+:0301420000014277
+:0301430000014375
+:0301440000014473
+:0301450000014571
+:030146000001466f
+:030147000001476d
+:030148000001486b
+:0301490000014969
+:03014a0000014a67
+:03014b0000014b65
+:03014c0000014c63
+:03014d0000014d61
+:03014e0000014e5f
+:03014f0000014f5d
+:030150000001505b
+:0301510000015159
+:0301520000015257
+:0301530000015355
+:0301540000015453
+:0301550000015551
+:030156000001564f
+:030157000001574d
+:030158000001584b
+:0301590000015949
+:03015a0000015a47
+:03015b0000015b45
+:03015c0000015c43
+:03015d0000015d41
+:03015e0000015e3f
+:03015f0000015f3d
+:030160000001603b
+:0301610000016139
+:0301620000016237
+:0301630000016335
+:0301640000016433
+:0301650000016531
+:030166000001662f
+:030167000001672d
+:030168000001682b
+:0301690000016929
+:03016a0000016a27
+:03016b0000016b25
+:03016c0000016c23
+:03016d0000016d21
+:03016e0000016e1f
+:03016f0000016f1d
+:030170000001701b
+:0301710000017119
+:0301720000017217
+:0301730000017315
+:0301740000017413
+:0301750000017511
+:030176000001760f
+:030177000001770d
+:030178000001780b
+:0301790000017909
+:03017a0000017a07
+:03017b0000017b05
+:03017c0000017c03
+:03017d0000017d01
+:03017e0000017eff
+:03017f0000017ffd
+:03018000000180fb
+:03018100000181f9
+:03018200000182f7
+:03018300000183f5
+:03018400000184f3
+:03018500000185f1
+:03018600000186ef
+:03018700000187ed
+:03018800000188eb
+:03018900000189e9
+:03018a0000018ae7
+:03018b0000018be5
+:03018c0000018ce3
+:03018d0000018de1
+:03018e0000018edf
+:03018f0000018fdd
+:03019000000190db
+:03019100000191d9
+:03019200000192d7
+:03019300000193d5
+:03019400000194d3
+:03019500000195d1
+:03019600000196cf
+:03019700000197cd
+:03019800000198cb
+:03019900000199c9
+:03019a0000019ac7
+:03019b0000019bc5
+:03019c0000019cc3
+:03019d0000019dc1
+:03019e0000019ebf
+:03019f0000019fbd
+:0301a0000001a0bb
+:0301a1000001a1b9
+:0301a2000001a2b7
+:0301a3000001a3b5
+:0301a4000001a4b3
+:0301a5000001a5b1
+:0301a6000001a6af
+:0301a7000001a7ad
+:0301a8000001a8ab
+:0301a9000001a9a9
+:0301aa000001aaa7
+:0301ab000001aba5
+:0301ac000001aca3
+:0301ad000001ada1
+:0301ae000001ae9f
+:0301af000001af9d
+:0301b0000001b09b
+:0301b1000001b199
+:0301b2000001b297
+:0301b3000001b395
+:0301b4000001b493
+:0301b5000001b591
+:0301b6000001b68f
+:0301b7000001b78d
+:0301b8000001b88b
+:0301b9000001b989
+:0301ba000001ba87
+:0301bb000001bb85
+:0301bc000001bc83
+:0301bd000001bd81
+:0301be000001be7f
+:0301bf000001bf7d
+:0301c0000001c07b
+:0301c1000001c179
+:0301c2000001c277
+:0301c3000001c375
+:0301c4000001c473
+:0301c5000001c571
+:0301c6000001c66f
+:0301c7000001c76d
+:0301c8000001c86b
+:0301c9000001c969
+:0301ca000001ca67
+:0301cb000001cb65
+:0301cc000001cc63
+:0301cd000001cd61
+:0301ce000001ce5f
+:0301cf000001cf5d
+:0301d0000001d05b
+:0301d1000001d159
+:0301d2000001d257
+:0301d3000001d355
+:0301d4000001d453
+:0301d5000001d551
+:0301d6000001d64f
+:0301d7000001d74d
+:0301d8000001d84b
+:0301d9000001d949
+:0301da000001da47
+:0301db000001db45
+:0301dc000001dc43
+:0301dd000001dd41
+:0301de000001de3f
+:0301df000001df3d
+:0301e0000001e03b
+:0301e1000001e139
+:0301e2000001e237
+:0301e3000001e335
+:0301e4000001e433
+:0301e5000001e531
+:0301e6000001e62f
+:0301e7000001e72d
+:0301e8000001e82b
+:0301e9000001e929
+:0301ea000001ea27
+:0301eb000001eb25
+:0301ec000001ec23
+:0301ed000001ed21
+:0301ee000001ee1f
+:0301ef000001ef1d
+:0301f0000001f01b
+:0301f1000001f119
+:0301f2000001f217
+:0301f3000001f315
+:0301f4000001f413
+:0301f5000001f511
+:0301f6000001f60f
+:0301f7000001f70d
+:0301f8000001f80b
+:0301f9000001f909
+:0301fa000001fa07
+:0301fb000001fb05
+:0301fc000001fc03
+:0301fd000001fd01
+:0301fe000001feff
+:0301ff000001fffd
+:03020000000200f9
+:03020100000201f7
+:03020200000202f5
+:03020300000203f3
+:03020400000204f1
+:03020500000205ef
+:03020600000206ed
+:03020700000207eb
+:03020800000208e9
+:03020900000209e7
+:03020a0000020ae5
+:03020b0000020be3
+:03020c0000020ce1
+:03020d0000020ddf
+:03020e0000020edd
+:03020f0000020fdb
+:03021000000210d9
+:03021100000211d7
+:03021200000212d5
+:03021300000213d3
+:03021400000214d1
+:03021500000215cf
+:03021600000216cd
+:03021700000217cb
+:03021800000218c9
+:03021900000219c7
+:03021a0000021ac5
+:03021b0000021bc3
+:03021c0000021cc1
+:03021d0000021dbf
+:03021e0000021ebd
+:03021f0000021fbb
+:03022000000220b9
+:03022100000221b7
+:03022200000222b5
+:03022300000223b3
+:03022400000224b1
+:03022500000225af
+:03022600000226ad
+:03022700000227ab
+:03022800000228a9
+:03022900000229a7
+:03022a0000022aa5
+:03022b0000022ba3
+:03022c0000022ca1
+:03022d0000022d9f
+:03022e0000022e9d
+:03022f0000022f9b
+:0302300000023099
+:0302310000023197
+:0302320000023295
+:0302330000023393
+:0302340000023491
+:030235000002358f
+:030236000002368d
+:030237000002378b
+:0302380000023889
+:0302390000023987
+:03023a0000023a85
+:03023b0000023b83
+:03023c0000023c81
+:03023d0000023d7f
+:03023e0000023e7d
+:03023f0000023f7b
+:0302400000024079
+:0302410000024177
+:0302420000024275
+:0302430000024373
+:0302440000024471
+:030245000002456f
+:030246000002466d
+:030247000002476b
+:0302480000024869
+:0302490000024967
+:03024a0000024a65
+:03024b0000024b63
+:03024c0000024c61
+:03024d0000024d5f
+:03024e0000024e5d
+:03024f0000024f5b
+:0302500000025059
+:0302510000025157
+:0302520000025255
+:0302530000025353
+:0302540000025451
+:030255000002554f
+:030256000002564d
+:030257000002574b
+:0302580000025849
+:0302590000025947
+:03025a0000025a45
+:03025b0000025b43
+:03025c0000025c41
+:03025d0000025d3f
+:03025e0000025e3d
+:03025f0000025f3b
+:0302600000026039
+:0302610000026137
+:0302620000026235
+:0302630000026333
+:0302640000026431
+:030265000002652f
+:030266000002662d
+:030267000002672b
+:0302680000026829
+:0302690000026927
+:03026a0000026a25
+:03026b0000026b23
+:03026c0000026c21
+:03026d0000026d1f
+:03026e0000026e1d
+:03026f0000026f1b
+:0302700000027019
+:0302710000027117
+:0302720000027215
+:0302730000027313
+:0302740000027411
+:030275000002750f
+:030276000002760d
+:030277000002770b
+:0302780000027809
+:0302790000027907
+:03027a0000027a05
+:03027b0000027b03
+:03027c0000027c01
+:03027d0000027dff
+:03027e0000027efd
+:03027f0000027ffb
+:03028000000280f9
+:03028100000281f7
+:03028200000282f5
+:03028300000283f3
+:03028400000284f1
+:03028500000285ef
+:03028600000286ed
+:03028700000287eb
+:03028800000288e9
+:03028900000289e7
+:03028a0000028ae5
+:03028b0000028be3
+:03028c0000028ce1
+:03028d0000028ddf
+:03028e0000028edd
+:03028f0000028fdb
+:03029000000290d9
+:03029100000291d7
+:03029200000292d5
+:03029300000293d3
+:03029400000294d1
+:03029500000295cf
+:03029600000296cd
+:03029700000297cb
+:03029800000298c9
+:03029900000299c7
+:03029a0000029ac5
+:03029b0000029bc3
+:03029c0000029cc1
+:03029d0000029dbf
+:03029e0000029ebd
+:03029f0000029fbb
+:0302a0000002a0b9
+:0302a1000002a1b7
+:0302a2000002a2b5
+:0302a3000002a3b3
+:0302a4000002a4b1
+:0302a5000002a5af
+:0302a6000002a6ad
+:0302a7000002a7ab
+:0302a8000002a8a9
+:0302a9000002a9a7
+:0302aa000002aaa5
+:0302ab000002aba3
+:0302ac000002aca1
+:0302ad000002ad9f
+:0302ae000002ae9d
+:0302af000002af9b
+:0302b0000002b099
+:0302b1000002b197
+:0302b2000002b295
+:0302b3000002b393
+:0302b4000002b491
+:0302b5000002b58f
+:0302b6000002b68d
+:0302b7000002b78b
+:0302b8000002b889
+:0302b9000002b987
+:0302ba000002ba85
+:0302bb000002bb83
+:0302bc000002bc81
+:0302bd000002bd7f
+:0302be000002be7d
+:0302bf000002bf7b
+:0302c0000002c079
+:0302c1000002c177
+:0302c2000002c275
+:0302c3000002c373
+:0302c4000002c471
+:0302c5000002c56f
+:0302c6000002c66d
+:0302c7000002c76b
+:0302c8000002c869
+:0302c9000002c967
+:0302ca000002ca65
+:0302cb000002cb63
+:0302cc000002cc61
+:0302cd000002cd5f
+:0302ce000002ce5d
+:0302cf000002cf5b
+:0302d0000002d059
+:0302d1000002d157
+:0302d2000002d255
+:0302d3000002d353
+:0302d4000002d451
+:0302d5000002d54f
+:0302d6000002d64d
+:0302d7000002d74b
+:0302d8000002d849
+:0302d9000002d947
+:0302da000002da45
+:0302db000002db43
+:0302dc000002dc41
+:0302dd000002dd3f
+:0302de000002de3d
+:0302df000002df3b
+:0302e0000002e039
+:0302e1000002e137
+:0302e2000002e235
+:0302e3000002e333
+:0302e4000002e431
+:0302e5000002e52f
+:0302e6000002e62d
+:0302e7000002e72b
+:0302e8000002e829
+:0302e9000002e927
+:0302ea000002ea25
+:0302eb000002eb23
+:0302ec000002ec21
+:0302ed000002ed1f
+:0302ee000002ee1d
+:0302ef000002ef1b
+:0302f0000002f019
+:0302f1000002f117
+:0302f2000002f215
+:0302f3000002f313
+:0302f4000002f411
+:0302f5000002f50f
+:0302f6000002f60d
+:0302f7000002f70b
+:0302f8000002f809
+:0302f9000002f907
+:0302fa000002fa05
+:0302fb000002fb03
+:0302fc000002fc01
+:0302fd000002fdff
+:0302fe000002fefd
+:0302ff000002fffb
+:03030000000300f7
+:03030100000301f5
+:03030200000302f3
+:03030300000303f1
+:03030400000304ef
+:03030500000305ed
+:03030600000306eb
+:03030700000307e9
+:03030800000308e7
+:03030900000309e5
+:03030a0000030ae3
+:03030b0000030be1
+:03030c0000030cdf
+:03030d0000030ddd
+:03030e0000030edb
+:03030f0000030fd9
+:03031000000310d7
+:03031100000311d5
+:03031200000312d3
+:03031300000313d1
+:03031400000314cf
+:03031500000315cd
+:03031600000316cb
+:03031700000317c9
+:03031800000318c7
+:03031900000319c5
+:03031a0000031ac3
+:03031b0000031bc1
+:03031c0000031cbf
+:03031d0000031dbd
+:03031e0000031ebb
+:03031f0000031fb9
+:03032000000320b7
+:03032100000321b5
+:03032200000322b3
+:03032300000323b1
+:03032400000324af
+:03032500000325ad
+:03032600000326ab
+:03032700000327a9
+:03032800000328a7
+:03032900000329a5
+:03032a0000032aa3
+:03032b0000032ba1
+:03032c0000032c9f
+:03032d0000032d9d
+:03032e0000032e9b
+:03032f0000032f99
+:0303300000033097
+:0303310000033195
+:0303320000033293
+:0303330000033391
+:030334000003348f
+:030335000003358d
+:030336000003368b
+:0303370000033789
+:0303380000033887
+:0303390000033985
+:03033a0000033a83
+:03033b0000033b81
+:03033c0000033c7f
+:03033d0000033d7d
+:03033e0000033e7b
+:03033f0000033f79
+:0303400000034077
+:0303410000034175
+:0303420000034273
+:0303430000034371
+:030344000003446f
+:030345000003456d
+:030346000003466b
+:0303470000034769
+:0303480000034867
+:0303490000034965
+:03034a0000034a63
+:03034b0000034b61
+:03034c0000034c5f
+:03034d0000034d5d
+:03034e0000034e5b
+:03034f0000034f59
+:0303500000035057
+:0303510000035155
+:0303520000035253
+:0303530000035351
+:030354000003544f
+:030355000003554d
+:030356000003564b
+:0303570000035749
+:0303580000035847
+:0303590000035945
+:03035a0000035a43
+:03035b0000035b41
+:03035c0000035c3f
+:03035d0000035d3d
+:03035e0000035e3b
+:03035f0000035f39
+:0303600000036037
+:0303610000036135
+:0303620000036233
+:0303630000036331
+:030364000003642f
+:030365000003652d
+:030366000003662b
+:0303670000036729
+:0303680000036827
+:0303690000036925
+:03036a0000036a23
+:03036b0000036b21
+:03036c0000036c1f
+:03036d0000036d1d
+:03036e0000036e1b
+:03036f0000036f19
+:0303700000037017
+:0303710000037115
+:0303720000037213
+:0303730000037311
+:030374000003740f
+:030375000003750d
+:030376000003760b
+:0303770000037709
+:0303780000037807
+:0303790000037905
+:03037a0000037a03
+:03037b0000037b01
+:03037c0000037cff
+:03037d0000037dfd
+:03037e0000037efb
+:03037f0000037ff9
+:03038000000380f7
+:03038100000381f5
+:03038200000382f3
+:03038300000383f1
+:03038400000384ef
+:03038500000385ed
+:03038600000386eb
+:03038700000387e9
+:03038800000388e7
+:03038900000389e5
+:03038a0000038ae3
+:03038b0000038be1
+:03038c0000038cdf
+:03038d0000038ddd
+:03038e0000038edb
+:03038f0000038fd9
+:03039000000390d7
+:03039100000391d5
+:03039200000392d3
+:03039300000393d1
+:03039400000394cf
+:03039500000395cd
+:03039600000396cb
+:03039700000397c9
+:03039800000398c7
+:03039900000399c5
+:03039a0000039ac3
+:03039b0000039bc1
+:03039c0000039cbf
+:03039d0000039dbd
+:03039e0000039ebb
+:03039f0000039fb9
+:0303a0000003a0b7
+:0303a1000003a1b5
+:0303a2000003a2b3
+:0303a3000003a3b1
+:0303a4000003a4af
+:0303a5000003a5ad
+:0303a6000003a6ab
+:0303a7000003a7a9
+:0303a8000003a8a7
+:0303a9000003a9a5
+:0303aa000003aaa3
+:0303ab000003aba1
+:0303ac000003ac9f
+:0303ad000003ad9d
+:0303ae000003ae9b
+:0303af000003af99
+:0303b0000003b097
+:0303b1000003b195
+:0303b2000003b293
+:0303b3000003b391
+:0303b4000003b48f
+:0303b5000003b58d
+:0303b6000003b68b
+:0303b7000003b789
+:0303b8000003b887
+:0303b9000003b985
+:0303ba000003ba83
+:0303bb000003bb81
+:0303bc000003bc7f
+:0303bd000003bd7d
+:0303be000003be7b
+:0303bf000003bf79
+:0303c0000003c077
+:0303c1000003c175
+:0303c2000003c273
+:0303c3000003c371
+:0303c4000003c46f
+:0303c5000003c56d
+:0303c6000003c66b
+:0303c7000003c769
+:0303c8000003c867
+:0303c9000003c965
+:0303ca000003ca63
+:0303cb000003cb61
+:0303cc000003cc5f
+:0303cd000003cd5d
+:0303ce000003ce5b
+:0303cf000003cf59
+:0303d0000003d057
+:0303d1000003d155
+:0303d2000003d253
+:0303d3000003d351
+:0303d4000003d44f
+:0303d5000003d54d
+:0303d6000003d64b
+:0303d7000003d749
+:0303d8000003d847
+:0303d9000003d945
+:0303da000003da43
+:0303db000003db41
+:0303dc000003dc3f
+:0303dd000003dd3d
+:0303de000003de3b
+:0303df000003df39
+:0303e0000003e037
+:0303e1000003e135
+:0303e2000003e233
+:0303e3000003e331
+:0303e4000003e42f
+:0303e5000003e52d
+:0303e6000003e62b
+:0303e7000003e729
+:0303e8000003e827
+:0303e9000003e925
+:0303ea000003ea23
+:0303eb000003eb21
+:0303ec000003ec1f
+:0303ed000003ed1d
+:0303ee000003ee1b
+:0303ef000003ef19
+:0303f0000003f017
+:0303f1000003f115
+:0303f2000003f213
+:0303f3000003f311
+:0303f4000003f40f
+:0303f5000003f50d
+:0303f6000003f60b
+:0303f7000003f709
+:0303f8000003f807
+:0303f9000003f905
+:0303fa000003fa03
+:0303fb000003fb01
+:0303fc000003fcff
+:0303fd000003fdfd
+:0303fe000003fefb
+:0303ff000003fff9
+:03040000000400f5
+:03040100000401f3
+:03040200000402f1
+:03040300000403ef
+:03040400000404ed
+:03040500000405eb
+:03040600000406e9
+:03040700000407e7
+:03040800000408e5
+:03040900000409e3
+:03040a0000040ae1
+:03040b0000040bdf
+:03040c0000040cdd
+:03040d0000040ddb
+:03040e0000040ed9
+:03040f0000040fd7
+:03041000000410d5
+:03041100000411d3
+:03041200000412d1
+:03041300000413cf
+:03041400000414cd
+:03041500000415cb
+:03041600000416c9
+:03041700000417c7
+:03041800000418c5
+:03041900000419c3
+:03041a0000041ac1
+:03041b0000041bbf
+:03041c0000041cbd
+:03041d0000041dbb
+:03041e0000041eb9
+:03041f0000041fb7
+:03042000000420b5
+:03042100000421b3
+:03042200000422b1
+:03042300000423af
+:03042400000424ad
+:03042500000425ab
+:03042600000426a9
+:03042700000427a7
+:03042800000428a5
+:03042900000429a3
+:03042a0000042aa1
+:03042b0000042b9f
+:03042c0000042c9d
+:03042d0000042d9b
+:03042e0000042e99
+:03042f0000042f97
+:0304300000043095
+:0304310000043193
+:0304320000043291
+:030433000004338f
+:030434000004348d
+:030435000004358b
+:0304360000043689
+:0304370000043787
+:0304380000043885
+:0304390000043983
+:03043a0000043a81
+:03043b0000043b7f
+:03043c0000043c7d
+:03043d0000043d7b
+:03043e0000043e79
+:03043f0000043f77
+:0304400000044075
+:0304410000044173
+:0304420000044271
+:030443000004436f
+:030444000004446d
+:030445000004456b
+:0304460000044669
+:0304470000044767
+:0304480000044865
+:0304490000044963
+:03044a0000044a61
+:03044b0000044b5f
+:03044c0000044c5d
+:03044d0000044d5b
+:03044e0000044e59
+:03044f0000044f57
+:0304500000045055
+:0304510000045153
+:0304520000045251
+:030453000004534f
+:030454000004544d
+:030455000004554b
+:0304560000045649
+:0304570000045747
+:0304580000045845
+:0304590000045943
+:03045a0000045a41
+:03045b0000045b3f
+:03045c0000045c3d
+:03045d0000045d3b
+:03045e0000045e39
+:03045f0000045f37
+:0304600000046035
+:0304610000046133
+:0304620000046231
+:030463000004632f
+:030464000004642d
+:030465000004652b
+:0304660000046629
+:0304670000046727
+:0304680000046825
+:0304690000046923
+:03046a0000046a21
+:03046b0000046b1f
+:03046c0000046c1d
+:03046d0000046d1b
+:03046e0000046e19
+:03046f0000046f17
+:0304700000047015
+:0304710000047113
+:0304720000047211
+:030473000004730f
+:030474000004740d
+:030475000004750b
+:0304760000047609
+:0304770000047707
+:0304780000047805
+:0304790000047903
+:03047a0000047a01
+:03047b0000047bff
+:03047c0000047cfd
+:03047d0000047dfb
+:03047e0000047ef9
+:03047f0000047ff7
+:03048000000480f5
+:03048100000481f3
+:03048200000482f1
+:03048300000483ef
+:03048400000484ed
+:03048500000485eb
+:03048600000486e9
+:03048700000487e7
+:03048800000488e5
+:03048900000489e3
+:03048a0000048ae1
+:03048b0000048bdf
+:03048c0000048cdd
+:03048d0000048ddb
+:03048e0000048ed9
+:03048f0000048fd7
+:03049000000490d5
+:03049100000491d3
+:03049200000492d1
+:03049300000493cf
+:03049400000494cd
+:03049500000495cb
+:03049600000496c9
+:03049700000497c7
+:03049800000498c5
+:03049900000499c3
+:03049a0000049ac1
+:03049b0000049bbf
+:03049c0000049cbd
+:03049d0000049dbb
+:03049e0000049eb9
+:03049f0000049fb7
+:0304a0000004a0b5
+:0304a1000004a1b3
+:0304a2000004a2b1
+:0304a3000004a3af
+:0304a4000004a4ad
+:0304a5000004a5ab
+:0304a6000004a6a9
+:0304a7000004a7a7
+:0304a8000004a8a5
+:0304a9000004a9a3
+:0304aa000004aaa1
+:0304ab000004ab9f
+:0304ac000004ac9d
+:0304ad000004ad9b
+:0304ae000004ae99
+:0304af000004af97
+:0304b0000004b095
+:0304b1000004b193
+:0304b2000004b291
+:0304b3000004b38f
+:0304b4000004b48d
+:0304b5000004b58b
+:0304b6000004b689
+:0304b7000004b787
+:0304b8000004b885
+:0304b9000004b983
+:0304ba000004ba81
+:0304bb000004bb7f
+:0304bc000004bc7d
+:0304bd000004bd7b
+:0304be000004be79
+:0304bf000004bf77
+:0304c0000004c075
+:0304c1000004c173
+:0304c2000004c271
+:0304c3000004c36f
+:0304c4000004c46d
+:0304c5000004c56b
+:0304c6000004c669
+:0304c7000004c767
+:0304c8000004c865
+:0304c9000004c963
+:0304ca000004ca61
+:0304cb000004cb5f
+:0304cc000004cc5d
+:0304cd000004cd5b
+:0304ce000004ce59
+:0304cf000004cf57
+:0304d0000004d055
+:0304d1000004d153
+:0304d2000004d251
+:0304d3000004d34f
+:0304d4000004d44d
+:0304d5000004d54b
+:0304d6000004d649
+:0304d7000004d747
+:0304d8000004d845
+:0304d9000004d943
+:0304da000004da41
+:0304db000004db3f
+:0304dc000004dc3d
+:0304dd000004dd3b
+:0304de000004de39
+:0304df000004df37
+:0304e0000004e035
+:0304e1000004e133
+:0304e2000004e231
+:0304e3000004e32f
+:0304e4000004e42d
+:0304e5000004e52b
+:0304e6000004e629
+:0304e7000004e727
+:0304e8000004e825
+:0304e9000004e923
+:0304ea000004ea21
+:0304eb000004eb1f
+:0304ec000004ec1d
+:0304ed000004ed1b
+:0304ee000004ee19
+:0304ef000004ef17
+:0304f0000004f015
+:0304f1000004f113
+:0304f2000004f211
+:0304f3000004f30f
+:0304f4000004f40d
+:0304f5000004f50b
+:0304f6000004f609
+:0304f7000004f707
+:0304f8000004f805
+:0304f9000004f903
+:0304fa000004fa01
+:0304fb000004fbff
+:0304fc000004fcfd
+:0304fd000004fdfb
+:0304fe000004fef9
+:0304ff000004fff7
+:03050000000500f3
+:03050100000501f1
+:03050200000502ef
+:03050300000503ed
+:03050400000504eb
+:03050500000505e9
+:03050600000506e7
+:03050700000507e5
+:03050800000508e3
+:03050900000509e1
+:03050a0000050adf
+:03050b0000050bdd
+:03050c0000050cdb
+:03050d0000050dd9
+:03050e0000050ed7
+:03050f0000050fd5
+:03051000000510d3
+:03051100000511d1
+:03051200000512cf
+:03051300000513cd
+:03051400000514cb
+:03051500000515c9
+:03051600000516c7
+:03051700000517c5
+:03051800000518c3
+:03051900000519c1
+:03051a0000051abf
+:03051b0000051bbd
+:03051c0000051cbb
+:03051d0000051db9
+:03051e0000051eb7
+:03051f0000051fb5
+:03052000000520b3
+:03052100000521b1
+:03052200000522af
+:03052300000523ad
+:03052400000524ab
+:03052500000525a9
+:03052600000526a7
+:03052700000527a5
+:03052800000528a3
+:03052900000529a1
+:03052a0000052a9f
+:03052b0000052b9d
+:03052c0000052c9b
+:03052d0000052d99
+:03052e0000052e97
+:03052f0000052f95
+:0305300000053093
+:0305310000053191
+:030532000005328f
+:030533000005338d
+:030534000005348b
+:0305350000053589
+:0305360000053687
+:0305370000053785
+:0305380000053883
+:0305390000053981
+:03053a0000053a7f
+:03053b0000053b7d
+:03053c0000053c7b
+:03053d0000053d79
+:03053e0000053e77
+:03053f0000053f75
+:0305400000054073
+:0305410000054171
+:030542000005426f
+:030543000005436d
+:030544000005446b
+:0305450000054569
+:0305460000054667
+:0305470000054765
+:0305480000054863
+:0305490000054961
+:03054a0000054a5f
+:03054b0000054b5d
+:03054c0000054c5b
+:03054d0000054d59
+:03054e0000054e57
+:03054f0000054f55
+:0305500000055053
+:0305510000055151
+:030552000005524f
+:030553000005534d
+:030554000005544b
+:0305550000055549
+:0305560000055647
+:0305570000055745
+:0305580000055843
+:0305590000055941
+:03055a0000055a3f
+:03055b0000055b3d
+:03055c0000055c3b
+:03055d0000055d39
+:03055e0000055e37
+:03055f0000055f35
+:0305600000056033
+:0305610000056131
+:030562000005622f
+:030563000005632d
+:030564000005642b
+:0305650000056529
+:0305660000056627
+:0305670000056725
+:0305680000056823
+:0305690000056921
+:03056a0000056a1f
+:03056b0000056b1d
+:03056c0000056c1b
+:03056d0000056d19
+:03056e0000056e17
+:03056f0000056f15
+:0305700000057013
+:0305710000057111
+:030572000005720f
+:030573000005730d
+:030574000005740b
+:0305750000057509
+:0305760000057607
+:0305770000057705
+:0305780000057803
+:0305790000057901
+:03057a0000057aff
+:03057b0000057bfd
+:03057c0000057cfb
+:03057d0000057df9
+:03057e0000057ef7
+:03057f0000057ff5
+:03058000000580f3
+:03058100000581f1
+:03058200000582ef
+:03058300000583ed
+:03058400000584eb
+:03058500000585e9
+:03058600000586e7
+:03058700000587e5
+:03058800000588e3
+:03058900000589e1
+:03058a0000058adf
+:03058b0000058bdd
+:03058c0000058cdb
+:03058d0000058dd9
+:03058e0000058ed7
+:03058f0000058fd5
+:03059000000590d3
+:03059100000591d1
+:03059200000592cf
+:03059300000593cd
+:03059400000594cb
+:03059500000595c9
+:03059600000596c7
+:03059700000597c5
+:03059800000598c3
+:03059900000599c1
+:03059a0000059abf
+:03059b0000059bbd
+:03059c0000059cbb
+:03059d0000059db9
+:03059e0000059eb7
+:03059f0000059fb5
+:0305a0000005a0b3
+:0305a1000005a1b1
+:0305a2000005a2af
+:0305a3000005a3ad
+:0305a4000005a4ab
+:0305a5000005a5a9
+:0305a6000005a6a7
+:0305a7000005a7a5
+:0305a8000005a8a3
+:0305a9000005a9a1
+:0305aa000005aa9f
+:0305ab000005ab9d
+:0305ac000005ac9b
+:0305ad000005ad99
+:0305ae000005ae97
+:0305af000005af95
+:0305b0000005b093
+:0305b1000005b191
+:0305b2000005b28f
+:0305b3000005b38d
+:0305b4000005b48b
+:0305b5000005b589
+:0305b6000005b687
+:0305b7000005b785
+:0305b8000005b883
+:0305b9000005b981
+:0305ba000005ba7f
+:0305bb000005bb7d
+:0305bc000005bc7b
+:0305bd000005bd79
+:0305be000005be77
+:0305bf000005bf75
+:0305c0000005c073
+:0305c1000005c171
+:0305c2000005c26f
+:0305c3000005c36d
+:0305c4000005c46b
+:0305c5000005c569
+:0305c6000005c667
+:0305c7000005c765
+:0305c8000005c863
+:0305c9000005c961
+:0305ca000005ca5f
+:0305cb000005cb5d
+:0305cc000005cc5b
+:0305cd000005cd59
+:0305ce000005ce57
+:0305cf000005cf55
+:0305d0000005d053
+:0305d1000005d151
+:0305d2000005d24f
+:0305d3000005d34d
+:0305d4000005d44b
+:0305d5000005d549
+:0305d6000005d647
+:0305d7000005d745
+:0305d8000005d843
+:0305d9000005d941
+:0305da000005da3f
+:0305db000005db3d
+:0305dc000005dc3b
+:0305dd000005dd39
+:0305de000005de37
+:0305df000005df35
+:0305e0000005e033
+:0305e1000005e131
+:0305e2000005e22f
+:0305e3000005e32d
+:0305e4000005e42b
+:0305e5000005e529
+:0305e6000005e627
+:0305e7000005e725
+:0305e8000005e823
+:0305e9000005e921
+:0305ea000005ea1f
+:0305eb000005eb1d
+:0305ec000005ec1b
+:0305ed000005ed19
+:0305ee000005ee17
+:0305ef000005ef15
+:0305f0000005f013
+:0305f1000005f111
+:0305f2000005f20f
+:0305f3000005f30d
+:0305f4000005f40b
+:0305f5000005f509
+:0305f6000005f607
+:0305f7000005f705
+:0305f8000005f803
+:0305f9000005f901
+:0305fa000005faff
+:0305fb000005fbfd
+:0305fc000005fcfb
+:0305fd000005fdf9
+:0305fe000005fef7
+:0305ff000005fff5
+:03060000000600f1
+:03060100000601ef
+:03060200000602ed
+:03060300000603eb
+:03060400000604e9
+:03060500000605e7
+:03060600000606e5
+:03060700000607e3
+:03060800000608e1
+:03060900000609df
+:03060a0000060add
+:03060b0000060bdb
+:03060c0000060cd9
+:03060d0000060dd7
+:03060e0000060ed5
+:03060f0000060fd3
+:03061000000610d1
+:03061100000611cf
+:03061200000612cd
+:03061300000613cb
+:03061400000614c9
+:03061500000615c7
+:03061600000616c5
+:03061700000617c3
+:03061800000618c1
+:03061900000619bf
+:03061a0000061abd
+:03061b0000061bbb
+:03061c0000061cb9
+:03061d0000061db7
+:03061e0000061eb5
+:03061f0000061fb3
+:03062000000620b1
+:03062100000621af
+:03062200000622ad
+:03062300000623ab
+:03062400000624a9
+:03062500000625a7
+:03062600000626a5
+:03062700000627a3
+:03062800000628a1
+:030629000006299f
+:03062a0000062a9d
+:03062b0000062b9b
+:03062c0000062c99
+:03062d0000062d97
+:03062e0000062e95
+:03062f0000062f93
+:0306300000063091
+:030631000006318f
+:030632000006328d
+:030633000006338b
+:0306340000063489
+:0306350000063587
+:0306360000063685
+:0306370000063783
+:0306380000063881
+:030639000006397f
+:03063a0000063a7d
+:03063b0000063b7b
+:03063c0000063c79
+:03063d0000063d77
+:03063e0000063e75
+:03063f0000063f73
+:0306400000064071
+:030641000006416f
+:030642000006426d
+:030643000006436b
+:0306440000064469
+:0306450000064567
+:0306460000064665
+:0306470000064763
+:0306480000064861
+:030649000006495f
+:03064a0000064a5d
+:03064b0000064b5b
+:03064c0000064c59
+:03064d0000064d57
+:03064e0000064e55
+:03064f0000064f53
+:0306500000065051
+:030651000006514f
+:030652000006524d
+:030653000006534b
+:0306540000065449
+:0306550000065547
+:0306560000065645
+:0306570000065743
+:0306580000065841
+:030659000006593f
+:03065a0000065a3d
+:03065b0000065b3b
+:03065c0000065c39
+:03065d0000065d37
+:03065e0000065e35
+:03065f0000065f33
+:0306600000066031
+:030661000006612f
+:030662000006622d
+:030663000006632b
+:0306640000066429
+:0306650000066527
+:0306660000066625
+:0306670000066723
+:0306680000066821
+:030669000006691f
+:03066a0000066a1d
+:03066b0000066b1b
+:03066c0000066c19
+:03066d0000066d17
+:03066e0000066e15
+:03066f0000066f13
+:0306700000067011
+:030671000006710f
+:030672000006720d
+:030673000006730b
+:0306740000067409
+:0306750000067507
+:0306760000067605
+:0306770000067703
+:0306780000067801
+:03067900000679ff
+:03067a0000067afd
+:03067b0000067bfb
+:03067c0000067cf9
+:03067d0000067df7
+:03067e0000067ef5
+:03067f0000067ff3
+:03068000000680f1
+:03068100000681ef
+:03068200000682ed
+:03068300000683eb
+:03068400000684e9
+:03068500000685e7
+:03068600000686e5
+:03068700000687e3
+:03068800000688e1
+:03068900000689df
+:03068a0000068add
+:03068b0000068bdb
+:03068c0000068cd9
+:03068d0000068dd7
+:03068e0000068ed5
+:03068f0000068fd3
+:03069000000690d1
+:03069100000691cf
+:03069200000692cd
+:03069300000693cb
+:03069400000694c9
+:03069500000695c7
+:03069600000696c5
+:03069700000697c3
+:03069800000698c1
+:03069900000699bf
+:03069a0000069abd
+:03069b0000069bbb
+:03069c0000069cb9
+:03069d0000069db7
+:03069e0000069eb5
+:03069f0000069fb3
+:0306a0000006a0b1
+:0306a1000006a1af
+:0306a2000006a2ad
+:0306a3000006a3ab
+:0306a4000006a4a9
+:0306a5000006a5a7
+:0306a6000006a6a5
+:0306a7000006a7a3
+:0306a8000006a8a1
+:0306a9000006a99f
+:0306aa000006aa9d
+:0306ab000006ab9b
+:0306ac000006ac99
+:0306ad000006ad97
+:0306ae000006ae95
+:0306af000006af93
+:0306b0000006b091
+:0306b1000006b18f
+:0306b2000006b28d
+:0306b3000006b38b
+:0306b4000006b489
+:0306b5000006b587
+:0306b6000006b685
+:0306b7000006b783
+:0306b8000006b881
+:0306b9000006b97f
+:0306ba000006ba7d
+:0306bb000006bb7b
+:0306bc000006bc79
+:0306bd000006bd77
+:0306be000006be75
+:0306bf000006bf73
+:0306c0000006c071
+:0306c1000006c16f
+:0306c2000006c26d
+:0306c3000006c36b
+:0306c4000006c469
+:0306c5000006c567
+:0306c6000006c665
+:0306c7000006c763
+:0306c8000006c861
+:0306c9000006c95f
+:0306ca000006ca5d
+:0306cb000006cb5b
+:0306cc000006cc59
+:0306cd000006cd57
+:0306ce000006ce55
+:0306cf000006cf53
+:0306d0000006d051
+:0306d1000006d14f
+:0306d2000006d24d
+:0306d3000006d34b
+:0306d4000006d449
+:0306d5000006d547
+:0306d6000006d645
+:0306d7000006d743
+:0306d8000006d841
+:0306d9000006d93f
+:0306da000006da3d
+:0306db000006db3b
+:0306dc000006dc39
+:0306dd000006dd37
+:0306de000006de35
+:0306df000006df33
+:0306e0000006e031
+:0306e1000006e12f
+:0306e2000006e22d
+:0306e3000006e32b
+:0306e4000006e429
+:0306e5000006e527
+:0306e6000006e625
+:0306e7000006e723
+:0306e8000006e821
+:0306e9000006e91f
+:0306ea000006ea1d
+:0306eb000006eb1b
+:0306ec000006ec19
+:0306ed000006ed17
+:0306ee000006ee15
+:0306ef000006ef13
+:0306f0000006f011
+:0306f1000006f10f
+:0306f2000006f20d
+:0306f3000006f30b
+:0306f4000006f409
+:0306f5000006f507
+:0306f6000006f605
+:0306f7000006f703
+:0306f8000006f801
+:0306f9000006f9ff
+:0306fa000006fafd
+:0306fb000006fbfb
+:0306fc000006fcf9
+:0306fd000006fdf7
+:0306fe000006fef5
+:0306ff000006fff3
+:03070000000700ef
+:03070100000701ed
+:03070200000702eb
+:03070300000703e9
+:03070400000704e7
+:03070500000705e5
+:03070600000706e3
+:03070700000707e1
+:03070800000708df
+:03070900000709dd
+:03070a0000070adb
+:03070b0000070bd9
+:03070c0000070cd7
+:03070d0000070dd5
+:03070e0000070ed3
+:03070f0000070fd1
+:03071000000710cf
+:03071100000711cd
+:03071200000712cb
+:03071300000713c9
+:03071400000714c7
+:03071500000715c5
+:03071600000716c3
+:03071700000717c1
+:03071800000718bf
+:03071900000719bd
+:03071a0000071abb
+:03071b0000071bb9
+:03071c0000071cb7
+:03071d0000071db5
+:03071e0000071eb3
+:03071f0000071fb1
+:03072000000720af
+:03072100000721ad
+:03072200000722ab
+:03072300000723a9
+:03072400000724a7
+:03072500000725a5
+:03072600000726a3
+:03072700000727a1
+:030728000007289f
+:030729000007299d
+:03072a0000072a9b
+:03072b0000072b99
+:03072c0000072c97
+:03072d0000072d95
+:03072e0000072e93
+:03072f0000072f91
+:030730000007308f
+:030731000007318d
+:030732000007328b
+:0307330000073389
+:0307340000073487
+:0307350000073585
+:0307360000073683
+:0307370000073781
+:030738000007387f
+:030739000007397d
+:03073a0000073a7b
+:03073b0000073b79
+:03073c0000073c77
+:03073d0000073d75
+:03073e0000073e73
+:03073f0000073f71
+:030740000007406f
+:030741000007416d
+:030742000007426b
+:0307430000074369
+:0307440000074467
+:0307450000074565
+:0307460000074663
+:0307470000074761
+:030748000007485f
+:030749000007495d
+:03074a0000074a5b
+:03074b0000074b59
+:03074c0000074c57
+:03074d0000074d55
+:03074e0000074e53
+:03074f0000074f51
+:030750000007504f
+:030751000007514d
+:030752000007524b
+:0307530000075349
+:0307540000075447
+:0307550000075545
+:0307560000075643
+:0307570000075741
+:030758000007583f
+:030759000007593d
+:03075a0000075a3b
+:03075b0000075b39
+:03075c0000075c37
+:03075d0000075d35
+:03075e0000075e33
+:03075f0000075f31
+:030760000007602f
+:030761000007612d
+:030762000007622b
+:0307630000076329
+:0307640000076427
+:0307650000076525
+:0307660000076623
+:0307670000076721
+:030768000007681f
+:030769000007691d
+:03076a0000076a1b
+:03076b0000076b19
+:03076c0000076c17
+:03076d0000076d15
+:03076e0000076e13
+:03076f0000076f11
+:030770000007700f
+:030771000007710d
+:030772000007720b
+:0307730000077309
+:0307740000077407
+:0307750000077505
+:0307760000077603
+:0307770000077701
+:03077800000778ff
+:03077900000779fd
+:03077a0000077afb
+:03077b0000077bf9
+:03077c0000077cf7
+:03077d0000077df5
+:03077e0000077ef3
+:03077f0000077ff1
+:03078000000780ef
+:03078100000781ed
+:03078200000782eb
+:03078300000783e9
+:03078400000784e7
+:03078500000785e5
+:03078600000786e3
+:03078700000787e1
+:03078800000788df
+:03078900000789dd
+:03078a0000078adb
+:03078b0000078bd9
+:03078c0000078cd7
+:03078d0000078dd5
+:03078e0000078ed3
+:03078f0000078fd1
+:03079000000790cf
+:03079100000791cd
+:03079200000792cb
+:03079300000793c9
+:03079400000794c7
+:03079500000795c5
+:03079600000796c3
+:03079700000797c1
+:03079800000798bf
+:03079900000799bd
+:03079a0000079abb
+:03079b0000079bb9
+:03079c0000079cb7
+:03079d0000079db5
+:03079e0000079eb3
+:03079f0000079fb1
+:0307a0000007a0af
+:0307a1000007a1ad
+:0307a2000007a2ab
+:0307a3000007a3a9
+:0307a4000007a4a7
+:0307a5000007a5a5
+:0307a6000007a6a3
+:0307a7000007a7a1
+:0307a8000007a89f
+:0307a9000007a99d
+:0307aa000007aa9b
+:0307ab000007ab99
+:0307ac000007ac97
+:0307ad000007ad95
+:0307ae000007ae93
+:0307af000007af91
+:0307b0000007b08f
+:0307b1000007b18d
+:0307b2000007b28b
+:0307b3000007b389
+:0307b4000007b487
+:0307b5000007b585
+:0307b6000007b683
+:0307b7000007b781
+:0307b8000007b87f
+:0307b9000007b97d
+:0307ba000007ba7b
+:0307bb000007bb79
+:0307bc000007bc77
+:0307bd000007bd75
+:0307be000007be73
+:0307bf000007bf71
+:0307c0000007c06f
+:0307c1000007c16d
+:0307c2000007c26b
+:0307c3000007c369
+:0307c4000007c467
+:0307c5000007c565
+:0307c6000007c663
+:0307c7000007c761
+:0307c8000007c85f
+:0307c9000007c95d
+:0307ca000007ca5b
+:0307cb000007cb59
+:0307cc000007cc57
+:0307cd000007cd55
+:0307ce000007ce53
+:0307cf000007cf51
+:0307d0000007d04f
+:0307d1000007d14d
+:0307d2000007d24b
+:0307d3000007d349
+:0307d4000007d447
+:0307d5000007d545
+:0307d6000007d643
+:0307d7000007d741
+:0307d8000007d83f
+:0307d9000007d93d
+:0307da000007da3b
+:0307db000007db39
+:0307dc000007dc37
+:0307dd000007dd35
+:0307de000007de33
+:0307df000007df31
+:0307e0000007e02f
+:0307e1000007e12d
+:0307e2000007e22b
+:0307e3000007e329
+:0307e4000007e427
+:0307e5000007e525
+:0307e6000007e623
+:0307e7000007e721
+:0307e8000007e81f
+:0307e9000007e91d
+:0307ea000007ea1b
+:0307eb000007eb19
+:0307ec000007ec17
+:0307ed000007ed15
+:0307ee000007ee13
+:0307ef000007ef11
+:0307f0000007f00f
+:0307f1000007f10d
+:0307f2000007f20b
+:0307f3000007f309
+:0307f4000007f407
+:0307f5000007f505
+:0307f6000007f603
+:0307f7000007f701
+:0307f8000007f8ff
+:0307f9000007f9fd
+:0307fa000007fafb
+:0307fb000007fbf9
+:0307fc000007fcf7
+:0307fd000007fdf5
+:0307fe000007fef3
+:0307ff000007fff1
+:00000001ff
diff --git a/libraries/base/diag/src/data/diag_cnt_2048x18.mif b/libraries/base/diag/src/data/diag_cnt_2048x18.mif
new file mode 100644
index 0000000000..74b7590f55
--- /dev/null
+++ b/libraries/base/diag/src/data/diag_cnt_2048x18.mif
@@ -0,0 +1,2072 @@
+-- Copyright (C) 1991-2010 Altera Corporation
+-- Your use of Altera Corporation's design tools, logic functions 
+-- and other software and tools, and its AMPP partner logic 
+-- functions, and any output files from any of the foregoing 
+-- (including device programming or simulation files), and any 
+-- associated documentation or information are expressly subject 
+-- to the terms and conditions of the Altera Program License 
+-- Subscription Agreement, Altera MegaCore Function License 
+-- Agreement, or other applicable license agreement, including, 
+-- without limitation, that your use is for the sole purpose of 
+-- programming logic devices manufactured by Altera and sold by 
+-- Altera or its authorized distributors.  Please refer to the 
+-- applicable agreement for further details.
+
+-- Quartus II generated Memory Initialization File (.mif)
+
+WIDTH=18;
+DEPTH=2048;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+	000  :   00000;
+	001  :   00001;
+	002  :   00002;
+	003  :   00003;
+	004  :   00004;
+	005  :   00005;
+	006  :   00006;
+	007  :   00007;
+	008  :   00008;
+	009  :   00009;
+	00A  :   0000A;
+	00B  :   0000B;
+	00C  :   0000C;
+	00D  :   0000D;
+	00E  :   0000E;
+	00F  :   0000F;
+	010  :   00010;
+	011  :   00011;
+	012  :   00012;
+	013  :   00013;
+	014  :   00014;
+	015  :   00015;
+	016  :   00016;
+	017  :   00017;
+	018  :   00018;
+	019  :   00019;
+	01A  :   0001A;
+	01B  :   0001B;
+	01C  :   0001C;
+	01D  :   0001D;
+	01E  :   0001E;
+	01F  :   0001F;
+	020  :   00020;
+	021  :   00021;
+	022  :   00022;
+	023  :   00023;
+	024  :   00024;
+	025  :   00025;
+	026  :   00026;
+	027  :   00027;
+	028  :   00028;
+	029  :   00029;
+	02A  :   0002A;
+	02B  :   0002B;
+	02C  :   0002C;
+	02D  :   0002D;
+	02E  :   0002E;
+	02F  :   0002F;
+	030  :   00030;
+	031  :   00031;
+	032  :   00032;
+	033  :   00033;
+	034  :   00034;
+	035  :   00035;
+	036  :   00036;
+	037  :   00037;
+	038  :   00038;
+	039  :   00039;
+	03A  :   0003A;
+	03B  :   0003B;
+	03C  :   0003C;
+	03D  :   0003D;
+	03E  :   0003E;
+	03F  :   0003F;
+	040  :   00040;
+	041  :   00041;
+	042  :   00042;
+	043  :   00043;
+	044  :   00044;
+	045  :   00045;
+	046  :   00046;
+	047  :   00047;
+	048  :   00048;
+	049  :   00049;
+	04A  :   0004A;
+	04B  :   0004B;
+	04C  :   0004C;
+	04D  :   0004D;
+	04E  :   0004E;
+	04F  :   0004F;
+	050  :   00050;
+	051  :   00051;
+	052  :   00052;
+	053  :   00053;
+	054  :   00054;
+	055  :   00055;
+	056  :   00056;
+	057  :   00057;
+	058  :   00058;
+	059  :   00059;
+	05A  :   0005A;
+	05B  :   0005B;
+	05C  :   0005C;
+	05D  :   0005D;
+	05E  :   0005E;
+	05F  :   0005F;
+	060  :   00060;
+	061  :   00061;
+	062  :   00062;
+	063  :   00063;
+	064  :   00064;
+	065  :   00065;
+	066  :   00066;
+	067  :   00067;
+	068  :   00068;
+	069  :   00069;
+	06A  :   0006A;
+	06B  :   0006B;
+	06C  :   0006C;
+	06D  :   0006D;
+	06E  :   0006E;
+	06F  :   0006F;
+	070  :   00070;
+	071  :   00071;
+	072  :   00072;
+	073  :   00073;
+	074  :   00074;
+	075  :   00075;
+	076  :   00076;
+	077  :   00077;
+	078  :   00078;
+	079  :   00079;
+	07A  :   0007A;
+	07B  :   0007B;
+	07C  :   0007C;
+	07D  :   0007D;
+	07E  :   0007E;
+	07F  :   0007F;
+	080  :   00080;
+	081  :   00081;
+	082  :   00082;
+	083  :   00083;
+	084  :   00084;
+	085  :   00085;
+	086  :   00086;
+	087  :   00087;
+	088  :   00088;
+	089  :   00089;
+	08A  :   0008A;
+	08B  :   0008B;
+	08C  :   0008C;
+	08D  :   0008D;
+	08E  :   0008E;
+	08F  :   0008F;
+	090  :   00090;
+	091  :   00091;
+	092  :   00092;
+	093  :   00093;
+	094  :   00094;
+	095  :   00095;
+	096  :   00096;
+	097  :   00097;
+	098  :   00098;
+	099  :   00099;
+	09A  :   0009A;
+	09B  :   0009B;
+	09C  :   0009C;
+	09D  :   0009D;
+	09E  :   0009E;
+	09F  :   0009F;
+	0A0  :   000A0;
+	0A1  :   000A1;
+	0A2  :   000A2;
+	0A3  :   000A3;
+	0A4  :   000A4;
+	0A5  :   000A5;
+	0A6  :   000A6;
+	0A7  :   000A7;
+	0A8  :   000A8;
+	0A9  :   000A9;
+	0AA  :   000AA;
+	0AB  :   000AB;
+	0AC  :   000AC;
+	0AD  :   000AD;
+	0AE  :   000AE;
+	0AF  :   000AF;
+	0B0  :   000B0;
+	0B1  :   000B1;
+	0B2  :   000B2;
+	0B3  :   000B3;
+	0B4  :   000B4;
+	0B5  :   000B5;
+	0B6  :   000B6;
+	0B7  :   000B7;
+	0B8  :   000B8;
+	0B9  :   000B9;
+	0BA  :   000BA;
+	0BB  :   000BB;
+	0BC  :   000BC;
+	0BD  :   000BD;
+	0BE  :   000BE;
+	0BF  :   000BF;
+	0C0  :   000C0;
+	0C1  :   000C1;
+	0C2  :   000C2;
+	0C3  :   000C3;
+	0C4  :   000C4;
+	0C5  :   000C5;
+	0C6  :   000C6;
+	0C7  :   000C7;
+	0C8  :   000C8;
+	0C9  :   000C9;
+	0CA  :   000CA;
+	0CB  :   000CB;
+	0CC  :   000CC;
+	0CD  :   000CD;
+	0CE  :   000CE;
+	0CF  :   000CF;
+	0D0  :   000D0;
+	0D1  :   000D1;
+	0D2  :   000D2;
+	0D3  :   000D3;
+	0D4  :   000D4;
+	0D5  :   000D5;
+	0D6  :   000D6;
+	0D7  :   000D7;
+	0D8  :   000D8;
+	0D9  :   000D9;
+	0DA  :   000DA;
+	0DB  :   000DB;
+	0DC  :   000DC;
+	0DD  :   000DD;
+	0DE  :   000DE;
+	0DF  :   000DF;
+	0E0  :   000E0;
+	0E1  :   000E1;
+	0E2  :   000E2;
+	0E3  :   000E3;
+	0E4  :   000E4;
+	0E5  :   000E5;
+	0E6  :   000E6;
+	0E7  :   000E7;
+	0E8  :   000E8;
+	0E9  :   000E9;
+	0EA  :   000EA;
+	0EB  :   000EB;
+	0EC  :   000EC;
+	0ED  :   000ED;
+	0EE  :   000EE;
+	0EF  :   000EF;
+	0F0  :   000F0;
+	0F1  :   000F1;
+	0F2  :   000F2;
+	0F3  :   000F3;
+	0F4  :   000F4;
+	0F5  :   000F5;
+	0F6  :   000F6;
+	0F7  :   000F7;
+	0F8  :   000F8;
+	0F9  :   000F9;
+	0FA  :   000FA;
+	0FB  :   000FB;
+	0FC  :   000FC;
+	0FD  :   000FD;
+	0FE  :   000FE;
+	0FF  :   000FF;
+	100  :   00100;
+	101  :   00101;
+	102  :   00102;
+	103  :   00103;
+	104  :   00104;
+	105  :   00105;
+	106  :   00106;
+	107  :   00107;
+	108  :   00108;
+	109  :   00109;
+	10A  :   0010A;
+	10B  :   0010B;
+	10C  :   0010C;
+	10D  :   0010D;
+	10E  :   0010E;
+	10F  :   0010F;
+	110  :   00110;
+	111  :   00111;
+	112  :   00112;
+	113  :   00113;
+	114  :   00114;
+	115  :   00115;
+	116  :   00116;
+	117  :   00117;
+	118  :   00118;
+	119  :   00119;
+	11A  :   0011A;
+	11B  :   0011B;
+	11C  :   0011C;
+	11D  :   0011D;
+	11E  :   0011E;
+	11F  :   0011F;
+	120  :   00120;
+	121  :   00121;
+	122  :   00122;
+	123  :   00123;
+	124  :   00124;
+	125  :   00125;
+	126  :   00126;
+	127  :   00127;
+	128  :   00128;
+	129  :   00129;
+	12A  :   0012A;
+	12B  :   0012B;
+	12C  :   0012C;
+	12D  :   0012D;
+	12E  :   0012E;
+	12F  :   0012F;
+	130  :   00130;
+	131  :   00131;
+	132  :   00132;
+	133  :   00133;
+	134  :   00134;
+	135  :   00135;
+	136  :   00136;
+	137  :   00137;
+	138  :   00138;
+	139  :   00139;
+	13A  :   0013A;
+	13B  :   0013B;
+	13C  :   0013C;
+	13D  :   0013D;
+	13E  :   0013E;
+	13F  :   0013F;
+	140  :   00140;
+	141  :   00141;
+	142  :   00142;
+	143  :   00143;
+	144  :   00144;
+	145  :   00145;
+	146  :   00146;
+	147  :   00147;
+	148  :   00148;
+	149  :   00149;
+	14A  :   0014A;
+	14B  :   0014B;
+	14C  :   0014C;
+	14D  :   0014D;
+	14E  :   0014E;
+	14F  :   0014F;
+	150  :   00150;
+	151  :   00151;
+	152  :   00152;
+	153  :   00153;
+	154  :   00154;
+	155  :   00155;
+	156  :   00156;
+	157  :   00157;
+	158  :   00158;
+	159  :   00159;
+	15A  :   0015A;
+	15B  :   0015B;
+	15C  :   0015C;
+	15D  :   0015D;
+	15E  :   0015E;
+	15F  :   0015F;
+	160  :   00160;
+	161  :   00161;
+	162  :   00162;
+	163  :   00163;
+	164  :   00164;
+	165  :   00165;
+	166  :   00166;
+	167  :   00167;
+	168  :   00168;
+	169  :   00169;
+	16A  :   0016A;
+	16B  :   0016B;
+	16C  :   0016C;
+	16D  :   0016D;
+	16E  :   0016E;
+	16F  :   0016F;
+	170  :   00170;
+	171  :   00171;
+	172  :   00172;
+	173  :   00173;
+	174  :   00174;
+	175  :   00175;
+	176  :   00176;
+	177  :   00177;
+	178  :   00178;
+	179  :   00179;
+	17A  :   0017A;
+	17B  :   0017B;
+	17C  :   0017C;
+	17D  :   0017D;
+	17E  :   0017E;
+	17F  :   0017F;
+	180  :   00180;
+	181  :   00181;
+	182  :   00182;
+	183  :   00183;
+	184  :   00184;
+	185  :   00185;
+	186  :   00186;
+	187  :   00187;
+	188  :   00188;
+	189  :   00189;
+	18A  :   0018A;
+	18B  :   0018B;
+	18C  :   0018C;
+	18D  :   0018D;
+	18E  :   0018E;
+	18F  :   0018F;
+	190  :   00190;
+	191  :   00191;
+	192  :   00192;
+	193  :   00193;
+	194  :   00194;
+	195  :   00195;
+	196  :   00196;
+	197  :   00197;
+	198  :   00198;
+	199  :   00199;
+	19A  :   0019A;
+	19B  :   0019B;
+	19C  :   0019C;
+	19D  :   0019D;
+	19E  :   0019E;
+	19F  :   0019F;
+	1A0  :   001A0;
+	1A1  :   001A1;
+	1A2  :   001A2;
+	1A3  :   001A3;
+	1A4  :   001A4;
+	1A5  :   001A5;
+	1A6  :   001A6;
+	1A7  :   001A7;
+	1A8  :   001A8;
+	1A9  :   001A9;
+	1AA  :   001AA;
+	1AB  :   001AB;
+	1AC  :   001AC;
+	1AD  :   001AD;
+	1AE  :   001AE;
+	1AF  :   001AF;
+	1B0  :   001B0;
+	1B1  :   001B1;
+	1B2  :   001B2;
+	1B3  :   001B3;
+	1B4  :   001B4;
+	1B5  :   001B5;
+	1B6  :   001B6;
+	1B7  :   001B7;
+	1B8  :   001B8;
+	1B9  :   001B9;
+	1BA  :   001BA;
+	1BB  :   001BB;
+	1BC  :   001BC;
+	1BD  :   001BD;
+	1BE  :   001BE;
+	1BF  :   001BF;
+	1C0  :   001C0;
+	1C1  :   001C1;
+	1C2  :   001C2;
+	1C3  :   001C3;
+	1C4  :   001C4;
+	1C5  :   001C5;
+	1C6  :   001C6;
+	1C7  :   001C7;
+	1C8  :   001C8;
+	1C9  :   001C9;
+	1CA  :   001CA;
+	1CB  :   001CB;
+	1CC  :   001CC;
+	1CD  :   001CD;
+	1CE  :   001CE;
+	1CF  :   001CF;
+	1D0  :   001D0;
+	1D1  :   001D1;
+	1D2  :   001D2;
+	1D3  :   001D3;
+	1D4  :   001D4;
+	1D5  :   001D5;
+	1D6  :   001D6;
+	1D7  :   001D7;
+	1D8  :   001D8;
+	1D9  :   001D9;
+	1DA  :   001DA;
+	1DB  :   001DB;
+	1DC  :   001DC;
+	1DD  :   001DD;
+	1DE  :   001DE;
+	1DF  :   001DF;
+	1E0  :   001E0;
+	1E1  :   001E1;
+	1E2  :   001E2;
+	1E3  :   001E3;
+	1E4  :   001E4;
+	1E5  :   001E5;
+	1E6  :   001E6;
+	1E7  :   001E7;
+	1E8  :   001E8;
+	1E9  :   001E9;
+	1EA  :   001EA;
+	1EB  :   001EB;
+	1EC  :   001EC;
+	1ED  :   001ED;
+	1EE  :   001EE;
+	1EF  :   001EF;
+	1F0  :   001F0;
+	1F1  :   001F1;
+	1F2  :   001F2;
+	1F3  :   001F3;
+	1F4  :   001F4;
+	1F5  :   001F5;
+	1F6  :   001F6;
+	1F7  :   001F7;
+	1F8  :   001F8;
+	1F9  :   001F9;
+	1FA  :   001FA;
+	1FB  :   001FB;
+	1FC  :   001FC;
+	1FD  :   001FD;
+	1FE  :   001FE;
+	1FF  :   001FF;
+	200  :   00200;
+	201  :   00201;
+	202  :   00202;
+	203  :   00203;
+	204  :   00204;
+	205  :   00205;
+	206  :   00206;
+	207  :   00207;
+	208  :   00208;
+	209  :   00209;
+	20A  :   0020A;
+	20B  :   0020B;
+	20C  :   0020C;
+	20D  :   0020D;
+	20E  :   0020E;
+	20F  :   0020F;
+	210  :   00210;
+	211  :   00211;
+	212  :   00212;
+	213  :   00213;
+	214  :   00214;
+	215  :   00215;
+	216  :   00216;
+	217  :   00217;
+	218  :   00218;
+	219  :   00219;
+	21A  :   0021A;
+	21B  :   0021B;
+	21C  :   0021C;
+	21D  :   0021D;
+	21E  :   0021E;
+	21F  :   0021F;
+	220  :   00220;
+	221  :   00221;
+	222  :   00222;
+	223  :   00223;
+	224  :   00224;
+	225  :   00225;
+	226  :   00226;
+	227  :   00227;
+	228  :   00228;
+	229  :   00229;
+	22A  :   0022A;
+	22B  :   0022B;
+	22C  :   0022C;
+	22D  :   0022D;
+	22E  :   0022E;
+	22F  :   0022F;
+	230  :   00230;
+	231  :   00231;
+	232  :   00232;
+	233  :   00233;
+	234  :   00234;
+	235  :   00235;
+	236  :   00236;
+	237  :   00237;
+	238  :   00238;
+	239  :   00239;
+	23A  :   0023A;
+	23B  :   0023B;
+	23C  :   0023C;
+	23D  :   0023D;
+	23E  :   0023E;
+	23F  :   0023F;
+	240  :   00240;
+	241  :   00241;
+	242  :   00242;
+	243  :   00243;
+	244  :   00244;
+	245  :   00245;
+	246  :   00246;
+	247  :   00247;
+	248  :   00248;
+	249  :   00249;
+	24A  :   0024A;
+	24B  :   0024B;
+	24C  :   0024C;
+	24D  :   0024D;
+	24E  :   0024E;
+	24F  :   0024F;
+	250  :   00250;
+	251  :   00251;
+	252  :   00252;
+	253  :   00253;
+	254  :   00254;
+	255  :   00255;
+	256  :   00256;
+	257  :   00257;
+	258  :   00258;
+	259  :   00259;
+	25A  :   0025A;
+	25B  :   0025B;
+	25C  :   0025C;
+	25D  :   0025D;
+	25E  :   0025E;
+	25F  :   0025F;
+	260  :   00260;
+	261  :   00261;
+	262  :   00262;
+	263  :   00263;
+	264  :   00264;
+	265  :   00265;
+	266  :   00266;
+	267  :   00267;
+	268  :   00268;
+	269  :   00269;
+	26A  :   0026A;
+	26B  :   0026B;
+	26C  :   0026C;
+	26D  :   0026D;
+	26E  :   0026E;
+	26F  :   0026F;
+	270  :   00270;
+	271  :   00271;
+	272  :   00272;
+	273  :   00273;
+	274  :   00274;
+	275  :   00275;
+	276  :   00276;
+	277  :   00277;
+	278  :   00278;
+	279  :   00279;
+	27A  :   0027A;
+	27B  :   0027B;
+	27C  :   0027C;
+	27D  :   0027D;
+	27E  :   0027E;
+	27F  :   0027F;
+	280  :   00280;
+	281  :   00281;
+	282  :   00282;
+	283  :   00283;
+	284  :   00284;
+	285  :   00285;
+	286  :   00286;
+	287  :   00287;
+	288  :   00288;
+	289  :   00289;
+	28A  :   0028A;
+	28B  :   0028B;
+	28C  :   0028C;
+	28D  :   0028D;
+	28E  :   0028E;
+	28F  :   0028F;
+	290  :   00290;
+	291  :   00291;
+	292  :   00292;
+	293  :   00293;
+	294  :   00294;
+	295  :   00295;
+	296  :   00296;
+	297  :   00297;
+	298  :   00298;
+	299  :   00299;
+	29A  :   0029A;
+	29B  :   0029B;
+	29C  :   0029C;
+	29D  :   0029D;
+	29E  :   0029E;
+	29F  :   0029F;
+	2A0  :   002A0;
+	2A1  :   002A1;
+	2A2  :   002A2;
+	2A3  :   002A3;
+	2A4  :   002A4;
+	2A5  :   002A5;
+	2A6  :   002A6;
+	2A7  :   002A7;
+	2A8  :   002A8;
+	2A9  :   002A9;
+	2AA  :   002AA;
+	2AB  :   002AB;
+	2AC  :   002AC;
+	2AD  :   002AD;
+	2AE  :   002AE;
+	2AF  :   002AF;
+	2B0  :   002B0;
+	2B1  :   002B1;
+	2B2  :   002B2;
+	2B3  :   002B3;
+	2B4  :   002B4;
+	2B5  :   002B5;
+	2B6  :   002B6;
+	2B7  :   002B7;
+	2B8  :   002B8;
+	2B9  :   002B9;
+	2BA  :   002BA;
+	2BB  :   002BB;
+	2BC  :   002BC;
+	2BD  :   002BD;
+	2BE  :   002BE;
+	2BF  :   002BF;
+	2C0  :   002C0;
+	2C1  :   002C1;
+	2C2  :   002C2;
+	2C3  :   002C3;
+	2C4  :   002C4;
+	2C5  :   002C5;
+	2C6  :   002C6;
+	2C7  :   002C7;
+	2C8  :   002C8;
+	2C9  :   002C9;
+	2CA  :   002CA;
+	2CB  :   002CB;
+	2CC  :   002CC;
+	2CD  :   002CD;
+	2CE  :   002CE;
+	2CF  :   002CF;
+	2D0  :   002D0;
+	2D1  :   002D1;
+	2D2  :   002D2;
+	2D3  :   002D3;
+	2D4  :   002D4;
+	2D5  :   002D5;
+	2D6  :   002D6;
+	2D7  :   002D7;
+	2D8  :   002D8;
+	2D9  :   002D9;
+	2DA  :   002DA;
+	2DB  :   002DB;
+	2DC  :   002DC;
+	2DD  :   002DD;
+	2DE  :   002DE;
+	2DF  :   002DF;
+	2E0  :   002E0;
+	2E1  :   002E1;
+	2E2  :   002E2;
+	2E3  :   002E3;
+	2E4  :   002E4;
+	2E5  :   002E5;
+	2E6  :   002E6;
+	2E7  :   002E7;
+	2E8  :   002E8;
+	2E9  :   002E9;
+	2EA  :   002EA;
+	2EB  :   002EB;
+	2EC  :   002EC;
+	2ED  :   002ED;
+	2EE  :   002EE;
+	2EF  :   002EF;
+	2F0  :   002F0;
+	2F1  :   002F1;
+	2F2  :   002F2;
+	2F3  :   002F3;
+	2F4  :   002F4;
+	2F5  :   002F5;
+	2F6  :   002F6;
+	2F7  :   002F7;
+	2F8  :   002F8;
+	2F9  :   002F9;
+	2FA  :   002FA;
+	2FB  :   002FB;
+	2FC  :   002FC;
+	2FD  :   002FD;
+	2FE  :   002FE;
+	2FF  :   002FF;
+	300  :   00300;
+	301  :   00301;
+	302  :   00302;
+	303  :   00303;
+	304  :   00304;
+	305  :   00305;
+	306  :   00306;
+	307  :   00307;
+	308  :   00308;
+	309  :   00309;
+	30A  :   0030A;
+	30B  :   0030B;
+	30C  :   0030C;
+	30D  :   0030D;
+	30E  :   0030E;
+	30F  :   0030F;
+	310  :   00310;
+	311  :   00311;
+	312  :   00312;
+	313  :   00313;
+	314  :   00314;
+	315  :   00315;
+	316  :   00316;
+	317  :   00317;
+	318  :   00318;
+	319  :   00319;
+	31A  :   0031A;
+	31B  :   0031B;
+	31C  :   0031C;
+	31D  :   0031D;
+	31E  :   0031E;
+	31F  :   0031F;
+	320  :   00320;
+	321  :   00321;
+	322  :   00322;
+	323  :   00323;
+	324  :   00324;
+	325  :   00325;
+	326  :   00326;
+	327  :   00327;
+	328  :   00328;
+	329  :   00329;
+	32A  :   0032A;
+	32B  :   0032B;
+	32C  :   0032C;
+	32D  :   0032D;
+	32E  :   0032E;
+	32F  :   0032F;
+	330  :   00330;
+	331  :   00331;
+	332  :   00332;
+	333  :   00333;
+	334  :   00334;
+	335  :   00335;
+	336  :   00336;
+	337  :   00337;
+	338  :   00338;
+	339  :   00339;
+	33A  :   0033A;
+	33B  :   0033B;
+	33C  :   0033C;
+	33D  :   0033D;
+	33E  :   0033E;
+	33F  :   0033F;
+	340  :   00340;
+	341  :   00341;
+	342  :   00342;
+	343  :   00343;
+	344  :   00344;
+	345  :   00345;
+	346  :   00346;
+	347  :   00347;
+	348  :   00348;
+	349  :   00349;
+	34A  :   0034A;
+	34B  :   0034B;
+	34C  :   0034C;
+	34D  :   0034D;
+	34E  :   0034E;
+	34F  :   0034F;
+	350  :   00350;
+	351  :   00351;
+	352  :   00352;
+	353  :   00353;
+	354  :   00354;
+	355  :   00355;
+	356  :   00356;
+	357  :   00357;
+	358  :   00358;
+	359  :   00359;
+	35A  :   0035A;
+	35B  :   0035B;
+	35C  :   0035C;
+	35D  :   0035D;
+	35E  :   0035E;
+	35F  :   0035F;
+	360  :   00360;
+	361  :   00361;
+	362  :   00362;
+	363  :   00363;
+	364  :   00364;
+	365  :   00365;
+	366  :   00366;
+	367  :   00367;
+	368  :   00368;
+	369  :   00369;
+	36A  :   0036A;
+	36B  :   0036B;
+	36C  :   0036C;
+	36D  :   0036D;
+	36E  :   0036E;
+	36F  :   0036F;
+	370  :   00370;
+	371  :   00371;
+	372  :   00372;
+	373  :   00373;
+	374  :   00374;
+	375  :   00375;
+	376  :   00376;
+	377  :   00377;
+	378  :   00378;
+	379  :   00379;
+	37A  :   0037A;
+	37B  :   0037B;
+	37C  :   0037C;
+	37D  :   0037D;
+	37E  :   0037E;
+	37F  :   0037F;
+	380  :   00380;
+	381  :   00381;
+	382  :   00382;
+	383  :   00383;
+	384  :   00384;
+	385  :   00385;
+	386  :   00386;
+	387  :   00387;
+	388  :   00388;
+	389  :   00389;
+	38A  :   0038A;
+	38B  :   0038B;
+	38C  :   0038C;
+	38D  :   0038D;
+	38E  :   0038E;
+	38F  :   0038F;
+	390  :   00390;
+	391  :   00391;
+	392  :   00392;
+	393  :   00393;
+	394  :   00394;
+	395  :   00395;
+	396  :   00396;
+	397  :   00397;
+	398  :   00398;
+	399  :   00399;
+	39A  :   0039A;
+	39B  :   0039B;
+	39C  :   0039C;
+	39D  :   0039D;
+	39E  :   0039E;
+	39F  :   0039F;
+	3A0  :   003A0;
+	3A1  :   003A1;
+	3A2  :   003A2;
+	3A3  :   003A3;
+	3A4  :   003A4;
+	3A5  :   003A5;
+	3A6  :   003A6;
+	3A7  :   003A7;
+	3A8  :   003A8;
+	3A9  :   003A9;
+	3AA  :   003AA;
+	3AB  :   003AB;
+	3AC  :   003AC;
+	3AD  :   003AD;
+	3AE  :   003AE;
+	3AF  :   003AF;
+	3B0  :   003B0;
+	3B1  :   003B1;
+	3B2  :   003B2;
+	3B3  :   003B3;
+	3B4  :   003B4;
+	3B5  :   003B5;
+	3B6  :   003B6;
+	3B7  :   003B7;
+	3B8  :   003B8;
+	3B9  :   003B9;
+	3BA  :   003BA;
+	3BB  :   003BB;
+	3BC  :   003BC;
+	3BD  :   003BD;
+	3BE  :   003BE;
+	3BF  :   003BF;
+	3C0  :   003C0;
+	3C1  :   003C1;
+	3C2  :   003C2;
+	3C3  :   003C3;
+	3C4  :   003C4;
+	3C5  :   003C5;
+	3C6  :   003C6;
+	3C7  :   003C7;
+	3C8  :   003C8;
+	3C9  :   003C9;
+	3CA  :   003CA;
+	3CB  :   003CB;
+	3CC  :   003CC;
+	3CD  :   003CD;
+	3CE  :   003CE;
+	3CF  :   003CF;
+	3D0  :   003D0;
+	3D1  :   003D1;
+	3D2  :   003D2;
+	3D3  :   003D3;
+	3D4  :   003D4;
+	3D5  :   003D5;
+	3D6  :   003D6;
+	3D7  :   003D7;
+	3D8  :   003D8;
+	3D9  :   003D9;
+	3DA  :   003DA;
+	3DB  :   003DB;
+	3DC  :   003DC;
+	3DD  :   003DD;
+	3DE  :   003DE;
+	3DF  :   003DF;
+	3E0  :   003E0;
+	3E1  :   003E1;
+	3E2  :   003E2;
+	3E3  :   003E3;
+	3E4  :   003E4;
+	3E5  :   003E5;
+	3E6  :   003E6;
+	3E7  :   003E7;
+	3E8  :   003E8;
+	3E9  :   003E9;
+	3EA  :   003EA;
+	3EB  :   003EB;
+	3EC  :   003EC;
+	3ED  :   003ED;
+	3EE  :   003EE;
+	3EF  :   003EF;
+	3F0  :   003F0;
+	3F1  :   003F1;
+	3F2  :   003F2;
+	3F3  :   003F3;
+	3F4  :   003F4;
+	3F5  :   003F5;
+	3F6  :   003F6;
+	3F7  :   003F7;
+	3F8  :   003F8;
+	3F9  :   003F9;
+	3FA  :   003FA;
+	3FB  :   003FB;
+	3FC  :   003FC;
+	3FD  :   003FD;
+	3FE  :   003FE;
+	3FF  :   003FF;
+	400  :   00400;
+	401  :   00401;
+	402  :   00402;
+	403  :   00403;
+	404  :   00404;
+	405  :   00405;
+	406  :   00406;
+	407  :   00407;
+	408  :   00408;
+	409  :   00409;
+	40A  :   0040A;
+	40B  :   0040B;
+	40C  :   0040C;
+	40D  :   0040D;
+	40E  :   0040E;
+	40F  :   0040F;
+	410  :   00410;
+	411  :   00411;
+	412  :   00412;
+	413  :   00413;
+	414  :   00414;
+	415  :   00415;
+	416  :   00416;
+	417  :   00417;
+	418  :   00418;
+	419  :   00419;
+	41A  :   0041A;
+	41B  :   0041B;
+	41C  :   0041C;
+	41D  :   0041D;
+	41E  :   0041E;
+	41F  :   0041F;
+	420  :   00420;
+	421  :   00421;
+	422  :   00422;
+	423  :   00423;
+	424  :   00424;
+	425  :   00425;
+	426  :   00426;
+	427  :   00427;
+	428  :   00428;
+	429  :   00429;
+	42A  :   0042A;
+	42B  :   0042B;
+	42C  :   0042C;
+	42D  :   0042D;
+	42E  :   0042E;
+	42F  :   0042F;
+	430  :   00430;
+	431  :   00431;
+	432  :   00432;
+	433  :   00433;
+	434  :   00434;
+	435  :   00435;
+	436  :   00436;
+	437  :   00437;
+	438  :   00438;
+	439  :   00439;
+	43A  :   0043A;
+	43B  :   0043B;
+	43C  :   0043C;
+	43D  :   0043D;
+	43E  :   0043E;
+	43F  :   0043F;
+	440  :   00440;
+	441  :   00441;
+	442  :   00442;
+	443  :   00443;
+	444  :   00444;
+	445  :   00445;
+	446  :   00446;
+	447  :   00447;
+	448  :   00448;
+	449  :   00449;
+	44A  :   0044A;
+	44B  :   0044B;
+	44C  :   0044C;
+	44D  :   0044D;
+	44E  :   0044E;
+	44F  :   0044F;
+	450  :   00450;
+	451  :   00451;
+	452  :   00452;
+	453  :   00453;
+	454  :   00454;
+	455  :   00455;
+	456  :   00456;
+	457  :   00457;
+	458  :   00458;
+	459  :   00459;
+	45A  :   0045A;
+	45B  :   0045B;
+	45C  :   0045C;
+	45D  :   0045D;
+	45E  :   0045E;
+	45F  :   0045F;
+	460  :   00460;
+	461  :   00461;
+	462  :   00462;
+	463  :   00463;
+	464  :   00464;
+	465  :   00465;
+	466  :   00466;
+	467  :   00467;
+	468  :   00468;
+	469  :   00469;
+	46A  :   0046A;
+	46B  :   0046B;
+	46C  :   0046C;
+	46D  :   0046D;
+	46E  :   0046E;
+	46F  :   0046F;
+	470  :   00470;
+	471  :   00471;
+	472  :   00472;
+	473  :   00473;
+	474  :   00474;
+	475  :   00475;
+	476  :   00476;
+	477  :   00477;
+	478  :   00478;
+	479  :   00479;
+	47A  :   0047A;
+	47B  :   0047B;
+	47C  :   0047C;
+	47D  :   0047D;
+	47E  :   0047E;
+	47F  :   0047F;
+	480  :   00480;
+	481  :   00481;
+	482  :   00482;
+	483  :   00483;
+	484  :   00484;
+	485  :   00485;
+	486  :   00486;
+	487  :   00487;
+	488  :   00488;
+	489  :   00489;
+	48A  :   0048A;
+	48B  :   0048B;
+	48C  :   0048C;
+	48D  :   0048D;
+	48E  :   0048E;
+	48F  :   0048F;
+	490  :   00490;
+	491  :   00491;
+	492  :   00492;
+	493  :   00493;
+	494  :   00494;
+	495  :   00495;
+	496  :   00496;
+	497  :   00497;
+	498  :   00498;
+	499  :   00499;
+	49A  :   0049A;
+	49B  :   0049B;
+	49C  :   0049C;
+	49D  :   0049D;
+	49E  :   0049E;
+	49F  :   0049F;
+	4A0  :   004A0;
+	4A1  :   004A1;
+	4A2  :   004A2;
+	4A3  :   004A3;
+	4A4  :   004A4;
+	4A5  :   004A5;
+	4A6  :   004A6;
+	4A7  :   004A7;
+	4A8  :   004A8;
+	4A9  :   004A9;
+	4AA  :   004AA;
+	4AB  :   004AB;
+	4AC  :   004AC;
+	4AD  :   004AD;
+	4AE  :   004AE;
+	4AF  :   004AF;
+	4B0  :   004B0;
+	4B1  :   004B1;
+	4B2  :   004B2;
+	4B3  :   004B3;
+	4B4  :   004B4;
+	4B5  :   004B5;
+	4B6  :   004B6;
+	4B7  :   004B7;
+	4B8  :   004B8;
+	4B9  :   004B9;
+	4BA  :   004BA;
+	4BB  :   004BB;
+	4BC  :   004BC;
+	4BD  :   004BD;
+	4BE  :   004BE;
+	4BF  :   004BF;
+	4C0  :   004C0;
+	4C1  :   004C1;
+	4C2  :   004C2;
+	4C3  :   004C3;
+	4C4  :   004C4;
+	4C5  :   004C5;
+	4C6  :   004C6;
+	4C7  :   004C7;
+	4C8  :   004C8;
+	4C9  :   004C9;
+	4CA  :   004CA;
+	4CB  :   004CB;
+	4CC  :   004CC;
+	4CD  :   004CD;
+	4CE  :   004CE;
+	4CF  :   004CF;
+	4D0  :   004D0;
+	4D1  :   004D1;
+	4D2  :   004D2;
+	4D3  :   004D3;
+	4D4  :   004D4;
+	4D5  :   004D5;
+	4D6  :   004D6;
+	4D7  :   004D7;
+	4D8  :   004D8;
+	4D9  :   004D9;
+	4DA  :   004DA;
+	4DB  :   004DB;
+	4DC  :   004DC;
+	4DD  :   004DD;
+	4DE  :   004DE;
+	4DF  :   004DF;
+	4E0  :   004E0;
+	4E1  :   004E1;
+	4E2  :   004E2;
+	4E3  :   004E3;
+	4E4  :   004E4;
+	4E5  :   004E5;
+	4E6  :   004E6;
+	4E7  :   004E7;
+	4E8  :   004E8;
+	4E9  :   004E9;
+	4EA  :   004EA;
+	4EB  :   004EB;
+	4EC  :   004EC;
+	4ED  :   004ED;
+	4EE  :   004EE;
+	4EF  :   004EF;
+	4F0  :   004F0;
+	4F1  :   004F1;
+	4F2  :   004F2;
+	4F3  :   004F3;
+	4F4  :   004F4;
+	4F5  :   004F5;
+	4F6  :   004F6;
+	4F7  :   004F7;
+	4F8  :   004F8;
+	4F9  :   004F9;
+	4FA  :   004FA;
+	4FB  :   004FB;
+	4FC  :   004FC;
+	4FD  :   004FD;
+	4FE  :   004FE;
+	4FF  :   004FF;
+	500  :   00500;
+	501  :   00501;
+	502  :   00502;
+	503  :   00503;
+	504  :   00504;
+	505  :   00505;
+	506  :   00506;
+	507  :   00507;
+	508  :   00508;
+	509  :   00509;
+	50A  :   0050A;
+	50B  :   0050B;
+	50C  :   0050C;
+	50D  :   0050D;
+	50E  :   0050E;
+	50F  :   0050F;
+	510  :   00510;
+	511  :   00511;
+	512  :   00512;
+	513  :   00513;
+	514  :   00514;
+	515  :   00515;
+	516  :   00516;
+	517  :   00517;
+	518  :   00518;
+	519  :   00519;
+	51A  :   0051A;
+	51B  :   0051B;
+	51C  :   0051C;
+	51D  :   0051D;
+	51E  :   0051E;
+	51F  :   0051F;
+	520  :   00520;
+	521  :   00521;
+	522  :   00522;
+	523  :   00523;
+	524  :   00524;
+	525  :   00525;
+	526  :   00526;
+	527  :   00527;
+	528  :   00528;
+	529  :   00529;
+	52A  :   0052A;
+	52B  :   0052B;
+	52C  :   0052C;
+	52D  :   0052D;
+	52E  :   0052E;
+	52F  :   0052F;
+	530  :   00530;
+	531  :   00531;
+	532  :   00532;
+	533  :   00533;
+	534  :   00534;
+	535  :   00535;
+	536  :   00536;
+	537  :   00537;
+	538  :   00538;
+	539  :   00539;
+	53A  :   0053A;
+	53B  :   0053B;
+	53C  :   0053C;
+	53D  :   0053D;
+	53E  :   0053E;
+	53F  :   0053F;
+	540  :   00540;
+	541  :   00541;
+	542  :   00542;
+	543  :   00543;
+	544  :   00544;
+	545  :   00545;
+	546  :   00546;
+	547  :   00547;
+	548  :   00548;
+	549  :   00549;
+	54A  :   0054A;
+	54B  :   0054B;
+	54C  :   0054C;
+	54D  :   0054D;
+	54E  :   0054E;
+	54F  :   0054F;
+	550  :   00550;
+	551  :   00551;
+	552  :   00552;
+	553  :   00553;
+	554  :   00554;
+	555  :   00555;
+	556  :   00556;
+	557  :   00557;
+	558  :   00558;
+	559  :   00559;
+	55A  :   0055A;
+	55B  :   0055B;
+	55C  :   0055C;
+	55D  :   0055D;
+	55E  :   0055E;
+	55F  :   0055F;
+	560  :   00560;
+	561  :   00561;
+	562  :   00562;
+	563  :   00563;
+	564  :   00564;
+	565  :   00565;
+	566  :   00566;
+	567  :   00567;
+	568  :   00568;
+	569  :   00569;
+	56A  :   0056A;
+	56B  :   0056B;
+	56C  :   0056C;
+	56D  :   0056D;
+	56E  :   0056E;
+	56F  :   0056F;
+	570  :   00570;
+	571  :   00571;
+	572  :   00572;
+	573  :   00573;
+	574  :   00574;
+	575  :   00575;
+	576  :   00576;
+	577  :   00577;
+	578  :   00578;
+	579  :   00579;
+	57A  :   0057A;
+	57B  :   0057B;
+	57C  :   0057C;
+	57D  :   0057D;
+	57E  :   0057E;
+	57F  :   0057F;
+	580  :   00580;
+	581  :   00581;
+	582  :   00582;
+	583  :   00583;
+	584  :   00584;
+	585  :   00585;
+	586  :   00586;
+	587  :   00587;
+	588  :   00588;
+	589  :   00589;
+	58A  :   0058A;
+	58B  :   0058B;
+	58C  :   0058C;
+	58D  :   0058D;
+	58E  :   0058E;
+	58F  :   0058F;
+	590  :   00590;
+	591  :   00591;
+	592  :   00592;
+	593  :   00593;
+	594  :   00594;
+	595  :   00595;
+	596  :   00596;
+	597  :   00597;
+	598  :   00598;
+	599  :   00599;
+	59A  :   0059A;
+	59B  :   0059B;
+	59C  :   0059C;
+	59D  :   0059D;
+	59E  :   0059E;
+	59F  :   0059F;
+	5A0  :   005A0;
+	5A1  :   005A1;
+	5A2  :   005A2;
+	5A3  :   005A3;
+	5A4  :   005A4;
+	5A5  :   005A5;
+	5A6  :   005A6;
+	5A7  :   005A7;
+	5A8  :   005A8;
+	5A9  :   005A9;
+	5AA  :   005AA;
+	5AB  :   005AB;
+	5AC  :   005AC;
+	5AD  :   005AD;
+	5AE  :   005AE;
+	5AF  :   005AF;
+	5B0  :   005B0;
+	5B1  :   005B1;
+	5B2  :   005B2;
+	5B3  :   005B3;
+	5B4  :   005B4;
+	5B5  :   005B5;
+	5B6  :   005B6;
+	5B7  :   005B7;
+	5B8  :   005B8;
+	5B9  :   005B9;
+	5BA  :   005BA;
+	5BB  :   005BB;
+	5BC  :   005BC;
+	5BD  :   005BD;
+	5BE  :   005BE;
+	5BF  :   005BF;
+	5C0  :   005C0;
+	5C1  :   005C1;
+	5C2  :   005C2;
+	5C3  :   005C3;
+	5C4  :   005C4;
+	5C5  :   005C5;
+	5C6  :   005C6;
+	5C7  :   005C7;
+	5C8  :   005C8;
+	5C9  :   005C9;
+	5CA  :   005CA;
+	5CB  :   005CB;
+	5CC  :   005CC;
+	5CD  :   005CD;
+	5CE  :   005CE;
+	5CF  :   005CF;
+	5D0  :   005D0;
+	5D1  :   005D1;
+	5D2  :   005D2;
+	5D3  :   005D3;
+	5D4  :   005D4;
+	5D5  :   005D5;
+	5D6  :   005D6;
+	5D7  :   005D7;
+	5D8  :   005D8;
+	5D9  :   005D9;
+	5DA  :   005DA;
+	5DB  :   005DB;
+	5DC  :   005DC;
+	5DD  :   005DD;
+	5DE  :   005DE;
+	5DF  :   005DF;
+	5E0  :   005E0;
+	5E1  :   005E1;
+	5E2  :   005E2;
+	5E3  :   005E3;
+	5E4  :   005E4;
+	5E5  :   005E5;
+	5E6  :   005E6;
+	5E7  :   005E7;
+	5E8  :   005E8;
+	5E9  :   005E9;
+	5EA  :   005EA;
+	5EB  :   005EB;
+	5EC  :   005EC;
+	5ED  :   005ED;
+	5EE  :   005EE;
+	5EF  :   005EF;
+	5F0  :   005F0;
+	5F1  :   005F1;
+	5F2  :   005F2;
+	5F3  :   005F3;
+	5F4  :   005F4;
+	5F5  :   005F5;
+	5F6  :   005F6;
+	5F7  :   005F7;
+	5F8  :   005F8;
+	5F9  :   005F9;
+	5FA  :   005FA;
+	5FB  :   005FB;
+	5FC  :   005FC;
+	5FD  :   005FD;
+	5FE  :   005FE;
+	5FF  :   005FF;
+	600  :   00600;
+	601  :   00601;
+	602  :   00602;
+	603  :   00603;
+	604  :   00604;
+	605  :   00605;
+	606  :   00606;
+	607  :   00607;
+	608  :   00608;
+	609  :   00609;
+	60A  :   0060A;
+	60B  :   0060B;
+	60C  :   0060C;
+	60D  :   0060D;
+	60E  :   0060E;
+	60F  :   0060F;
+	610  :   00610;
+	611  :   00611;
+	612  :   00612;
+	613  :   00613;
+	614  :   00614;
+	615  :   00615;
+	616  :   00616;
+	617  :   00617;
+	618  :   00618;
+	619  :   00619;
+	61A  :   0061A;
+	61B  :   0061B;
+	61C  :   0061C;
+	61D  :   0061D;
+	61E  :   0061E;
+	61F  :   0061F;
+	620  :   00620;
+	621  :   00621;
+	622  :   00622;
+	623  :   00623;
+	624  :   00624;
+	625  :   00625;
+	626  :   00626;
+	627  :   00627;
+	628  :   00628;
+	629  :   00629;
+	62A  :   0062A;
+	62B  :   0062B;
+	62C  :   0062C;
+	62D  :   0062D;
+	62E  :   0062E;
+	62F  :   0062F;
+	630  :   00630;
+	631  :   00631;
+	632  :   00632;
+	633  :   00633;
+	634  :   00634;
+	635  :   00635;
+	636  :   00636;
+	637  :   00637;
+	638  :   00638;
+	639  :   00639;
+	63A  :   0063A;
+	63B  :   0063B;
+	63C  :   0063C;
+	63D  :   0063D;
+	63E  :   0063E;
+	63F  :   0063F;
+	640  :   00640;
+	641  :   00641;
+	642  :   00642;
+	643  :   00643;
+	644  :   00644;
+	645  :   00645;
+	646  :   00646;
+	647  :   00647;
+	648  :   00648;
+	649  :   00649;
+	64A  :   0064A;
+	64B  :   0064B;
+	64C  :   0064C;
+	64D  :   0064D;
+	64E  :   0064E;
+	64F  :   0064F;
+	650  :   00650;
+	651  :   00651;
+	652  :   00652;
+	653  :   00653;
+	654  :   00654;
+	655  :   00655;
+	656  :   00656;
+	657  :   00657;
+	658  :   00658;
+	659  :   00659;
+	65A  :   0065A;
+	65B  :   0065B;
+	65C  :   0065C;
+	65D  :   0065D;
+	65E  :   0065E;
+	65F  :   0065F;
+	660  :   00660;
+	661  :   00661;
+	662  :   00662;
+	663  :   00663;
+	664  :   00664;
+	665  :   00665;
+	666  :   00666;
+	667  :   00667;
+	668  :   00668;
+	669  :   00669;
+	66A  :   0066A;
+	66B  :   0066B;
+	66C  :   0066C;
+	66D  :   0066D;
+	66E  :   0066E;
+	66F  :   0066F;
+	670  :   00670;
+	671  :   00671;
+	672  :   00672;
+	673  :   00673;
+	674  :   00674;
+	675  :   00675;
+	676  :   00676;
+	677  :   00677;
+	678  :   00678;
+	679  :   00679;
+	67A  :   0067A;
+	67B  :   0067B;
+	67C  :   0067C;
+	67D  :   0067D;
+	67E  :   0067E;
+	67F  :   0067F;
+	680  :   00680;
+	681  :   00681;
+	682  :   00682;
+	683  :   00683;
+	684  :   00684;
+	685  :   00685;
+	686  :   00686;
+	687  :   00687;
+	688  :   00688;
+	689  :   00689;
+	68A  :   0068A;
+	68B  :   0068B;
+	68C  :   0068C;
+	68D  :   0068D;
+	68E  :   0068E;
+	68F  :   0068F;
+	690  :   00690;
+	691  :   00691;
+	692  :   00692;
+	693  :   00693;
+	694  :   00694;
+	695  :   00695;
+	696  :   00696;
+	697  :   00697;
+	698  :   00698;
+	699  :   00699;
+	69A  :   0069A;
+	69B  :   0069B;
+	69C  :   0069C;
+	69D  :   0069D;
+	69E  :   0069E;
+	69F  :   0069F;
+	6A0  :   006A0;
+	6A1  :   006A1;
+	6A2  :   006A2;
+	6A3  :   006A3;
+	6A4  :   006A4;
+	6A5  :   006A5;
+	6A6  :   006A6;
+	6A7  :   006A7;
+	6A8  :   006A8;
+	6A9  :   006A9;
+	6AA  :   006AA;
+	6AB  :   006AB;
+	6AC  :   006AC;
+	6AD  :   006AD;
+	6AE  :   006AE;
+	6AF  :   006AF;
+	6B0  :   006B0;
+	6B1  :   006B1;
+	6B2  :   006B2;
+	6B3  :   006B3;
+	6B4  :   006B4;
+	6B5  :   006B5;
+	6B6  :   006B6;
+	6B7  :   006B7;
+	6B8  :   006B8;
+	6B9  :   006B9;
+	6BA  :   006BA;
+	6BB  :   006BB;
+	6BC  :   006BC;
+	6BD  :   006BD;
+	6BE  :   006BE;
+	6BF  :   006BF;
+	6C0  :   006C0;
+	6C1  :   006C1;
+	6C2  :   006C2;
+	6C3  :   006C3;
+	6C4  :   006C4;
+	6C5  :   006C5;
+	6C6  :   006C6;
+	6C7  :   006C7;
+	6C8  :   006C8;
+	6C9  :   006C9;
+	6CA  :   006CA;
+	6CB  :   006CB;
+	6CC  :   006CC;
+	6CD  :   006CD;
+	6CE  :   006CE;
+	6CF  :   006CF;
+	6D0  :   006D0;
+	6D1  :   006D1;
+	6D2  :   006D2;
+	6D3  :   006D3;
+	6D4  :   006D4;
+	6D5  :   006D5;
+	6D6  :   006D6;
+	6D7  :   006D7;
+	6D8  :   006D8;
+	6D9  :   006D9;
+	6DA  :   006DA;
+	6DB  :   006DB;
+	6DC  :   006DC;
+	6DD  :   006DD;
+	6DE  :   006DE;
+	6DF  :   006DF;
+	6E0  :   006E0;
+	6E1  :   006E1;
+	6E2  :   006E2;
+	6E3  :   006E3;
+	6E4  :   006E4;
+	6E5  :   006E5;
+	6E6  :   006E6;
+	6E7  :   006E7;
+	6E8  :   006E8;
+	6E9  :   006E9;
+	6EA  :   006EA;
+	6EB  :   006EB;
+	6EC  :   006EC;
+	6ED  :   006ED;
+	6EE  :   006EE;
+	6EF  :   006EF;
+	6F0  :   006F0;
+	6F1  :   006F1;
+	6F2  :   006F2;
+	6F3  :   006F3;
+	6F4  :   006F4;
+	6F5  :   006F5;
+	6F6  :   006F6;
+	6F7  :   006F7;
+	6F8  :   006F8;
+	6F9  :   006F9;
+	6FA  :   006FA;
+	6FB  :   006FB;
+	6FC  :   006FC;
+	6FD  :   006FD;
+	6FE  :   006FE;
+	6FF  :   006FF;
+	700  :   00700;
+	701  :   00701;
+	702  :   00702;
+	703  :   00703;
+	704  :   00704;
+	705  :   00705;
+	706  :   00706;
+	707  :   00707;
+	708  :   00708;
+	709  :   00709;
+	70A  :   0070A;
+	70B  :   0070B;
+	70C  :   0070C;
+	70D  :   0070D;
+	70E  :   0070E;
+	70F  :   0070F;
+	710  :   00710;
+	711  :   00711;
+	712  :   00712;
+	713  :   00713;
+	714  :   00714;
+	715  :   00715;
+	716  :   00716;
+	717  :   00717;
+	718  :   00718;
+	719  :   00719;
+	71A  :   0071A;
+	71B  :   0071B;
+	71C  :   0071C;
+	71D  :   0071D;
+	71E  :   0071E;
+	71F  :   0071F;
+	720  :   00720;
+	721  :   00721;
+	722  :   00722;
+	723  :   00723;
+	724  :   00724;
+	725  :   00725;
+	726  :   00726;
+	727  :   00727;
+	728  :   00728;
+	729  :   00729;
+	72A  :   0072A;
+	72B  :   0072B;
+	72C  :   0072C;
+	72D  :   0072D;
+	72E  :   0072E;
+	72F  :   0072F;
+	730  :   00730;
+	731  :   00731;
+	732  :   00732;
+	733  :   00733;
+	734  :   00734;
+	735  :   00735;
+	736  :   00736;
+	737  :   00737;
+	738  :   00738;
+	739  :   00739;
+	73A  :   0073A;
+	73B  :   0073B;
+	73C  :   0073C;
+	73D  :   0073D;
+	73E  :   0073E;
+	73F  :   0073F;
+	740  :   00740;
+	741  :   00741;
+	742  :   00742;
+	743  :   00743;
+	744  :   00744;
+	745  :   00745;
+	746  :   00746;
+	747  :   00747;
+	748  :   00748;
+	749  :   00749;
+	74A  :   0074A;
+	74B  :   0074B;
+	74C  :   0074C;
+	74D  :   0074D;
+	74E  :   0074E;
+	74F  :   0074F;
+	750  :   00750;
+	751  :   00751;
+	752  :   00752;
+	753  :   00753;
+	754  :   00754;
+	755  :   00755;
+	756  :   00756;
+	757  :   00757;
+	758  :   00758;
+	759  :   00759;
+	75A  :   0075A;
+	75B  :   0075B;
+	75C  :   0075C;
+	75D  :   0075D;
+	75E  :   0075E;
+	75F  :   0075F;
+	760  :   00760;
+	761  :   00761;
+	762  :   00762;
+	763  :   00763;
+	764  :   00764;
+	765  :   00765;
+	766  :   00766;
+	767  :   00767;
+	768  :   00768;
+	769  :   00769;
+	76A  :   0076A;
+	76B  :   0076B;
+	76C  :   0076C;
+	76D  :   0076D;
+	76E  :   0076E;
+	76F  :   0076F;
+	770  :   00770;
+	771  :   00771;
+	772  :   00772;
+	773  :   00773;
+	774  :   00774;
+	775  :   00775;
+	776  :   00776;
+	777  :   00777;
+	778  :   00778;
+	779  :   00779;
+	77A  :   0077A;
+	77B  :   0077B;
+	77C  :   0077C;
+	77D  :   0077D;
+	77E  :   0077E;
+	77F  :   0077F;
+	780  :   00780;
+	781  :   00781;
+	782  :   00782;
+	783  :   00783;
+	784  :   00784;
+	785  :   00785;
+	786  :   00786;
+	787  :   00787;
+	788  :   00788;
+	789  :   00789;
+	78A  :   0078A;
+	78B  :   0078B;
+	78C  :   0078C;
+	78D  :   0078D;
+	78E  :   0078E;
+	78F  :   0078F;
+	790  :   00790;
+	791  :   00791;
+	792  :   00792;
+	793  :   00793;
+	794  :   00794;
+	795  :   00795;
+	796  :   00796;
+	797  :   00797;
+	798  :   00798;
+	799  :   00799;
+	79A  :   0079A;
+	79B  :   0079B;
+	79C  :   0079C;
+	79D  :   0079D;
+	79E  :   0079E;
+	79F  :   0079F;
+	7A0  :   007A0;
+	7A1  :   007A1;
+	7A2  :   007A2;
+	7A3  :   007A3;
+	7A4  :   007A4;
+	7A5  :   007A5;
+	7A6  :   007A6;
+	7A7  :   007A7;
+	7A8  :   007A8;
+	7A9  :   007A9;
+	7AA  :   007AA;
+	7AB  :   007AB;
+	7AC  :   007AC;
+	7AD  :   007AD;
+	7AE  :   007AE;
+	7AF  :   007AF;
+	7B0  :   007B0;
+	7B1  :   007B1;
+	7B2  :   007B2;
+	7B3  :   007B3;
+	7B4  :   007B4;
+	7B5  :   007B5;
+	7B6  :   007B6;
+	7B7  :   007B7;
+	7B8  :   007B8;
+	7B9  :   007B9;
+	7BA  :   007BA;
+	7BB  :   007BB;
+	7BC  :   007BC;
+	7BD  :   007BD;
+	7BE  :   007BE;
+	7BF  :   007BF;
+	7C0  :   007C0;
+	7C1  :   007C1;
+	7C2  :   007C2;
+	7C3  :   007C3;
+	7C4  :   007C4;
+	7C5  :   007C5;
+	7C6  :   007C6;
+	7C7  :   007C7;
+	7C8  :   007C8;
+	7C9  :   007C9;
+	7CA  :   007CA;
+	7CB  :   007CB;
+	7CC  :   007CC;
+	7CD  :   007CD;
+	7CE  :   007CE;
+	7CF  :   007CF;
+	7D0  :   007D0;
+	7D1  :   007D1;
+	7D2  :   007D2;
+	7D3  :   007D3;
+	7D4  :   007D4;
+	7D5  :   007D5;
+	7D6  :   007D6;
+	7D7  :   007D7;
+	7D8  :   007D8;
+	7D9  :   007D9;
+	7DA  :   007DA;
+	7DB  :   007DB;
+	7DC  :   007DC;
+	7DD  :   007DD;
+	7DE  :   007DE;
+	7DF  :   007DF;
+	7E0  :   007E0;
+	7E1  :   007E1;
+	7E2  :   007E2;
+	7E3  :   007E3;
+	7E4  :   007E4;
+	7E5  :   007E5;
+	7E6  :   007E6;
+	7E7  :   007E7;
+	7E8  :   007E8;
+	7E9  :   007E9;
+	7EA  :   007EA;
+	7EB  :   007EB;
+	7EC  :   007EC;
+	7ED  :   007ED;
+	7EE  :   007EE;
+	7EF  :   007EF;
+	7F0  :   007F0;
+	7F1  :   007F1;
+	7F2  :   007F2;
+	7F3  :   007F3;
+	7F4  :   007F4;
+	7F5  :   007F5;
+	7F6  :   007F6;
+	7F7  :   007F7;
+	7F8  :   007F8;
+	7F9  :   007F9;
+	7FA  :   007FA;
+	7FB  :   007FB;
+	7FC  :   007FC;
+	7FD  :   007FD;
+	7FE  :   007FE;
+	7FF  :   007FF;
+END;
diff --git a/libraries/base/diag/src/data/diag_sin_1024x18.hex b/libraries/base/diag/src/data/diag_sin_1024x18.hex
new file mode 100644
index 0000000000..8e1a9a6faa
--- /dev/null
+++ b/libraries/base/diag/src/data/diag_sin_1024x18.hex
@@ -0,0 +1,1025 @@
+:03000000000000FD
+:03000100000324D5
+:03000200000648AD
+:0300030000096D84
+:03000400000C915C
+:03000500000FB534
+:030006000012D80D
+:030007000015FCE5
+:0300080000191FBD
+:03000900001C4296
+:03000A00001F656F
+:03000B0000228848
+:03000C000025AA22
+:03000D000028CCFC
+:03000E00002BEED6
+:03000F00002F0FB0
+:0300100000322F8C
+:0300110000354F68
+:0300120000386F44
+:03001300003B8E21
+:03001400003EACFF
+:030015000041CADD
+:030016000044E8BB
+:030017000048049A
+:03001800004B207A
+:03001900004E3B5B
+:03001A000051563C
+:03001B0000546F1F
+:03001C0000578802
+:03001D00005AA0E6
+:03001E00005DB7CB
+:03001F000060CDB1
+:030020000063E397
+:030021000066F77F
+:03002200006A0A67
+:03002300006D1D50
+:0300240000702E3B
+:0300250000733E27
+:0300260000764D14
+:0300270000795B02
+:03002800007C68F1
+:03002900007F73E2
+:03002A0000827DD4
+:03002B00008587C6
+:03002C0000888EBB
+:03002D00008B95B0
+:03002E00008E9AA7
+:03002F0000919E9F
+:030030000094A099
+:030031000097A194
+:03003200009AA091
+:03003300009D9E8F
+:0300340000A09B8E
+:0300350000A39590
+:0300360000A68F92
+:0300370000A98697
+:0300380000AC7C9D
+:0300390000AF71A4
+:03003A0000B264AD
+:03003B0000B555B8
+:03003C0000B844C5
+:03003D0000BB31D4
+:03003E0000BE1DE4
+:03003F0000C107F6
+:0300400000C3EF0B
+:0300410000C6D521
+:0300420000C9B939
+:0300430000CC9B53
+:0300440000CF7B6F
+:0300450000D25A8C
+:0300460000D536AC
+:0300470000D810CE
+:0300480000DAE8F3
+:0300490000DDBE19
+:03004A0000E09241
+:03004B0000E3646B
+:03004C0000E63398
+:03004D0000E900C7
+:03004E0000EBCBF9
+:03004F0000EE942C
+:0300500000F15A62
+:0300510000F41F99
+:0300520000F6E0D5
+:0300530000F9A011
+:0300540000FC5D50
+:0300550000FF1792
+:030056000101CFD6
+:030057000104851C
+:0300580001073865
+:030059000109E9B1
+:03005A00010C9600
+:03005B00010F4250
+:03005C000111EBA4
+:03005D00011491FA
+:03005E0001173453
+:03005F000119D5AF
+:03006000011C730D
+:03006100011F0E6E
+:030062000121A7D2
+:0300630001243D38
+:030064000126D0A2
+:030065000129600E
+:03006600012BED7E
+:03006700012E77F0
+:030068000130FF65
+:03006900013383DD
+:03006A0001360557
+:03006B00013883D6
+:03006C00013AFF57
+:03006D00013D78DA
+:03006E00013FED62
+:03006F0001425FEC
+:030070000144CF79
+:0300710001473B09
+:030072000149A49D
+:03007300014C0934
+:03007400014E6CCE
+:030075000150CB6C
+:030076000153270C
+:03007700015580B0
+:030078000157D657
+:03007900015A2801
+:03007A00015C77AF
+:03007B00015EC360
+:03007C0001610B14
+:03007D00016350CC
+:03007E0001659188
+:03007F000167CF47
+:03008000016A0909
+:03008100016C40CF
+:03008200016E7498
+:030083000170A366
+:030084000172D036
+:030085000174F90A
+:0300860001771EE1
+:0300870001793FBD
+:03008800017B5D9C
+:03008900017D777F
+:03008A00017F8E65
+:03008B000181A14F
+:03008C000183B03D
+:03008D000185BC2E
+:03008E000187C324
+:03008F000189C71D
+:03009000018BC71A
+:03009100018DC41A
+:03009200018FBC1F
+:030093000191B127
+:030094000193A134
+:0300950001958E44
+:0300960001977758
+:0300970001995C70
+:03009800019B3D8C
+:03009900019D1AAC
+:03009A00019EF3D1
+:03009B0001A0C9F8
+:03009C0001A29A24
+:03009D0001A46754
+:03009E0001A63088
+:03009F0001A7F5C1
+:0300A00001A9B6FD
+:0300A10001AB723E
+:0300A20001AD2B82
+:0300A30001AEDFCC
+:0300A40001B09018
+:0300A50001B23C69
+:0300A60001B3E4BF
+:0300A70001B58818
+:0300A80001B72776
+:0300A90001B8C3D8
+:0300AA0001BA5A3E
+:0300AB0001BBEDA9
+:0300AC0001BD7B18
+:0300AD0001BF058B
+:0300AE0001C08B03
+:0300AF0001C20D7E
+:0300B00001C38AFF
+:0300B10001C50383
+:0300B20001C6780C
+:0300B30001C7E89A
+:0300B40001C9542B
+:0300B50001CABBC2
+:0300B60001CC1E5C
+:0300B70001CD7DFB
+:0300B80001CED79F
+:0300B90001D02C47
+:0300BA0001D17EF3
+:0300BB0001D2CAA5
+:0300BC0001D4125A
+:0300BD0001D55614
+:0300BE0001D695D3
+:0300BF0001D7D096
+:0300C00001D9065D
+:0300C10001DA372A
+:0300C20001DB64FB
+:0300C30001DC8DD0
+:0300C40001DDB0AB
+:0300C50001DECF8A
+:0300C60001DFEA6D
+:0300C70001E10054
+:0300C80001E21141
+:0300C90001E31E32
+:0300CA0001E42628
+:0300CB0001E52923
+:0300CC0001E62822
+:0300CD0001E72226
+:0300CE0001E8172F
+:0300CF0001E9073D
+:0300D00001E9F350
+:0300D10001EADA67
+:0300D20001EBBD82
+:0300D30001EC9AA3
+:0300D40001ED73C8
+:0300D50001EE47F2
+:0300D60001EF1720
+:0300D70001EFE155
+:0300D80001F0A78D
+:0300D90001F168CA
+:0300DA0001F2240C
+:0300DB0001F2DC53
+:0300DC0001F38E9F
+:0300DD0001F43CEF
+:0300DE0001F4E545
+:0300DF0001F5899F
+:0300E00001F629FD
+:0300E10001F6C362
+:0300E20001F759CA
+:0300E30001F7E939
+:0300E40001F875AB
+:0300E50001F8FC23
+:0300E60001F97F9E
+:0300E70001F9FC20
+:0300E80001FA74A6
+:0300E90001FAE831
+:0300EA0001FB57C0
+:0300EB0001FBC056
+:0300EC0001FC25EF
+:0300ED0001FC858E
+:0300EE0001FCE032
+:0300EF0001FD37D9
+:0300F00001FD8887
+:0300F10001FDD43A
+:0300F20001FE1CF0
+:0300F30001FE5EAD
+:0300F40001FE9C6E
+:0300F50001FED534
+:0300F60001FF08FF
+:0300F70001FF37CF
+:0300F80001FF61A4
+:0300F90001FF867E
+:0300FA0001FFA65D
+:0300FB0001FFC141
+:0300FC0001FFD829
+:0300FD0001FFE917
+:0300FE0001FFF50A
+:0300FF0001FFFD01
+:0301000001FFFFFD
+:0301010001FFFDFE
+:0301020001FFF505
+:0301030001FFE910
+:0301040001FFD820
+:0301050001FFC136
+:0301060001FFA650
+:0301070001FF866F
+:0301080001FF6193
+:0301090001FF37BC
+:03010A0001FF08EA
+:03010B0001FED51D
+:03010C0001FE9C55
+:03010D0001FE5E92
+:03010E0001FE1CD3
+:03010F0001FDD41B
+:0301100001FD8866
+:0301110001FD37B6
+:0301120001FCE00D
+:0301130001FC8567
+:0301140001FC25C6
+:0301150001FBC02B
+:0301160001FB5793
+:0301170001FAE802
+:0301180001FA7475
+:0301190001F9FCED
+:03011A0001F97F69
+:03011B0001F8FCEC
+:03011C0001F87572
+:03011D0001F7E9FE
+:03011E0001F7598D
+:03011F0001F6C323
+:0301200001F629BC
+:0301210001F5895C
+:0301220001F4E500
+:0301230001F43CA8
+:0301240001F38E56
+:0301250001F2DC08
+:0301260001F224BF
+:0301270001F1687B
+:0301280001F0A73C
+:0301290001EFE102
+:03012A0001EF17CB
+:03012B0001EE479B
+:03012C0001ED736F
+:03012D0001EC9A48
+:03012E0001EBBD25
+:03012F0001EADA08
+:0301300001E9F3EF
+:0301310001E907DA
+:0301320001E817CA
+:0301330001E722BF
+:0301340001E628B9
+:0301350001E529B8
+:0301360001E426BB
+:0301370001E31EC3
+:0301380001E211D0
+:0301390001E100E1
+:03013A0001DFEAF8
+:03013B0001DECF13
+:03013C0001DDB032
+:03013D0001DC8D55
+:03013E0001DB647E
+:03013F0001DA37AB
+:0301400001D906DC
+:0301410001D7D013
+:0301420001D6954E
+:0301430001D5568D
+:0301440001D412D1
+:0301450001D2CA1A
+:0301460001D17E66
+:0301470001D02CB8
+:0301480001CED70E
+:0301490001CD7D68
+:03014A0001CC1EC7
+:03014B0001CABB2B
+:03014C0001C95492
+:03014D0001C7E8FF
+:03014E0001C6786F
+:03014F0001C503E4
+:0301500001C38A5E
+:0301510001C20DDB
+:0301520001C08B5E
+:0301530001BF05E4
+:0301540001BD7B6F
+:0301550001BBEDFE
+:0301560001BA5A91
+:0301570001B8C329
+:0301580001B727C5
+:0301590001B58865
+:03015A0001B3E40A
+:03015B0001B23CB2
+:03015C0001B0905F
+:03015D0001AEDF11
+:03015E0001AD2BC5
+:03015F0001AB727F
+:0301600001A9B63C
+:0301610001A7F5FE
+:0301620001A630C3
+:0301630001A4678D
+:0301640001A29A5B
+:0301650001A0C92D
+:03016600019EF304
+:03016700019D1ADD
+:03016800019B3DBB
+:0301690001995C9D
+:03016A0001977783
+:03016B0001958E6D
+:03016C000193A15B
+:03016D000191B14C
+:03016E00018FBC42
+:03016F00018DC43B
+:03017000018BC739
+:030171000189C73A
+:030172000187C33F
+:030173000185BC47
+:030174000183B054
+:030175000181A164
+:03017600017F8E78
+:03017700017D7790
+:03017800017B5DAB
+:0301790001793FCA
+:03017A0001771EEC
+:03017B000174F913
+:03017C000172D03D
+:03017D000170A36B
+:03017E00016E749B
+:03017F00016C40D0
+:03018000016A0908
+:030181000167CF44
+:0301820001659183
+:03018300016350C5
+:0301840001610B0B
+:03018500015EC355
+:03018600015C77A2
+:03018700015A28F2
+:030188000157D646
+:030189000155809D
+:03018A00015327F7
+:03018B000150CB55
+:03018C00014E6CB5
+:03018D00014C0919
+:03018E000149A480
+:03018F0001473BEA
+:030190000144CF58
+:0301910001425FC9
+:03019200013FED3D
+:03019300013D78B3
+:03019400013AFF2E
+:03019500013883AB
+:030196000136052A
+:03019700013383AE
+:030198000130FF34
+:03019900012E77BD
+:03019A00012BED49
+:03019B00012960D7
+:03019C000126D069
+:03019D0001243DFD
+:03019E000121A795
+:03019F00011F0E2F
+:0301A000011C73CC
+:0301A1000119D56C
+:0301A2000117340E
+:0301A300011491B3
+:0301A4000111EB5B
+:0301A500010F4205
+:0301A600010C96B3
+:0301A7000109E962
+:0301A80001073814
+:0301A900010485C9
+:0301AA000101CF81
+:0301AB0000FF173B
+:0301AC0000FC5DF7
+:0301AD0000F9A0B6
+:0301AE0000F6E078
+:0301AF0000F41F3A
+:0301B00000F15A01
+:0301B10000EE94C9
+:0301B20000EBCB94
+:0301B30000E90060
+:0301B40000E6332F
+:0301B50000E36400
+:0301B60000E092D4
+:0301B70000DDBEAA
+:0301B80000DAE882
+:0301B90000D8105B
+:0301BA0000D53637
+:0301BB0000D25A15
+:0301BC0000CF7BF6
+:0301BD0000CC9BD8
+:0301BE0000C9B9BC
+:0301BF0000C6D5A2
+:0301C00000C3EF8A
+:0301C10000C10773
+:0301C20000BE1D5F
+:0301C30000BB314D
+:0301C40000B8443C
+:0301C50000B5552D
+:0301C60000B26420
+:0301C70000AF7115
+:0301C80000AC7C0C
+:0301C90000A98604
+:0301CA0000A68FFD
+:0301CB0000A395F9
+:0301CC0000A09BF5
+:0301CD00009D9EF4
+:0301CE00009AA0F4
+:0301CF000097A1F5
+:0301D0000094A0F8
+:0301D10000919EFC
+:0301D200008E9A02
+:0301D300008B9509
+:0301D40000888E12
+:0301D5000085871B
+:0301D60000827D27
+:0301D700007F7333
+:0301D800007C6840
+:0301D90000795B4F
+:0301DA0000764D5F
+:0301DB0000733E70
+:0301DC0000702E82
+:0301DD00006D1D95
+:0301DE00006A0AAA
+:0301DF000066F7C0
+:0301E0000063E3D6
+:0301E1000060CDEE
+:0301E200005DB706
+:0301E300005AA01F
+:0301E40000578839
+:0301E50000546F54
+:0301E6000051566F
+:0301E700004E3B8C
+:0301E800004B20A9
+:0301E900004804C7
+:0301EA000044E8E6
+:0301EB000041CA06
+:0301EC00003EAC26
+:0301ED00003B8E46
+:0301EE0000386F67
+:0301EF0000354F89
+:0301F00000322FAB
+:0301F100002F0FCD
+:0301F200002BEEF1
+:0301F3000028CC15
+:0301F4000025AA39
+:0301F5000022885D
+:0301F600001F6582
+:0301F700001C42A7
+:0301F80000191FCC
+:0301F9000015FCF2
+:0301FA000012D818
+:0301FB00000FB53D
+:0301FC00000C9163
+:0301FD0000096D89
+:0301FE00000648B0
+:0301FF00000324D6
+:03020000000000FB
+:0302010003FCDC1F
+:0302020003F9B845
+:0302030003F6936C
+:0302040003F36F92
+:0302050003F04BB8
+:0302060003ED28DD
+:0302070003EA0403
+:0302080003E6E129
+:0302090003E3BE4E
+:03020A0003E09B73
+:03020B0003DD7898
+:03020C0003DA56BC
+:03020D0003D734E0
+:03020E0003D41204
+:03020F0003D0F128
+:0302100003CDD14A
+:0302110003CAB16C
+:0302120003C7918E
+:0302130003C472AF
+:0302140003C154CF
+:0302150003BE36EF
+:0302160003BB180F
+:0302170003B7FC2E
+:0302180003B4E04C
+:0302190003B1C569
+:03021A0003AEAA86
+:03021B0003AB91A1
+:03021C0003A878BC
+:03021D0003A560D6
+:03021E0003A249EF
+:03021F00039F3307
+:03022000039C1D1F
+:0302210003990935
+:030222000395F64B
+:030223000392E360
+:03022400038FD273
+:03022500038CC285
+:030226000389B396
+:030227000386A5A6
+:03022800038398B5
+:0302290003808DC2
+:03022A00037D83CE
+:03022B00037A79DA
+:03022C00037772E3
+:03022D0003746BEC
+:03022E00037166F3
+:03022F00036E62F9
+:03023000036B60FD
+:0302310003685F00
+:0302320003656001
+:0302330003626201
+:03023400035F6500
+:03023500035C6BFC
+:03023600035971F8
+:0302370003567AF1
+:03023800035384E9
+:0302390003508FE0
+:03023A00034D9CD5
+:03023B00034AABC8
+:03023C000347BCB9
+:03023D000344CFA8
+:03023E000341E396
+:03023F00033EF982
+:03024000033C116B
+:0302410003392B53
+:0302420003364739
+:030243000333651D
+:03024400033085FF
+:03024500032DA6E0
+:03024600032ACABE
+:030247000327F09A
+:0302480003251873
+:030249000322424B
+:03024A00031F6E21
+:03024B00031C9CF5
+:03024C000319CDC6
+:03024D0003170094
+:03024E0003143561
+:03024F0003116C2C
+:03025000030EA6F4
+:03025100030BE1BB
+:030252000309207D
+:030253000306603F
+:030254000303A3FE
+:030255000300E9BA
+:0302560002FE3174
+:0302570002FB7B2C
+:0302580002F8C8E1
+:0302590002F61793
+:03025A0002F36A42
+:03025B0002F0BEF0
+:03025C0002EE159A
+:03025D0002EB6F42
+:03025E0002E8CCE7
+:03025F0002E62B89
+:0302600002E38D29
+:0302610002E0F2C6
+:0302620002DE5960
+:0302630002DBC3F8
+:0302640002D9308C
+:0302650002D6A01E
+:0302660002D413AC
+:0302670002D18938
+:0302680002CF01C1
+:0302690002CC7D47
+:03026A0002C9FBCB
+:03026B0002C77D4A
+:03026C0002C501C7
+:03026D0002C28842
+:03026E0002C013B8
+:03026F0002BDA12C
+:0302700002BB319D
+:0302710002B8C50B
+:0302720002B65C75
+:0302730002B3F7DC
+:0302740002B19440
+:0302750002AF35A0
+:0302760002ACD9FE
+:0302770002AA8058
+:0302780002A82AAF
+:0302790002A5D803
+:03027A0002A38953
+:03027B0002A13DA0
+:03027C00029EF5EA
+:03027D00029CB030
+:03027E00029A6F72
+:03027F00029831B1
+:030280000295F7ED
+:030281000293C025
+:0302820002918C5A
+:03028300028F5D8A
+:03028400028D30B8
+:03028500028B07E2
+:030286000288E209
+:030287000286C12B
+:030288000284A34A
+:0302890002828965
+:03028A000280727D
+:03028B00027E5F91
+:03028C00027C50A1
+:03028D00027A44AE
+:03028E0002783DB6
+:03028F00027639BB
+:03029000027439BC
+:0302910002723CBA
+:03029200027044B3
+:03029300026E4FA9
+:03029400026C5F9A
+:03029500026A7288
+:0302960002688972
+:030297000266A458
+:030298000264C33A
+:030299000262E618
+:03029A0002610DF1
+:03029B00025F37C8
+:03029C00025D669A
+:03029D00025B9968
+:03029E000259D032
+:03029F0002580BF7
+:0302A00002564AB9
+:0302A10002548E76
+:0302A2000252D530
+:0302A300025121E4
+:0302A400024F7096
+:0302A500024DC443
+:0302A600024C1CEB
+:0302A700024A7890
+:0302A8000248D930
+:0302A90002473DCC
+:0302AA000245A664
+:0302AB00024413F7
+:0302AC0002428586
+:0302AD000240FB11
+:0302AE00023F7597
+:0302AF00023DF31A
+:0302B000023C7697
+:0302B100023AFD11
+:0302B20002398886
+:0302B300023818F6
+:0302B4000236AC63
+:0302B500023545CA
+:0302B6000233E22E
+:0302B7000232838D
+:0302B800023129E7
+:0302B900022FD43D
+:0302BA00022E828F
+:0302BB00022D36DB
+:0302BC00022BEE24
+:0302BD00022AAA68
+:0302BE0002296BA7
+:0302BF00022830E2
+:0302C0000226FA19
+:0302C1000225C94A
+:0302C20002249C77
+:0302C300022373A0
+:0302C400022250C3
+:0302C500022131E2
+:0302C600022016FD
+:0302C700021F0013
+:0302C800021DEF25
+:0302C900021CE232
+:0302CA00021BDA3A
+:0302CB00021AD73D
+:0302CC000219D83C
+:0302CD000218DE36
+:0302CE000217E92B
+:0302CF000216F91B
+:0302D00002160D06
+:0302D100021526ED
+:0302D200021443D0
+:0302D300021366AD
+:0302D40002128D86
+:0302D5000211B95A
+:0302D6000210E92A
+:0302D70002101FF3
+:0302D800020F59B9
+:0302D900020E987A
+:0302DA00020DDC36
+:0302DB00020D24ED
+:0302DC00020C729F
+:0302DD00020BC44D
+:0302DE00020B1BF5
+:0302DF00020A7799
+:0302E0000209D739
+:0302E10002093DD2
+:0302E2000208A768
+:0302E300020817F7
+:0302E40002078B83
+:0302E50002070409
+:0302E6000206818C
+:0302E70002060408
+:0302E80002058C80
+:0302E900020518F3
+:0302EA000204A962
+:0302EB00020440CA
+:0302EC000203DB2F
+:0302ED0002037B8E
+:0302EE00020320E8
+:0302EF000202C93F
+:0302F0000202788F
+:0302F10002022CDA
+:0302F2000201E422
+:0302F3000201A263
+:0302F400020164A0
+:0302F50002012BD8
+:0302F6000200F80B
+:0302F7000200C939
+:0302F80002009F62
+:0302F90002007A86
+:0302FA0002005AA5
+:0302FB0002003FBF
+:0302FC00020028D5
+:0302FD00020017E5
+:0302FE0002000BF0
+:0302FF00020003F7
+:03030000020001F7
+:03030100020003F4
+:0303020002000BEB
+:03030300020017DE
+:03030400020028CC
+:0303050002003FB4
+:0303060002005A98
+:0303070002007A77
+:0303080002009F51
+:030309000200C926
+:03030A000200F8F6
+:03030B0002012BC1
+:03030C0002016487
+:03030D000201A248
+:03030E000201E405
+:03030F0002022CBB
+:030310000202786E
+:030311000202C91C
+:03031200020320C3
+:0303130002037B67
+:030314000203DB06
+:030315000204409F
+:030316000204A935
+:03031700020518C4
+:0303180002058C4F
+:03031900020604D5
+:03031A0002068157
+:03031B00020704D2
+:03031C0002078B4A
+:03031D00020817BC
+:03031E000208A72B
+:03031F0002093D93
+:030320000209D7F8
+:03032100020A7756
+:03032200020B1BB0
+:03032300020BC406
+:03032400020C7256
+:03032500020D24A2
+:03032600020DDCE9
+:03032700020E982B
+:03032800020F5968
+:0303290002101FA0
+:03032A000210E9D5
+:03032B000211B903
+:03032C0002128D2D
+:03032D0002136652
+:03032E0002144373
+:03032F000215268E
+:0303300002160DA5
+:030331000216F9B8
+:030332000217E9C6
+:030333000218DECF
+:030334000219D8D3
+:03033500021AD7D2
+:03033600021BDACD
+:03033700021CE2C3
+:03033800021DEFB4
+:03033900021F00A0
+:03033A0002201688
+:03033B000221316B
+:03033C000222504A
+:03033D0002237325
+:03033E0002249CFA
+:03033F000225C9CB
+:030340000226FA98
+:030341000228305F
+:0303420002296B22
+:03034300022AAAE1
+:03034400022BEE9B
+:03034500022D3650
+:03034600022E8202
+:03034700022FD4AE
+:0303480002312956
+:03034900023283FA
+:03034A000233E299
+:03034B0002354533
+:03034C000236ACCA
+:03034D000238185B
+:03034E00023988E9
+:03034F00023AFD72
+:03035000023C76F6
+:03035100023DF377
+:03035200023F75F2
+:030353000240FB6A
+:03035400024285DD
+:030355000244134C
+:030356000245A6B7
+:0303570002473D1D
+:030358000248D97F
+:03035900024A78DD
+:03035A00024C1C36
+:03035B00024DC48C
+:03035C00024F70DD
+:03035D0002512129
+:03035E000252D573
+:03035F0002548EB7
+:0303600002564AF8
+:0303610002580B34
+:030362000259D06D
+:03036300025B99A1
+:03036400025D66D1
+:03036500025F37FD
+:0303660002610D24
+:030367000262E649
+:030368000264C369
+:030369000266A485
+:03036A000268899D
+:03036B00026A72B1
+:03036C00026C5FC1
+:03036D00026E4FCE
+:03036E00027044D6
+:03036F0002723CDB
+:03037000027439DB
+:03037100027639D8
+:0303720002783DD1
+:03037300027A44C7
+:03037400027C50B8
+:03037500027E5FA6
+:0303760002807290
+:0303770002828976
+:030378000284A359
+:030379000286C138
+:03037A000288E214
+:03037B00028B07EB
+:03037C00028D30BF
+:03037D00028F5D8F
+:03037E0002918C5D
+:03037F000293C026
+:030380000295F7EC
+:03038100029831AE
+:03038200029A6F6D
+:03038300029CB029
+:03038400029EF5E1
+:0303850002A13D95
+:0303860002A38946
+:0303870002A5D8F4
+:0303880002A82A9E
+:0303890002AA8045
+:03038A0002ACD9E9
+:03038B0002AF3589
+:03038C0002B19427
+:03038D0002B3F7C1
+:03038E0002B65C58
+:03038F0002B8C5EC
+:0303900002BB317C
+:0303910002BDA109
+:0303920002C01393
+:0303930002C2881B
+:0303940002C5019E
+:0303950002C77D1F
+:0303960002C9FB9E
+:0303970002CC7D18
+:0303980002CF0190
+:0303990002D18905
+:03039A0002D41377
+:03039B0002D6A0E7
+:03039C0002D93053
+:03039D0002DBC3BD
+:03039E0002DE5923
+:03039F0002E0F287
+:0303A00002E38DE8
+:0303A10002E62B46
+:0303A20002E8CCA2
+:0303A30002EB6FFB
+:0303A40002EE1551
+:0303A50002F0BEA5
+:0303A60002F36AF5
+:0303A70002F61744
+:0303A80002F8C890
+:0303A90002FB7BD9
+:0303AA0002FE311F
+:0303AB000300E963
+:0303AC000303A3A5
+:0303AD00030660E4
+:0303AE0003092020
+:0303AF00030BE15C
+:0303B000030EA693
+:0303B10003116CC9
+:0303B200031435FC
+:0303B3000317002D
+:0303B4000319CD5D
+:0303B500031C9C8A
+:0303B600031F6EB4
+:0303B700032242DC
+:0303B80003251802
+:0303B9000327F027
+:0303BA00032ACA49
+:0303BB00032DA669
+:0303BC0003308586
+:0303BD00033365A2
+:0303BE00033647BC
+:0303BF0003392BD4
+:0303C000033C11EA
+:0303C100033EF9FF
+:0303C2000341E311
+:0303C3000344CF21
+:0303C4000347BC30
+:0303C500034AAB3D
+:0303C600034D9C48
+:0303C70003508F51
+:0303C80003538458
+:0303C90003567A5E
+:0303CA0003597163
+:0303CB00035C6B65
+:0303CC00035F6567
+:0303CD0003626266
+:0303CE0003656064
+:0303CF0003685F61
+:0303D000036B605C
+:0303D100036E6256
+:0303D2000371664E
+:0303D30003746B45
+:0303D4000377723A
+:0303D500037A792F
+:0303D600037D8321
+:0303D70003808D13
+:0303D80003839804
+:0303D9000386A5F3
+:0303DA000389B3E1
+:0303DB00038CC2CE
+:0303DC00038FD2BA
+:0303DD000392E3A5
+:0303DE000395F68E
+:0303DF0003990976
+:0303E000039C1D5E
+:0303E100039F3344
+:0303E20003A2492A
+:0303E30003A5600F
+:0303E40003A878F3
+:0303E50003AB91D6
+:0303E60003AEAAB9
+:0303E70003B1C59A
+:0303E80003B4E07B
+:0303E90003B7FC5B
+:0303EA0003BB183A
+:0303EB0003BE3618
+:0303EC0003C154F6
+:0303ED0003C472D4
+:0303EE0003C791B1
+:0303EF0003CAB18D
+:0303F00003CDD169
+:0303F10003D0F145
+:0303F20003D4121F
+:0303F30003D734F9
+:0303F40003DA56D3
+:0303F50003DD78AD
+:0303F60003E09B86
+:0303F70003E3BE5F
+:0303F80003E6E138
+:0303F90003EA0410
+:0303FA0003ED28E8
+:0303FB0003F04BC1
+:0303FC0003F36F99
+:0303FD0003F69371
+:0303FE0003F9B848
+:0303FF0003FCDC20
+:00000001FF
diff --git a/libraries/base/diag/src/data/diag_sin_1024x18.mif b/libraries/base/diag/src/data/diag_sin_1024x18.mif
new file mode 100644
index 0000000000..7dd8df25b5
--- /dev/null
+++ b/libraries/base/diag/src/data/diag_sin_1024x18.mif
@@ -0,0 +1,1048 @@
+-- Copyright (C) 1991-2010 Altera Corporation
+-- Your use of Altera Corporation's design tools, logic functions 
+-- and other software and tools, and its AMPP partner logic 
+-- functions, and any output files from any of the foregoing 
+-- (including device programming or simulation files), and any 
+-- associated documentation or information are expressly subject 
+-- to the terms and conditions of the Altera Program License 
+-- Subscription Agreement, Altera MegaCore Function License 
+-- Agreement, or other applicable license agreement, including, 
+-- without limitation, that your use is for the sole purpose of 
+-- programming logic devices manufactured by Altera and sold by 
+-- Altera or its authorized distributors.  Please refer to the 
+-- applicable agreement for further details.
+
+-- Quartus II generated Memory Initialization File (.mif)
+
+WIDTH=18;
+DEPTH=1024;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+	000  :   00000;
+	001  :   00324;
+	002  :   00648;
+	003  :   0096D;
+	004  :   00C91;
+	005  :   00FB5;
+	006  :   012D8;
+	007  :   015FC;
+	008  :   0191F;
+	009  :   01C42;
+	00A  :   01F65;
+	00B  :   02288;
+	00C  :   025AA;
+	00D  :   028CC;
+	00E  :   02BEE;
+	00F  :   02F0F;
+	010  :   0322F;
+	011  :   0354F;
+	012  :   0386F;
+	013  :   03B8E;
+	014  :   03EAC;
+	015  :   041CA;
+	016  :   044E8;
+	017  :   04804;
+	018  :   04B20;
+	019  :   04E3B;
+	01A  :   05156;
+	01B  :   0546F;
+	01C  :   05788;
+	01D  :   05AA0;
+	01E  :   05DB7;
+	01F  :   060CD;
+	020  :   063E3;
+	021  :   066F7;
+	022  :   06A0A;
+	023  :   06D1D;
+	024  :   0702E;
+	025  :   0733E;
+	026  :   0764D;
+	027  :   0795B;
+	028  :   07C68;
+	029  :   07F73;
+	02A  :   0827D;
+	02B  :   08587;
+	02C  :   0888E;
+	02D  :   08B95;
+	02E  :   08E9A;
+	02F  :   0919E;
+	030  :   094A0;
+	031  :   097A1;
+	032  :   09AA0;
+	033  :   09D9E;
+	034  :   0A09B;
+	035  :   0A395;
+	036  :   0A68F;
+	037  :   0A986;
+	038  :   0AC7C;
+	039  :   0AF71;
+	03A  :   0B264;
+	03B  :   0B555;
+	03C  :   0B844;
+	03D  :   0BB31;
+	03E  :   0BE1D;
+	03F  :   0C107;
+	040  :   0C3EF;
+	041  :   0C6D5;
+	042  :   0C9B9;
+	043  :   0CC9B;
+	044  :   0CF7B;
+	045  :   0D25A;
+	046  :   0D536;
+	047  :   0D810;
+	048  :   0DAE8;
+	049  :   0DDBE;
+	04A  :   0E092;
+	04B  :   0E364;
+	04C  :   0E633;
+	04D  :   0E900;
+	04E  :   0EBCB;
+	04F  :   0EE94;
+	050  :   0F15A;
+	051  :   0F41F;
+	052  :   0F6E0;
+	053  :   0F9A0;
+	054  :   0FC5D;
+	055  :   0FF17;
+	056  :   101CF;
+	057  :   10485;
+	058  :   10738;
+	059  :   109E9;
+	05A  :   10C96;
+	05B  :   10F42;
+	05C  :   111EB;
+	05D  :   11491;
+	05E  :   11734;
+	05F  :   119D5;
+	060  :   11C73;
+	061  :   11F0E;
+	062  :   121A7;
+	063  :   1243D;
+	064  :   126D0;
+	065  :   12960;
+	066  :   12BED;
+	067  :   12E77;
+	068  :   130FF;
+	069  :   13383;
+	06A  :   13605;
+	06B  :   13883;
+	06C  :   13AFF;
+	06D  :   13D78;
+	06E  :   13FED;
+	06F  :   1425F;
+	070  :   144CF;
+	071  :   1473B;
+	072  :   149A4;
+	073  :   14C09;
+	074  :   14E6C;
+	075  :   150CB;
+	076  :   15327;
+	077  :   15580;
+	078  :   157D6;
+	079  :   15A28;
+	07A  :   15C77;
+	07B  :   15EC3;
+	07C  :   1610B;
+	07D  :   16350;
+	07E  :   16591;
+	07F  :   167CF;
+	080  :   16A09;
+	081  :   16C40;
+	082  :   16E74;
+	083  :   170A3;
+	084  :   172D0;
+	085  :   174F9;
+	086  :   1771E;
+	087  :   1793F;
+	088  :   17B5D;
+	089  :   17D77;
+	08A  :   17F8E;
+	08B  :   181A1;
+	08C  :   183B0;
+	08D  :   185BC;
+	08E  :   187C3;
+	08F  :   189C7;
+	090  :   18BC7;
+	091  :   18DC4;
+	092  :   18FBC;
+	093  :   191B1;
+	094  :   193A1;
+	095  :   1958E;
+	096  :   19777;
+	097  :   1995C;
+	098  :   19B3D;
+	099  :   19D1A;
+	09A  :   19EF3;
+	09B  :   1A0C9;
+	09C  :   1A29A;
+	09D  :   1A467;
+	09E  :   1A630;
+	09F  :   1A7F5;
+	0A0  :   1A9B6;
+	0A1  :   1AB72;
+	0A2  :   1AD2B;
+	0A3  :   1AEDF;
+	0A4  :   1B090;
+	0A5  :   1B23C;
+	0A6  :   1B3E4;
+	0A7  :   1B588;
+	0A8  :   1B727;
+	0A9  :   1B8C3;
+	0AA  :   1BA5A;
+	0AB  :   1BBED;
+	0AC  :   1BD7B;
+	0AD  :   1BF05;
+	0AE  :   1C08B;
+	0AF  :   1C20D;
+	0B0  :   1C38A;
+	0B1  :   1C503;
+	0B2  :   1C678;
+	0B3  :   1C7E8;
+	0B4  :   1C954;
+	0B5  :   1CABB;
+	0B6  :   1CC1E;
+	0B7  :   1CD7D;
+	0B8  :   1CED7;
+	0B9  :   1D02C;
+	0BA  :   1D17E;
+	0BB  :   1D2CA;
+	0BC  :   1D412;
+	0BD  :   1D556;
+	0BE  :   1D695;
+	0BF  :   1D7D0;
+	0C0  :   1D906;
+	0C1  :   1DA37;
+	0C2  :   1DB64;
+	0C3  :   1DC8D;
+	0C4  :   1DDB0;
+	0C5  :   1DECF;
+	0C6  :   1DFEA;
+	0C7  :   1E100;
+	0C8  :   1E211;
+	0C9  :   1E31E;
+	0CA  :   1E426;
+	0CB  :   1E529;
+	0CC  :   1E628;
+	0CD  :   1E722;
+	0CE  :   1E817;
+	0CF  :   1E907;
+	0D0  :   1E9F3;
+	0D1  :   1EADA;
+	0D2  :   1EBBD;
+	0D3  :   1EC9A;
+	0D4  :   1ED73;
+	0D5  :   1EE47;
+	0D6  :   1EF17;
+	0D7  :   1EFE1;
+	0D8  :   1F0A7;
+	0D9  :   1F168;
+	0DA  :   1F224;
+	0DB  :   1F2DC;
+	0DC  :   1F38E;
+	0DD  :   1F43C;
+	0DE  :   1F4E5;
+	0DF  :   1F589;
+	0E0  :   1F629;
+	0E1  :   1F6C3;
+	0E2  :   1F759;
+	0E3  :   1F7E9;
+	0E4  :   1F875;
+	0E5  :   1F8FC;
+	0E6  :   1F97F;
+	0E7  :   1F9FC;
+	0E8  :   1FA74;
+	0E9  :   1FAE8;
+	0EA  :   1FB57;
+	0EB  :   1FBC0;
+	0EC  :   1FC25;
+	0ED  :   1FC85;
+	0EE  :   1FCE0;
+	0EF  :   1FD37;
+	0F0  :   1FD88;
+	0F1  :   1FDD4;
+	0F2  :   1FE1C;
+	0F3  :   1FE5E;
+	0F4  :   1FE9C;
+	0F5  :   1FED5;
+	0F6  :   1FF08;
+	0F7  :   1FF37;
+	0F8  :   1FF61;
+	0F9  :   1FF86;
+	0FA  :   1FFA6;
+	0FB  :   1FFC1;
+	0FC  :   1FFD8;
+	0FD  :   1FFE9;
+	0FE  :   1FFF5;
+	0FF  :   1FFFD;
+	100  :   1FFFF;
+	101  :   1FFFD;
+	102  :   1FFF5;
+	103  :   1FFE9;
+	104  :   1FFD8;
+	105  :   1FFC1;
+	106  :   1FFA6;
+	107  :   1FF86;
+	108  :   1FF61;
+	109  :   1FF37;
+	10A  :   1FF08;
+	10B  :   1FED5;
+	10C  :   1FE9C;
+	10D  :   1FE5E;
+	10E  :   1FE1C;
+	10F  :   1FDD4;
+	110  :   1FD88;
+	111  :   1FD37;
+	112  :   1FCE0;
+	113  :   1FC85;
+	114  :   1FC25;
+	115  :   1FBC0;
+	116  :   1FB57;
+	117  :   1FAE8;
+	118  :   1FA74;
+	119  :   1F9FC;
+	11A  :   1F97F;
+	11B  :   1F8FC;
+	11C  :   1F875;
+	11D  :   1F7E9;
+	11E  :   1F759;
+	11F  :   1F6C3;
+	120  :   1F629;
+	121  :   1F589;
+	122  :   1F4E5;
+	123  :   1F43C;
+	124  :   1F38E;
+	125  :   1F2DC;
+	126  :   1F224;
+	127  :   1F168;
+	128  :   1F0A7;
+	129  :   1EFE1;
+	12A  :   1EF17;
+	12B  :   1EE47;
+	12C  :   1ED73;
+	12D  :   1EC9A;
+	12E  :   1EBBD;
+	12F  :   1EADA;
+	130  :   1E9F3;
+	131  :   1E907;
+	132  :   1E817;
+	133  :   1E722;
+	134  :   1E628;
+	135  :   1E529;
+	136  :   1E426;
+	137  :   1E31E;
+	138  :   1E211;
+	139  :   1E100;
+	13A  :   1DFEA;
+	13B  :   1DECF;
+	13C  :   1DDB0;
+	13D  :   1DC8D;
+	13E  :   1DB64;
+	13F  :   1DA37;
+	140  :   1D906;
+	141  :   1D7D0;
+	142  :   1D695;
+	143  :   1D556;
+	144  :   1D412;
+	145  :   1D2CA;
+	146  :   1D17E;
+	147  :   1D02C;
+	148  :   1CED7;
+	149  :   1CD7D;
+	14A  :   1CC1E;
+	14B  :   1CABB;
+	14C  :   1C954;
+	14D  :   1C7E8;
+	14E  :   1C678;
+	14F  :   1C503;
+	150  :   1C38A;
+	151  :   1C20D;
+	152  :   1C08B;
+	153  :   1BF05;
+	154  :   1BD7B;
+	155  :   1BBED;
+	156  :   1BA5A;
+	157  :   1B8C3;
+	158  :   1B727;
+	159  :   1B588;
+	15A  :   1B3E4;
+	15B  :   1B23C;
+	15C  :   1B090;
+	15D  :   1AEDF;
+	15E  :   1AD2B;
+	15F  :   1AB72;
+	160  :   1A9B6;
+	161  :   1A7F5;
+	162  :   1A630;
+	163  :   1A467;
+	164  :   1A29A;
+	165  :   1A0C9;
+	166  :   19EF3;
+	167  :   19D1A;
+	168  :   19B3D;
+	169  :   1995C;
+	16A  :   19777;
+	16B  :   1958E;
+	16C  :   193A1;
+	16D  :   191B1;
+	16E  :   18FBC;
+	16F  :   18DC4;
+	170  :   18BC7;
+	171  :   189C7;
+	172  :   187C3;
+	173  :   185BC;
+	174  :   183B0;
+	175  :   181A1;
+	176  :   17F8E;
+	177  :   17D77;
+	178  :   17B5D;
+	179  :   1793F;
+	17A  :   1771E;
+	17B  :   174F9;
+	17C  :   172D0;
+	17D  :   170A3;
+	17E  :   16E74;
+	17F  :   16C40;
+	180  :   16A09;
+	181  :   167CF;
+	182  :   16591;
+	183  :   16350;
+	184  :   1610B;
+	185  :   15EC3;
+	186  :   15C77;
+	187  :   15A28;
+	188  :   157D6;
+	189  :   15580;
+	18A  :   15327;
+	18B  :   150CB;
+	18C  :   14E6C;
+	18D  :   14C09;
+	18E  :   149A4;
+	18F  :   1473B;
+	190  :   144CF;
+	191  :   1425F;
+	192  :   13FED;
+	193  :   13D78;
+	194  :   13AFF;
+	195  :   13883;
+	196  :   13605;
+	197  :   13383;
+	198  :   130FF;
+	199  :   12E77;
+	19A  :   12BED;
+	19B  :   12960;
+	19C  :   126D0;
+	19D  :   1243D;
+	19E  :   121A7;
+	19F  :   11F0E;
+	1A0  :   11C73;
+	1A1  :   119D5;
+	1A2  :   11734;
+	1A3  :   11491;
+	1A4  :   111EB;
+	1A5  :   10F42;
+	1A6  :   10C96;
+	1A7  :   109E9;
+	1A8  :   10738;
+	1A9  :   10485;
+	1AA  :   101CF;
+	1AB  :   0FF17;
+	1AC  :   0FC5D;
+	1AD  :   0F9A0;
+	1AE  :   0F6E0;
+	1AF  :   0F41F;
+	1B0  :   0F15A;
+	1B1  :   0EE94;
+	1B2  :   0EBCB;
+	1B3  :   0E900;
+	1B4  :   0E633;
+	1B5  :   0E364;
+	1B6  :   0E092;
+	1B7  :   0DDBE;
+	1B8  :   0DAE8;
+	1B9  :   0D810;
+	1BA  :   0D536;
+	1BB  :   0D25A;
+	1BC  :   0CF7B;
+	1BD  :   0CC9B;
+	1BE  :   0C9B9;
+	1BF  :   0C6D5;
+	1C0  :   0C3EF;
+	1C1  :   0C107;
+	1C2  :   0BE1D;
+	1C3  :   0BB31;
+	1C4  :   0B844;
+	1C5  :   0B555;
+	1C6  :   0B264;
+	1C7  :   0AF71;
+	1C8  :   0AC7C;
+	1C9  :   0A986;
+	1CA  :   0A68F;
+	1CB  :   0A395;
+	1CC  :   0A09B;
+	1CD  :   09D9E;
+	1CE  :   09AA0;
+	1CF  :   097A1;
+	1D0  :   094A0;
+	1D1  :   0919E;
+	1D2  :   08E9A;
+	1D3  :   08B95;
+	1D4  :   0888E;
+	1D5  :   08587;
+	1D6  :   0827D;
+	1D7  :   07F73;
+	1D8  :   07C68;
+	1D9  :   0795B;
+	1DA  :   0764D;
+	1DB  :   0733E;
+	1DC  :   0702E;
+	1DD  :   06D1D;
+	1DE  :   06A0A;
+	1DF  :   066F7;
+	1E0  :   063E3;
+	1E1  :   060CD;
+	1E2  :   05DB7;
+	1E3  :   05AA0;
+	1E4  :   05788;
+	1E5  :   0546F;
+	1E6  :   05156;
+	1E7  :   04E3B;
+	1E8  :   04B20;
+	1E9  :   04804;
+	1EA  :   044E8;
+	1EB  :   041CA;
+	1EC  :   03EAC;
+	1ED  :   03B8E;
+	1EE  :   0386F;
+	1EF  :   0354F;
+	1F0  :   0322F;
+	1F1  :   02F0F;
+	1F2  :   02BEE;
+	1F3  :   028CC;
+	1F4  :   025AA;
+	1F5  :   02288;
+	1F6  :   01F65;
+	1F7  :   01C42;
+	1F8  :   0191F;
+	1F9  :   015FC;
+	1FA  :   012D8;
+	1FB  :   00FB5;
+	1FC  :   00C91;
+	1FD  :   0096D;
+	1FE  :   00648;
+	1FF  :   00324;
+	200  :   00000;
+	201  :   3FCDC;
+	202  :   3F9B8;
+	203  :   3F693;
+	204  :   3F36F;
+	205  :   3F04B;
+	206  :   3ED28;
+	207  :   3EA04;
+	208  :   3E6E1;
+	209  :   3E3BE;
+	20A  :   3E09B;
+	20B  :   3DD78;
+	20C  :   3DA56;
+	20D  :   3D734;
+	20E  :   3D412;
+	20F  :   3D0F1;
+	210  :   3CDD1;
+	211  :   3CAB1;
+	212  :   3C791;
+	213  :   3C472;
+	214  :   3C154;
+	215  :   3BE36;
+	216  :   3BB18;
+	217  :   3B7FC;
+	218  :   3B4E0;
+	219  :   3B1C5;
+	21A  :   3AEAA;
+	21B  :   3AB91;
+	21C  :   3A878;
+	21D  :   3A560;
+	21E  :   3A249;
+	21F  :   39F33;
+	220  :   39C1D;
+	221  :   39909;
+	222  :   395F6;
+	223  :   392E3;
+	224  :   38FD2;
+	225  :   38CC2;
+	226  :   389B3;
+	227  :   386A5;
+	228  :   38398;
+	229  :   3808D;
+	22A  :   37D83;
+	22B  :   37A79;
+	22C  :   37772;
+	22D  :   3746B;
+	22E  :   37166;
+	22F  :   36E62;
+	230  :   36B60;
+	231  :   3685F;
+	232  :   36560;
+	233  :   36262;
+	234  :   35F65;
+	235  :   35C6B;
+	236  :   35971;
+	237  :   3567A;
+	238  :   35384;
+	239  :   3508F;
+	23A  :   34D9C;
+	23B  :   34AAB;
+	23C  :   347BC;
+	23D  :   344CF;
+	23E  :   341E3;
+	23F  :   33EF9;
+	240  :   33C11;
+	241  :   3392B;
+	242  :   33647;
+	243  :   33365;
+	244  :   33085;
+	245  :   32DA6;
+	246  :   32ACA;
+	247  :   327F0;
+	248  :   32518;
+	249  :   32242;
+	24A  :   31F6E;
+	24B  :   31C9C;
+	24C  :   319CD;
+	24D  :   31700;
+	24E  :   31435;
+	24F  :   3116C;
+	250  :   30EA6;
+	251  :   30BE1;
+	252  :   30920;
+	253  :   30660;
+	254  :   303A3;
+	255  :   300E9;
+	256  :   2FE31;
+	257  :   2FB7B;
+	258  :   2F8C8;
+	259  :   2F617;
+	25A  :   2F36A;
+	25B  :   2F0BE;
+	25C  :   2EE15;
+	25D  :   2EB6F;
+	25E  :   2E8CC;
+	25F  :   2E62B;
+	260  :   2E38D;
+	261  :   2E0F2;
+	262  :   2DE59;
+	263  :   2DBC3;
+	264  :   2D930;
+	265  :   2D6A0;
+	266  :   2D413;
+	267  :   2D189;
+	268  :   2CF01;
+	269  :   2CC7D;
+	26A  :   2C9FB;
+	26B  :   2C77D;
+	26C  :   2C501;
+	26D  :   2C288;
+	26E  :   2C013;
+	26F  :   2BDA1;
+	270  :   2BB31;
+	271  :   2B8C5;
+	272  :   2B65C;
+	273  :   2B3F7;
+	274  :   2B194;
+	275  :   2AF35;
+	276  :   2ACD9;
+	277  :   2AA80;
+	278  :   2A82A;
+	279  :   2A5D8;
+	27A  :   2A389;
+	27B  :   2A13D;
+	27C  :   29EF5;
+	27D  :   29CB0;
+	27E  :   29A6F;
+	27F  :   29831;
+	280  :   295F7;
+	281  :   293C0;
+	282  :   2918C;
+	283  :   28F5D;
+	284  :   28D30;
+	285  :   28B07;
+	286  :   288E2;
+	287  :   286C1;
+	288  :   284A3;
+	289  :   28289;
+	28A  :   28072;
+	28B  :   27E5F;
+	28C  :   27C50;
+	28D  :   27A44;
+	28E  :   2783D;
+	28F  :   27639;
+	290  :   27439;
+	291  :   2723C;
+	292  :   27044;
+	293  :   26E4F;
+	294  :   26C5F;
+	295  :   26A72;
+	296  :   26889;
+	297  :   266A4;
+	298  :   264C3;
+	299  :   262E6;
+	29A  :   2610D;
+	29B  :   25F37;
+	29C  :   25D66;
+	29D  :   25B99;
+	29E  :   259D0;
+	29F  :   2580B;
+	2A0  :   2564A;
+	2A1  :   2548E;
+	2A2  :   252D5;
+	2A3  :   25121;
+	2A4  :   24F70;
+	2A5  :   24DC4;
+	2A6  :   24C1C;
+	2A7  :   24A78;
+	2A8  :   248D9;
+	2A9  :   2473D;
+	2AA  :   245A6;
+	2AB  :   24413;
+	2AC  :   24285;
+	2AD  :   240FB;
+	2AE  :   23F75;
+	2AF  :   23DF3;
+	2B0  :   23C76;
+	2B1  :   23AFD;
+	2B2  :   23988;
+	2B3  :   23818;
+	2B4  :   236AC;
+	2B5  :   23545;
+	2B6  :   233E2;
+	2B7  :   23283;
+	2B8  :   23129;
+	2B9  :   22FD4;
+	2BA  :   22E82;
+	2BB  :   22D36;
+	2BC  :   22BEE;
+	2BD  :   22AAA;
+	2BE  :   2296B;
+	2BF  :   22830;
+	2C0  :   226FA;
+	2C1  :   225C9;
+	2C2  :   2249C;
+	2C3  :   22373;
+	2C4  :   22250;
+	2C5  :   22131;
+	2C6  :   22016;
+	2C7  :   21F00;
+	2C8  :   21DEF;
+	2C9  :   21CE2;
+	2CA  :   21BDA;
+	2CB  :   21AD7;
+	2CC  :   219D8;
+	2CD  :   218DE;
+	2CE  :   217E9;
+	2CF  :   216F9;
+	2D0  :   2160D;
+	2D1  :   21526;
+	2D2  :   21443;
+	2D3  :   21366;
+	2D4  :   2128D;
+	2D5  :   211B9;
+	2D6  :   210E9;
+	2D7  :   2101F;
+	2D8  :   20F59;
+	2D9  :   20E98;
+	2DA  :   20DDC;
+	2DB  :   20D24;
+	2DC  :   20C72;
+	2DD  :   20BC4;
+	2DE  :   20B1B;
+	2DF  :   20A77;
+	2E0  :   209D7;
+	2E1  :   2093D;
+	2E2  :   208A7;
+	2E3  :   20817;
+	2E4  :   2078B;
+	2E5  :   20704;
+	2E6  :   20681;
+	2E7  :   20604;
+	2E8  :   2058C;
+	2E9  :   20518;
+	2EA  :   204A9;
+	2EB  :   20440;
+	2EC  :   203DB;
+	2ED  :   2037B;
+	2EE  :   20320;
+	2EF  :   202C9;
+	2F0  :   20278;
+	2F1  :   2022C;
+	2F2  :   201E4;
+	2F3  :   201A2;
+	2F4  :   20164;
+	2F5  :   2012B;
+	2F6  :   200F8;
+	2F7  :   200C9;
+	2F8  :   2009F;
+	2F9  :   2007A;
+	2FA  :   2005A;
+	2FB  :   2003F;
+	2FC  :   20028;
+	2FD  :   20017;
+	2FE  :   2000B;
+	2FF  :   20003;
+	300  :   20001;
+	301  :   20003;
+	302  :   2000B;
+	303  :   20017;
+	304  :   20028;
+	305  :   2003F;
+	306  :   2005A;
+	307  :   2007A;
+	308  :   2009F;
+	309  :   200C9;
+	30A  :   200F8;
+	30B  :   2012B;
+	30C  :   20164;
+	30D  :   201A2;
+	30E  :   201E4;
+	30F  :   2022C;
+	310  :   20278;
+	311  :   202C9;
+	312  :   20320;
+	313  :   2037B;
+	314  :   203DB;
+	315  :   20440;
+	316  :   204A9;
+	317  :   20518;
+	318  :   2058C;
+	319  :   20604;
+	31A  :   20681;
+	31B  :   20704;
+	31C  :   2078B;
+	31D  :   20817;
+	31E  :   208A7;
+	31F  :   2093D;
+	320  :   209D7;
+	321  :   20A77;
+	322  :   20B1B;
+	323  :   20BC4;
+	324  :   20C72;
+	325  :   20D24;
+	326  :   20DDC;
+	327  :   20E98;
+	328  :   20F59;
+	329  :   2101F;
+	32A  :   210E9;
+	32B  :   211B9;
+	32C  :   2128D;
+	32D  :   21366;
+	32E  :   21443;
+	32F  :   21526;
+	330  :   2160D;
+	331  :   216F9;
+	332  :   217E9;
+	333  :   218DE;
+	334  :   219D8;
+	335  :   21AD7;
+	336  :   21BDA;
+	337  :   21CE2;
+	338  :   21DEF;
+	339  :   21F00;
+	33A  :   22016;
+	33B  :   22131;
+	33C  :   22250;
+	33D  :   22373;
+	33E  :   2249C;
+	33F  :   225C9;
+	340  :   226FA;
+	341  :   22830;
+	342  :   2296B;
+	343  :   22AAA;
+	344  :   22BEE;
+	345  :   22D36;
+	346  :   22E82;
+	347  :   22FD4;
+	348  :   23129;
+	349  :   23283;
+	34A  :   233E2;
+	34B  :   23545;
+	34C  :   236AC;
+	34D  :   23818;
+	34E  :   23988;
+	34F  :   23AFD;
+	350  :   23C76;
+	351  :   23DF3;
+	352  :   23F75;
+	353  :   240FB;
+	354  :   24285;
+	355  :   24413;
+	356  :   245A6;
+	357  :   2473D;
+	358  :   248D9;
+	359  :   24A78;
+	35A  :   24C1C;
+	35B  :   24DC4;
+	35C  :   24F70;
+	35D  :   25121;
+	35E  :   252D5;
+	35F  :   2548E;
+	360  :   2564A;
+	361  :   2580B;
+	362  :   259D0;
+	363  :   25B99;
+	364  :   25D66;
+	365  :   25F37;
+	366  :   2610D;
+	367  :   262E6;
+	368  :   264C3;
+	369  :   266A4;
+	36A  :   26889;
+	36B  :   26A72;
+	36C  :   26C5F;
+	36D  :   26E4F;
+	36E  :   27044;
+	36F  :   2723C;
+	370  :   27439;
+	371  :   27639;
+	372  :   2783D;
+	373  :   27A44;
+	374  :   27C50;
+	375  :   27E5F;
+	376  :   28072;
+	377  :   28289;
+	378  :   284A3;
+	379  :   286C1;
+	37A  :   288E2;
+	37B  :   28B07;
+	37C  :   28D30;
+	37D  :   28F5D;
+	37E  :   2918C;
+	37F  :   293C0;
+	380  :   295F7;
+	381  :   29831;
+	382  :   29A6F;
+	383  :   29CB0;
+	384  :   29EF5;
+	385  :   2A13D;
+	386  :   2A389;
+	387  :   2A5D8;
+	388  :   2A82A;
+	389  :   2AA80;
+	38A  :   2ACD9;
+	38B  :   2AF35;
+	38C  :   2B194;
+	38D  :   2B3F7;
+	38E  :   2B65C;
+	38F  :   2B8C5;
+	390  :   2BB31;
+	391  :   2BDA1;
+	392  :   2C013;
+	393  :   2C288;
+	394  :   2C501;
+	395  :   2C77D;
+	396  :   2C9FB;
+	397  :   2CC7D;
+	398  :   2CF01;
+	399  :   2D189;
+	39A  :   2D413;
+	39B  :   2D6A0;
+	39C  :   2D930;
+	39D  :   2DBC3;
+	39E  :   2DE59;
+	39F  :   2E0F2;
+	3A0  :   2E38D;
+	3A1  :   2E62B;
+	3A2  :   2E8CC;
+	3A3  :   2EB6F;
+	3A4  :   2EE15;
+	3A5  :   2F0BE;
+	3A6  :   2F36A;
+	3A7  :   2F617;
+	3A8  :   2F8C8;
+	3A9  :   2FB7B;
+	3AA  :   2FE31;
+	3AB  :   300E9;
+	3AC  :   303A3;
+	3AD  :   30660;
+	3AE  :   30920;
+	3AF  :   30BE1;
+	3B0  :   30EA6;
+	3B1  :   3116C;
+	3B2  :   31435;
+	3B3  :   31700;
+	3B4  :   319CD;
+	3B5  :   31C9C;
+	3B6  :   31F6E;
+	3B7  :   32242;
+	3B8  :   32518;
+	3B9  :   327F0;
+	3BA  :   32ACA;
+	3BB  :   32DA6;
+	3BC  :   33085;
+	3BD  :   33365;
+	3BE  :   33647;
+	3BF  :   3392B;
+	3C0  :   33C11;
+	3C1  :   33EF9;
+	3C2  :   341E3;
+	3C3  :   344CF;
+	3C4  :   347BC;
+	3C5  :   34AAB;
+	3C6  :   34D9C;
+	3C7  :   3508F;
+	3C8  :   35384;
+	3C9  :   3567A;
+	3CA  :   35971;
+	3CB  :   35C6B;
+	3CC  :   35F65;
+	3CD  :   36262;
+	3CE  :   36560;
+	3CF  :   3685F;
+	3D0  :   36B60;
+	3D1  :   36E62;
+	3D2  :   37166;
+	3D3  :   3746B;
+	3D4  :   37772;
+	3D5  :   37A79;
+	3D6  :   37D83;
+	3D7  :   3808D;
+	3D8  :   38398;
+	3D9  :   386A5;
+	3DA  :   389B3;
+	3DB  :   38CC2;
+	3DC  :   38FD2;
+	3DD  :   392E3;
+	3DE  :   395F6;
+	3DF  :   39909;
+	3E0  :   39C1D;
+	3E1  :   39F33;
+	3E2  :   3A249;
+	3E3  :   3A560;
+	3E4  :   3A878;
+	3E5  :   3AB91;
+	3E6  :   3AEAA;
+	3E7  :   3B1C5;
+	3E8  :   3B4E0;
+	3E9  :   3B7FC;
+	3EA  :   3BB18;
+	3EB  :   3BE36;
+	3EC  :   3C154;
+	3ED  :   3C472;
+	3EE  :   3C791;
+	3EF  :   3CAB1;
+	3F0  :   3CDD1;
+	3F1  :   3D0F1;
+	3F2  :   3D412;
+	3F3  :   3D734;
+	3F4  :   3DA56;
+	3F5  :   3DD78;
+	3F6  :   3E09B;
+	3F7  :   3E3BE;
+	3F8  :   3E6E1;
+	3F9  :   3EA04;
+	3FA  :   3ED28;
+	3FB  :   3F04B;
+	3FC  :   3F36F;
+	3FD  :   3F693;
+	3FE  :   3F9B8;
+	3FF  :   3FCDC;
+END;
diff --git a/libraries/base/diag/src/data/diag_sin_1024x18.txt b/libraries/base/diag/src/data/diag_sin_1024x18.txt
new file mode 100644
index 0000000000..9df91d6b9f
--- /dev/null
+++ b/libraries/base/diag/src/data/diag_sin_1024x18.txt
@@ -0,0 +1,47 @@
+0x00000 0x00324 0x00648 0x0096D 0x00C91 0x00FB5 0x012D8 0x015FC 0x0191F 0x01C42 0x01F65 0x02288 0x025AA 0x028CC 0x02BEE 0x02F0F 0x0322F 0x0354F 0x0386F 0x03B8E 0x03EAC 0x041CA 
+0x044E8 0x04804 0x04B20 0x04E3B 0x05156 0x0546F 0x05788 0x05AA0 0x05DB7 0x060CD 0x063E3 0x066F7 0x06A0A 0x06D1D 0x0702E 0x0733E 0x0764D 0x0795B 0x07C68 0x07F73 0x0827D 0x08587 
+0x0888E 0x08B95 0x08E9A 0x0919E 0x094A0 0x097A1 0x09AA0 0x09D9E 0x0A09B 0x0A395 0x0A68F 0x0A986 0x0AC7C 0x0AF71 0x0B264 0x0B555 0x0B844 0x0BB31 0x0BE1D 0x0C107 0x0C3EF 0x0C6D5 
+0x0C9B9 0x0CC9B 0x0CF7B 0x0D25A 0x0D536 0x0D810 0x0DAE8 0x0DDBE 0x0E092 0x0E364 0x0E633 0x0E900 0x0EBCB 0x0EE94 0x0F15A 0x0F41F 0x0F6E0 0x0F9A0 0x0FC5D 0x0FF17 0x101CF 0x10485 
+0x10738 0x109E9 0x10C96 0x10F42 0x111EB 0x11491 0x11734 0x119D5 0x11C73 0x11F0E 0x121A7 0x1243D 0x126D0 0x12960 0x12BED 0x12E77 0x130FF 0x13383 0x13605 0x13883 0x13AFF 0x13D78 
+0x13FED 0x1425F 0x144CF 0x1473B 0x149A4 0x14C09 0x14E6C 0x150CB 0x15327 0x15580 0x157D6 0x15A28 0x15C77 0x15EC3 0x1610B 0x16350 0x16591 0x167CF 0x16A09 0x16C40 0x16E74 0x170A3 
+0x172D0 0x174F9 0x1771E 0x1793F 0x17B5D 0x17D77 0x17F8E 0x181A1 0x183B0 0x185BC 0x187C3 0x189C7 0x18BC7 0x18DC4 0x18FBC 0x191B1 0x193A1 0x1958E 0x19777 0x1995C 0x19B3D 0x19D1A 
+0x19EF3 0x1A0C9 0x1A29A 0x1A467 0x1A630 0x1A7F5 0x1A9B6 0x1AB72 0x1AD2B 0x1AEDF 0x1B090 0x1B23C 0x1B3E4 0x1B588 0x1B727 0x1B8C3 0x1BA5A 0x1BBED 0x1BD7B 0x1BF05 0x1C08B 0x1C20D 
+0x1C38A 0x1C503 0x1C678 0x1C7E8 0x1C954 0x1CABB 0x1CC1E 0x1CD7D 0x1CED7 0x1D02C 0x1D17E 0x1D2CA 0x1D412 0x1D556 0x1D695 0x1D7D0 0x1D906 0x1DA37 0x1DB64 0x1DC8D 0x1DDB0 0x1DECF 
+0x1DFEA 0x1E100 0x1E211 0x1E31E 0x1E426 0x1E529 0x1E628 0x1E722 0x1E817 0x1E907 0x1E9F3 0x1EADA 0x1EBBD 0x1EC9A 0x1ED73 0x1EE47 0x1EF17 0x1EFE1 0x1F0A7 0x1F168 0x1F224 0x1F2DC 
+0x1F38E 0x1F43C 0x1F4E5 0x1F589 0x1F629 0x1F6C3 0x1F759 0x1F7E9 0x1F875 0x1F8FC 0x1F97F 0x1F9FC 0x1FA74 0x1FAE8 0x1FB57 0x1FBC0 0x1FC25 0x1FC85 0x1FCE0 0x1FD37 0x1FD88 0x1FDD4 
+0x1FE1C 0x1FE5E 0x1FE9C 0x1FED5 0x1FF08 0x1FF37 0x1FF61 0x1FF86 0x1FFA6 0x1FFC1 0x1FFD8 0x1FFE9 0x1FFF5 0x1FFFD 0x1FFFF 0x1FFFD 0x1FFF5 0x1FFE9 0x1FFD8 0x1FFC1 0x1FFA6 0x1FF86 
+0x1FF61 0x1FF37 0x1FF08 0x1FED5 0x1FE9C 0x1FE5E 0x1FE1C 0x1FDD4 0x1FD88 0x1FD37 0x1FCE0 0x1FC85 0x1FC25 0x1FBC0 0x1FB57 0x1FAE8 0x1FA74 0x1F9FC 0x1F97F 0x1F8FC 0x1F875 0x1F7E9 
+0x1F759 0x1F6C3 0x1F629 0x1F589 0x1F4E5 0x1F43C 0x1F38E 0x1F2DC 0x1F224 0x1F168 0x1F0A7 0x1EFE1 0x1EF17 0x1EE47 0x1ED73 0x1EC9A 0x1EBBD 0x1EADA 0x1E9F3 0x1E907 0x1E817 0x1E722 
+0x1E628 0x1E529 0x1E426 0x1E31E 0x1E211 0x1E100 0x1DFEA 0x1DECF 0x1DDB0 0x1DC8D 0x1DB64 0x1DA37 0x1D906 0x1D7D0 0x1D695 0x1D556 0x1D412 0x1D2CA 0x1D17E 0x1D02C 0x1CED7 0x1CD7D 
+0x1CC1E 0x1CABB 0x1C954 0x1C7E8 0x1C678 0x1C503 0x1C38A 0x1C20D 0x1C08B 0x1BF05 0x1BD7B 0x1BBED 0x1BA5A 0x1B8C3 0x1B727 0x1B588 0x1B3E4 0x1B23C 0x1B090 0x1AEDF 0x1AD2B 0x1AB72 
+0x1A9B6 0x1A7F5 0x1A630 0x1A467 0x1A29A 0x1A0C9 0x19EF3 0x19D1A 0x19B3D 0x1995C 0x19777 0x1958E 0x193A1 0x191B1 0x18FBC 0x18DC4 0x18BC7 0x189C7 0x187C3 0x185BC 0x183B0 0x181A1 
+0x17F8E 0x17D77 0x17B5D 0x1793F 0x1771E 0x174F9 0x172D0 0x170A3 0x16E74 0x16C40 0x16A09 0x167CF 0x16591 0x16350 0x1610B 0x15EC3 0x15C77 0x15A28 0x157D6 0x15580 0x15327 0x150CB 
+0x14E6C 0x14C09 0x149A4 0x1473B 0x144CF 0x1425F 0x13FED 0x13D78 0x13AFF 0x13883 0x13605 0x13383 0x130FF 0x12E77 0x12BED 0x12960 0x126D0 0x1243D 0x121A7 0x11F0E 0x11C73 0x119D5 
+0x11734 0x11491 0x111EB 0x10F42 0x10C96 0x109E9 0x10738 0x10485 0x101CF 0x0FF17 0x0FC5D 0x0F9A0 0x0F6E0 0x0F41F 0x0F15A 0x0EE94 0x0EBCB 0x0E900 0x0E633 0x0E364 0x0E092 0x0DDBE 
+0x0DAE8 0x0D810 0x0D536 0x0D25A 0x0CF7B 0x0CC9B 0x0C9B9 0x0C6D5 0x0C3EF 0x0C107 0x0BE1D 0x0BB31 0x0B844 0x0B555 0x0B264 0x0AF71 0x0AC7C 0x0A986 0x0A68F 0x0A395 0x0A09B 0x09D9E 
+0x09AA0 0x097A1 0x094A0 0x0919E 0x08E9A 0x08B95 0x0888E 0x08587 0x0827D 0x07F73 0x07C68 0x0795B 0x0764D 0x0733E 0x0702E 0x06D1D 0x06A0A 0x066F7 0x063E3 0x060CD 0x05DB7 0x05AA0 
+0x05788 0x0546F 0x05156 0x04E3B 0x04B20 0x04804 0x044E8 0x041CA 0x03EAC 0x03B8E 0x0386F 0x0354F 0x0322F 0x02F0F 0x02BEE 0x028CC 0x025AA 0x02288 0x01F65 0x01C42 0x0191F 0x015FC 
+0x012D8 0x00FB5 0x00C91 0x0096D 0x00648 0x00324 0x00000 0x3FCDC 0x3F9B8 0x3F693 0x3F36F 0x3F04B 0x3ED28 0x3EA04 0x3E6E1 0x3E3BE 0x3E09B 0x3DD78 0x3DA56 0x3D734 0x3D412 0x3D0F1 
+0x3CDD1 0x3CAB1 0x3C791 0x3C472 0x3C154 0x3BE36 0x3BB18 0x3B7FC 0x3B4E0 0x3B1C5 0x3AEAA 0x3AB91 0x3A878 0x3A560 0x3A249 0x39F33 0x39C1D 0x39909 0x395F6 0x392E3 0x38FD2 0x38CC2 
+0x389B3 0x386A5 0x38398 0x3808D 0x37D83 0x37A79 0x37772 0x3746B 0x37166 0x36E62 0x36B60 0x3685F 0x36560 0x36262 0x35F65 0x35C6B 0x35971 0x3567A 0x35384 0x3508F 0x34D9C 0x34AAB 
+0x347BC 0x344CF 0x341E3 0x33EF9 0x33C11 0x3392B 0x33647 0x33365 0x33085 0x32DA6 0x32ACA 0x327F0 0x32518 0x32242 0x31F6E 0x31C9C 0x319CD 0x31700 0x31435 0x3116C 0x30EA6 0x30BE1 
+0x30920 0x30660 0x303A3 0x300E9 0x2FE31 0x2FB7B 0x2F8C8 0x2F617 0x2F36A 0x2F0BE 0x2EE15 0x2EB6F 0x2E8CC 0x2E62B 0x2E38D 0x2E0F2 0x2DE59 0x2DBC3 0x2D930 0x2D6A0 0x2D413 0x2D189 
+0x2CF01 0x2CC7D 0x2C9FB 0x2C77D 0x2C501 0x2C288 0x2C013 0x2BDA1 0x2BB31 0x2B8C5 0x2B65C 0x2B3F7 0x2B194 0x2AF35 0x2ACD9 0x2AA80 0x2A82A 0x2A5D8 0x2A389 0x2A13D 0x29EF5 0x29CB0 
+0x29A6F 0x29831 0x295F7 0x293C0 0x2918C 0x28F5D 0x28D30 0x28B07 0x288E2 0x286C1 0x284A3 0x28289 0x28072 0x27E5F 0x27C50 0x27A44 0x2783D 0x27639 0x27439 0x2723C 0x27044 0x26E4F 
+0x26C5F 0x26A72 0x26889 0x266A4 0x264C3 0x262E6 0x2610D 0x25F37 0x25D66 0x25B99 0x259D0 0x2580B 0x2564A 0x2548E 0x252D5 0x25121 0x24F70 0x24DC4 0x24C1C 0x24A78 0x248D9 0x2473D 
+0x245A6 0x24413 0x24285 0x240FB 0x23F75 0x23DF3 0x23C76 0x23AFD 0x23988 0x23818 0x236AC 0x23545 0x233E2 0x23283 0x23129 0x22FD4 0x22E82 0x22D36 0x22BEE 0x22AAA 0x2296B 0x22830 
+0x226FA 0x225C9 0x2249C 0x22373 0x22250 0x22131 0x22016 0x21F00 0x21DEF 0x21CE2 0x21BDA 0x21AD7 0x219D8 0x218DE 0x217E9 0x216F9 0x2160D 0x21526 0x21443 0x21366 0x2128D 0x211B9 
+0x210E9 0x2101F 0x20F59 0x20E98 0x20DDC 0x20D24 0x20C72 0x20BC4 0x20B1B 0x20A77 0x209D7 0x2093D 0x208A7 0x20817 0x2078B 0x20704 0x20681 0x20604 0x2058C 0x20518 0x204A9 0x20440 
+0x203DB 0x2037B 0x20320 0x202C9 0x20278 0x2022C 0x201E4 0x201A2 0x20164 0x2012B 0x200F8 0x200C9 0x2009F 0x2007A 0x2005A 0x2003F 0x20028 0x20017 0x2000B 0x20003 0x20001 0x20003 
+0x2000B 0x20017 0x20028 0x2003F 0x2005A 0x2007A 0x2009F 0x200C9 0x200F8 0x2012B 0x20164 0x201A2 0x201E4 0x2022C 0x20278 0x202C9 0x20320 0x2037B 0x203DB 0x20440 0x204A9 0x20518 
+0x2058C 0x20604 0x20681 0x20704 0x2078B 0x20817 0x208A7 0x2093D 0x209D7 0x20A77 0x20B1B 0x20BC4 0x20C72 0x20D24 0x20DDC 0x20E98 0x20F59 0x2101F 0x210E9 0x211B9 0x2128D 0x21366 
+0x21443 0x21526 0x2160D 0x216F9 0x217E9 0x218DE 0x219D8 0x21AD7 0x21BDA 0x21CE2 0x21DEF 0x21F00 0x22016 0x22131 0x22250 0x22373 0x2249C 0x225C9 0x226FA 0x22830 0x2296B 0x22AAA 
+0x22BEE 0x22D36 0x22E82 0x22FD4 0x23129 0x23283 0x233E2 0x23545 0x236AC 0x23818 0x23988 0x23AFD 0x23C76 0x23DF3 0x23F75 0x240FB 0x24285 0x24413 0x245A6 0x2473D 0x248D9 0x24A78 
+0x24C1C 0x24DC4 0x24F70 0x25121 0x252D5 0x2548E 0x2564A 0x2580B 0x259D0 0x25B99 0x25D66 0x25F37 0x2610D 0x262E6 0x264C3 0x266A4 0x26889 0x26A72 0x26C5F 0x26E4F 0x27044 0x2723C 
+0x27439 0x27639 0x2783D 0x27A44 0x27C50 0x27E5F 0x28072 0x28289 0x284A3 0x286C1 0x288E2 0x28B07 0x28D30 0x28F5D 0x2918C 0x293C0 0x295F7 0x29831 0x29A6F 0x29CB0 0x29EF5 0x2A13D 
+0x2A389 0x2A5D8 0x2A82A 0x2AA80 0x2ACD9 0x2AF35 0x2B194 0x2B3F7 0x2B65C 0x2B8C5 0x2BB31 0x2BDA1 0x2C013 0x2C288 0x2C501 0x2C77D 0x2C9FB 0x2CC7D 0x2CF01 0x2D189 0x2D413 0x2D6A0 
+0x2D930 0x2DBC3 0x2DE59 0x2E0F2 0x2E38D 0x2E62B 0x2E8CC 0x2EB6F 0x2EE15 0x2F0BE 0x2F36A 0x2F617 0x2F8C8 0x2FB7B 0x2FE31 0x300E9 0x303A3 0x30660 0x30920 0x30BE1 0x30EA6 0x3116C 
+0x31435 0x31700 0x319CD 0x31C9C 0x31F6E 0x32242 0x32518 0x327F0 0x32ACA 0x32DA6 0x33085 0x33365 0x33647 0x3392B 0x33C11 0x33EF9 0x341E3 0x344CF 0x347BC 0x34AAB 0x34D9C 0x3508F 
+0x35384 0x3567A 0x35971 0x35C6B 0x35F65 0x36262 0x36560 0x3685F 0x36B60 0x36E62 0x37166 0x3746B 0x37772 0x37A79 0x37D83 0x3808D 0x38398 0x386A5 0x389B3 0x38CC2 0x38FD2 0x392E3 
+0x395F6 0x39909 0x39C1D 0x39F33 0x3A249 0x3A560 0x3A878 0x3AB91 0x3AEAA 0x3B1C5 0x3B4E0 0x3B7FC 0x3BB18 0x3BE36 0x3C154 0x3C472 0x3C791 0x3CAB1 0x3CDD1 0x3D0F1 0x3D412 0x3D734 
+0x3DA56 0x3DD78 0x3E09B 0x3E3BE 0x3E6E1 0x3EA04 0x3ED28 0x3F04B 0x3F36F 0x3F693 0x3F9B8 0x3FCDC
diff --git a/libraries/base/diag/src/data/diag_sin_1024x8.hex b/libraries/base/diag/src/data/diag_sin_1024x8.hex
new file mode 100644
index 0000000000..b73e91443a
--- /dev/null
+++ b/libraries/base/diag/src/data/diag_sin_1024x8.hex
@@ -0,0 +1,1025 @@
+:0100000000FF
+:0100010001FD
+:0100020002FB
+:0100030002FA
+:0100040003F8
+:0100050004F6
+:0100060005F4
+:0100070005F3
+:0100080006F1
+:0100090007EF
+:01000A0008ED
+:01000B0009EB
+:01000C0009EA
+:01000D000AE8
+:01000E000BE6
+:01000F000CE4
+:010010000CE3
+:010011000DE1
+:010012000EDF
+:010013000FDD
+:0100140010DB
+:0100150010DA
+:0100160011D8
+:0100170012D6
+:0100180013D4
+:0100190013D3
+:01001A0014D1
+:01001B0015CF
+:01001C0016CD
+:01001D0016CC
+:01001E0017CA
+:01001F0018C8
+:0100200019C6
+:010021001AC4
+:010022001AC3
+:010023001BC1
+:010024001CBF
+:010025001DBD
+:010026001DBC
+:010027001EBA
+:010028001FB8
+:0100290020B6
+:01002A0020B5
+:01002B0021B3
+:01002C0022B1
+:01002D0023AF
+:01002E0023AE
+:01002F0024AC
+:0100300025AA
+:0100310026A8
+:0100320026A7
+:0100330027A5
+:0100340028A3
+:0100350029A1
+:0100360029A0
+:010037002A9E
+:010038002B9C
+:010039002C9A
+:01003A002C99
+:01003B002D97
+:01003C002E95
+:01003D002E94
+:01003E002F92
+:01003F003090
+:01004000318E
+:01004100318D
+:01004200328B
+:010043003389
+:010044003388
+:010045003486
+:010046003584
+:010047003682
+:010048003681
+:01004900377F
+:01004A00387D
+:01004B00387C
+:01004C00397A
+:01004D003A78
+:01004E003A77
+:01004F003B75
+:010050003C73
+:010051003D71
+:010052003D70
+:010053003E6E
+:010054003F6C
+:010055003F6B
+:010056004069
+:010057004167
+:010058004166
+:010059004264
+:01005A004362
+:01005B004361
+:01005C00445F
+:01005D00455D
+:01005E00455C
+:01005F00465A
+:010060004758
+:010061004757
+:010062004855
+:010063004854
+:010064004952
+:010065004A50
+:010066004A4F
+:010067004B4D
+:010068004C4B
+:010069004C4A
+:01006A004D48
+:01006B004E46
+:01006C004E45
+:01006D004F43
+:01006E004F42
+:01006F005040
+:01007000513E
+:01007100513D
+:01007200523B
+:01007300523A
+:010074005338
+:010075005436
+:010076005435
+:010077005533
+:010078005532
+:010079005630
+:01007A00562F
+:01007B00572D
+:01007C00582B
+:01007D00582A
+:01007E005928
+:01007F005927
+:010080005A25
+:010081005A24
+:010082005B22
+:010083005B21
+:010084005C1F
+:010085005D1D
+:010086005D1C
+:010087005E1A
+:010088005E19
+:010089005F17
+:01008A005F16
+:01008B006014
+:01008C006013
+:01008D006111
+:01008E006110
+:01008F00620E
+:01009000620D
+:01009100630B
+:01009200630A
+:010093006408
+:010094006407
+:010095006505
+:010096006504
+:010097006602
+:010098006601
+:010099006600
+:01009A0067FE
+:01009B0067FD
+:01009C0068FB
+:01009D0068FA
+:01009E0069F8
+:01009F0069F7
+:0100A0006AF5
+:0100A1006AF4
+:0100A2006AF3
+:0100A3006BF1
+:0100A4006BF0
+:0100A5006CEE
+:0100A6006CED
+:0100A7006DEB
+:0100A8006DEA
+:0100A9006DE9
+:0100AA006EE7
+:0100AB006EE6
+:0100AC006FE4
+:0100AD006FE3
+:0100AE006FE2
+:0100AF0070E0
+:0100B00070DF
+:0100B10070DE
+:0100B20071DC
+:0100B30071DB
+:0100B40071DA
+:0100B50072D8
+:0100B60072D7
+:0100B70072D6
+:0100B80073D4
+:0100B90073D3
+:0100BA0073D2
+:0100BB0074D0
+:0100BC0074CF
+:0100BD0074CE
+:0100BE0075CC
+:0100BF0075CB
+:0100C00075CA
+:0100C10076C8
+:0100C20076C7
+:0100C30076C6
+:0100C40076C5
+:0100C50077C3
+:0100C60077C2
+:0100C70077C1
+:0100C80078BF
+:0100C90078BE
+:0100CA0078BD
+:0100CB0078BC
+:0100CC0079BA
+:0100CD0079B9
+:0100CE0079B8
+:0100CF0079B7
+:0100D0007AB5
+:0100D1007AB4
+:0100D2007AB3
+:0100D3007AB2
+:0100D4007AB1
+:0100D5007BAF
+:0100D6007BAE
+:0100D7007BAD
+:0100D8007BAC
+:0100D9007BAB
+:0100DA007CA9
+:0100DB007CA8
+:0100DC007CA7
+:0100DD007CA6
+:0100DE007CA5
+:0100DF007CA4
+:0100E0007DA2
+:0100E1007DA1
+:0100E2007DA0
+:0100E3007D9F
+:0100E4007D9E
+:0100E5007D9D
+:0100E6007D9C
+:0100E7007E9A
+:0100E8007E99
+:0100E9007E98
+:0100EA007E97
+:0100EB007E96
+:0100EC007E95
+:0100ED007E94
+:0100EE007E93
+:0100EF007E92
+:0100F0007E91
+:0100F1007E90
+:0100F2007F8E
+:0100F3007F8D
+:0100F4007F8C
+:0100F5007F8B
+:0100F6007F8A
+:0100F7007F89
+:0100F8007F88
+:0100F9007F87
+:0100FA007F86
+:0100FB007F85
+:0100FC007F84
+:0100FD007F83
+:0100FE007F82
+:0100FF007F81
+:010100007F7F
+:010101007F7E
+:010102007F7D
+:010103007F7C
+:010104007F7B
+:010105007F7A
+:010106007F79
+:010107007F78
+:010108007F77
+:010109007F76
+:01010A007F75
+:01010B007F74
+:01010C007F73
+:01010D007F72
+:01010E007F71
+:01010F007E71
+:010110007E70
+:010111007E6F
+:010112007E6E
+:010113007E6D
+:010114007E6C
+:010115007E6B
+:010116007E6A
+:010117007E69
+:010118007E68
+:010119007E67
+:01011A007D67
+:01011B007D66
+:01011C007D65
+:01011D007D64
+:01011E007D63
+:01011F007D62
+:010120007D61
+:010121007C61
+:010122007C60
+:010123007C5F
+:010124007C5E
+:010125007C5D
+:010126007C5C
+:010127007B5C
+:010128007B5B
+:010129007B5A
+:01012A007B59
+:01012B007B58
+:01012C007A58
+:01012D007A57
+:01012E007A56
+:01012F007A55
+:010130007A54
+:010131007954
+:010132007953
+:010133007952
+:010134007951
+:010135007851
+:010136007850
+:01013700784F
+:01013800784E
+:01013900774E
+:01013A00774D
+:01013B00774C
+:01013C00764C
+:01013D00764B
+:01013E00764A
+:01013F007649
+:010140007549
+:010141007548
+:010142007547
+:010143007447
+:010144007446
+:010145007445
+:010146007345
+:010147007344
+:010148007343
+:010149007243
+:01014A007242
+:01014B007241
+:01014C007141
+:01014D007140
+:01014E00713F
+:01014F00703F
+:01015000703E
+:01015100703D
+:010152006F3D
+:010153006F3C
+:010154006F3B
+:010155006E3B
+:010156006E3A
+:010157006D3A
+:010158006D39
+:010159006D38
+:01015A006C38
+:01015B006C37
+:01015C006B37
+:01015D006B36
+:01015E006A36
+:01015F006A35
+:010160006A34
+:010161006934
+:010162006933
+:010163006833
+:010164006832
+:010165006732
+:010166006731
+:010167006631
+:010168006630
+:01016900662F
+:01016A00652F
+:01016B00652E
+:01016C00642E
+:01016D00642D
+:01016E00632D
+:01016F00632C
+:01017000622C
+:01017100622B
+:01017200612B
+:01017300612A
+:01017400602A
+:010175006029
+:010176005F29
+:010177005F28
+:010178005E28
+:010179005E27
+:01017A005D27
+:01017B005D26
+:01017C005C26
+:01017D005B26
+:01017E005B25
+:01017F005A25
+:010180005A24
+:010181005924
+:010182005923
+:010183005823
+:010184005822
+:010185005722
+:010186005622
+:010187005621
+:010188005521
+:010189005520
+:01018A005420
+:01018B00541F
+:01018C00531F
+:01018D00521F
+:01018E00521E
+:01018F00511E
+:01019000511D
+:01019100501D
+:010192004F1D
+:010193004F1C
+:010194004E1C
+:010195004E1B
+:010196004D1B
+:010197004C1B
+:010198004C1A
+:010199004B1A
+:01019A004A1A
+:01019B004A19
+:01019C004919
+:01019D004819
+:01019E004818
+:01019F004718
+:0101A0004717
+:0101A1004617
+:0101A2004517
+:0101A3004516
+:0101A4004416
+:0101A5004316
+:0101A6004315
+:0101A7004215
+:0101A8004115
+:0101A9004114
+:0101AA004014
+:0101AB003F14
+:0101AC003F13
+:0101AD003E13
+:0101AE003D13
+:0101AF003D12
+:0101B0003C12
+:0101B1003B12
+:0101B2003A12
+:0101B3003A11
+:0101B4003911
+:0101B5003811
+:0101B6003810
+:0101B7003710
+:0101B8003610
+:0101B900360F
+:0101BA00350F
+:0101BB00340F
+:0101BC00330F
+:0101BD00330E
+:0101BE00320E
+:0101BF00310E
+:0101C000310D
+:0101C100300D
+:0101C2002F0D
+:0101C3002E0D
+:0101C4002E0C
+:0101C5002D0C
+:0101C6002C0C
+:0101C7002C0B
+:0101C8002B0B
+:0101C9002A0B
+:0101CA00290B
+:0101CB00290A
+:0101CC00280A
+:0101CD00270A
+:0101CE00260A
+:0101CF002609
+:0101D0002509
+:0101D1002409
+:0101D2002309
+:0101D3002308
+:0101D4002208
+:0101D5002108
+:0101D6002008
+:0101D7002007
+:0101D8001F07
+:0101D9001E07
+:0101DA001D07
+:0101DB001D06
+:0101DC001C06
+:0101DD001B06
+:0101DE001A06
+:0101DF001A05
+:0101E0001905
+:0101E1001805
+:0101E2001705
+:0101E3001605
+:0101E4001604
+:0101E5001504
+:0101E6001404
+:0101E7001304
+:0101E8001303
+:0101E9001203
+:0101EA001103
+:0101EB001003
+:0101EC001002
+:0101ED000F02
+:0101EE000E02
+:0101EF000D02
+:0101F0000C02
+:0101F1000C01
+:0101F2000B01
+:0101F3000A01
+:0101F4000901
+:0101F5000900
+:0101F6000800
+:0101F7000700
+:0101F8000600
+:0101F9000500
+:0101FA0005FF
+:0101FB0004FF
+:0101FC0003FF
+:0101FD0002FF
+:0101FE0002FE
+:0101FF0001FE
+:0102000000FD
+:01020100FFFD
+:01020200FEFD
+:01020300FEFC
+:01020400FDFC
+:01020500FCFC
+:01020600FBFC
+:01020700FBFB
+:01020800FAFB
+:01020900F9FB
+:01020A00F8FB
+:01020B00F7FB
+:01020C00F7FA
+:01020D00F6FA
+:01020E00F5FA
+:01020F00F4FA
+:01021000F4F9
+:01021100F3F9
+:01021200F2F9
+:01021300F1F9
+:01021400F0F9
+:01021500F0F8
+:01021600EFF8
+:01021700EEF8
+:01021800EDF8
+:01021900EDF7
+:01021A00ECF7
+:01021B00EBF7
+:01021C00EAF7
+:01021D00EAF6
+:01021E00E9F6
+:01021F00E8F6
+:01022000E7F6
+:01022100E6F6
+:01022200E6F5
+:01022300E5F5
+:01022400E4F5
+:01022500E3F5
+:01022600E3F4
+:01022700E2F4
+:01022800E1F4
+:01022900E0F4
+:01022A00E0F3
+:01022B00DFF3
+:01022C00DEF3
+:01022D00DDF3
+:01022E00DDF2
+:01022F00DCF2
+:01023000DBF2
+:01023100DAF2
+:01023200DAF1
+:01023300D9F1
+:01023400D8F1
+:01023500D7F1
+:01023600D7F0
+:01023700D6F0
+:01023800D5F0
+:01023900D4F0
+:01023A00D4EF
+:01023B00D3EF
+:01023C00D2EF
+:01023D00D2EE
+:01023E00D1EE
+:01023F00D0EE
+:01024000CFEE
+:01024100CFED
+:01024200CEED
+:01024300CDED
+:01024400CDEC
+:01024500CCEC
+:01024600CBEC
+:01024700CAEC
+:01024800CAEB
+:01024900C9EB
+:01024A00C8EB
+:01024B00C8EA
+:01024C00C7EA
+:01024D00C6EA
+:01024E00C6E9
+:01024F00C5E9
+:01025000C4E9
+:01025100C3E9
+:01025200C3E8
+:01025300C2E8
+:01025400C1E8
+:01025500C1E7
+:01025600C0E7
+:01025700BFE7
+:01025800BFE6
+:01025900BEE6
+:01025A00BDE6
+:01025B00BDE5
+:01025C00BCE5
+:01025D00BBE5
+:01025E00BBE4
+:01025F00BAE4
+:01026000B9E4
+:01026100B9E3
+:01026200B8E3
+:01026300B8E2
+:01026400B7E2
+:01026500B6E2
+:01026600B6E1
+:01026700B5E1
+:01026800B4E1
+:01026900B4E0
+:01026A00B3E0
+:01026B00B2E0
+:01026C00B2DF
+:01026D00B1DF
+:01026E00B1DE
+:01026F00B0DE
+:01027000AFDE
+:01027100AFDD
+:01027200AEDD
+:01027300AEDC
+:01027400ADDC
+:01027500ACDC
+:01027600ACDB
+:01027700ABDB
+:01027800ABDA
+:01027900AADA
+:01027A00AAD9
+:01027B00A9D9
+:01027C00A8D9
+:01027D00A8D8
+:01027E00A7D8
+:01027F00A7D7
+:01028000A6D7
+:01028100A6D6
+:01028200A5D6
+:01028300A5D5
+:01028400A4D5
+:01028500A3D5
+:01028600A3D4
+:01028700A2D4
+:01028800A2D3
+:01028900A1D3
+:01028A00A1D2
+:01028B00A0D2
+:01028C00A0D1
+:01028D009FD1
+:01028E009FD0
+:01028F009ED0
+:010290009ECF
+:010291009DCF
+:010292009DCE
+:010293009CCE
+:010294009CCD
+:010295009BCD
+:010296009BCC
+:010297009ACC
+:010298009ACB
+:010299009ACA
+:01029A0099CA
+:01029B0099C9
+:01029C0098C9
+:01029D0098C8
+:01029E0097C8
+:01029F0097C7
+:0102A00096C7
+:0102A10096C6
+:0102A20096C5
+:0102A30095C5
+:0102A40095C4
+:0102A50094C4
+:0102A60094C3
+:0102A70093C3
+:0102A80093C2
+:0102A90093C1
+:0102AA0092C1
+:0102AB0092C0
+:0102AC0091C0
+:0102AD0091BF
+:0102AE0091BE
+:0102AF0090BE
+:0102B00090BD
+:0102B10090BC
+:0102B2008FBC
+:0102B3008FBB
+:0102B4008FBA
+:0102B5008EBA
+:0102B6008EB9
+:0102B7008EB8
+:0102B8008DB8
+:0102B9008DB7
+:0102BA008DB6
+:0102BB008CB6
+:0102BC008CB5
+:0102BD008CB4
+:0102BE008BB4
+:0102BF008BB3
+:0102C0008BB2
+:0102C1008AB2
+:0102C2008AB1
+:0102C3008AB0
+:0102C4008AAF
+:0102C50089AF
+:0102C60089AE
+:0102C70089AD
+:0102C80088AD
+:0102C90088AC
+:0102CA0088AB
+:0102CB0088AA
+:0102CC0087AA
+:0102CD0087A9
+:0102CE0087A8
+:0102CF0087A7
+:0102D00086A7
+:0102D10086A6
+:0102D20086A5
+:0102D30086A4
+:0102D40086A3
+:0102D50085A3
+:0102D60085A2
+:0102D70085A1
+:0102D80085A0
+:0102D900859F
+:0102DA00849F
+:0102DB00849E
+:0102DC00849D
+:0102DD00849C
+:0102DE00849B
+:0102DF00849A
+:0102E000839A
+:0102E1008399
+:0102E2008398
+:0102E3008397
+:0102E4008396
+:0102E5008395
+:0102E6008394
+:0102E7008294
+:0102E8008293
+:0102E9008292
+:0102EA008291
+:0102EB008290
+:0102EC00828F
+:0102ED00828E
+:0102EE00828D
+:0102EF00828C
+:0102F000828B
+:0102F100828A
+:0102F200818A
+:0102F3008189
+:0102F4008188
+:0102F5008187
+:0102F6008186
+:0102F7008185
+:0102F8008184
+:0102F9008183
+:0102FA008182
+:0102FB008181
+:0102FC008180
+:0102FD00817F
+:0102FE00817E
+:0102FF00817D
+:01030000817B
+:01030100817A
+:010302008179
+:010303008178
+:010304008177
+:010305008176
+:010306008175
+:010307008174
+:010308008173
+:010309008172
+:01030A008171
+:01030B008170
+:01030C00816F
+:01030D00816E
+:01030E00816D
+:01030F00826B
+:01031000826A
+:010311008269
+:010312008268
+:010313008267
+:010314008266
+:010315008265
+:010316008264
+:010317008263
+:010318008262
+:010319008261
+:01031A00835F
+:01031B00835E
+:01031C00835D
+:01031D00835C
+:01031E00835B
+:01031F00835A
+:010320008359
+:010321008457
+:010322008456
+:010323008455
+:010324008454
+:010325008453
+:010326008452
+:010327008550
+:01032800854F
+:01032900854E
+:01032A00854D
+:01032B00854C
+:01032C00864A
+:01032D008649
+:01032E008648
+:01032F008647
+:010330008646
+:010331008744
+:010332008743
+:010333008742
+:010334008741
+:01033500883F
+:01033600883E
+:01033700883D
+:01033800883C
+:01033900893A
+:01033A008939
+:01033B008938
+:01033C008A36
+:01033D008A35
+:01033E008A34
+:01033F008A33
+:010340008B31
+:010341008B30
+:010342008B2F
+:010343008C2D
+:010344008C2C
+:010345008C2B
+:010346008D29
+:010347008D28
+:010348008D27
+:010349008E25
+:01034A008E24
+:01034B008E23
+:01034C008F21
+:01034D008F20
+:01034E008F1F
+:01034F00901D
+:01035000901C
+:01035100901B
+:010352009119
+:010353009118
+:010354009117
+:010355009215
+:010356009214
+:010357009312
+:010358009311
+:010359009310
+:01035A00940E
+:01035B00940D
+:01035C00950B
+:01035D00950A
+:01035E009608
+:01035F009607
+:010360009606
+:010361009704
+:010362009703
+:010363009801
+:010364009800
+:0103650099FE
+:0103660099FD
+:010367009AFB
+:010368009AFA
+:010369009AF9
+:01036A009BF7
+:01036B009BF6
+:01036C009CF4
+:01036D009CF3
+:01036E009DF1
+:01036F009DF0
+:010370009EEE
+:010371009EED
+:010372009FEB
+:010373009FEA
+:01037400A0E8
+:01037500A0E7
+:01037600A1E5
+:01037700A1E4
+:01037800A2E2
+:01037900A2E1
+:01037A00A3DF
+:01037B00A3DE
+:01037C00A4DC
+:01037D00A5DA
+:01037E00A5D9
+:01037F00A6D7
+:01038000A6D6
+:01038100A7D4
+:01038200A7D3
+:01038300A8D1
+:01038400A8D0
+:01038500A9CE
+:01038600AACC
+:01038700AACB
+:01038800ABC9
+:01038900ABC8
+:01038A00ACC6
+:01038B00ACC5
+:01038C00ADC3
+:01038D00AEC1
+:01038E00AEC0
+:01038F00AFBE
+:01039000AFBD
+:01039100B0BB
+:01039200B1B9
+:01039300B1B8
+:01039400B2B6
+:01039500B2B5
+:01039600B3B3
+:01039700B4B1
+:01039800B4B0
+:01039900B5AE
+:01039A00B6AC
+:01039B00B6AB
+:01039C00B7A9
+:01039D00B8A7
+:01039E00B8A6
+:01039F00B9A4
+:0103A000B9A3
+:0103A100BAA1
+:0103A200BB9F
+:0103A300BB9E
+:0103A400BC9C
+:0103A500BD9A
+:0103A600BD99
+:0103A700BE97
+:0103A800BF95
+:0103A900BF94
+:0103AA00C092
+:0103AB00C190
+:0103AC00C18F
+:0103AD00C28D
+:0103AE00C38B
+:0103AF00C38A
+:0103B000C488
+:0103B100C586
+:0103B200C684
+:0103B300C683
+:0103B400C781
+:0103B500C87F
+:0103B600C87E
+:0103B700C97C
+:0103B800CA7A
+:0103B900CA79
+:0103BA00CB77
+:0103BB00CC75
+:0103BC00CD73
+:0103BD00CD72
+:0103BE00CE70
+:0103BF00CF6E
+:0103C000CF6D
+:0103C100D06B
+:0103C200D169
+:0103C300D267
+:0103C400D266
+:0103C500D364
+:0103C600D462
+:0103C700D461
+:0103C800D55F
+:0103C900D65D
+:0103CA00D75B
+:0103CB00D75A
+:0103CC00D858
+:0103CD00D956
+:0103CE00DA54
+:0103CF00DA53
+:0103D000DB51
+:0103D100DC4F
+:0103D200DD4D
+:0103D300DD4C
+:0103D400DE4A
+:0103D500DF48
+:0103D600E046
+:0103D700E045
+:0103D800E143
+:0103D900E241
+:0103DA00E33F
+:0103DB00E33E
+:0103DC00E43C
+:0103DD00E53A
+:0103DE00E638
+:0103DF00E637
+:0103E000E735
+:0103E100E833
+:0103E200E931
+:0103E300EA2F
+:0103E400EA2E
+:0103E500EB2C
+:0103E600EC2A
+:0103E700ED28
+:0103E800ED27
+:0103E900EE25
+:0103EA00EF23
+:0103EB00F021
+:0103EC00F020
+:0103ED00F11E
+:0103EE00F21C
+:0103EF00F31A
+:0103F000F418
+:0103F100F417
+:0103F200F515
+:0103F300F613
+:0103F400F711
+:0103F500F710
+:0103F600F80E
+:0103F700F90C
+:0103F800FA0A
+:0103F900FB08
+:0103FA00FB07
+:0103FB00FC05
+:0103FC00FD03
+:0103FD00FE01
+:0103FE00FE00
+:0103FF00FFFE
+:00000001FF
diff --git a/libraries/base/diag/src/data/diag_sin_1024x8.mif b/libraries/base/diag/src/data/diag_sin_1024x8.mif
new file mode 100644
index 0000000000..f519574466
--- /dev/null
+++ b/libraries/base/diag/src/data/diag_sin_1024x8.mif
@@ -0,0 +1,1048 @@
+-- Copyright (C) 1991-2010 Altera Corporation
+-- Your use of Altera Corporation's design tools, logic functions 
+-- and other software and tools, and its AMPP partner logic 
+-- functions, and any output files from any of the foregoing 
+-- (including device programming or simulation files), and any 
+-- associated documentation or information are expressly subject 
+-- to the terms and conditions of the Altera Program License 
+-- Subscription Agreement, Altera MegaCore Function License 
+-- Agreement, or other applicable license agreement, including, 
+-- without limitation, that your use is for the sole purpose of 
+-- programming logic devices manufactured by Altera and sold by 
+-- Altera or its authorized distributors.  Please refer to the 
+-- applicable agreement for further details.
+
+-- Quartus II generated Memory Initialization File (.mif)
+
+WIDTH=8;
+DEPTH=1024;
+
+ADDRESS_RADIX=UNS;
+DATA_RADIX=UNS;
+
+CONTENT BEGIN
+	0     :   0;
+	1     :   1;
+	2     :   2;
+	3     :   2;
+	4     :   3;
+	5     :   4;
+	6     :   5;
+	7     :   5;
+	8     :   6;
+	9     :   7;
+	10    :   8;
+	11    :   9;
+	12    :   9;
+	13    :   10;
+	14    :   11;
+	15    :   12;
+	16    :   12;
+	17    :   13;
+	18    :   14;
+	19    :   15;
+	20    :   16;
+	21    :   16;
+	22    :   17;
+	23    :   18;
+	24    :   19;
+	25    :   19;
+	26    :   20;
+	27    :   21;
+	28    :   22;
+	29    :   22;
+	30    :   23;
+	31    :   24;
+	32    :   25;
+	33    :   26;
+	34    :   26;
+	35    :   27;
+	36    :   28;
+	37    :   29;
+	38    :   29;
+	39    :   30;
+	40    :   31;
+	41    :   32;
+	42    :   32;
+	43    :   33;
+	44    :   34;
+	45    :   35;
+	46    :   35;
+	47    :   36;
+	48    :   37;
+	49    :   38;
+	50    :   38;
+	51    :   39;
+	52    :   40;
+	53    :   41;
+	54    :   41;
+	55    :   42;
+	56    :   43;
+	57    :   44;
+	58    :   44;
+	59    :   45;
+	60    :   46;
+	61    :   46;
+	62    :   47;
+	63    :   48;
+	64    :   49;
+	65    :   49;
+	66    :   50;
+	67    :   51;
+	68    :   51;
+	69    :   52;
+	70    :   53;
+	71    :   54;
+	72    :   54;
+	73    :   55;
+	74    :   56;
+	75    :   56;
+	76    :   57;
+	77    :   58;
+	78    :   58;
+	79    :   59;
+	80    :   60;
+	81    :   61;
+	82    :   61;
+	83    :   62;
+	84    :   63;
+	85    :   63;
+	86    :   64;
+	87    :   65;
+	88    :   65;
+	89    :   66;
+	90    :   67;
+	91    :   67;
+	92    :   68;
+	93    :   69;
+	94    :   69;
+	95    :   70;
+	96    :   71;
+	97    :   71;
+	98    :   72;
+	99    :   72;
+	100   :   73;
+	101   :   74;
+	102   :   74;
+	103   :   75;
+	104   :   76;
+	105   :   76;
+	106   :   77;
+	107   :   78;
+	108   :   78;
+	109   :   79;
+	110   :   79;
+	111   :   80;
+	112   :   81;
+	113   :   81;
+	114   :   82;
+	115   :   82;
+	116   :   83;
+	117   :   84;
+	118   :   84;
+	119   :   85;
+	120   :   85;
+	121   :   86;
+	122   :   86;
+	123   :   87;
+	124   :   88;
+	125   :   88;
+	126   :   89;
+	127   :   89;
+	128   :   90;
+	129   :   90;
+	130   :   91;
+	131   :   91;
+	132   :   92;
+	133   :   93;
+	134   :   93;
+	135   :   94;
+	136   :   94;
+	137   :   95;
+	138   :   95;
+	139   :   96;
+	140   :   96;
+	141   :   97;
+	142   :   97;
+	143   :   98;
+	144   :   98;
+	145   :   99;
+	146   :   99;
+	147   :   100;
+	148   :   100;
+	149   :   101;
+	150   :   101;
+	151   :   102;
+	152   :   102;
+	153   :   102;
+	154   :   103;
+	155   :   103;
+	156   :   104;
+	157   :   104;
+	158   :   105;
+	159   :   105;
+	160   :   106;
+	161   :   106;
+	162   :   106;
+	163   :   107;
+	164   :   107;
+	165   :   108;
+	166   :   108;
+	167   :   109;
+	168   :   109;
+	169   :   109;
+	170   :   110;
+	171   :   110;
+	172   :   111;
+	173   :   111;
+	174   :   111;
+	175   :   112;
+	176   :   112;
+	177   :   112;
+	178   :   113;
+	179   :   113;
+	180   :   113;
+	181   :   114;
+	182   :   114;
+	183   :   114;
+	184   :   115;
+	185   :   115;
+	186   :   115;
+	187   :   116;
+	188   :   116;
+	189   :   116;
+	190   :   117;
+	191   :   117;
+	192   :   117;
+	193   :   118;
+	194   :   118;
+	195   :   118;
+	196   :   118;
+	197   :   119;
+	198   :   119;
+	199   :   119;
+	200   :   120;
+	201   :   120;
+	202   :   120;
+	203   :   120;
+	204   :   121;
+	205   :   121;
+	206   :   121;
+	207   :   121;
+	208   :   122;
+	209   :   122;
+	210   :   122;
+	211   :   122;
+	212   :   122;
+	213   :   123;
+	214   :   123;
+	215   :   123;
+	216   :   123;
+	217   :   123;
+	218   :   124;
+	219   :   124;
+	220   :   124;
+	221   :   124;
+	222   :   124;
+	223   :   124;
+	224   :   125;
+	225   :   125;
+	226   :   125;
+	227   :   125;
+	228   :   125;
+	229   :   125;
+	230   :   125;
+	231   :   126;
+	232   :   126;
+	233   :   126;
+	234   :   126;
+	235   :   126;
+	236   :   126;
+	237   :   126;
+	238   :   126;
+	239   :   126;
+	240   :   126;
+	241   :   126;
+	242   :   127;
+	243   :   127;
+	244   :   127;
+	245   :   127;
+	246   :   127;
+	247   :   127;
+	248   :   127;
+	249   :   127;
+	250   :   127;
+	251   :   127;
+	252   :   127;
+	253   :   127;
+	254   :   127;
+	255   :   127;
+	256   :   127;
+	257   :   127;
+	258   :   127;
+	259   :   127;
+	260   :   127;
+	261   :   127;
+	262   :   127;
+	263   :   127;
+	264   :   127;
+	265   :   127;
+	266   :   127;
+	267   :   127;
+	268   :   127;
+	269   :   127;
+	270   :   127;
+	271   :   126;
+	272   :   126;
+	273   :   126;
+	274   :   126;
+	275   :   126;
+	276   :   126;
+	277   :   126;
+	278   :   126;
+	279   :   126;
+	280   :   126;
+	281   :   126;
+	282   :   125;
+	283   :   125;
+	284   :   125;
+	285   :   125;
+	286   :   125;
+	287   :   125;
+	288   :   125;
+	289   :   124;
+	290   :   124;
+	291   :   124;
+	292   :   124;
+	293   :   124;
+	294   :   124;
+	295   :   123;
+	296   :   123;
+	297   :   123;
+	298   :   123;
+	299   :   123;
+	300   :   122;
+	301   :   122;
+	302   :   122;
+	303   :   122;
+	304   :   122;
+	305   :   121;
+	306   :   121;
+	307   :   121;
+	308   :   121;
+	309   :   120;
+	310   :   120;
+	311   :   120;
+	312   :   120;
+	313   :   119;
+	314   :   119;
+	315   :   119;
+	316   :   118;
+	317   :   118;
+	318   :   118;
+	319   :   118;
+	320   :   117;
+	321   :   117;
+	322   :   117;
+	323   :   116;
+	324   :   116;
+	325   :   116;
+	326   :   115;
+	327   :   115;
+	328   :   115;
+	329   :   114;
+	330   :   114;
+	331   :   114;
+	332   :   113;
+	333   :   113;
+	334   :   113;
+	335   :   112;
+	336   :   112;
+	337   :   112;
+	338   :   111;
+	339   :   111;
+	340   :   111;
+	341   :   110;
+	342   :   110;
+	343   :   109;
+	344   :   109;
+	345   :   109;
+	346   :   108;
+	347   :   108;
+	348   :   107;
+	349   :   107;
+	350   :   106;
+	351   :   106;
+	352   :   106;
+	353   :   105;
+	354   :   105;
+	355   :   104;
+	356   :   104;
+	357   :   103;
+	358   :   103;
+	359   :   102;
+	360   :   102;
+	361   :   102;
+	362   :   101;
+	363   :   101;
+	364   :   100;
+	365   :   100;
+	366   :   99;
+	367   :   99;
+	368   :   98;
+	369   :   98;
+	370   :   97;
+	371   :   97;
+	372   :   96;
+	373   :   96;
+	374   :   95;
+	375   :   95;
+	376   :   94;
+	377   :   94;
+	378   :   93;
+	379   :   93;
+	380   :   92;
+	381   :   91;
+	382   :   91;
+	383   :   90;
+	384   :   90;
+	385   :   89;
+	386   :   89;
+	387   :   88;
+	388   :   88;
+	389   :   87;
+	390   :   86;
+	391   :   86;
+	392   :   85;
+	393   :   85;
+	394   :   84;
+	395   :   84;
+	396   :   83;
+	397   :   82;
+	398   :   82;
+	399   :   81;
+	400   :   81;
+	401   :   80;
+	402   :   79;
+	403   :   79;
+	404   :   78;
+	405   :   78;
+	406   :   77;
+	407   :   76;
+	408   :   76;
+	409   :   75;
+	410   :   74;
+	411   :   74;
+	412   :   73;
+	413   :   72;
+	414   :   72;
+	415   :   71;
+	416   :   71;
+	417   :   70;
+	418   :   69;
+	419   :   69;
+	420   :   68;
+	421   :   67;
+	422   :   67;
+	423   :   66;
+	424   :   65;
+	425   :   65;
+	426   :   64;
+	427   :   63;
+	428   :   63;
+	429   :   62;
+	430   :   61;
+	431   :   61;
+	432   :   60;
+	433   :   59;
+	434   :   58;
+	435   :   58;
+	436   :   57;
+	437   :   56;
+	438   :   56;
+	439   :   55;
+	440   :   54;
+	441   :   54;
+	442   :   53;
+	443   :   52;
+	444   :   51;
+	445   :   51;
+	446   :   50;
+	447   :   49;
+	448   :   49;
+	449   :   48;
+	450   :   47;
+	451   :   46;
+	452   :   46;
+	453   :   45;
+	454   :   44;
+	455   :   44;
+	456   :   43;
+	457   :   42;
+	458   :   41;
+	459   :   41;
+	460   :   40;
+	461   :   39;
+	462   :   38;
+	463   :   38;
+	464   :   37;
+	465   :   36;
+	466   :   35;
+	467   :   35;
+	468   :   34;
+	469   :   33;
+	470   :   32;
+	471   :   32;
+	472   :   31;
+	473   :   30;
+	474   :   29;
+	475   :   29;
+	476   :   28;
+	477   :   27;
+	478   :   26;
+	479   :   26;
+	480   :   25;
+	481   :   24;
+	482   :   23;
+	483   :   22;
+	484   :   22;
+	485   :   21;
+	486   :   20;
+	487   :   19;
+	488   :   19;
+	489   :   18;
+	490   :   17;
+	491   :   16;
+	492   :   16;
+	493   :   15;
+	494   :   14;
+	495   :   13;
+	496   :   12;
+	497   :   12;
+	498   :   11;
+	499   :   10;
+	500   :   9;
+	501   :   9;
+	502   :   8;
+	503   :   7;
+	504   :   6;
+	505   :   5;
+	506   :   5;
+	507   :   4;
+	508   :   3;
+	509   :   2;
+	510   :   2;
+	511   :   1;
+	512   :   0;
+	513   :   255;
+	514   :   254;
+	515   :   254;
+	516   :   253;
+	517   :   252;
+	518   :   251;
+	519   :   251;
+	520   :   250;
+	521   :   249;
+	522   :   248;
+	523   :   247;
+	524   :   247;
+	525   :   246;
+	526   :   245;
+	527   :   244;
+	528   :   244;
+	529   :   243;
+	530   :   242;
+	531   :   241;
+	532   :   240;
+	533   :   240;
+	534   :   239;
+	535   :   238;
+	536   :   237;
+	537   :   237;
+	538   :   236;
+	539   :   235;
+	540   :   234;
+	541   :   234;
+	542   :   233;
+	543   :   232;
+	544   :   231;
+	545   :   230;
+	546   :   230;
+	547   :   229;
+	548   :   228;
+	549   :   227;
+	550   :   227;
+	551   :   226;
+	552   :   225;
+	553   :   224;
+	554   :   224;
+	555   :   223;
+	556   :   222;
+	557   :   221;
+	558   :   221;
+	559   :   220;
+	560   :   219;
+	561   :   218;
+	562   :   218;
+	563   :   217;
+	564   :   216;
+	565   :   215;
+	566   :   215;
+	567   :   214;
+	568   :   213;
+	569   :   212;
+	570   :   212;
+	571   :   211;
+	572   :   210;
+	573   :   210;
+	574   :   209;
+	575   :   208;
+	576   :   207;
+	577   :   207;
+	578   :   206;
+	579   :   205;
+	580   :   205;
+	581   :   204;
+	582   :   203;
+	583   :   202;
+	584   :   202;
+	585   :   201;
+	586   :   200;
+	587   :   200;
+	588   :   199;
+	589   :   198;
+	590   :   198;
+	591   :   197;
+	592   :   196;
+	593   :   195;
+	594   :   195;
+	595   :   194;
+	596   :   193;
+	597   :   193;
+	598   :   192;
+	599   :   191;
+	600   :   191;
+	601   :   190;
+	602   :   189;
+	603   :   189;
+	604   :   188;
+	605   :   187;
+	606   :   187;
+	607   :   186;
+	608   :   185;
+	609   :   185;
+	610   :   184;
+	611   :   184;
+	612   :   183;
+	613   :   182;
+	614   :   182;
+	615   :   181;
+	616   :   180;
+	617   :   180;
+	618   :   179;
+	619   :   178;
+	620   :   178;
+	621   :   177;
+	622   :   177;
+	623   :   176;
+	624   :   175;
+	625   :   175;
+	626   :   174;
+	627   :   174;
+	628   :   173;
+	629   :   172;
+	630   :   172;
+	631   :   171;
+	632   :   171;
+	633   :   170;
+	634   :   170;
+	635   :   169;
+	636   :   168;
+	637   :   168;
+	638   :   167;
+	639   :   167;
+	640   :   166;
+	641   :   166;
+	642   :   165;
+	643   :   165;
+	644   :   164;
+	645   :   163;
+	646   :   163;
+	647   :   162;
+	648   :   162;
+	649   :   161;
+	650   :   161;
+	651   :   160;
+	652   :   160;
+	653   :   159;
+	654   :   159;
+	655   :   158;
+	656   :   158;
+	657   :   157;
+	658   :   157;
+	659   :   156;
+	660   :   156;
+	661   :   155;
+	662   :   155;
+	663   :   154;
+	664   :   154;
+	665   :   154;
+	666   :   153;
+	667   :   153;
+	668   :   152;
+	669   :   152;
+	670   :   151;
+	671   :   151;
+	672   :   150;
+	673   :   150;
+	674   :   150;
+	675   :   149;
+	676   :   149;
+	677   :   148;
+	678   :   148;
+	679   :   147;
+	680   :   147;
+	681   :   147;
+	682   :   146;
+	683   :   146;
+	684   :   145;
+	685   :   145;
+	686   :   145;
+	687   :   144;
+	688   :   144;
+	689   :   144;
+	690   :   143;
+	691   :   143;
+	692   :   143;
+	693   :   142;
+	694   :   142;
+	695   :   142;
+	696   :   141;
+	697   :   141;
+	698   :   141;
+	699   :   140;
+	700   :   140;
+	701   :   140;
+	702   :   139;
+	703   :   139;
+	704   :   139;
+	705   :   138;
+	706   :   138;
+	707   :   138;
+	708   :   138;
+	709   :   137;
+	710   :   137;
+	711   :   137;
+	712   :   136;
+	713   :   136;
+	714   :   136;
+	715   :   136;
+	716   :   135;
+	717   :   135;
+	718   :   135;
+	719   :   135;
+	720   :   134;
+	721   :   134;
+	722   :   134;
+	723   :   134;
+	724   :   134;
+	725   :   133;
+	726   :   133;
+	727   :   133;
+	728   :   133;
+	729   :   133;
+	730   :   132;
+	731   :   132;
+	732   :   132;
+	733   :   132;
+	734   :   132;
+	735   :   132;
+	736   :   131;
+	737   :   131;
+	738   :   131;
+	739   :   131;
+	740   :   131;
+	741   :   131;
+	742   :   131;
+	743   :   130;
+	744   :   130;
+	745   :   130;
+	746   :   130;
+	747   :   130;
+	748   :   130;
+	749   :   130;
+	750   :   130;
+	751   :   130;
+	752   :   130;
+	753   :   130;
+	754   :   129;
+	755   :   129;
+	756   :   129;
+	757   :   129;
+	758   :   129;
+	759   :   129;
+	760   :   129;
+	761   :   129;
+	762   :   129;
+	763   :   129;
+	764   :   129;
+	765   :   129;
+	766   :   129;
+	767   :   129;
+	768   :   129;
+	769   :   129;
+	770   :   129;
+	771   :   129;
+	772   :   129;
+	773   :   129;
+	774   :   129;
+	775   :   129;
+	776   :   129;
+	777   :   129;
+	778   :   129;
+	779   :   129;
+	780   :   129;
+	781   :   129;
+	782   :   129;
+	783   :   130;
+	784   :   130;
+	785   :   130;
+	786   :   130;
+	787   :   130;
+	788   :   130;
+	789   :   130;
+	790   :   130;
+	791   :   130;
+	792   :   130;
+	793   :   130;
+	794   :   131;
+	795   :   131;
+	796   :   131;
+	797   :   131;
+	798   :   131;
+	799   :   131;
+	800   :   131;
+	801   :   132;
+	802   :   132;
+	803   :   132;
+	804   :   132;
+	805   :   132;
+	806   :   132;
+	807   :   133;
+	808   :   133;
+	809   :   133;
+	810   :   133;
+	811   :   133;
+	812   :   134;
+	813   :   134;
+	814   :   134;
+	815   :   134;
+	816   :   134;
+	817   :   135;
+	818   :   135;
+	819   :   135;
+	820   :   135;
+	821   :   136;
+	822   :   136;
+	823   :   136;
+	824   :   136;
+	825   :   137;
+	826   :   137;
+	827   :   137;
+	828   :   138;
+	829   :   138;
+	830   :   138;
+	831   :   138;
+	832   :   139;
+	833   :   139;
+	834   :   139;
+	835   :   140;
+	836   :   140;
+	837   :   140;
+	838   :   141;
+	839   :   141;
+	840   :   141;
+	841   :   142;
+	842   :   142;
+	843   :   142;
+	844   :   143;
+	845   :   143;
+	846   :   143;
+	847   :   144;
+	848   :   144;
+	849   :   144;
+	850   :   145;
+	851   :   145;
+	852   :   145;
+	853   :   146;
+	854   :   146;
+	855   :   147;
+	856   :   147;
+	857   :   147;
+	858   :   148;
+	859   :   148;
+	860   :   149;
+	861   :   149;
+	862   :   150;
+	863   :   150;
+	864   :   150;
+	865   :   151;
+	866   :   151;
+	867   :   152;
+	868   :   152;
+	869   :   153;
+	870   :   153;
+	871   :   154;
+	872   :   154;
+	873   :   154;
+	874   :   155;
+	875   :   155;
+	876   :   156;
+	877   :   156;
+	878   :   157;
+	879   :   157;
+	880   :   158;
+	881   :   158;
+	882   :   159;
+	883   :   159;
+	884   :   160;
+	885   :   160;
+	886   :   161;
+	887   :   161;
+	888   :   162;
+	889   :   162;
+	890   :   163;
+	891   :   163;
+	892   :   164;
+	893   :   165;
+	894   :   165;
+	895   :   166;
+	896   :   166;
+	897   :   167;
+	898   :   167;
+	899   :   168;
+	900   :   168;
+	901   :   169;
+	902   :   170;
+	903   :   170;
+	904   :   171;
+	905   :   171;
+	906   :   172;
+	907   :   172;
+	908   :   173;
+	909   :   174;
+	910   :   174;
+	911   :   175;
+	912   :   175;
+	913   :   176;
+	914   :   177;
+	915   :   177;
+	916   :   178;
+	917   :   178;
+	918   :   179;
+	919   :   180;
+	920   :   180;
+	921   :   181;
+	922   :   182;
+	923   :   182;
+	924   :   183;
+	925   :   184;
+	926   :   184;
+	927   :   185;
+	928   :   185;
+	929   :   186;
+	930   :   187;
+	931   :   187;
+	932   :   188;
+	933   :   189;
+	934   :   189;
+	935   :   190;
+	936   :   191;
+	937   :   191;
+	938   :   192;
+	939   :   193;
+	940   :   193;
+	941   :   194;
+	942   :   195;
+	943   :   195;
+	944   :   196;
+	945   :   197;
+	946   :   198;
+	947   :   198;
+	948   :   199;
+	949   :   200;
+	950   :   200;
+	951   :   201;
+	952   :   202;
+	953   :   202;
+	954   :   203;
+	955   :   204;
+	956   :   205;
+	957   :   205;
+	958   :   206;
+	959   :   207;
+	960   :   207;
+	961   :   208;
+	962   :   209;
+	963   :   210;
+	964   :   210;
+	965   :   211;
+	966   :   212;
+	967   :   212;
+	968   :   213;
+	969   :   214;
+	970   :   215;
+	971   :   215;
+	972   :   216;
+	973   :   217;
+	974   :   218;
+	975   :   218;
+	976   :   219;
+	977   :   220;
+	978   :   221;
+	979   :   221;
+	980   :   222;
+	981   :   223;
+	982   :   224;
+	983   :   224;
+	984   :   225;
+	985   :   226;
+	986   :   227;
+	987   :   227;
+	988   :   228;
+	989   :   229;
+	990   :   230;
+	991   :   230;
+	992   :   231;
+	993   :   232;
+	994   :   233;
+	995   :   234;
+	996   :   234;
+	997   :   235;
+	998   :   236;
+	999   :   237;
+	1000  :   237;
+	1001  :   238;
+	1002  :   239;
+	1003  :   240;
+	1004  :   240;
+	1005  :   241;
+	1006  :   242;
+	1007  :   243;
+	1008  :   244;
+	1009  :   244;
+	1010  :   245;
+	1011  :   246;
+	1012  :   247;
+	1013  :   247;
+	1014  :   248;
+	1015  :   249;
+	1016  :   250;
+	1017  :   251;
+	1018  :   251;
+	1019  :   252;
+	1020  :   253;
+	1021  :   254;
+	1022  :   254;
+	1023  :   255;
+END;
diff --git a/libraries/base/diag/src/data/diag_sin_1024x8.txt b/libraries/base/diag/src/data/diag_sin_1024x8.txt
new file mode 100644
index 0000000000..c8b8738bba
--- /dev/null
+++ b/libraries/base/diag/src/data/diag_sin_1024x8.txt
@@ -0,0 +1,1024 @@
+0
+1
+2
+2
+3
+4
+5
+5
+6
+7
+8
+9
+9
+10
+11
+12
+12
+13
+14
+15
+16
+16
+17
+18
+19
+19
+20
+21
+22
+22
+23
+24
+25
+26
+26
+27
+28
+29
+29
+30
+31
+32
+32
+33
+34
+35
+35
+36
+37
+38
+38
+39
+40
+41
+41
+42
+43
+44
+44
+45
+46
+46
+47
+48
+49
+49
+50
+51
+51
+52
+53
+54
+54
+55
+56
+56
+57
+58
+58
+59
+60
+61
+61
+62
+63
+63
+64
+65
+65
+66
+67
+67
+68
+69
+69
+70
+71
+71
+72
+72
+73
+74
+74
+75
+76
+76
+77
+78
+78
+79
+79
+80
+81
+81
+82
+82
+83
+84
+84
+85
+85
+86
+86
+87
+88
+88
+89
+89
+90
+90
+91
+91
+92
+93
+93
+94
+94
+95
+95
+96
+96
+97
+97
+98
+98
+99
+99
+100
+100
+101
+101
+102
+102
+102
+103
+103
+104
+104
+105
+105
+106
+106
+106
+107
+107
+108
+108
+109
+109
+109
+110
+110
+111
+111
+111
+112
+112
+112
+113
+113
+113
+114
+114
+114
+115
+115
+115
+116
+116
+116
+117
+117
+117
+118
+118
+118
+118
+119
+119
+119
+120
+120
+120
+120
+121
+121
+121
+121
+122
+122
+122
+122
+122
+123
+123
+123
+123
+123
+124
+124
+124
+124
+124
+124
+125
+125
+125
+125
+125
+125
+125
+126
+126
+126
+126
+126
+126
+126
+126
+126
+126
+126
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+126
+126
+126
+126
+126
+126
+126
+126
+126
+126
+126
+125
+125
+125
+125
+125
+125
+125
+124
+124
+124
+124
+124
+124
+123
+123
+123
+123
+123
+122
+122
+122
+122
+122
+121
+121
+121
+121
+120
+120
+120
+120
+119
+119
+119
+118
+118
+118
+118
+117
+117
+117
+116
+116
+116
+115
+115
+115
+114
+114
+114
+113
+113
+113
+112
+112
+112
+111
+111
+111
+110
+110
+109
+109
+109
+108
+108
+107
+107
+106
+106
+106
+105
+105
+104
+104
+103
+103
+102
+102
+102
+101
+101
+100
+100
+99
+99
+98
+98
+97
+97
+96
+96
+95
+95
+94
+94
+93
+93
+92
+91
+91
+90
+90
+89
+89
+88
+88
+87
+86
+86
+85
+85
+84
+84
+83
+82
+82
+81
+81
+80
+79
+79
+78
+78
+77
+76
+76
+75
+74
+74
+73
+72
+72
+71
+71
+70
+69
+69
+68
+67
+67
+66
+65
+65
+64
+63
+63
+62
+61
+61
+60
+59
+58
+58
+57
+56
+56
+55
+54
+54
+53
+52
+51
+51
+50
+49
+49
+48
+47
+46
+46
+45
+44
+44
+43
+42
+41
+41
+40
+39
+38
+38
+37
+36
+35
+35
+34
+33
+32
+32
+31
+30
+29
+29
+28
+27
+26
+26
+25
+24
+23
+22
+22
+21
+20
+19
+19
+18
+17
+16
+16
+15
+14
+13
+12
+12
+11
+10
+9
+9
+8
+7
+6
+5
+5
+4
+3
+2
+2
+1
+0
+-1
+-2
+-2
+-3
+-4
+-5
+-5
+-6
+-7
+-8
+-9
+-9
+-10
+-11
+-12
+-12
+-13
+-14
+-15
+-16
+-16
+-17
+-18
+-19
+-19
+-20
+-21
+-22
+-22
+-23
+-24
+-25
+-26
+-26
+-27
+-28
+-29
+-29
+-30
+-31
+-32
+-32
+-33
+-34
+-35
+-35
+-36
+-37
+-38
+-38
+-39
+-40
+-41
+-41
+-42
+-43
+-44
+-44
+-45
+-46
+-46
+-47
+-48
+-49
+-49
+-50
+-51
+-51
+-52
+-53
+-54
+-54
+-55
+-56
+-56
+-57
+-58
+-58
+-59
+-60
+-61
+-61
+-62
+-63
+-63
+-64
+-65
+-65
+-66
+-67
+-67
+-68
+-69
+-69
+-70
+-71
+-71
+-72
+-72
+-73
+-74
+-74
+-75
+-76
+-76
+-77
+-78
+-78
+-79
+-79
+-80
+-81
+-81
+-82
+-82
+-83
+-84
+-84
+-85
+-85
+-86
+-86
+-87
+-88
+-88
+-89
+-89
+-90
+-90
+-91
+-91
+-92
+-93
+-93
+-94
+-94
+-95
+-95
+-96
+-96
+-97
+-97
+-98
+-98
+-99
+-99
+-100
+-100
+-101
+-101
+-102
+-102
+-102
+-103
+-103
+-104
+-104
+-105
+-105
+-106
+-106
+-106
+-107
+-107
+-108
+-108
+-109
+-109
+-109
+-110
+-110
+-111
+-111
+-111
+-112
+-112
+-112
+-113
+-113
+-113
+-114
+-114
+-114
+-115
+-115
+-115
+-116
+-116
+-116
+-117
+-117
+-117
+-118
+-118
+-118
+-118
+-119
+-119
+-119
+-120
+-120
+-120
+-120
+-121
+-121
+-121
+-121
+-122
+-122
+-122
+-122
+-122
+-123
+-123
+-123
+-123
+-123
+-124
+-124
+-124
+-124
+-124
+-124
+-125
+-125
+-125
+-125
+-125
+-125
+-125
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-125
+-125
+-125
+-125
+-125
+-125
+-125
+-124
+-124
+-124
+-124
+-124
+-124
+-123
+-123
+-123
+-123
+-123
+-122
+-122
+-122
+-122
+-122
+-121
+-121
+-121
+-121
+-120
+-120
+-120
+-120
+-119
+-119
+-119
+-118
+-118
+-118
+-118
+-117
+-117
+-117
+-116
+-116
+-116
+-115
+-115
+-115
+-114
+-114
+-114
+-113
+-113
+-113
+-112
+-112
+-112
+-111
+-111
+-111
+-110
+-110
+-109
+-109
+-109
+-108
+-108
+-107
+-107
+-106
+-106
+-106
+-105
+-105
+-104
+-104
+-103
+-103
+-102
+-102
+-102
+-101
+-101
+-100
+-100
+-99
+-99
+-98
+-98
+-97
+-97
+-96
+-96
+-95
+-95
+-94
+-94
+-93
+-93
+-92
+-91
+-91
+-90
+-90
+-89
+-89
+-88
+-88
+-87
+-86
+-86
+-85
+-85
+-84
+-84
+-83
+-82
+-82
+-81
+-81
+-80
+-79
+-79
+-78
+-78
+-77
+-76
+-76
+-75
+-74
+-74
+-73
+-72
+-72
+-71
+-71
+-70
+-69
+-69
+-68
+-67
+-67
+-66
+-65
+-65
+-64
+-63
+-63
+-62
+-61
+-61
+-60
+-59
+-58
+-58
+-57
+-56
+-56
+-55
+-54
+-54
+-53
+-52
+-51
+-51
+-50
+-49
+-49
+-48
+-47
+-46
+-46
+-45
+-44
+-44
+-43
+-42
+-41
+-41
+-40
+-39
+-38
+-38
+-37
+-36
+-35
+-35
+-34
+-33
+-32
+-32
+-31
+-30
+-29
+-29
+-28
+-27
+-26
+-26
+-25
+-24
+-23
+-22
+-22
+-21
+-20
+-19
+-19
+-18
+-17
+-16
+-16
+-15
+-14
+-13
+-12
+-12
+-11
+-10
+-9
+-9
+-8
+-7
+-6
+-5
+-5
+-4
+-3
+-2
+-2
+-1
diff --git a/libraries/base/diag/src/data/diag_sin_2048x18.coe b/libraries/base/diag/src/data/diag_sin_2048x18.coe
new file mode 100644
index 0000000000..741c89b238
--- /dev/null
+++ b/libraries/base/diag/src/data/diag_sin_2048x18.coe
@@ -0,0 +1,2050 @@
+memory_initialization_radix= 16;
+memory_initialization_vector=
+00000,
+00192,
+00324,
+004b6,
+00648,
+007db,
+0096d,
+00aff,
+00c91,
+00e23,
+00fb5,
+01146,
+012d8,
+0146a,
+015fc,
+0178e,
+0191f,
+01ab1,
+01c42,
+01dd4,
+01f65,
+020f7,
+02288,
+02419,
+025aa,
+0273b,
+028cc,
+02a5d,
+02bee,
+02d7e,
+02f0f,
+0309f,
+0322f,
+033bf,
+0354f,
+036df,
+0386f,
+039ff,
+03b8e,
+03d1d,
+03eac,
+0403c,
+041ca,
+04359,
+044e8,
+04676,
+04804,
+04992,
+04b20,
+04cae,
+04e3b,
+04fc9,
+05156,
+052e3,
+0546f,
+055fc,
+05788,
+05914,
+05aa0,
+05c2c,
+05db7,
+05f42,
+060cd,
+06258,
+063e3,
+0656d,
+066f7,
+06881,
+06a0a,
+06b94,
+06d1d,
+06ea5,
+0702e,
+071b6,
+0733e,
+074c6,
+0764d,
+077d4,
+0795b,
+07ae1,
+07c68,
+07dee,
+07f73,
+080f8,
+0827d,
+08402,
+08587,
+0870b,
+0888e,
+08a12,
+08b95,
+08d17,
+08e9a,
+0901c,
+0919e,
+0931f,
+094a0,
+09621,
+097a1,
+09921,
+09aa0,
+09c1f,
+09d9e,
+09f1d,
+0a09b,
+0a218,
+0a395,
+0a512,
+0a68f,
+0a80b,
+0a986,
+0ab02,
+0ac7c,
+0adf7,
+0af71,
+0b0ea,
+0b264,
+0b3dc,
+0b555,
+0b6cc,
+0b844,
+0b9bb,
+0bb31,
+0bca7,
+0be1d,
+0bf92,
+0c107,
+0c27b,
+0c3ef,
+0c562,
+0c6d5,
+0c847,
+0c9b9,
+0cb2a,
+0cc9b,
+0ce0c,
+0cf7b,
+0d0eb,
+0d25a,
+0d3c8,
+0d536,
+0d6a3,
+0d810,
+0d97c,
+0dae8,
+0dc53,
+0ddbe,
+0df28,
+0e092,
+0e1fb,
+0e364,
+0e4cc,
+0e633,
+0e79a,
+0e900,
+0ea66,
+0ebcb,
+0ed30,
+0ee94,
+0eff8,
+0f15a,
+0f2bd,
+0f41f,
+0f580,
+0f6e0,
+0f840,
+0f9a0,
+0fafe,
+0fc5d,
+0fdba,
+0ff17,
+10074,
+101cf,
+1032a,
+10485,
+105df,
+10738,
+10891,
+109e9,
+10b40,
+10c96,
+10ded,
+10f42,
+11097,
+111eb,
+1133e,
+11491,
+115e3,
+11734,
+11885,
+119d5,
+11b24,
+11c73,
+11dc1,
+11f0e,
+1205b,
+121a7,
+122f2,
+1243d,
+12587,
+126d0,
+12818,
+12960,
+12aa7,
+12bed,
+12d33,
+12e77,
+12fbc,
+130ff,
+13242,
+13383,
+134c5,
+13605,
+13745,
+13883,
+139c2,
+13aff,
+13c3c,
+13d78,
+13eb3,
+13fed,
+14127,
+1425f,
+14397,
+144cf,
+14605,
+1473b,
+14870,
+149a4,
+14ad7,
+14c09,
+14d3b,
+14e6c,
+14f9c,
+150cb,
+151fa,
+15327,
+15454,
+15580,
+156ac,
+157d6,
+158ff,
+15a28,
+15b50,
+15c77,
+15d9d,
+15ec3,
+15fe7,
+1610b,
+1622e,
+16350,
+16471,
+16591,
+166b0,
+167cf,
+168ec,
+16a09,
+16b25,
+16c40,
+16d5a,
+16e74,
+16f8c,
+170a3,
+171ba,
+172d0,
+173e5,
+174f9,
+1760c,
+1771e,
+1782f,
+1793f,
+17a4f,
+17b5d,
+17c6b,
+17d77,
+17e83,
+17f8e,
+18098,
+181a1,
+182a9,
+183b0,
+184b6,
+185bc,
+186c0,
+187c3,
+188c6,
+189c7,
+18ac8,
+18bc7,
+18cc6,
+18dc4,
+18ec0,
+18fbc,
+190b7,
+191b1,
+192a9,
+193a1,
+19498,
+1958e,
+19683,
+19777,
+1986a,
+1995c,
+19a4d,
+19b3d,
+19c2c,
+19d1a,
+19e07,
+19ef3,
+19fde,
+1a0c9,
+1a1b2,
+1a29a,
+1a381,
+1a467,
+1a54c,
+1a630,
+1a713,
+1a7f5,
+1a8d6,
+1a9b6,
+1aa94,
+1ab72,
+1ac4f,
+1ad2b,
+1ae06,
+1aedf,
+1afb8,
+1b090,
+1b166,
+1b23c,
+1b311,
+1b3e4,
+1b4b6,
+1b588,
+1b658,
+1b727,
+1b7f6,
+1b8c3,
+1b98f,
+1ba5a,
+1bb24,
+1bbed,
+1bcb4,
+1bd7b,
+1be41,
+1bf05,
+1bfc9,
+1c08b,
+1c14d,
+1c20d,
+1c2cc,
+1c38a,
+1c447,
+1c503,
+1c5be,
+1c678,
+1c730,
+1c7e8,
+1c89e,
+1c954,
+1ca08,
+1cabb,
+1cb6d,
+1cc1e,
+1ccce,
+1cd7d,
+1ce2a,
+1ced7,
+1cf82,
+1d02c,
+1d0d6,
+1d17e,
+1d224,
+1d2ca,
+1d36f,
+1d412,
+1d4b5,
+1d556,
+1d5f6,
+1d695,
+1d733,
+1d7d0,
+1d86b,
+1d906,
+1d99f,
+1da37,
+1dace,
+1db64,
+1dbf9,
+1dc8d,
+1dd1f,
+1ddb0,
+1de40,
+1decf,
+1df5d,
+1dfea,
+1e075,
+1e100,
+1e189,
+1e211,
+1e298,
+1e31e,
+1e3a2,
+1e426,
+1e4a8,
+1e529,
+1e5a9,
+1e628,
+1e6a5,
+1e722,
+1e79d,
+1e817,
+1e890,
+1e907,
+1e97e,
+1e9f3,
+1ea67,
+1eada,
+1eb4c,
+1ebbd,
+1ec2c,
+1ec9a,
+1ed07,
+1ed73,
+1edde,
+1ee47,
+1eeaf,
+1ef17,
+1ef7c,
+1efe1,
+1f045,
+1f0a7,
+1f108,
+1f168,
+1f1c7,
+1f224,
+1f281,
+1f2dc,
+1f336,
+1f38e,
+1f3e6,
+1f43c,
+1f491,
+1f4e5,
+1f538,
+1f589,
+1f5d9,
+1f629,
+1f676,
+1f6c3,
+1f70e,
+1f759,
+1f7a2,
+1f7e9,
+1f830,
+1f875,
+1f8b9,
+1f8fc,
+1f93e,
+1f97f,
+1f9be,
+1f9fc,
+1fa39,
+1fa74,
+1faaf,
+1fae8,
+1fb20,
+1fb57,
+1fb8c,
+1fbc0,
+1fbf3,
+1fc25,
+1fc56,
+1fc85,
+1fcb3,
+1fce0,
+1fd0c,
+1fd37,
+1fd60,
+1fd88,
+1fdaf,
+1fdd4,
+1fdf9,
+1fe1c,
+1fe3e,
+1fe5e,
+1fe7e,
+1fe9c,
+1feb9,
+1fed5,
+1feef,
+1ff08,
+1ff20,
+1ff37,
+1ff4d,
+1ff61,
+1ff74,
+1ff86,
+1ff97,
+1ffa6,
+1ffb4,
+1ffc1,
+1ffcd,
+1ffd8,
+1ffe1,
+1ffe9,
+1fff0,
+1fff5,
+1fff9,
+1fffd,
+1fffe,
+1ffff,
+1fffe,
+1fffd,
+1fff9,
+1fff5,
+1fff0,
+1ffe9,
+1ffe1,
+1ffd8,
+1ffcd,
+1ffc1,
+1ffb4,
+1ffa6,
+1ff97,
+1ff86,
+1ff74,
+1ff61,
+1ff4d,
+1ff37,
+1ff20,
+1ff08,
+1feef,
+1fed5,
+1feb9,
+1fe9c,
+1fe7e,
+1fe5e,
+1fe3e,
+1fe1c,
+1fdf9,
+1fdd4,
+1fdaf,
+1fd88,
+1fd60,
+1fd37,
+1fd0c,
+1fce0,
+1fcb3,
+1fc85,
+1fc56,
+1fc25,
+1fbf3,
+1fbc0,
+1fb8c,
+1fb57,
+1fb20,
+1fae8,
+1faaf,
+1fa74,
+1fa39,
+1f9fc,
+1f9be,
+1f97f,
+1f93e,
+1f8fc,
+1f8b9,
+1f875,
+1f830,
+1f7e9,
+1f7a2,
+1f759,
+1f70e,
+1f6c3,
+1f676,
+1f629,
+1f5d9,
+1f589,
+1f538,
+1f4e5,
+1f491,
+1f43c,
+1f3e6,
+1f38e,
+1f336,
+1f2dc,
+1f281,
+1f224,
+1f1c7,
+1f168,
+1f108,
+1f0a7,
+1f045,
+1efe1,
+1ef7c,
+1ef17,
+1eeaf,
+1ee47,
+1edde,
+1ed73,
+1ed07,
+1ec9a,
+1ec2c,
+1ebbd,
+1eb4c,
+1eada,
+1ea67,
+1e9f3,
+1e97e,
+1e907,
+1e890,
+1e817,
+1e79d,
+1e722,
+1e6a5,
+1e628,
+1e5a9,
+1e529,
+1e4a8,
+1e426,
+1e3a2,
+1e31e,
+1e298,
+1e211,
+1e189,
+1e100,
+1e075,
+1dfea,
+1df5d,
+1decf,
+1de40,
+1ddb0,
+1dd1f,
+1dc8d,
+1dbf9,
+1db64,
+1dace,
+1da37,
+1d99f,
+1d906,
+1d86b,
+1d7d0,
+1d733,
+1d695,
+1d5f6,
+1d556,
+1d4b5,
+1d412,
+1d36f,
+1d2ca,
+1d224,
+1d17e,
+1d0d6,
+1d02c,
+1cf82,
+1ced7,
+1ce2a,
+1cd7d,
+1ccce,
+1cc1e,
+1cb6d,
+1cabb,
+1ca08,
+1c954,
+1c89e,
+1c7e8,
+1c730,
+1c678,
+1c5be,
+1c503,
+1c447,
+1c38a,
+1c2cc,
+1c20d,
+1c14d,
+1c08b,
+1bfc9,
+1bf05,
+1be41,
+1bd7b,
+1bcb4,
+1bbed,
+1bb24,
+1ba5a,
+1b98f,
+1b8c3,
+1b7f6,
+1b727,
+1b658,
+1b588,
+1b4b6,
+1b3e4,
+1b311,
+1b23c,
+1b166,
+1b090,
+1afb8,
+1aedf,
+1ae06,
+1ad2b,
+1ac4f,
+1ab72,
+1aa94,
+1a9b6,
+1a8d6,
+1a7f5,
+1a713,
+1a630,
+1a54c,
+1a467,
+1a381,
+1a29a,
+1a1b2,
+1a0c9,
+19fde,
+19ef3,
+19e07,
+19d1a,
+19c2c,
+19b3d,
+19a4d,
+1995c,
+1986a,
+19777,
+19683,
+1958e,
+19498,
+193a1,
+192a9,
+191b1,
+190b7,
+18fbc,
+18ec0,
+18dc4,
+18cc6,
+18bc7,
+18ac8,
+189c7,
+188c6,
+187c3,
+186c0,
+185bc,
+184b6,
+183b0,
+182a9,
+181a1,
+18098,
+17f8e,
+17e83,
+17d77,
+17c6b,
+17b5d,
+17a4f,
+1793f,
+1782f,
+1771e,
+1760c,
+174f9,
+173e5,
+172d0,
+171ba,
+170a3,
+16f8c,
+16e74,
+16d5a,
+16c40,
+16b25,
+16a09,
+168ec,
+167cf,
+166b0,
+16591,
+16471,
+16350,
+1622e,
+1610b,
+15fe7,
+15ec3,
+15d9d,
+15c77,
+15b50,
+15a28,
+158ff,
+157d6,
+156ac,
+15580,
+15454,
+15327,
+151fa,
+150cb,
+14f9c,
+14e6c,
+14d3b,
+14c09,
+14ad7,
+149a4,
+14870,
+1473b,
+14605,
+144cf,
+14397,
+1425f,
+14127,
+13fed,
+13eb3,
+13d78,
+13c3c,
+13aff,
+139c2,
+13883,
+13745,
+13605,
+134c5,
+13383,
+13242,
+130ff,
+12fbc,
+12e77,
+12d33,
+12bed,
+12aa7,
+12960,
+12818,
+126d0,
+12587,
+1243d,
+122f2,
+121a7,
+1205b,
+11f0e,
+11dc1,
+11c73,
+11b24,
+119d5,
+11885,
+11734,
+115e3,
+11491,
+1133e,
+111eb,
+11097,
+10f42,
+10ded,
+10c96,
+10b40,
+109e9,
+10891,
+10738,
+105df,
+10485,
+1032a,
+101cf,
+10074,
+0ff17,
+0fdba,
+0fc5d,
+0fafe,
+0f9a0,
+0f840,
+0f6e0,
+0f580,
+0f41f,
+0f2bd,
+0f15a,
+0eff8,
+0ee94,
+0ed30,
+0ebcb,
+0ea66,
+0e900,
+0e79a,
+0e633,
+0e4cc,
+0e364,
+0e1fb,
+0e092,
+0df28,
+0ddbe,
+0dc53,
+0dae8,
+0d97c,
+0d810,
+0d6a3,
+0d536,
+0d3c8,
+0d25a,
+0d0eb,
+0cf7b,
+0ce0c,
+0cc9b,
+0cb2a,
+0c9b9,
+0c847,
+0c6d5,
+0c562,
+0c3ef,
+0c27b,
+0c107,
+0bf92,
+0be1d,
+0bca7,
+0bb31,
+0b9bb,
+0b844,
+0b6cc,
+0b555,
+0b3dc,
+0b264,
+0b0ea,
+0af71,
+0adf7,
+0ac7c,
+0ab02,
+0a986,
+0a80b,
+0a68f,
+0a512,
+0a395,
+0a218,
+0a09b,
+09f1d,
+09d9e,
+09c1f,
+09aa0,
+09921,
+097a1,
+09621,
+094a0,
+0931f,
+0919e,
+0901c,
+08e9a,
+08d17,
+08b95,
+08a12,
+0888e,
+0870b,
+08587,
+08402,
+0827d,
+080f8,
+07f73,
+07dee,
+07c68,
+07ae1,
+0795b,
+077d4,
+0764d,
+074c6,
+0733e,
+071b6,
+0702e,
+06ea5,
+06d1d,
+06b94,
+06a0a,
+06881,
+066f7,
+0656d,
+063e3,
+06258,
+060cd,
+05f42,
+05db7,
+05c2c,
+05aa0,
+05914,
+05788,
+055fc,
+0546f,
+052e3,
+05156,
+04fc9,
+04e3b,
+04cae,
+04b20,
+04992,
+04804,
+04676,
+044e8,
+04359,
+041ca,
+0403c,
+03eac,
+03d1d,
+03b8e,
+039ff,
+0386f,
+036df,
+0354f,
+033bf,
+0322f,
+0309f,
+02f0f,
+02d7e,
+02bee,
+02a5d,
+028cc,
+0273b,
+025aa,
+02419,
+02288,
+020f7,
+01f65,
+01dd4,
+01c42,
+01ab1,
+0191f,
+0178e,
+015fc,
+0146a,
+012d8,
+01146,
+00fb5,
+00e23,
+00c91,
+00aff,
+0096d,
+007db,
+00648,
+004b6,
+00324,
+00192,
+00000,
+3fe6e,
+3fcdc,
+3fb4a,
+3f9b8,
+3f825,
+3f693,
+3f501,
+3f36f,
+3f1dd,
+3f04b,
+3eeba,
+3ed28,
+3eb96,
+3ea04,
+3e872,
+3e6e1,
+3e54f,
+3e3be,
+3e22c,
+3e09b,
+3df09,
+3dd78,
+3dbe7,
+3da56,
+3d8c5,
+3d734,
+3d5a3,
+3d412,
+3d282,
+3d0f1,
+3cf61,
+3cdd1,
+3cc41,
+3cab1,
+3c921,
+3c791,
+3c601,
+3c472,
+3c2e3,
+3c154,
+3bfc4,
+3be36,
+3bca7,
+3bb18,
+3b98a,
+3b7fc,
+3b66e,
+3b4e0,
+3b352,
+3b1c5,
+3b037,
+3aeaa,
+3ad1d,
+3ab91,
+3aa04,
+3a878,
+3a6ec,
+3a560,
+3a3d4,
+3a249,
+3a0be,
+39f33,
+39da8,
+39c1d,
+39a93,
+39909,
+3977f,
+395f6,
+3946c,
+392e3,
+3915b,
+38fd2,
+38e4a,
+38cc2,
+38b3a,
+389b3,
+3882c,
+386a5,
+3851f,
+38398,
+38212,
+3808d,
+37f08,
+37d83,
+37bfe,
+37a79,
+378f5,
+37772,
+375ee,
+3746b,
+372e9,
+37166,
+36fe4,
+36e62,
+36ce1,
+36b60,
+369df,
+3685f,
+366df,
+36560,
+363e1,
+36262,
+360e3,
+35f65,
+35de8,
+35c6b,
+35aee,
+35971,
+357f5,
+3567a,
+354fe,
+35384,
+35209,
+3508f,
+34f16,
+34d9c,
+34c24,
+34aab,
+34934,
+347bc,
+34645,
+344cf,
+34359,
+341e3,
+3406e,
+33ef9,
+33d85,
+33c11,
+33a9e,
+3392b,
+337b9,
+33647,
+334d6,
+33365,
+331f4,
+33085,
+32f15,
+32da6,
+32c38,
+32aca,
+3295d,
+327f0,
+32684,
+32518,
+323ad,
+32242,
+320d8,
+31f6e,
+31e05,
+31c9c,
+31b34,
+319cd,
+31866,
+31700,
+3159a,
+31435,
+312d0,
+3116c,
+31008,
+30ea6,
+30d43,
+30be1,
+30a80,
+30920,
+307c0,
+30660,
+30502,
+303a3,
+30246,
+300e9,
+2ff8c,
+2fe31,
+2fcd6,
+2fb7b,
+2fa21,
+2f8c8,
+2f76f,
+2f617,
+2f4c0,
+2f36a,
+2f213,
+2f0be,
+2ef69,
+2ee15,
+2ecc2,
+2eb6f,
+2ea1d,
+2e8cc,
+2e77b,
+2e62b,
+2e4dc,
+2e38d,
+2e23f,
+2e0f2,
+2dfa5,
+2de59,
+2dd0e,
+2dbc3,
+2da79,
+2d930,
+2d7e8,
+2d6a0,
+2d559,
+2d413,
+2d2cd,
+2d189,
+2d044,
+2cf01,
+2cdbe,
+2cc7d,
+2cb3b,
+2c9fb,
+2c8bb,
+2c77d,
+2c63e,
+2c501,
+2c3c4,
+2c288,
+2c14d,
+2c013,
+2bed9,
+2bda1,
+2bc69,
+2bb31,
+2b9fb,
+2b8c5,
+2b790,
+2b65c,
+2b529,
+2b3f7,
+2b2c5,
+2b194,
+2b064,
+2af35,
+2ae06,
+2acd9,
+2abac,
+2aa80,
+2a954,
+2a82a,
+2a701,
+2a5d8,
+2a4b0,
+2a389,
+2a263,
+2a13d,
+2a019,
+29ef5,
+29dd2,
+29cb0,
+29b8f,
+29a6f,
+29950,
+29831,
+29714,
+295f7,
+294db,
+293c0,
+292a6,
+2918c,
+29074,
+28f5d,
+28e46,
+28d30,
+28c1b,
+28b07,
+289f4,
+288e2,
+287d1,
+286c1,
+285b1,
+284a3,
+28395,
+28289,
+2817d,
+28072,
+27f68,
+27e5f,
+27d57,
+27c50,
+27b4a,
+27a44,
+27940,
+2783d,
+2773a,
+27639,
+27538,
+27439,
+2733a,
+2723c,
+27140,
+27044,
+26f49,
+26e4f,
+26d57,
+26c5f,
+26b68,
+26a72,
+2697d,
+26889,
+26796,
+266a4,
+265b3,
+264c3,
+263d4,
+262e6,
+261f9,
+2610d,
+26022,
+25f37,
+25e4e,
+25d66,
+25c7f,
+25b99,
+25ab4,
+259d0,
+258ed,
+2580b,
+2572a,
+2564a,
+2556c,
+2548e,
+253b1,
+252d5,
+251fa,
+25121,
+25048,
+24f70,
+24e9a,
+24dc4,
+24cef,
+24c1c,
+24b4a,
+24a78,
+249a8,
+248d9,
+2480a,
+2473d,
+24671,
+245a6,
+244dc,
+24413,
+2434c,
+24285,
+241bf,
+240fb,
+24037,
+23f75,
+23eb3,
+23df3,
+23d34,
+23c76,
+23bb9,
+23afd,
+23a42,
+23988,
+238d0,
+23818,
+23762,
+236ac,
+235f8,
+23545,
+23493,
+233e2,
+23332,
+23283,
+231d6,
+23129,
+2307e,
+22fd4,
+22f2a,
+22e82,
+22ddc,
+22d36,
+22c91,
+22bee,
+22b4b,
+22aaa,
+22a0a,
+2296b,
+228cd,
+22830,
+22795,
+226fa,
+22661,
+225c9,
+22532,
+2249c,
+22407,
+22373,
+222e1,
+22250,
+221c0,
+22131,
+220a3,
+22016,
+21f8b,
+21f00,
+21e77,
+21def,
+21d68,
+21ce2,
+21c5e,
+21bda,
+21b58,
+21ad7,
+21a57,
+219d8,
+2195b,
+218de,
+21863,
+217e9,
+21770,
+216f9,
+21682,
+2160d,
+21599,
+21526,
+214b4,
+21443,
+213d4,
+21366,
+212f9,
+2128d,
+21222,
+211b9,
+21151,
+210e9,
+21084,
+2101f,
+20fbb,
+20f59,
+20ef8,
+20e98,
+20e39,
+20ddc,
+20d7f,
+20d24,
+20cca,
+20c72,
+20c1a,
+20bc4,
+20b6f,
+20b1b,
+20ac8,
+20a77,
+20a27,
+209d7,
+2098a,
+2093d,
+208f2,
+208a7,
+2085e,
+20817,
+207d0,
+2078b,
+20747,
+20704,
+206c2,
+20681,
+20642,
+20604,
+205c7,
+2058c,
+20551,
+20518,
+204e0,
+204a9,
+20474,
+20440,
+2040d,
+203db,
+203aa,
+2037b,
+2034d,
+20320,
+202f4,
+202c9,
+202a0,
+20278,
+20251,
+2022c,
+20207,
+201e4,
+201c2,
+201a2,
+20182,
+20164,
+20147,
+2012b,
+20111,
+200f8,
+200e0,
+200c9,
+200b3,
+2009f,
+2008c,
+2007a,
+20069,
+2005a,
+2004c,
+2003f,
+20033,
+20028,
+2001f,
+20017,
+20010,
+2000b,
+20007,
+20003,
+20002,
+20001,
+20002,
+20003,
+20007,
+2000b,
+20010,
+20017,
+2001f,
+20028,
+20033,
+2003f,
+2004c,
+2005a,
+20069,
+2007a,
+2008c,
+2009f,
+200b3,
+200c9,
+200e0,
+200f8,
+20111,
+2012b,
+20147,
+20164,
+20182,
+201a2,
+201c2,
+201e4,
+20207,
+2022c,
+20251,
+20278,
+202a0,
+202c9,
+202f4,
+20320,
+2034d,
+2037b,
+203aa,
+203db,
+2040d,
+20440,
+20474,
+204a9,
+204e0,
+20518,
+20551,
+2058c,
+205c7,
+20604,
+20642,
+20681,
+206c2,
+20704,
+20747,
+2078b,
+207d0,
+20817,
+2085e,
+208a7,
+208f2,
+2093d,
+2098a,
+209d7,
+20a27,
+20a77,
+20ac8,
+20b1b,
+20b6f,
+20bc4,
+20c1a,
+20c72,
+20cca,
+20d24,
+20d7f,
+20ddc,
+20e39,
+20e98,
+20ef8,
+20f59,
+20fbb,
+2101f,
+21084,
+210e9,
+21151,
+211b9,
+21222,
+2128d,
+212f9,
+21366,
+213d4,
+21443,
+214b4,
+21526,
+21599,
+2160d,
+21682,
+216f9,
+21770,
+217e9,
+21863,
+218de,
+2195b,
+219d8,
+21a57,
+21ad7,
+21b58,
+21bda,
+21c5e,
+21ce2,
+21d68,
+21def,
+21e77,
+21f00,
+21f8b,
+22016,
+220a3,
+22131,
+221c0,
+22250,
+222e1,
+22373,
+22407,
+2249c,
+22532,
+225c9,
+22661,
+226fa,
+22795,
+22830,
+228cd,
+2296b,
+22a0a,
+22aaa,
+22b4b,
+22bee,
+22c91,
+22d36,
+22ddc,
+22e82,
+22f2a,
+22fd4,
+2307e,
+23129,
+231d6,
+23283,
+23332,
+233e2,
+23493,
+23545,
+235f8,
+236ac,
+23762,
+23818,
+238d0,
+23988,
+23a42,
+23afd,
+23bb9,
+23c76,
+23d34,
+23df3,
+23eb3,
+23f75,
+24037,
+240fb,
+241bf,
+24285,
+2434c,
+24413,
+244dc,
+245a6,
+24671,
+2473d,
+2480a,
+248d9,
+249a8,
+24a78,
+24b4a,
+24c1c,
+24cef,
+24dc4,
+24e9a,
+24f70,
+25048,
+25121,
+251fa,
+252d5,
+253b1,
+2548e,
+2556c,
+2564a,
+2572a,
+2580b,
+258ed,
+259d0,
+25ab4,
+25b99,
+25c7f,
+25d66,
+25e4e,
+25f37,
+26022,
+2610d,
+261f9,
+262e6,
+263d4,
+264c3,
+265b3,
+266a4,
+26796,
+26889,
+2697d,
+26a72,
+26b68,
+26c5f,
+26d57,
+26e4f,
+26f49,
+27044,
+27140,
+2723c,
+2733a,
+27439,
+27538,
+27639,
+2773a,
+2783d,
+27940,
+27a44,
+27b4a,
+27c50,
+27d57,
+27e5f,
+27f68,
+28072,
+2817d,
+28289,
+28395,
+284a3,
+285b1,
+286c1,
+287d1,
+288e2,
+289f4,
+28b07,
+28c1b,
+28d30,
+28e46,
+28f5d,
+29074,
+2918c,
+292a6,
+293c0,
+294db,
+295f7,
+29714,
+29831,
+29950,
+29a6f,
+29b8f,
+29cb0,
+29dd2,
+29ef5,
+2a019,
+2a13d,
+2a263,
+2a389,
+2a4b0,
+2a5d8,
+2a701,
+2a82a,
+2a954,
+2aa80,
+2abac,
+2acd9,
+2ae06,
+2af35,
+2b064,
+2b194,
+2b2c5,
+2b3f7,
+2b529,
+2b65c,
+2b790,
+2b8c5,
+2b9fb,
+2bb31,
+2bc69,
+2bda1,
+2bed9,
+2c013,
+2c14d,
+2c288,
+2c3c4,
+2c501,
+2c63e,
+2c77d,
+2c8bb,
+2c9fb,
+2cb3b,
+2cc7d,
+2cdbe,
+2cf01,
+2d044,
+2d189,
+2d2cd,
+2d413,
+2d559,
+2d6a0,
+2d7e8,
+2d930,
+2da79,
+2dbc3,
+2dd0e,
+2de59,
+2dfa5,
+2e0f2,
+2e23f,
+2e38d,
+2e4dc,
+2e62b,
+2e77b,
+2e8cc,
+2ea1d,
+2eb6f,
+2ecc2,
+2ee15,
+2ef69,
+2f0be,
+2f213,
+2f36a,
+2f4c0,
+2f617,
+2f76f,
+2f8c8,
+2fa21,
+2fb7b,
+2fcd6,
+2fe31,
+2ff8c,
+300e9,
+30246,
+303a3,
+30502,
+30660,
+307c0,
+30920,
+30a80,
+30be1,
+30d43,
+30ea6,
+31008,
+3116c,
+312d0,
+31435,
+3159a,
+31700,
+31866,
+319cd,
+31b34,
+31c9c,
+31e05,
+31f6e,
+320d8,
+32242,
+323ad,
+32518,
+32684,
+327f0,
+3295d,
+32aca,
+32c38,
+32da6,
+32f15,
+33085,
+331f4,
+33365,
+334d6,
+33647,
+337b9,
+3392b,
+33a9e,
+33c11,
+33d85,
+33ef9,
+3406e,
+341e3,
+34359,
+344cf,
+34645,
+347bc,
+34934,
+34aab,
+34c24,
+34d9c,
+34f16,
+3508f,
+35209,
+35384,
+354fe,
+3567a,
+357f5,
+35971,
+35aee,
+35c6b,
+35de8,
+35f65,
+360e3,
+36262,
+363e1,
+36560,
+366df,
+3685f,
+369df,
+36b60,
+36ce1,
+36e62,
+36fe4,
+37166,
+372e9,
+3746b,
+375ee,
+37772,
+378f5,
+37a79,
+37bfe,
+37d83,
+37f08,
+3808d,
+38212,
+38398,
+3851f,
+386a5,
+3882c,
+389b3,
+38b3a,
+38cc2,
+38e4a,
+38fd2,
+3915b,
+392e3,
+3946c,
+395f6,
+3977f,
+39909,
+39a93,
+39c1d,
+39da8,
+39f33,
+3a0be,
+3a249,
+3a3d4,
+3a560,
+3a6ec,
+3a878,
+3aa04,
+3ab91,
+3ad1d,
+3aeaa,
+3b037,
+3b1c5,
+3b352,
+3b4e0,
+3b66e,
+3b7fc,
+3b98a,
+3bb18,
+3bca7,
+3be36,
+3bfc4,
+3c154,
+3c2e3,
+3c472,
+3c601,
+3c791,
+3c921,
+3cab1,
+3cc41,
+3cdd1,
+3cf61,
+3d0f1,
+3d282,
+3d412,
+3d5a3,
+3d734,
+3d8c5,
+3da56,
+3dbe7,
+3dd78,
+3df09,
+3e09b,
+3e22c,
+3e3be,
+3e54f,
+3e6e1,
+3e872,
+3ea04,
+3eb96,
+3ed28,
+3eeba,
+3f04b,
+3f1dd,
+3f36f,
+3f501,
+3f693,
+3f825,
+3f9b8,
+3fb4a,
+3fcdc,
+3fe6e,
diff --git a/libraries/base/diag/src/data/diag_sin_2048x18.hex b/libraries/base/diag/src/data/diag_sin_2048x18.hex
new file mode 100644
index 0000000000..709e6ec6b7
--- /dev/null
+++ b/libraries/base/diag/src/data/diag_sin_2048x18.hex
@@ -0,0 +1,2049 @@
+:03000000000000fd
+:0300010000019269
+:03000200000324d4
+:030003000004b640
+:03000400000648ab
+:030005000007db16
+:0300060000096d81
+:03000700000affed
+:03000800000c9158
+:03000900000e23c3
+:03000a00000fb52f
+:03000b000011469b
+:03000c000012d807
+:03000d0000146a72
+:03000e000015fcde
+:03000f0000178e49
+:0300100000191fb5
+:03001100001ab121
+:03001200001c428d
+:03001300001dd4f9
+:03001400001f6565
+:030015000020f7d1
+:030016000022883d
+:03001700002419a9
+:030018000025aa16
+:0300190000273b82
+:03001a000028ccef
+:03001b00002a5d5b
+:03001c00002beec8
+:03001d00002d7e35
+:03001e00002f0fa1
+:03001f0000309f0f
+:0300200000322f7c
+:030021000033bfea
+:0300220000354f57
+:030023000036dfc5
+:0300240000386f32
+:030025000039ffa0
+:03002600003b8e0e
+:03002700003d1d7c
+:03002800003eaceb
+:0300290000403c58
+:03002a000041cac8
+:03002b0000435936
+:03002c000044e8a5
+:03002d0000467614
+:03002e0000480483
+:03002f00004992f3
+:03003000004b2062
+:03003100004caed2
+:03003200004e3b42
+:03003300004fc9b2
+:0300340000515622
+:030035000052e393
+:0300360000546f04
+:030037000055fc75
+:03003800005788e6
+:0300390000591457
+:03003a00005aa0c9
+:03003b00005c2c3a
+:03003c00005db7ad
+:03003d00005f421f
+:03003e000060cd92
+:03003f0000625804
+:030040000063e377
+:0300410000656dea
+:030042000066f75e
+:03004300006881d1
+:03004400006a0a45
+:03004500006b94b9
+:03004600006d1d2d
+:03004700006ea5a3
+:0300480000702e17
+:030049000071b68d
+:03004a0000733e02
+:03004b000074c678
+:03004c0000764dee
+:03004d000077d465
+:03004e0000795bdb
+:03004f00007ae153
+:03005000007c68c9
+:03005100007dee41
+:03005200007f73b9
+:030053000080f832
+:0300540000827daa
+:0300550000840222
+:030056000085879b
+:0300570000870b14
+:0300580000888e8f
+:03005900008a1208
+:03005a00008b9583
+:03005b00008d17fe
+:03005c00008e9a79
+:03005d0000901cf4
+:03005e0000919e70
+:03005f0000931fec
+:030060000094a069
+:03006100009621e5
+:030062000097a163
+:03006300009921e0
+:03006400009aa05f
+:03006500009c1fdd
+:03006600009d9e5c
+:03006700009f1dda
+:0300680000a09b5a
+:0300690000a218da
+:03006a0000a3955b
+:03006b0000a512db
+:03006c0000a68f5c
+:03006d0000a80bdd
+:03006e0000a98660
+:03006f0000ab02e1
+:0300700000ac7c65
+:0300710000adf7e8
+:0300720000af716b
+:0300730000b0eaf0
+:0300740000b26473
+:0300750000b3dcf9
+:0300760000b5557d
+:0300770000b6cc04
+:0300780000b84489
+:0300790000b9bb10
+:03007a0000bb3197
+:03007b0000bca71f
+:03007c0000be1da6
+:03007d0000bf922f
+:03007e0000c107b7
+:03007f0000c27b41
+:0300800000c3efcb
+:0300810000c56255
+:0300820000c6d5e0
+:0300830000c8476b
+:0300840000c9b9f7
+:0300850000cb2a83
+:0300860000cc9b10
+:0300870000ce0c9c
+:0300880000cf7b2b
+:0300890000d0ebb9
+:03008a0000d25a47
+:03008b0000d3c8d7
+:03008c0000d53666
+:03008d0000d6a3f7
+:03008e0000d81087
+:03008f0000d97c19
+:0300900000dae8ab
+:0300910000dc533d
+:0300920000ddbed0
+:0300930000df2863
+:0300940000e092f7
+:0300950000e1fb8c
+:0300960000e36420
+:0300970000e4ccb6
+:0300980000e6334c
+:0300990000e79ae3
+:03009a0000e9007a
+:03009b0000ea6612
+:03009c0000ebcbab
+:03009d0000ed3043
+:03009e0000ee94dd
+:03009f0000eff877
+:0300a00000f15a12
+:0300a10000f2bdad
+:0300a20000f41f48
+:0300a30000f580e5
+:0300a40000f6e083
+:0300a50000f84020
+:0300a60000f9a0be
+:0300a70000fafe5e
+:0300a80000fc5dfc
+:0300a90000fdba9d
+:0300aa0000ff173d
+:0300ab00010074dd
+:0300ac000101cf80
+:0300ad0001032a22
+:0300ae00010485c5
+:0300af000105df69
+:0300b0000107380d
+:0300b100010891b2
+:0300b2000109e958
+:0300b300010b40fe
+:0300b400010c96a6
+:0300b500010ded4d
+:0300b600010f42f5
+:0300b7000110979e
+:0300b8000111eb48
+:0300b90001133ef2
+:0300ba000114919d
+:0300bb000115e349
+:0300bc00011734f5
+:0300bd00011885a2
+:0300be000119d550
+:0300bf00011b24fe
+:0300c000011c73ad
+:0300c100011dc15d
+:0300c200011f0e0d
+:0300c30001205bbe
+:0300c4000121a770
+:0300c5000122f223
+:0300c60001243dd5
+:0300c70001258789
+:0300c8000126d03e
+:0300c900012818f3
+:0300ca00012960a9
+:0300cb00012aa760
+:0300cc00012bed18
+:0300cd00012d33cf
+:0300ce00012e7789
+:0300cf00012fbc42
+:0300d0000130fffd
+:0300d100013242b7
+:0300d20001338374
+:0300d3000134c530
+:0300d400013605ed
+:0300d500013745ab
+:0300d6000138836b
+:0300d7000139c22a
+:0300d800013affeb
+:0300d900013c3cab
+:0300da00013d786d
+:0300db00013eb330
+:0300dc00013fedf4
+:0300dd00014127b7
+:0300de0001425f7d
+:0300df0001439743
+:0300e0000144cf09
+:0300e100014605d0
+:0300e20001473b98
+:0300e30001487061
+:0300e4000149a42b
+:0300e500014ad7f6
+:0300e600014c09c1
+:0300e700014d3b8d
+:0300e800014e6c5a
+:0300e900014f9c28
+:0300ea000150cbf7
+:0300eb000151fac6
+:0300ec0001532796
+:0300ed0001545467
+:0300ee0001558039
+:0300ef000156ac0b
+:0300f0000157d6df
+:0300f1000158ffb4
+:0300f200015a2888
+:0300f300015b505e
+:0300f400015c7735
+:0300f500015d9d0d
+:0300f600015ec3e5
+:0300f700015fe7bf
+:0300f80001610b98
+:0300f90001622e73
+:0300fa000163504f
+:0300fb000164712c
+:0300fc000165910a
+:0300fd000166b0e9
+:0300fe000167cfc8
+:0300ff000168eca9
+:03010000016a0988
+:03010100016b256a
+:03010200016c404d
+:03010300016d5a31
+:03010400016e7415
+:03010500016f8cfb
+:030106000170a3e2
+:030107000171bac9
+:030108000172d0b1
+:030109000173e59a
+:03010a000174f984
+:03010b0001760c6e
+:03010c0001771e5a
+:03010d0001782f47
+:03010e0001793f35
+:03010f00017a4f23
+:03011000017b5d13
+:03011100017c6b03
+:03011200017d77f5
+:03011300017e83e7
+:03011400017f8eda
+:03011500018098ce
+:030116000181a1c3
+:030117000182a9b9
+:030118000183b0b0
+:030119000184b6a8
+:03011a000185bca0
+:03011b000186c09a
+:03011c000187c395
+:03011d000188c690
+:03011e000189c78d
+:03011f00018ac88a
+:03012000018bc789
+:03012100018cc688
+:03012200018dc488
+:03012300018ec08a
+:03012400018fbc8c
+:030125000190b78f
+:030126000191b193
+:030127000192a999
+:030128000193a19f
+:03012900019498a6
+:03012a0001958eae
+:03012b00019683b7
+:03012c00019777c1
+:03012d0001986acc
+:03012e0001995cd8
+:03012f00019a4de5
+:03013000019b3df3
+:03013100019c2c02
+:03013200019d1a12
+:03013300019e0723
+:03013400019ef336
+:03013500019fde49
+:0301360001a0c95c
+:0301370001a1b271
+:0301380001a29a87
+:0301390001a3819e
+:03013a0001a467b6
+:03013b0001a54ccf
+:03013c0001a630e9
+:03013d0001a71304
+:03013e0001a7f521
+:03013f0001a8d63e
+:0301400001a9b65c
+:0301410001aa947c
+:0301420001ab729c
+:0301430001ac4fbd
+:0301440001ad2bdf
+:0301450001ae0602
+:0301460001aedf28
+:0301470001afb84d
+:0301480001b09073
+:0301490001b1669b
+:03014a0001b23cc3
+:03014b0001b311ec
+:03014c0001b3e418
+:03014d0001b4b644
+:03014e0001b58870
+:03014f0001b6589e
+:0301500001b727cd
+:0301510001b7f6fd
+:0301520001b8c32e
+:0301530001b98f60
+:0301540001ba5a93
+:0301550001bb24c7
+:0301560001bbedfd
+:0301570001bcb434
+:0301580001bd7b6b
+:0301590001be41a3
+:03015a0001bf05dd
+:03015b0001bfc918
+:03015c0001c08b54
+:03015d0001c14d90
+:03015e0001c20dce
+:03015f0001c2cc0e
+:0301600001c38a4e
+:0301610001c4478f
+:0301620001c503d1
+:0301630001c5be15
+:0301640001c67859
+:0301650001c7309f
+:0301660001c7e8e6
+:0301670001c89e2e
+:0301680001c95476
+:0301690001ca08c0
+:03016a0001cabb0c
+:03016b0001cb6d58
+:03016c0001cc1ea5
+:03016d0001cccef4
+:03016e0001cd7d43
+:03016f0001ce2a94
+:0301700001ced7e6
+:0301710001cf8239
+:0301720001d02c8d
+:0301730001d0d6e2
+:0301740001d17e38
+:0301750001d22490
+:0301760001d2cae9
+:0301770001d36f42
+:0301780001d4129d
+:0301790001d4b5f9
+:03017a0001d55656
+:03017b0001d5f6b5
+:03017c0001d69514
+:03017d0001d73374
+:03017e0001d7d0d6
+:03017f0001d86b39
+:0301800001d9069c
+:0301810001d99f02
+:0301820001da3768
+:0301830001daced0
+:0301840001db6438
+:0301850001dbf9a2
+:0301860001dc8d0c
+:0301870001dd1f78
+:0301880001ddb0e6
+:0301890001de4054
+:03018a0001decfc4
+:03018b0001df5d34
+:03018c0001dfeaa6
+:03018d0001e07519
+:03018e0001e1008c
+:03018f0001e18902
+:0301900001e21178
+:0301910001e298f0
+:0301920001e31e68
+:0301930001e3a2e3
+:0301940001e4265d
+:0301950001e4a8da
+:0301960001e52957
+:0301970001e5a9d6
+:0301980001e62855
+:0301990001e6a5d7
+:03019a0001e72258
+:03019b0001e79ddc
+:03019c0001e81760
+:03019d0001e890e6
+:03019e0001e9076d
+:03019f0001e97ef5
+:0301a00001e9f37f
+:0301a10001ea6709
+:0301a20001eada95
+:0301a30001eb4c21
+:0301a40001ebbdaf
+:0301a50001ec2c3e
+:0301a60001ec9acf
+:0301a70001ed0760
+:0301a80001ed73f3
+:0301a90001edde87
+:0301aa0001ee471c
+:0301ab0001eeafb3
+:0301ac0001ef1749
+:0301ad0001ef7ce3
+:0301ae0001efe17d
+:0301af0001f04517
+:0301b00001f0a7b4
+:0301b10001f10851
+:0301b20001f168f0
+:0301b30001f1c790
+:0301b40001f22431
+:0301b50001f281d3
+:0301b60001f2dc77
+:0301b70001f3361b
+:0301b80001f38ec2
+:0301b90001f3e669
+:0301ba0001f43c11
+:0301bb0001f491bb
+:0301bc0001f4e566
+:0301bd0001f53811
+:0301be0001f589bf
+:0301bf0001f5d96e
+:0301c00001f6291c
+:0301c10001f676ce
+:0301c20001f6c380
+:0301c30001f70e33
+:0301c40001f759e7
+:0301c50001f7a29d
+:0301c60001f7e955
+:0301c70001f8300c
+:0301c80001f875c6
+:0301c90001f8b981
+:0301ca0001f8fc3d
+:0301cb0001f93ef9
+:0301cc0001f97fb7
+:0301cd0001f9be77
+:0301ce0001f9fc38
+:0301cf0001fa39f9
+:0301d00001fa74bd
+:0301d10001faaf81
+:0301d20001fae847
+:0301d30001fb200d
+:0301d40001fb57d5
+:0301d50001fb8c9f
+:0301d60001fbc06a
+:0301d70001fbf336
+:0301d80001fc2502
+:0301d90001fc56d0
+:0301da0001fc85a0
+:0301db0001fcb371
+:0301dc0001fce043
+:0301dd0001fd0c15
+:0301de0001fd37e9
+:0301df0001fd60bf
+:0301e00001fd8896
+:0301e10001fdaf6e
+:0301e20001fdd448
+:0301e30001fdf922
+:0301e40001fe1cfd
+:0301e50001fe3eda
+:0301e60001fe5eb9
+:0301e70001fe7e98
+:0301e80001fe9c79
+:0301e90001feb95b
+:0301ea0001fed53e
+:0301eb0001feef23
+:0301ec0001ff0808
+:0301ed0001ff20ef
+:0301ee0001ff37d7
+:0301ef0001ff4dc0
+:0301f00001ff61ab
+:0301f10001ff7497
+:0301f20001ff8684
+:0301f30001ff9772
+:0301f40001ffa662
+:0301f50001ffb453
+:0301f60001ffc145
+:0301f70001ffcd38
+:0301f80001ffd82c
+:0301f90001ffe122
+:0301fa0001ffe919
+:0301fb0001fff011
+:0301fc0001fff50b
+:0301fd0001fff906
+:0301fe0001fffd01
+:0301ff0001fffeff
+:0302000001fffffc
+:0302010001fffefc
+:0302020001fffdfc
+:0302030001fff9ff
+:0302040001fff502
+:0302050001fff006
+:0302060001ffe90c
+:0302070001ffe113
+:0302080001ffd81b
+:0302090001ffcd25
+:03020a0001ffc130
+:03020b0001ffb43c
+:03020c0001ffa649
+:03020d0001ff9757
+:03020e0001ff8667
+:03020f0001ff7478
+:0302100001ff618a
+:0302110001ff4d9d
+:0302120001ff37b2
+:0302130001ff20c8
+:0302140001ff08df
+:0302150001feeff8
+:0302160001fed511
+:0302170001feb92c
+:0302180001fe9c48
+:0302190001fe7e65
+:03021a0001fe5e84
+:03021b0001fe3ea3
+:03021c0001fe1cc4
+:03021d0001fdf9e7
+:03021e0001fdd40b
+:03021f0001fdaf2f
+:0302200001fd8855
+:0302210001fd607c
+:0302220001fd37a4
+:0302230001fd0cce
+:0302240001fce0fa
+:0302250001fcb326
+:0302260001fc8553
+:0302270001fc5681
+:0302280001fc25b1
+:0302290001fbf3e3
+:03022a0001fbc015
+:03022b0001fb8c48
+:03022c0001fb577c
+:03022d0001fb20b2
+:03022e0001fae8ea
+:03022f0001faaf22
+:0302300001fa745c
+:0302310001fa3996
+:0302320001f9fcd3
+:0302330001f9be10
+:0302340001f97f4e
+:0302350001f93e8e
+:0302360001f8fcd0
+:0302370001f8b912
+:0302380001f87555
+:0302390001f83099
+:03023a0001f7e9e0
+:03023b0001f7a226
+:03023c0001f7596e
+:03023d0001f70eb8
+:03023e0001f6c303
+:03023f0001f6764f
+:0302400001f6299b
+:0302410001f5d9eb
+:0302420001f5893a
+:0302430001f5388a
+:0302440001f4e5dd
+:0302450001f49130
+:0302460001f43c84
+:0302470001f3e6da
+:0302480001f38e31
+:0302490001f33688
+:03024a0001f2dce2
+:03024b0001f2813c
+:03024c0001f22498
+:03024d0001f1c7f5
+:03024e0001f16853
+:03024f0001f108b2
+:0302500001f0a713
+:0302510001f04574
+:0302520001efe1d8
+:0302530001ef7c3c
+:0302540001ef17a0
+:0302550001eeaf08
+:0302560001ee476f
+:0302570001edded8
+:0302580001ed7342
+:0302590001ed07ad
+:03025a0001ec9a1a
+:03025b0001ec2c87
+:03025c0001ebbdf6
+:03025d0001eb4c66
+:03025e0001eadad8
+:03025f0001ea674a
+:0302600001e9f3be
+:0302610001e97e32
+:0302620001e907a8
+:0302630001e8901f
+:0302640001e81797
+:0302650001e79d11
+:0302660001e7228b
+:0302670001e6a508
+:0302680001e62884
+:0302690001e5a903
+:03026a0001e52982
+:03026b0001e4a803
+:03026c0001e42684
+:03026d0001e3a208
+:03026e0001e31e8b
+:03026f0001e29811
+:0302700001e21197
+:0302710001e1891f
+:0302720001e100a7
+:0302730001e07532
+:0302740001dfeabd
+:0302750001df5d49
+:0302760001decfd7
+:0302770001de4065
+:0302780001ddb0f5
+:0302790001dd1f85
+:03027a0001dc8d17
+:03027b0001dbf9ab
+:03027c0001db643f
+:03027d0001daced5
+:03027e0001da376b
+:03027f0001d99f03
+:0302800001d9069b
+:0302810001d86b36
+:0302820001d7d0d1
+:0302830001d7336d
+:0302840001d6950b
+:0302850001d5f6aa
+:0302860001d55649
+:0302870001d4b5ea
+:0302880001d4128c
+:0302890001d36f2f
+:03028a0001d2cad4
+:03028b0001d22479
+:03028c0001d17e1f
+:03028d0001d0d6c7
+:03028e0001d02c70
+:03028f0001cf821a
+:0302900001ced7c5
+:0302910001ce2a71
+:0302920001cd7d1e
+:0302930001cccecd
+:0302940001cc1e7c
+:0302950001cb6d2d
+:0302960001cabbdf
+:0302970001ca0891
+:0302980001c95445
+:0302990001c89efb
+:03029a0001c7e8b1
+:03029b0001c73068
+:03029c0001c67820
+:03029d0001c5beda
+:03029e0001c50394
+:03029f0001c44750
+:0302a00001c38a0d
+:0302a10001c2cccb
+:0302a20001c20d89
+:0302a30001c14d49
+:0302a40001c08b0b
+:0302a50001bfc9cd
+:0302a60001bf0590
+:0302a70001be4154
+:0302a80001bd7b1a
+:0302a90001bcb4e1
+:0302aa0001bbeda8
+:0302ab0001bb2470
+:0302ac0001ba5a3a
+:0302ad0001b98f05
+:0302ae0001b8c3d1
+:0302af0001b7f69e
+:0302b00001b7276c
+:0302b10001b6583b
+:0302b20001b5880b
+:0302b30001b4b6dd
+:0302b40001b3e4af
+:0302b50001b31181
+:0302b60001b23c56
+:0302b70001b1662c
+:0302b80001b09002
+:0302b90001afb8da
+:0302ba0001aedfb3
+:0302bb0001ae068b
+:0302bc0001ad2b66
+:0302bd0001ac4f42
+:0302be0001ab721f
+:0302bf0001aa94fd
+:0302c00001a9b6db
+:0302c10001a8d6bb
+:0302c20001a7f59c
+:0302c30001a7137d
+:0302c40001a63060
+:0302c50001a54c44
+:0302c60001a46729
+:0302c70001a3810f
+:0302c80001a29af6
+:0302c90001a1b2de
+:0302ca0001a0c9c7
+:0302cb00019fdeb2
+:0302cc00019ef39d
+:0302cd00019e0788
+:0302ce00019d1a75
+:0302cf00019c2c63
+:0302d000019b3d52
+:0302d100019a4d42
+:0302d20001995c33
+:0302d30001986a25
+:0302d40001977718
+:0302d5000196830c
+:0302d60001958e01
+:0302d700019498f7
+:0302d8000193a1ee
+:0302d9000192a9e6
+:0302da000191b1de
+:0302db000190b7d8
+:0302dc00018fbcd3
+:0302dd00018ec0cf
+:0302de00018dc4cb
+:0302df00018cc6c9
+:0302e000018bc7c8
+:0302e100018ac8c7
+:0302e2000189c7c8
+:0302e3000188c6c9
+:0302e4000187c3cc
+:0302e5000186c0cf
+:0302e6000185bcd3
+:0302e7000184b6d9
+:0302e8000183b0df
+:0302e9000182a9e6
+:0302ea000181a1ee
+:0302eb00018098f7
+:0302ec00017f8e01
+:0302ed00017e830c
+:0302ee00017d7718
+:0302ef00017c6b24
+:0302f000017b5d32
+:0302f100017a4f40
+:0302f20001793f50
+:0302f30001782f60
+:0302f40001771e71
+:0302f50001760c83
+:0302f6000174f997
+:0302f7000173e5ab
+:0302f8000172d0c0
+:0302f9000171bad6
+:0302fa000170a3ed
+:0302fb00016f8c04
+:0302fc00016e741c
+:0302fd00016d5a36
+:0302fe00016c4050
+:0302ff00016b256b
+:03030000016a0986
+:030301000168eca4
+:030302000167cfc1
+:030303000166b0e0
+:03030400016591ff
+:030305000164711f
+:0303060001635040
+:0303070001622e62
+:0303080001610b85
+:03030900015fe7aa
+:03030a00015ec3ce
+:03030b00015d9df4
+:03030c00015c771a
+:03030d00015b5041
+:03030e00015a2869
+:03030f000158ff93
+:030310000157d6bc
+:030311000156ace6
+:0303120001558012
+:030313000154543e
+:030314000153276b
+:030315000151fa99
+:030316000150cbc8
+:03031700014f9cf7
+:03031800014e6c27
+:03031900014d3b58
+:03031a00014c098a
+:03031b00014ad7bd
+:03031c000149a4f0
+:03031d0001487024
+:03031e0001473b59
+:03031f000146058f
+:030320000144cfc6
+:03032100014397fe
+:0303220001425f36
+:030323000141276e
+:03032400013feda9
+:03032500013eb3e3
+:03032600013d781e
+:03032700013c3c5a
+:03032800013aff98
+:030329000139c2d5
+:03032a0001388314
+:03032b0001374552
+:03032c0001360592
+:03032d000134c5d3
+:03032e0001338315
+:03032f0001324256
+:030330000130ff9a
+:03033100012fbcdd
+:03033200012e7722
+:03033300012d3366
+:03033400012bedad
+:03033500012aa7f3
+:030336000129603a
+:0303370001281882
+:030338000126d0cb
+:0303390001258714
+:03033a0001243d5e
+:03033b000122f2aa
+:03033c000121a7f5
+:03033d0001205b41
+:03033e00011f0e8e
+:03033f00011dc1dc
+:03034000011c732a
+:03034100011b2479
+:030342000119d5c9
+:0303430001188519
+:030344000117346a
+:030345000115e3bc
+:030346000114910e
+:0303470001133e61
+:030348000111ebb5
+:0303490001109709
+:03034a00010f425e
+:03034b00010dedb4
+:03034c00010c960b
+:03034d00010b4061
+:03034e000109e9b9
+:03034f0001089111
+:030350000107386a
+:030351000105dfc4
+:030352000104851e
+:0303530001032a79
+:030354000101cfd5
+:0303550001007430
+:0303560000ff178e
+:0303570000fdbaec
+:0303580000fc5d49
+:0303590000fafea9
+:03035a0000f9a007
+:03035b0000f84067
+:03035c0000f6e0c8
+:03035d0000f58028
+:03035e0000f41f89
+:03035f0000f2bdec
+:0303600000f15a4f
+:0303610000eff8b2
+:0303620000ee9416
+:0303630000ed307a
+:0303640000ebcbe0
+:0303650000ea6645
+:0303660000e900ab
+:0303670000e79a12
+:0303680000e63379
+:0303690000e4cce1
+:03036a0000e36449
+:03036b0000e1fbb3
+:03036c0000e0921c
+:03036d0000df2886
+:03036e0000ddbef1
+:03036f0000dc535c
+:0303700000dae8c8
+:0303710000d97c34
+:0303720000d810a0
+:0303730000d6a30e
+:0303740000d5367b
+:0303750000d3c8ea
+:0303760000d25a58
+:0303770000d0ebc8
+:0303780000cf7b38
+:0303790000ce0ca7
+:03037a0000cc9b19
+:03037b0000cb2a8a
+:03037c0000c9b9fc
+:03037d0000c8476e
+:03037e0000c6d5e1
+:03037f0000c56254
+:0303800000c3efc8
+:0303810000c27b3c
+:0303820000c107b0
+:0303830000bf9226
+:0303840000be1d9b
+:0303850000bca712
+:0303860000bb3188
+:0303870000b9bbff
+:0303880000b84476
+:0303890000b6ccef
+:03038a0000b55566
+:03038b0000b3dce0
+:03038c0000b26458
+:03038d0000b0ead3
+:03038e0000af714c
+:03038f0000adf7c7
+:0303900000ac7c42
+:0303910000ab02bc
+:0303920000a98639
+:0303930000a80bb4
+:0303940000a68f31
+:0303950000a512ae
+:0303960000a3952c
+:0303970000a218a9
+:0303980000a09b27
+:03039900009f1da5
+:03039a00009d9e25
+:03039b00009c1fa4
+:03039c00009aa024
+:03039d00009921a3
+:03039e000097a124
+:03039f00009621a4
+:0303a0000094a026
+:0303a10000931fa7
+:0303a20000919e29
+:0303a30000901cab
+:0303a400008e9a2e
+:0303a500008d17b1
+:0303a600008b9534
+:0303a700008a12b7
+:0303a80000888e3c
+:0303a90000870bbf
+:0303aa0000858744
+:0303ab00008402c9
+:0303ac0000827d4f
+:0303ad000080f8d5
+:0303ae00007f735a
+:0303af00007deee0
+:0303b000007c6866
+:0303b100007ae1ee
+:0303b20000795b74
+:0303b3000077d4fc
+:0303b40000764d83
+:0303b5000074c60b
+:0303b60000733e93
+:0303b7000071b61c
+:0303b80000702ea4
+:0303b900006ea52e
+:0303ba00006d1db6
+:0303bb00006b9440
+:0303bc00006a0aca
+:0303bd0000688154
+:0303be000066f7df
+:0303bf0000656d69
+:0303c0000063e3f4
+:0303c1000062587f
+:0303c2000060cd0b
+:0303c300005f4296
+:0303c400005db722
+:0303c500005c2cad
+:0303c600005aa03a
+:0303c700005914c6
+:0303c80000578853
+:0303c9000055fce0
+:0303ca0000546f6d
+:0303cb000052e3fa
+:0303cc0000515687
+:0303cd00004fc915
+:0303ce00004e3ba3
+:0303cf00004cae31
+:0303d000004b20bf
+:0303d1000049924e
+:0303d200004804dc
+:0303d3000046766b
+:0303d4000044e8fa
+:0303d50000435989
+:0303d6000041ca19
+:0303d70000403ca7
+:0303d800003eac38
+:0303d900003d1dc7
+:0303da00003b8e57
+:0303db000039ffe7
+:0303dc0000386f77
+:0303dd000036df08
+:0303de0000354f98
+:0303df000033bf29
+:0303e00000322fb9
+:0303e10000309f4a
+:0303e200002f0fda
+:0303e300002d7e6c
+:0303e400002beefd
+:0303e500002a5d8e
+:0303e6000028cc20
+:0303e70000273bb1
+:0303e8000025aa43
+:0303e900002419d4
+:0303ea0000228866
+:0303eb000020f7f8
+:0303ec00001f658a
+:0303ed00001dd41c
+:0303ee00001c42ae
+:0303ef00001ab140
+:0303f00000191fd2
+:0303f10000178e64
+:0303f2000015fcf7
+:0303f30000146a89
+:0303f4000012d81c
+:0303f500001146ae
+:0303f600000fb540
+:0303f700000e23d2
+:0303f800000c9165
+:0303f900000afff8
+:0303fa0000096d8a
+:0303fb000007db1d
+:0303fc00000648b0
+:0303fd000004b643
+:0303fe00000324d5
+:0303ff0000019268
+:03040000000000f9
+:0304010003fe6e89
+:0304020003fcdc1c
+:0304030003fb4aae
+:0304040003f9b841
+:0304050003f825d4
+:0304060003f69367
+:0304070003f501f9
+:0304080003f36f8c
+:0304090003f1dd1f
+:03040a0003f04bb1
+:03040b0003eeba43
+:03040c0003ed28d5
+:03040d0003eb9668
+:03040e0003ea04fa
+:03040f0003e8728d
+:0304100003e6e11f
+:0304110003e54fb1
+:0304120003e3be43
+:0304130003e22cd5
+:0304140003e09b67
+:0304150003df09f9
+:0304160003dd788b
+:0304170003dbe71d
+:0304180003da56ae
+:0304190003d8c540
+:03041a0003d734d1
+:03041b0003d5a363
+:03041c0003d412f4
+:03041d0003d28285
+:03041e0003d0f117
+:03041f0003cf61a7
+:0304200003cdd138
+:0304210003cc41c8
+:0304220003cab159
+:0304230003c921e9
+:0304240003c7917a
+:0304250003c6010a
+:0304260003c4729a
+:0304270003c2e32a
+:0304280003c154b9
+:0304290003bfc44a
+:03042a0003be36d8
+:03042b0003bca768
+:03042c0003bb18f7
+:03042d0003b98a86
+:03042e0003b7fc15
+:03042f0003b66ea3
+:0304300003b4e032
+:0304310003b352c0
+:0304320003b1c54e
+:0304330003b037dc
+:0304340003aeaa6a
+:0304350003ad1df7
+:0304360003ab9184
+:0304370003aa0411
+:0304380003a8789e
+:0304390003a6ec2b
+:03043a0003a560b7
+:03043b0003a3d444
+:03043c0003a249cf
+:03043d0003a0be5b
+:03043e00039f33e6
+:03043f00039da872
+:03044000039c1dfd
+:03044100039a9388
+:0304420003990912
+:0304430003977f9d
+:030444000395f627
+:0304450003946cb1
+:030446000392e33b
+:0304470003915bc3
+:03044800038fd24d
+:03044900038e4ad5
+:03044a00038cc25e
+:03044b00038b3ae6
+:03044c000389b36e
+:03044d0003882cf5
+:03044e000386a57d
+:03044f0003851f03
+:030450000383988b
+:0304510003821211
+:0304520003808d97
+:03045300037f081c
+:03045400037d83a2
+:03045500037bfe28
+:03045600037a79ad
+:030457000378f532
+:03045800037772b5
+:030459000375ee3a
+:03045a0003746bbd
+:03045b000372e940
+:03045c00037166c3
+:03045d00036fe446
+:03045e00036e62c8
+:03045f00036ce14a
+:03046000036b60cb
+:030461000369df4d
+:0304620003685fcd
+:030463000366df4e
+:03046400036560cd
+:030465000363e14d
+:03046600036262cc
+:030467000360e34c
+:03046800035f65ca
+:03046900035de848
+:03046a00035c6bc5
+:03046b00035aee43
+:03046c00035971c0
+:03046d000357f53d
+:03046e0003567ab8
+:03046f000354fe35
+:03047000035384af
+:030471000352092a
+:0304720003508fa5
+:03047300034f161e
+:03047400034d9c99
+:03047500034c2411
+:03047600034aab8b
+:0304770003493402
+:030478000347bc7b
+:03047900034645f2
+:03047a000344cf69
+:03047b00034359df
+:03047c000341e356
+:03047d0003406ecb
+:03047e00033ef941
+:03047f00033d85b5
+:03048000033c1129
+:03048100033a9e9d
+:0304820003392b10
+:030483000337b983
+:03048400033647f5
+:030485000334d667
+:03048600033365d8
+:030487000331f44a
+:03048800033085b9
+:03048900032f1529
+:03048a00032da699
+:03048b00032c3807
+:03048c00032aca76
+:03048d0003295de3
+:03048e000327f051
+:03048f00032684bd
+:0304900003251829
+:030491000323ad95
+:0304920003224200
+:030493000320d86b
+:03049400031f6ed5
+:03049500031e053e
+:03049600031c9ca8
+:03049700031b3410
+:030498000319cd78
+:03049900031866df
+:03049a0003170045
+:03049b0003159aac
+:03049c0003143511
+:03049d000312d077
+:03049e0003116cdb
+:03049f000310083f
+:0304a000030ea6a2
+:0304a100030d4305
+:0304a200030be168
+:0304a300030a80c9
+:0304a40003092029
+:0304a5000307c08a
+:0304a600030660ea
+:0304a70003050248
+:0304a8000303a3a8
+:0304a90003024605
+:0304aa000300e963
+:0304ab0002ff8cc1
+:0304ac0002fe311c
+:0304ad0002fcd678
+:0304ae0002fb7bd3
+:0304af0002fa212d
+:0304b00002f8c887
+:0304b10002f76fe0
+:0304b20002f61738
+:0304b30002f4c090
+:0304b40002f36ae6
+:0304b50002f2133d
+:0304b60002f0be93
+:0304b70002ef69e8
+:0304b80002ee153c
+:0304b90002ecc290
+:0304ba0002eb6fe3
+:0304bb0002ea1d35
+:0304bc0002e8cc87
+:0304bd0002e77bd8
+:0304be0002e62b28
+:0304bf0002e4dc78
+:0304c00002e38dc7
+:0304c10002e23f15
+:0304c20002e0f263
+:0304c30002dfa5b0
+:0304c40002de59fc
+:0304c50002dd0e47
+:0304c60002dbc393
+:0304c70002da79dd
+:0304c80002d93026
+:0304c90002d7e86f
+:0304ca0002d6a0b7
+:0304cb0002d559fe
+:0304cc0002d41344
+:0304cd0002d2cd8b
+:0304ce0002d189cf
+:0304cf0002d04414
+:0304d00002cf0157
+:0304d10002cdbe9b
+:0304d20002cc7ddc
+:0304d30002cb3b1e
+:0304d40002c9fb5f
+:0304d50002c8bb9f
+:0304d60002c77ddd
+:0304d70002c63e1c
+:0304d80002c50159
+:0304d90002c3c497
+:0304da0002c288d3
+:0304db0002c14d0e
+:0304dc0002c01348
+:0304dd0002bed983
+:0304de0002bda1bb
+:0304df0002bc69f3
+:0304e00002bb312b
+:0304e10002b9fb62
+:0304e20002b8c598
+:0304e30002b790cd
+:0304e40002b65c01
+:0304e50002b52934
+:0304e60002b3f767
+:0304e70002b2c599
+:0304e80002b194ca
+:0304e90002b064fa
+:0304ea0002af3529
+:0304eb0002ae0658
+:0304ec0002acd986
+:0304ed0002abacb3
+:0304ee0002aa80df
+:0304ef0002a9540b
+:0304f00002a82a35
+:0304f10002a7015e
+:0304f20002a5d888
+:0304f30002a4b0b0
+:0304f40002a389d7
+:0304f50002a263fd
+:0304f60002a13d23
+:0304f70002a01947
+:0304f800029ef56c
+:0304f900029dd28f
+:0304fa00029cb0b1
+:0304fb00029b8fd2
+:0304fc00029a6ff2
+:0304fd0002995011
+:0304fe0002983130
+:0304ff000297144d
+:030500000295f76a
+:030501000294db86
+:030502000293c0a1
+:030503000292a6bb
+:0305040002918cd5
+:03050500029074ed
+:03050600028f5d04
+:03050700028e461b
+:03050800028d3031
+:03050900028c1b46
+:03050a00028b075a
+:03050b000289f46e
+:03050c000288e280
+:03050d000287d191
+:03050e000286c1a1
+:03050f000285b1b1
+:030510000284a3bf
+:03051100028395cd
+:03051200028289d9
+:0305130002817de5
+:03051400028072f0
+:03051500027f68fa
+:03051600027e5f03
+:03051700027d570b
+:03051800027c5012
+:03051900027b4a18
+:03051a00027a441e
+:03051b0002794022
+:03051c0002783d25
+:03051d0002773a28
+:03051e0002763929
+:03051f000275382a
+:0305200002743929
+:0305210002733a28
+:0305220002723c26
+:0305230002714022
+:030524000270441e
+:03052500026f4919
+:03052600026e4f13
+:03052700026d570b
+:03052800026c5f03
+:03052900026b68fa
+:03052a00026a72f0
+:03052b0002697de5
+:03052c00026889d9
+:03052d00026796cc
+:03052e000266a4be
+:03052f000265b3af
+:030530000264c39f
+:030531000263d48e
+:030532000262e67c
+:030533000261f969
+:0305340002610d54
+:030535000260223f
+:03053600025f372a
+:03053700025e4e13
+:03053800025d66fb
+:03053900025c7fe2
+:03053a00025b99c8
+:03053b00025ab4ad
+:03053c000259d091
+:03053d000258ed74
+:03053e0002580b55
+:03053f0002572a36
+:0305400002564a16
+:0305410002556cf4
+:0305420002548ed2
+:030543000253b1af
+:030544000252d58b
+:030545000251fa66
+:030546000251213e
+:0305470002504817
+:03054800024f70ef
+:03054900024e9ac5
+:03054a00024dc49b
+:03054b00024cef70
+:03054c00024c1c42
+:03054d00024b4a14
+:03054e00024a78e6
+:03054f000249a8b6
+:030550000248d985
+:0305510002480a53
+:0305520002473d20
+:03055300024671ec
+:030554000245a6b7
+:030555000244dc81
+:0305560002441349
+:0305570002434c10
+:03055800024285d7
+:030559000241bf9d
+:03055a000240fb61
+:03055b0002403724
+:03055c00023f75e6
+:03055d00023eb3a8
+:03055e00023df368
+:03055f00023d3426
+:03056000023c76e4
+:03056100023bb9a1
+:03056200023afd5d
+:03056300023a4217
+:03056400023988d1
+:030565000238d089
+:0305660002381840
+:03056700023762f6
+:030568000236acac
+:030569000235f860
+:03056a0002354512
+:03056b00023493c4
+:03056c000233e275
+:03056d0002333224
+:03056e00023283d3
+:03056f000231d680
+:030570000231292c
+:0305710002307ed7
+:03057200022fd481
+:03057300022f2a2a
+:03057400022e82d2
+:03057500022ddc78
+:03057600022d361d
+:03057700022c91c2
+:03057800022bee65
+:03057900022b4b07
+:03057a00022aaaa8
+:03057b00022a0a47
+:03057c0002296be6
+:03057d000228cd84
+:03057e0002283020
+:03057f00022795bb
+:030580000226fa56
+:03058100022661ee
+:030582000225c986
+:030583000225321c
+:0305840002249cb2
+:0305850002240746
+:03058600022373da
+:030587000222e16c
+:03058800022250fc
+:030589000221c08c
+:03058a000221311a
+:03058b000220a3a8
+:03058c0002201634
+:03058d00021f8bbf
+:03058e00021f0049
+:03058f00021e77d2
+:03059000021def5a
+:03059100021d68e0
+:03059200021ce266
+:03059300021c5ee9
+:03059400021bda6d
+:03059500021b58ee
+:03059600021ad76f
+:03059700021a57ee
+:030598000219d86d
+:0305990002195be9
+:03059a000218de66
+:03059b00021863e0
+:03059c000217e95a
+:03059d00021770d2
+:03059e000216f949
+:03059f00021682bf
+:0305a00002160d33
+:0305a100021599a7
+:0305a20002152619
+:0305a3000214b48b
+:0305a400021443fb
+:0305a5000213d46a
+:0305a600021366d7
+:0305a7000212f944
+:0305a80002128daf
+:0305a90002122219
+:0305aa000211b982
+:0305ab00021151e9
+:0305ac000210e951
+:0305ad00021084b5
+:0305ae0002101f19
+:0305af00020fbb7d
+:0305b000020f59de
+:0305b100020ef83f
+:0305b200020e989e
+:0305b300020e39fc
+:0305b400020ddc59
+:0305b500020d7fb5
+:0305b600020d240f
+:0305b700020cca69
+:0305b800020c72c0
+:0305b900020c1a17
+:0305ba00020bc46d
+:0305bb00020b6fc1
+:0305bc00020b1b14
+:0305bd00020ac867
+:0305be00020a77b7
+:0305bf00020a2706
+:0305c0000209d756
+:0305c10002098aa2
+:0305c20002093dee
+:0305c3000208f239
+:0305c4000208a783
+:0305c50002085ecb
+:0305c60002081711
+:0305c7000207d058
+:0305c80002078b9c
+:0305c900020747df
+:0305ca0002070421
+:0305cb000206c263
+:0305cc00020681a3
+:0305cd00020642e1
+:0305ce000206041e
+:0305cf000205c75b
+:0305d00002058c95
+:0305d100020551cf
+:0305d20002051807
+:0305d3000204e03f
+:0305d4000204a975
+:0305d500020474a9
+:0305d600020440dc
+:0305d70002040d0e
+:0305d8000203db40
+:0305d9000203aa70
+:0305da0002037b9e
+:0305db0002034dcb
+:0305dc00020320f7
+:0305dd000202f423
+:0305de000202c94d
+:0305df000202a075
+:0305e0000202789c
+:0305e100020251c2
+:0305e20002022ce6
+:0305e3000202070a
+:0305e4000201e42d
+:0305e5000201c24e
+:0305e6000201a26d
+:0305e7000201828c
+:0305e800020164a9
+:0305e900020147c5
+:0305ea0002012be0
+:0305eb00020111f9
+:0305ec000200f812
+:0305ed000200e029
+:0305ee000200c93f
+:0305ef000200b354
+:0305f00002009f67
+:0305f10002008c79
+:0305f20002007a8a
+:0305f3000200699a
+:0305f40002005aa8
+:0305f50002004cb5
+:0305f60002003fc1
+:0305f700020033cc
+:0305f800020028d6
+:0305f90002001fde
+:0305fa00020017e5
+:0305fb00020010eb
+:0305fc0002000bef
+:0305fd00020007f2
+:0305fe00020003f5
+:0305ff00020002f5
+:03060000020001f4
+:03060100020002f2
+:03060200020003f0
+:03060300020007eb
+:0306040002000be6
+:03060500020010e0
+:03060600020017d8
+:0306070002001fcf
+:03060800020028c5
+:03060900020033b9
+:03060a0002003fac
+:03060b0002004c9e
+:03060c0002005a8f
+:03060d000200697f
+:03060e0002007a6d
+:03060f0002008c5a
+:0306100002009f46
+:030611000200b331
+:030612000200c91a
+:030613000200e002
+:030614000200f8e9
+:03061500020111ce
+:0306160002012bb3
+:0306170002014796
+:0306180002016478
+:0306190002018259
+:03061a000201a238
+:03061b000201c217
+:03061c000201e4f4
+:03061d00020207cf
+:03061e0002022ca9
+:03061f0002025183
+:030620000202785b
+:030621000202a032
+:030622000202c908
+:030623000202f4dc
+:03062400020320ae
+:0306250002034d80
+:0306260002037b51
+:030627000203aa21
+:030628000203dbef
+:0306290002040dbb
+:03062a0002044087
+:03062b0002047452
+:03062c000204a91c
+:03062d000204e0e4
+:03062e00020518aa
+:03062f0002055170
+:0306300002058c34
+:030631000205c7f8
+:03063200020604b9
+:030633000206427a
+:030634000206813a
+:030635000206c2f8
+:03063600020704b4
+:0306370002074770
+:0306380002078b2b
+:030639000207d0e5
+:03063a000208179c
+:03063b0002085e54
+:03063c000208a70a
+:03063d000208f2be
+:03063e0002093d71
+:03063f0002098a23
+:030640000209d7d5
+:03064100020a2783
+:03064200020a7732
+:03064300020ac8e0
+:03064400020b1b8b
+:03064500020b6f36
+:03064600020bc4e0
+:03064700020c1a88
+:03064800020c722f
+:03064900020ccad6
+:03064a00020d247a
+:03064b00020d7f1e
+:03064c00020ddcc0
+:03064d00020e3961
+:03064e00020e9801
+:03064f00020ef8a0
+:03065000020f593d
+:03065100020fbbda
+:0306520002101f74
+:030653000210840e
+:030654000210e9a8
+:030655000211513e
+:030656000211b9d5
+:030657000212226a
+:0306580002128dfe
+:030659000212f991
+:03065a0002136622
+:03065b000213d4b3
+:03065c0002144342
+:03065d000214b4d0
+:03065e000215265c
+:03065f00021599e8
+:0306600002160d72
+:03066100021682fc
+:030662000216f984
+:030663000217700b
+:030664000217e991
+:0306650002186315
+:030666000218de99
+:0306670002195b1a
+:030668000219d89c
+:03066900021a571b
+:03066a00021ad79a
+:03066b00021b5817
+:03066c00021bda94
+:03066d00021c5e0e
+:03066e00021ce289
+:03066f00021d6801
+:03067000021def79
+:03067100021e77ef
+:03067200021f0064
+:03067300021f8bd8
+:030674000220164b
+:030675000220a3bd
+:030676000221312d
+:030677000221c09d
+:030678000222500b
+:030679000222e179
+:03067a00022373e5
+:03067b000224074f
+:03067c0002249cb9
+:03067d0002253221
+:03067e000225c989
+:03067f00022661ef
+:030680000226fa55
+:03068100022795b8
+:030682000228301b
+:030683000228cd7d
+:0306840002296bdd
+:03068500022a0a3c
+:03068600022aaa9b
+:03068700022b4bf8
+:03068800022bee54
+:03068900022c91af
+:03068a00022d3608
+:03068b00022ddc61
+:03068c00022e82b9
+:03068d00022f2a0f
+:03068e00022fd464
+:03068f0002307eb8
+:030690000231290b
+:030691000231d65d
+:03069200023283ae
+:03069300023332fd
+:030694000233e24c
+:0306950002349399
+:03069600023545e5
+:030697000235f831
+:030698000236ac7b
+:03069900023762c3
+:03069a000238180b
+:03069b000238d052
+:03069c0002398898
+:03069d00023a42dc
+:03069e00023afd20
+:03069f00023bb962
+:0306a000023c76a3
+:0306a100023d34e3
+:0306a200023df323
+:0306a300023eb361
+:0306a400023f759d
+:0306a500024037d9
+:0306a6000240fb14
+:0306a7000241bf4e
+:0306a80002428586
+:0306a90002434cbd
+:0306aa00024413f4
+:0306ab000244dc2a
+:0306ac000245a65e
+:0306ad0002467191
+:0306ae0002473dc3
+:0306af0002480af4
+:0306b0000248d924
+:0306b1000249a853
+:0306b200024a7881
+:0306b300024b4aad
+:0306b400024c1cd9
+:0306b500024cef05
+:0306b600024dc42e
+:0306b700024e9a56
+:0306b800024f707e
+:0306b900025048a4
+:0306ba00025121c9
+:0306bb000251faef
+:0306bc000252d512
+:0306bd000253b134
+:0306be0002548e55
+:0306bf0002556c75
+:0306c00002564a95
+:0306c10002572ab3
+:0306c20002580bd0
+:0306c3000258eded
+:0306c4000259d008
+:0306c500025ab422
+:0306c600025b993b
+:0306c700025c7f53
+:0306c800025d666a
+:0306c900025e4e80
+:0306ca00025f3795
+:0306cb00026022a8
+:0306cc0002610dbb
+:0306cd000261f9ce
+:0306ce000262e6df
+:0306cf000263d4ef
+:0306d0000264c3fe
+:0306d1000265b30c
+:0306d2000266a419
+:0306d30002679625
+:0306d40002688930
+:0306d50002697d3a
+:0306d600026a7243
+:0306d700026b684b
+:0306d800026c5f52
+:0306d900026d5758
+:0306da00026e4f5e
+:0306db00026f4962
+:0306dc0002704465
+:0306dd0002714067
+:0306de0002723c69
+:0306df0002733a69
+:0306e00002743968
+:0306e10002753867
+:0306e20002763964
+:0306e30002773a61
+:0306e40002783d5c
+:0306e50002794057
+:0306e600027a4451
+:0306e700027b4a49
+:0306e800027c5041
+:0306e900027d5738
+:0306ea00027e5f2e
+:0306eb00027f6823
+:0306ec0002807217
+:0306ed0002817d0a
+:0306ee00028289fc
+:0306ef00028395ee
+:0306f0000284a3de
+:0306f1000285b1ce
+:0306f2000286c1bc
+:0306f3000287d1aa
+:0306f4000288e297
+:0306f5000289f483
+:0306f600028b076d
+:0306f700028c1b57
+:0306f800028d3040
+:0306f900028e4628
+:0306fa00028f5d0f
+:0306fb00029074f6
+:0306fc0002918cdc
+:0306fd000292a6c0
+:0306fe000293c0a4
+:0306ff000294db87
+:030700000295f768
+:0307010002971448
+:0307020002983129
+:0307030002995008
+:03070400029a6fe7
+:03070500029b8fc5
+:03070600029cb0a2
+:03070700029dd27e
+:03070800029ef559
+:0307090002a01932
+:03070a0002a13d0c
+:03070b0002a263e4
+:03070c0002a389bc
+:03070d0002a4b093
+:03070e0002a5d869
+:03070f0002a7013d
+:0307100002a82a12
+:0307110002a954e6
+:0307120002aa80b8
+:0307130002abac8a
+:0307140002acd95b
+:0307150002ae062b
+:0307160002af35fa
+:0307170002b064c9
+:0307180002b19497
+:0307190002b2c564
+:03071a0002b3f730
+:03071b0002b529fb
+:03071c0002b65cc6
+:03071d0002b79090
+:03071e0002b8c559
+:03071f0002b9fb21
+:0307200002bb31e8
+:0307210002bc69ae
+:0307220002bda174
+:0307230002bed93a
+:0307240002c013fd
+:0307250002c14dc1
+:0307260002c28884
+:0307270002c3c446
+:0307280002c50106
+:0307290002c63ec7
+:03072a0002c77d86
+:03072b0002c8bb46
+:03072c0002c9fb04
+:03072d0002cb3bc1
+:03072e0002cc7d7d
+:03072f0002cdbe3a
+:0307300002cf01f4
+:0307310002d044af
+:0307320002d18968
+:0307330002d2cd22
+:0307340002d413d9
+:0307350002d55991
+:0307360002d6a048
+:0307370002d7e8fe
+:0307380002d930b3
+:0307390002da7968
+:03073a0002dbc31c
+:03073b0002dd0ece
+:03073c0002de5981
+:03073d0002dfa533
+:03073e0002e0f2e4
+:03073f0002e23f94
+:0307400002e38d44
+:0307410002e4dcf3
+:0307420002e62ba1
+:0307430002e77b4f
+:0307440002e8ccfc
+:0307450002ea1da8
+:0307460002eb6f54
+:0307470002ecc2ff
+:0307480002ee15a9
+:0307490002ef6953
+:03074a0002f0befc
+:03074b0002f213a4
+:03074c0002f36a4b
+:03074d0002f4c0f3
+:03074e0002f61799
+:03074f0002f76f3f
+:0307500002f8c8e4
+:0307510002fa2188
+:0307520002fb7b2c
+:0307530002fcd6cf
+:0307540002fe3171
+:0307550002ff8c14
+:030756000300e9b4
+:0307570003024654
+:030758000303a3f5
+:0307590003050293
+:03075a0003066033
+:03075b000307c0d1
+:03075c000309206e
+:03075d00030a800c
+:03075e00030be1a9
+:03075f00030d4344
+:03076000030ea6df
+:030761000310087a
+:0307620003116c14
+:030763000312d0ae
+:0307640003143546
+:0307650003159adf
+:0307660003170076
+:030767000318660e
+:030768000319cda5
+:03076900031b343b
+:03076a00031c9cd1
+:03076b00031e0565
+:03076c00031f6efa
+:03076d000320d88e
+:03076e0003224221
+:03076f000323adb4
+:0307700003251846
+:03077100032684d8
+:030772000327f06a
+:0307730003295dfa
+:03077400032aca8b
+:03077500032c381a
+:03077600032da6aa
+:03077700032f1538
+:03077800033085c6
+:030779000331f455
+:03077a00033365e1
+:03077b000334d66e
+:03077c00033647fa
+:03077d000337b986
+:03077e0003392b11
+:03077f00033a9e9c
+:03078000033c1126
+:03078100033d85b0
+:03078200033ef93a
+:0307830003406ec2
+:030784000341e34b
+:03078500034359d2
+:030786000344cf5a
+:03078700034645e1
+:030788000347bc68
+:03078900034934ed
+:03078a00034aab74
+:03078b00034c24f8
+:03078c00034d9c7e
+:03078d00034f1601
+:03078e0003508f86
+:03078f0003520909
+:030790000353848c
+:030791000354fe10
+:0307920003567a91
+:030793000357f514
+:0307940003597195
+:03079500035aee16
+:03079600035c6b96
+:03079700035de817
+:03079800035f6597
+:030799000360e317
+:03079a0003626295
+:03079b000363e114
+:03079c0003656092
+:03079d000366df11
+:03079e0003685f8e
+:03079f000369df0c
+:0307a000036b6088
+:0307a100036ce105
+:0307a200036e6281
+:0307a300036fe4fd
+:0307a40003716678
+:0307a5000372e9f3
+:0307a60003746b6e
+:0307a7000375eee9
+:0307a80003777262
+:0307a9000378f5dd
+:0307aa00037a7956
+:0307ab00037bfecf
+:0307ac00037d8347
+:0307ad00037f08bf
+:0307ae0003808d38
+:0307af00038212b0
+:0307b00003839828
+:0307b10003851f9e
+:0307b2000386a516
+:0307b30003882c8c
+:0307b4000389b303
+:0307b500038b3a79
+:0307b600038cc2ef
+:0307b700038e4a64
+:0307b800038fd2da
+:0307b90003915b4e
+:0307ba000392e3c4
+:0307bb0003946c38
+:0307bc000395f6ac
+:0307bd0003977f20
+:0307be0003990993
+:0307bf00039a9307
+:0307c000039c1d7a
+:0307c100039da8ed
+:0307c200039f335f
+:0307c30003a0bed2
+:0307c40003a24944
+:0307c50003a3d4b7
+:0307c60003a56028
+:0307c70003a6ec9a
+:0307c80003a8780b
+:0307c90003aa047c
+:0307ca0003ab91ed
+:0307cb0003ad1d5e
+:0307cc0003aeaacf
+:0307cd0003b0373f
+:0307ce0003b1c5af
+:0307cf0003b3521f
+:0307d00003b4e08f
+:0307d10003b66efe
+:0307d20003b7fc6e
+:0307d30003b98add
+:0307d40003bb184c
+:0307d50003bca7bb
+:0307d60003be3629
+:0307d70003bfc499
+:0307d80003c15406
+:0307d90003c2e375
+:0307da0003c472e3
+:0307db0003c60151
+:0307dc0003c791bf
+:0307dd0003c9212c
+:0307de0003cab19a
+:0307df0003cc4107
+:0307e00003cdd175
+:0307e10003cf61e2
+:0307e20003d0f150
+:0307e30003d282bc
+:0307e40003d41229
+:0307e50003d5a396
+:0307e60003d73402
+:0307e70003d8c56f
+:0307e80003da56db
+:0307e90003dbe748
+:0307ea0003dd78b4
+:0307eb0003df0920
+:0307ec0003e09b8c
+:0307ed0003e22cf8
+:0307ee0003e3be64
+:0307ef0003e54fd0
+:0307f00003e6e13c
+:0307f10003e872a8
+:0307f20003ea0413
+:0307f30003eb967f
+:0307f40003ed28ea
+:0307f50003eeba56
+:0307f60003f04bc2
+:0307f70003f1dd2e
+:0307f80003f36f99
+:0307f90003f50104
+:0307fa0003f69370
+:0307fb0003f825db
+:0307fc0003f9b846
+:0307fd0003fb4ab1
+:0307fe0003fcdc1d
+:0307ff0003fe6e88
+:00000001ff
diff --git a/libraries/base/diag/src/data/diag_sin_2048x18.mif b/libraries/base/diag/src/data/diag_sin_2048x18.mif
new file mode 100644
index 0000000000..3a9d3099e7
--- /dev/null
+++ b/libraries/base/diag/src/data/diag_sin_2048x18.mif
@@ -0,0 +1,2072 @@
+-- Copyright (C) 1991-2010 Altera Corporation
+-- Your use of Altera Corporation's design tools, logic functions 
+-- and other software and tools, and its AMPP partner logic 
+-- functions, and any output files from any of the foregoing 
+-- (including device programming or simulation files), and any 
+-- associated documentation or information are expressly subject 
+-- to the terms and conditions of the Altera Program License 
+-- Subscription Agreement, Altera MegaCore Function License 
+-- Agreement, or other applicable license agreement, including, 
+-- without limitation, that your use is for the sole purpose of 
+-- programming logic devices manufactured by Altera and sold by 
+-- Altera or its authorized distributors.  Please refer to the 
+-- applicable agreement for further details.
+
+-- Quartus II generated Memory Initialization File (.mif)
+
+WIDTH=18;
+DEPTH=2048;
+
+ADDRESS_RADIX=HEX;
+DATA_RADIX=HEX;
+
+CONTENT BEGIN
+	000  :   00000;
+	001  :   00192;
+	002  :   00324;
+	003  :   004B6;
+	004  :   00648;
+	005  :   007DB;
+	006  :   0096D;
+	007  :   00AFF;
+	008  :   00C91;
+	009  :   00E23;
+	00A  :   00FB5;
+	00B  :   01146;
+	00C  :   012D8;
+	00D  :   0146A;
+	00E  :   015FC;
+	00F  :   0178E;
+	010  :   0191F;
+	011  :   01AB1;
+	012  :   01C42;
+	013  :   01DD4;
+	014  :   01F65;
+	015  :   020F7;
+	016  :   02288;
+	017  :   02419;
+	018  :   025AA;
+	019  :   0273B;
+	01A  :   028CC;
+	01B  :   02A5D;
+	01C  :   02BEE;
+	01D  :   02D7E;
+	01E  :   02F0F;
+	01F  :   0309F;
+	020  :   0322F;
+	021  :   033BF;
+	022  :   0354F;
+	023  :   036DF;
+	024  :   0386F;
+	025  :   039FF;
+	026  :   03B8E;
+	027  :   03D1D;
+	028  :   03EAC;
+	029  :   0403C;
+	02A  :   041CA;
+	02B  :   04359;
+	02C  :   044E8;
+	02D  :   04676;
+	02E  :   04804;
+	02F  :   04992;
+	030  :   04B20;
+	031  :   04CAE;
+	032  :   04E3B;
+	033  :   04FC9;
+	034  :   05156;
+	035  :   052E3;
+	036  :   0546F;
+	037  :   055FC;
+	038  :   05788;
+	039  :   05914;
+	03A  :   05AA0;
+	03B  :   05C2C;
+	03C  :   05DB7;
+	03D  :   05F42;
+	03E  :   060CD;
+	03F  :   06258;
+	040  :   063E3;
+	041  :   0656D;
+	042  :   066F7;
+	043  :   06881;
+	044  :   06A0A;
+	045  :   06B94;
+	046  :   06D1D;
+	047  :   06EA5;
+	048  :   0702E;
+	049  :   071B6;
+	04A  :   0733E;
+	04B  :   074C6;
+	04C  :   0764D;
+	04D  :   077D4;
+	04E  :   0795B;
+	04F  :   07AE1;
+	050  :   07C68;
+	051  :   07DEE;
+	052  :   07F73;
+	053  :   080F8;
+	054  :   0827D;
+	055  :   08402;
+	056  :   08587;
+	057  :   0870B;
+	058  :   0888E;
+	059  :   08A12;
+	05A  :   08B95;
+	05B  :   08D17;
+	05C  :   08E9A;
+	05D  :   0901C;
+	05E  :   0919E;
+	05F  :   0931F;
+	060  :   094A0;
+	061  :   09621;
+	062  :   097A1;
+	063  :   09921;
+	064  :   09AA0;
+	065  :   09C1F;
+	066  :   09D9E;
+	067  :   09F1D;
+	068  :   0A09B;
+	069  :   0A218;
+	06A  :   0A395;
+	06B  :   0A512;
+	06C  :   0A68F;
+	06D  :   0A80B;
+	06E  :   0A986;
+	06F  :   0AB02;
+	070  :   0AC7C;
+	071  :   0ADF7;
+	072  :   0AF71;
+	073  :   0B0EA;
+	074  :   0B264;
+	075  :   0B3DC;
+	076  :   0B555;
+	077  :   0B6CC;
+	078  :   0B844;
+	079  :   0B9BB;
+	07A  :   0BB31;
+	07B  :   0BCA7;
+	07C  :   0BE1D;
+	07D  :   0BF92;
+	07E  :   0C107;
+	07F  :   0C27B;
+	080  :   0C3EF;
+	081  :   0C562;
+	082  :   0C6D5;
+	083  :   0C847;
+	084  :   0C9B9;
+	085  :   0CB2A;
+	086  :   0CC9B;
+	087  :   0CE0C;
+	088  :   0CF7B;
+	089  :   0D0EB;
+	08A  :   0D25A;
+	08B  :   0D3C8;
+	08C  :   0D536;
+	08D  :   0D6A3;
+	08E  :   0D810;
+	08F  :   0D97C;
+	090  :   0DAE8;
+	091  :   0DC53;
+	092  :   0DDBE;
+	093  :   0DF28;
+	094  :   0E092;
+	095  :   0E1FB;
+	096  :   0E364;
+	097  :   0E4CC;
+	098  :   0E633;
+	099  :   0E79A;
+	09A  :   0E900;
+	09B  :   0EA66;
+	09C  :   0EBCB;
+	09D  :   0ED30;
+	09E  :   0EE94;
+	09F  :   0EFF8;
+	0A0  :   0F15A;
+	0A1  :   0F2BD;
+	0A2  :   0F41F;
+	0A3  :   0F580;
+	0A4  :   0F6E0;
+	0A5  :   0F840;
+	0A6  :   0F9A0;
+	0A7  :   0FAFE;
+	0A8  :   0FC5D;
+	0A9  :   0FDBA;
+	0AA  :   0FF17;
+	0AB  :   10074;
+	0AC  :   101CF;
+	0AD  :   1032A;
+	0AE  :   10485;
+	0AF  :   105DF;
+	0B0  :   10738;
+	0B1  :   10891;
+	0B2  :   109E9;
+	0B3  :   10B40;
+	0B4  :   10C96;
+	0B5  :   10DED;
+	0B6  :   10F42;
+	0B7  :   11097;
+	0B8  :   111EB;
+	0B9  :   1133E;
+	0BA  :   11491;
+	0BB  :   115E3;
+	0BC  :   11734;
+	0BD  :   11885;
+	0BE  :   119D5;
+	0BF  :   11B24;
+	0C0  :   11C73;
+	0C1  :   11DC1;
+	0C2  :   11F0E;
+	0C3  :   1205B;
+	0C4  :   121A7;
+	0C5  :   122F2;
+	0C6  :   1243D;
+	0C7  :   12587;
+	0C8  :   126D0;
+	0C9  :   12818;
+	0CA  :   12960;
+	0CB  :   12AA7;
+	0CC  :   12BED;
+	0CD  :   12D33;
+	0CE  :   12E77;
+	0CF  :   12FBC;
+	0D0  :   130FF;
+	0D1  :   13242;
+	0D2  :   13383;
+	0D3  :   134C5;
+	0D4  :   13605;
+	0D5  :   13745;
+	0D6  :   13883;
+	0D7  :   139C2;
+	0D8  :   13AFF;
+	0D9  :   13C3C;
+	0DA  :   13D78;
+	0DB  :   13EB3;
+	0DC  :   13FED;
+	0DD  :   14127;
+	0DE  :   1425F;
+	0DF  :   14397;
+	0E0  :   144CF;
+	0E1  :   14605;
+	0E2  :   1473B;
+	0E3  :   14870;
+	0E4  :   149A4;
+	0E5  :   14AD7;
+	0E6  :   14C09;
+	0E7  :   14D3B;
+	0E8  :   14E6C;
+	0E9  :   14F9C;
+	0EA  :   150CB;
+	0EB  :   151FA;
+	0EC  :   15327;
+	0ED  :   15454;
+	0EE  :   15580;
+	0EF  :   156AC;
+	0F0  :   157D6;
+	0F1  :   158FF;
+	0F2  :   15A28;
+	0F3  :   15B50;
+	0F4  :   15C77;
+	0F5  :   15D9D;
+	0F6  :   15EC3;
+	0F7  :   15FE7;
+	0F8  :   1610B;
+	0F9  :   1622E;
+	0FA  :   16350;
+	0FB  :   16471;
+	0FC  :   16591;
+	0FD  :   166B0;
+	0FE  :   167CF;
+	0FF  :   168EC;
+	100  :   16A09;
+	101  :   16B25;
+	102  :   16C40;
+	103  :   16D5A;
+	104  :   16E74;
+	105  :   16F8C;
+	106  :   170A3;
+	107  :   171BA;
+	108  :   172D0;
+	109  :   173E5;
+	10A  :   174F9;
+	10B  :   1760C;
+	10C  :   1771E;
+	10D  :   1782F;
+	10E  :   1793F;
+	10F  :   17A4F;
+	110  :   17B5D;
+	111  :   17C6B;
+	112  :   17D77;
+	113  :   17E83;
+	114  :   17F8E;
+	115  :   18098;
+	116  :   181A1;
+	117  :   182A9;
+	118  :   183B0;
+	119  :   184B6;
+	11A  :   185BC;
+	11B  :   186C0;
+	11C  :   187C3;
+	11D  :   188C6;
+	11E  :   189C7;
+	11F  :   18AC8;
+	120  :   18BC7;
+	121  :   18CC6;
+	122  :   18DC4;
+	123  :   18EC0;
+	124  :   18FBC;
+	125  :   190B7;
+	126  :   191B1;
+	127  :   192A9;
+	128  :   193A1;
+	129  :   19498;
+	12A  :   1958E;
+	12B  :   19683;
+	12C  :   19777;
+	12D  :   1986A;
+	12E  :   1995C;
+	12F  :   19A4D;
+	130  :   19B3D;
+	131  :   19C2C;
+	132  :   19D1A;
+	133  :   19E07;
+	134  :   19EF3;
+	135  :   19FDE;
+	136  :   1A0C9;
+	137  :   1A1B2;
+	138  :   1A29A;
+	139  :   1A381;
+	13A  :   1A467;
+	13B  :   1A54C;
+	13C  :   1A630;
+	13D  :   1A713;
+	13E  :   1A7F5;
+	13F  :   1A8D6;
+	140  :   1A9B6;
+	141  :   1AA94;
+	142  :   1AB72;
+	143  :   1AC4F;
+	144  :   1AD2B;
+	145  :   1AE06;
+	146  :   1AEDF;
+	147  :   1AFB8;
+	148  :   1B090;
+	149  :   1B166;
+	14A  :   1B23C;
+	14B  :   1B311;
+	14C  :   1B3E4;
+	14D  :   1B4B6;
+	14E  :   1B588;
+	14F  :   1B658;
+	150  :   1B727;
+	151  :   1B7F6;
+	152  :   1B8C3;
+	153  :   1B98F;
+	154  :   1BA5A;
+	155  :   1BB24;
+	156  :   1BBED;
+	157  :   1BCB4;
+	158  :   1BD7B;
+	159  :   1BE41;
+	15A  :   1BF05;
+	15B  :   1BFC9;
+	15C  :   1C08B;
+	15D  :   1C14D;
+	15E  :   1C20D;
+	15F  :   1C2CC;
+	160  :   1C38A;
+	161  :   1C447;
+	162  :   1C503;
+	163  :   1C5BE;
+	164  :   1C678;
+	165  :   1C730;
+	166  :   1C7E8;
+	167  :   1C89E;
+	168  :   1C954;
+	169  :   1CA08;
+	16A  :   1CABB;
+	16B  :   1CB6D;
+	16C  :   1CC1E;
+	16D  :   1CCCE;
+	16E  :   1CD7D;
+	16F  :   1CE2A;
+	170  :   1CED7;
+	171  :   1CF82;
+	172  :   1D02C;
+	173  :   1D0D6;
+	174  :   1D17E;
+	175  :   1D224;
+	176  :   1D2CA;
+	177  :   1D36F;
+	178  :   1D412;
+	179  :   1D4B5;
+	17A  :   1D556;
+	17B  :   1D5F6;
+	17C  :   1D695;
+	17D  :   1D733;
+	17E  :   1D7D0;
+	17F  :   1D86B;
+	180  :   1D906;
+	181  :   1D99F;
+	182  :   1DA37;
+	183  :   1DACE;
+	184  :   1DB64;
+	185  :   1DBF9;
+	186  :   1DC8D;
+	187  :   1DD1F;
+	188  :   1DDB0;
+	189  :   1DE40;
+	18A  :   1DECF;
+	18B  :   1DF5D;
+	18C  :   1DFEA;
+	18D  :   1E075;
+	18E  :   1E100;
+	18F  :   1E189;
+	190  :   1E211;
+	191  :   1E298;
+	192  :   1E31E;
+	193  :   1E3A2;
+	194  :   1E426;
+	195  :   1E4A8;
+	196  :   1E529;
+	197  :   1E5A9;
+	198  :   1E628;
+	199  :   1E6A5;
+	19A  :   1E722;
+	19B  :   1E79D;
+	19C  :   1E817;
+	19D  :   1E890;
+	19E  :   1E907;
+	19F  :   1E97E;
+	1A0  :   1E9F3;
+	1A1  :   1EA67;
+	1A2  :   1EADA;
+	1A3  :   1EB4C;
+	1A4  :   1EBBD;
+	1A5  :   1EC2C;
+	1A6  :   1EC9A;
+	1A7  :   1ED07;
+	1A8  :   1ED73;
+	1A9  :   1EDDE;
+	1AA  :   1EE47;
+	1AB  :   1EEAF;
+	1AC  :   1EF17;
+	1AD  :   1EF7C;
+	1AE  :   1EFE1;
+	1AF  :   1F045;
+	1B0  :   1F0A7;
+	1B1  :   1F108;
+	1B2  :   1F168;
+	1B3  :   1F1C7;
+	1B4  :   1F224;
+	1B5  :   1F281;
+	1B6  :   1F2DC;
+	1B7  :   1F336;
+	1B8  :   1F38E;
+	1B9  :   1F3E6;
+	1BA  :   1F43C;
+	1BB  :   1F491;
+	1BC  :   1F4E5;
+	1BD  :   1F538;
+	1BE  :   1F589;
+	1BF  :   1F5D9;
+	1C0  :   1F629;
+	1C1  :   1F676;
+	1C2  :   1F6C3;
+	1C3  :   1F70E;
+	1C4  :   1F759;
+	1C5  :   1F7A2;
+	1C6  :   1F7E9;
+	1C7  :   1F830;
+	1C8  :   1F875;
+	1C9  :   1F8B9;
+	1CA  :   1F8FC;
+	1CB  :   1F93E;
+	1CC  :   1F97F;
+	1CD  :   1F9BE;
+	1CE  :   1F9FC;
+	1CF  :   1FA39;
+	1D0  :   1FA74;
+	1D1  :   1FAAF;
+	1D2  :   1FAE8;
+	1D3  :   1FB20;
+	1D4  :   1FB57;
+	1D5  :   1FB8C;
+	1D6  :   1FBC0;
+	1D7  :   1FBF3;
+	1D8  :   1FC25;
+	1D9  :   1FC56;
+	1DA  :   1FC85;
+	1DB  :   1FCB3;
+	1DC  :   1FCE0;
+	1DD  :   1FD0C;
+	1DE  :   1FD37;
+	1DF  :   1FD60;
+	1E0  :   1FD88;
+	1E1  :   1FDAF;
+	1E2  :   1FDD4;
+	1E3  :   1FDF9;
+	1E4  :   1FE1C;
+	1E5  :   1FE3E;
+	1E6  :   1FE5E;
+	1E7  :   1FE7E;
+	1E8  :   1FE9C;
+	1E9  :   1FEB9;
+	1EA  :   1FED5;
+	1EB  :   1FEEF;
+	1EC  :   1FF08;
+	1ED  :   1FF20;
+	1EE  :   1FF37;
+	1EF  :   1FF4D;
+	1F0  :   1FF61;
+	1F1  :   1FF74;
+	1F2  :   1FF86;
+	1F3  :   1FF97;
+	1F4  :   1FFA6;
+	1F5  :   1FFB4;
+	1F6  :   1FFC1;
+	1F7  :   1FFCD;
+	1F8  :   1FFD8;
+	1F9  :   1FFE1;
+	1FA  :   1FFE9;
+	1FB  :   1FFF0;
+	1FC  :   1FFF5;
+	1FD  :   1FFF9;
+	1FE  :   1FFFD;
+	1FF  :   1FFFE;
+	200  :   1FFFF;
+	201  :   1FFFE;
+	202  :   1FFFD;
+	203  :   1FFF9;
+	204  :   1FFF5;
+	205  :   1FFF0;
+	206  :   1FFE9;
+	207  :   1FFE1;
+	208  :   1FFD8;
+	209  :   1FFCD;
+	20A  :   1FFC1;
+	20B  :   1FFB4;
+	20C  :   1FFA6;
+	20D  :   1FF97;
+	20E  :   1FF86;
+	20F  :   1FF74;
+	210  :   1FF61;
+	211  :   1FF4D;
+	212  :   1FF37;
+	213  :   1FF20;
+	214  :   1FF08;
+	215  :   1FEEF;
+	216  :   1FED5;
+	217  :   1FEB9;
+	218  :   1FE9C;
+	219  :   1FE7E;
+	21A  :   1FE5E;
+	21B  :   1FE3E;
+	21C  :   1FE1C;
+	21D  :   1FDF9;
+	21E  :   1FDD4;
+	21F  :   1FDAF;
+	220  :   1FD88;
+	221  :   1FD60;
+	222  :   1FD37;
+	223  :   1FD0C;
+	224  :   1FCE0;
+	225  :   1FCB3;
+	226  :   1FC85;
+	227  :   1FC56;
+	228  :   1FC25;
+	229  :   1FBF3;
+	22A  :   1FBC0;
+	22B  :   1FB8C;
+	22C  :   1FB57;
+	22D  :   1FB20;
+	22E  :   1FAE8;
+	22F  :   1FAAF;
+	230  :   1FA74;
+	231  :   1FA39;
+	232  :   1F9FC;
+	233  :   1F9BE;
+	234  :   1F97F;
+	235  :   1F93E;
+	236  :   1F8FC;
+	237  :   1F8B9;
+	238  :   1F875;
+	239  :   1F830;
+	23A  :   1F7E9;
+	23B  :   1F7A2;
+	23C  :   1F759;
+	23D  :   1F70E;
+	23E  :   1F6C3;
+	23F  :   1F676;
+	240  :   1F629;
+	241  :   1F5D9;
+	242  :   1F589;
+	243  :   1F538;
+	244  :   1F4E5;
+	245  :   1F491;
+	246  :   1F43C;
+	247  :   1F3E6;
+	248  :   1F38E;
+	249  :   1F336;
+	24A  :   1F2DC;
+	24B  :   1F281;
+	24C  :   1F224;
+	24D  :   1F1C7;
+	24E  :   1F168;
+	24F  :   1F108;
+	250  :   1F0A7;
+	251  :   1F045;
+	252  :   1EFE1;
+	253  :   1EF7C;
+	254  :   1EF17;
+	255  :   1EEAF;
+	256  :   1EE47;
+	257  :   1EDDE;
+	258  :   1ED73;
+	259  :   1ED07;
+	25A  :   1EC9A;
+	25B  :   1EC2C;
+	25C  :   1EBBD;
+	25D  :   1EB4C;
+	25E  :   1EADA;
+	25F  :   1EA67;
+	260  :   1E9F3;
+	261  :   1E97E;
+	262  :   1E907;
+	263  :   1E890;
+	264  :   1E817;
+	265  :   1E79D;
+	266  :   1E722;
+	267  :   1E6A5;
+	268  :   1E628;
+	269  :   1E5A9;
+	26A  :   1E529;
+	26B  :   1E4A8;
+	26C  :   1E426;
+	26D  :   1E3A2;
+	26E  :   1E31E;
+	26F  :   1E298;
+	270  :   1E211;
+	271  :   1E189;
+	272  :   1E100;
+	273  :   1E075;
+	274  :   1DFEA;
+	275  :   1DF5D;
+	276  :   1DECF;
+	277  :   1DE40;
+	278  :   1DDB0;
+	279  :   1DD1F;
+	27A  :   1DC8D;
+	27B  :   1DBF9;
+	27C  :   1DB64;
+	27D  :   1DACE;
+	27E  :   1DA37;
+	27F  :   1D99F;
+	280  :   1D906;
+	281  :   1D86B;
+	282  :   1D7D0;
+	283  :   1D733;
+	284  :   1D695;
+	285  :   1D5F6;
+	286  :   1D556;
+	287  :   1D4B5;
+	288  :   1D412;
+	289  :   1D36F;
+	28A  :   1D2CA;
+	28B  :   1D224;
+	28C  :   1D17E;
+	28D  :   1D0D6;
+	28E  :   1D02C;
+	28F  :   1CF82;
+	290  :   1CED7;
+	291  :   1CE2A;
+	292  :   1CD7D;
+	293  :   1CCCE;
+	294  :   1CC1E;
+	295  :   1CB6D;
+	296  :   1CABB;
+	297  :   1CA08;
+	298  :   1C954;
+	299  :   1C89E;
+	29A  :   1C7E8;
+	29B  :   1C730;
+	29C  :   1C678;
+	29D  :   1C5BE;
+	29E  :   1C503;
+	29F  :   1C447;
+	2A0  :   1C38A;
+	2A1  :   1C2CC;
+	2A2  :   1C20D;
+	2A3  :   1C14D;
+	2A4  :   1C08B;
+	2A5  :   1BFC9;
+	2A6  :   1BF05;
+	2A7  :   1BE41;
+	2A8  :   1BD7B;
+	2A9  :   1BCB4;
+	2AA  :   1BBED;
+	2AB  :   1BB24;
+	2AC  :   1BA5A;
+	2AD  :   1B98F;
+	2AE  :   1B8C3;
+	2AF  :   1B7F6;
+	2B0  :   1B727;
+	2B1  :   1B658;
+	2B2  :   1B588;
+	2B3  :   1B4B6;
+	2B4  :   1B3E4;
+	2B5  :   1B311;
+	2B6  :   1B23C;
+	2B7  :   1B166;
+	2B8  :   1B090;
+	2B9  :   1AFB8;
+	2BA  :   1AEDF;
+	2BB  :   1AE06;
+	2BC  :   1AD2B;
+	2BD  :   1AC4F;
+	2BE  :   1AB72;
+	2BF  :   1AA94;
+	2C0  :   1A9B6;
+	2C1  :   1A8D6;
+	2C2  :   1A7F5;
+	2C3  :   1A713;
+	2C4  :   1A630;
+	2C5  :   1A54C;
+	2C6  :   1A467;
+	2C7  :   1A381;
+	2C8  :   1A29A;
+	2C9  :   1A1B2;
+	2CA  :   1A0C9;
+	2CB  :   19FDE;
+	2CC  :   19EF3;
+	2CD  :   19E07;
+	2CE  :   19D1A;
+	2CF  :   19C2C;
+	2D0  :   19B3D;
+	2D1  :   19A4D;
+	2D2  :   1995C;
+	2D3  :   1986A;
+	2D4  :   19777;
+	2D5  :   19683;
+	2D6  :   1958E;
+	2D7  :   19498;
+	2D8  :   193A1;
+	2D9  :   192A9;
+	2DA  :   191B1;
+	2DB  :   190B7;
+	2DC  :   18FBC;
+	2DD  :   18EC0;
+	2DE  :   18DC4;
+	2DF  :   18CC6;
+	2E0  :   18BC7;
+	2E1  :   18AC8;
+	2E2  :   189C7;
+	2E3  :   188C6;
+	2E4  :   187C3;
+	2E5  :   186C0;
+	2E6  :   185BC;
+	2E7  :   184B6;
+	2E8  :   183B0;
+	2E9  :   182A9;
+	2EA  :   181A1;
+	2EB  :   18098;
+	2EC  :   17F8E;
+	2ED  :   17E83;
+	2EE  :   17D77;
+	2EF  :   17C6B;
+	2F0  :   17B5D;
+	2F1  :   17A4F;
+	2F2  :   1793F;
+	2F3  :   1782F;
+	2F4  :   1771E;
+	2F5  :   1760C;
+	2F6  :   174F9;
+	2F7  :   173E5;
+	2F8  :   172D0;
+	2F9  :   171BA;
+	2FA  :   170A3;
+	2FB  :   16F8C;
+	2FC  :   16E74;
+	2FD  :   16D5A;
+	2FE  :   16C40;
+	2FF  :   16B25;
+	300  :   16A09;
+	301  :   168EC;
+	302  :   167CF;
+	303  :   166B0;
+	304  :   16591;
+	305  :   16471;
+	306  :   16350;
+	307  :   1622E;
+	308  :   1610B;
+	309  :   15FE7;
+	30A  :   15EC3;
+	30B  :   15D9D;
+	30C  :   15C77;
+	30D  :   15B50;
+	30E  :   15A28;
+	30F  :   158FF;
+	310  :   157D6;
+	311  :   156AC;
+	312  :   15580;
+	313  :   15454;
+	314  :   15327;
+	315  :   151FA;
+	316  :   150CB;
+	317  :   14F9C;
+	318  :   14E6C;
+	319  :   14D3B;
+	31A  :   14C09;
+	31B  :   14AD7;
+	31C  :   149A4;
+	31D  :   14870;
+	31E  :   1473B;
+	31F  :   14605;
+	320  :   144CF;
+	321  :   14397;
+	322  :   1425F;
+	323  :   14127;
+	324  :   13FED;
+	325  :   13EB3;
+	326  :   13D78;
+	327  :   13C3C;
+	328  :   13AFF;
+	329  :   139C2;
+	32A  :   13883;
+	32B  :   13745;
+	32C  :   13605;
+	32D  :   134C5;
+	32E  :   13383;
+	32F  :   13242;
+	330  :   130FF;
+	331  :   12FBC;
+	332  :   12E77;
+	333  :   12D33;
+	334  :   12BED;
+	335  :   12AA7;
+	336  :   12960;
+	337  :   12818;
+	338  :   126D0;
+	339  :   12587;
+	33A  :   1243D;
+	33B  :   122F2;
+	33C  :   121A7;
+	33D  :   1205B;
+	33E  :   11F0E;
+	33F  :   11DC1;
+	340  :   11C73;
+	341  :   11B24;
+	342  :   119D5;
+	343  :   11885;
+	344  :   11734;
+	345  :   115E3;
+	346  :   11491;
+	347  :   1133E;
+	348  :   111EB;
+	349  :   11097;
+	34A  :   10F42;
+	34B  :   10DED;
+	34C  :   10C96;
+	34D  :   10B40;
+	34E  :   109E9;
+	34F  :   10891;
+	350  :   10738;
+	351  :   105DF;
+	352  :   10485;
+	353  :   1032A;
+	354  :   101CF;
+	355  :   10074;
+	356  :   0FF17;
+	357  :   0FDBA;
+	358  :   0FC5D;
+	359  :   0FAFE;
+	35A  :   0F9A0;
+	35B  :   0F840;
+	35C  :   0F6E0;
+	35D  :   0F580;
+	35E  :   0F41F;
+	35F  :   0F2BD;
+	360  :   0F15A;
+	361  :   0EFF8;
+	362  :   0EE94;
+	363  :   0ED30;
+	364  :   0EBCB;
+	365  :   0EA66;
+	366  :   0E900;
+	367  :   0E79A;
+	368  :   0E633;
+	369  :   0E4CC;
+	36A  :   0E364;
+	36B  :   0E1FB;
+	36C  :   0E092;
+	36D  :   0DF28;
+	36E  :   0DDBE;
+	36F  :   0DC53;
+	370  :   0DAE8;
+	371  :   0D97C;
+	372  :   0D810;
+	373  :   0D6A3;
+	374  :   0D536;
+	375  :   0D3C8;
+	376  :   0D25A;
+	377  :   0D0EB;
+	378  :   0CF7B;
+	379  :   0CE0C;
+	37A  :   0CC9B;
+	37B  :   0CB2A;
+	37C  :   0C9B9;
+	37D  :   0C847;
+	37E  :   0C6D5;
+	37F  :   0C562;
+	380  :   0C3EF;
+	381  :   0C27B;
+	382  :   0C107;
+	383  :   0BF92;
+	384  :   0BE1D;
+	385  :   0BCA7;
+	386  :   0BB31;
+	387  :   0B9BB;
+	388  :   0B844;
+	389  :   0B6CC;
+	38A  :   0B555;
+	38B  :   0B3DC;
+	38C  :   0B264;
+	38D  :   0B0EA;
+	38E  :   0AF71;
+	38F  :   0ADF7;
+	390  :   0AC7C;
+	391  :   0AB02;
+	392  :   0A986;
+	393  :   0A80B;
+	394  :   0A68F;
+	395  :   0A512;
+	396  :   0A395;
+	397  :   0A218;
+	398  :   0A09B;
+	399  :   09F1D;
+	39A  :   09D9E;
+	39B  :   09C1F;
+	39C  :   09AA0;
+	39D  :   09921;
+	39E  :   097A1;
+	39F  :   09621;
+	3A0  :   094A0;
+	3A1  :   0931F;
+	3A2  :   0919E;
+	3A3  :   0901C;
+	3A4  :   08E9A;
+	3A5  :   08D17;
+	3A6  :   08B95;
+	3A7  :   08A12;
+	3A8  :   0888E;
+	3A9  :   0870B;
+	3AA  :   08587;
+	3AB  :   08402;
+	3AC  :   0827D;
+	3AD  :   080F8;
+	3AE  :   07F73;
+	3AF  :   07DEE;
+	3B0  :   07C68;
+	3B1  :   07AE1;
+	3B2  :   0795B;
+	3B3  :   077D4;
+	3B4  :   0764D;
+	3B5  :   074C6;
+	3B6  :   0733E;
+	3B7  :   071B6;
+	3B8  :   0702E;
+	3B9  :   06EA5;
+	3BA  :   06D1D;
+	3BB  :   06B94;
+	3BC  :   06A0A;
+	3BD  :   06881;
+	3BE  :   066F7;
+	3BF  :   0656D;
+	3C0  :   063E3;
+	3C1  :   06258;
+	3C2  :   060CD;
+	3C3  :   05F42;
+	3C4  :   05DB7;
+	3C5  :   05C2C;
+	3C6  :   05AA0;
+	3C7  :   05914;
+	3C8  :   05788;
+	3C9  :   055FC;
+	3CA  :   0546F;
+	3CB  :   052E3;
+	3CC  :   05156;
+	3CD  :   04FC9;
+	3CE  :   04E3B;
+	3CF  :   04CAE;
+	3D0  :   04B20;
+	3D1  :   04992;
+	3D2  :   04804;
+	3D3  :   04676;
+	3D4  :   044E8;
+	3D5  :   04359;
+	3D6  :   041CA;
+	3D7  :   0403C;
+	3D8  :   03EAC;
+	3D9  :   03D1D;
+	3DA  :   03B8E;
+	3DB  :   039FF;
+	3DC  :   0386F;
+	3DD  :   036DF;
+	3DE  :   0354F;
+	3DF  :   033BF;
+	3E0  :   0322F;
+	3E1  :   0309F;
+	3E2  :   02F0F;
+	3E3  :   02D7E;
+	3E4  :   02BEE;
+	3E5  :   02A5D;
+	3E6  :   028CC;
+	3E7  :   0273B;
+	3E8  :   025AA;
+	3E9  :   02419;
+	3EA  :   02288;
+	3EB  :   020F7;
+	3EC  :   01F65;
+	3ED  :   01DD4;
+	3EE  :   01C42;
+	3EF  :   01AB1;
+	3F0  :   0191F;
+	3F1  :   0178E;
+	3F2  :   015FC;
+	3F3  :   0146A;
+	3F4  :   012D8;
+	3F5  :   01146;
+	3F6  :   00FB5;
+	3F7  :   00E23;
+	3F8  :   00C91;
+	3F9  :   00AFF;
+	3FA  :   0096D;
+	3FB  :   007DB;
+	3FC  :   00648;
+	3FD  :   004B6;
+	3FE  :   00324;
+	3FF  :   00192;
+	400  :   00000;
+	401  :   3FE6E;
+	402  :   3FCDC;
+	403  :   3FB4A;
+	404  :   3F9B8;
+	405  :   3F825;
+	406  :   3F693;
+	407  :   3F501;
+	408  :   3F36F;
+	409  :   3F1DD;
+	40A  :   3F04B;
+	40B  :   3EEBA;
+	40C  :   3ED28;
+	40D  :   3EB96;
+	40E  :   3EA04;
+	40F  :   3E872;
+	410  :   3E6E1;
+	411  :   3E54F;
+	412  :   3E3BE;
+	413  :   3E22C;
+	414  :   3E09B;
+	415  :   3DF09;
+	416  :   3DD78;
+	417  :   3DBE7;
+	418  :   3DA56;
+	419  :   3D8C5;
+	41A  :   3D734;
+	41B  :   3D5A3;
+	41C  :   3D412;
+	41D  :   3D282;
+	41E  :   3D0F1;
+	41F  :   3CF61;
+	420  :   3CDD1;
+	421  :   3CC41;
+	422  :   3CAB1;
+	423  :   3C921;
+	424  :   3C791;
+	425  :   3C601;
+	426  :   3C472;
+	427  :   3C2E3;
+	428  :   3C154;
+	429  :   3BFC4;
+	42A  :   3BE36;
+	42B  :   3BCA7;
+	42C  :   3BB18;
+	42D  :   3B98A;
+	42E  :   3B7FC;
+	42F  :   3B66E;
+	430  :   3B4E0;
+	431  :   3B352;
+	432  :   3B1C5;
+	433  :   3B037;
+	434  :   3AEAA;
+	435  :   3AD1D;
+	436  :   3AB91;
+	437  :   3AA04;
+	438  :   3A878;
+	439  :   3A6EC;
+	43A  :   3A560;
+	43B  :   3A3D4;
+	43C  :   3A249;
+	43D  :   3A0BE;
+	43E  :   39F33;
+	43F  :   39DA8;
+	440  :   39C1D;
+	441  :   39A93;
+	442  :   39909;
+	443  :   3977F;
+	444  :   395F6;
+	445  :   3946C;
+	446  :   392E3;
+	447  :   3915B;
+	448  :   38FD2;
+	449  :   38E4A;
+	44A  :   38CC2;
+	44B  :   38B3A;
+	44C  :   389B3;
+	44D  :   3882C;
+	44E  :   386A5;
+	44F  :   3851F;
+	450  :   38398;
+	451  :   38212;
+	452  :   3808D;
+	453  :   37F08;
+	454  :   37D83;
+	455  :   37BFE;
+	456  :   37A79;
+	457  :   378F5;
+	458  :   37772;
+	459  :   375EE;
+	45A  :   3746B;
+	45B  :   372E9;
+	45C  :   37166;
+	45D  :   36FE4;
+	45E  :   36E62;
+	45F  :   36CE1;
+	460  :   36B60;
+	461  :   369DF;
+	462  :   3685F;
+	463  :   366DF;
+	464  :   36560;
+	465  :   363E1;
+	466  :   36262;
+	467  :   360E3;
+	468  :   35F65;
+	469  :   35DE8;
+	46A  :   35C6B;
+	46B  :   35AEE;
+	46C  :   35971;
+	46D  :   357F5;
+	46E  :   3567A;
+	46F  :   354FE;
+	470  :   35384;
+	471  :   35209;
+	472  :   3508F;
+	473  :   34F16;
+	474  :   34D9C;
+	475  :   34C24;
+	476  :   34AAB;
+	477  :   34934;
+	478  :   347BC;
+	479  :   34645;
+	47A  :   344CF;
+	47B  :   34359;
+	47C  :   341E3;
+	47D  :   3406E;
+	47E  :   33EF9;
+	47F  :   33D85;
+	480  :   33C11;
+	481  :   33A9E;
+	482  :   3392B;
+	483  :   337B9;
+	484  :   33647;
+	485  :   334D6;
+	486  :   33365;
+	487  :   331F4;
+	488  :   33085;
+	489  :   32F15;
+	48A  :   32DA6;
+	48B  :   32C38;
+	48C  :   32ACA;
+	48D  :   3295D;
+	48E  :   327F0;
+	48F  :   32684;
+	490  :   32518;
+	491  :   323AD;
+	492  :   32242;
+	493  :   320D8;
+	494  :   31F6E;
+	495  :   31E05;
+	496  :   31C9C;
+	497  :   31B34;
+	498  :   319CD;
+	499  :   31866;
+	49A  :   31700;
+	49B  :   3159A;
+	49C  :   31435;
+	49D  :   312D0;
+	49E  :   3116C;
+	49F  :   31008;
+	4A0  :   30EA6;
+	4A1  :   30D43;
+	4A2  :   30BE1;
+	4A3  :   30A80;
+	4A4  :   30920;
+	4A5  :   307C0;
+	4A6  :   30660;
+	4A7  :   30502;
+	4A8  :   303A3;
+	4A9  :   30246;
+	4AA  :   300E9;
+	4AB  :   2FF8C;
+	4AC  :   2FE31;
+	4AD  :   2FCD6;
+	4AE  :   2FB7B;
+	4AF  :   2FA21;
+	4B0  :   2F8C8;
+	4B1  :   2F76F;
+	4B2  :   2F617;
+	4B3  :   2F4C0;
+	4B4  :   2F36A;
+	4B5  :   2F213;
+	4B6  :   2F0BE;
+	4B7  :   2EF69;
+	4B8  :   2EE15;
+	4B9  :   2ECC2;
+	4BA  :   2EB6F;
+	4BB  :   2EA1D;
+	4BC  :   2E8CC;
+	4BD  :   2E77B;
+	4BE  :   2E62B;
+	4BF  :   2E4DC;
+	4C0  :   2E38D;
+	4C1  :   2E23F;
+	4C2  :   2E0F2;
+	4C3  :   2DFA5;
+	4C4  :   2DE59;
+	4C5  :   2DD0E;
+	4C6  :   2DBC3;
+	4C7  :   2DA79;
+	4C8  :   2D930;
+	4C9  :   2D7E8;
+	4CA  :   2D6A0;
+	4CB  :   2D559;
+	4CC  :   2D413;
+	4CD  :   2D2CD;
+	4CE  :   2D189;
+	4CF  :   2D044;
+	4D0  :   2CF01;
+	4D1  :   2CDBE;
+	4D2  :   2CC7D;
+	4D3  :   2CB3B;
+	4D4  :   2C9FB;
+	4D5  :   2C8BB;
+	4D6  :   2C77D;
+	4D7  :   2C63E;
+	4D8  :   2C501;
+	4D9  :   2C3C4;
+	4DA  :   2C288;
+	4DB  :   2C14D;
+	4DC  :   2C013;
+	4DD  :   2BED9;
+	4DE  :   2BDA1;
+	4DF  :   2BC69;
+	4E0  :   2BB31;
+	4E1  :   2B9FB;
+	4E2  :   2B8C5;
+	4E3  :   2B790;
+	4E4  :   2B65C;
+	4E5  :   2B529;
+	4E6  :   2B3F7;
+	4E7  :   2B2C5;
+	4E8  :   2B194;
+	4E9  :   2B064;
+	4EA  :   2AF35;
+	4EB  :   2AE06;
+	4EC  :   2ACD9;
+	4ED  :   2ABAC;
+	4EE  :   2AA80;
+	4EF  :   2A954;
+	4F0  :   2A82A;
+	4F1  :   2A701;
+	4F2  :   2A5D8;
+	4F3  :   2A4B0;
+	4F4  :   2A389;
+	4F5  :   2A263;
+	4F6  :   2A13D;
+	4F7  :   2A019;
+	4F8  :   29EF5;
+	4F9  :   29DD2;
+	4FA  :   29CB0;
+	4FB  :   29B8F;
+	4FC  :   29A6F;
+	4FD  :   29950;
+	4FE  :   29831;
+	4FF  :   29714;
+	500  :   295F7;
+	501  :   294DB;
+	502  :   293C0;
+	503  :   292A6;
+	504  :   2918C;
+	505  :   29074;
+	506  :   28F5D;
+	507  :   28E46;
+	508  :   28D30;
+	509  :   28C1B;
+	50A  :   28B07;
+	50B  :   289F4;
+	50C  :   288E2;
+	50D  :   287D1;
+	50E  :   286C1;
+	50F  :   285B1;
+	510  :   284A3;
+	511  :   28395;
+	512  :   28289;
+	513  :   2817D;
+	514  :   28072;
+	515  :   27F68;
+	516  :   27E5F;
+	517  :   27D57;
+	518  :   27C50;
+	519  :   27B4A;
+	51A  :   27A44;
+	51B  :   27940;
+	51C  :   2783D;
+	51D  :   2773A;
+	51E  :   27639;
+	51F  :   27538;
+	520  :   27439;
+	521  :   2733A;
+	522  :   2723C;
+	523  :   27140;
+	524  :   27044;
+	525  :   26F49;
+	526  :   26E4F;
+	527  :   26D57;
+	528  :   26C5F;
+	529  :   26B68;
+	52A  :   26A72;
+	52B  :   2697D;
+	52C  :   26889;
+	52D  :   26796;
+	52E  :   266A4;
+	52F  :   265B3;
+	530  :   264C3;
+	531  :   263D4;
+	532  :   262E6;
+	533  :   261F9;
+	534  :   2610D;
+	535  :   26022;
+	536  :   25F37;
+	537  :   25E4E;
+	538  :   25D66;
+	539  :   25C7F;
+	53A  :   25B99;
+	53B  :   25AB4;
+	53C  :   259D0;
+	53D  :   258ED;
+	53E  :   2580B;
+	53F  :   2572A;
+	540  :   2564A;
+	541  :   2556C;
+	542  :   2548E;
+	543  :   253B1;
+	544  :   252D5;
+	545  :   251FA;
+	546  :   25121;
+	547  :   25048;
+	548  :   24F70;
+	549  :   24E9A;
+	54A  :   24DC4;
+	54B  :   24CEF;
+	54C  :   24C1C;
+	54D  :   24B4A;
+	54E  :   24A78;
+	54F  :   249A8;
+	550  :   248D9;
+	551  :   2480A;
+	552  :   2473D;
+	553  :   24671;
+	554  :   245A6;
+	555  :   244DC;
+	556  :   24413;
+	557  :   2434C;
+	558  :   24285;
+	559  :   241BF;
+	55A  :   240FB;
+	55B  :   24037;
+	55C  :   23F75;
+	55D  :   23EB3;
+	55E  :   23DF3;
+	55F  :   23D34;
+	560  :   23C76;
+	561  :   23BB9;
+	562  :   23AFD;
+	563  :   23A42;
+	564  :   23988;
+	565  :   238D0;
+	566  :   23818;
+	567  :   23762;
+	568  :   236AC;
+	569  :   235F8;
+	56A  :   23545;
+	56B  :   23493;
+	56C  :   233E2;
+	56D  :   23332;
+	56E  :   23283;
+	56F  :   231D6;
+	570  :   23129;
+	571  :   2307E;
+	572  :   22FD4;
+	573  :   22F2A;
+	574  :   22E82;
+	575  :   22DDC;
+	576  :   22D36;
+	577  :   22C91;
+	578  :   22BEE;
+	579  :   22B4B;
+	57A  :   22AAA;
+	57B  :   22A0A;
+	57C  :   2296B;
+	57D  :   228CD;
+	57E  :   22830;
+	57F  :   22795;
+	580  :   226FA;
+	581  :   22661;
+	582  :   225C9;
+	583  :   22532;
+	584  :   2249C;
+	585  :   22407;
+	586  :   22373;
+	587  :   222E1;
+	588  :   22250;
+	589  :   221C0;
+	58A  :   22131;
+	58B  :   220A3;
+	58C  :   22016;
+	58D  :   21F8B;
+	58E  :   21F00;
+	58F  :   21E77;
+	590  :   21DEF;
+	591  :   21D68;
+	592  :   21CE2;
+	593  :   21C5E;
+	594  :   21BDA;
+	595  :   21B58;
+	596  :   21AD7;
+	597  :   21A57;
+	598  :   219D8;
+	599  :   2195B;
+	59A  :   218DE;
+	59B  :   21863;
+	59C  :   217E9;
+	59D  :   21770;
+	59E  :   216F9;
+	59F  :   21682;
+	5A0  :   2160D;
+	5A1  :   21599;
+	5A2  :   21526;
+	5A3  :   214B4;
+	5A4  :   21443;
+	5A5  :   213D4;
+	5A6  :   21366;
+	5A7  :   212F9;
+	5A8  :   2128D;
+	5A9  :   21222;
+	5AA  :   211B9;
+	5AB  :   21151;
+	5AC  :   210E9;
+	5AD  :   21084;
+	5AE  :   2101F;
+	5AF  :   20FBB;
+	5B0  :   20F59;
+	5B1  :   20EF8;
+	5B2  :   20E98;
+	5B3  :   20E39;
+	5B4  :   20DDC;
+	5B5  :   20D7F;
+	5B6  :   20D24;
+	5B7  :   20CCA;
+	5B8  :   20C72;
+	5B9  :   20C1A;
+	5BA  :   20BC4;
+	5BB  :   20B6F;
+	5BC  :   20B1B;
+	5BD  :   20AC8;
+	5BE  :   20A77;
+	5BF  :   20A27;
+	5C0  :   209D7;
+	5C1  :   2098A;
+	5C2  :   2093D;
+	5C3  :   208F2;
+	5C4  :   208A7;
+	5C5  :   2085E;
+	5C6  :   20817;
+	5C7  :   207D0;
+	5C8  :   2078B;
+	5C9  :   20747;
+	5CA  :   20704;
+	5CB  :   206C2;
+	5CC  :   20681;
+	5CD  :   20642;
+	5CE  :   20604;
+	5CF  :   205C7;
+	5D0  :   2058C;
+	5D1  :   20551;
+	5D2  :   20518;
+	5D3  :   204E0;
+	5D4  :   204A9;
+	5D5  :   20474;
+	5D6  :   20440;
+	5D7  :   2040D;
+	5D8  :   203DB;
+	5D9  :   203AA;
+	5DA  :   2037B;
+	5DB  :   2034D;
+	5DC  :   20320;
+	5DD  :   202F4;
+	5DE  :   202C9;
+	5DF  :   202A0;
+	5E0  :   20278;
+	5E1  :   20251;
+	5E2  :   2022C;
+	5E3  :   20207;
+	5E4  :   201E4;
+	5E5  :   201C2;
+	5E6  :   201A2;
+	5E7  :   20182;
+	5E8  :   20164;
+	5E9  :   20147;
+	5EA  :   2012B;
+	5EB  :   20111;
+	5EC  :   200F8;
+	5ED  :   200E0;
+	5EE  :   200C9;
+	5EF  :   200B3;
+	5F0  :   2009F;
+	5F1  :   2008C;
+	5F2  :   2007A;
+	5F3  :   20069;
+	5F4  :   2005A;
+	5F5  :   2004C;
+	5F6  :   2003F;
+	5F7  :   20033;
+	5F8  :   20028;
+	5F9  :   2001F;
+	5FA  :   20017;
+	5FB  :   20010;
+	5FC  :   2000B;
+	5FD  :   20007;
+	5FE  :   20003;
+	5FF  :   20002;
+	600  :   20001;
+	601  :   20002;
+	602  :   20003;
+	603  :   20007;
+	604  :   2000B;
+	605  :   20010;
+	606  :   20017;
+	607  :   2001F;
+	608  :   20028;
+	609  :   20033;
+	60A  :   2003F;
+	60B  :   2004C;
+	60C  :   2005A;
+	60D  :   20069;
+	60E  :   2007A;
+	60F  :   2008C;
+	610  :   2009F;
+	611  :   200B3;
+	612  :   200C9;
+	613  :   200E0;
+	614  :   200F8;
+	615  :   20111;
+	616  :   2012B;
+	617  :   20147;
+	618  :   20164;
+	619  :   20182;
+	61A  :   201A2;
+	61B  :   201C2;
+	61C  :   201E4;
+	61D  :   20207;
+	61E  :   2022C;
+	61F  :   20251;
+	620  :   20278;
+	621  :   202A0;
+	622  :   202C9;
+	623  :   202F4;
+	624  :   20320;
+	625  :   2034D;
+	626  :   2037B;
+	627  :   203AA;
+	628  :   203DB;
+	629  :   2040D;
+	62A  :   20440;
+	62B  :   20474;
+	62C  :   204A9;
+	62D  :   204E0;
+	62E  :   20518;
+	62F  :   20551;
+	630  :   2058C;
+	631  :   205C7;
+	632  :   20604;
+	633  :   20642;
+	634  :   20681;
+	635  :   206C2;
+	636  :   20704;
+	637  :   20747;
+	638  :   2078B;
+	639  :   207D0;
+	63A  :   20817;
+	63B  :   2085E;
+	63C  :   208A7;
+	63D  :   208F2;
+	63E  :   2093D;
+	63F  :   2098A;
+	640  :   209D7;
+	641  :   20A27;
+	642  :   20A77;
+	643  :   20AC8;
+	644  :   20B1B;
+	645  :   20B6F;
+	646  :   20BC4;
+	647  :   20C1A;
+	648  :   20C72;
+	649  :   20CCA;
+	64A  :   20D24;
+	64B  :   20D7F;
+	64C  :   20DDC;
+	64D  :   20E39;
+	64E  :   20E98;
+	64F  :   20EF8;
+	650  :   20F59;
+	651  :   20FBB;
+	652  :   2101F;
+	653  :   21084;
+	654  :   210E9;
+	655  :   21151;
+	656  :   211B9;
+	657  :   21222;
+	658  :   2128D;
+	659  :   212F9;
+	65A  :   21366;
+	65B  :   213D4;
+	65C  :   21443;
+	65D  :   214B4;
+	65E  :   21526;
+	65F  :   21599;
+	660  :   2160D;
+	661  :   21682;
+	662  :   216F9;
+	663  :   21770;
+	664  :   217E9;
+	665  :   21863;
+	666  :   218DE;
+	667  :   2195B;
+	668  :   219D8;
+	669  :   21A57;
+	66A  :   21AD7;
+	66B  :   21B58;
+	66C  :   21BDA;
+	66D  :   21C5E;
+	66E  :   21CE2;
+	66F  :   21D68;
+	670  :   21DEF;
+	671  :   21E77;
+	672  :   21F00;
+	673  :   21F8B;
+	674  :   22016;
+	675  :   220A3;
+	676  :   22131;
+	677  :   221C0;
+	678  :   22250;
+	679  :   222E1;
+	67A  :   22373;
+	67B  :   22407;
+	67C  :   2249C;
+	67D  :   22532;
+	67E  :   225C9;
+	67F  :   22661;
+	680  :   226FA;
+	681  :   22795;
+	682  :   22830;
+	683  :   228CD;
+	684  :   2296B;
+	685  :   22A0A;
+	686  :   22AAA;
+	687  :   22B4B;
+	688  :   22BEE;
+	689  :   22C91;
+	68A  :   22D36;
+	68B  :   22DDC;
+	68C  :   22E82;
+	68D  :   22F2A;
+	68E  :   22FD4;
+	68F  :   2307E;
+	690  :   23129;
+	691  :   231D6;
+	692  :   23283;
+	693  :   23332;
+	694  :   233E2;
+	695  :   23493;
+	696  :   23545;
+	697  :   235F8;
+	698  :   236AC;
+	699  :   23762;
+	69A  :   23818;
+	69B  :   238D0;
+	69C  :   23988;
+	69D  :   23A42;
+	69E  :   23AFD;
+	69F  :   23BB9;
+	6A0  :   23C76;
+	6A1  :   23D34;
+	6A2  :   23DF3;
+	6A3  :   23EB3;
+	6A4  :   23F75;
+	6A5  :   24037;
+	6A6  :   240FB;
+	6A7  :   241BF;
+	6A8  :   24285;
+	6A9  :   2434C;
+	6AA  :   24413;
+	6AB  :   244DC;
+	6AC  :   245A6;
+	6AD  :   24671;
+	6AE  :   2473D;
+	6AF  :   2480A;
+	6B0  :   248D9;
+	6B1  :   249A8;
+	6B2  :   24A78;
+	6B3  :   24B4A;
+	6B4  :   24C1C;
+	6B5  :   24CEF;
+	6B6  :   24DC4;
+	6B7  :   24E9A;
+	6B8  :   24F70;
+	6B9  :   25048;
+	6BA  :   25121;
+	6BB  :   251FA;
+	6BC  :   252D5;
+	6BD  :   253B1;
+	6BE  :   2548E;
+	6BF  :   2556C;
+	6C0  :   2564A;
+	6C1  :   2572A;
+	6C2  :   2580B;
+	6C3  :   258ED;
+	6C4  :   259D0;
+	6C5  :   25AB4;
+	6C6  :   25B99;
+	6C7  :   25C7F;
+	6C8  :   25D66;
+	6C9  :   25E4E;
+	6CA  :   25F37;
+	6CB  :   26022;
+	6CC  :   2610D;
+	6CD  :   261F9;
+	6CE  :   262E6;
+	6CF  :   263D4;
+	6D0  :   264C3;
+	6D1  :   265B3;
+	6D2  :   266A4;
+	6D3  :   26796;
+	6D4  :   26889;
+	6D5  :   2697D;
+	6D6  :   26A72;
+	6D7  :   26B68;
+	6D8  :   26C5F;
+	6D9  :   26D57;
+	6DA  :   26E4F;
+	6DB  :   26F49;
+	6DC  :   27044;
+	6DD  :   27140;
+	6DE  :   2723C;
+	6DF  :   2733A;
+	6E0  :   27439;
+	6E1  :   27538;
+	6E2  :   27639;
+	6E3  :   2773A;
+	6E4  :   2783D;
+	6E5  :   27940;
+	6E6  :   27A44;
+	6E7  :   27B4A;
+	6E8  :   27C50;
+	6E9  :   27D57;
+	6EA  :   27E5F;
+	6EB  :   27F68;
+	6EC  :   28072;
+	6ED  :   2817D;
+	6EE  :   28289;
+	6EF  :   28395;
+	6F0  :   284A3;
+	6F1  :   285B1;
+	6F2  :   286C1;
+	6F3  :   287D1;
+	6F4  :   288E2;
+	6F5  :   289F4;
+	6F6  :   28B07;
+	6F7  :   28C1B;
+	6F8  :   28D30;
+	6F9  :   28E46;
+	6FA  :   28F5D;
+	6FB  :   29074;
+	6FC  :   2918C;
+	6FD  :   292A6;
+	6FE  :   293C0;
+	6FF  :   294DB;
+	700  :   295F7;
+	701  :   29714;
+	702  :   29831;
+	703  :   29950;
+	704  :   29A6F;
+	705  :   29B8F;
+	706  :   29CB0;
+	707  :   29DD2;
+	708  :   29EF5;
+	709  :   2A019;
+	70A  :   2A13D;
+	70B  :   2A263;
+	70C  :   2A389;
+	70D  :   2A4B0;
+	70E  :   2A5D8;
+	70F  :   2A701;
+	710  :   2A82A;
+	711  :   2A954;
+	712  :   2AA80;
+	713  :   2ABAC;
+	714  :   2ACD9;
+	715  :   2AE06;
+	716  :   2AF35;
+	717  :   2B064;
+	718  :   2B194;
+	719  :   2B2C5;
+	71A  :   2B3F7;
+	71B  :   2B529;
+	71C  :   2B65C;
+	71D  :   2B790;
+	71E  :   2B8C5;
+	71F  :   2B9FB;
+	720  :   2BB31;
+	721  :   2BC69;
+	722  :   2BDA1;
+	723  :   2BED9;
+	724  :   2C013;
+	725  :   2C14D;
+	726  :   2C288;
+	727  :   2C3C4;
+	728  :   2C501;
+	729  :   2C63E;
+	72A  :   2C77D;
+	72B  :   2C8BB;
+	72C  :   2C9FB;
+	72D  :   2CB3B;
+	72E  :   2CC7D;
+	72F  :   2CDBE;
+	730  :   2CF01;
+	731  :   2D044;
+	732  :   2D189;
+	733  :   2D2CD;
+	734  :   2D413;
+	735  :   2D559;
+	736  :   2D6A0;
+	737  :   2D7E8;
+	738  :   2D930;
+	739  :   2DA79;
+	73A  :   2DBC3;
+	73B  :   2DD0E;
+	73C  :   2DE59;
+	73D  :   2DFA5;
+	73E  :   2E0F2;
+	73F  :   2E23F;
+	740  :   2E38D;
+	741  :   2E4DC;
+	742  :   2E62B;
+	743  :   2E77B;
+	744  :   2E8CC;
+	745  :   2EA1D;
+	746  :   2EB6F;
+	747  :   2ECC2;
+	748  :   2EE15;
+	749  :   2EF69;
+	74A  :   2F0BE;
+	74B  :   2F213;
+	74C  :   2F36A;
+	74D  :   2F4C0;
+	74E  :   2F617;
+	74F  :   2F76F;
+	750  :   2F8C8;
+	751  :   2FA21;
+	752  :   2FB7B;
+	753  :   2FCD6;
+	754  :   2FE31;
+	755  :   2FF8C;
+	756  :   300E9;
+	757  :   30246;
+	758  :   303A3;
+	759  :   30502;
+	75A  :   30660;
+	75B  :   307C0;
+	75C  :   30920;
+	75D  :   30A80;
+	75E  :   30BE1;
+	75F  :   30D43;
+	760  :   30EA6;
+	761  :   31008;
+	762  :   3116C;
+	763  :   312D0;
+	764  :   31435;
+	765  :   3159A;
+	766  :   31700;
+	767  :   31866;
+	768  :   319CD;
+	769  :   31B34;
+	76A  :   31C9C;
+	76B  :   31E05;
+	76C  :   31F6E;
+	76D  :   320D8;
+	76E  :   32242;
+	76F  :   323AD;
+	770  :   32518;
+	771  :   32684;
+	772  :   327F0;
+	773  :   3295D;
+	774  :   32ACA;
+	775  :   32C38;
+	776  :   32DA6;
+	777  :   32F15;
+	778  :   33085;
+	779  :   331F4;
+	77A  :   33365;
+	77B  :   334D6;
+	77C  :   33647;
+	77D  :   337B9;
+	77E  :   3392B;
+	77F  :   33A9E;
+	780  :   33C11;
+	781  :   33D85;
+	782  :   33EF9;
+	783  :   3406E;
+	784  :   341E3;
+	785  :   34359;
+	786  :   344CF;
+	787  :   34645;
+	788  :   347BC;
+	789  :   34934;
+	78A  :   34AAB;
+	78B  :   34C24;
+	78C  :   34D9C;
+	78D  :   34F16;
+	78E  :   3508F;
+	78F  :   35209;
+	790  :   35384;
+	791  :   354FE;
+	792  :   3567A;
+	793  :   357F5;
+	794  :   35971;
+	795  :   35AEE;
+	796  :   35C6B;
+	797  :   35DE8;
+	798  :   35F65;
+	799  :   360E3;
+	79A  :   36262;
+	79B  :   363E1;
+	79C  :   36560;
+	79D  :   366DF;
+	79E  :   3685F;
+	79F  :   369DF;
+	7A0  :   36B60;
+	7A1  :   36CE1;
+	7A2  :   36E62;
+	7A3  :   36FE4;
+	7A4  :   37166;
+	7A5  :   372E9;
+	7A6  :   3746B;
+	7A7  :   375EE;
+	7A8  :   37772;
+	7A9  :   378F5;
+	7AA  :   37A79;
+	7AB  :   37BFE;
+	7AC  :   37D83;
+	7AD  :   37F08;
+	7AE  :   3808D;
+	7AF  :   38212;
+	7B0  :   38398;
+	7B1  :   3851F;
+	7B2  :   386A5;
+	7B3  :   3882C;
+	7B4  :   389B3;
+	7B5  :   38B3A;
+	7B6  :   38CC2;
+	7B7  :   38E4A;
+	7B8  :   38FD2;
+	7B9  :   3915B;
+	7BA  :   392E3;
+	7BB  :   3946C;
+	7BC  :   395F6;
+	7BD  :   3977F;
+	7BE  :   39909;
+	7BF  :   39A93;
+	7C0  :   39C1D;
+	7C1  :   39DA8;
+	7C2  :   39F33;
+	7C3  :   3A0BE;
+	7C4  :   3A249;
+	7C5  :   3A3D4;
+	7C6  :   3A560;
+	7C7  :   3A6EC;
+	7C8  :   3A878;
+	7C9  :   3AA04;
+	7CA  :   3AB91;
+	7CB  :   3AD1D;
+	7CC  :   3AEAA;
+	7CD  :   3B037;
+	7CE  :   3B1C5;
+	7CF  :   3B352;
+	7D0  :   3B4E0;
+	7D1  :   3B66E;
+	7D2  :   3B7FC;
+	7D3  :   3B98A;
+	7D4  :   3BB18;
+	7D5  :   3BCA7;
+	7D6  :   3BE36;
+	7D7  :   3BFC4;
+	7D8  :   3C154;
+	7D9  :   3C2E3;
+	7DA  :   3C472;
+	7DB  :   3C601;
+	7DC  :   3C791;
+	7DD  :   3C921;
+	7DE  :   3CAB1;
+	7DF  :   3CC41;
+	7E0  :   3CDD1;
+	7E1  :   3CF61;
+	7E2  :   3D0F1;
+	7E3  :   3D282;
+	7E4  :   3D412;
+	7E5  :   3D5A3;
+	7E6  :   3D734;
+	7E7  :   3D8C5;
+	7E8  :   3DA56;
+	7E9  :   3DBE7;
+	7EA  :   3DD78;
+	7EB  :   3DF09;
+	7EC  :   3E09B;
+	7ED  :   3E22C;
+	7EE  :   3E3BE;
+	7EF  :   3E54F;
+	7F0  :   3E6E1;
+	7F1  :   3E872;
+	7F2  :   3EA04;
+	7F3  :   3EB96;
+	7F4  :   3ED28;
+	7F5  :   3EEBA;
+	7F6  :   3F04B;
+	7F7  :   3F1DD;
+	7F8  :   3F36F;
+	7F9  :   3F501;
+	7FA  :   3F693;
+	7FB  :   3F825;
+	7FC  :   3F9B8;
+	7FD  :   3FB4A;
+	7FE  :   3FCDC;
+	7FF  :   3FE6E;
+END;
diff --git a/libraries/base/diag/src/data/diag_sin_2048x18.txt b/libraries/base/diag/src/data/diag_sin_2048x18.txt
new file mode 100644
index 0000000000..6de97b19b8
--- /dev/null
+++ b/libraries/base/diag/src/data/diag_sin_2048x18.txt
@@ -0,0 +1,2048 @@
+0
+402
+804
+1206
+1608
+2011
+2413
+2815
+3217
+3619
+4021
+4422
+4824
+5226
+5628
+6030
+6431
+6833
+7234
+7636
+8037
+8439
+8840
+9241
+9642
+10043
+10444
+10845
+11246
+11646
+12047
+12447
+12847
+13247
+13647
+14047
+14447
+14847
+15246
+15645
+16044
+16444
+16842
+17241
+17640
+18038
+18436
+18834
+19232
+19630
+20027
+20425
+20822
+21219
+21615
+22012
+22408
+22804
+23200
+23596
+23991
+24386
+24781
+25176
+25571
+25965
+26359
+26753
+27146
+27540
+27933
+28325
+28718
+29110
+29502
+29894
+30285
+30676
+31067
+31457
+31848
+32238
+32627
+33016
+33405
+33794
+34183
+34571
+34958
+35346
+35733
+36119
+36506
+36892
+37278
+37663
+38048
+38433
+38817
+39201
+39584
+39967
+40350
+40733
+41115
+41496
+41877
+42258
+42639
+43019
+43398
+43778
+44156
+44535
+44913
+45290
+45668
+46044
+46421
+46796
+47172
+47547
+47921
+48295
+48669
+49042
+49415
+49787
+50159
+50530
+50901
+51271
+51641
+52010
+52379
+52748
+53115
+53483
+53850
+54216
+54582
+54947
+55312
+55676
+56040
+56403
+56766
+57128
+57490
+57851
+58212
+58572
+58931
+59290
+59648
+60006
+60363
+60720
+61076
+61432
+61786
+62141
+62495
+62848
+63200
+63552
+63904
+64254
+64605
+64954
+65303
+65652
+65999
+66346
+66693
+67039
+67384
+67729
+68073
+68416
+68758
+69101
+69442
+69783
+70123
+70462
+70801
+71139
+71476
+71813
+72149
+72484
+72819
+73153
+73486
+73819
+74151
+74482
+74813
+75143
+75472
+75800
+76128
+76455
+76781
+77107
+77431
+77756
+78079
+78402
+78723
+79045
+79365
+79685
+80003
+80322
+80639
+80956
+81272
+81587
+81901
+82215
+82527
+82839
+83151
+83461
+83771
+84080
+84388
+84695
+85001
+85307
+85612
+85916
+86219
+86522
+86823
+87124
+87424
+87724
+88022
+88319
+88616
+88912
+89207
+89501
+89795
+90087
+90379
+90670
+90960
+91249
+91537
+91824
+92111
+92396
+92681
+92965
+93248
+93530
+93812
+94092
+94371
+94650
+94928
+95205
+95481
+95756
+96030
+96303
+96575
+96847
+97117
+97387
+97655
+97923
+98190
+98456
+98721
+98985
+99248
+99510
+99772
+100032
+100291
+100550
+100807
+101064
+101319
+101574
+101828
+102080
+102332
+102583
+102833
+103081
+103329
+103576
+103822
+104067
+104311
+104554
+104796
+105037
+105277
+105516
+105754
+105991
+106227
+106462
+106697
+106930
+107162
+107393
+107623
+107852
+108080
+108307
+108533
+108758
+108982
+109204
+109426
+109647
+109867
+110086
+110303
+110520
+110736
+110950
+111164
+111377
+111588
+111798
+112008
+112216
+112423
+112630
+112835
+113039
+113242
+113444
+113645
+113844
+114043
+114241
+114437
+114633
+114827
+115021
+115213
+115404
+115594
+115783
+115971
+116158
+116344
+116528
+116712
+116894
+117076
+117256
+117435
+117613
+117790
+117966
+118141
+118314
+118487
+118658
+118828
+118998
+119166
+119332
+119498
+119663
+119826
+119989
+120150
+120310
+120469
+120627
+120784
+120939
+121094
+121247
+121399
+121550
+121700
+121849
+121997
+122143
+122288
+122432
+122575
+122717
+122858
+122997
+123136
+123273
+123409
+123544
+123678
+123810
+123942
+124072
+124201
+124329
+124456
+124581
+124706
+124829
+124951
+125072
+125191
+125310
+125427
+125543
+125658
+125772
+125885
+125996
+126106
+126215
+126323
+126430
+126535
+126639
+126743
+126844
+126945
+127045
+127143
+127240
+127336
+127431
+127524
+127617
+127708
+127798
+127886
+127974
+128060
+128145
+128229
+128312
+128393
+128473
+128553
+128630
+128707
+128782
+128857
+128930
+129001
+129072
+129141
+129209
+129276
+129342
+129407
+129470
+129532
+129593
+129652
+129711
+129768
+129824
+129879
+129932
+129984
+130035
+130085
+130134
+130181
+130227
+130272
+130316
+130359
+130400
+130440
+130479
+130516
+130553
+130588
+130622
+130654
+130686
+130716
+130745
+130773
+130799
+130824
+130848
+130871
+130893
+130913
+130932
+130950
+130967
+130982
+130996
+131009
+131021
+131032
+131041
+131049
+131056
+131061
+131065
+131069
+131070
+131071
+131070
+131069
+131065
+131061
+131056
+131049
+131041
+131032
+131021
+131009
+130996
+130982
+130967
+130950
+130932
+130913
+130893
+130871
+130848
+130824
+130799
+130773
+130745
+130716
+130686
+130654
+130622
+130588
+130553
+130516
+130479
+130440
+130400
+130359
+130316
+130272
+130227
+130181
+130134
+130085
+130035
+129984
+129932
+129879
+129824
+129768
+129711
+129652
+129593
+129532
+129470
+129407
+129342
+129276
+129209
+129141
+129072
+129001
+128930
+128857
+128782
+128707
+128630
+128553
+128473
+128393
+128312
+128229
+128145
+128060
+127974
+127886
+127798
+127708
+127617
+127524
+127431
+127336
+127240
+127143
+127045
+126945
+126844
+126743
+126639
+126535
+126430
+126323
+126215
+126106
+125996
+125885
+125772
+125658
+125543
+125427
+125310
+125191
+125072
+124951
+124829
+124706
+124581
+124456
+124329
+124201
+124072
+123942
+123810
+123678
+123544
+123409
+123273
+123136
+122997
+122858
+122717
+122575
+122432
+122288
+122143
+121997
+121849
+121700
+121550
+121399
+121247
+121094
+120939
+120784
+120627
+120469
+120310
+120150
+119989
+119826
+119663
+119498
+119332
+119166
+118998
+118828
+118658
+118487
+118314
+118141
+117966
+117790
+117613
+117435
+117256
+117076
+116894
+116712
+116528
+116344
+116158
+115971
+115783
+115594
+115404
+115213
+115021
+114827
+114633
+114437
+114241
+114043
+113844
+113645
+113444
+113242
+113039
+112835
+112630
+112423
+112216
+112008
+111798
+111588
+111377
+111164
+110950
+110736
+110520
+110303
+110086
+109867
+109647
+109426
+109204
+108982
+108758
+108533
+108307
+108080
+107852
+107623
+107393
+107162
+106930
+106697
+106462
+106227
+105991
+105754
+105516
+105277
+105037
+104796
+104554
+104311
+104067
+103822
+103576
+103329
+103081
+102833
+102583
+102332
+102080
+101828
+101574
+101319
+101064
+100807
+100550
+100291
+100032
+99772
+99510
+99248
+98985
+98721
+98456
+98190
+97923
+97655
+97387
+97117
+96847
+96575
+96303
+96030
+95756
+95481
+95205
+94928
+94650
+94371
+94092
+93812
+93530
+93248
+92965
+92681
+92396
+92111
+91824
+91537
+91249
+90960
+90670
+90379
+90087
+89795
+89501
+89207
+88912
+88616
+88319
+88022
+87724
+87424
+87124
+86823
+86522
+86219
+85916
+85612
+85307
+85001
+84695
+84388
+84080
+83771
+83461
+83151
+82839
+82527
+82215
+81901
+81587
+81272
+80956
+80639
+80322
+80003
+79685
+79365
+79045
+78723
+78402
+78079
+77756
+77431
+77107
+76781
+76455
+76128
+75800
+75472
+75143
+74813
+74482
+74151
+73819
+73486
+73153
+72819
+72484
+72149
+71813
+71476
+71139
+70801
+70462
+70123
+69783
+69442
+69101
+68758
+68416
+68073
+67729
+67384
+67039
+66693
+66346
+65999
+65652
+65303
+64954
+64605
+64254
+63904
+63552
+63200
+62848
+62495
+62141
+61786
+61432
+61076
+60720
+60363
+60006
+59648
+59290
+58931
+58572
+58212
+57851
+57490
+57128
+56766
+56403
+56040
+55676
+55312
+54947
+54582
+54216
+53850
+53483
+53115
+52748
+52379
+52010
+51641
+51271
+50901
+50530
+50159
+49787
+49415
+49042
+48669
+48295
+47921
+47547
+47172
+46796
+46421
+46044
+45668
+45290
+44913
+44535
+44156
+43778
+43398
+43019
+42639
+42258
+41877
+41496
+41115
+40733
+40350
+39967
+39584
+39201
+38817
+38433
+38048
+37663
+37278
+36892
+36506
+36119
+35733
+35346
+34958
+34571
+34183
+33794
+33405
+33016
+32627
+32238
+31848
+31457
+31067
+30676
+30285
+29894
+29502
+29110
+28718
+28325
+27933
+27540
+27146
+26753
+26359
+25965
+25571
+25176
+24781
+24386
+23991
+23596
+23200
+22804
+22408
+22012
+21615
+21219
+20822
+20425
+20027
+19630
+19232
+18834
+18436
+18038
+17640
+17241
+16842
+16444
+16044
+15645
+15246
+14847
+14447
+14047
+13647
+13247
+12847
+12447
+12047
+11646
+11246
+10845
+10444
+10043
+9642
+9241
+8840
+8439
+8037
+7636
+7234
+6833
+6431
+6030
+5628
+5226
+4824
+4422
+4021
+3619
+3217
+2815
+2413
+2011
+1608
+1206
+804
+402
+0
+-402
+-804
+-1206
+-1608
+-2011
+-2413
+-2815
+-3217
+-3619
+-4021
+-4422
+-4824
+-5226
+-5628
+-6030
+-6431
+-6833
+-7234
+-7636
+-8037
+-8439
+-8840
+-9241
+-9642
+-10043
+-10444
+-10845
+-11246
+-11646
+-12047
+-12447
+-12847
+-13247
+-13647
+-14047
+-14447
+-14847
+-15246
+-15645
+-16044
+-16444
+-16842
+-17241
+-17640
+-18038
+-18436
+-18834
+-19232
+-19630
+-20027
+-20425
+-20822
+-21219
+-21615
+-22012
+-22408
+-22804
+-23200
+-23596
+-23991
+-24386
+-24781
+-25176
+-25571
+-25965
+-26359
+-26753
+-27146
+-27540
+-27933
+-28325
+-28718
+-29110
+-29502
+-29894
+-30285
+-30676
+-31067
+-31457
+-31848
+-32238
+-32627
+-33016
+-33405
+-33794
+-34183
+-34571
+-34958
+-35346
+-35733
+-36119
+-36506
+-36892
+-37278
+-37663
+-38048
+-38433
+-38817
+-39201
+-39584
+-39967
+-40350
+-40733
+-41115
+-41496
+-41877
+-42258
+-42639
+-43019
+-43398
+-43778
+-44156
+-44535
+-44913
+-45290
+-45668
+-46044
+-46421
+-46796
+-47172
+-47547
+-47921
+-48295
+-48669
+-49042
+-49415
+-49787
+-50159
+-50530
+-50901
+-51271
+-51641
+-52010
+-52379
+-52748
+-53115
+-53483
+-53850
+-54216
+-54582
+-54947
+-55312
+-55676
+-56040
+-56403
+-56766
+-57128
+-57490
+-57851
+-58212
+-58572
+-58931
+-59290
+-59648
+-60006
+-60363
+-60720
+-61076
+-61432
+-61786
+-62141
+-62495
+-62848
+-63200
+-63552
+-63904
+-64254
+-64605
+-64954
+-65303
+-65652
+-65999
+-66346
+-66693
+-67039
+-67384
+-67729
+-68073
+-68416
+-68758
+-69101
+-69442
+-69783
+-70123
+-70462
+-70801
+-71139
+-71476
+-71813
+-72149
+-72484
+-72819
+-73153
+-73486
+-73819
+-74151
+-74482
+-74813
+-75143
+-75472
+-75800
+-76128
+-76455
+-76781
+-77107
+-77431
+-77756
+-78079
+-78402
+-78723
+-79045
+-79365
+-79685
+-80003
+-80322
+-80639
+-80956
+-81272
+-81587
+-81901
+-82215
+-82527
+-82839
+-83151
+-83461
+-83771
+-84080
+-84388
+-84695
+-85001
+-85307
+-85612
+-85916
+-86219
+-86522
+-86823
+-87124
+-87424
+-87724
+-88022
+-88319
+-88616
+-88912
+-89207
+-89501
+-89795
+-90087
+-90379
+-90670
+-90960
+-91249
+-91537
+-91824
+-92111
+-92396
+-92681
+-92965
+-93248
+-93530
+-93812
+-94092
+-94371
+-94650
+-94928
+-95205
+-95481
+-95756
+-96030
+-96303
+-96575
+-96847
+-97117
+-97387
+-97655
+-97923
+-98190
+-98456
+-98721
+-98985
+-99248
+-99510
+-99772
+-100032
+-100291
+-100550
+-100807
+-101064
+-101319
+-101574
+-101828
+-102080
+-102332
+-102583
+-102833
+-103081
+-103329
+-103576
+-103822
+-104067
+-104311
+-104554
+-104796
+-105037
+-105277
+-105516
+-105754
+-105991
+-106227
+-106462
+-106697
+-106930
+-107162
+-107393
+-107623
+-107852
+-108080
+-108307
+-108533
+-108758
+-108982
+-109204
+-109426
+-109647
+-109867
+-110086
+-110303
+-110520
+-110736
+-110950
+-111164
+-111377
+-111588
+-111798
+-112008
+-112216
+-112423
+-112630
+-112835
+-113039
+-113242
+-113444
+-113645
+-113844
+-114043
+-114241
+-114437
+-114633
+-114827
+-115021
+-115213
+-115404
+-115594
+-115783
+-115971
+-116158
+-116344
+-116528
+-116712
+-116894
+-117076
+-117256
+-117435
+-117613
+-117790
+-117966
+-118141
+-118314
+-118487
+-118658
+-118828
+-118998
+-119166
+-119332
+-119498
+-119663
+-119826
+-119989
+-120150
+-120310
+-120469
+-120627
+-120784
+-120939
+-121094
+-121247
+-121399
+-121550
+-121700
+-121849
+-121997
+-122143
+-122288
+-122432
+-122575
+-122717
+-122858
+-122997
+-123136
+-123273
+-123409
+-123544
+-123678
+-123810
+-123942
+-124072
+-124201
+-124329
+-124456
+-124581
+-124706
+-124829
+-124951
+-125072
+-125191
+-125310
+-125427
+-125543
+-125658
+-125772
+-125885
+-125996
+-126106
+-126215
+-126323
+-126430
+-126535
+-126639
+-126743
+-126844
+-126945
+-127045
+-127143
+-127240
+-127336
+-127431
+-127524
+-127617
+-127708
+-127798
+-127886
+-127974
+-128060
+-128145
+-128229
+-128312
+-128393
+-128473
+-128553
+-128630
+-128707
+-128782
+-128857
+-128930
+-129001
+-129072
+-129141
+-129209
+-129276
+-129342
+-129407
+-129470
+-129532
+-129593
+-129652
+-129711
+-129768
+-129824
+-129879
+-129932
+-129984
+-130035
+-130085
+-130134
+-130181
+-130227
+-130272
+-130316
+-130359
+-130400
+-130440
+-130479
+-130516
+-130553
+-130588
+-130622
+-130654
+-130686
+-130716
+-130745
+-130773
+-130799
+-130824
+-130848
+-130871
+-130893
+-130913
+-130932
+-130950
+-130967
+-130982
+-130996
+-131009
+-131021
+-131032
+-131041
+-131049
+-131056
+-131061
+-131065
+-131069
+-131070
+-131071
+-131070
+-131069
+-131065
+-131061
+-131056
+-131049
+-131041
+-131032
+-131021
+-131009
+-130996
+-130982
+-130967
+-130950
+-130932
+-130913
+-130893
+-130871
+-130848
+-130824
+-130799
+-130773
+-130745
+-130716
+-130686
+-130654
+-130622
+-130588
+-130553
+-130516
+-130479
+-130440
+-130400
+-130359
+-130316
+-130272
+-130227
+-130181
+-130134
+-130085
+-130035
+-129984
+-129932
+-129879
+-129824
+-129768
+-129711
+-129652
+-129593
+-129532
+-129470
+-129407
+-129342
+-129276
+-129209
+-129141
+-129072
+-129001
+-128930
+-128857
+-128782
+-128707
+-128630
+-128553
+-128473
+-128393
+-128312
+-128229
+-128145
+-128060
+-127974
+-127886
+-127798
+-127708
+-127617
+-127524
+-127431
+-127336
+-127240
+-127143
+-127045
+-126945
+-126844
+-126743
+-126639
+-126535
+-126430
+-126323
+-126215
+-126106
+-125996
+-125885
+-125772
+-125658
+-125543
+-125427
+-125310
+-125191
+-125072
+-124951
+-124829
+-124706
+-124581
+-124456
+-124329
+-124201
+-124072
+-123942
+-123810
+-123678
+-123544
+-123409
+-123273
+-123136
+-122997
+-122858
+-122717
+-122575
+-122432
+-122288
+-122143
+-121997
+-121849
+-121700
+-121550
+-121399
+-121247
+-121094
+-120939
+-120784
+-120627
+-120469
+-120310
+-120150
+-119989
+-119826
+-119663
+-119498
+-119332
+-119166
+-118998
+-118828
+-118658
+-118487
+-118314
+-118141
+-117966
+-117790
+-117613
+-117435
+-117256
+-117076
+-116894
+-116712
+-116528
+-116344
+-116158
+-115971
+-115783
+-115594
+-115404
+-115213
+-115021
+-114827
+-114633
+-114437
+-114241
+-114043
+-113844
+-113645
+-113444
+-113242
+-113039
+-112835
+-112630
+-112423
+-112216
+-112008
+-111798
+-111588
+-111377
+-111164
+-110950
+-110736
+-110520
+-110303
+-110086
+-109867
+-109647
+-109426
+-109204
+-108982
+-108758
+-108533
+-108307
+-108080
+-107852
+-107623
+-107393
+-107162
+-106930
+-106697
+-106462
+-106227
+-105991
+-105754
+-105516
+-105277
+-105037
+-104796
+-104554
+-104311
+-104067
+-103822
+-103576
+-103329
+-103081
+-102833
+-102583
+-102332
+-102080
+-101828
+-101574
+-101319
+-101064
+-100807
+-100550
+-100291
+-100032
+-99772
+-99510
+-99248
+-98985
+-98721
+-98456
+-98190
+-97923
+-97655
+-97387
+-97117
+-96847
+-96575
+-96303
+-96030
+-95756
+-95481
+-95205
+-94928
+-94650
+-94371
+-94092
+-93812
+-93530
+-93248
+-92965
+-92681
+-92396
+-92111
+-91824
+-91537
+-91249
+-90960
+-90670
+-90379
+-90087
+-89795
+-89501
+-89207
+-88912
+-88616
+-88319
+-88022
+-87724
+-87424
+-87124
+-86823
+-86522
+-86219
+-85916
+-85612
+-85307
+-85001
+-84695
+-84388
+-84080
+-83771
+-83461
+-83151
+-82839
+-82527
+-82215
+-81901
+-81587
+-81272
+-80956
+-80639
+-80322
+-80003
+-79685
+-79365
+-79045
+-78723
+-78402
+-78079
+-77756
+-77431
+-77107
+-76781
+-76455
+-76128
+-75800
+-75472
+-75143
+-74813
+-74482
+-74151
+-73819
+-73486
+-73153
+-72819
+-72484
+-72149
+-71813
+-71476
+-71139
+-70801
+-70462
+-70123
+-69783
+-69442
+-69101
+-68758
+-68416
+-68073
+-67729
+-67384
+-67039
+-66693
+-66346
+-65999
+-65652
+-65303
+-64954
+-64605
+-64254
+-63904
+-63552
+-63200
+-62848
+-62495
+-62141
+-61786
+-61432
+-61076
+-60720
+-60363
+-60006
+-59648
+-59290
+-58931
+-58572
+-58212
+-57851
+-57490
+-57128
+-56766
+-56403
+-56040
+-55676
+-55312
+-54947
+-54582
+-54216
+-53850
+-53483
+-53115
+-52748
+-52379
+-52010
+-51641
+-51271
+-50901
+-50530
+-50159
+-49787
+-49415
+-49042
+-48669
+-48295
+-47921
+-47547
+-47172
+-46796
+-46421
+-46044
+-45668
+-45290
+-44913
+-44535
+-44156
+-43778
+-43398
+-43019
+-42639
+-42258
+-41877
+-41496
+-41115
+-40733
+-40350
+-39967
+-39584
+-39201
+-38817
+-38433
+-38048
+-37663
+-37278
+-36892
+-36506
+-36119
+-35733
+-35346
+-34958
+-34571
+-34183
+-33794
+-33405
+-33016
+-32627
+-32238
+-31848
+-31457
+-31067
+-30676
+-30285
+-29894
+-29502
+-29110
+-28718
+-28325
+-27933
+-27540
+-27146
+-26753
+-26359
+-25965
+-25571
+-25176
+-24781
+-24386
+-23991
+-23596
+-23200
+-22804
+-22408
+-22012
+-21615
+-21219
+-20822
+-20425
+-20027
+-19630
+-19232
+-18834
+-18436
+-18038
+-17640
+-17241
+-16842
+-16444
+-16044
+-15645
+-15246
+-14847
+-14447
+-14047
+-13647
+-13247
+-12847
+-12447
+-12047
+-11646
+-11246
+-10845
+-10444
+-10043
+-9642
+-9241
+-8840
+-8439
+-8037
+-7636
+-7234
+-6833
+-6431
+-6030
+-5628
+-5226
+-4824
+-4422
+-4021
+-3619
+-3217
+-2815
+-2413
+-2011
+-1608
+-1206
+-804
+-402
diff --git a/libraries/base/diag/src/data/matlab_sin_1024x8.txt b/libraries/base/diag/src/data/matlab_sin_1024x8.txt
new file mode 100644
index 0000000000..c8b8738bba
--- /dev/null
+++ b/libraries/base/diag/src/data/matlab_sin_1024x8.txt
@@ -0,0 +1,1024 @@
+0
+1
+2
+2
+3
+4
+5
+5
+6
+7
+8
+9
+9
+10
+11
+12
+12
+13
+14
+15
+16
+16
+17
+18
+19
+19
+20
+21
+22
+22
+23
+24
+25
+26
+26
+27
+28
+29
+29
+30
+31
+32
+32
+33
+34
+35
+35
+36
+37
+38
+38
+39
+40
+41
+41
+42
+43
+44
+44
+45
+46
+46
+47
+48
+49
+49
+50
+51
+51
+52
+53
+54
+54
+55
+56
+56
+57
+58
+58
+59
+60
+61
+61
+62
+63
+63
+64
+65
+65
+66
+67
+67
+68
+69
+69
+70
+71
+71
+72
+72
+73
+74
+74
+75
+76
+76
+77
+78
+78
+79
+79
+80
+81
+81
+82
+82
+83
+84
+84
+85
+85
+86
+86
+87
+88
+88
+89
+89
+90
+90
+91
+91
+92
+93
+93
+94
+94
+95
+95
+96
+96
+97
+97
+98
+98
+99
+99
+100
+100
+101
+101
+102
+102
+102
+103
+103
+104
+104
+105
+105
+106
+106
+106
+107
+107
+108
+108
+109
+109
+109
+110
+110
+111
+111
+111
+112
+112
+112
+113
+113
+113
+114
+114
+114
+115
+115
+115
+116
+116
+116
+117
+117
+117
+118
+118
+118
+118
+119
+119
+119
+120
+120
+120
+120
+121
+121
+121
+121
+122
+122
+122
+122
+122
+123
+123
+123
+123
+123
+124
+124
+124
+124
+124
+124
+125
+125
+125
+125
+125
+125
+125
+126
+126
+126
+126
+126
+126
+126
+126
+126
+126
+126
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+126
+126
+126
+126
+126
+126
+126
+126
+126
+126
+126
+125
+125
+125
+125
+125
+125
+125
+124
+124
+124
+124
+124
+124
+123
+123
+123
+123
+123
+122
+122
+122
+122
+122
+121
+121
+121
+121
+120
+120
+120
+120
+119
+119
+119
+118
+118
+118
+118
+117
+117
+117
+116
+116
+116
+115
+115
+115
+114
+114
+114
+113
+113
+113
+112
+112
+112
+111
+111
+111
+110
+110
+109
+109
+109
+108
+108
+107
+107
+106
+106
+106
+105
+105
+104
+104
+103
+103
+102
+102
+102
+101
+101
+100
+100
+99
+99
+98
+98
+97
+97
+96
+96
+95
+95
+94
+94
+93
+93
+92
+91
+91
+90
+90
+89
+89
+88
+88
+87
+86
+86
+85
+85
+84
+84
+83
+82
+82
+81
+81
+80
+79
+79
+78
+78
+77
+76
+76
+75
+74
+74
+73
+72
+72
+71
+71
+70
+69
+69
+68
+67
+67
+66
+65
+65
+64
+63
+63
+62
+61
+61
+60
+59
+58
+58
+57
+56
+56
+55
+54
+54
+53
+52
+51
+51
+50
+49
+49
+48
+47
+46
+46
+45
+44
+44
+43
+42
+41
+41
+40
+39
+38
+38
+37
+36
+35
+35
+34
+33
+32
+32
+31
+30
+29
+29
+28
+27
+26
+26
+25
+24
+23
+22
+22
+21
+20
+19
+19
+18
+17
+16
+16
+15
+14
+13
+12
+12
+11
+10
+9
+9
+8
+7
+6
+5
+5
+4
+3
+2
+2
+1
+0
+-1
+-2
+-2
+-3
+-4
+-5
+-5
+-6
+-7
+-8
+-9
+-9
+-10
+-11
+-12
+-12
+-13
+-14
+-15
+-16
+-16
+-17
+-18
+-19
+-19
+-20
+-21
+-22
+-22
+-23
+-24
+-25
+-26
+-26
+-27
+-28
+-29
+-29
+-30
+-31
+-32
+-32
+-33
+-34
+-35
+-35
+-36
+-37
+-38
+-38
+-39
+-40
+-41
+-41
+-42
+-43
+-44
+-44
+-45
+-46
+-46
+-47
+-48
+-49
+-49
+-50
+-51
+-51
+-52
+-53
+-54
+-54
+-55
+-56
+-56
+-57
+-58
+-58
+-59
+-60
+-61
+-61
+-62
+-63
+-63
+-64
+-65
+-65
+-66
+-67
+-67
+-68
+-69
+-69
+-70
+-71
+-71
+-72
+-72
+-73
+-74
+-74
+-75
+-76
+-76
+-77
+-78
+-78
+-79
+-79
+-80
+-81
+-81
+-82
+-82
+-83
+-84
+-84
+-85
+-85
+-86
+-86
+-87
+-88
+-88
+-89
+-89
+-90
+-90
+-91
+-91
+-92
+-93
+-93
+-94
+-94
+-95
+-95
+-96
+-96
+-97
+-97
+-98
+-98
+-99
+-99
+-100
+-100
+-101
+-101
+-102
+-102
+-102
+-103
+-103
+-104
+-104
+-105
+-105
+-106
+-106
+-106
+-107
+-107
+-108
+-108
+-109
+-109
+-109
+-110
+-110
+-111
+-111
+-111
+-112
+-112
+-112
+-113
+-113
+-113
+-114
+-114
+-114
+-115
+-115
+-115
+-116
+-116
+-116
+-117
+-117
+-117
+-118
+-118
+-118
+-118
+-119
+-119
+-119
+-120
+-120
+-120
+-120
+-121
+-121
+-121
+-121
+-122
+-122
+-122
+-122
+-122
+-123
+-123
+-123
+-123
+-123
+-124
+-124
+-124
+-124
+-124
+-124
+-125
+-125
+-125
+-125
+-125
+-125
+-125
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-125
+-125
+-125
+-125
+-125
+-125
+-125
+-124
+-124
+-124
+-124
+-124
+-124
+-123
+-123
+-123
+-123
+-123
+-122
+-122
+-122
+-122
+-122
+-121
+-121
+-121
+-121
+-120
+-120
+-120
+-120
+-119
+-119
+-119
+-118
+-118
+-118
+-118
+-117
+-117
+-117
+-116
+-116
+-116
+-115
+-115
+-115
+-114
+-114
+-114
+-113
+-113
+-113
+-112
+-112
+-112
+-111
+-111
+-111
+-110
+-110
+-109
+-109
+-109
+-108
+-108
+-107
+-107
+-106
+-106
+-106
+-105
+-105
+-104
+-104
+-103
+-103
+-102
+-102
+-102
+-101
+-101
+-100
+-100
+-99
+-99
+-98
+-98
+-97
+-97
+-96
+-96
+-95
+-95
+-94
+-94
+-93
+-93
+-92
+-91
+-91
+-90
+-90
+-89
+-89
+-88
+-88
+-87
+-86
+-86
+-85
+-85
+-84
+-84
+-83
+-82
+-82
+-81
+-81
+-80
+-79
+-79
+-78
+-78
+-77
+-76
+-76
+-75
+-74
+-74
+-73
+-72
+-72
+-71
+-71
+-70
+-69
+-69
+-68
+-67
+-67
+-66
+-65
+-65
+-64
+-63
+-63
+-62
+-61
+-61
+-60
+-59
+-58
+-58
+-57
+-56
+-56
+-55
+-54
+-54
+-53
+-52
+-51
+-51
+-50
+-49
+-49
+-48
+-47
+-46
+-46
+-45
+-44
+-44
+-43
+-42
+-41
+-41
+-40
+-39
+-38
+-38
+-37
+-36
+-35
+-35
+-34
+-33
+-32
+-32
+-31
+-30
+-29
+-29
+-28
+-27
+-26
+-26
+-25
+-24
+-23
+-22
+-22
+-21
+-20
+-19
+-19
+-18
+-17
+-16
+-16
+-15
+-14
+-13
+-12
+-12
+-11
+-10
+-9
+-9
+-8
+-7
+-6
+-5
+-5
+-4
+-3
+-2
+-2
+-1
diff --git a/libraries/base/diag/src/data/matlab_sin_2048x18.txt b/libraries/base/diag/src/data/matlab_sin_2048x18.txt
new file mode 100644
index 0000000000..821c738b3a
--- /dev/null
+++ b/libraries/base/diag/src/data/matlab_sin_2048x18.txt
@@ -0,0 +1,2048 @@
+0
+402
+804
+1206
+1608
+2011
+2413
+2815
+3217
+3619
+4021
+4422
+4824
+5226
+5628
+6030
+6431
+6833
+7234
+7636
+8037
+8439
+8840
+9241
+9642
+10043
+10444
+10845
+11246
+11646
+12047
+12447
+12847
+13247
+13647
+14047
+14447
+14847
+15246
+15645
+16044
+16444
+16842
+17241
+17640
+18038
+18436
+18834
+19232
+19630
+20027
+20425
+20822
+21219
+21615
+22012
+22408
+22804
+23200
+23596
+23991
+24386
+24781
+25176
+25571
+25965
+26359
+26753
+27146
+27540
+27933
+28325
+28718
+29110
+29502
+29894
+30285
+30676
+31067
+31457
+31848
+32238
+32627
+33016
+33405
+33794
+34183
+34571
+34958
+35346
+35733
+36119
+36506
+36892
+37278
+37663
+38048
+38433
+38817
+39201
+39584
+39967
+40350
+40733
+41115
+41496
+41877
+42258
+42639
+43019
+43398
+43778
+44156
+44535
+44913
+45290
+45668
+46044
+46421
+46796
+47172
+47547
+47921
+48295
+48669
+49042
+49415
+49787
+50159
+50530
+50901
+51271
+51641
+52010
+52379
+52748
+53115
+53483
+53850
+54216
+54582
+54947
+55312
+55676
+56040
+56403
+56766
+57128
+57490
+57851
+58212
+58572
+58931
+59290
+59648
+60006
+60363
+60720
+61076
+61432
+61786
+62141
+62495
+62848
+63200
+63552
+63904
+64254
+64605
+64954
+65303
+65652
+65999
+66346
+66693
+67039
+67384
+67729
+68073
+68416
+68758
+69101
+69442
+69783
+70123
+70462
+70801
+71139
+71476
+71813
+72149
+72484
+72819
+73153
+73486
+73819
+74151
+74482
+74813
+75143
+75472
+75800
+76128
+76455
+76781
+77107
+77431
+77756
+78079
+78402
+78723
+79045
+79365
+79685
+80003
+80322
+80639
+80956
+81272
+81587
+81901
+82215
+82527
+82839
+83151
+83461
+83771
+84080
+84388
+84695
+85001
+85307
+85612
+85916
+86219
+86522
+86823
+87124
+87424
+87724
+88022
+88319
+88616
+88912
+89207
+89501
+89795
+90087
+90379
+90670
+90960
+91249
+91537
+91824
+92111
+92396
+92681
+92965
+93248
+93530
+93812
+94092
+94371
+94650
+94928
+95205
+95481
+95756
+96030
+96303
+96575
+96847
+97117
+97387
+97655
+97923
+98190
+98456
+98721
+98985
+99248
+99510
+99772
+100032
+100291
+100550
+100807
+101064
+101319
+101574
+101828
+102080
+102332
+102583
+102833
+103081
+103329
+103576
+103822
+104067
+104311
+104554
+104796
+105037
+105277
+105516
+105754
+105991
+106227
+106462
+106697
+106930
+107162
+107393
+107623
+107852
+108080
+108307
+108533
+108758
+108982
+109204
+109426
+109647
+109867
+110086
+110303
+110520
+110736
+110950
+111164
+111377
+111588
+111798
+112008
+112216
+112423
+112630
+112835
+113039
+113242
+113444
+113645
+113844
+114043
+114241
+114437
+114633
+114827
+115021
+115213
+115404
+115594
+115783
+115971
+116158
+116344
+116528
+116712
+116894
+117076
+117256
+117435
+117613
+117790
+117966
+118141
+118314
+118487
+118658
+118828
+118998
+119166
+119332
+119498
+119663
+119826
+119989
+120150
+120310
+120469
+120627
+120784
+120939
+121094
+121247
+121399
+121550
+121700
+121849
+121997
+122143
+122288
+122432
+122575
+122717
+122858
+122997
+123136
+123273
+123409
+123544
+123678
+123810
+123942
+124072
+124201
+124329
+124456
+124581
+124706
+124829
+124951
+125072
+125191
+125310
+125427
+125543
+125658
+125772
+125885
+125996
+126106
+126215
+126323
+126430
+126535
+126639
+126743
+126844
+126945
+127045
+127143
+127240
+127336
+127431
+127524
+127617
+127708
+127798
+127886
+127974
+128060
+128145
+128229
+128312
+128393
+128473
+128553
+128630
+128707
+128782
+128857
+128930
+129001
+129072
+129141
+129209
+129276
+129342
+129407
+129470
+129532
+129593
+129652
+129711
+129768
+129824
+129879
+129932
+129984
+130035
+130085
+130134
+130181
+130227
+130272
+130316
+130359
+130400
+130440
+130479
+130516
+130553
+130588
+130622
+130654
+130686
+130716
+130745
+130773
+130799
+130824
+130848
+130871
+130893
+130913
+130932
+130950
+130967
+130982
+130996
+131009
+131021
+131032
+131041
+131049
+131056
+131061
+131065
+131069
+131070
+131071
+131070
+131069
+131065
+131061
+131056
+131049
+131041
+131032
+131021
+131009
+130996
+130982
+130967
+130950
+130932
+130913
+130893
+130871
+130848
+130824
+130799
+130773
+130745
+130716
+130686
+130654
+130622
+130588
+130553
+130516
+130479
+130440
+130400
+130359
+130316
+130272
+130227
+130181
+130134
+130085
+130035
+129984
+129932
+129879
+129824
+129768
+129711
+129652
+129593
+129532
+129470
+129407
+129342
+129276
+129209
+129141
+129072
+129001
+128930
+128857
+128782
+128707
+128630
+128553
+128473
+128393
+128312
+128229
+128145
+128060
+127974
+127886
+127798
+127708
+127617
+127524
+127431
+127336
+127240
+127143
+127045
+126945
+126844
+126743
+126639
+126535
+126430
+126323
+126215
+126106
+125996
+125885
+125772
+125658
+125543
+125427
+125310
+125191
+125072
+124951
+124829
+124706
+124581
+124456
+124329
+124201
+124072
+123942
+123810
+123678
+123544
+123409
+123273
+123136
+122997
+122858
+122717
+122575
+122432
+122288
+122143
+121997
+121849
+121700
+121550
+121399
+121247
+121094
+120939
+120784
+120627
+120469
+120310
+120150
+119989
+119826
+119663
+119498
+119332
+119166
+118998
+118828
+118658
+118487
+118314
+118141
+117966
+117790
+117613
+117435
+117256
+117076
+116894
+116712
+116528
+116344
+116158
+115971
+115783
+115594
+115404
+115213
+115021
+114827
+114633
+114437
+114241
+114043
+113844
+113645
+113444
+113242
+113039
+112835
+112630
+112423
+112216
+112008
+111798
+111588
+111377
+111164
+110950
+110736
+110520
+110303
+110086
+109867
+109647
+109426
+109204
+108982
+108758
+108533
+108307
+108080
+107852
+107623
+107393
+107162
+106930
+106697
+106462
+106227
+105991
+105754
+105516
+105277
+105037
+104796
+104554
+104311
+104067
+103822
+103576
+103329
+103081
+102833
+102583
+102332
+102080
+101828
+101574
+101319
+101064
+100807
+100550
+100291
+100032
+99772
+99510
+99248
+98985
+98721
+98456
+98190
+97923
+97655
+97387
+97117
+96847
+96575
+96303
+96030
+95756
+95481
+95205
+94928
+94650
+94371
+94092
+93812
+93530
+93248
+92965
+92681
+92396
+92111
+91824
+91537
+91249
+90960
+90670
+90379
+90087
+89795
+89501
+89207
+88912
+88616
+88319
+88022
+87724
+87424
+87124
+86823
+86522
+86219
+85916
+85612
+85307
+85001
+84695
+84388
+84080
+83771
+83461
+83151
+82839
+82527
+82215
+81901
+81587
+81272
+80956
+80639
+80322
+80003
+79685
+79365
+79045
+78723
+78402
+78079
+77756
+77431
+77107
+76781
+76455
+76128
+75800
+75472
+75143
+74813
+74482
+74151
+73819
+73486
+73153
+72819
+72484
+72149
+71813
+71476
+71139
+70801
+70462
+70123
+69783
+69442
+69101
+68758
+68416
+68073
+67729
+67384
+67039
+66693
+66346
+65999
+65652
+65303
+64954
+64605
+64254
+63904
+63552
+63200
+62848
+62495
+62141
+61786
+61432
+61076
+60720
+60363
+60006
+59648
+59290
+58931
+58572
+58212
+57851
+57490
+57128
+56766
+56403
+56040
+55676
+55312
+54947
+54582
+54216
+53850
+53483
+53115
+52748
+52379
+52010
+51641
+51271
+50901
+50530
+50159
+49787
+49415
+49042
+48669
+48295
+47921
+47547
+47172
+46796
+46421
+46044
+45668
+45290
+44913
+44535
+44156
+43778
+43398
+43019
+42639
+42258
+41877
+41496
+41115
+40733
+40350
+39967
+39584
+39201
+38817
+38433
+38048
+37663
+37278
+36892
+36506
+36119
+35733
+35346
+34958
+34571
+34183
+33794
+33405
+33016
+32627
+32238
+31848
+31457
+31067
+30676
+30285
+29894
+29502
+29110
+28718
+28325
+27933
+27540
+27146
+26753
+26359
+25965
+25571
+25176
+24781
+24386
+23991
+23596
+23200
+22804
+22408
+22012
+21615
+21219
+20822
+20425
+20027
+19630
+19232
+18834
+18436
+18038
+17640
+17241
+16842
+16444
+16044
+15645
+15246
+14847
+14447
+14047
+13647
+13247
+12847
+12447
+12047
+11646
+11246
+10845
+10444
+10043
+9642
+9241
+8840
+8439
+8037
+7636
+7234
+6833
+6431
+6030
+5628
+5226
+4824
+4422
+4021
+3619
+3217
+2815
+2413
+2011
+1608
+1206
+804
+402
+0
+-402
+-804
+-1206
+-1608
+-2011
+-2413
+-2815
+-3217
+-3619
+-4021
+-4422
+-4824
+-5226
+-5628
+-6030
+-6431
+-6833
+-7234
+-7636
+-8037
+-8439
+-8840
+-9241
+-9642
+-10043
+-10444
+-10845
+-11246
+-11646
+-12047
+-12447
+-12847
+-13247
+-13647
+-14047
+-14447
+-14847
+-15246
+-15645
+-16044
+-16444
+-16842
+-17241
+-17640
+-18038
+-18436
+-18834
+-19232
+-19630
+-20027
+-20425
+-20822
+-21219
+-21615
+-22012
+-22408
+-22804
+-23200
+-23596
+-23991
+-24386
+-24781
+-25176
+-25571
+-25965
+-26359
+-26753
+-27146
+-27540
+-27933
+-28325
+-28718
+-29110
+-29502
+-29894
+-30285
+-30676
+-31067
+-31457
+-31848
+-32238
+-32627
+-33016
+-33405
+-33794
+-34183
+-34571
+-34958
+-35346
+-35733
+-36119
+-36506
+-36892
+-37278
+-37663
+-38048
+-38433
+-38817
+-39201
+-39584
+-39967
+-40350
+-40733
+-41115
+-41496
+-41877
+-42258
+-42639
+-43019
+-43398
+-43778
+-44156
+-44535
+-44913
+-45290
+-45668
+-46044
+-46421
+-46796
+-47172
+-47547
+-47921
+-48295
+-48669
+-49042
+-49415
+-49787
+-50159
+-50530
+-50901
+-51271
+-51641
+-52010
+-52379
+-52748
+-53115
+-53483
+-53850
+-54216
+-54582
+-54947
+-55312
+-55676
+-56040
+-56403
+-56766
+-57128
+-57490
+-57851
+-58212
+-58572
+-58931
+-59290
+-59648
+-60006
+-60363
+-60720
+-61076
+-61432
+-61786
+-62141
+-62495
+-62848
+-63200
+-63552
+-63904
+-64254
+-64605
+-64954
+-65303
+-65652
+-65999
+-66346
+-66693
+-67039
+-67384
+-67729
+-68073
+-68416
+-68758
+-69101
+-69442
+-69783
+-70123
+-70462
+-70801
+-71139
+-71476
+-71813
+-72149
+-72484
+-72819
+-73153
+-73486
+-73819
+-74151
+-74482
+-74813
+-75143
+-75472
+-75800
+-76128
+-76455
+-76781
+-77107
+-77431
+-77756
+-78079
+-78402
+-78723
+-79045
+-79365
+-79685
+-80003
+-80322
+-80639
+-80956
+-81272
+-81587
+-81901
+-82215
+-82527
+-82839
+-83151
+-83461
+-83771
+-84080
+-84388
+-84695
+-85001
+-85307
+-85612
+-85916
+-86219
+-86522
+-86823
+-87124
+-87424
+-87724
+-88022
+-88319
+-88616
+-88912
+-89207
+-89501
+-89795
+-90087
+-90379
+-90670
+-90960
+-91249
+-91537
+-91824
+-92111
+-92396
+-92681
+-92965
+-93248
+-93530
+-93812
+-94092
+-94371
+-94650
+-94928
+-95205
+-95481
+-95756
+-96030
+-96303
+-96575
+-96847
+-97117
+-97387
+-97655
+-97923
+-98190
+-98456
+-98721
+-98985
+-99248
+-99510
+-99772
+-100032
+-100291
+-100550
+-100807
+-101064
+-101319
+-101574
+-101828
+-102080
+-102332
+-102583
+-102833
+-103081
+-103329
+-103576
+-103822
+-104067
+-104311
+-104554
+-104796
+-105037
+-105277
+-105516
+-105754
+-105991
+-106227
+-106462
+-106697
+-106930
+-107162
+-107393
+-107623
+-107852
+-108080
+-108307
+-108533
+-108758
+-108982
+-109204
+-109426
+-109647
+-109867
+-110086
+-110303
+-110520
+-110736
+-110950
+-111164
+-111377
+-111588
+-111798
+-112008
+-112216
+-112423
+-112630
+-112835
+-113039
+-113242
+-113444
+-113645
+-113844
+-114043
+-114241
+-114437
+-114633
+-114827
+-115021
+-115213
+-115404
+-115594
+-115783
+-115971
+-116158
+-116344
+-116528
+-116712
+-116894
+-117076
+-117256
+-117435
+-117613
+-117790
+-117966
+-118141
+-118314
+-118487
+-118658
+-118828
+-118998
+-119166
+-119332
+-119498
+-119663
+-119826
+-119989
+-120150
+-120310
+-120469
+-120627
+-120784
+-120939
+-121094
+-121247
+-121399
+-121550
+-121700
+-121849
+-121997
+-122143
+-122288
+-122432
+-122575
+-122717
+-122858
+-122997
+-123136
+-123273
+-123409
+-123544
+-123678
+-123810
+-123942
+-124072
+-124201
+-124329
+-124456
+-124581
+-124706
+-124829
+-124951
+-125072
+-125191
+-125310
+-125427
+-125543
+-125658
+-125772
+-125885
+-125996
+-126106
+-126215
+-126323
+-126430
+-126535
+-126639
+-126743
+-126844
+-126945
+-127045
+-127143
+-127240
+-127336
+-127431
+-127524
+-127617
+-127708
+-127798
+-127886
+-127974
+-128060
+-128145
+-128229
+-128312
+-128393
+-128473
+-128553
+-128630
+-128707
+-128782
+-128857
+-128930
+-129001
+-129072
+-129141
+-129209
+-129276
+-129342
+-129407
+-129470
+-129532
+-129593
+-129652
+-129711
+-129768
+-129824
+-129879
+-129932
+-129984
+-130035
+-130085
+-130134
+-130181
+-130227
+-130272
+-130316
+-130359
+-130400
+-130440
+-130479
+-130516
+-130553
+-130588
+-130622
+-130654
+-130686
+-130716
+-130745
+-130773
+-130799
+-130824
+-130848
+-130871
+-130893
+-130913
+-130932
+-130950
+-130967
+-130982
+-130996
+-131009
+-131021
+-131032
+-131041
+-131049
+-131056
+-131061
+-131065
+-131069
+-131070
+-131071
+-131070
+-131069
+-131065
+-131061
+-131056
+-131049
+-131041
+-131032
+-131021
+-131009
+-130996
+-130982
+-130967
+-130950
+-130932
+-130913
+-130893
+-130871
+-130848
+-130824
+-130799
+-130773
+-130745
+-130716
+-130686
+-130654
+-130622
+-130588
+-130553
+-130516
+-130479
+-130440
+-130400
+-130359
+-130316
+-130272
+-130227
+-130181
+-130134
+-130085
+-130035
+-129984
+-129932
+-129879
+-129824
+-129768
+-129711
+-129652
+-129593
+-129532
+-129470
+-129407
+-129342
+-129276
+-129209
+-129141
+-129072
+-129001
+-128930
+-128857
+-128782
+-128707
+-128630
+-128553
+-128473
+-128393
+-128312
+-128229
+-128145
+-128060
+-127974
+-127886
+-127798
+-127708
+-127617
+-127524
+-127431
+-127336
+-127240
+-127143
+-127045
+-126945
+-126844
+-126743
+-126639
+-126535
+-126430
+-126323
+-126215
+-126106
+-125996
+-125885
+-125772
+-125658
+-125543
+-125427
+-125310
+-125191
+-125072
+-124951
+-124829
+-124706
+-124581
+-124456
+-124329
+-124201
+-124072
+-123942
+-123810
+-123678
+-123544
+-123409
+-123273
+-123136
+-122997
+-122858
+-122717
+-122575
+-122432
+-122288
+-122143
+-121997
+-121849
+-121700
+-121550
+-121399
+-121247
+-121094
+-120939
+-120784
+-120627
+-120469
+-120310
+-120150
+-119989
+-119826
+-119663
+-119498
+-119332
+-119166
+-118998
+-118828
+-118658
+-118487
+-118314
+-118141
+-117966
+-117790
+-117613
+-117435
+-117256
+-117076
+-116894
+-116712
+-116528
+-116344
+-116158
+-115971
+-115783
+-115594
+-115404
+-115213
+-115021
+-114827
+-114633
+-114437
+-114241
+-114043
+-113844
+-113645
+-113444
+-113242
+-113039
+-112835
+-112630
+-112423
+-112216
+-112008
+-111798
+-111588
+-111377
+-111164
+-110950
+-110736
+-110520
+-110303
+-110086
+-109867
+-109647
+-109426
+-109204
+-108982
+-108758
+-108533
+-108307
+-108080
+-107852
+-107623
+-107393
+-107162
+-106930
+-106697
+-106462
+-106227
+-105991
+-105754
+-105516
+-105277
+-105037
+-104796
+-104554
+-104311
+-104067
+-103822
+-103576
+-103329
+-103081
+-102833
+-102583
+-102332
+-102080
+-101828
+-101574
+-101319
+-101064
+-100807
+-100550
+-100291
+-100032
+-99772
+-99510
+-99248
+-98985
+-98721
+-98456
+-98190
+-97923
+-97655
+-97387
+-97117
+-96847
+-96575
+-96303
+-96030
+-95756
+-95481
+-95205
+-94928
+-94650
+-94371
+-94092
+-93812
+-93530
+-93248
+-92965
+-92681
+-92396
+-92111
+-91824
+-91537
+-91249
+-90960
+-90670
+-90379
+-90087
+-89795
+-89501
+-89207
+-88912
+-88616
+-88319
+-88022
+-87724
+-87424
+-87124
+-86823
+-86522
+-86219
+-85916
+-85612
+-85307
+-85001
+-84695
+-84388
+-84080
+-83771
+-83461
+-83151
+-82839
+-82527
+-82215
+-81901
+-81587
+-81272
+-80956
+-80639
+-80322
+-80003
+-79685
+-79365
+-79045
+-78723
+-78402
+-78079
+-77756
+-77431
+-77107
+-76781
+-76455
+-76128
+-75800
+-75472
+-75143
+-74813
+-74482
+-74151
+-73819
+-73486
+-73153
+-72819
+-72484
+-72149
+-71813
+-71476
+-71139
+-70801
+-70462
+-70123
+-69783
+-69442
+-69101
+-68758
+-68416
+-68073
+-67729
+-67384
+-67039
+-66693
+-66346
+-65999
+-65652
+-65303
+-64954
+-64605
+-64254
+-63904
+-63552
+-63200
+-62848
+-62495
+-62141
+-61786
+-61432
+-61076
+-60720
+-60363
+-60006
+-59648
+-59290
+-58931
+-58572
+-58212
+-57851
+-57490
+-57128
+-56766
+-56403
+-56040
+-55676
+-55312
+-54947
+-54582
+-54216
+-53850
+-53483
+-53115
+-52748
+-52379
+-52010
+-51641
+-51271
+-50901
+-50530
+-50159
+-49787
+-49415
+-49042
+-48669
+-48295
+-47921
+-47547
+-47172
+-46796
+-46421
+-46044
+-45668
+-45290
+-44913
+-44535
+-44156
+-43778
+-43398
+-43019
+-42639
+-42258
+-41877
+-41496
+-41115
+-40733
+-40350
+-39967
+-39584
+-39201
+-38817
+-38433
+-38048
+-37663
+-37278
+-36892
+-36506
+-36119
+-35733
+-35346
+-34958
+-34571
+-34183
+-33794
+-33405
+-33016
+-32627
+-32238
+-31848
+-31457
+-31067
+-30676
+-30285
+-29894
+-29502
+-29110
+-28718
+-28325
+-27933
+-27540
+-27146
+-26753
+-26359
+-25965
+-25571
+-25176
+-24781
+-24386
+-23991
+-23596
+-23200
+-22804
+-22408
+-22012
+-21615
+-21219
+-20822
+-20425
+-20027
+-19630
+-19232
+-18834
+-18436
+-18038
+-17640
+-17241
+-16842
+-16444
+-16044
+-15645
+-15246
+-14847
+-14447
+-14047
+-13647
+-13247
+-12847
+-12447
+-12047
+-11646
+-11246
+-10845
+-10444
+-10043
+-9642
+-9241
+-8840
+-8439
+-8037
+-7636
+-7234
+-6833
+-6431
+-6030
+-5628
+-5226
+-4824
+-4422
+-4021
+-3619
+-3217
+-2815
+-2413
+-2011
+-1608
+-1206
+-804
+-402
diff --git a/libraries/base/diag/src/data/tcl_sin_1024x8.txt b/libraries/base/diag/src/data/tcl_sin_1024x8.txt
new file mode 100644
index 0000000000..fd52aafcb4
--- /dev/null
+++ b/libraries/base/diag/src/data/tcl_sin_1024x8.txt
@@ -0,0 +1,1024 @@
+0
+1
+2
+2
+3
+4
+5
+5
+6
+7
+8
+9
+9
+10
+11
+12
+12
+13
+14
+15
+16
+16
+17
+18
+19
+19
+20
+21
+22
+22
+23
+24
+25
+26
+26
+27
+28
+29
+29
+30
+31
+32
+32
+33
+34
+35
+35
+36
+37
+38
+38
+39
+40
+41
+41
+42
+43
+44
+44
+45
+46
+46
+47
+48
+49
+49
+50
+51
+51
+52
+53
+54
+54
+55
+56
+56
+57
+58
+58
+59
+60
+61
+61
+62
+63
+63
+64
+65
+65
+66
+67
+67
+68
+69
+69
+70
+71
+71
+72
+72
+73
+74
+74
+75
+76
+76
+77
+78
+78
+79
+79
+80
+81
+81
+82
+82
+83
+84
+84
+85
+85
+86
+86
+87
+88
+88
+89
+89
+90
+90
+91
+91
+92
+93
+93
+94
+94
+95
+95
+96
+96
+97
+97
+98
+98
+99
+99
+100
+100
+101
+101
+102
+102
+102
+103
+103
+104
+104
+105
+105
+106
+106
+106
+107
+107
+108
+108
+109
+109
+109
+110
+110
+111
+111
+111
+112
+112
+112
+113
+113
+113
+114
+114
+114
+115
+115
+115
+116
+116
+116
+117
+117
+117
+118
+118
+118
+118
+119
+119
+119
+120
+120
+120
+120
+121
+121
+121
+121
+122
+122
+122
+122
+122
+123
+123
+123
+123
+123
+124
+124
+124
+124
+124
+124
+125
+125
+125
+125
+125
+125
+125
+126
+126
+126
+126
+126
+126
+126
+126
+126
+126
+126
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+126
+126
+126
+126
+126
+126
+126
+126
+126
+126
+126
+125
+125
+125
+125
+125
+125
+125
+124
+124
+124
+124
+124
+124
+123
+123
+123
+123
+123
+122
+122
+122
+122
+122
+121
+121
+121
+121
+120
+120
+120
+120
+119
+119
+119
+118
+118
+118
+118
+117
+117
+117
+116
+116
+116
+115
+115
+115
+114
+114
+114
+113
+113
+113
+112
+112
+112
+111
+111
+111
+110
+110
+109
+109
+109
+108
+108
+107
+107
+106
+106
+106
+105
+105
+104
+104
+103
+103
+102
+102
+102
+101
+101
+100
+100
+99
+99
+98
+98
+97
+97
+96
+96
+95
+95
+94
+94
+93
+93
+92
+91
+91
+90
+90
+89
+89
+88
+88
+87
+86
+86
+85
+85
+84
+84
+83
+82
+82
+81
+81
+80
+79
+79
+78
+78
+77
+76
+76
+75
+74
+74
+73
+72
+72
+71
+71
+70
+69
+69
+68
+67
+67
+66
+65
+65
+64
+63
+63
+62
+61
+61
+60
+59
+58
+58
+57
+56
+56
+55
+54
+54
+53
+52
+51
+51
+50
+49
+49
+48
+47
+46
+46
+45
+44
+44
+43
+42
+41
+41
+40
+39
+38
+38
+37
+36
+35
+35
+34
+33
+32
+32
+31
+30
+29
+29
+28
+27
+26
+26
+25
+24
+23
+22
+22
+21
+20
+19
+19
+18
+17
+16
+16
+15
+14
+13
+12
+12
+11
+10
+9
+9
+8
+7
+6
+5
+5
+4
+3
+2
+2
+1
+0
+-1
+-2
+-2
+-3
+-4
+-5
+-5
+-6
+-7
+-8
+-9
+-9
+-10
+-11
+-12
+-12
+-13
+-14
+-15
+-16
+-16
+-17
+-18
+-19
+-19
+-20
+-21
+-22
+-22
+-23
+-24
+-25
+-26
+-26
+-27
+-28
+-29
+-29
+-30
+-31
+-32
+-32
+-33
+-34
+-35
+-35
+-36
+-37
+-38
+-38
+-39
+-40
+-41
+-41
+-42
+-43
+-44
+-44
+-45
+-46
+-46
+-47
+-48
+-49
+-49
+-50
+-51
+-51
+-52
+-53
+-54
+-54
+-55
+-56
+-56
+-57
+-58
+-58
+-59
+-60
+-61
+-61
+-62
+-63
+-63
+-64
+-65
+-65
+-66
+-67
+-67
+-68
+-69
+-69
+-70
+-71
+-71
+-72
+-72
+-73
+-74
+-74
+-75
+-76
+-76
+-77
+-78
+-78
+-79
+-79
+-80
+-81
+-81
+-82
+-82
+-83
+-84
+-84
+-85
+-85
+-86
+-86
+-87
+-88
+-88
+-89
+-89
+-90
+-90
+-91
+-91
+-92
+-93
+-93
+-94
+-94
+-95
+-95
+-96
+-96
+-97
+-97
+-98
+-98
+-99
+-99
+-100
+-100
+-101
+-101
+-102
+-102
+-102
+-103
+-103
+-104
+-104
+-105
+-105
+-106
+-106
+-106
+-107
+-107
+-108
+-108
+-109
+-109
+-109
+-110
+-110
+-111
+-111
+-111
+-112
+-112
+-112
+-113
+-113
+-113
+-114
+-114
+-114
+-115
+-115
+-115
+-116
+-116
+-116
+-117
+-117
+-117
+-118
+-118
+-118
+-118
+-119
+-119
+-119
+-120
+-120
+-120
+-120
+-121
+-121
+-121
+-121
+-122
+-122
+-122
+-122
+-122
+-123
+-123
+-123
+-123
+-123
+-124
+-124
+-124
+-124
+-124
+-124
+-125
+-125
+-125
+-125
+-125
+-125
+-125
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-127
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-126
+-125
+-125
+-125
+-125
+-125
+-125
+-125
+-124
+-124
+-124
+-124
+-124
+-124
+-123
+-123
+-123
+-123
+-123
+-122
+-122
+-122
+-122
+-122
+-121
+-121
+-121
+-121
+-120
+-120
+-120
+-120
+-119
+-119
+-119
+-118
+-118
+-118
+-118
+-117
+-117
+-117
+-116
+-116
+-116
+-115
+-115
+-115
+-114
+-114
+-114
+-113
+-113
+-113
+-112
+-112
+-112
+-111
+-111
+-111
+-110
+-110
+-109
+-109
+-109
+-108
+-108
+-107
+-107
+-106
+-106
+-106
+-105
+-105
+-104
+-104
+-103
+-103
+-102
+-102
+-102
+-101
+-101
+-100
+-100
+-99
+-99
+-98
+-98
+-97
+-97
+-96
+-96
+-95
+-95
+-94
+-94
+-93
+-93
+-92
+-91
+-91
+-90
+-90
+-89
+-89
+-88
+-88
+-87
+-86
+-86
+-85
+-85
+-84
+-84
+-83
+-82
+-82
+-81
+-81
+-80
+-79
+-79
+-78
+-78
+-77
+-76
+-76
+-75
+-74
+-74
+-73
+-72
+-72
+-71
+-71
+-70
+-69
+-69
+-68
+-67
+-67
+-66
+-65
+-65
+-64
+-63
+-63
+-62
+-61
+-61
+-60
+-59
+-58
+-58
+-57
+-56
+-56
+-55
+-54
+-54
+-53
+-52
+-51
+-51
+-50
+-49
+-49
+-48
+-47
+-46
+-46
+-45
+-44
+-44
+-43
+-42
+-41
+-41
+-40
+-39
+-38
+-38
+-37
+-36
+-35
+-35
+-34
+-33
+-32
+-32
+-31
+-30
+-29
+-29
+-28
+-27
+-26
+-26
+-25
+-24
+-23
+-22
+-22
+-21
+-20
+-19
+-19
+-18
+-17
+-16
+-16
+-15
+-14
+-13
+-12
+-12
+-11
+-10
+-9
+-9
+-8
+-7
+-6
+-5
+-5
+-4
+-3
+-2
+-2
+-1
diff --git a/libraries/base/diag/src/data/tcl_sin_1024x8.uns b/libraries/base/diag/src/data/tcl_sin_1024x8.uns
new file mode 100644
index 0000000000..b31aa3a6ec
--- /dev/null
+++ b/libraries/base/diag/src/data/tcl_sin_1024x8.uns
@@ -0,0 +1,1024 @@
+0
+1
+2
+2
+3
+4
+5
+5
+6
+7
+8
+9
+9
+10
+11
+12
+12
+13
+14
+15
+16
+16
+17
+18
+19
+19
+20
+21
+22
+22
+23
+24
+25
+26
+26
+27
+28
+29
+29
+30
+31
+32
+32
+33
+34
+35
+35
+36
+37
+38
+38
+39
+40
+41
+41
+42
+43
+44
+44
+45
+46
+46
+47
+48
+49
+49
+50
+51
+51
+52
+53
+54
+54
+55
+56
+56
+57
+58
+58
+59
+60
+61
+61
+62
+63
+63
+64
+65
+65
+66
+67
+67
+68
+69
+69
+70
+71
+71
+72
+72
+73
+74
+74
+75
+76
+76
+77
+78
+78
+79
+79
+80
+81
+81
+82
+82
+83
+84
+84
+85
+85
+86
+86
+87
+88
+88
+89
+89
+90
+90
+91
+91
+92
+93
+93
+94
+94
+95
+95
+96
+96
+97
+97
+98
+98
+99
+99
+100
+100
+101
+101
+102
+102
+102
+103
+103
+104
+104
+105
+105
+106
+106
+106
+107
+107
+108
+108
+109
+109
+109
+110
+110
+111
+111
+111
+112
+112
+112
+113
+113
+113
+114
+114
+114
+115
+115
+115
+116
+116
+116
+117
+117
+117
+118
+118
+118
+118
+119
+119
+119
+120
+120
+120
+120
+121
+121
+121
+121
+122
+122
+122
+122
+122
+123
+123
+123
+123
+123
+124
+124
+124
+124
+124
+124
+125
+125
+125
+125
+125
+125
+125
+126
+126
+126
+126
+126
+126
+126
+126
+126
+126
+126
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+127
+126
+126
+126
+126
+126
+126
+126
+126
+126
+126
+126
+125
+125
+125
+125
+125
+125
+125
+124
+124
+124
+124
+124
+124
+123
+123
+123
+123
+123
+122
+122
+122
+122
+122
+121
+121
+121
+121
+120
+120
+120
+120
+119
+119
+119
+118
+118
+118
+118
+117
+117
+117
+116
+116
+116
+115
+115
+115
+114
+114
+114
+113
+113
+113
+112
+112
+112
+111
+111
+111
+110
+110
+109
+109
+109
+108
+108
+107
+107
+106
+106
+106
+105
+105
+104
+104
+103
+103
+102
+102
+102
+101
+101
+100
+100
+99
+99
+98
+98
+97
+97
+96
+96
+95
+95
+94
+94
+93
+93
+92
+91
+91
+90
+90
+89
+89
+88
+88
+87
+86
+86
+85
+85
+84
+84
+83
+82
+82
+81
+81
+80
+79
+79
+78
+78
+77
+76
+76
+75
+74
+74
+73
+72
+72
+71
+71
+70
+69
+69
+68
+67
+67
+66
+65
+65
+64
+63
+63
+62
+61
+61
+60
+59
+58
+58
+57
+56
+56
+55
+54
+54
+53
+52
+51
+51
+50
+49
+49
+48
+47
+46
+46
+45
+44
+44
+43
+42
+41
+41
+40
+39
+38
+38
+37
+36
+35
+35
+34
+33
+32
+32
+31
+30
+29
+29
+28
+27
+26
+26
+25
+24
+23
+22
+22
+21
+20
+19
+19
+18
+17
+16
+16
+15
+14
+13
+12
+12
+11
+10
+9
+9
+8
+7
+6
+5
+5
+4
+3
+2
+2
+1
+0
+255
+254
+254
+253
+252
+251
+251
+250
+249
+248
+247
+247
+246
+245
+244
+244
+243
+242
+241
+240
+240
+239
+238
+237
+237
+236
+235
+234
+234
+233
+232
+231
+230
+230
+229
+228
+227
+227
+226
+225
+224
+224
+223
+222
+221
+221
+220
+219
+218
+218
+217
+216
+215
+215
+214
+213
+212
+212
+211
+210
+210
+209
+208
+207
+207
+206
+205
+205
+204
+203
+202
+202
+201
+200
+200
+199
+198
+198
+197
+196
+195
+195
+194
+193
+193
+192
+191
+191
+190
+189
+189
+188
+187
+187
+186
+185
+185
+184
+184
+183
+182
+182
+181
+180
+180
+179
+178
+178
+177
+177
+176
+175
+175
+174
+174
+173
+172
+172
+171
+171
+170
+170
+169
+168
+168
+167
+167
+166
+166
+165
+165
+164
+163
+163
+162
+162
+161
+161
+160
+160
+159
+159
+158
+158
+157
+157
+156
+156
+155
+155
+154
+154
+154
+153
+153
+152
+152
+151
+151
+150
+150
+150
+149
+149
+148
+148
+147
+147
+147
+146
+146
+145
+145
+145
+144
+144
+144
+143
+143
+143
+142
+142
+142
+141
+141
+141
+140
+140
+140
+139
+139
+139
+138
+138
+138
+138
+137
+137
+137
+136
+136
+136
+136
+135
+135
+135
+135
+134
+134
+134
+134
+134
+133
+133
+133
+133
+133
+132
+132
+132
+132
+132
+132
+131
+131
+131
+131
+131
+131
+131
+130
+130
+130
+130
+130
+130
+130
+130
+130
+130
+130
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+129
+130
+130
+130
+130
+130
+130
+130
+130
+130
+130
+130
+131
+131
+131
+131
+131
+131
+131
+132
+132
+132
+132
+132
+132
+133
+133
+133
+133
+133
+134
+134
+134
+134
+134
+135
+135
+135
+135
+136
+136
+136
+136
+137
+137
+137
+138
+138
+138
+138
+139
+139
+139
+140
+140
+140
+141
+141
+141
+142
+142
+142
+143
+143
+143
+144
+144
+144
+145
+145
+145
+146
+146
+147
+147
+147
+148
+148
+149
+149
+150
+150
+150
+151
+151
+152
+152
+153
+153
+154
+154
+154
+155
+155
+156
+156
+157
+157
+158
+158
+159
+159
+160
+160
+161
+161
+162
+162
+163
+163
+164
+165
+165
+166
+166
+167
+167
+168
+168
+169
+170
+170
+171
+171
+172
+172
+173
+174
+174
+175
+175
+176
+177
+177
+178
+178
+179
+180
+180
+181
+182
+182
+183
+184
+184
+185
+185
+186
+187
+187
+188
+189
+189
+190
+191
+191
+192
+193
+193
+194
+195
+195
+196
+197
+198
+198
+199
+200
+200
+201
+202
+202
+203
+204
+205
+205
+206
+207
+207
+208
+209
+210
+210
+211
+212
+212
+213
+214
+215
+215
+216
+217
+218
+218
+219
+220
+221
+221
+222
+223
+224
+224
+225
+226
+227
+227
+228
+229
+230
+230
+231
+232
+233
+234
+234
+235
+236
+237
+237
+238
+239
+240
+240
+241
+242
+243
+244
+244
+245
+246
+247
+247
+248
+249
+250
+251
+251
+252
+253
+254
+254
+255
diff --git a/libraries/base/diag/src/data/tcl_sin_2048x18.txt b/libraries/base/diag/src/data/tcl_sin_2048x18.txt
new file mode 100644
index 0000000000..6de97b19b8
--- /dev/null
+++ b/libraries/base/diag/src/data/tcl_sin_2048x18.txt
@@ -0,0 +1,2048 @@
+0
+402
+804
+1206
+1608
+2011
+2413
+2815
+3217
+3619
+4021
+4422
+4824
+5226
+5628
+6030
+6431
+6833
+7234
+7636
+8037
+8439
+8840
+9241
+9642
+10043
+10444
+10845
+11246
+11646
+12047
+12447
+12847
+13247
+13647
+14047
+14447
+14847
+15246
+15645
+16044
+16444
+16842
+17241
+17640
+18038
+18436
+18834
+19232
+19630
+20027
+20425
+20822
+21219
+21615
+22012
+22408
+22804
+23200
+23596
+23991
+24386
+24781
+25176
+25571
+25965
+26359
+26753
+27146
+27540
+27933
+28325
+28718
+29110
+29502
+29894
+30285
+30676
+31067
+31457
+31848
+32238
+32627
+33016
+33405
+33794
+34183
+34571
+34958
+35346
+35733
+36119
+36506
+36892
+37278
+37663
+38048
+38433
+38817
+39201
+39584
+39967
+40350
+40733
+41115
+41496
+41877
+42258
+42639
+43019
+43398
+43778
+44156
+44535
+44913
+45290
+45668
+46044
+46421
+46796
+47172
+47547
+47921
+48295
+48669
+49042
+49415
+49787
+50159
+50530
+50901
+51271
+51641
+52010
+52379
+52748
+53115
+53483
+53850
+54216
+54582
+54947
+55312
+55676
+56040
+56403
+56766
+57128
+57490
+57851
+58212
+58572
+58931
+59290
+59648
+60006
+60363
+60720
+61076
+61432
+61786
+62141
+62495
+62848
+63200
+63552
+63904
+64254
+64605
+64954
+65303
+65652
+65999
+66346
+66693
+67039
+67384
+67729
+68073
+68416
+68758
+69101
+69442
+69783
+70123
+70462
+70801
+71139
+71476
+71813
+72149
+72484
+72819
+73153
+73486
+73819
+74151
+74482
+74813
+75143
+75472
+75800
+76128
+76455
+76781
+77107
+77431
+77756
+78079
+78402
+78723
+79045
+79365
+79685
+80003
+80322
+80639
+80956
+81272
+81587
+81901
+82215
+82527
+82839
+83151
+83461
+83771
+84080
+84388
+84695
+85001
+85307
+85612
+85916
+86219
+86522
+86823
+87124
+87424
+87724
+88022
+88319
+88616
+88912
+89207
+89501
+89795
+90087
+90379
+90670
+90960
+91249
+91537
+91824
+92111
+92396
+92681
+92965
+93248
+93530
+93812
+94092
+94371
+94650
+94928
+95205
+95481
+95756
+96030
+96303
+96575
+96847
+97117
+97387
+97655
+97923
+98190
+98456
+98721
+98985
+99248
+99510
+99772
+100032
+100291
+100550
+100807
+101064
+101319
+101574
+101828
+102080
+102332
+102583
+102833
+103081
+103329
+103576
+103822
+104067
+104311
+104554
+104796
+105037
+105277
+105516
+105754
+105991
+106227
+106462
+106697
+106930
+107162
+107393
+107623
+107852
+108080
+108307
+108533
+108758
+108982
+109204
+109426
+109647
+109867
+110086
+110303
+110520
+110736
+110950
+111164
+111377
+111588
+111798
+112008
+112216
+112423
+112630
+112835
+113039
+113242
+113444
+113645
+113844
+114043
+114241
+114437
+114633
+114827
+115021
+115213
+115404
+115594
+115783
+115971
+116158
+116344
+116528
+116712
+116894
+117076
+117256
+117435
+117613
+117790
+117966
+118141
+118314
+118487
+118658
+118828
+118998
+119166
+119332
+119498
+119663
+119826
+119989
+120150
+120310
+120469
+120627
+120784
+120939
+121094
+121247
+121399
+121550
+121700
+121849
+121997
+122143
+122288
+122432
+122575
+122717
+122858
+122997
+123136
+123273
+123409
+123544
+123678
+123810
+123942
+124072
+124201
+124329
+124456
+124581
+124706
+124829
+124951
+125072
+125191
+125310
+125427
+125543
+125658
+125772
+125885
+125996
+126106
+126215
+126323
+126430
+126535
+126639
+126743
+126844
+126945
+127045
+127143
+127240
+127336
+127431
+127524
+127617
+127708
+127798
+127886
+127974
+128060
+128145
+128229
+128312
+128393
+128473
+128553
+128630
+128707
+128782
+128857
+128930
+129001
+129072
+129141
+129209
+129276
+129342
+129407
+129470
+129532
+129593
+129652
+129711
+129768
+129824
+129879
+129932
+129984
+130035
+130085
+130134
+130181
+130227
+130272
+130316
+130359
+130400
+130440
+130479
+130516
+130553
+130588
+130622
+130654
+130686
+130716
+130745
+130773
+130799
+130824
+130848
+130871
+130893
+130913
+130932
+130950
+130967
+130982
+130996
+131009
+131021
+131032
+131041
+131049
+131056
+131061
+131065
+131069
+131070
+131071
+131070
+131069
+131065
+131061
+131056
+131049
+131041
+131032
+131021
+131009
+130996
+130982
+130967
+130950
+130932
+130913
+130893
+130871
+130848
+130824
+130799
+130773
+130745
+130716
+130686
+130654
+130622
+130588
+130553
+130516
+130479
+130440
+130400
+130359
+130316
+130272
+130227
+130181
+130134
+130085
+130035
+129984
+129932
+129879
+129824
+129768
+129711
+129652
+129593
+129532
+129470
+129407
+129342
+129276
+129209
+129141
+129072
+129001
+128930
+128857
+128782
+128707
+128630
+128553
+128473
+128393
+128312
+128229
+128145
+128060
+127974
+127886
+127798
+127708
+127617
+127524
+127431
+127336
+127240
+127143
+127045
+126945
+126844
+126743
+126639
+126535
+126430
+126323
+126215
+126106
+125996
+125885
+125772
+125658
+125543
+125427
+125310
+125191
+125072
+124951
+124829
+124706
+124581
+124456
+124329
+124201
+124072
+123942
+123810
+123678
+123544
+123409
+123273
+123136
+122997
+122858
+122717
+122575
+122432
+122288
+122143
+121997
+121849
+121700
+121550
+121399
+121247
+121094
+120939
+120784
+120627
+120469
+120310
+120150
+119989
+119826
+119663
+119498
+119332
+119166
+118998
+118828
+118658
+118487
+118314
+118141
+117966
+117790
+117613
+117435
+117256
+117076
+116894
+116712
+116528
+116344
+116158
+115971
+115783
+115594
+115404
+115213
+115021
+114827
+114633
+114437
+114241
+114043
+113844
+113645
+113444
+113242
+113039
+112835
+112630
+112423
+112216
+112008
+111798
+111588
+111377
+111164
+110950
+110736
+110520
+110303
+110086
+109867
+109647
+109426
+109204
+108982
+108758
+108533
+108307
+108080
+107852
+107623
+107393
+107162
+106930
+106697
+106462
+106227
+105991
+105754
+105516
+105277
+105037
+104796
+104554
+104311
+104067
+103822
+103576
+103329
+103081
+102833
+102583
+102332
+102080
+101828
+101574
+101319
+101064
+100807
+100550
+100291
+100032
+99772
+99510
+99248
+98985
+98721
+98456
+98190
+97923
+97655
+97387
+97117
+96847
+96575
+96303
+96030
+95756
+95481
+95205
+94928
+94650
+94371
+94092
+93812
+93530
+93248
+92965
+92681
+92396
+92111
+91824
+91537
+91249
+90960
+90670
+90379
+90087
+89795
+89501
+89207
+88912
+88616
+88319
+88022
+87724
+87424
+87124
+86823
+86522
+86219
+85916
+85612
+85307
+85001
+84695
+84388
+84080
+83771
+83461
+83151
+82839
+82527
+82215
+81901
+81587
+81272
+80956
+80639
+80322
+80003
+79685
+79365
+79045
+78723
+78402
+78079
+77756
+77431
+77107
+76781
+76455
+76128
+75800
+75472
+75143
+74813
+74482
+74151
+73819
+73486
+73153
+72819
+72484
+72149
+71813
+71476
+71139
+70801
+70462
+70123
+69783
+69442
+69101
+68758
+68416
+68073
+67729
+67384
+67039
+66693
+66346
+65999
+65652
+65303
+64954
+64605
+64254
+63904
+63552
+63200
+62848
+62495
+62141
+61786
+61432
+61076
+60720
+60363
+60006
+59648
+59290
+58931
+58572
+58212
+57851
+57490
+57128
+56766
+56403
+56040
+55676
+55312
+54947
+54582
+54216
+53850
+53483
+53115
+52748
+52379
+52010
+51641
+51271
+50901
+50530
+50159
+49787
+49415
+49042
+48669
+48295
+47921
+47547
+47172
+46796
+46421
+46044
+45668
+45290
+44913
+44535
+44156
+43778
+43398
+43019
+42639
+42258
+41877
+41496
+41115
+40733
+40350
+39967
+39584
+39201
+38817
+38433
+38048
+37663
+37278
+36892
+36506
+36119
+35733
+35346
+34958
+34571
+34183
+33794
+33405
+33016
+32627
+32238
+31848
+31457
+31067
+30676
+30285
+29894
+29502
+29110
+28718
+28325
+27933
+27540
+27146
+26753
+26359
+25965
+25571
+25176
+24781
+24386
+23991
+23596
+23200
+22804
+22408
+22012
+21615
+21219
+20822
+20425
+20027
+19630
+19232
+18834
+18436
+18038
+17640
+17241
+16842
+16444
+16044
+15645
+15246
+14847
+14447
+14047
+13647
+13247
+12847
+12447
+12047
+11646
+11246
+10845
+10444
+10043
+9642
+9241
+8840
+8439
+8037
+7636
+7234
+6833
+6431
+6030
+5628
+5226
+4824
+4422
+4021
+3619
+3217
+2815
+2413
+2011
+1608
+1206
+804
+402
+0
+-402
+-804
+-1206
+-1608
+-2011
+-2413
+-2815
+-3217
+-3619
+-4021
+-4422
+-4824
+-5226
+-5628
+-6030
+-6431
+-6833
+-7234
+-7636
+-8037
+-8439
+-8840
+-9241
+-9642
+-10043
+-10444
+-10845
+-11246
+-11646
+-12047
+-12447
+-12847
+-13247
+-13647
+-14047
+-14447
+-14847
+-15246
+-15645
+-16044
+-16444
+-16842
+-17241
+-17640
+-18038
+-18436
+-18834
+-19232
+-19630
+-20027
+-20425
+-20822
+-21219
+-21615
+-22012
+-22408
+-22804
+-23200
+-23596
+-23991
+-24386
+-24781
+-25176
+-25571
+-25965
+-26359
+-26753
+-27146
+-27540
+-27933
+-28325
+-28718
+-29110
+-29502
+-29894
+-30285
+-30676
+-31067
+-31457
+-31848
+-32238
+-32627
+-33016
+-33405
+-33794
+-34183
+-34571
+-34958
+-35346
+-35733
+-36119
+-36506
+-36892
+-37278
+-37663
+-38048
+-38433
+-38817
+-39201
+-39584
+-39967
+-40350
+-40733
+-41115
+-41496
+-41877
+-42258
+-42639
+-43019
+-43398
+-43778
+-44156
+-44535
+-44913
+-45290
+-45668
+-46044
+-46421
+-46796
+-47172
+-47547
+-47921
+-48295
+-48669
+-49042
+-49415
+-49787
+-50159
+-50530
+-50901
+-51271
+-51641
+-52010
+-52379
+-52748
+-53115
+-53483
+-53850
+-54216
+-54582
+-54947
+-55312
+-55676
+-56040
+-56403
+-56766
+-57128
+-57490
+-57851
+-58212
+-58572
+-58931
+-59290
+-59648
+-60006
+-60363
+-60720
+-61076
+-61432
+-61786
+-62141
+-62495
+-62848
+-63200
+-63552
+-63904
+-64254
+-64605
+-64954
+-65303
+-65652
+-65999
+-66346
+-66693
+-67039
+-67384
+-67729
+-68073
+-68416
+-68758
+-69101
+-69442
+-69783
+-70123
+-70462
+-70801
+-71139
+-71476
+-71813
+-72149
+-72484
+-72819
+-73153
+-73486
+-73819
+-74151
+-74482
+-74813
+-75143
+-75472
+-75800
+-76128
+-76455
+-76781
+-77107
+-77431
+-77756
+-78079
+-78402
+-78723
+-79045
+-79365
+-79685
+-80003
+-80322
+-80639
+-80956
+-81272
+-81587
+-81901
+-82215
+-82527
+-82839
+-83151
+-83461
+-83771
+-84080
+-84388
+-84695
+-85001
+-85307
+-85612
+-85916
+-86219
+-86522
+-86823
+-87124
+-87424
+-87724
+-88022
+-88319
+-88616
+-88912
+-89207
+-89501
+-89795
+-90087
+-90379
+-90670
+-90960
+-91249
+-91537
+-91824
+-92111
+-92396
+-92681
+-92965
+-93248
+-93530
+-93812
+-94092
+-94371
+-94650
+-94928
+-95205
+-95481
+-95756
+-96030
+-96303
+-96575
+-96847
+-97117
+-97387
+-97655
+-97923
+-98190
+-98456
+-98721
+-98985
+-99248
+-99510
+-99772
+-100032
+-100291
+-100550
+-100807
+-101064
+-101319
+-101574
+-101828
+-102080
+-102332
+-102583
+-102833
+-103081
+-103329
+-103576
+-103822
+-104067
+-104311
+-104554
+-104796
+-105037
+-105277
+-105516
+-105754
+-105991
+-106227
+-106462
+-106697
+-106930
+-107162
+-107393
+-107623
+-107852
+-108080
+-108307
+-108533
+-108758
+-108982
+-109204
+-109426
+-109647
+-109867
+-110086
+-110303
+-110520
+-110736
+-110950
+-111164
+-111377
+-111588
+-111798
+-112008
+-112216
+-112423
+-112630
+-112835
+-113039
+-113242
+-113444
+-113645
+-113844
+-114043
+-114241
+-114437
+-114633
+-114827
+-115021
+-115213
+-115404
+-115594
+-115783
+-115971
+-116158
+-116344
+-116528
+-116712
+-116894
+-117076
+-117256
+-117435
+-117613
+-117790
+-117966
+-118141
+-118314
+-118487
+-118658
+-118828
+-118998
+-119166
+-119332
+-119498
+-119663
+-119826
+-119989
+-120150
+-120310
+-120469
+-120627
+-120784
+-120939
+-121094
+-121247
+-121399
+-121550
+-121700
+-121849
+-121997
+-122143
+-122288
+-122432
+-122575
+-122717
+-122858
+-122997
+-123136
+-123273
+-123409
+-123544
+-123678
+-123810
+-123942
+-124072
+-124201
+-124329
+-124456
+-124581
+-124706
+-124829
+-124951
+-125072
+-125191
+-125310
+-125427
+-125543
+-125658
+-125772
+-125885
+-125996
+-126106
+-126215
+-126323
+-126430
+-126535
+-126639
+-126743
+-126844
+-126945
+-127045
+-127143
+-127240
+-127336
+-127431
+-127524
+-127617
+-127708
+-127798
+-127886
+-127974
+-128060
+-128145
+-128229
+-128312
+-128393
+-128473
+-128553
+-128630
+-128707
+-128782
+-128857
+-128930
+-129001
+-129072
+-129141
+-129209
+-129276
+-129342
+-129407
+-129470
+-129532
+-129593
+-129652
+-129711
+-129768
+-129824
+-129879
+-129932
+-129984
+-130035
+-130085
+-130134
+-130181
+-130227
+-130272
+-130316
+-130359
+-130400
+-130440
+-130479
+-130516
+-130553
+-130588
+-130622
+-130654
+-130686
+-130716
+-130745
+-130773
+-130799
+-130824
+-130848
+-130871
+-130893
+-130913
+-130932
+-130950
+-130967
+-130982
+-130996
+-131009
+-131021
+-131032
+-131041
+-131049
+-131056
+-131061
+-131065
+-131069
+-131070
+-131071
+-131070
+-131069
+-131065
+-131061
+-131056
+-131049
+-131041
+-131032
+-131021
+-131009
+-130996
+-130982
+-130967
+-130950
+-130932
+-130913
+-130893
+-130871
+-130848
+-130824
+-130799
+-130773
+-130745
+-130716
+-130686
+-130654
+-130622
+-130588
+-130553
+-130516
+-130479
+-130440
+-130400
+-130359
+-130316
+-130272
+-130227
+-130181
+-130134
+-130085
+-130035
+-129984
+-129932
+-129879
+-129824
+-129768
+-129711
+-129652
+-129593
+-129532
+-129470
+-129407
+-129342
+-129276
+-129209
+-129141
+-129072
+-129001
+-128930
+-128857
+-128782
+-128707
+-128630
+-128553
+-128473
+-128393
+-128312
+-128229
+-128145
+-128060
+-127974
+-127886
+-127798
+-127708
+-127617
+-127524
+-127431
+-127336
+-127240
+-127143
+-127045
+-126945
+-126844
+-126743
+-126639
+-126535
+-126430
+-126323
+-126215
+-126106
+-125996
+-125885
+-125772
+-125658
+-125543
+-125427
+-125310
+-125191
+-125072
+-124951
+-124829
+-124706
+-124581
+-124456
+-124329
+-124201
+-124072
+-123942
+-123810
+-123678
+-123544
+-123409
+-123273
+-123136
+-122997
+-122858
+-122717
+-122575
+-122432
+-122288
+-122143
+-121997
+-121849
+-121700
+-121550
+-121399
+-121247
+-121094
+-120939
+-120784
+-120627
+-120469
+-120310
+-120150
+-119989
+-119826
+-119663
+-119498
+-119332
+-119166
+-118998
+-118828
+-118658
+-118487
+-118314
+-118141
+-117966
+-117790
+-117613
+-117435
+-117256
+-117076
+-116894
+-116712
+-116528
+-116344
+-116158
+-115971
+-115783
+-115594
+-115404
+-115213
+-115021
+-114827
+-114633
+-114437
+-114241
+-114043
+-113844
+-113645
+-113444
+-113242
+-113039
+-112835
+-112630
+-112423
+-112216
+-112008
+-111798
+-111588
+-111377
+-111164
+-110950
+-110736
+-110520
+-110303
+-110086
+-109867
+-109647
+-109426
+-109204
+-108982
+-108758
+-108533
+-108307
+-108080
+-107852
+-107623
+-107393
+-107162
+-106930
+-106697
+-106462
+-106227
+-105991
+-105754
+-105516
+-105277
+-105037
+-104796
+-104554
+-104311
+-104067
+-103822
+-103576
+-103329
+-103081
+-102833
+-102583
+-102332
+-102080
+-101828
+-101574
+-101319
+-101064
+-100807
+-100550
+-100291
+-100032
+-99772
+-99510
+-99248
+-98985
+-98721
+-98456
+-98190
+-97923
+-97655
+-97387
+-97117
+-96847
+-96575
+-96303
+-96030
+-95756
+-95481
+-95205
+-94928
+-94650
+-94371
+-94092
+-93812
+-93530
+-93248
+-92965
+-92681
+-92396
+-92111
+-91824
+-91537
+-91249
+-90960
+-90670
+-90379
+-90087
+-89795
+-89501
+-89207
+-88912
+-88616
+-88319
+-88022
+-87724
+-87424
+-87124
+-86823
+-86522
+-86219
+-85916
+-85612
+-85307
+-85001
+-84695
+-84388
+-84080
+-83771
+-83461
+-83151
+-82839
+-82527
+-82215
+-81901
+-81587
+-81272
+-80956
+-80639
+-80322
+-80003
+-79685
+-79365
+-79045
+-78723
+-78402
+-78079
+-77756
+-77431
+-77107
+-76781
+-76455
+-76128
+-75800
+-75472
+-75143
+-74813
+-74482
+-74151
+-73819
+-73486
+-73153
+-72819
+-72484
+-72149
+-71813
+-71476
+-71139
+-70801
+-70462
+-70123
+-69783
+-69442
+-69101
+-68758
+-68416
+-68073
+-67729
+-67384
+-67039
+-66693
+-66346
+-65999
+-65652
+-65303
+-64954
+-64605
+-64254
+-63904
+-63552
+-63200
+-62848
+-62495
+-62141
+-61786
+-61432
+-61076
+-60720
+-60363
+-60006
+-59648
+-59290
+-58931
+-58572
+-58212
+-57851
+-57490
+-57128
+-56766
+-56403
+-56040
+-55676
+-55312
+-54947
+-54582
+-54216
+-53850
+-53483
+-53115
+-52748
+-52379
+-52010
+-51641
+-51271
+-50901
+-50530
+-50159
+-49787
+-49415
+-49042
+-48669
+-48295
+-47921
+-47547
+-47172
+-46796
+-46421
+-46044
+-45668
+-45290
+-44913
+-44535
+-44156
+-43778
+-43398
+-43019
+-42639
+-42258
+-41877
+-41496
+-41115
+-40733
+-40350
+-39967
+-39584
+-39201
+-38817
+-38433
+-38048
+-37663
+-37278
+-36892
+-36506
+-36119
+-35733
+-35346
+-34958
+-34571
+-34183
+-33794
+-33405
+-33016
+-32627
+-32238
+-31848
+-31457
+-31067
+-30676
+-30285
+-29894
+-29502
+-29110
+-28718
+-28325
+-27933
+-27540
+-27146
+-26753
+-26359
+-25965
+-25571
+-25176
+-24781
+-24386
+-23991
+-23596
+-23200
+-22804
+-22408
+-22012
+-21615
+-21219
+-20822
+-20425
+-20027
+-19630
+-19232
+-18834
+-18436
+-18038
+-17640
+-17241
+-16842
+-16444
+-16044
+-15645
+-15246
+-14847
+-14447
+-14047
+-13647
+-13247
+-12847
+-12447
+-12047
+-11646
+-11246
+-10845
+-10444
+-10043
+-9642
+-9241
+-8840
+-8439
+-8037
+-7636
+-7234
+-6833
+-6431
+-6030
+-5628
+-5226
+-4824
+-4422
+-4021
+-3619
+-3217
+-2815
+-2413
+-2011
+-1608
+-1206
+-804
+-402
diff --git a/libraries/base/diag/src/data/wg_to_unsigned.tcl b/libraries/base/diag/src/data/wg_to_unsigned.tcl
new file mode 100644
index 0000000000..a2fec410b0
--- /dev/null
+++ b/libraries/base/diag/src/data/wg_to_unsigned.tcl
@@ -0,0 +1,53 @@
+################################################################################
+#
+# Copyright (C) 2011
+# ASTRON (Netherlands Institute for Radio Astronomy) <http://www.astron.nl/>
+# P.O.Box 2, 7990 AA Dwingeloo, The Netherlands
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+################################################################################
+ 
+# >>> Convert Waveform txt file into unsigned format that can be copy pasted
+#     manually into a Quartus mif file using and editor
+# . Usage at TCLSH prompt% source wg_to_unsigned.tcl
+# . Steps:
+#   - wg_waveform.tcl or wg_waveform.m --> .txt
+#   - .txt --> wg_to_unsigned.tcl --> .uns
+#   - .uns --> Crimson editor paste column --> .mif
+#   - .mif --> Quartus read, save as --> .hex
+
+global env
+
+set dir_name  "$env(UNB)/Firmware/modules/Lofar/diag/src/data/"
+
+# Set file properties
+set file_name "tcl_sin_1024x8"
+set us_offset [expr round(pow(2, 8))]
+
+# Convert txt --> uns
+set waveform  [wg_read_file [format "$dir_name%s" "$file_name.txt"]]
+
+set us_waveform {}
+foreach i $waveform {
+  if {$i>=0} {
+    lappend us_waveform $i
+  } else {
+    lappend us_waveform [expr $i + $us_offset]
+  }
+}
+    
+set f            {}
+append f         "$dir_name" "$file_name.uns"
+wg_write_file    $f $us_waveform
diff --git a/libraries/base/diag/src/data/wg_waveform.m b/libraries/base/diag/src/data/wg_waveform.m
new file mode 100644
index 0000000000..6568d587ee
--- /dev/null
+++ b/libraries/base/diag/src/data/wg_waveform.m
@@ -0,0 +1,30 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Copyright (C) 2011
+% ASTRON (Netherlands Institute for Radio Astronomy) <http://www.astron.nl/>
+% P.O.Box 2, 7990 AA Dwingeloo, The Netherlands
+%
+% This program is free software: you can redistribute it and/or modify
+% it under the terms of the GNU General Public License as published by
+% the Free Software Foundation, either version 3 of the License, or
+% (at your option) any later version.
+%
+% This program is distributed in the hope that it will be useful,
+% but WITHOUT ANY WARRANTY; without even the implied warranty of
+% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+% GNU General Public License for more details.
+%
+% You should have received a copy of the GNU General Public License
+% along with this program.  If not, see <http://www.gnu.org/licenses/>.
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ 
+% >>> Generate Sinus Waveform
+% . Usage at MATLAB prompt>> wg_waveform
+% . Result diag_sin_2048x18.txt = tcl_sin_2048x18.txt = matlab_sin_2048x18.txt
+
+clear all;
+              
+fid = fopen('matlab_sin_1024x8.txt','w');
+fprintf(fid,'%d\n',round(127 * sin(2*pi*[0:1023]/1024)));
+fclose(fid);
diff --git a/libraries/base/diag/src/data/wg_waveform.tcl b/libraries/base/diag/src/data/wg_waveform.tcl
new file mode 100644
index 0000000000..849ed4bf86
--- /dev/null
+++ b/libraries/base/diag/src/data/wg_waveform.tcl
@@ -0,0 +1,42 @@
+################################################################################
+#
+# Copyright (C) 2011
+# ASTRON (Netherlands Institute for Radio Astronomy) <http://www.astron.nl/>
+# P.O.Box 2, 7990 AA Dwingeloo, The Netherlands
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+################################################################################
+ 
+# >>> Generate Sinus Waveform
+# . Usage at TCLSH prompt% source wg_waveform.tcl
+# . Result diag_sin_2048x18.txt = tcl_sin_2048x18.txt = m_sin_2048x18.txt
+
+global env
+
+source       "$env(UNB)/Firmware/modules/Lofar/diag/src/tcl/wg.tcl"
+set dir_name "$env(UNB)/Firmware/modules/Lofar/diag/src/data/"
+
+
+set nof_samples  1024                              ;# nof samples in waveform
+set sample_w     8                                 ;# nof bits per waveform sample
+set amplitude    127                               ;# sinus top-top will be -amplitude to + amplitude
+set offset       0                                 ;# DC offset
+set phase        0                                 ;# initial phase
+set nof_periods  1                                 ;# nof sinus periods in waveform, so freq is nof_periods/nof_samples * fs
+set period       [expr $nof_samples/$nof_periods]
+set waveform     [wg_adc [wg_calculate_analogue_waveform sinus $amplitude $offset $phase $period 0 $nof_samples] $sample_w]
+set f            {}
+append f         "$dir_name" "tcl_sin_1024x8.txt"
+wg_write_file    $f $waveform
-- 
GitLab