///*****************************************************************************
/// @date Oct 2018
/// @copyright GPL-3.0-or-later
/// @author Thomas Lepoix <thomas.lepoix@protonmail.ch>
///*****************************************************************************

#include "layoutstrings.hpp"
using namespace std;

//******************************************************************************
string const oems_m::write_touchstone_m(
	"function write_touchstone( type, freq, data, filename, ref, comment )\n"
	"% write_touchstone( type, freq, data, filename [,ref [,comment]] ) - write touchstone-file\n"
	"% for ADS\n"
	"% type      'z' for Z-Parameter touchstone-file\n"
	"%           'y' for Y-Parameter touchstone-file\n"
	"%           's' for S-Parameter touchstone-file\n"
	"% freq      vector of frequencies (in Hz)\n"
	"% data      (numports x numports x numfreq) matrix\n"
	"% filename  filename of the file to create\n"
	"% ref       (optional) reference impedance\n"
	"% comment   (optional) written in the header\n"
	"%\n"
	"% (C) Sebastian Held <sebastian.held@gmx.de>\n"
	"% Version 21. Feb 2006\n"
	"\n"
	"if lower(type) == 'z'\n"
	"    par_type = 'Z';\n"
	"    if nargin < 5; ref = 1; end\n"
	"elseif lower(type) == 'y'\n"
	"    par_type = 'Y';\n"
	"    if nargin < 5; ref = 1; end\n"
	"elseif lower(type) == 's'\n"
	"    par_type = 'S';\n"
	"    if nargin < 5; ref = 50; end\n"
	"else\n"
	"    error( 'only z-, y- and s-parameters supported by now' );\n"
	"end\n"
	"\n"
	"if nargin < 6\n"
	"    comment = '';\n"
	"end\n"
	"\n"
	"num_rows = size( data, 1 );\n"
	"num_columns = size( data, 2 );\n"
	"if num_rows ~= num_columns\n"
	"    error( 'number of rows and columns do not agree' );\n"
	"end\n"
	"\n"
	"[fid, message] = fopen( filename, 'wt' );\n"
	"if fid == -1\n"
	"    error( message );\n"
	"end\n"
	"\n"
	"fprintf( fid, '%s\\n', ['#   Hz   ' par_type '  RI   R   ' num2str(ref)] );\n"
	"fprintf( fid, '%s\\n', ['! ' comment] );\n"
	"\n"
	"if size( data, 1 ) == 1 || size( data, 1 ) >= 3\n"
	"    write_data_1(data, fid, freq);\n"
	"elseif size( data, 1 ) == 2\n"
	"    write_data_2(data, fid, freq);\n"
	"else\n"
	"    error( 'FIXME - unhandled dimension' );\n"
	"end\n"
	"\n"
	"fclose( fid );\n"
	"return;\n"
	"end %write_touchstone()\n"
	"\n"
	"function write_data_1(data, fid, freq)\n"
	"num_rows = size( data, 1 );\n"
	"num_columns = size( data, 2 );\n"
	"% for more than 3-port devices\n"
	"for f=1:length(freq)\n"
	"    fprintf( fid, '%e ', freq(f) ); %Frequenz\n"
	"    for row = 1:num_rows\n"
	"        column = 1;\n"
	"        while column <= num_columns\n"
	"            for z=1:min( 4, num_columns-column+1 ); % nur maximal 4 Parameter in einer Zeile! (ADS-Begrenzung)\n"
	"                fprintf( fid, '% e % e   ', real( data(row,column,f) ), imag( data(row,column,f) ) );\n"
	"                column = column + 1;\n"
	"            end\n"
	"            fprintf( fid, '\\n             ' ); % Zeilenende\n"
	"        end\n"
	"    end\n"
	"    fprintf( fid, '\\n' );\n"
	"end\n"
	"end %write_data_1()\n"
	"\n"
	"function write_data_2(data, fid, freq)\n"
	"% for 2-port devices\n"
	"% ADS uses different format (what a mess)\n"
	"for f=1:length(freq)\n"
	"    fprintf( fid, '%e   % e % e   % e % e   % e % e   % e % e\\n', freq(f), ...\n"
	"        real(data(1,1,f)), imag(data(1,1,f)), real(data(2,1,f)), imag(data(2,1,f)), ...\n"
	"        real(data(1,2,f)), imag(data(1,2,f)), real(data(2,2,f)), imag(data(2,2,f)) ); %Frequenz\n"
	"end\n"
	"end %write_data_2()\n");

//******************************************************************************
string const oems_m::plotFF3D_frames(
	"function h = plotFF3D_frames(nf2ff, prefix, varargin)\n"
	"% h = plotFF3D_frames(nf2ff, varargin)\n"
	"%\n"
	"% This is an enhanced version of plotFF3D to plot 3D far field pattern for\n"
	"% multiple frequencies. It will plot a frame for each frequency present in\n"
	"% nf2ff. It can also produce an animated gif.\n"
	"% For now, supports only V/m output.\n"
	"%\n"
	"% input:\n"
	"%   nf2ff:                 - Output of CalcNF2FF\n"
	"%   prefix:                - Frame name: '<prefix>@<f>.<format>'.\n"
	"%                          - Gif name: '<prefix>.<format>'.\n"
	"%\n"
	"% variable input:\n"
	"%   'unique_color_scale':  - Use an unique color scale for all frames.\n"
	"%   'unique_axis_scale':   - Use an unique axis scale for all frames.\n"
	"%   'unique_xyz_scale':    - Use an unique scale for x, y, z axis on each frame.\n"
	"%   'gif' <bool>:          - Merge all frames in an animated gif.\n"
	"%                          - Use ImageMagick's 'convert' command.\n"
	"%                          - Default: false.\n"
	"%   'delay' <str>:         - Delay between frames in the gif.\n"
	"%                          - Cf. convert '-delay' argument.\n"
	"%                          - Default: '30'.\n"
	"%   'colormap' <str>:      - Set a colormap for the plots.\n"
	"%                          - Default: 'jet'.\n"
	"%   'show_each' <bool>:    - Show each frame in its figure window.\n"
	"%                          - Default: false.\n"
	"%   'print' <bool>:        - Do not save frames/gif on disk.\n"
	"%                          - Default: true.\n"
	"%   'format' <str>:        - Frame format.\n"
	"%                          - You probably must not override it.\n"
	"%                          - Default: 'png'.\n"
	"%\n"
	"% example:\n"
	"%   plotFF3D_frames(nf2ff, [name, '-ff3d-vm'], 'gif', true, ...\n"
	"%       'unique_color_scale', 'unique_axis_scale');\n"
	"%\n"
	"% See also plotFF3D\n"
	"%\n"
	"% openEMS matlab interface\n"
	"% -----------------------\n"
	"% author: Thomas Lepoix\n"
	"\n"
	"flag_vm = true;\n"
	"\n"
	"unique_color_scale = false;\n"
	"unique_axis_scale = false;\n"
	"unique_xyz_scale = false;\n"
	"gif = false;\n"
	"delay = '30';\n"
	"colormap_arg = 'jet';\n"
	"show_each = false;\n"
	"print_arg = true;\n"
	"format_arg = 'png';\n"
	"\n"
	"n = 1;\n"
	"while n <= numel(varargin)\n"
	"\tif (strcmp(varargin{n}, 'unique_color_scale') == 1);\n"
	"\t\tunique_color_scale = true;\n"
	"\telseif (strcmp(varargin{n}, 'unique_axis_scale') == 1);\n"
	"\t\tunique_axis_scale = true;\n"
	"\telseif (strcmp(varargin{n}, 'unique_xyz_scale') == 1);\n"
	"\t\tunique_xyz_scale = true;\n"
	"\telseif (strcmp(varargin{n}, 'gif') == 1);\n"
	"\t\tgif = varargin{n + 1};\n"
	"\t\tn = n + 1;\n"
	"\telseif (strcmp(varargin{n}, 'delay') == 1);\n"
	"\t\tdelay = varargin{n+1};\n"
	"\t\tn = n + 1;\n"
	"\telseif (strcmp(varargin{n}, 'colormap') == 1);\n"
	"\t\tcolormap_arg = varargin{n+1};\n"
	"\t\tn = n + 1;\n"
	"\telseif (strcmp(varargin{n}, 'show_each') == 1);\n"
	"\t\tshow_each = varargin{n + 1};\n"
	"\t\tn = n + 1;\n"
	"\telseif (strcmp(varargin{n}, 'print') == 1);\n"
	"\t\tprint_arg = varargin{n + 1};\n"
	"\t\tn = n + 1;\n"
	"\telseif (strcmp(varargin{n}, 'format') == 1);\n"
	"\t\tformat_arg = varargin{n+1};\n"
	"\t\tn = n + 1;\n"
	"\telse\n"
	"\t\twarning('openEMS:plotFF3D_frames', ['unknown argument key: ''' varargin{n} '''']);\n"
	"\tendif\n"
	"\tn = n + 1;\n"
	"endwhile\n"
	"\n"
	"for n = 1:numel(nf2ff.freq)\n"
	"\tif flag_vm\n"
	"\t\tE_far{n} = nf2ff.E_norm{n};\n"
	"\tendif\n"
	"\n"
	"\t[theta, phi] = ndgrid(nf2ff.theta, nf2ff.phi);\n"
	"\tx{n} = E_far{n} .* sin(theta) .* cos(phi);\n"
	"\ty{n} = E_far{n} .* sin(theta) .* sin(phi);\n"
	"\tz{n} = E_far{n} .* cos(theta);\n"
	"\n"
	"\tif n == 1\n"
	"\t\tE_far_min = min(E_far{n}(:));\n"
	"\t\tE_far_max = max(E_far{n}(:));\n"
	"\t\tE_far_max_x = max(abs(x{n}(:)));\n"
	"\t\tE_far_max_y = max(abs(y{n}(:)));\n"
	"\t\tE_far_max_z = max(abs(z{n}(:)));\n"
	"\telse\n"
	"\t\tif min(E_far{n}(:)) < E_far_min\n"
	"\t\t\tE_far_min = min(E_far{n}(:));\n"
	"\t\tendif\n"
	"\t\tif max(E_far{n}(:)) > E_far_max\n"
	"\t\t\tE_far_max = max(E_far{n}(:));\n"
	"\t\tendif\n"
	"\t\tif max(abs(x{n}(:))) > E_far_max_x\n"
	"\t\t\tE_far_max_x = max(abs(x{n}(:)));\n"
	"\t\tendif\n"
	"\t\tif max(abs(y{n}(:))) > E_far_max_y\n"
	"\t\t\tE_far_max_y = max(abs(y{n}(:)));\n"
	"\t\tendif\n"
	"\t\tif max(abs(z{n}(:))) > E_far_max_z\n"
	"\t\t\tE_far_max_z = max(abs(z{n}(:)));\n"
	"\t\tendif\n"
	"\tendif\n"
	"\n"
	"\tfstop_digit_number = numel(num2str(nf2ff.freq(n)));\n"
	"endfor\n"
	"\n"
	"if show_each == false\n"
	"\tfigure;\n"
	"endif\n"
	"for n = 1:numel(nf2ff.freq)\n"
	"\tif show_each\n"
	"\t\tfigure;\n"
	"\tendif\n"
	"\tcolormap(colormap_arg);\n"
	"\n"
	"\th = surf(x{n}, y{n}, z{n}, E_far{n});\n"
	"\tset(h, 'EdgeColor', 'none');\n"
	"\taxis equal;\n"
	"\taxis off;\n"
	"\n"
	"\tif flag_vm\n"
	"\t\ttitletext = sprintf('Electrical far field [V/m] @ f = %e Hz', nf2ff.freq(n));\n"
	"\tendif\n"
	"\ttitle(titletext);\n"
	"\n"
	"\tif unique_color_scale\n"
	"\t\tcb = colorbar('YTick', linspace(E_far_min, E_far_max, 9));\n"
	"\t\tcaxis([0, E_far_max]);\n"
	"\telse\n"
	"\t\tcb = colorbar('YTick', linspace(min(E_far{n}(:)), max(E_far{n}(:)), 9));\n"
	"\tendif\n"
	"\tset(cb, 'Position', [0.75, 0.2, 0.05, 0.6]);\n"
	"\n"
	"\tif unique_axis_scale && unique_xyz_scale\n"
	"\t\txlim([-E_far_max, E_far_max]);\n"
	"\t\tylim([-E_far_max, E_far_max]);\n"
	"\t\tzlim([-E_far_max, E_far_max]);\n"
	"\telseif unique_axis_scale\n"
	"\t\txlim([-E_far_max_x, E_far_max_x]);\n"
	"\t\tylim([-E_far_max_y, E_far_max_y]);\n"
	"\t\tzlim([-E_far_max_z, E_far_max_z]);\n"
	"\telseif unique_xyz_scale\n"
	"\t\tlimit = max([xlim, ylim, zlim]);\n"
	"\t\txlim([-limit, limit]);\n"
	"\t\tylim([-limit, limit]);\n"
	"\t\tzlim([-limit, limit]);\n"
	"\tendif\n"
	"\n"
	"\tdrawnow;\n"
	"\tif print_arg\n"
	"\t\tprint([prefix, '@', ...\n"
	"\t\t\tnum2str(nf2ff.freq(n), ['%0', num2str(fstop_digit_number), '.0f']), ...\n"
	"\t\t\t'.', format_arg]);\n"
	"\tendif\n"
	"endfor\n"
	"\n"
	"if print_arg && gif\n"
	"\tsystem(['convert -delay ', delay, ' -loop 0 ', ...\n"
	"\t\tprefix, '@*.', format_arg, ' ', ...\n"
	"\t\tprefix, '.gif']);\n"
	"endif\n"
	"\n"
	"end\n");

//******************************************************************************
string const oems_m::plotSmith(
	"function h = plotSmith(s, name, freq, f_ind, varargin)\n"
	"% h = plotSmith(s, name, freq, f_ind, varargin)\n"
	"%\n"
	"% Reworked version of plotRefl to plot other S parameters than s11 and to plot\n"
	"% multiple S parameters on the same graphic.\n"
	"%\n"
	"% input:\n"
	"%   s:         S parameter.\n"
	"%   name:      S parameter name to display.\n"
	"%   freq:      Frequency array.\n"
	"%   f_ind:     Index array in 'freq' of the frequencies to put a marker on.\n"
	"%\n"
	"% variable input:\n"
	"%   'precision':   - Number of decimal places (floating point precision)\n"
	"%                    for the frequency (always in MHz), default is 2\n"
	"%   'nogrid':      - Do not replot grid.\n"
	"%                  - Not to put older plots under the grid, you should use it\n"
	"%                    unless it is the first time you use plotSmith in a figure.\n"
	"%\n"
	"% example:\n"
	"%   freq = [linspace(fstart, fstop, points), f_res];\n"
	"%   sort(freq);\n"
	"%   port{1} = calcPort(port{1}, Sim_Path, freq);\n"
	"%   port{2} = calcPort(port{2}, Sim_Path, freq);\n"
	"%   s11 = port{1}.uf.ref ./ port{1}.uf.inc;\n"
	"%   s21 = port{2}.uf.ref ./ port{1}.uf.inc;\n"
	"%   f_res_ind = find(freq == f_res);\n"
	"%   figure;\n"
	"%   plotSmith(s11, 's11', freq, f_res_ind);\n"
	"%   plotSmith(s21, 's21', freq, f_res_ind, 'nogrid');\n"
	"%   drawnow;\n"
	"%\n"
	"% See also PlotRefl\n"
	"%\n"
	"% openEMS matlab interface\n"
	"% -----------------------\n"
	"% author: Thomas Lepoix\n"
	"\n"
	"precision = 2;\n"
	"grid_arg = true;\n"
	"\n"
	"for n=1:2:numel(varargin)\n"
	"\tif (strcmp(varargin{n},'precision')==1);\n"
	"\t\tprecision = varargin{n+1};\n"
	"\telseif (strcmp(varargin{n},'nogrid')==1);\n"
	"\t\tgrid_arg = false;\n"
	"\telse\n"
	"\t\twarning('openEMS:plotSmith', ['unknown argument key: ''' varargin{n} '''']);\n"
	"\tendif\n"
	"endfor\n"
	"\n"
	"ffmt = ['%.', num2str(precision), 'f'];\n"
	"\n"
	"if grid_arg\n"
	"\taxis ([-1.15, 1.15, -1.15, 1.15], 'square');\n"
	"\taxis off;\n"
	"\thold on;\n"
	"\n"
	"\t% Horizontal axis\n"
	"\tplot([-1, 1], [0, 0], 'color', [0.9, 0.9, 0.9]);\n"
	"\n"
	"\t% Inner curved lines\n"
	"\tReZ = [0.2; 0.5; 1; 2];\n"
	"\tImZ = 1i * [1, 2, 5, 2];\n"
	"\tZ = ReZ + linspace(-ImZ, ImZ, 256);\n"
	"\tGamma = (Z-1)./(Z+1);\n"
	"\tplot(Gamma.', 'color', [0.9, 0.9, 0.9]);\n"
	"\n"
	"\tReZ = [0.5, 0.5, 1, 1, 2, 2, 5, 5, 10, 10];\n"
	"\tImZ = 1i * [-0.2; 0.2; -0.5; 0.5; -1; 1; -2; 2; -5; 5];\n"
	"\tZ = linspace(0, ReZ, 256) + ImZ;\n"
	"\tGamma = (Z-1)./(Z+1);\n"
	"\tplot(Gamma.', 'color', [0.9, 0.9, 0.9]);\n"
	"\n"
	"\t% Inner circles\n"
	"\tangle = linspace (0, 2 * pi, 256);\n"
	"\tReZ = [5, 10];\n"
	"\tcenter = ReZ ./ (ReZ + 1);\n"
	"\tradius = 1 ./ (ReZ + 1);\n"
	"\tplot(radius .* cos(angle.') + center, radius .* sin(angle.'), 'color', [0.9, 0.9, 0.9]);\n"
	"\n"
	"\t% Outer black circle\n"
	"\tReZ = [0];\n"
	"\tcenter = ReZ ./ (ReZ + 1);\n"
	"\tradius = 1 ./ (ReZ + 1);\n"
	"\tplot(radius .* cos(angle.') + center, radius .* sin(angle.'), 'k');\n"
	"\n"
	"\t% A trick to restore color order\n"
	"\tplot(0, 'visible', 'off');\n"
	"\n"
	"\t% Resistance\n"
	"\tReZ = [0.2, 0.5, 1, 2, 5, 10];\n"
	"\tImZ = zeros(1, length (ReZ));\n"
	"\trho = (ReZ.^2 + ImZ.^2 - 1 + 2i * ImZ) ./ ((ReZ + 1).^2 + ImZ.^2);\n"
	"\n"
	"\txoffset = [0.1, 0.1, 0.05, 0.05, 0.05, 0.075]; \n"
	"\tyoffset = -0.03;\n"
	"\n"
	"\tfor idx = 1:length(ReZ)\n"
	"\t\ttext(real(rho(idx)) - xoffset(idx), ...\n"
	"\t\t\timag(rho(idx)) - yoffset, ...\n"
	"\t\t\tnum2str(ReZ(idx)));\n"
	"\tendfor\n"
	"\n"
	"\t% Reactance\n"
	"\tReZ = [-0.06, -0.06, -0.06, -0.12, -0.5];\n"
	"\tImZ = [0.2, 0.5, 1, 2, 5];\n"
	"\trho = (ReZ.^2 + ImZ.^2 - 1 + 2i * ImZ) ./ ((ReZ + 1).^2 + ImZ.^2);\n"
	"\n"
	"\tfor idx = 1:length(ImZ)\n"
	"\t\ttext(real(rho(idx)), imag(rho(idx)), [num2str(ImZ(idx)), 'j']);\n"
	"\t\ttext(real(rho(idx)), -imag(rho(idx)), [num2str(-ImZ(idx)), 'j']);\n"
	"\tendfor\n"
	"\n"
	"\t% Zero\n"
	"\trho = (-0.05.^2 + 0.^2 - 1) ./ ((-0.05 + 1).^2 + 0.^2);\n"
	"\ttext(real(rho), imag(rho), '0');\n"
	"endif\n"
	"\n"
	"% Markers\n"
	"for i = 1:numel(f_ind)\n"
	"\tz = s(f_ind(i));\n"
	"\tif imag(z) >= 0\n"
	"\t\tz_str = '+';\n"
	"\telse\n"
	"\t\tz_str = '';\n"
	"\tendif\n"
	"\tz_str = [num2str(real(z), '%.2f'), z_str, num2str(imag(z), '%.2f'), 'j'];\n"
	"\th = plot(s(f_ind(i)), ['o;', ...\n"
	"\t\tname, ' @ ', num2str(freq(f_ind(i))/1e6, ffmt), ' MHz', ...\n"
	"\t\t\"\\n\", num2str(20*log10(abs(s(f_ind(i)))), '%.1f'), 'dB ', ...\n"
	"%\t\tnum2str(s(f_ind(i)), '%.2f'), ' Ω', ...\n"
	"\t\tz_str, ...\n"
	"\t\t';'], 'linewidth', 2);\n"
	"\tset(gca, 'ColorOrder', circshift(get(gca, 'ColorOrder'), numel(h)));\n"
	"endfor\n"
	"\n"
	"h = plot(s);\n"
	"\n"
	"if (nargout == 0)\n"
	"\tclear h;\n"
	"end\n"
	"\n"
	"end\n");

//******************************************************************************
string const oems_m::oemshll_cli(
	"function cli = oemshll_cli(args, name, ports_index, varargin)\n"
	"%\n"
	"% input:\n"
	"%   args:         - Script arguments, should probably be 'argv()'.\n"
	"%   name:         - Script name.\n"
	"%   port_index:   - Ports numbers.\n"
	"%                 - Example: [4, 5]\n"
	"%\n"
	"% variable input:\n"
	"%   'header':            - String to print at the top of the help menu.\n"
	"%   'path_simulation':   - Directory to save simulation files and dumps.\n"
	"%                        - Default: './<name>_simulation'\n"
	"%   'path_result':       - Directory to save result files.\n"
	"%                        - Default: './<name>_results'\n"
	"%\n"
	"% author: Thomas Lepoix\n"
	"\n"
	"if isnull(ports_index)\n"
	"\tdisp('ERROR : No specified ports');\n"
	"\texit;\n"
	"endif\n"
	"\n"
	"%%%% COMMAND LINE OBJECT\n"
	"cli.name = name;\n"
	"cli.path_result = [name, '_result'];\n"
	"cli.path_simulation = [name, '_simulation'];\n"
	"cli.clean = false;\n"
	"cli.clean_result = false;\n"
	"cli.clean_simulation = false;\n"
	"cli.batch = false;\n"
	"cli.gui = true;\n"
	"cli.process = true;\n"
	"cli.preprocess = true;\n"
	"cli.postprocess = true;\n"
	"cli.legend_out = false;\n"
	"cli.conductingsheet = true;\n"
	"cli.f = [];\n"
	"cli.f_max = num2str([]);\n"
	"cli.f_min = num2str([]);\n"
	"cli.f_equal_s = num2str([]);\n"
	"cli.f_equal_v = [];\n"
	"cli.nf2ff = false;\n"
	"cli.nf2ff_mode = 0;\n"
	"cli.nf2ff_3d = false;\n"
	"cli.nf2ff_frames = 0;\n"
	"cli.nf2ff_delay = '30';\n"
	"cli.nf2ff_phistep = 5;\n"
	"cli.nf2ff_thetastep = 5;\n"
	"cli.dump_et = false;\n"
	"cli.dump_ht = false;\n"
	"cli.dump_jt = false;\n"
	"cli.dump_cdt = false;\n"
	"cli.dump_ff3d = false;\n"
	"cli.mur = false;\n"
	"cli.mesh = true;\n"
	"cli.highresmesh = true;\n"
	"cli.metalresmesh = true;\n"
//	"cli.keep_portlines = false;\n"
	"cli.thirdsrule = true;\n"
	"cli.smoothmesh = true;\n"
	"cli.active_ports = ports_index(1);\n"
	"cli.ports_index = ports_index;\n"
	"\n"
	"%%%% ARGUMENTS\n"
	"arg_only_preprocess = false;\n"
	"arg_only_postprocess = false;\n"
	"arg_no_preprocess = false;\n"
	"arg_no_postprocess = false;\n"
	"header = [];\n"
	"\n"
	"i = 1;\n"
	"while i <= numel(varargin)\n"
	"\tif strcmp(varargin{i}, 'header') == 1;\n"
	"\t\theader = varargin{i + 1};\n"
	"\t\ti = i + 1;\n"
	"\telseif strcmp(varargin{i}, 'path_result') == 1;\n"
	"\t\tcli.path_result = varargin{i + 1};\n"
	"\t\ti = i + 1;\n"
	"\telseif strcmp(varargin{i}, 'path_simulation') == 1;\n"
	"\t\tcli.path_simulation = varargin{i + 1};\n"
	"\t\ti = i + 1;\n"
	"\telse\n"
	"\t\twarning('openEMS:oemshll_cli', ['unknown argument key: ''' varargin{i} '''']);\n"
	"\tendif\n"
	"\ti = i + 1;\n"
	"endwhile\n"
	"\n"
	"i = 1;\n"
	"while i <= numel(args)\n"
	"\tif strcmp(args{i}, '--help') || strcmp(args{i}, '-h')\n"
	"\t\tif header\n"
	"\t\t\tdisp(header);\n"
	"\t\tendif\n"
	"\t\tdisp(['Usage:  ./', program_name(), ' <options>']);\n"
	"\t\tdisp(['        octave ', program_name(), ' <option>']);\n"
	"\t\tdisp('');\n"
	"\t\tdisp('General options:');\n"
	"\t\tdisp(\"\\t-h, --help             Display this help and exit.\");\n"
	"\t\tdisp(\"\\t-c, --clean            Remove all result and simulation files.\");\n"
	"\t\tdisp(\"\\t-cr, --clean-result    Remove all result files.\");\n"
	"\t\tdisp(\"\\t-cs, --clean-sim       Remove all simulation files.\");\n"
	"\t\tdisp(\"\\t-b, --batch            Batch mode. Do not wait a key is pressed to terminate.\");\n"
	"\t\tdisp([\"\\t--port <N>             Enable a port. 'N' is a port number. By default the port \", num2str(cli.active_ports), ' is enabled.']);\n"
	"\t\tdisp(\"\\t--no-port <N>          Disable a port. 'N' is a port number. By default all other ports are disabled.\");\n"
	"\t\tdisp([\"\\t                       Possible port numbers are : \", num2str(ports_index)]);\n"
	"\t\tdisp('');\n"
	"\t\tdisp('Control options:');\n"
	"\t\tdisp(\"\\t--only-preprocess      Only structure and mesh construction.\");\n"
	"\t\tdisp(\"\\t--only-postprocess     Only process simulation datas to produce graphics and far field calculation.\");\n"
	"\t\tdisp(\"\\t--no-preprocess        Do not execute anything before siulation.\");\n"
	"\t\tdisp(\"\\t--no-postprocess       Do not execute anything after simulation.\");\n"
	"\t\tdisp(\"\\t--no-gui               Do not open AppCSXCAD.\");\n"
	"\t\tdisp('');\n"
	"\t\tdisp('Preprocessing options:');\n"
	"\t\tdisp(\"\\t--dump-et              Dump E field in time domain.\");\n"
	"\t\tdisp(\"\\t--dump-ht              Dump H field in time domain.\");\n"
	"\t\tdisp(\"\\t--dump-jt              Dump current in time domain.\");\n"
	"\t\tdisp(\"\\t--dump-cdt             Dump current density in time domain.\");\n"
	"\t\tdisp(\"\\t--no-conductingsheet   Use 3D perfect metal boxes instead of 2D conducting sheets.\");\n"
	"\t\tdisp(\"\\t--no-highresmesh       No high resolution mesh for non orthogonal shapes.\");\n"
	"\t\tdisp(\"\\t--no-metalresmesh      No metal resolution mesh for orthogonal shapes.\");\n"
//	"\t\tdisp(\"\\t--keep-portlines       Effect only with '--no-metalresmesh', keep ports mesh lines.\");\n"
	"\t\tdisp(\"\\t--no-thirdsrule        Do not apply the thirds rule while creating the metal resolution mesh.\");\n"
	"\t\tdisp(\"\\t--no-smoothmesh        Only particular mesh lines.\");\n"
	"\t\tdisp(\"\\t--no-mesh              Do not mesh any shape.\");\n"
	"\t\tdisp(\"\\t--mur                  Use MUR boundary condition instead of PML_8. Results and simulation time may significantly vary.\");\n"
	"\t\tdisp('');\n"
	"\t\tdisp('Postprocessing options:');\n"
	"\t\tdisp(\"\\t--legend-out           Put legend boxes outside graphics\");\n"
	"\t\tdisp(\"\\t--f <F>                Set frequency to place markers and compute far field radiations.\");\n"
	"\t\tdisp(\"\\t                       Can be called multiple times. Example : '--f 3.1e09'\");\n"
	"\t\tdisp(\"\\t--f-max s<A><B>        Place markers and compute far field radiations at the frequency for which the specified\");\n"
	"\t\tdisp(\"\\t                       S parameter is maximal. A and B are port numbers, B must be active. Can be called multiple times.\");\n"
	"\t\tdisp(\"\\t--f-min s<A><B>        Place markers and compute far field radiations at the frequency for which the specified\");\n"
	"\t\tdisp(\"\\t                       S parameter is minimal. A and B are port numbers, B must be active. Can be called multiple times.\");\n"
	"\t\tdisp(\"\\t--f-equal s<A><B> <F>  Place markers and compute far field radiations at the frequency for which the specified\");\n"
	"\t\tdisp(\"\\t                       S parameter is equal to the specified value (in dB). Can be called multiple times.\");\n"
	"\t\tdisp(\"\\t                       Example : '--f-equal s21 -3.5'.\");\n"
	"\t\tdisp(\"\\t--dump-ff3d            Dump 3D far field radiation pattern.\");\n"
	"\t\tdisp(\"\\t--nf2ff                Calcul far field radiation.\");\n"
	"\t\tdisp(\"\\t--nf2ff-force          Force NF2FF calculation.\");\n"
	"\t\tdisp(\"\\t--nf2ff-3d             Enable 3D far field representation (may be long).\");\n"
	"\t\tdisp(\"\\t--nf2ff-frames <I>     Number of 3D frames to merge in a .gif. ImageMagick is required. Default (0, 1 or nothing) : use\");\n"
	"\t\tdisp(\"\\t                       default or --f* args specified frequencies and no .gif generated.\");\n"
	"\t\tdisp(\"\\t--nf2ff-delay          Delay between each frames (in ms). Cf. convert's '-delay' argument. Default : 30\");\n"
	"\t\tdisp(\"\\t--nf2ff-phistep <I>    Set phi angle (elevation) step for 3D far field. I is in degree, default is 5.\");\n"
	"\t\tdisp(\"\\t--nf2ff-thetastep <I>  Set theta angle (azimuth) step for 3D far field. I is in degree, default is 5.\");\n"
	"\t\tdisp(\"\\t--nf2ff-anglestep <I>  Set phi & theta angle steps for 3D far field. I is in degree.\");\n"
	"\t\texit;\n"
	"\telseif strcmp(args{i}, '--clean') || strcmp(args{i}, '-c')\n"
	"\t\tcli.clean = true;\n"
	"\telseif strcmp(args{i}, '--clean-result') || strcmp(args{i}, '-cr')\n"
	"\t\tcli.clean_result = true;\n"
	"\telseif strcmp(args{i}, '--clean-sim') || strcmp(args{i}, '-cs')\n"
	"\t\tcli.clean_simulation = true;\n"
	"\telseif strcmp(args{i}, '--batch') || strcmp(args{i}, '-b')\n"
	"\t\tcli.batch = true;\n"
	"\telseif strcmp(args{i}, '--only-preprocess')\n"
	"\t\targ_only_preprocess = true;\n"
	"\t\tcli.process = false;\n"
	"\t\tcli.postprocess = false;\n"
	"\telseif strcmp(args{i}, '--only-postprocess')\n"
	"\t\targ_only_postprocess = true;\n"
	"\t\tcli.preprocess = false;\n"
	"\t\tcli.process = false;\n"
	"\telseif strcmp(args{i}, '--no-preprocess')\n"
	"\t\targ_no_preprocess = true;\n"
	"\t\tcli.preprocess = false;\n"
	"\telseif strcmp(args{i}, '--no-gui')\n"
	"\t\tcli.gui = false;\n"
	"\telseif strcmp(args{i}, '--no-postprocess')\n"
	"\t\targ_no_postprocess = true;\n"
	"\t\tcli.postprocess = false;\n"
	"\telseif strcmp(args{i}, '--f')\n"
	"\t\tcli.f = [cli.f, str2num(args{i + 1})];\n"
	"\t\ti = i + 1;\n"
	"\telseif strcmp(args{i}, '--f-max')\n"
	"\t\tcli.f_max = [cli.f_max; args{i + 1}];\n"
	"\t\ti = i + 1;\n"
	"\telseif strcmp(args{i}, '--f-min')\n"
	"\t\tcli.f_min = [cli.f_min; args{i + 1}];\n"
	"\t\ti = i + 1;\n"
	"\telseif strcmp(args{i}, '--f-equal')\n"
	"\t\tcli.f_equal_s = [cli.f_equal_s; args{i + 1}];\n"
	"\t\tcli.f_equal_v = [cli.f_equal_v, str2num(args{i + 2})];\n"
	"\t\ti = i + 2;\n"
	"\telseif strcmp(args{i}, '--legend-out')\n"
	"\t\tcli.legend_out = true;\n"
	"\telseif strcmp(args{i}, '--nf2ff')\n"
	"\t\tcli.nf2ff = true;\n"
	"\telseif strcmp(args{i}, '--nf2ff-force')\n"
	"\t\tcli.nf2ff_mode = 1;\n"
	"\telseif strcmp(args{i}, '--nf2ff-3d')\n"
	"\t\tcli.nf2ff_3d = true;\n"
	"\telseif strcmp(args{i}, '--nf2ff-frames')\n"
	"\t\tcli.nf2ff_frames = str2num(args{i + 1});\n"
	"\t\ti = i + 1;\n"
	"\telseif strcmp(args{i}, '--nf2ff-delay')\n"
	"\t\tcli.nf2ff_delay = args{i + 1};\n"
	"\t\ti = i + 1;\n"
	"\telseif strcmp(args{i}, '--nf2ff-phistep')\n"
	"\t\tcli.nf2ff_phistep = str2num(args{i + 1});\n"
	"\t\ti = i + 1;\n"
	"\telseif strcmp(args{i}, '--nf2ff-thetastep')\n"
	"\t\tcli.nf2ff_thetastep = str2num(args{i + 1});\n"
	"\t\ti = i + 1;\n"
	"\telseif strcmp(args{i}, '--nf2ff-anglestep')\n"
	"\t\tcli.nf2ff_phistep = str2num(args{i + 1});\n"
	"\t\tcli.nf2ff_thetastep = str2num(args{i + 1});\n"
	"\t\ti = i + 1;\n"
	"\telseif strcmp(args{i}, '--dump-et')\n"
	"\t\tcli.dump_et = true;\n"
	"\telseif strcmp(args{i}, '--dump-ht')\n"
	"\t\tcli.dump_ht = true;\n"
	"\telseif strcmp(args{i}, '--dump-jt')\n"
	"\t\tcli.dump_jt = true;\n"
	"\telseif strcmp(args{i}, '--dump-cdt')\n"
	"\t\tcli.dump_cdt = true;\n"
	"\telseif strcmp(args{i}, '--dump-ff3d')\n"
	"\t\tcli.dump_ff3d = true;\n"
	"\telseif strcmp(args{i}, '--mur')\n"
	"\t\tcli.mur = true;\n"
	"\telseif strcmp(args{i}, '--no-conductingsheet')\n"
	"\t\tcli.conductingsheet = false;\n"
	"\telseif strcmp(args{i}, '--no-mesh')\n"
	"\t\tcli.mesh = false;\n"
	"\telseif strcmp(args{i}, '--no-highresmesh')\n"
	"\t\tcli.highresmesh = false;\n"
	"\telseif strcmp(args{i}, '--no-metalresmesh')\n"
	"\t\tcli.metalresmesh = false;\n"
//	"\telseif strcmp(args{i}, '--keep-portlines')\n"
//	"\t\tcli.keep_portlines = true;\n"
	"\telseif strcmp(args{i}, '--no-thirdsrule')\n"
	"\t\tcli.thirdsrule = false;\n"
	"\telseif strcmp(args{i}, '--no-smoothmesh')\n"
	"\t\tcli.smoothmesh = false;\n"
	"\telseif strcmp(args{i}, '--port')\n"
	"\t\tif find(ports_index == str2num(args{i + 1}))\n"
	"\t\t\tcli.active_ports = [active_ports, str2num(args{i + 1})];\n"
	"\t\telse\n"
	"\t\t\tdisp(['ERROR : --port : invalid port : ', args{i + 1}]);\n"
	"\t\t\texit;\n"
	"\t\tendif\n"
	"\t\ti = i + 1;\n"
	"\telseif strcmp(args{i}, '--no-port')\n"
	"\t\tif find(ports_index == str2num(args{i + 1}))\n"
	"\t\t\tcli.active_ports(:, find(active_ports == str2num(args{i + 1}))) = [];\n"
	"\t\telse\n"
	"\t\t\tdisp(['ERROR : --no-port : invalid port : ', args{i + 1}]);\n"
	"\t\t\texit;\n"
	"\t\tendif\n"
	"\t\ti = i + 1;\n"
	"\telse\n"
	"\t\tdisp(['ERROR : Unknown argument : ', args{i}]);\n"
	"\t\texit;\n"
	"\tendif\n"
	"\ti = i + 1;\n"
	"endwhile\n"
	"\n"
	"if arg_only_preprocess && arg_only_postprocess\n"
	"\tdisp('ERROR : --only-preprocess and --only-postprocess are not compatible.');\n"
	"\texit;\n"
	"endif\n"
	"if arg_only_preprocess && arg_no_preprocess\n"
	"\tdisp('ERROR : --only-preprocess and --no-preprocess are not compatible.');\n"
	"\texit;\n"
	"endif\n"
	"if arg_only_postprocess && arg_no_postprocess\n"
	"\tdisp('ERROR : --only-postprocess and --no-postprocess are not compatible.');\n"
	"\texit;\n"
	"endif\n"
	"if cli.mesh == false && arg_only_preprocess == false\n"
	"\tdisp('ERROR : --no-mesh only works with --only-preprocess.');\n"
	"\texit;\n"
	"endif\n"
	"if cli.smoothmesh == false && arg_only_preprocess == false\n"
	"\tdisp('ERROR : --no-smoothmesh only works with --only-preprocess.');\n"
	"\texit;\n"
	"endif\n"
	"if exist('cli.f_max', 'var')\n"
	"\tfor i = 1:rows(cli.f_max)\n"
	"\t\tif exist('cli.f_max', 'var') && numel(cli.f_max(i, :)) == 3 && cli.f_max(i, 1) == 's' ...\n"
	"\t\t&& exist(['cli.active_port', cli.f_max(i, 2)]) ...\n"
	"\t\t&& exist(['cli.active_port', cli.f_max(i, 3)])\n"
	"\t\t\tif eval(['cli.active_port', cli.f_max(i, 3)]) == false\n"
	"\t\t\t\tdisp(['ERROR : --f-max ', cli.f_max(i, :), ' : port ', cli.f_max(i, 3), ' is not an active port.']);\n"
	"\t\t\t\texit;\n"
	"\t\t\tendif\n"
	"\t\telse\n"
	"\t\t\tdisp(['ERROR : --f-max ', cli.f_max(i, :), ' : incorrect argument.']);\n"
	"\t\t\texit;\n"
	"\t\tendif\n"
	"\tendfor\n"
	"endif\n"
	"if exist('cli.f_min', 'var')\n"
	"\tfor i = 1:rows(cli.f_min)\n"
	"\t\tif numel(cli.f_min(i, :)) == 3 && cli.f_min(i, 1) == 's' ...\n"
	"\t\t&& exist(['cli.active_port', cli.f_min(i, 2)]) ...\n"
	"\t\t&& exist(['cli.active_port', cli.f_min(i, 3)])\n"
	"\t\t\tif eval(['cli.active_port', cli.f_min(i, 3)]) == false\n"
	"\t\t\t\tdisp(['ERROR : --f-min ', cli.f_min(i, :), ' : port ', cli.f_min(i, 3), ' is not an active port.']);\n"
	"\t\t\t\texit;\n"
	"\t\t\tendif\n"
	"\t\telse\n"
	"\t\t\tdisp(['ERROR : --f-min ', cli.f_min(i, :), ' : incorrect argument.']);\n"
	"\t\t\texit;\n"
	"\t\tendif\n"
	"\tendfor\n"
	"endif\n"
	"if exist('cli.f_equal_s', 'var')\n"
	"\tfor i = 1:rows(cli.f_equal_s)\n"
	"\t\tif numel(cli.f_equal_s(i, :)) == 3 && cli.f_equal_s(i, 1) == 's' ...\n"
	"\t\t&& exist(['cli.active_port', cli.f_equal_s(i, 2)]) ...\n"
	"\t\t&& exist(['cli.active_port', cli.f_equal_s(i, 3)])\n"
	"\t\t\tif eval(['cli.active_port', cli.f_equal_s(i, 3)]) == false\n"
	"\t\t\t\tdisp(['ERROR : --f-min ', cli.f_equal_s(i, :), ' : port ', cli.f_equal_s(i, 3), ' is not an active port.']);\n"
	"\t\t\t\texit;\n"
	"\t\t\tendif\n"
	"\t\telse\n"
	"\t\t\tdisp(['ERROR : --f-min ', cli.f_equal_s(i, :), ' : incorrect argument.']);\n"
	"\t\t\texit;\n"
	"\t\tendif\n"
	"\tendfor\n"
	"endif\n"
	"\n"
	"if cli.clean\n"
	"\t[status, message, messageid] = rmdir(cli.path_result, 's');\n"
	"\t[status, message, messageid] = rmdir(cli.path_simulation, 's');\n"
	"\texit;\n"
	"endif\n"
	"if cli.clean_result\n"
	"\t[status, message, messageid] = rmdir(cli.path_result, 's');\n"
	"\texit;\n"
	"endif\n"
	"if cli.clean_simulation\n"
	"\t[status, message, messageid] = rmdir(cli.path_simulation, 's');\n"
	"\texit;\n"
	"endif\n"
	"if cli.preprocess && cli.process && cli.postprocess\n"
	"\t[status, message, messageid] = rmdir(cli.path_result, 's');\n"
	"\t[status, message, messageid] = rmdir(cli.path_simulation, 's');\n"
	"elseif cli.process\n"
	"\t[status, message, messageid] = rmdir(cli.path_simulation, 's');\n"
	"endif\n"
	"[status, message, messageid] = mkdir(cli.path_result);\n"
	"[status, message, messageid] = mkdir(cli.path_simulation);\n"
	"\n"
	"end\n");

//******************************************************************************
string const oems_m::oemshll_plotVSWR(
	"function h = oemshll_plotVSWR(s, port_n, freq, markers, color, varargin)\n"
	"%\n"
	"% input:\n"
	"%   s:              - S parameter, should be a reflection coefficient (Sxx, no Sxy).\n"
	"%                   - See example.\n"
	"%   port_n:         - Port number string.\n"
	"%   freq:           - Frequency array.\n"
	"%   markers:        - Frequency array. Put a marker on each frequency inside.\n"
	"%   color:          - Color letter. See the 'fmt' argument of the Octave 'plot' function.\n"
	"%\n"
	"% variable input:\n"
	"%   'legend_out':   - Put the legend boxe outside the graph.\n"
	"%                   - Default: false.\n"
	"%   'funit':        - Frequency unity factor.\n"
	"%                   - To use with 'funit_name'.\n"
	"%                   - Default: 1e6\n"
	"%   'funit_name':   - Frequency unity name.\n"
	"%                   - To use with 'funit'.\n"
	"%                   - Default: 'MHz'\n"
	"%\n"
	"% example:\n"
	"%   s11 = port{1}.uf.ref ./ port{1}.uf.inc;\n"
	"%   figure;\n"
	"%   oemshll_plotVSWR(s11, '1', freq, 'g');\n"
	"%   drawnow;\n"
	"%\n"
	"% author: Thomas Lepoix\n"
	"\n"
	"\tlegend_out = false;\n"
	"\tfunit = 1e6;\n"
	"\tfunit_name = 'MHz';\n"
	"\n"
	"\ti = 1;\n"
	"\twhile i <= numel(varargin)\n"
	"\t\tif (strcmp(varargin{i}, 'legend_out')==1);\n"
	"\t\t\tlegend_out = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'funit')==1);\n"
	"\t\t\tfunit = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'funit_name')==1);\n"
	"\t\t\tfunit_name = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telse\n"
	"\t\t\twarning('openEMS:oemshll_plotVSWR', ['unknown argument key: ''' varargin{i} '''']);\n"
	"\t\tendif\n"
	"\t\ti = i + 1;\n"
	"\tendwhile\n"
	"\n"
	"\thold on;\n"
	"\tgrid on;\n"
	"\tvswr = (1+(abs(s)))./(1-(abs(s)));\n"
	"\tplot(freq/funit, vswr, [color, '-'], 'Linewidth', 2);\n"
	"\tfor i = 1:numel(markers)\n"
	"\t\tvswr_i = vswr(find(freq == markers(i)));\n"
	"\t\tplot(freq(find(freq == markers(i)))/funit, vswr_i, ...\n"
	"\t\t\t[color, 'o;VSWR', port_n, ' @ ', num2str(freq(find(freq == markers(i)))/funit, '%.2f'), ' ', funit_name, ...\n"
	"\t\t\t\"\\n\", num2str(vswr_i, '%.2f'), ...\n"
	"\t\t\t';'], 'linewidth', 2);\n"
	"\tendfor\n"
	"\tif legend_out\n"
	"\t\tlegend('Location', 'northeastoutside');\n"
	"\tendif\n"
	"\ttitle(['VSWR', port_n]);\n"
	"\txlabel(['Frequency (', funit_name, ')']);\n"
	"\tylabel('VSWR');\n"
	"end\n");

//******************************************************************************
string const oems_m::oemshll_plotFeedImpedance(
	"function h = oemshll_plotFeedImpedance(Z, port_n, freq, markers, abs_color, im_color, re_color, varargin)\n"
	"%\n"
	"% input:\n"
	"%   Z:              - Feed port impedance.\n"
	"%                   - See example.\n"
	"%   port_n:         - Port number string.\n"
	"%   freq:           - Frequency array.\n"
	"%   markers:        - Frequency array. Put a marker on each frequency inside.\n"
	"%   abs_color:      - Color letter. See the 'fmt' argument of the Octave 'plot' function.\n"
	"%                   - Absolute impedance.\n"
	"%   im_color:       - Color letter. See the 'fmt' argument of the Octave 'plot' function.\n"
	"%                   - Imaginary part.\n"
	"%   re_color:       - Color letter. See the 'fmt' argument of the Octave 'plot' function.\n"
	"%                   - Real part.\n"
	"%\n"
	"% variable input:\n"
	"%   'legend_out':   - Put the legend boxe outside the graph.\n"
	"%                   - Default: false.\n"
	"%   'funit':        - Frequency unity factor.\n"
	"%                   - To use with 'funit_name'.\n"
	"%                   - Default: 1e6\n"
	"%   'funit_name':   - Frequency unity name.\n"
	"%                   - To use with 'funit'.\n"
	"%                   - Default: 'MHz'\n"
	"%\n"
	"% example:\n"
	"%   z1 = port{1}.uf.tot./port{1}.if.tot;\n"
	"%   figure;\n"
	"%   oemshll_plotFeedImpedance(z1, '1', freq, 'k', 'm', 'g');\n"
	"%   drawnow;\n"
	"%\n"
	"% author: Thomas Lepoix\n"
	"\n"
	"\tlegend_out = false;\n"
	"\tfunit = 1e6;\n"
	"\tfunit_name = 'MHz';\n"
	"\n"
	"\ti = 1;\n"
	"\twhile i <= numel(varargin)\n"
	"\t\tif (strcmp(varargin{i}, 'legend_out')==1);\n"
	"\t\t\tlegend_out = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'funit')==1);\n"
	"\t\t\tfunit = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'funit_name')==1);\n"
	"\t\t\tfunit_name = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telse\n"
	"\t\t\twarning('openEMS:oemshll_plotFeedImpedance', ['unknown argument key: ''' varargin{i} '''']);\n"
	"\t\tendif\n"
	"\t\ti = i + 1;\n"
	"\tendwhile\n"
	"\n"
	"\thold on;\n"
	"\tgrid on;\n"
	"\tplot(freq/funit, abs(Z), [abs_color, '-;|Z', port_n, '|;'], 'Linewidth', 2);\n"
	"\tplot(freq/funit, imag(Z), [im_color, '--;Im(Z', port_n, ');'], 'Linewidth', 2);\n"
	"\tplot(freq/funit, real(Z), [re_color, '--;Re(Z', port_n, ');'], 'Linewidth', 2);\n"
	"\tfor i = 1:numel(markers)\n"
	"\t\tz = Z(find(freq == markers(i)));\n"
	"\t\tif imag(z) >= 0\n"
	"\t\t\tz_str = '+';\n"
	"\t\telse\n"
	"\t\t\tz_str = '';\n"
	"\t\tendif\n"
	"\t\tz_str = [num2str(real(z), '%.2f'), z_str, num2str(imag(z), '%.2f'), 'j'];\n"
	"\t\tplot(freq(find(freq == markers(i)))/funit, abs(z), ...\n"
	"\t\t\t[abs_color, 'o;Z', port_n, ' @ ', num2str(freq(find(freq == markers(i)))/funit, '%.2f'), ' ', funit_name, ...\n"
	"\t\t\t\"\\n\", num2str(abs(z), '%.2f'), ' Ω ', z_str, ...\n"
	"\t\t\t';'], 'linewidth', 2);\n"
	"\t\tplot(freq(find(freq == markers(i)))/funit, imag(z), [im_color, 'o'], 'linewidth', 2);\n"
	"\t\tplot(freq(find(freq == markers(i)))/funit, real(z), [re_color, 'o'], 'linewidth', 2);\n"
	"\tendfor\n"
	"\tif legend_out\n"
	"\t\tlegend('Location', 'northeastoutside');\n"
	"\tendif\n"
	"\ttitle(['Impedance Z', port_n]);\n"
	"\txlabel(['Frequency (', funit_name, ')']);\n"
	"\tylabel('Impedance (Ω)');\n"
	"end\n");

//******************************************************************************
string const oems_m::oemshll_plotSParameters(
	"function h = oemshll_plotSParameters(s, names, freq, markers, colors, varargin)\n"
	"%\n"
	"% input:\n"
	"%   s:              - S parameters cell array.\n"
	"%                   - See example.\n"
	"%   names:          - S parameters name strings cell array.\n"
	"%   freq:           - Frequency array.\n"
	"%   markers:        - Frequency array. Put a marker on each frequency inside.\n"
	"%   colors:         - Color letters cell array.\n"
	"%                   - See the 'fmt' argument of the Octave 'plot' function.\n"
	"%\n"
	"% variable input:\n"
	"%   'legend_out':   - Put the legend boxe outside the graph.\n"
	"%                   - Default: false.\n"
	"%   'funit':        - Frequency unity factor.\n"
	"%                   - To use with 'funit_name'.\n"
	"%                   - Default: 1e6\n"
	"%   'funit_name':   - Frequency unity name.\n"
	"%                   - To use with 'funit'.\n"
	"%                   - Default: 'MHz'\n"
	"%\n"
	"% example:\n"
	"%   figure;\n"
	"%   oemshll_plotSParameters({s11, s21}, {'s11', 's21'}, freq, markers, {'m', 'g'});\n"
	"%   drawnow;\n"
	"%\n"
	"% author: Thomas Lepoix\n"
	"\n"
	"\tlegend_out = false;\n"
	"\tfunit = 1e6;\n"
	"\tfunit_name = 'MHz';\n"
	"\n"
	"\ti = 1;\n"
	"\twhile i <= numel(varargin)\n"
	"\t\tif (strcmp(varargin{i}, 'legend_out')==1);\n"
	"\t\t\tlegend_out = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'funit')==1);\n"
	"\t\t\tfunit = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'funit_name')==1);\n"
	"\t\t\tfunit_name = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telse\n"
	"\t\t\twarning('openEMS:oemshll_plotSParameters', ['unknown argument key: ''' varargin{i} '''']);\n"
	"\t\tendif\n"
	"\t\ti = i + 1;\n"
	"\tendwhile\n"
	"\n"
	"\tif numel(s) != numel(names) || numel(s) != numel(colors)\n"
	"\t\twarning('openEMS:oemshll_plotSParameters', 'mismatch beteen s, names and colors parameters cell number');\n"
	"\tendif\n"
	"\n"
	"\thold on;\n"
	"\tgrid on;\n"
	"\tfor i = 1:numel(s)\n"
	"\t\tplot(freq/funit, 20*log10(abs(s{i})), [colors{i}, '-'], 'Linewidth', 2);\n"
	"\t\tfor j = 1:numel(markers)\n"
	"\t\t\tplot(freq(find(freq == markers(j)))/funit, ...\n"
	"\t\t\t\t20*log10(abs(s{i}(find(freq == markers(j))))), ...\n"
	"\t\t\t\t[colors{i}, 'o;', names{i}, ' @ ', num2str(freq(find(freq == markers(j)))/funit, '%.2f'), ' ', funit_name, ...\n"
	"\t\t\t\t\"\\n\", num2str(20*log10(abs(s{i}(find(freq == markers(j)))))), 'dB', ...\n"
	"\t\t\t\t';'], 'linewidth', 2);\n"
	"\t\tendfor\n"
	"\tendfor\n"
	"\tif legend_out\n"
	"\t\tlegend('Location', 'northeastoutside');\n"
	"\tendif\n"
	"\ttitle('S parameters');\n"
	"\txlabel(['Frequency (', funit_name, ')']);\n"
	"\tylabel('S parameter (dB)');\n"
	"end\n");

//******************************************************************************
string const oems_m::oemshll_plotSmithChart(
	"function h = oemshll_plotSmithChart(s, names, freq, markers, color_order, varargin)\n"
	"%\n"
	"% input:\n"
	"%   s:              - S parameters cell array.\n"
	"%                   - See example.\n"
	"%   names:          - S parameters name strings cell array.\n"
	"%   freq:           - Frequency array.\n"
	"%   markers:        - Frequency array. Put a marker on each frequency inside.\n"
	"%   color_order:    - Color order array.\n"
	"%                   - See the 'ColorOrder' argument of the Octave 'gca' object.\n"
	"%\n"
	"% variable input:\n"
	"%   'legend_out':   - Put the legend boxe outside the graph.\n"
	"%                   - Default: false.\n"
	"%   'funit':        - Frequency unity factor.\n"
	"%                   - To use with 'funit_name'.\n"
	"%                   - Default: 1e6\n"
	"%   'funit_name':   - Frequency unity name.\n"
	"%                   - To use with 'funit'.\n"
	"%                   - Default: 'MHz'\n"
	"%\n"
	"% example:\n"
	"%   color_order = [ ...\n"
	"%   \t[1, 0, 1]; ... % m\n"
	"%   \t[0, 1, 0]];    % g\n"
	"%   figure;\n"
	"%   oemshll_plotSmithChart({s11, s21}, {'s11', 's21'}, freq, markers, color_order);\n"
	"%   drawnow;\n"
	"%\n"
	"% author: Thomas Lepoix\n"
	"\n"
	"\tlegend_out = false;\n"
	"\tfunit = 1e6;\n"
	"\tfunit_name = 'MHz';\n"
	"\n"
	"\ti = 1;\n"
	"\twhile i <= numel(varargin)\n"
	"\t\tif (strcmp(varargin{i}, 'legend_out')==1);\n"
	"\t\t\tlegend_out = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'funit')==1);\n"
	"\t\t\tfunit = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'funit_name')==1);\n"
	"\t\t\tfunit_name = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telse\n"
	"\t\t\twarning('openEMS:oemshll_plotSmithChart', ['unknown argument key: ''' varargin{i} '''']);\n"
	"\t\tendif\n"
	"\t\ti = i + 1;\n"
	"\tendwhile\n"
	"\n"
	"\tif numel(s) != numel(names)\n"
	"\t\twarning('openEMS:oemshll_plotSmithChart', 'mismatch beteen s and names parameters cell number');\n"
	"\tendif\n"
	"\n"
	"\tf_index = [];\n"
	"\tfor i = 1:numel(markers)\n"
	"\t\tf_index = [f_index, find(freq == markers(i))];\n"
	"\tendfor\n"
	"\n"
	"\tset(gca, 'ColorOrder', color_order, 'NextPlot', 'replacechildren');\n"
	"\n"
	"\tfirst = true;\n"
	"\tfor i = 1:numel(s)\n"
	"\t\tif first == true\n"
	"\t\t\tfirst = false;\n"
	"\t\t\th = plotSmith(s{i}, names{i}, freq, f_index);\n"
	"\t\telse\n"
	"\t\t\th = plotSmith(s{i}, names{i}, freq, f_index, 'nogrid');\n"
	"\t\tendif\n"
	"\t\tset(h, 'Linewidth', 2);\n"
	"\tendfor\n"
	"\tif legend_out\n"
	"\t\tlegend('Location', 'northeastoutside');\n"
	"\tendif\n"
	"end\n");

//******************************************************************************
string const oems_m::oemshll_plotPhaseResponse(
	"function h = oemshll_plotPhaseResponse(s, names, freq, markers, colors, varargin)\n"
	"%\n"
	"% input:\n"
	"%   s:              - S parameters cell array, should not be a reflection coefficient (Sxy, no Sxx).\n"
	"%                   - See example.\n"
	"%   names:          - S parameters name strings cell array.\n"
	"%   freq:           - Frequency array.\n"
	"%   markers:        - Frequency array. Put a marker on each frequency inside.\n"
	"%   colors:         - Color letters cell array.\n"
	"%                   - See the 'fmt' argument of the Octave 'plot' function.\n"
	"%\n"
	"% variable input:\n"
	"%   'wrap':         - Wrap phase between -180° and 180°.\n"
	"%                   - Default: false.\n"
	"%   'legend_out':   - Put the legend boxe outside the graph.\n"
	"%                   - Default: false.\n"
	"%   'funit':        - Frequency unity factor.\n"
	"%                   - To use with 'funit_name'.\n"
	"%                   - Default: 1e6\n"
	"%   'funit_name':   - Frequency unity name.\n"
	"%                   - To use with 'funit'.\n"
	"%                   - Default: 'MHz'\n"
	"%\n"
	"% example:\n"
	"%   figure;\n"
	"%   oemshll_plotPhaseResponse({s21, s31}, {'s21', 's31'}, freq, markers, {'m', 'g'});\n"
	"%   drawnow;\n"
	"%\n"
	"% author: Thomas Lepoix\n"
	"\n"
	"\twrap = false;\n"
	"\twrap_str = 'unwrapped';\n"
	"\tlegend_out = false;\n"
	"\tfunit = 1e6;\n"
	"\tfunit_name = 'MHz';\n"
	"\n"
	"\ti = 1;\n"
	"\twhile i <= numel(varargin)\n"
	"\t\tif (strcmp(varargin{i}, 'wrap')==1);\n"
	"\t\t\twrap = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'legend_out')==1);\n"
	"\t\t\tlegend_out = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'funit')==1);\n"
	"\t\t\tfunit = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'funit_name')==1);\n"
	"\t\t\tfunit_name = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telse\n"
	"\t\t\twarning('openEMS:oemshll_plotPhaseResponse', ['unknown argument key: ''' varargin{i} '''']);\n"
	"\t\tendif\n"
	"\t\ti = i + 1;\n"
	"\tendwhile\n"
	"\n"
	"\tif wrap\n"
	"\t\twrap_str = 'wrapped';\n"
	"\telse\n"
	"\t\twrap_str = 'unwrapped';\n"
	"\tendif\n"
	"\tif numel(s) != numel(names) || numel(s) != numel(colors)\n"
	"\t\twarning('openEMS:oemshll_plotPhaseResponse', 'mismatch beteen s, names and colors parameters cell number');\n"
	"\tendif\n"
	"\n"
	"\thold on;\n"
	"\tgrid on;\n"
	"\tfor i = 1:numel(s)\n"
	"\t\tif wrap\n"
	"\t\t\tphi = (180/pi) * angle(s{i});\n"
	"\t\telse\n"
	"\t\t\tphi = (180/pi) * unwrap(angle(s{i}));\n"
	"\t\tendif\n"
	"\t\tplot(freq/funit, phi, [colors{i}, '-'], 'Linewidth', 2);\n"
	"\t\tfor j = 1:numel(markers)\n"
	"\t\t\tplot(freq(find(freq == markers(j)))/funit, ...\n"
	"\t\t\t\tphi(find(freq == markers(j))), ...\n"
	"\t\t\t\t[colors{i}, 'o;', names{i}, ' @ ', num2str(freq(find(freq == markers(j)))/funit, '%.2f'), ' ', funit_name, ...\n"
	"\t\t\t\t\"\\n\", num2str(phi(find(freq == markers(j)))), '°', ...\n"
	"\t\t\t\t';'], 'linewidth', 2);\n"
	"\t\tendfor\n"
	"\tendfor\n"
	"\tif legend_out\n"
	"\t\tlegend('Location', 'northeastoutside');\n"
	"\tendif\n"
	"\tif wrap\n"
	"\t\tylim([-180, 180]);\n"
	"\t\tset(gca, 'ytick', -180:30:180);\n"
	"\tendif\n"
	"\ttitle(['Phase response (', wrap_str, ')']);\n"
	"\txlabel(['Frequency (', funit_name, ')']);\n"
	"\tylabel('Phase response (°)');\n"
	"end\n");

//******************************************************************************
string const oems_m::oemshll_plotPhaseDelay(
	"function h = oemshll_plotPhaseDelay(s, names, freq, markers, colors, varargin)\n"
	"%\n"
	"% input:\n"
	"%   s:              - S parameters cell array, should not be a reflection coefficient (Sxy, no Sxx).\n"
	"%                   - See example.\n"
	"%   names:          - S parameters name strings cell array.\n"
	"%   freq:           - Frequency array.\n"
	"%   markers:        - Frequency array. Put a marker on each frequency inside.\n"
	"%   colors:         - Color letters cell array.\n"
	"%                   - See the 'fmt' argument of the Octave 'plot' function.\n"
	"%\n"
	"% variable input:\n"
	"%   'legend_out':   - Put the legend boxe outside the graph.\n"
	"%                   - Default: false.\n"
	"%   'funit':        - Frequency unity factor.\n"
	"%                   - To use with 'funit_name'.\n"
	"%                   - Default: 1e6\n"
	"%   'funit_name':   - Frequency unity name.\n"
	"%                   - To use with 'funit'.\n"
	"%                   - Default: 'MHz'\n"
	"%\n"
	"% example:\n"
	"%   figure;\n"
	"%   oemshll_plotPhaseDelay({s21, s31}, {'s21', 's31'}, freq, markers, {'m', 'g'});\n"
	"%   drawnow;\n"
	"%\n"
	"% author: Thomas Lepoix\n"
	"\n"
	"\tlegend_out = false;\n"
	"\tfunit = 1e6;\n"
	"\tfunit_name = 'MHz';\n"
	"\n"
	"\ti = 1;\n"
	"\twhile i <= numel(varargin)\n"
	"\t\tif (strcmp(varargin{i}, 'legend_out')==1);\n"
	"\t\t\tlegend_out = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'funit')==1);\n"
	"\t\t\tfunit = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'funit_name')==1);\n"
	"\t\t\tfunit_name = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telse\n"
	"\t\t\twarning('openEMS:oemshll_plotPhaseDelay', ['unknown argument key: ''' varargin{i} '''']);\n"
	"\t\tendif\n"
	"\t\ti = i + 1;\n"
	"\tendwhile\n"
	"\n"
	"\tif numel(s) != numel(names) || numel(s) != numel(colors)\n"
	"\t\twarning('openEMS:oemshll_plotPhaseDelay', 'mismatch beteen s, names and colors parameters cell number');\n"
	"\tendif\n"
	"\n"
	"\thold on;\n"
	"\tgrid on;\n"
	"\tfor i = 1:numel(s)\n"
	"\t\tphase_delay = -unwrap(angle(s{i}))./(freq/funit*2*pi);\n"
	"\t\tplot(freq/funit, phase_delay, [colors{i}, '-'], 'Linewidth', 2);\n"
	"\t\tfor j = 1:numel(markers)\n"
	"\t\t\tplot(freq(find(freq == markers(j)))/funit, ...\n"
	"\t\t\t\tphase_delay(find(freq == markers(j))), ...\n"
	"\t\t\t\t[colors{i}, 'o;', names{i}, ' @ ', num2str(freq(find(freq == markers(j)))/funit, '%.2f'), ' ', funit_name, ...\n"
	"\t\t\t\t\"\\n\", num2str(phase_delay(find(freq == markers(j)))), 's', ...\n"
	"\t\t\t\t';'], 'linewidth', 2);\n"
	"\t\tendfor\n"
	"\tendfor\n"
	"\tif legend_out\n"
	"\t\tlegend('Location', 'northeastoutside');\n"
	"\tendif\n"
	"\ttitle('Phase delay');\n"
	"\txlabel(['Frequency (', funit_name, ')']);\n"
	"\tylabel('Phase delay (s)');\n"
	"end\n");

//******************************************************************************
string const oems_m::oemshll_plotGroupDelay(
	"function h = oemshll_plotGroupDelay(s, names, freq, markers, colors, varargin)\n"
	"%\n"
	"% input:\n"
	"%   s:              - S parameters cell array, should not be a reflection coefficient (Sxy, no Sxx).\n"
	"%                   - See example.\n"
	"%   names:          - S parameters name strings cell array.\n"
	"%   freq:           - Frequency array.\n"
	"%   markers:        - Frequency array. Put a marker on each frequency inside.\n"
	"%   colors:         - Color letters cell array.\n"
	"%                   - See the 'fmt' argument of the Octave 'plot' function.\n"
	"%\n"
	"% variable input:\n"
	"%   'legend_out':   - Put the legend boxe outside the graph.\n"
	"%                   - Default: false.\n"
	"%   'funit':        - Frequency unity factor.\n"
	"%                   - To use with 'funit_name'.\n"
	"%                   - Default: 1e6\n"
	"%   'funit_name':   - Frequency unity name.\n"
	"%                   - To use with 'funit'.\n"
	"%                   - Default: 'MHz'\n"
	"%\n"
	"% example:\n"
	"%   figure;\n"
	"%   oemshll_plotGroupDelay({s21, s31}, {'s21', 's31'}, freq, markers, {'m', 'g'});\n"
	"%   drawnow;\n"
	"%\n"
	"% author: Thomas Lepoix\n"
	"\n"
	"\tlegend_out = false;\n"
	"\tfunit = 1e6;\n"
	"\tfunit_name = 'MHz';\n"
	"\n"
	"\ti = 1;\n"
	"\twhile i <= numel(varargin)\n"
	"\t\tif (strcmp(varargin{i}, 'legend_out')==1);\n"
	"\t\t\tlegend_out = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'funit')==1);\n"
	"\t\t\tfunit = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'funit_name')==1);\n"
	"\t\t\tfunit_name = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telse\n"
	"\t\t\twarning('openEMS:oemshll_plotGroupDelay', ['unknown argument key: ''' varargin{i} '''']);\n"
	"\t\tendif\n"
	"\t\ti = i + 1;\n"
	"\tendwhile\n"
	"\n"
	"\tif numel(s) != numel(names) || numel(s) != numel(colors)\n"
	"\t\twarning('openEMS:oemshll_plotGroupDelay', 'mismatch beteen s, names and colors parameters cell number');\n"
	"\tendif\n"
	"\n"
	"\thold on;\n"
	"\tgrid on;\n"
	"\tfor i = 1:numel(s)\n"
	"\t\tphi = unwrap(angle(s{i}));\n"
	"\t\tk = numel(phi);\n"
	"\t\tgroup_delay(1) = (-1/(2*pi)) * (((phi(2) - phi(1))/(freq(2) - freq(1))));\n"
	"\t\tgroup_delay(k) = (-1/(2*pi)) * (((phi(k) - phi(k - 1))/(freq(k) - freq(k - 1))));\n"
	"\t\tfor n = 2:k-1\n"
	"\t\t\tgroup_delay(n) = (-1/(4*pi)) * (((phi(n) - phi(n - 1)) / (freq(n) - freq(n - 1))) ...\n"
	"\t\t\t\t+ ((phi(n + 1) - phi(n)) / (freq(n + 1) - freq(n))));\n"
	"\t\tendfor\n"
	"\t\tplot(freq/funit, group_delay, [colors{i}, '-'], 'Linewidth', 2);\n"
	"\t\tfor j = 1:numel(markers)\n"
	"\t\t\tplot(freq(find(freq == markers(j)))/funit, ...\n"
	"\t\t\t\tgroup_delay(find(freq == markers(j))), ...\n"
	"\t\t\t\t[colors{i}, 'o;', names{i}, ' @ ', num2str(freq(find(freq == markers(j)))/funit, '%.2f'), ' ', funit_name, ...\n"
	"\t\t\t\t\"\\n\", num2str(group_delay(find(freq == markers(j)))), 's', ...\n"
	"\t\t\t\t';'], 'linewidth', 2);\n"
	"\t\tendfor\n"
	"\tendfor\n"
	"\tif legend_out\n"
	"\t\tlegend('Location', 'northeastoutside');\n"
	"\tendif\n"
	"\ttitle('Group delay');\n"
	"\txlabel(['Frequency (', funit_name, ')']);\n"
	"\tylabel('Group delay (s)');\n"
	"end\n");

//******************************************************************************
string const oems_m::oemshll_postProcess(
	"function oemshll_postProcess(name, path_simulation, path_result, port, port_index, active_ports, fstart, fstop, points, varargin)\n"
	"%\n"
	"% input:\n"
	"%   name:            - Simulation name.\n"
	"%   path_simulation: - Simulation directory path.\n"
	"%   path_result:     - Result directory path.\n"
	"%   port:            - Ports data structure.\n"
	"%                    - See 'calcPort' function.\n"
	"%   port_index:      - Ports numbers.\n"
	"%                    - Example: [1, 2]\n"
	"%   active_ports:    - Active ports numbers.\n"
	"%                    - Example: [1]\n"
	"%   fstart:          - Start frequency.\n"
	"%   fstop:           - Stop frequency.\n"
	"%   points:          - Number of points on graphs.\n"
	"%\n"
	"% variable input:\n"
	"%   'legend_out':         - Put the legend boxe outside the graph.\n"
	"%                         - Default: false.\n"
	"%   'graphics_format':    - Format to save graphics.\n"
	"%                         - See 'print' function.\n"
	"%                         - Default: '.svg'\n"
	"%   'nf2ff':              - Enable NF2FF calculation.\n"
	"%                         - Default: false\n"
	"%   'nf2ff_data':         - NF2FF data structure.\n"
	"%                         - See 'CreateNF2FFBox' and 'CalcNF2FF' functions.\n"
	"%   'nf2ff_mode':         - Set 'CalcNF2FF' 'Mode' argument.\n"
	"%                         - 0: Read existing datas, calcul NF2FF if no existing datas.\n"
	"%                         - 1: Calcul NF2FF, overwrite existing datas.\n"
	"%                         - 2: Do not calcul NF2FF, read existing datas.\n"
	"%                         - Default: 0\n"
	"%   'nf2ff_3d':           - Enable 3D far field representation.\n"
	"%                         - Default: false.\n"
	"%   'nf2ff_3d_phistep':   - NF2FF 3D Phi angle (elevation) step.\n"
	"%                         - Default: 5\n"
	"%   'nf2ff_3d_theta':     - NF2FF 3D Theta angle (azimuth) step.\n"
	"%                         - Default: 5\n"
	"%   'nf2ff_3d_frames':    - Create an animated '.gif' of the 3D radiation pattern.\n"
	"%                         - 1: No '.gif', print a 3D pattern for each marked frequency.\n"
	"%                         - >1: Number of frames between 'fstart' and 'fstop'.\n"
	"%                         - Requires ImageMagick.\n"
	"%                         - See 'plotFF3D_frames' function.\n"
	"%                         - Default: 1\n"
	"%   'nf2ff_3d_delay':     - Delay between each '.gif' frame, in ms.\n"
	"%                         - See 'convert' '-delay' argument.\n"
	"%                         - Default: 30\n"
	"%   'nf2ff_3d_dump':      - Dump 3D radiation pattern to visualize with Paraview.\n"
	"%                         - Default: false\n"
	"%   'nf2ff_3d_dump_unit': - Dump size unit factor.\n"
	"%                         - See 'DumpFF2VTK' function.\n"
	"%                         - Default: 1\n"
	"%   'f_select':           - Place markers on selected frequencies.\n"
	"%                         - Without any selected frequency, a marker is placed\n"
	"%                           at the middle of the frequency range.\n"
	"%   'f_min':              - Place markers at some curve minimums.\n"
	"%                         - Example: ['s11', 's21']\n"
	"%   'f_max':              - Place markers at some curve maximums.\n"
	"%                         - Example: ['s11', 's21']\n"
	"%   'f_equal':            - Place markers at some curve nearest points to some value.\n"
	"%                         - Example: ['s11', 's21'] [-3.5, -20]\n"
	"%\n"
	"% author: Thomas Lepoix\n"
	"\n"
	"\tlegend_out = false;\n"
	"\tgraphics_format = '.svg';\n"
	"\tflag_nf2ff = false;\n"
	"\tnf2ff_mode = 1;\n"
	"\tnf2ff_3d = false;\n"
	"\tnf2ff_3d_phistep = 5;\n"
	"\tnf2ff_3d_thetastep = 5;\n"
	"\tnf2ff_3d_frames = 1;\n"
	"\tnf2ff_3d_delay = 30;\n"
	"\tnf2ff_3d_dump = false;\n"
	"\tnf2ff_3d_dump_unit = 1;\n"
	"\tflag_f = [];\n"
	"\tf_max = num2str([]);\n"
	"\tf_min = num2str([]);\n"
	"\tf_equal_s = num2str([]);\n"
	"\tf_equal_v = [];\n"
	"\n"
	"\ti = 1;\n"
	"\twhile i <= numel(varargin)\n"
	"\t\tif (strcmp(varargin{i}, 'legend_out')==1);\n"
	"\t\t\tlegend_out = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'graphics_format')==1);\n"
	"\t\t\tgraphics_format = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'nf2ff')==1);\n"
	"\t\t\tflag_nf2ff = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'nf2ff_data')==1);\n"
	"\t\t\tnf2ff = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'nf2ff_mode')==1);\n"
	"\t\t\tnf2ff_mode = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'nf2ff_3d')==1);\n"
	"\t\t\tnf2ff_3d = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'nf2ff_3d_phistep')==1);\n"
	"\t\t\tnf2ff_3d_phistep = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'nf2ff_3d_thetastep')==1);\n"
	"\t\t\tnf2ff_3d_thetastep = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'nf2ff_3d_frames')==1);\n"
	"\t\t\tnf2ff_3d_frames = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'nf2ff_3d_delay')==1);\n"
	"\t\t\tnf2ff_3d_delay = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'nf2ff_3d_dump')==1);\n"
	"\t\t\tnf2ff_3d_dump = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'nf2ff_3d_dump_unit')==1);\n"
	"\t\t\tnf2ff_3d_dump_unit = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'f_select')==1);\n"
	"\t\t\tflag_f = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'f_min')==1);\n"
	"\t\t\tf_min = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'f_max')==1);\n"
	"\t\t\tf_max = varargin{i+1};\n"
	"\t\t\ti = i + 1;\n"
	"\t\telseif (strcmp(varargin{i}, 'f_equal')==1);\n"
	"\t\t\tf_equal_s = varargin{i+1};\n"
	"\t\t\tf_equal_v = varargin{i+2};\n"
	"\t\t\ti = i + 2;\n"
	"\t\telse\n"
	"\t\t\twarning('openEMS:oemshll_postProcess', ['unknown argument key: ''' varargin{i} '''']);\n"
	"\t\tendif\n"
	"\t\ti = i + 1;\n"
	"\tendwhile\n"
	"\n"
	"%%%% VARIABLES\n"
	"color_order = [ ...\n"
	"\t[1, 0, 1]; ... % m\n"
	"\t[0, 1, 0]; ... % g\n"
	"\t[0, 1, 1]; ... % c\n"
	"\t[1, 1, 0]; ... % y\n"
	"\t[1, 0, 0]; ... % r\n"
	"\t[0, 0, 1]; ... % b\n"
	"\t[0, 0, 0]];    % k\n"
	"color_order_letter = [ ...\n"
	"\t'm', ...\n"
	"\t'g', ...\n"
	"\t'c', ...\n"
	"\t'y', ...\n"
	"\t'r', ...\n"
	"\t'b', ...\n"
	"\t'k'];\n"
	"port_suffix = '-p';\n"
	"frequency_format = ['%0', num2str(numel(num2str(fstop))), '.0f'];\n"
	"funit = 1e+3;\n"
	"funit_name = 'kHz';\n"
	"if fstop >= 1e+9 && fstart >= 1e+9\n"
	"\tfunit = 1e+9;\n"
	"\tfunit_name = 'GHz';\n"
	"elseif fstop >= 1e+6 && fstart >= 1e+6\n"
	"\tfunit = 1e+6;\n"
	"\tfunit_name = 'MHz';\n"
	"endif\n"
	"freq = linspace(fstart, fstop, points);\n"
	"if !isempty(flag_f)\n"
	"\tf_select = flag_f;\n"
	"\tfreq = [freq, f_select];\n"
	"\tfreq = sort(unique(freq));\n"
	"\tpoints = numel(freq);\n"
	"elseif !isempty(f_max) || !isempty(f_min) || (!isempty(f_equal_s) && !isempty(f_equal_v))\n"
	"\tf_select = [];\n"
	"else\n"
	"\tf_select = [freq(round(points / 2))];\n"
	"endif\n"
	"\n"
	"% calcPort\n"
	"for i = 1:numel(port_index)\n"
	"\tport{port_index(i)} = calcPort(port{port_index(i)}, path_simulation, freq);\n"
	"endfor\n"
	"\n"
	"% S parameters\n"
	"for i = 1:numel(active_ports)\n"
	"\tport_suffix = [port_suffix, num2str(active_ports(i))];\n"
	"\tfor j = 1:numel(port_index)\n"
	"\t\ts{port_index(j), active_ports(i)} = port{port_index(j)}.uf.ref ./ port{active_ports(i)}.uf.inc;\n"
	"\tendfor\n"
	"endfor\n"
	"\n"
	"if !isempty(f_max)\n"
	"\tfor i = 1:rows(f_max)\n"
	"\t\tf_max_str = [f_max(i, 1), '{', f_max(i, 2), ', ', f_max(i, 3), '}'];\n"
	"\t\tf_select = [f_select, freq(find(eval(f_max_str) == max(eval(f_max_str))))];\n"
	"\tendfor\n"
	"endif\n"
	"if !isempty(f_min)\n"
	"\tfor i = 1:rows(f_min)\n"
	"\t\tf_min_str = [f_min(i, 1), '{', f_min(i, 2), ', ', f_min(i, 3), '}'];\n"
	"\t\tf_select = [f_select, freq(find(eval(f_min_str) == min(eval(f_min_str))))];\n"
	"\tendfor\n"
	"endif\n"
	"if !isempty(f_equal_s) && !isempty(f_equal_v)\n"
	"\tfor i = 1:rows(f_equal_s)\n"
	"\t\tf_equal_s_str = [f_equal_s(i, 1), '{', f_equal_s(i, 2), ', ', f_equal_s(i, 3), '}'];\n"
	"\t\tf_select = [f_select, freq(find( ...\n"
	"\t\t\tabs(20*log10(abs(eval(f_equal_s_str))) - f_equal_v(i)) ...\n"
	"\t\t\t== min(abs(20*log10(abs(eval(f_equal_s_str))) - f_equal_v(i))) ))];\n"
	"\tendfor\n"
	"endif\n"
	"\n"
	"%%%% SAVE TOUCHSTONE\n"
	"spara = [];\n"
	"for i = 1:numel(port_index)\n"
	"\tis_active = false;\n"
	"\tfor j = 1:numel(active_ports)\n"
	"\t\tif port_index(i) == active_ports(j)\n"
	"\t\t\tis_active = true;\n"
	"\t\tendif\n"
	"\tendfor\n"
	"\tif is_active\n"
	"\t\tfor j = 1:numel(port_index)\n"
	"\t\t\tspara(port_index(j), port_index(i), :) = s{port_index(j), port_index(i)};\n"
	"\t\tendfor\n"
	"\telse\n"
	"\t\tfor j = 1:numel(port_index)\n"
	"\t\t\tspara(port_index(j), port_index(i), :) = repmat([0], 1, points);\n"
	"\t\tendfor\n"
	"\tendif\n"
	"endfor\n"
	"write_touchstone('s', freq, spara, [path_result, '/', name, port_suffix, '.s2p']);\n"
	"% Append header to touchstone file\n"
	"fd = fopen([path_result, '/', name, port_suffix, '.s2p'], 'r');\n"
	"tmp = fread(fd);\n"
	"fclose(fd);\n"
	"fd = fopen([path_result, '/', name, port_suffix, '.s2p'], 'wt');\n"
	"header = [\"! Generated by a Qucs-RFlayout generated OpenEMS script\\n\"];\n" //TODO
	"fprintf(fd, '%s%s', header, tmp);\n"
	"fclose(fd);\n"
	"\n"
	"%%%% PLOT S PARAMETERS\n"
	"spara = {};\n"
	"names = {};\n"
	"colors = {};\n"
	"color_i = 1;\n"
	"for i = 1:numel(active_ports)\n"
	"\tfor j = 1:numel(port_index)\n"
	"\t\tspara = {spara{:}, s{port_index(j), active_ports(i)}};\n"
	"\t\tnames = {names{:}, ['s', num2str(port_index(j)), num2str(active_ports(i))]};\n"
	"\t\tcolors = {colors{:}, color_order_letter(color_i)};\n"
	"\t\tcolor_i = color_i + 1;\n"
	"\tendfor\n"
	"endfor\n"
	"figure;\n"
	"oemshll_plotSParameters(spara, names, freq, f_select, colors, ...\n"
	"\t'legend_out', legend_out, 'funit', funit, 'funit_name', funit_name);\n"
	"drawnow;\n"
	"print([path_result, '/', name, '-s', graphics_format]);\n"
	"\n"
	"%%%% PLOT SMITH CHART\n"
	"spara = {};\n"
	"names = {};\n"
	"color_order_smith = [];\n"
	"color_i = 1;\n"
	"for i = 1:numel(active_ports)\n"
	"\tfor j = 1:numel(port_index)\n"
	"\t\tspara = {spara{:}, s{port_index(j), active_ports(i)}};\n"
	"\t\tnames = {names{:}, ['s', num2str(port_index(j)), num2str(active_ports(i))]};\n"
	"\t\tcolor_order_smith = [color_order_smith(:,:); [color_order(color_i, :)]];\n"
	"\t\tcolor_i = color_i + 1;\n"
	"\tendfor\n"
	"endfor\n"
	"figure;\n"
	"oemshll_plotSmithChart(spara, names, freq, f_select, color_order_smith, ...\n"
	"\t'legend_out', legend_out, 'funit', funit, 'funit_name', funit_name);\n"
	"drawnow;\n"
	"print([path_result, '/', name, '-smith', graphics_format]);\n"
	"\n"
	"%%%% PLOT UNWRAPPED PHASE RESPONSE\n"
	"spara = {};\n"
	"names = {};\n"
	"colors = {};\n"
	"color_i = 1;\n"
	"if numel(port_index) > 1\n"
	"\tfor i = 1:numel(active_ports)\n"
	"\t\tfor j = 1:numel(port_index)\n"
	"\t\t\tif i == j\n"
	"\t\t\t\tcontinue;\n"
	"\t\t\tendif\n"
	"\t\t\tspara = {spara{:}, s{port_index(j), active_ports(i)}};\n"
	"\t\t\tnames = {names{:}, ['φ', num2str(port_index(j)), num2str(active_ports(i))]};\n"
	"\t\t\tcolors = {colors{:}, color_order_letter(color_i)};\n"
	"\t\t\tcolor_i = color_i + 1;\n"
	"\t\tendfor\n"
	"\tendfor\n"
	"\tfigure;\n"
	"\toemshll_plotPhaseResponse(spara, names, freq, f_select, colors, ...\n"
	"\t\t'wrap', false, ...\n"
	"\t\t'legend_out', legend_out, 'funit', funit, 'funit_name', funit_name);\n"
	"\tdrawnow;\n"
	"\tprint([path_result, '/', name, '-phase-response-unwrapped', graphics_format]);\n"
	"endif\n"
	"\n"
	"%%%% PLOT WRAPPED PHASE RESPONSE\n"
	"spara = {};\n"
	"names = {};\n"
	"colors = {};\n"
	"color_i = 1;\n"
	"if numel(port_index) > 1\n"
	"\tfor i = 1:numel(active_ports)\n"
	"\t\tfor j = 1:numel(port_index)\n"
	"\t\t\tif i == j\n"
	"\t\t\t\tcontinue;\n"
	"\t\t\tendif\n"
	"\t\t\tspara = {spara{:}, s{port_index(j), active_ports(i)}};\n"
	"\t\t\tnames = {names{:}, ['φ', num2str(port_index(j)), num2str(active_ports(i))]};\n"
	"\t\t\tcolors = {colors{:}, color_order_letter(color_i)};\n"
	"\t\t\tcolor_i = color_i + 1;\n"
	"\t\tendfor\n"
	"\tendfor\n"
	"\tfigure;\n"
	"\toemshll_plotPhaseResponse(spara, names, freq, f_select, colors, ...\n"
	"\t\t'wrap', true, ...\n"
	"\t\t'legend_out', legend_out, 'funit', funit, 'funit_name', funit_name);\n"
	"\tdrawnow;\n"
	"\tprint([path_result, '/', name, '-phase-response-wrapped', graphics_format]);\n"
	"endif\n"
	"\n"
	"%%%% PLOT PHASE DELAY\n"
	"spara = {};\n"
	"names = {};\n"
	"colors = {};\n"
	"color_i = 1;\n"
	"if numel(port_index) > 1\n"
	"\tfor i = 1:numel(active_ports)\n"
	"\t\tfor j = 1:numel(port_index)\n"
	"\t\t\tif i == j\n"
	"\t\t\t\tcontinue;\n"
	"\t\t\tendif\n"
	"\t\t\tspara = {spara{:}, s{port_index(j), active_ports(i)}};\n"
	"\t\t\tnames = {names{:}, ['PD', num2str(port_index(j)), num2str(active_ports(i))]};\n"
	"\t\t\tcolors = {colors{:}, color_order_letter(color_i)};\n"
	"\t\t\tcolor_i = color_i + 1;\n"
	"\t\tendfor\n"
	"\tendfor\n"
	"\tfigure;\n"
	"\toemshll_plotPhaseDelay(spara, names, freq, f_select, colors, ...\n"
	"\t\t'legend_out', legend_out, 'funit', funit, 'funit_name', funit_name);\n"
	"\tdrawnow;\n"
	"\tprint([path_result, '/', name, '-phase-delay', graphics_format]);\n"
	"endif\n"
	"\n"
	"%%%% PLOT GROUP DELAY\n"
	"spara = {};\n"
	"names = {};\n"
	"colors = {};\n"
	"color_i = 1;\n"
	"if numel(port_index) > 1\n"
	"\tfor i = 1:numel(active_ports)\n"
	"\t\tfor j = 1:numel(port_index)\n"
	"\t\t\tif i == j\n"
	"\t\t\t\tcontinue;\n"
	"\t\t\tendif\n"
	"\t\t\tspara = {spara{:}, s{port_index(j), active_ports(i)}};\n"
	"\t\t\tnames = {names{:}, ['GD', num2str(port_index(j)), num2str(active_ports(i))]};\n"
	"\t\t\tcolors = {colors{:}, color_order_letter(color_i)};\n"
	"\t\t\tcolor_i = color_i + 1;\n"
	"\t\tendfor\n"
	"\tendfor\n"
	"\tfigure;\n"
	"\toemshll_plotGroupDelay(spara, names, freq, f_select, colors, ...\n"
	"\t\t'legend_out', legend_out, 'funit', funit, 'funit_name', funit_name);\n"
	"\tdrawnow;\n"
	"\tprint([path_result, '/', name, '-group-delay', graphics_format]);\n"
	"endif\n"
	"\n"
	"%%%% PLOT PORT IMPEDANCES\n"
	"for i = 1:numel(active_ports)\n"
	"\tz = port{active_ports(i)}.uf.tot./port{active_ports(i)}.if.tot;\n"
	"\tfigure;\n"
	"\toemshll_plotFeedImpedance(z, num2str(active_ports(i)), freq, f_select, 'k', 'm', 'g', ...\n"
	"\t\t'legend_out', legend_out, 'funit', funit, 'funit_name', funit_name);\n"
	"\tdrawnow;\n"
	"\tprint([path_result, '/', name, '-z', num2str(active_ports(i)), graphics_format]);\n"
	"endfor\n"
	"\n"
	"%%%% PLOT PORT VSWR\n"
	"for i = 1:numel(active_ports)\n"
	"\tfigure;\n"
	"\toemshll_plotVSWR(s{active_ports(i), active_ports(i)}, num2str(active_ports(i)), freq, f_select, color_order_letter(i), ...\n"
	"\t\t'legend_out', legend_out, 'funit', funit, 'funit_name', funit_name);\n"
	"\tdrawnow;\n"
	"\tprint([path_result, '/', name, '-vswr', num2str(active_ports(i)), graphics_format]);\n"
	"endfor\n"
	"\n"
	"%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% NF2FF\n"
	"\n"
	"if flag_nf2ff\n"
	"\n"
	"%%%% ELEVATION\n"
	"% A trick to use only needed colors as 'polarFF()' interfer with color order\n"
	"color_order_polar = [ ...\n"
	"\tcolor_order(1, :); ...\n"
	"\tcolor_order(2, :)];\n"
	"nf2ff_elev = CalcNF2FF(nf2ff, path_simulation, f_select, ...\n"
	"\t[-180:2:180]*pi/180, [0, 90]*pi/180, ...\n"
	"\t'Center', nf2ff.center, ...\n"
	"\t'Verbose', 1, 'Mode', nf2ff_mode, 'Outfile', 'nf2ff_theta.h5');\n"
	"\n"
	"% Polar dB normalized\n"
	"for i = 1:numel(f_select)\n"
	"\tfigure;\n"
	"\tset(gca, 'ColorOrder', color_order_polar, 'NextPlot', 'replacechildren');\n"
	"\th = polarFF(nf2ff_elev, 'freq_index', i, 'xaxis', 'theta', 'param', [1, 2], 'normalize', 1, 'xtics', 10);\n"
	"\tset(h, 'Linewidth', 2);\n"
	"\tdrawnow;\n"
	"\tprint([path_result, '/', name, '-ff-elev-polar-dbn@', ...\n"
	"\t\tnum2str(f_select(i), frequency_format), ...\n"
	"\t\tgraphics_format]);\n"
	"endfor\n"
	"\n"
	"% Polar dBi\n"
	"for i = 1:numel(f_select)\n"
	"\tfigure;\n"
	"\tset(gca, 'ColorOrder', color_order_polar, 'NextPlot', 'replacechildren');\n"
	"\th = polarFF(nf2ff_elev, 'freq_index', i, 'xaxis', 'theta', 'param', [1, 2], 'logscale', [-20, 10], 'xtics', 10);\n"
	"\tset(h, 'Linewidth', 2);\n"
	"\tdrawnow;\n"
	"\tprint([path_result, '/', name, '-ff-elev-polar-dbi@', ...\n"
	"\t\tnum2str(f_select(i), frequency_format), ...\n"
	"\t\tgraphics_format]);\n"
	"endfor\n"
	"\n"
	"% Rect dBi\n"
	"for i = 1:numel(f_select)\n"
	"\tfigure;\n"
	"\tset(gca, 'ColorOrder', color_order, 'NextPlot', 'replacechildren');\n"
	"\th = plotFFdB(nf2ff_elev, 'freq_index', i, 'xaxis', 'theta', 'param', [1, 2]);\n"
	"\tset(h, 'Linewidth', 2);\n"
	"\tif legend_out\n"
	"\t\tlegend('Location', 'northeastoutside');\n"
	"\tendif\n"
	"\tdrawnow;\n"
	"\tprint([path_result, '/', name, '-ff-elev-rect-dbi@', ...\n"
	"\t\tnum2str(f_select(i), frequency_format), ...\n"
	"\t\tgraphics_format]);\n"
	"endfor\n"
	"\n"
	"%%%% AZIMUTH\n"
	"% A trick to use only needed colors as 'polarFF()' interfer with color order\n"
	"color_order_polar = [ ...\n"
	"\tcolor_order(3, :); ...\n"
	"\tcolor_order(1, :); ...\n"
	"\tcolor_order(2, :)];\n"
	"nf2ff_azim = CalcNF2FF(nf2ff, path_simulation, f_select, ...\n"
	"\t[30, 60, 90]*pi/180, [-180:2:180]*pi/180, ...\n"
	"\t'Center', nf2ff.center, ...\n"
	"\t'Verbose', 1, 'Mode', nf2ff_mode, 'Outfile', 'nf2ff_phi.h5');\n"
	"\n"
	"% Polar dB normalized\n"
	"for i = 1:numel(f_select)\n"
	"\tfigure;\n"
	"\tset(gca, 'ColorOrder', color_order_polar, 'NextPlot', 'replacechildren');\n"
	"\th = polarFF(nf2ff_azim, 'freq_index', i, 'xaxis', 'phi', 'param', [1, 2, 3], 'normalize', 1, 'xtics', 10);\n"
	"\tset(h, 'Linewidth', 2);\n"
	"\tdrawnow;\n"
	"\tprint([path_result, '/', name, '-ff-azim-polar-dbn@', ...\n"
	"\t\tnum2str(f_select(i), frequency_format), ...\n"
	"\t\tgraphics_format]);\n"
	"endfor\n"
	"\n"
	"% Polar dBi\n"
	"for i = 1:numel(f_select)\n"
	"\tfigure;\n"
	"\tset(gca, 'ColorOrder', color_order_polar, 'NextPlot', 'replacechildren');\n"
	"\th = polarFF(nf2ff_azim, 'freq_index', i, 'xaxis', 'phi', 'param', [1, 2, 3], 'logscale', [-20, 10], 'xtics', 10);\n"
	"\tset(h, 'Linewidth', 2);\n"
	"\tdrawnow;\n"
	"\tprint([path_result, '/', name, '-ff-azim-polar-dbi@', ...\n"
	"\t\tnum2str(f_select(i), frequency_format), ...\n"
	"\t\tgraphics_format]);\n"
	"endfor\n"
	"\n"
	"% Rect dBi\n"
	"for i = 1:numel(f_select)\n"
	"\tfigure;\n"
	"\tset(gca, 'ColorOrder', color_order, 'NextPlot', 'replacechildren');\n"
	"\th = plotFFdB(nf2ff_azim, 'freq_index', i, 'xaxis', 'phi', 'param', [1, 2, 3]);\n"
	"\tset(h, 'Linewidth', 2);\n"
	"\tif legend_out\n"
	"\t\tlegend('Location', 'northeastoutside');\n"
	"\tendif\n"
	"\tdrawnow;\n"
	"\tprint([path_result, '/', name, '-ff-azim-rect-dbi@', ...\n"
	"\t\tnum2str(f_select(i), frequency_format), ...\n"
	"\t\tgraphics_format]);\n"
	"endfor\n"
	"\n"
	"%%%% 3D\n"
	"if nf2ff_3d\n"
	"phi_range = [-180:nf2ff_3d_phistep:180];\n"
	"theta_range = [0:nf2ff_3d_thetastep:180];\n"
	"if nf2ff_3d_frames > 1\n"
	"\tfreqs = [fstart:(fstop-fstart) / (nf2ff_3d_frames-1):fstop];\n"
	"\tgif = true;\n"
	"\tshow_each = false;\n"
	"else\n"
	"\tfreqs = f_select;\n"
	"\tgif = false;\n"
	"\tshow_each = true;\n"
	"endif\n"
	"nf2ff_3d = CalcNF2FF(nf2ff, path_simulation, freqs, theta_range*pi/180, phi_range*pi/180, ...\n"
	"\t'Center', nf2ff.center, ...\n"
	"\t'Verbose', 1, 'Mode', nf2ff_mode, 'Outfile', 'nf2ff_3d.h5');\n"
	"\n"
	"% V/m\n"
	"plotFF3D_frames(nf2ff_3d, [path_result, '/', name, '-ff-3d-vm'], ...\n"
	"\t'gif', gif, 'show_each', show_each, 'delay', nf2ff_3d_delay, ...\n"
	"\t'unique_color_scale', 'unique_axis_scale');\n"
	"\n"
	"% Dump\n"
	"if nf2ff_3d_dump\n"
	"\tE_far_normalized = nf2ff_3d.E_norm{1} / max(nf2ff_3d.E_norm{1}(:)) * nf2ff_3d.Dmax(1);\n"
	"\tDumpFF2VTK([path_simulation '/ff.vtk'], E_far_normalized, theta_range, phi_range, 'scale', nf2ff_3d_dump_unit * 10);\n"
	"endif\n"
	"\n"
	"endif % nf2ff_3d\n"
	"endif % flag_nf2ff\n"
	"\n"
	"end\n");

//******************************************************************************
string const pcbrnd_lht::fonts(
	" ha:font {\n"
	"  ha:geda_pcb {\n"
	"   cell_width=1.270001mm; cell_height=1.397001mm;\n"
	"   ha:symbols {\n"
	"    ha:] {\n"
	"     width=0.127001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=5.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=50.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:&5c {\n"
	"     width=0.762001mm; height=1.143001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=15.0mil; x2=30.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:b {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=15.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=15.0mil; y1=50.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=20.0mil; y1=35.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=15.0mil; y1=30.0mil; x2=20.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=5.0mil; y1=30.0mil; x2=15.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=0.0; y1=35.0mil; x2=5.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:c {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=5.0mil; y1=30.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=35.0mil; x2=5.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=35.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:d {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=20.0mil; y1=10.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=15.0mil; y1=50.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=15.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=0.0; y1=35.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=0.0; y1=35.0mil; x2=5.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=5.0mil; y1=30.0mil; x2=15.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=15.0mil; y1=30.0mil; x2=20.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:e {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=35.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=0.0; y1=35.0mil; x2=5.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=5.0mil; y1=30.0mil; x2=15.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=15.0mil; y1=30.0mil; x2=20.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=0.0; y1=40.0mil; x2=20.0mil; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=20.0mil; y1=40.0mil; x2=20.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:f {\n"
	"     width=0.381001mm; height=1.270001mm; delta=10.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=5.0mil; y1=15.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=15.0mil; x2=10.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=10.0mil; y1=10.0mil; x2=15.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=0.0; y1=30.0mil; x2=10.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:g {\n"
	"     width=0.508001mm; height=1.651001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=15.0mil; y1=30.0mil; x2=20.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=30.0mil; x2=15.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=35.0mil; x2=5.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=0.0; y1=35.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=15.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=15.0mil; y1=50.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=0.0; y1=60.0mil; x2=5.0mil; y2=65.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=5.0mil; y1=65.0mil; x2=15.0mil; y2=65.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.9 {\n"
	"       x1=15.0mil; y1=65.0mil; x2=20.0mil; y2=60.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.10 {\n"
	"       x1=20.0mil; y1=30.0mil; x2=20.0mil; y2=60.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:h {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=35.0mil; x2=5.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=5.0mil; y1=30.0mil; x2=15.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=15.0mil; y1=30.0mil; x2=20.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=20.0mil; y1=35.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:i {\n"
	"     width=0.001um; height=1.270001mm; delta=10.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=20.0mil; x2=0.0; y2=21.0mil; thickness=10.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=35.0mil; x2=0.0; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:j {\n"
	"     width=0.127001mm; height=1.651001mm; delta=10.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=5.0mil; y1=20.0mil; x2=5.0mil; y2=21.0mil; thickness=10.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=35.0mil; x2=5.0mil; y2=60.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=65.0mil; x2=5.0mil; y2=60.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:k {\n"
	"     width=0.381001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=35.0mil; x2=15.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=35.0mil; x2=10.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:l {\n"
	"     width=0.127001mm; height=1.270001mm; delta=10.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:m {\n"
	"     width=0.889001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=5.0mil; y1=35.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=35.0mil; x2=10.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=10.0mil; y1=30.0mil; x2=15.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=15.0mil; y1=30.0mil; x2=20.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=20.0mil; y1=35.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=20.0mil; y1=35.0mil; x2=25.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=25.0mil; y1=30.0mil; x2=30.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=30.0mil; y1=30.0mil; x2=35.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=35.0mil; y1=35.0mil; x2=35.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.9 {\n"
	"       x1=0.0; y1=30.0mil; x2=5.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:n {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=5.0mil; y1=35.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=35.0mil; x2=10.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=10.0mil; y1=30.0mil; x2=15.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=15.0mil; y1=30.0mil; x2=20.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=20.0mil; y1=35.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=0.0; y1=30.0mil; x2=5.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:o {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=35.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=35.0mil; x2=5.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=5.0mil; y1=30.0mil; x2=15.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=15.0mil; y1=30.0mil; x2=20.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=20.0mil; y1=35.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=15.0mil; y1=50.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=15.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:p {\n"
	"     width=0.635001mm; height=1.651001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=5.0mil; y1=35.0mil; x2=5.0mil; y2=65.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=30.0mil; x2=5.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=5.0mil; y1=35.0mil; x2=10.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=10.0mil; y1=30.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=20.0mil; y1=30.0mil; x2=25.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=25.0mil; y1=35.0mil; x2=25.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=20.0mil; y1=50.0mil; x2=25.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=10.0mil; y1=50.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=5.0mil; y1=45.0mil; x2=10.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:q {\n"
	"     width=0.508001mm; height=1.651001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=20.0mil; y1=35.0mil; x2=20.0mil; y2=65.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=15.0mil; y1=30.0mil; x2=20.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=5.0mil; y1=30.0mil; x2=15.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=0.0; y1=35.0mil; x2=5.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=0.0; y1=35.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=15.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=15.0mil; y1=50.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:r {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=5.0mil; y1=35.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=35.0mil; x2=10.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=10.0mil; y1=30.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=0.0; y1=30.0mil; x2=5.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:s {\n"
	"     width=0.635001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=20.0mil; y1=50.0mil; x2=25.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=20.0mil; y1=40.0mil; x2=25.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=5.0mil; y1=40.0mil; x2=20.0mil; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=0.0; y1=35.0mil; x2=5.0mil; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=0.0; y1=35.0mil; x2=5.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=5.0mil; y1=30.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=20.0mil; y1=30.0mil; x2=25.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:t {\n"
	"     width=0.254001mm; height=1.270001mm; delta=10.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=5.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=45.0mil; x2=10.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=25.0mil; x2=10.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:u {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=30.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=15.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=15.0mil; y1=50.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=20.0mil; y1=30.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:v {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=30.0mil; x2=10.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=20.0mil; y1=30.0mil; x2=10.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:w {\n"
	"     width=0.762001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=30.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=10.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=10.0mil; y1=50.0mil; x2=15.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=15.0mil; y1=30.0mil; x2=15.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=15.0mil; y1=45.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=20.0mil; y1=50.0mil; x2=25.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=25.0mil; y1=50.0mil; x2=30.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=30.0mil; y1=30.0mil; x2=30.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:x {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=30.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=50.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:y {\n"
	"     width=0.508001mm; height=1.651001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=30.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=20.0mil; y1=30.0mil; x2=20.0mil; y2=60.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=15.0mil; y1=65.0mil; x2=20.0mil; y2=60.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=5.0mil; y1=65.0mil; x2=15.0mil; y2=65.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=0.0; y1=60.0mil; x2=5.0mil; y2=65.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=15.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=15.0mil; y1=50.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:z {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=30.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=50.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=50.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:~ {\n"
	"     width=0.635001mm; height=0.889001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=35.0mil; x2=5.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=30.0mil; x2=10.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=10.0mil; y1=30.0mil; x2=15.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=15.0mil; y1=35.0mil; x2=20.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=20.0mil; y1=35.0mil; x2=25.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:&7b {\n"
	"     width=0.254001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=5.0mil; y1=15.0mil; x2=10.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=15.0mil; x2=5.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=30.0mil; x2=5.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=0.0; y1=30.0mil; x2=5.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=5.0mil; y1=35.0mil; x2=5.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=5.0mil; y1=45.0mil; x2=10.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:&7d {\n"
	"     width=0.254001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=5.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=15.0mil; x2=5.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=5.0mil; y1=25.0mil; x2=10.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=5.0mil; y1=35.0mil; x2=10.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=5.0mil; y1=35.0mil; x2=5.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=0.0; y1=50.0mil; x2=5.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:| {\n"
	"     width=0.001um; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:&20 {\n"
	"     width=0.0; height=10.0mil; delta=18.0mil;\n"
	"     li:objects {\n"
	"     }\n"
	"    }\n"
	"    ha:&23 {\n"
	"     width=0.508001mm; height=1.016001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=35.0mil; x2=20.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=25.0mil; x2=20.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=15.0mil; y1=20.0mil; x2=15.0mil; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=5.0mil; y1=20.0mil; x2=5.0mil; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:&26 {\n"
	"     width=0.635001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=15.0mil; x2=0.0; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=15.0mil; x2=5.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=0.0; y1=35.0mil; x2=15.0mil; y2=20.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=10.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=10.0mil; y1=50.0mil; x2=20.0mil; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=0.0; y1=25.0mil; x2=25.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=10.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=10.0mil; y1=10.0mil; x2=15.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.9 {\n"
	"       x1=15.0mil; y1=15.0mil; x2=15.0mil; y2=20.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.10 {\n"
	"       x1=0.0; y1=35.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:! {\n"
	"     width=0.001um; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=45.0mil; x2=0.0; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:\" {\n"
	"     width=0.254001mm; height=0.508001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=20.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=10.0mil; y1=10.0mil; x2=10.0mil; y2=20.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:$ {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=15.0mil; y1=15.0mil; x2=20.0mil; y2=20.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=15.0mil; x2=15.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=20.0mil; x2=5.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=0.0; y1=20.0mil; x2=0.0; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=0.0; y1=25.0mil; x2=5.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=5.0mil; y1=30.0mil; x2=15.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=15.0mil; y1=30.0mil; x2=20.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=20.0mil; y1=35.0mil; x2=20.0mil; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=15.0mil; y1=45.0mil; x2=20.0mil; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.9 {\n"
	"       x1=5.0mil; y1=45.0mil; x2=15.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.10 {\n"
	"       x1=0.0; y1=40.0mil; x2=5.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.11 {\n"
	"       x1=10.0mil; y1=10.0mil; x2=10.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:% {\n"
	"     width=1.016001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=15.0mil; x2=0.0; y2=20.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=15.0mil; x2=5.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=10.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=10.0mil; y1=10.0mil; x2=15.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=15.0mil; y1=15.0mil; x2=15.0mil; y2=20.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=10.0mil; y1=25.0mil; x2=15.0mil; y2=20.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=5.0mil; y1=25.0mil; x2=10.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=0.0; y1=20.0mil; x2=5.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=0.0; y1=50.0mil; x2=40.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.9 {\n"
	"       x1=35.0mil; y1=50.0mil; x2=40.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.10 {\n"
	"       x1=40.0mil; y1=40.0mil; x2=40.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.11 {\n"
	"       x1=35.0mil; y1=35.0mil; x2=40.0mil; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.12 {\n"
	"       x1=30.0mil; y1=35.0mil; x2=35.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.13 {\n"
	"       x1=25.0mil; y1=40.0mil; x2=30.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.14 {\n"
	"       x1=25.0mil; y1=40.0mil; x2=25.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.15 {\n"
	"       x1=25.0mil; y1=45.0mil; x2=30.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.16 {\n"
	"       x1=30.0mil; y1=50.0mil; x2=35.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:' {\n"
	"     width=0.254001mm; height=0.508001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=20.0mil; x2=10.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:( {\n"
	"     width=0.127001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=15.0mil; x2=5.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=15.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:) {\n"
	"     width=0.127001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=5.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=15.0mil; x2=5.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=50.0mil; x2=5.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:* {\n"
	"     width=0.508001mm; height=1.016001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=20.0mil; x2=20.0mil; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=40.0mil; x2=20.0mil; y2=20.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=30.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=10.0mil; y1=20.0mil; x2=10.0mil; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:+ {\n"
	"     width=0.508001mm; height=1.016001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=30.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=10.0mil; y1=20.0mil; x2=10.0mil; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:, {\n"
	"     width=0.254001mm; height=1.524001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=60.0mil; x2=10.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:- {\n"
	"     width=0.508001mm; height=0.762001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=30.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:. {\n"
	"     width=0.127001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=50.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:0 {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=15.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=15.0mil; x2=5.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=15.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=15.0mil; y1=10.0mil; x2=20.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=20.0mil; y1=15.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=15.0mil; y1=50.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=15.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=0.0; y1=40.0mil; x2=20.0mil; y2=20.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:1 {\n"
	"     width=0.381001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=18.0mil; x2=8.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=8.0mil; y1=10.0mil; x2=8.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=50.0mil; x2=15.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:2 {\n"
	"     width=0.635001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=15.0mil; x2=5.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=20.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=20.0mil; y1=10.0mil; x2=25.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=25.0mil; y1=15.0mil; x2=25.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=0.0; y1=50.0mil; x2=25.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=0.0; y1=50.0mil; x2=25.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:3 {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=15.0mil; x2=5.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=15.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=15.0mil; y1=10.0mil; x2=20.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=15.0mil; y1=50.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=15.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=5.0mil; y1=28.0mil; x2=15.0mil; y2=28.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=20.0mil; y1=15.0mil; x2=20.0mil; y2=23.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=20.0mil; y1=33.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.9 {\n"
	"       x1=20.0mil; y1=33.0mil; x2=15.0mil; y2=28.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.10 {\n"
	"       x1=20.0mil; y1=23.0mil; x2=15.0mil; y2=28.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:4 {\n"
	"     width=0.635001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=35.0mil; x2=20.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=35.0mil; x2=25.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=20.0mil; y1=10.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:5 {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=20.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=30.0mil; x2=5.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=5.0mil; y1=25.0mil; x2=15.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=15.0mil; y1=25.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=20.0mil; y1=30.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=15.0mil; y1=50.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=15.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:6 {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=15.0mil; y1=10.0mil; x2=20.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=15.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=15.0mil; x2=5.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=0.0; y1=15.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=15.0mil; y1=28.0mil; x2=20.0mil; y2=33.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=0.0; y1=28.0mil; x2=15.0mil; y2=28.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=15.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=15.0mil; y1=50.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.9 {\n"
	"       x1=20.0mil; y1=33.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:7 {\n"
	"     width=0.635001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=25.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=10.0mil; x2=25.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:8 {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=37.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=37.0mil; x2=7.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=7.0mil; y1=30.0mil; x2=13.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=13.0mil; y1=30.0mil; x2=20.0mil; y2=37.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=20.0mil; y1=37.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=15.0mil; y1=50.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=15.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=0.0; y1=23.0mil; x2=7.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.9 {\n"
	"       x1=0.0; y1=15.0mil; x2=0.0; y2=23.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.10 {\n"
	"       x1=0.0; y1=15.0mil; x2=5.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.11 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=15.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.12 {\n"
	"       x1=15.0mil; y1=10.0mil; x2=20.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.13 {\n"
	"       x1=20.0mil; y1=15.0mil; x2=20.0mil; y2=23.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.14 {\n"
	"       x1=13.0mil; y1=30.0mil; x2=20.0mil; y2=23.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:9 {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=20.0mil; y1=15.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=15.0mil; y1=10.0mil; x2=20.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=15.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=0.0; y1=15.0mil; x2=5.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=0.0; y1=15.0mil; x2=0.0; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=0.0; y1=25.0mil; x2=5.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=5.0mil; y1=30.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:< {\n"
	"     width=0.254001mm; height=1.016001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=30.0mil; x2=10.0mil; y2=20.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=30.0mil; x2=10.0mil; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:> {\n"
	"     width=0.254001mm; height=1.016001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=20.0mil; x2=10.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=40.0mil; x2=10.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:? {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=10.0mil; y1=30.0mil; x2=10.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=10.0mil; y1=45.0mil; x2=10.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=15.0mil; x2=0.0; y2=20.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=0.0; y1=15.0mil; x2=5.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=15.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=15.0mil; y1=10.0mil; x2=20.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=20.0mil; y1=15.0mil; x2=20.0mil; y2=20.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=10.0mil; y1=30.0mil; x2=20.0mil; y2=20.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:@ {\n"
	"     width=1.270001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=40.0mil; x2=10.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=10.0mil; y1=50.0mil; x2=40.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=50.0mil; y1=35.0mil; x2=50.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=50.0mil; y1=10.0mil; x2=40.0mil; y2=0.0; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=40.0mil; y1=0.0; x2=10.0mil; y2=0.0; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=10.0mil; y1=0.0; x2=0.0; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=15.0mil; y1=20.0mil; x2=15.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=15.0mil; y1=30.0mil; x2=20.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.9 {\n"
	"       x1=20.0mil; y1=35.0mil; x2=30.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.10 {\n"
	"       x1=30.0mil; y1=35.0mil; x2=35.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.11 {\n"
	"       x1=35.0mil; y1=30.0mil; x2=40.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.12 {\n"
	"       x1=35.0mil; y1=30.0mil; x2=35.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.13 {\n"
	"       x1=35.0mil; y1=20.0mil; x2=30.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.14 {\n"
	"       x1=20.0mil; y1=15.0mil; x2=30.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.15 {\n"
	"       x1=20.0mil; y1=15.0mil; x2=15.0mil; y2=20.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.16 {\n"
	"       x1=40.0mil; y1=35.0mil; x2=50.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:A {\n"
	"     width=0.635001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=20.0mil; x2=0.0; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=20.0mil; x2=7.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=7.0mil; y1=10.0mil; x2=18.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=18.0mil; y1=10.0mil; x2=25.0mil; y2=20.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=25.0mil; y1=20.0mil; x2=25.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=0.0; y1=30.0mil; x2=25.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:B {\n"
	"     width=0.635001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=50.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=20.0mil; y1=50.0mil; x2=25.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=25.0mil; y1=33.0mil; x2=25.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=20.0mil; y1=28.0mil; x2=25.0mil; y2=33.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=5.0mil; y1=28.0mil; x2=20.0mil; y2=28.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=0.0; y1=10.0mil; x2=20.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=20.0mil; y1=10.0mil; x2=25.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=25.0mil; y1=15.0mil; x2=25.0mil; y2=23.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.9 {\n"
	"       x1=20.0mil; y1=28.0mil; x2=25.0mil; y2=23.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:C {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=7.0mil; y1=50.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=43.0mil; x2=7.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=17.0mil; x2=0.0; y2=43.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=0.0; y1=17.0mil; x2=7.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=7.0mil; y1=10.0mil; x2=20.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:D {\n"
	"     width=0.635001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=18.0mil; y1=10.0mil; x2=25.0mil; y2=17.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=25.0mil; y1=17.0mil; x2=25.0mil; y2=43.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=18.0mil; y1=50.0mil; x2=25.0mil; y2=43.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=0.0; y1=50.0mil; x2=18.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=0.0; y1=10.0mil; x2=18.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:E {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=28.0mil; x2=15.0mil; y2=28.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=50.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=0.0; y1=10.0mil; x2=20.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:F {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=10.0mil; x2=20.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=28.0mil; x2=15.0mil; y2=28.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:G {\n"
	"     width=0.635001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=20.0mil; y1=10.0mil; x2=25.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=20.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=15.0mil; x2=5.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=0.0; y1=15.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=20.0mil; y1=50.0mil; x2=25.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=25.0mil; y1=35.0mil; x2=25.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=20.0mil; y1=30.0mil; x2=25.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.9 {\n"
	"       x1=10.0mil; y1=30.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:H {\n"
	"     width=0.635001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=25.0mil; y1=10.0mil; x2=25.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=30.0mil; x2=25.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:I {\n"
	"     width=0.254001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=10.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=50.0mil; x2=10.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:J {\n"
	"     width=0.381001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=7.0mil; y1=10.0mil; x2=15.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=15.0mil; y1=10.0mil; x2=15.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=10.0mil; y1=50.0mil; x2=15.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=10.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=0.0; y1=45.0mil; x2=0.0; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:K {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=30.0mil; x2=20.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=30.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:L {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=50.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:M {\n"
	"     width=0.762001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=10.0mil; x2=15.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=15.0mil; y1=30.0mil; x2=30.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=30.0mil; y1=10.0mil; x2=30.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:&2f {\n"
	"     width=0.762001mm; height=1.143001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=45.0mil; x2=30.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:&3a {\n"
	"     width=0.127001mm; height=0.889001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=25.0mil; x2=5.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=35.0mil; x2=5.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:&3b {\n"
	"     width=0.254001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=50.0mil; x2=10.0mil; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=10.0mil; y1=25.0mil; x2=10.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:&3d {\n"
	"     width=0.508001mm; height=0.889001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=25.0mil; x2=20.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=35.0mil; x2=20.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:O {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=15.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=15.0mil; x2=5.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=15.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=15.0mil; y1=10.0mil; x2=20.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=20.0mil; y1=15.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=15.0mil; y1=50.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=15.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:P {\n"
	"     width=0.635001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=10.0mil; x2=20.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=20.0mil; y1=10.0mil; x2=25.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=25.0mil; y1=15.0mil; x2=25.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=20.0mil; y1=30.0mil; x2=25.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=5.0mil; y1=30.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:N {\n"
	"     width=0.635001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=10.0mil; x2=25.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=25.0mil; y1=10.0mil; x2=25.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:R {\n"
	"     width=0.635001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=20.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=20.0mil; y1=10.0mil; x2=25.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=25.0mil; y1=15.0mil; x2=25.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=20.0mil; y1=30.0mil; x2=25.0mil; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=5.0mil; y1=30.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=13.0mil; y1=30.0mil; x2=25.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:S {\n"
	"     width=0.635001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=20.0mil; y1=10.0mil; x2=25.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=20.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=15.0mil; x2=5.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=0.0; y1=15.0mil; x2=0.0; y2=25.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=0.0; y1=25.0mil; x2=5.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=5.0mil; y1=30.0mil; x2=20.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=20.0mil; y1=30.0mil; x2=25.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=25.0mil; y1=35.0mil; x2=25.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=20.0mil; y1=50.0mil; x2=25.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.9 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.10 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:Q {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=15.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=15.0mil; x2=5.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=15.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=15.0mil; y1=10.0mil; x2=20.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=20.0mil; y1=15.0mil; x2=20.0mil; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=10.0mil; y1=50.0mil; x2=20.0mil; y2=40.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=10.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=10.0mil; y1=35.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:U {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=15.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=15.0mil; y1=50.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=20.0mil; y1=10.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:V {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=10.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=10.0mil; y1=50.0mil; x2=20.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:T {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=20.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=10.0mil; y1=10.0mil; x2=10.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:X {\n"
	"     width=0.635001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=50.0mil; x2=25.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=10.0mil; x2=25.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:Y {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=10.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=10.0mil; y1=30.0mil; x2=20.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=10.0mil; y1=30.0mil; x2=10.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:W {\n"
	"     width=0.762001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=30.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=15.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=15.0mil; y1=30.0mil; x2=25.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=25.0mil; y1=50.0mil; x2=30.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=30.0mil; y1=30.0mil; x2=30.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:[ {\n"
	"     width=0.127001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=5.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=10.0mil; x2=0.0; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=50.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:^ {\n"
	"     width=0.254001mm; height=0.381001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=15.0mil; x2=5.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=10.0mil; x2=10.0mil; y2=15.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:Z {\n"
	"     width=0.635001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=10.0mil; x2=25.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=0.0; y1=50.0mil; x2=25.0mil; y2=10.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=50.0mil; x2=25.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:a {\n"
	"     width=0.635001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=15.0mil; y1=30.0mil; x2=20.0mil; y2=35.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.1 {\n"
	"       x1=5.0mil; y1=30.0mil; x2=15.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.2 {\n"
	"       x1=0.0; y1=35.0mil; x2=5.0mil; y2=30.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.3 {\n"
	"       x1=0.0; y1=35.0mil; x2=0.0; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.4 {\n"
	"       x1=0.0; y1=45.0mil; x2=5.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.5 {\n"
	"       x1=20.0mil; y1=30.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.6 {\n"
	"       x1=20.0mil; y1=45.0mil; x2=25.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.7 {\n"
	"       x1=5.0mil; y1=50.0mil; x2=15.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"      ha:line.8 {\n"
	"       x1=15.0mil; y1=50.0mil; x2=20.0mil; y2=45.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"    ha:_ {\n"
	"     width=0.508001mm; height=1.270001mm; delta=12.0mil;\n"
	"     li:objects {\n"
	"      ha:line.0 {\n"
	"       x1=0.0; y1=50.0mil; x2=20.0mil; y2=50.0mil; thickness=8.0mil;\n"
	"      }\n"
	"     }\n"
	"    }\n"
	"   }\n"
	"   id = 0\n"
	"  }\n"
	" }\n");
