From: hadaq Date: Tue, 12 Oct 2021 08:40:06 +0000 (+0200) Subject: Update hmon and startup scripts X-Git-Url: https://jspc29.x-matter.uni-frankfurt.de/git/?a=commitdiff_plain;h=bb70d209a0bdf364963a555b0e8228350967fea7;p=hadesdaq.git Update hmon and startup scripts --- diff --git a/.gitignore b/.gitignore index 2b2d0ae..4c63a29 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,6 @@ bak *.dev old sts/tools +rich_thr* +conf_sts* + diff --git a/hmon/QA.pm b/hmon/QA.pm index df3c88d..8cb8493 100644 --- a/hmon/QA.pm +++ b/hmon/QA.pm @@ -91,7 +91,7 @@ our @CPULimits = (95, 100, 100); our @TimeoutLimits = (0, 0, 1); our @TimeoutLimitsOnlyRICHMDC = (0, 20, 30); our @LinkErrLimits = (50, 500, 1000); -our @MdcEndpMissingLimits = (3, 30, 30); #!!! Oh dear. +our @MdcEndpMissingLimits = (0, 3, 5); #!!! Oh dear. our @RichEndpMissingLimits = (0, 3, 4); our @TofEndpMissingLimits = (0, 0, 0); our @RpcEndpMissingLimits = (0, 0, 1); @@ -123,17 +123,17 @@ use constant {CTSAddress => 0x0003}; ############################################################################### # Switched off systems ############################################################################### -our $MdcHvOff = 1; -our $RichHvOff = 1; -our $TofHvOff = 1; -our $RpcHvOff = 1; +our $MdcHvOff = 0; +our $RichHvOff = 0; +our $TofHvOff = 0; +our $RpcHvOff = 0; our $FwHvOff = 1; our $MagnetOff = 1; -our $StsHvOff = 1; +our $StsHvOff = 0; our $StartHvOff = 1; our $ItofHvOff = 1; -our $FrpcHvOff = 1; -our $EcalHvOff = 1; +our $FrpcHvOff = 0; +our $EcalHvOff = 0; ############################################################################### # Missing Boards @@ -144,7 +144,7 @@ our @mdc_chambers_removed =(); our @rich_boards_removed =(); our @tof_boards_removed =(); our @rpc_boards_removed =(); #(0x6010, 0x6011, 0x6012, 0x6030, 0x6031, 0x6032, 0x6033, 0x6034, 0x6035, 0x6036, 0x6051, 0x6052, 0x6053, 0x6054, 0x6055, 0x6056, 0x8a00, 0x8a05); -our @other_boards_removed =(0x5002); +our @other_boards_removed =(); ############################################################################### diff --git a/hmon/hmon_boxmon.pl b/hmon/hmon_boxmon.pl new file mode 100755 index 0000000..e970a26 --- /dev/null +++ b/hmon/hmon_boxmon.pl @@ -0,0 +1,92 @@ +#!/usr/bin/perl -w + +use warnings; +use strict; +use Data::Dumper; +use Data::TreeDumper; +use Hmon; +use QA; +use HADES::TrbNet; +use HPlot; +use Time::HiRes qw(usleep time); +use List::Util qw[min max sum]; + + +my $old; +my $oldtime = time(); +my $time = time(); +my $diff; +my $iter = 0; + +trb_init_ports() or die trb_strerror(); + +my $regs = [[128,129,130,131,132,133],[136,137,138,139,141,142],[500,501,502,503,504,505],[176,177,178,179,180,181],[192,193,194,195,196,197],[600,601,602,603,604,605],[700,701,702,703,704,705]]; + +while (1) { + my $o; + $o = trb_register_read_mem(0x10,0x9000,0,224); + + if (defined $old) { + foreach my $b (keys %$o) { + for my $v (0..223) { + my $tdiff = time() - $oldtime; + my $vdiff = ($o->{$b}->[$v]&0xffffff) - ($old->{$b}->[$v]&0xffffff); + if ($vdiff < 0) { $vdiff += 2**24;} + $diff->{$b}->[$v] = $vdiff/($tdiff||1); + } + } + + $diff->{0x10}[500] = $diff->{0x10}[$regs->[0][0]] + $diff->{0x10}[$regs->[1][0]]; + $diff->{0x10}[501] = $diff->{0x10}[$regs->[0][1]] + $diff->{0x10}[$regs->[1][1]]; + $diff->{0x10}[502] = $diff->{0x10}[$regs->[0][2]] + $diff->{0x10}[$regs->[1][2]]; + $diff->{0x10}[503] = $diff->{0x10}[$regs->[0][3]] + $diff->{0x10}[$regs->[1][3]]; + $diff->{0x10}[504] = $diff->{0x10}[$regs->[0][4]] + $diff->{0x10}[$regs->[1][4]]; + $diff->{0x10}[505] = $diff->{0x10}[$regs->[0][5]] + $diff->{0x10}[$regs->[1][5]]; + + $diff->{0x10}[600] = $diff->{0x10}[$regs->[4][0]] / ($diff->{0x10}[$regs->[3][0]]||1) * 100; + $diff->{0x10}[601] = $diff->{0x10}[$regs->[4][1]] / ($diff->{0x10}[$regs->[3][1]]||1) * 100; + $diff->{0x10}[602] = $diff->{0x10}[$regs->[4][2]] / ($diff->{0x10}[$regs->[3][2]]||1) * 100; + $diff->{0x10}[603] = $diff->{0x10}[$regs->[4][3]] / ($diff->{0x10}[$regs->[3][3]]||1) * 100; + $diff->{0x10}[604] = $diff->{0x10}[$regs->[4][4]] / ($diff->{0x10}[$regs->[3][4]]||1) * 100; + $diff->{0x10}[605] = $diff->{0x10}[$regs->[4][5]] / ($diff->{0x10}[$regs->[3][5]]||1) * 100; + + $diff->{0x10}[700] = $diff->{0x10}[$regs->[4][0]] / ($diff->{0x10}[$regs->[2][0]]||1) * 100; + $diff->{0x10}[701] = $diff->{0x10}[$regs->[4][1]] / ($diff->{0x10}[$regs->[2][1]]||1) * 100; + $diff->{0x10}[702] = $diff->{0x10}[$regs->[4][2]] / ($diff->{0x10}[$regs->[2][2]]||1) * 100; + $diff->{0x10}[703] = $diff->{0x10}[$regs->[4][3]] / ($diff->{0x10}[$regs->[2][3]]||1) * 100; + $diff->{0x10}[704] = $diff->{0x10}[$regs->[4][4]] / ($diff->{0x10}[$regs->[2][4]]||1) * 100; + $diff->{0x10}[705] = $diff->{0x10}[$regs->[4][5]] / ($diff->{0x10}[$regs->[2][5]]||1) * 100; + + + my $str = Hmon::MakeTitle(8, 8, "Coincidences",1); + $str .= "'; + for my $x (0.. scalar @$regs-1) { + $str .= '
TOFRPCSumiTOFCoincidencesCoin %Coin/TOFRPC"; + + for my $y (0.. scalar @{$regs->[0]}-1) { + + $str .= '
'.QA::SciNotation($diff->{0x10}[$regs->[$x][$y]]//0); + } + } + $str .= "

"; + + $str .= "

iTOF/TofRpc coincidence, mult 2
"; + $str .= QA::SciNotation($diff->{0x10}[209]); + + $str .= "

M2/Veto"; + $str .= box(QA::SciNotation($diff->{0x10}[80]))." ".box(QA::SciNotation($diff->{0x10}[25]))." ".box(QA::SciNotation($diff->{0x10}[80]/$diff->{0x10}[25]||1)); + + + $str .= Hmon::MakeFooter(); + Hmon::WriteFile("Triggerbox",$str); + } + + $oldtime = time(); + $old = $o; + usleep(500000); + } + + +sub box { + return "

$_[0]
"; + } diff --git a/hmon/hmon_endpoints.pl b/hmon/hmon_endpoints.pl index 69feb74..a647dae 100755 --- a/hmon/hmon_endpoints.pl +++ b/hmon/hmon_endpoints.pl @@ -24,6 +24,18 @@ if (!$fh) { exit; } +my @prev_rich_miss; +my $fh_missRich; +open ($fh_missRich, ">>", "/tmp/rich_missing_boards"); +if (!$fh_missRich) { + print STDERR "error opening temp file: /tmp/rich_missing_boards\n"; + exit; +} +print $fh_missRich "Start of script ... ". QA::getTimeString()."\n"; + +close $fh_missRich; + + while(1) { my @result = trb_register_read_c(0xffff, 0x0) or sleep 5 and next; @@ -154,10 +166,10 @@ while(1) { 0x5840,0x5841,0x5842,0x5843,0x5844,0x5845,0x5846,0x5847,0x5848, 0x5850,0x5851,0x5852,0x5853,0x5854,0x5855,0x5856,0x5857,0x5858, -0x8700,0x8701,0x8702, -0x6700,0x6701,0x6702,0x6703, -0x6710,0x6711,0x6712,0x6713, -0x6720,0x6721,0x6722,0x6723, +#0x8700,0x8701,0x8702, +#0x6700,0x6701,0x6702,0x6703, +#0x6710,0x6711,0x6712,0x6713, +#0x6720,0x6721,0x6722,0x6723, ); @@ -183,7 +195,7 @@ while(1) { 0x6440, 0x6441, 0x6442, 0x6443, 0x6444, 0x6445, 0x6450, 0x6451, 0x6452, 0x6453, 0x6454, 0x6455, 0x6460, 0x6461, 0x6462, 0x6463, 0x6464, 0x6465, - 0x6470, 0x6471, 0x6472, 0x6473, 0x6474, 0x6475, + 0x6470, 0x6471, 0x6472, 0x6473, #0x6474, 0x6475, #fRPC # 0x8c00,0x6800,0x6801,0x6802,0x6803, 0x8c10,0x6810,0x6811,0x6812,0x6813, @@ -205,7 +217,7 @@ while(1) { #Hodo TRB3 0x8890,0x5010,0x5011,0x5012, #Trigger - 0x0100,0x0110,0x0120 + 0x10,0x0100,0x0110,0x0120,0x130 ); ###strip the register value @@ -264,6 +276,50 @@ while(1) { my $num_rich_mistake = (scalar @{$rich_results[4]}); my @sorted_rich_results = sort @{$rich_results[2]}; + + ### Check for lost boards + if ($num_rich_missing < 900 ) { ## do not check if RICH is off + open ($fh_missRich, ">>", "/tmp/rich_missing_boards"); + if (!$fh_missRich) { + print STDERR "error opening temp file: /tmp/rich_missing_boards\n"; + exit; + } + + foreach my $rich_element (@sorted_rich_results) { + ## check if board was already missing + my $foundBoard = 0; + foreach my $prev_rich_element (@prev_rich_miss) { + if ( $rich_element eq $prev_rich_element ) { + $foundBoard = 1; + last; + } + } + if ($foundBoard == 1 ) { + #print "already missing $rich_element \n"; + } else { + print $fh_missRich "new missing board $rich_element. ". QA::getTimeString()."\n"; + } + } + ### check for reconnected boards + foreach my $prev_rich_element(@prev_rich_miss) { + ## check if board was already missing + my $foundBoard = 0; + foreach my $rich_elements (@sorted_rich_results) { + if ( $rich_elements eq $prev_rich_element ) { + $foundBoard = 1; + last; + } + } + if ($foundBoard == 0 ) { + print $fh_missRich "board $prev_rich_element reconnected. ". QA::getTimeString()."\n"; + } + } + close $fh_missRich; + } + ### Store misisng boards for next check + @prev_rich_miss = @sorted_rich_results; + + my $rich_title = "RICH"; my $rich_value = "OK ".(scalar @rich_boards); if ($num_rich_missing > 0) {$rich_value = "$num_rich_missing / ".(scalar @rich_boards)." miss";} @@ -274,7 +330,7 @@ while(1) { $qastate = QA::GetQAState('below',$num_rich_missing,@QA::RichEndpMissingLimits); - $qastate = QA::NOTE; + $qastate = QA::NOTE if $num_rich_missing > 900; if($qastate > 60) { system("logger -p local1.info -t DAQ Endp \\ $rich_longtext") unless (($timecnt->{rich}++)%$loggerperiod); } diff --git a/hmon/hmon_onlineqa.pl b/hmon/hmon_onlineqa.pl index 8def793..788063d 100755 --- a/hmon/hmon_onlineqa.pl +++ b/hmon/hmon_onlineqa.pl @@ -11,13 +11,13 @@ my $timecnt = 0; my $qastate = QA::OK; -while (1) { +while (1) { my $title = "Online QA"; my $longmsg = "The QA server process is running."; my $msg = ""; # JAM2020- the pgrep command defaults on lxhadeb06 have changed for debian9. use -fal instead -fl: - my $cmd = "ssh lxhadeb06 'pgrep -fal \"hadesonlineserver.exe .* 9876\"' 0 && $out[0] =~ /hadesonlineserver.exe .* 9876/) { + unless(scalar @out > 0 && $out[0] =~ /hadesonlineserver.exe .* 5678/) { $qastate = QA::ERROR; $msg = "Not found"; $longmsg = "The online QA server process could not be found."; diff --git a/hmon/hmon_rich_temp_backplane.pl b/hmon/hmon_rich_temp_backplane.pl index f400535..bcfff23 100755 --- a/hmon/hmon_rich_temp_backplane.pl +++ b/hmon/hmon_rich_temp_backplane.pl @@ -88,8 +88,8 @@ while (1) { if ($max > $interlockTemperature ) { my $s = sprintf("HAD:RICH:PS:17:SETONOFF"); -# Perl2Epics::Connect("PS_RICH_3_3V",$s); -# Perl2Epics::Put("PS_RICH_3_3V",1); + Perl2Epics::Connect("PS_RICH_3_3V",$s); + Perl2Epics::Put("PS_RICH_3_3V",0); $InterlockActive = "Shutting down RICH ..."; } diff --git a/hmon/hmon_startrate.pl b/hmon/hmon_startrate.pl new file mode 100755 index 0000000..0967d07 --- /dev/null +++ b/hmon/hmon_startrate.pl @@ -0,0 +1,714 @@ +#!/usr/bin/perl -w + +use warnings; +use strict; +use Data::Dumper; +use Data::TreeDumper; +use Hmon; +use QA; +use HADES::TrbNet; +use HPlot; +use Time::HiRes qw(usleep gettimeofday); +use List::Util qw[min max sum]; + + +trb_init_ports() or die trb_strerror(); + + +HPlot::PlotInit({ + name => "StartPosition", + file => "files/StartPosition", + entries => 200, + type => HPlot::TYPE_HISTORY, + output => HPlot::OUT_PNG, + titles => ["X position","Y position","Xrms","Yrms"], + xlabel => "Seconds", + ylabel => "Strips", + sizex => 970, + sizey => 350, + ymin => "-0.5", + ymax => "59.5", + curves => 4, + xscale => 10, + buffer => 1, + }); + +HPlot::PlotInit({ + name => "StartRateXhistbar", + file => "files/StartRateXhistbar", + entries => 200, + type => HPlot::TYPE_BARGRAPH, + output => HPlot::OUT_PNG, + titles => ["0","1","2","3","4","5","6","7","8","9","10","11"], + xlabel => "Time / 100 ms", + ylabel => "Hitrate [Hz]", + sizex => 950, + sizey => 330, + xmin => 0, + xmax => 200, + ymin => "0", + ymax => "100<*", + curves => 12, + xscale => 10, # xscale does not work with TYPE_BARGRAPH + buffer => 1, + stacked => 1, + curvewidth => .9, + additional => " + set obj 1 rect from -1, 3.5E6 to 200, 4E6 fc rgb '#ffffbb' behind \n + set obj 2 rect from -1, 4E6 to 200, 10E6 fc rgb '#ffdddd' behind + " + }); + +HPlot::PlotInit({ + name => "StartRateYhistbar", + file => "files/StartRateYhistbar", + entries => 200, + type => HPlot::TYPE_BARGRAPH, + output => HPlot::OUT_PNG, + titles => ["0","1","2","3","4","5","6","7","8","9","10","11"], + xlabel => "Time / 100 ms", + ylabel => "Hitrate [Hz]", + sizex => 950, + sizey => 330, + xmin => 0, + xmax => 200, + ymin => "0", + ymax => "100<*", + curves => 12, + xscale => 10, # xscale does not work with TYPE_BARGRAPH + buffer => 1, + stacked => 1, + curvewidth => .9, + additional => " + set obj 1 rect from -1, 3.5E6 to 200, 4E6 fc rgb '#ffffbb' behind \n + set obj 2 rect from -1, 4E6 to 200, 10E6 fc rgb '#ffdddd' behind + " + }); + +HPlot::PlotInit({ + name => "DutyFactorX", + file => "files/DutyFactorX", + entries => 100, + type => HPlot::TYPE_HISTORY, + output => HPlot::OUT_PNG, + xlabel => "Spills", + ylabel => "Duty Factor", + sizex => 600, + sizey => 200, + curves => 1, + buffer => 0, + nokey => 1, + storable => 1, + }); + +HPlot::PlotInit({ + name => "DutyFactorY", + file => "files/DutyFactorY", + entries => 100, + type => HPlot::TYPE_HISTORY, + output => HPlot::OUT_PNG, + xlabel => "Spills", + ylabel => "Duty Factor", + sizex => 600, + sizey => 200, + curves => 1, + buffer => 0, + nokey => 1, + storable => 1, + }); + +HPlot::PlotInit({ + name => "SpillSumX", + file => "files/SpillSumX", + entries => 100, + type => HPlot::TYPE_HISTORY, + output => HPlot::OUT_PNG, + xlabel => "Spills", + ylabel => "Total Sum", + sizex => 600, + sizey => 200, + ymin => 0, + ymax => "*<9E9", + curves => 1, + buffer => 0, + nokey => 1, + storable => 1, + }); +HPlot::PlotInit({ + name => "SpillSumY", + file => "files/SpillSumY", + entries => 100, + type => HPlot::TYPE_HISTORY, + output => HPlot::OUT_PNG, + xlabel => "Spills", + ylabel => "Total Sum", + sizex => 600, + sizey => 200, + ymin => 0, + ymax => "*<9E9", + curves => 1, + buffer => 0, + nokey => 1, + storable => 1, + }); + +HPlot::PlotInit({ + name => "SpillPeakX", + file => "files/SpillPeakX", + entries => 100, + type => HPlot::TYPE_HISTORY, + output => HPlot::OUT_PNG, + xlabel => "Spills", + ylabel => "Peak Intensity [Hz]", + sizex => 600, + sizey => 200, + ymin => 0, + ymax => "*<9E9", + curves => 1, + buffer => 0, + nokey => 1, + storable => 1, + }); + +HPlot::PlotInit({ + name => "SpillPeakY", + file => "files/SpillPeakY", + entries => 100, + type => HPlot::TYPE_HISTORY, + output => HPlot::OUT_PNG, + xlabel => "Spills", + ylabel => "Peak Intensity [Hz]", + sizex => 600, + sizey => 200, + ymin => 0, + ymax => "*<9E9", + curves => 1, + buffer => 0, + nokey => 1, + storable => 1, + }); + + +my $str = Hmon::MakeTitle(13, 8, "Start Position",0); +$str .= qq@\n@; +$str .= Hmon::MakeFooter(); +Hmon::WriteFile("StartPosition",$str); + +$str = Hmon::MakeTitle(13, 32, "Start Rates X",0); +$str .= qq@

Start X Spill


\n@; +$str .= qq@

Start X Duty


\n@; +$str .= qq@

Start X Peak


\n@; +$str .= qq@

Start X Sum


\n@; +$str .= Hmon::MakeFooter(); +Hmon::WriteFile("StartRateX",$str); + + +$str = Hmon::MakeTitle(13, 32, "Start Rates Y",0); +$str .= qq@

Start Y Spill


\n@; +$str .= qq@

Start Y Duty


\n@; +$str .= qq@

Start Y Peak


\n@; +$str .= qq@

Start Y Sum


\n@; +$str .= Hmon::MakeFooter(); +Hmon::WriteFile("StartRateY",$str); + + +$str = Hmon::MakeTitle(16, 32, "Spill Info Start",0); +$str .= qq@

Start Duty

\n@; +$str .= qq@
\n@; +$str .= qq@

Start Peak

\n@; +$str .= qq@
\n@; +$str .= qq@

Start Sum

\n@; +$str .= qq@
\n@; +$str .= Hmon::MakeFooter(); +Hmon::WriteFile("SpillInfoStart",$str); + + + +my $iter = 1; + +my $trbnet_endpoint_offset = 0x5000; #20480 + + +## +## +## + # pch is physical channel in the detector, tdc is the connected TDC and ch is the channel of the TDC +my $channels_x = [ + { pch => 0, tdc => 2, ch => 8 }, + { pch => 1, tdc => 3, ch => 11 }, + { pch => 2, tdc => 2, ch => 7 }, + { pch => 3, tdc => 3, ch => 12 }, + { pch => 4, tdc => 2, ch => 6 }, + { pch => 5, tdc => 3, ch => 13 }, + { pch => 6, tdc => 2, ch => 5 }, + { pch => 7, tdc => 3, ch => 14 }, + { pch => 8, tdc => 2, ch => 4 }, + { pch => 9, tdc => 3, ch => 15 }, + { pch => 10, tdc => 2, ch => 3 }, + { pch => 11, tdc => 3, ch => 16 }, + { pch => 12, tdc => 2, ch => 2 }, + { pch => 13, tdc => 3, ch => 17 }, + { pch => 14, tdc => 2, ch => 1 }, + { pch => 15, tdc => 3, ch => 18 }, + { pch => 16, tdc => 2, ch => 32 }, + { pch => 17, tdc => 3, ch => 19 }, + { pch => 18, tdc => 2, ch => 31 }, + { pch => 19, tdc => 3, ch => 20 }, + { pch => 20, tdc => 2, ch => 30 }, + { pch => 21, tdc => 3, ch => 21 }, + { pch => 22, tdc => 2, ch => 29 }, + { pch => 23, tdc => 3, ch => 22 }, + { pch => 24, tdc => 2, ch => 28 }, + { pch => 25, tdc => 3, ch => 23 }, + { pch => 26, tdc => 2, ch => 27 }, + { pch => 27, tdc => 3, ch => 24 }, + { pch => 28, tdc => 2, ch => 26 }, + { pch => 29, tdc => 3, ch => 25 }, + { pch => 30, tdc => 2, ch => 25 }, + { pch => 31, tdc => 3, ch => 26 }, + { pch => 32, tdc => 2, ch => 24 }, + { pch => 33, tdc => 3, ch => 27 }, + { pch => 34, tdc => 2, ch => 23 }, + { pch => 35, tdc => 3, ch => 28 }, + { pch => 36, tdc => 2, ch => 22 }, + { pch => 37, tdc => 3, ch => 29 }, + { pch => 38, tdc => 2, ch => 21 }, + { pch => 39, tdc => 3, ch => 30 }, + { pch => 40, tdc => 2, ch => 20 }, + { pch => 41, tdc => 3, ch => 31 }, + { pch => 42, tdc => 2, ch => 19 }, + { pch => 43, tdc => 3, ch => 32 }, + { pch => 44, tdc => 2, ch => 18 }, + { pch => 45, tdc => 3, ch => 33 }, + { pch => 46, tdc => 2, ch => 17 }, + { pch => 47, tdc => 3, ch => 34 }, + { pch => 48, tdc => 2, ch => 48 }, + { pch => 49, tdc => 3, ch => 35 }, + { pch => 50, tdc => 2, ch => 47 }, + { pch => 51, tdc => 3, ch => 36 }, + { pch => 52, tdc => 2, ch => 46 }, + { pch => 53, tdc => 3, ch => 37 }, + { pch => 54, tdc => 2, ch => 45 }, + { pch => 55, tdc => 3, ch => 38 }, + { pch => 56, tdc => 2, ch => 44 }, + { pch => 57, tdc => 3, ch => 39 }, + { pch => 58, tdc => 2, ch => 43 }, + { pch => 59, tdc => 3, ch => 40 }, + + ]; + +my $channels_y = [ + { pch => 0, tdc => 1, ch => 8 }, + { pch => 1, tdc => 0, ch => 11 }, + { pch => 2, tdc => 1, ch => 7 }, + { pch => 3, tdc => 0, ch => 12 }, + { pch => 4, tdc => 1, ch => 6 }, + { pch => 5, tdc => 0, ch => 13 }, + { pch => 6, tdc => 1, ch => 5 }, + { pch => 7, tdc => 0, ch => 14 }, + { pch => 8, tdc => 1, ch => 4 }, + { pch => 9, tdc => 0, ch => 15 }, + { pch => 10, tdc => 1, ch => 3 }, + { pch => 11, tdc => 0, ch => 16 }, + { pch => 12, tdc => 1, ch => 2 }, + { pch => 13, tdc => 0, ch => 17 }, + { pch => 14, tdc => 1, ch => 1 }, + { pch => 15, tdc => 0, ch => 18 }, + { pch => 16, tdc => 1, ch => 32 }, + { pch => 17, tdc => 0, ch => 19 }, + { pch => 18, tdc => 1, ch => 31 }, + { pch => 19, tdc => 0, ch => 20 }, + { pch => 20, tdc => 1, ch => 30 }, + { pch => 21, tdc => 0, ch => 21 }, + { pch => 22, tdc => 1, ch => 29 }, + { pch => 23, tdc => 0, ch => 22 }, + { pch => 24, tdc => 1, ch => 28 }, + { pch => 25, tdc => 0, ch => 23 }, + { pch => 26, tdc => 1, ch => 27 }, + { pch => 27, tdc => 0, ch => 24 }, + { pch => 28, tdc => 1, ch => 26 }, + { pch => 29, tdc => 0, ch => 25 }, + { pch => 30, tdc => 1, ch => 25 }, + { pch => 31, tdc => 0, ch => 26 }, + { pch => 32, tdc => 1, ch => 24 }, + { pch => 33, tdc => 0, ch => 27 }, + { pch => 34, tdc => 1, ch => 23 }, + { pch => 35, tdc => 0, ch => 28 }, + { pch => 36, tdc => 1, ch => 22 }, + { pch => 37, tdc => 0, ch => 29 }, + { pch => 38, tdc => 1, ch => 21 }, + { pch => 39, tdc => 0, ch => 30 }, + { pch => 40, tdc => 1, ch => 20 }, + { pch => 41, tdc => 0, ch => 31 }, + { pch => 42, tdc => 1, ch => 19 }, + { pch => 43, tdc => 0, ch => 32 }, + { pch => 44, tdc => 1, ch => 18 }, + { pch => 45, tdc => 0, ch => 33 }, + { pch => 46, tdc => 1, ch => 17 }, + { pch => 47, tdc => 0, ch => 34 }, + { pch => 48, tdc => 1, ch => 48 }, + { pch => 49, tdc => 0, ch => 35 }, + { pch => 50, tdc => 1, ch => 47 }, + { pch => 51, tdc => 0, ch => 36 }, + { pch => 52, tdc => 1, ch => 46 }, + { pch => 53, tdc => 0, ch => 37 }, + { pch => 54, tdc => 1, ch => 45 }, + { pch => 55, tdc => 0, ch => 38 }, + { pch => 56, tdc => 1, ch => 44 }, + { pch => 57, tdc => 0, ch => 39 }, + { pch => 58, tdc => 1, ch => 43 }, + { pch => 59, tdc => 0, ch => 40 }, + + ]; + + + +my @chanx = qw(0 0 2 4 6 8 10 12 14 16 13 11 9 7 5 3 1); #move noisy ch. 15 to 16 to disable it 2019-03-26 +#my @chanx = qw(0 15 13 11 9 7 5 3 1 0 2 4 6 8 10 12 14); + +my @chany = qw(0 0 2 4 6 8 10 12 14 15 13 11 9 7 5 3 1); +my @chanveto = qw(0 2 7 3 4 0 5 1 6); +my $cts_set; + +my $old; + +#Spill +my @totalDetectorHitsX; +my @totalDetectorHitsY; +my $spillThreshold = 1000; # threshold of rate in detector signaling the End of the Spill +my $samplesPerSecond =10; + +my @lastspills_x; +my @lastspills_y; + +my $time_x = 0; +my $time_y = 0; + +my $empties_x = 0; +my $empties_y = 0; +my($max_x, $duty_x, $total_x, $spillmin_x, $spillmax_x, $spillavg_x, $flucqual_x, $offtime_x, $length_x, $spillEnds_x) = (0, 0, 0, 0, 0, 0, 0, 0, "", 0); +my($max_y, $duty_y, $total_y, $spillmin_y, $spillmax_y, $spillavg_y, $flucqual_y, $offtime_y, $length_y, $spillEnds_y) = (0, 0, 0, 0, 0, 0, 0, 0, "", 0); +my ($lastinspill,$inspill,$spillends) = (0,0,0); + + +HPlot::PlotDrawFork('SpillSumY'); +HPlot::PlotDrawFork('SpillPeakY'); +HPlot::PlotDrawFork('DutyFactorY'); + + + + +while(1) { + + if($iter == 1) { + $cts_set = trb_register_read(0x3,0xa0da); + } + + + my $current_readout = trb_registertime_read_mem(0xfe74,0xdfc0,0,48); # or die trb_strerror() or sleep 5 and next; + #my $o = trb_register_read_mem(0xfe74,0xdfc0,0,48); # or die trb_strerror() or sleep 5 and next; + #print Dumper $o; + #exit; + if (defined $old) { +# print Dumper $current_readout; +# exit; + + # Calculation of total Detector hits ($sum_) and weighted with position in detector (wsum_) + my ($sum_x, $wsum_x) = calculate_diff_time_and_sum($channels_x, $old, $current_readout); + my ($sum_y, $wsum_y) = calculate_diff_time_and_sum($channels_y, $old, $current_readout); + + # Create an array containing the sums per readout + + + + # calculate beam position and width, by using a weighted average of physical channels and the RMS. + my $avg_x=0; + my $avg_y=0; + my $rms_x=0; + my $rms_y=0; + + if($sum_x < 1000){ + $avg_x = "NaN"; + $rms_x = "NaN"; + } else { + $avg_x = $wsum_x / $sum_x if($sum_x !=0); + my $weighted_sum_difference_from_mean_x = calculate_weighted_sum_difference_from_mean($channels_x, $old, $current_readout,$avg_x); + $rms_x = sqrt($weighted_sum_difference_from_mean_x/($sum_x||1E-10)); + } + if($sum_y < 1000){ + $avg_y = "NaN"; + $rms_y = "NaN"; + } else { + $avg_y = $wsum_y / $sum_y if($sum_y !=0); + my $weighted_sum_difference_from_mean_y = calculate_weighted_sum_difference_from_mean($channels_y, $old, $current_readout,$avg_y); + $rms_y = sqrt($weighted_sum_difference_from_mean_y/($sum_y||1E-10)); + } + + # Calculate Number of hits in detector by subgroups consisting of 5 channels + my @hitRatesStartX = calculate_rates($channels_x, $old, $current_readout); + my @hitRatesStartY = calculate_rates($channels_y, $old, $current_readout); + + push(@totalDetectorHitsX, $sum_x); + shift(@totalDetectorHitsX) if scalar @totalDetectorHitsX > 2000; # makes sure that the array does not get huge big. after 200 seconds of no beam, the last entries start to fall off + $empties_x++ if ($sum_x < 1000); + push(@totalDetectorHitsY, $sum_y); + shift(@totalDetectorHitsY) if scalar @totalDetectorHitsY > 2000; + $empties_y++ if ($sum_y < 1000); + + my $sp = trb_register_read(0x10,0x905d); + $inspill = ($sp->{0x10} >> 31) & 1; + $spillends = $inspill == 0 && $lastinspill == 1; + if($spillends){ + ($max_x, $duty_x, $total_x, $spillmin_x, $spillmax_x, $spillavg_x, $flucqual_x, $offtime_x, $length_x, $time_x, $empties_x, $spillEnds_x) = spillAnalysisACCSIG(\@totalDetectorHitsX, \@lastspills_x, $time_x, $empties_x); + + @totalDetectorHitsX = (); + + ($max_y, $duty_y, $total_y, $spillmin_y, $spillmax_y, $spillavg_y, $flucqual_y, $offtime_y, $length_y,$time_y, $empties_y, $spillEnds_y) = spillAnalysisACCSIG(\@totalDetectorHitsY, \@lastspills_y, $time_y, $empties_y); + + @totalDetectorHitsY = (); + } + + + if($spillends){ + HPlot::PlotAdd("DutyFactorX", $duty_x,0); + HPlot::PlotAdd("SpillPeakX", $max_x,0); + HPlot::PlotAdd("SpillSumX", $total_x,0); + + $str = Hmon::MakeTitle(8, 19, "SpillShapeAnalysisX",1); + $str .= qq@
\n@; + $str .= qq@\n@; + $str .= qq@\n@; + $str .= qq@\n@; + $str .= "
Last Sum".QA::SciNotation($total_x); + $str .= "Last Duty".sprintf("%0.3f",$duty_x); + $str .= "
Last Duration".$length_x; + $str .= "Last Break".$offtime_x." s"; + $str .= "
Last Max".QA::SciNotation($max_x)." Hz (100ms)"; + $str .= "Spill Fluctuation".QA::SciNotation($spillmin_x)." - ".QA::SciNotation($spillmax_x)."
∅ ".QA::SciNotation($spillavg_x)." (".QA::SciNotation($flucqual_x).")"; + $str .= "
"; + $str .= Hmon::MakeFooter(); + Hmon::WriteFile("SpillShapeAnalysisX",$str); + + HPlot::PlotDrawFork('SpillSumX'); + HPlot::PlotDrawFork('SpillPeakX'); + HPlot::PlotDrawFork('DutyFactorX'); +# } +# +# +# if($spillends){#$spillEnds_y == 1 + HPlot::PlotAdd("DutyFactorY", $duty_y,0); + HPlot::PlotAdd("SpillPeakY", $max_y,0); + HPlot::PlotAdd("SpillSumY", $total_y,0); + + $str = Hmon::MakeTitle(8, 19, "SpillShapeAnalysisY",1); + $str .= qq@
\n@; + $str .= qq@\n@; + $str .= qq@\n@; + $str .= qq@\n@; + $str .= "
Last Sum".QA::SciNotation($total_y); + $str .= "Last Duty".sprintf("%0.3f",$duty_y); + $str .= "
Last Duration".$length_y; + $str .= "Last Break".$offtime_y." s"; + $str .= "
Last Max".QA::SciNotation($max_y)." Hz (100ms)"; + $str .= "Spill Fluctuation".QA::SciNotation($spillmin_y)." - ".QA::SciNotation($spillmax_y)."
∅ ".QA::SciNotation($spillavg_y)." (".QA::SciNotation($flucqual_y).")"; + $str .= "
"; + $str .= Hmon::MakeFooter(); + Hmon::WriteFile("SpillShapeAnalysisY",$str); + + HPlot::PlotDrawFork('SpillSumY'); + HPlot::PlotDrawFork('SpillPeakY'); + HPlot::PlotDrawFork('DutyFactorY'); + } + + HPlot::PlotAdd("StartPosition",$avg_x,0); + HPlot::PlotAdd("StartPosition",$avg_y,1); + HPlot::PlotAdd("StartPosition",$rms_x,2); + HPlot::PlotAdd("StartPosition",$rms_y,3); + + for my $i(0..11){ + HPlot::PlotAdd("StartRateXhistbar",$hitRatesStartX[$i],$i); + HPlot::PlotAdd("StartRateYhistbar",$hitRatesStartY[$i],$i); + + } + + HPlot::PlotDrawFork('StartPosition') if ($iter == 1); + HPlot::PlotDrawFork('StartRateXhistbar') if ($iter == 2); + HPlot::PlotDrawFork('StartRateYhistbar') if ($iter == 3); +# HPlot::PlotDrawFork('SpillSumX') if ($iter == 4); +# HPlot::PlotDrawFork('SpillPeakX') if ($iter == 5); +# HPlot::PlotDrawFork('SpillSumY') if ($iter == 6); +# HPlot::PlotDrawFork('SpillPeakY') if ($iter == 7); +# HPlot::PlotDrawFork('DutyFactorX') if ($iter == 8); +# HPlot::PlotDrawFork('DutyFactorY') if ($iter == 9); + + $iter = 1 if ($iter++ == 10) #dont change + + } + + $lastinspill = $inspill; + $old = $current_readout; + usleep(100000); +} + + +sub calculate_diff_time_and_sum { + my ($ra_channels, $old, $current_readout) = @_; + + my ($sum , $wsum) = (0,0); + foreach my $ch (@$ra_channels) { + my ($trbnet, $channel, $phy_channel) = ( $ch->{tdc}, $ch->{ch}-1, $ch->{pch} ); + $trbnet += $trbnet_endpoint_offset; + my $hits = $current_readout->{$trbnet}->{value}->[$channel] //0; + # print Dumper $current_readout ; + # exit; + my $time = $current_readout->{$trbnet}->{time}->[$channel]//0; + #my $time = 10; + my $tdiff = $time - ($old->{$trbnet}->{time}->[$channel]||0); + #print Dumper $current_readout->{$b}->{time}->[15]; + #exit; + $tdiff += 2**16 if $tdiff < 0; + $tdiff *= 16; + #print Dumper $old; + #exit; + # vdiff is difference in read out values (Read: ValueDifference) + my $vdiff = ($hits & 0xfffffff) - (($old->{$trbnet}->{value}->[$channel]//0) & 0xfffffff); + $vdiff += 2**28 if $vdiff < 0; + my $diff = $vdiff/($tdiff||1E6)*1E6; + #print "vdiff: $vdiff, diff: $diff, tdiff: $tdiff\n"; + + $sum += $diff; + $wsum += $diff * $phy_channel; + + #$old->{$trbnet}->{value}->[$channel] = $hits; + #$old->{$trbnet}->{time}->[$channel] = $time; + } + + return ($sum, $wsum); +} +sub calculate_weighted_sum_difference_from_mean{ + my ($ra_channels, $old,$current_readout, $avg) = @_ ; + my $weighted_sum_difference_from_mean = 0; + foreach my $ch (@$ra_channels) { + my ($trbnet, $channel, $phy_channel) = ($ch->{tdc}, $ch->{ch}-1,$ch->{pch}); + $trbnet += $trbnet_endpoint_offset; + my $hits = $current_readout->{$trbnet}->{value}->[$channel]//0; + my $hitdiff = ($hits & 0xfffffff)-(($old->{$trbnet}->{value}->[$channel]//0) & 0xfffffff); + printf("%04x %04x\n",$trbnet,$channel) unless defined $hits; + $hitdiff +=2**28 if $hitdiff < 0; + my $time = $current_readout->{$trbnet}->{time}->[$channel]//0; + my $tdiff = $time - ($old->{$trbnet}->{time}->[$channel]//0); + $tdiff += 2**16 if $tdiff <0; + $tdiff *= 16; + my $rate = $hitdiff / ($tdiff || 1E6) * 1E6 ; +# $weighted_sum_difference_from_mean += $hitdiff * ( ($phy_channel-$avg)**2); # this was a bug. One has to weight with the rate, not with the recorded hits, as weighted sum is also a rate + $weighted_sum_difference_from_mean += $rate * ( ($phy_channel-$avg)**2); + } + return $weighted_sum_difference_from_mean; + +} +sub calculate_rates{ + my ($ra_channels, $old,$current_readout) = @_ ; + + my @result; + for my $i (0..11){ + $result[$i] = 0; + } + + foreach my $ch (@$ra_channels) { + my ($trbnet, $channel, $phy_channel) = ($ch->{tdc}, $ch->{ch}-1,$ch->{pch}); + $trbnet += $trbnet_endpoint_offset; + my $hits = $current_readout->{$trbnet}->{value}->[$channel]//0; + my $hitdiff = ($hits & 0xfffffff)-(($old->{$trbnet}->{value}->[$channel]//0) & 0xfffffff); + $hitdiff +=2**28 if $hitdiff < 0; + my $time = $current_readout->{$trbnet}->{time}->[$channel]; + my $tdiff = ($time//0) - ($old->{$trbnet}->{time}->[$channel]//0); + $tdiff += 2**16 if $tdiff <0; + $tdiff *= 16; + my $rate = $hitdiff / ($tdiff || 1E6) * 1E6 ; + + $result[int($phy_channel/5)] += $rate; + } + +# for my $i(0..11){ +# $result[$i] +=2**28 if $result[$i] < 0; +# } + + return @result; +} + +sub spillAnalysis{ + my ($totalDetectorHitsReference, $lastSpillReference, $time, $empties) = @_; + + my $lastsum = 0; # sum of entries in last 15 readouts + my @totalDetectorHits = @{$totalDetectorHitsReference}; + my @lastSpills = @{$lastSpillReference}; + my ($max, $duty, $total, $spillmin, $spillmax, $spillavg, $flucqual, $offtime, $length, $spillEnds) = (0, 0, 0, 0, 0, 0, 0, 0, "", 0); + + for my $i (1..15) { $lastsum += $totalDetectorHits[-$i]//0;} + + #end of spill signaled by last 15 readouts having an average below spillThreshold entries and the one before having more + if($lastsum < 15 * $spillThreshold && ($totalDetectorHits[-16]//0) > $spillThreshold){ + $max = max(@totalDetectorHits); + my $samples = scalar @totalDetectorHits; + my $avg = sum(@totalDetectorHits)/$samples; + $duty = $avg/$max; + $total = sum(@totalDetectorHits)/$samplesPerSecond;# sum and mulitply by bin width -> Integral. Gives total hits in a spill + + push(@lastSpills,$total); + shift(@lastSpills) if scalar @lastSpills > 50; + + $spillmin = min(@lastSpills); + $spillmax = max(@lastSpills); + $spillavg = sum(@lastSpills)/(scalar @lastSpills); + $flucqual = ($spillmax-$spillmin)/$spillavg; + $offtime = $empties/10; + $length = sprintf("%0.1f s (%i samples)", time()-$time, $samples); + + $empties = 0; + $time = time(); + @totalDetectorHits = (); + + return ($max, $duty, $total, $spillmin, $spillmax, $spillavg, $flucqual, $offtime, $length, 1); + } + + return (0, 0, 0, 0, 0, 0, 0, 0, 0, 0); +} + +sub spillAnalysisACCSIG{ + my ($totalDetectorHitsReference, $lastSpillReference, $time, $empties) = @_; + + my @totalDetectorHits = @{$totalDetectorHitsReference}; + my @lastSpills = @{$lastSpillReference}; + my ($max, $duty, $total, $spillmin, $spillmax, $spillavg, $flucqual, $offtime, $length, $spillEnds) = (0, 0, 0, 0, 0, 0, 0, 0, "", 0); + + + #end of spill signaled by last 15 readouts having an average below spillThreshold entries and the one before having more +# if($inspill == 0 && $lastinspill == 1){ + $max = max(@totalDetectorHits); + my $samples = scalar @totalDetectorHits; + my $avg = sum(@totalDetectorHits)/$samples; + $duty = $avg/($max||1); + $total = sum(@totalDetectorHits)/$samplesPerSecond;# sum and mulitply by bin width -> Integral. Gives total hits in a spill + + push(@lastSpills,$total); + shift(@lastSpills) if scalar @lastSpills > 50; + + $spillmin = min(@lastSpills); + $spillmax = max(@lastSpills); + $spillavg = sum(@lastSpills)/(scalar @lastSpills); + $flucqual = ($spillmax-$spillmin)/($spillavg||1); + $offtime = $empties/10; + $length = sprintf("%0.1f s (%i samples)", gettimeofday()-$time, $samples); + $empties = 0; + $time = gettimeofday(); + + + # @totalDetectorHits = (); + +# $lastinspill = $inspill; + return ($max, $duty, $total, $spillmin, $spillmax, $spillavg, $flucqual, $offtime, $length,$time, $empties, 1); +# } +# $lastinspill = $inspill; +# return (0, 0, 0, 0, 0, 0, 0, 0, 0, 0); +} + diff --git a/hmon/hmon_tdcchanerrors.pl b/hmon/hmon_tdcchanerrors.pl index c1cdd0c..3302e7d 100755 --- a/hmon/hmon_tdcchanerrors.pl +++ b/hmon/hmon_tdcchanerrors.pl @@ -45,7 +45,7 @@ for(my $i = 0; $i <11; $i++) { curves => 48, type => HPlot::TYPE_HEATMAP, output => HPlot::OUT_PNG, - sizex => 2000, + sizex => 10000, sizey => 500, nokey => 1, buffer => 0, diff --git a/hmon/index.cgi b/hmon/index.cgi index 39bacd6..29ee8c3 100755 --- a/hmon/index.cgi +++ b/hmon/index.cgi @@ -51,7 +51,7 @@ function openwin(url) {
  • QA Plots (updated every 5 minutes)
  • Vertex Plots (updated after each file)
  • Beam Properties
  • -
  • Icinga Server Monitoring (local access only) +
  • Icinga Server Monitoring (local access only)
  • Munin Server Monitoring
  • Archive of Hmon Windows (updated every 10 minutes)
  • diff --git a/hmon/permanent/hmon_cpu.pl b/hmon/permanent/hmon_cpu.pl index f484787..fb5dcb9 100755 --- a/hmon/permanent/hmon_cpu.pl +++ b/hmon/permanent/hmon_cpu.pl @@ -34,7 +34,7 @@ my $fqa = QA::OpenQAFile(); # my @srv = qw( lxhadeb08 lxhadeb09 lxhadeb10 lxhadeb11 lxhadeb12 lxhadesdaq lxhadeb06 lxhadeb07 lxhadeb13 hadesdaq03 hadesdaq04 hades30 hadesp50 hadesp31 depcp418 hades33 lxhaddcs03 # lxhaddcs05 lxhaddcs06 lxhaddcs10 lxhaddcs11); # JAM 6.1.2020 - for the moment exlude hosts depcp418 and lxhaddcs03 not available -my @srv = qw( lxhadeb08 lxhadeb09 lxhadeb10 lxhadeb11 lxhadeb12 lxhadeb14 lxhadeb15 lxhadeb16 lxhadesdaq lxhadeb07 lxhadeb13 hadesdaq03 hadesdaq04 hades30 hadesp50 hadesp31 hades33 hades63 hades66 lxhaddcs05 lxhaddcs06 lxhaddcs10 lxhaddcs11); +my @srv = qw( lxhadeb08 lxhadeb09 lxhadeb10 lxhadeb11 lxhadeb12 lxhadeb14 lxhadeb15 lxhadeb16 lxhadesdaq lxhadeb07 lxhadeb13 hadesdaq03 hadesdaq04 hades30 hadesp57 hadesp31 hades33 hades63 hades66 hadesp70 lxhaddcs05 lxhaddcs06 lxhaddcs10 lxhaddcs11); my $template .= "\n\n
    "; for(my $d=1;$d<=32;$d++) { diff --git a/hmon/permanent/hmon_eb_run.pl b/hmon/permanent/hmon_eb_run.pl index 158e6b2..cb3a334 100755 --- a/hmon/permanent/hmon_eb_run.pl +++ b/hmon/permanent/hmon_eb_run.pl @@ -60,7 +60,8 @@ my $url_prefix = $masterurl . 'Master/BNET/RunPrefix/get.json?field="value"'; my $url_builders = $masterurl . 'Master/BNET/Builders/get.json?field="value"'; my $url_inputs = $masterurl . 'Master/BNET/Inputs/get.json?field="value"'; -my $url_cts_histo = $masterurl . '/BNET-IN-4/TRB8800_TdcCal/TRB_8800/TRB_8800_TrigType/get.json?field="bins"'; +#JAM2021 - location of 8800 changed to input 7 +my $url_cts_histo = $masterurl . '/BNET-IN-7/TRB8800_TdcCal/TRB_8800/TRB_8800_TrigType/get.json?field="bins"'; my $url_master_state = $masterurl . 'Master/BNET/State/get.json?field="value"'; diff --git a/hmon/permanent/hmon_hldlastfiles.pl b/hmon/permanent/hmon_hldlastfiles.pl index 9b5baa3..585d88b 100755 --- a/hmon/permanent/hmon_hldlastfiles.pl +++ b/hmon/permanent/hmon_hldlastfiles.pl @@ -11,9 +11,9 @@ use QA; while(1) { - my $out = Hmon::MakeTitle(4,8,"Last *.hld files"); + my $out = Hmon::MakeTitle(6,10,"Last *.hld files"); $out .= "
     ";
    -  foreach my $i (8,9,10,11) {
    +  foreach my $i (8,9,14,15,16) {
         my $server = sprintf("lxhadeb%02i",$i);
         $out .= "$server\n";
         my $cmd = "ssh $server \"ls -rtlh /data*/data/*.hld | tail -n4\"";
    @@ -24,7 +24,7 @@ while(1) {
           $out .= $s;
           }
         }
    -    $out .= "
    All files are available in
    /store/NN/01/data/
    on lxhadeb06 and 07"; + $out .= "
    All files are available in
    /store/NN/01/data/
    on hades63"; $out .= "
    "; $out .= Hmon::MakeFooter(); Hmon::WriteFile("hldlast",$out); diff --git a/hmon/permanent/hmon_hub.pl b/hmon/permanent/hmon_hub.pl index 562364c..90888a8 100755 --- a/hmon/permanent/hmon_hub.pl +++ b/hmon/permanent/hmon_hub.pl @@ -194,8 +194,9 @@ sub isFeeHub { 0x8292,0x8293,0x8294,0x8295,0x8296,0x8297,0x82a4,0x82a6, 8a00 8a01 8a02 8a03 8a04 8a05 83c0 83c1 83c2 83c3 83c4 83c5 83c6 83c7 83c8 83c9 83ca 83cb 83cc 84c0 84c1 84c2 84c3 84c4 84c5 86c0 86c1 86c2 86c3 86c4 86c5 + 8700 8710 8720 8701 8702 8b00 8b01 8b02 8b03 8b10 8b11 8b12 8b13 8b14 8b15 - 8890 + 8880 8890 8c00 8c10 8d00 "; @@ -311,7 +312,11 @@ sub display() } elsif ($busy_time eq "#") { if (isFeeHub($hub_addr) == 1) { $busyboardslist .= ", " unless $busyboardslist eq ""; - $busyboardslist .= sprintf("%04x (%04x-%i)",Hmon::TraceDBGet($hub_addr,$i-1),$hub_addr,($i-1));# + my $busyboard = Hmon::TraceDBGet($hub_addr,$i-1); + #if($busyboard != 0) { + # + # } + $busyboardslist .= sprintf("%04x (%04x-%i)",$busyboard,$hub_addr,($i-1));# $busyboardscnt++; } $str .= ""; diff --git a/hmon/permanent/hmon_open_ssh_master_channels.pl b/hmon/permanent/hmon_open_ssh_master_channels.pl index 0f50e57..cdacc1c 100755 --- a/hmon/permanent/hmon_open_ssh_master_channels.pl +++ b/hmon/permanent/hmon_open_ssh_master_channels.pl @@ -4,7 +4,7 @@ use strict; use warnings; use v5.10.0; -my @cpus = qw |lxhadeb07 lxhadeb08 lxhadeb09 lxhadeb10 lxhadeb11 lxhadeb12 lxhadeb13 lxhadeb14 lxhadeb15 lxhadeb16 lxhaddcs05 lxhaddcs06 lxhadesdaq hadesdaq01 hades30 hadesp31 hades33 lxhadeb07p lxhadeb08p lxhadeb09p lxhadeb10p lxhadeb11p lxhadeb12p lxhadeb13p lxhadeb14p lxhadeb15p lxhadeb16p lxhaddcs05p lxhaddcs06p lxhadesdaqp hadesdaqp01 hadesdaqp02 hadesp30 hadesp33 hadesp50 |; +my @cpus = qw |lxhadeb07 lxhadeb08 lxhadeb09 lxhadeb10 lxhadeb11 lxhadeb12 lxhadeb13 lxhadeb14 lxhadeb15 lxhadeb16 lxhaddcs05 lxhaddcs06 lxhadesdaq hadesdaq01 hades30 hadesp31 hades33 lxhadeb07p lxhadeb08p lxhadeb09p lxhadeb10p lxhadeb11p lxhadeb12p lxhadeb13p lxhadeb14p lxhadeb15p lxhadeb16p lxhaddcs05p lxhaddcs06p lxhadesdaqp hadesdaqp01 hadesdaqp02 hadesp30 hadesp33 hadesp57 |; for my $cpu (@cpus) { my $c = "~/trbsoft/hadesdaq/hmon/hmon_ssh hadaq\@$cpu -N -f /dev/null&"; diff --git a/hmon/permanent/hmon_richhv.pl b/hmon/permanent/hmon_richhv.pl index d56b627..f821950 100755 --- a/hmon/permanent/hmon_richhv.pl +++ b/hmon/permanent/hmon_richhv.pl @@ -132,7 +132,7 @@ while(1) { my $max_i = 1E5; my $ChnlsOn = 0; my $data = Perl2Epics::GetAll(); - + print "HV On: ".$data->{"HVPowerOn"}->{val} ."\n"; if ($data->{"HVPowerOn"}->{val} != 0) { for (my $i = 0; $i <= 5;$i++){ for (my $j = 0; $j<=15; $j++) { diff --git a/hmon/permanent/hmon_stshv.pl b/hmon/permanent/hmon_stshv.pl new file mode 100755 index 0000000..e13abea --- /dev/null +++ b/hmon/permanent/hmon_stshv.pl @@ -0,0 +1,74 @@ +#!/usr/bin/perl -w +use strict; +use warnings; +use Time::HiRes qw( gettimeofday usleep time ); +use POSIX qw(strftime); +use FileHandle; +use Data::Dumper; +use POSIX qw/floor ceil/; +use List::Util qw/min max/; +use Hmon; +use QA; +use Perl2Epics; +use HADES::TrbNet; +use HPlot; + +my $flog = QA::OpenQAFile(); + +my $timer=0; +my $store; + +Perl2Epics::Connect("STS1_1" ,"HAD:STS:HV:STS1:P1:vmon"); +Perl2Epics::Connect("STS1_2" ,"HAD:STS:HV:STS1:P2:vmon" ); +Perl2Epics::Connect("STS2_1" ,"HAD:STS:HV:STS2:P1:vmon"); +Perl2Epics::Connect("STS2_2" ,"HAD:STS:HV:STS2:P2:vmon" ); +Perl2Epics::Connect("STS2_3" ,"HAD:STS:HV:STS2:P3:vmon"); +Perl2Epics::Connect("STS2_4" ,"HAD:STS:HV:STS2:P4:vmon" ); + +print "Connected.\n"; + + +while(1) { + + my $data = Perl2Epics::GetAll(); + my @v; + $v[0] = $data->{"STS1_1"}->{val}; + $v[1] = $data->{"STS1_2"}->{val}; + $v[2] = $data->{"STS2_1"}->{val}; + $v[3] = $data->{"STS2_2"}->{val}; + $v[4] = $data->{"STS2_3"}->{val}; + $v[5] = $data->{"STS2_4"}->{val}; + + my $max = max(@v); + my $min = min(@v); + +# +# my $str = Hmon::MakeTitle(2, 3, "Start HV", 1, ""); +# +# $str .= "
    Start V".QA::SciNotation($sv)." V"; +# $str .= "
    Start I".ceil($simin*1000).' - '.ceil($simax*1000)." nA"; +# $str .= "
    Veto V".QA::SciNotation($vv)." V"; +# $str .= "
    Veto I".ceil($vimin*1000).' - '.ceil($vimax*1000)." nA"; +# +# $str .= Hmon::MakeFooter(); +# Hmon::WriteFile("StartHV", $str); + + + my $value = QA::SciNotation($min)." - ".QA::SciNotation($max); + my $qastate = QA::OK; + $qastate = QA::WARN if $min < 1600; + $qastate = QA::ERROR if $min <= 100; + if ($QA::StsHvOff == 1) { $qastate = QA::NOTE;} + if ($max < 10 || $QA::StsHvOff == 1) { $value="HV is OFF";} + + + my $longtext = " STS-1: ".QA::SciNotation($v[0])."V / ".QA::SciNotation($v[1])."V
    "; + $longtext .=" STS-2: ".QA::SciNotation($v[2])."V / ".QA::SciNotation($v[3])."V /".QA::SciNotation($v[4])."V / ".QA::SciNotation($v[5])."V"; + + QA::WriteQALog($flog,"hv2","stshv",30,$qastate,"STS HV",$value,$longtext); + + + + + sleep(10); + } diff --git a/hmon/start.sh b/hmon/start.sh index 394ab8b..dae9414 100755 --- a/hmon/start.sh +++ b/hmon/start.sh @@ -18,7 +18,7 @@ tmux new-session -s cerberus_tunnel -d 'while true; do ssh -R 8888:hades33.gsi. fi ######### -ssh hadesp50 pkill -f speakdaemon.pl +#ssh hadesp57 pkill -f speakdaemon.pl ssh hadesp33 pkill -f speakdaemon.pl cd /home/hadaq/trbsoft/hadesdaq/hmon/ @@ -117,7 +117,7 @@ END: {if($r!=0 and eof()) {foreach (@l) {wait}}} ' & rm ~/trbsoft/hadesdaq/hmon/files/note.htt -ssh hadesp50 'cd /home/hadaq/trbsoft/daq/hmon/; PERL5LIB=. ./speakdaemon.pl 1>/dev/null 2>>/home/hadaq/trbsoft/hadesdaq/hmon/logs/perlerror_speakdaemon' & +ssh hadesp57 'cd /home/hadaq/trbsoft/daq/hmon/; PERL5LIB=. ./speakdaemon.pl 1>/dev/null 2>>/home/hadaq/trbsoft/hadesdaq/hmon/logs/perlerror_speakdaemon' & ssh hadesp33 'cd /home/hadaq/trbsoft/daq/hmon/; PERL5LIB=. ./speakdaemon.pl 1>/dev/null 2>>/home/hadaq/trbsoft/hadesdaq/hmon/logs/perlerror_speakdaemon' & sleep 1; diff --git a/hub/register_configgbe_ip.db b/hub/register_configgbe_ip.db index b81ecd4..57fd7e5 120000 --- a/hub/register_configgbe_ip.db +++ b/hub/register_configgbe_ip.db @@ -1 +1 @@ -register_configgbe_ip_2021-test.db \ No newline at end of file +register_configgbe_ip_2021-test-mdconlytwoebs.db \ No newline at end of file diff --git a/hub/register_configgbe_ip_2021-test-mdconlytwoebs.db b/hub/register_configgbe_ip_2021-test-mdconlytwoebs.db new file mode 100644 index 0000000..31c1cc8 --- /dev/null +++ b/hub/register_configgbe_ip_2021-test-mdconlytwoebs.db @@ -0,0 +1,324 @@ +########################################################################################### +# JAM 17-10-2018 - introduce even more new server lxhadeb11, lxhadeb12, skip lxhadeb05 +# JAM2018 - setup for usage of NEW SERVERS lxhadeb08. lxhadeb09, lxhadeb10 - BNET only +# JAM DEC-2019 - prepare for new trb3 datasources of rpc and tof +# 0x84c0 - 0x84c5 : 6 new subevents for new RPC electronics. +# 0x86c0 to 0x86c6 are the new hubs for TOF (1 TRB3 each, 128 channels each, 7 TRB3 total) +####### +# JAM july 2021: add new eventbuilders lxhadeb14,15,16; new setup with 7 inputs and 5 builders + +# Eventbuilders: +# EB 0 is now used to define BNET destinations: + +# we define 7 input nodes in the setup for EB0- +# BNET_IN 1: lxhadeb08 enp97s0f1 192.168.100.8 0xc0a86408 ports 50768 - 50805 +# BNET_IN 2: lxhadeb09 enp97s0f1 192.168.100.9 0xc0a86409 ports +# BNET_IN 3: lxhadeb10 enp97s0f1 192.168.100.10 0xc0a8640a ports +# BNET_IN 4: lxhadeb11 eno2 192.168.105.11 0xc0a8690b +## BNET_IN 5: lxhadeb12 eno2 192.168.105.12 0xc0a8690c +# lxhadeb14 enp67s0f0 192.168.105.14 0xc0a8690e +# lxhadeb15 enp67s0f0 192.168.105.15 0xc0a8690f +# lxhadeb16 enp67s0f0 192.168.105.16 0xc0a86910 + +# the 5 builder nodes lxhadeb08 -lxhadeb11 are assigned in start_eb_gbe.pl +##################### + + + +# EB 1: lxhadeb09 enp97s0f1 192.168.100.9 0xc0a86409 ports 50000 - 50099 +# EB 2: lxhadeb10 enp97s0f1 192.168.100.10 0xc0a8640a ports 50000 - 50099 +# EB 3: lxhadeb11 eth4 192.168.100.15 0xc0a8690b ports 50000 - 50099 +# EB 4: lxhadeb08 enp97s0f1 192.168.100.8 0xc0a86408 ports 50256 - 50293 +# EB 5: lxhadeb09 enp97s0f1 192.168.100.9 0xc0a86409 ports 50256 - 50293 +# EB 6: lxhadeb10 enp97s0f1 192.168.100.10 0xc0a8640a ports 50256 - 50293 +# EB 7: lxhadeb11 eno2 192.168.105.11 0xc0a8690b ports 50256 - 50293 +# EB 8: lxhadeb08 enp97s0f1 192.168.100.8 0xc0a86408 ports 50512 - 50549 +# EB 9: lxhadeb09 enp97s0f1 192.168.100.9 0xc0a86409 ports 50512 - 50549 +# EB 10: lxhadeb10 enp97s0f1 192.168.100.10 0xc0a8640a ports 50512 - 50549 +# EB 11: lxhadeb11 eno2 192.168.105.11 0xc0a8690b ports 50512 - 50549 +# EB 12: lxhadeb08 enp97s0f1 192.168.100.8 0xc0a86408 ports 50768 - 50805 +# EB 13: lxhadeb09 enp97s0f1 192.168.100.9 0xc0a86409 ports 50768 - 50805 +# EB 14: lxhadeb10 enp97s0f1 192.168.100.10 0xc0a8640a ports 50768 - 50805 +# EB 15: lxhadeb11 eno2 192.168.105.11 0xc0a8690b ports 50768 - 50805 + +########################################################################################### + + +#Broadcast to all GbE-Entities: 0xff7f + +!Register table +# Type # C0 # C1 # C2 # C3 # C4 # C5 # C6 # C7 # C8 # +########################################################################################### +# #old register set +# 17 0xc100 0xc101 0xc102 0xc103 0xc104 0xc105 0xc106 0xc107 0xc108 +# #new memory locations +# 0 0x8100 0x8101 0x8102 0x8103 0x8104 0x8105 0x8106 0x8107 0x8108 +# 1 0x8110 0x8111 0x8112 0x8113 0x8114 0x8115 0x8116 0x8117 0x8118 +# 2 0x8120 0x8121 0x8122 0x8123 0x8124 0x8125 0x8126 0x8127 0x8128 +# 3 0x8130 0x8131 0x8132 0x8133 0x8134 0x8135 0x8136 0x8137 0x8138 +# 4 0x8140 0x8141 0x8142 0x8143 0x8144 0x8145 0x8146 0x8147 0x8148 +# 5 0x8150 0x8151 0x8152 0x8153 0x8154 0x8155 0x8156 0x8157 0x8158 +# 6 0x8160 0x8161 0x8162 0x8163 0x8164 0x8165 0x8166 0x8167 0x8168 +# 7 0x8170 0x8171 0x8172 0x8173 0x8174 0x8175 0x8176 0x8177 0x8178 +# 8 0x8180 0x8181 0x8182 0x8183 0x8184 0x8185 0x8186 0x8187 0x8188 +# 9 0x8190 0x8191 0x8192 0x8193 0x8194 0x8195 0x8196 0x8197 0x8198 +# 10 0x81A0 0x81A1 0x81A2 0x81A3 0x81A4 0x81A5 0x81A6 0x81A7 0x81A8 +# 11 0x81B0 0x81B1 0x81B2 0x81B3 0x81B4 0x81B5 0x81B6 0x81B7 0x81B8 +# 12 0x81C0 0x81C1 0x81C2 0x81C3 0x81C4 0x81C5 0x81C6 0x81C7 0x81C8 +# 13 0x81D0 0x81D1 0x81D2 0x81D3 0x81D4 0x81D5 0x81D6 0x81D7 0x81D8 +# 14 0x81E0 0x81E1 0x81E2 0x81E3 0x81E4 0x81E5 0x81E6 0x81E7 0x81E8 +# 15 0x81F0 0x81F1 0x81F2 0x81F3 0x81F4 0x81F5 0x81F6 0x81F7 0x81F8 + + +#Sliced tables for broadcast settings follow: +# Type # C0 # C1 # C2 # C5 # C8 # +####################################################### + 100 0x8100 0x8101 0x8102 0x8105 0x8108 + 101 0x8110 0x8111 0x8112 0x8115 0x8118 + 102 0x8120 0x8121 0x8122 0x8125 0x8128 + 103 0x8130 0x8131 0x8132 0x8135 0x8138 + 104 0x8140 0x8141 0x8142 0x8145 0x8148 + 105 0x8150 0x8151 0x8152 0x8155 0x8158 + 106 0x8160 0x8161 0x8162 0x8165 0x8168 + 107 0x8170 0x8171 0x8172 0x8175 0x8178 + 108 0x8180 0x8181 0x8182 0x8185 0x8188 + 109 0x8190 0x8191 0x8192 0x8195 0x8198 + 110 0x81A0 0x81A1 0x81A2 0x81A5 0x81A8 + 111 0x81B0 0x81B1 0x81B2 0x81B5 0x81B8 + 112 0x81C0 0x81C1 0x81C2 0x81C5 0x81C8 + 113 0x81D0 0x81D1 0x81D2 0x81D5 0x81D8 + 114 0x81E0 0x81E1 0x81E2 0x81E5 0x81E8 + 115 0x81F0 0x81F1 0x81F2 0x81F5 0x81F8 + +#Table for individual settings +# Type # C3 # C4 # C6 # C7 # +############################################## + 0 0x8103 0x8104 0x8106 0x8107 + 1 0x8113 0x8114 0x8116 0x8117 + 2 0x8123 0x8124 0x8126 0x8127 + 3 0x8133 0x8134 0x8136 0x8137 + 4 0x8143 0x8144 0x8146 0x8147 + 5 0x8153 0x8154 0x8156 0x8157 + 6 0x8163 0x8164 0x8166 0x8167 + 7 0x8173 0x8174 0x8176 0x8177 + 8 0x8183 0x8184 0x8186 0x8187 + 9 0x8193 0x8194 0x8196 0x8197 + 10 0x81A3 0x81A4 0x81A6 0x81A7 + 11 0x81B3 0x81B4 0x81B6 0x81B7 + 12 0x81C3 0x81C4 0x81C6 0x81C7 + 13 0x81D3 0x81D4 0x81D6 0x81D7 + 14 0x81E3 0x81E4 0x81E6 0x81E7 + 15 0x81F3 0x81F4 0x81F6 0x81F7 + + + + + +!Value table + + + + +# Dest Port Src MAC Src IP Src Port # # TDC Calib flag +# Hub # Type # C3 # C4 # C6 # C7 # EB IP # 1:NO 1:linear 2:complex 11:linear with ToT 15ns +########################################################################################################## +# JAM 25-may-2018: this first EB will be also used as pseudo node to setup the dabc bnet +# JAM 17-oct-2018: adjusted for new server hardware only +# last column will distribute to bnet input nodes +# EB_LUT must be 0x1 in CTS for bnet mode +# 0xc0a86408 lxhadeb08 mac 90:e2:ba:f7:9b:b5 192.168.100.8 +# 0xc0a86409 lxhadeb09, mac 90:e2:ba:f7:cf:a1 192.168.100.9 +# 0xc0a8640a lxhadeb10, mac 90:e2:ba:e2:c9:95 192.168.100.10 +# 0xc0a8690b lxhadeb11 mac ac:1f:6b:66:2a:29 192.168.105.11 +## 0xc0a8690c lxhadeb12 mac ac:1f:6b:64:73:17 192.168.105.12 +# note: lxhadeb12 will be only master node (and spare) JAM 26-07-2021 +# 0xc0a8690e lxhadeb14 mac 40:a6:b7:3c:b2:0c 192.168.105.14 - new 192.168.105.114 +# 0xc0a8690f lxhadeb15 mac 40:a6:b7:3c:5e:0c 192.168.105.15 - new 192.168.105.115 +# 0xc0a86910 lxhadeb16 mac 40:a6:b7:3c:6d:98 192.168.105.16 - new 192.168.105.116 + + +# note that we also need to set same destination ips in the hub table at the end of this file! +# +#lxhadebXX, EB1 XX +# 0x8000 0 0xc65B 0xdead8000 0xc0a86480 0xc65B 0xc0a86408 0 # OLD cts -lxhadeb08 + 0x8800 0 0xc650 0xdead8800 0xc0a8648B 0xc650 0xc0a8690b 0 # central-cts lxhadeb11 + 0x8700 0 0xc65A 0xdead8700 0xc0a8648C 0xc65A 0xc0a86974 1 # fw new 1 lxhadeb16 + 0x8701 0 0xc65B 0xdead8701 0xc0a8648C 0xc65B 0xc0a86974 1 # fw new 2 lxhadeb16 + 0x8702 0 0xc65C 0xdead8702 0xc0a8648C 0xc65C 0xc0a86974 1 # fw new 3 lxhadeb16 + 0x8880 0 0xc65D 0xdead8A00 0xc0a8648D 0xc65D 0xc0a86409 2 # start - lxhadeb09 + 0x8890 0 0xc65F 0xdead8890 0xc0a8648F 0xc65F 0xc0a86409 2 # veto lxhadeb09 +# 0x8900 0 0xc65C 0xdead8900 0xc0a8648C 0xc65C 0xc0a86409 0 # pion1 lxhadeb09 +# 0x8910 0 0xc65E 0xdead8910 0xc0a8648E 0xc65E 0xc0a86409 0 # pion2 lxhadeb09 + 0x1000 0 0xc660 0xdead1000 0xc0a86490 0xc660 0xc0a86408 0 # mdc - lxhadeb08 + 0x1010 0 0xc661 0xdead1010 0xc0a86491 0xc661 0xc0a86408 0 # mdc - lxhadeb08 + 0x1020 0 0xc662 0xdead1020 0xc0a86492 0xc662 0xc0a86408 0 # mdc - lxhadeb08 + 0x1030 0 0xc663 0xdead1030 0xc0a86493 0xc663 0xc0a86408 0 # mdc - lxhadeb08 + 0x1040 0 0xc664 0xdead1040 0xc0a86494 0xc664 0xc0a86408 0 # mdc - lxhadeb08 + 0x1050 0 0xc665 0xdead1050 0xc0a86495 0xc665 0xc0a86408 0 # mdc - lxhadeb08 + 0x1100 0 0xc666 0xdead1100 0xc0a86496 0xc666 0xc0a86409 0 # mdc - lxhadeb09 - moved from 10 + 0x1110 0 0xc66A 0xdead1110 0xc0a86497 0xc66A 0xc0a86409 0 # mdc - lxhadeb09 - moved + 0x1120 0 0xc668 0xdead1120 0xc0a86498 0xc668 0xc0a86409 0 # mdc - lxhadeb09 - min for 09 + 0x1130 0 0xc670 0xdead1130 0xc0a86499 0xc670 0xc0a86409 0 # mdc - lxhadeb09 + 0x1140 0 0xc66B 0xdead1140 0xc0a8649A 0xc66B 0xc0a86409 0 # mdc - lxhadeb09 - moved + 0x1150 0 0xc669 0xdead1150 0xc0a8649B 0xc669 0xc0a86409 0 # mdc - lxhadeb09 - JAM21 swapped for test + 0x8a00 0 0xc676 0xdead8a00 0xc0a864A6 0xc676 0xc0a8640a 1 # ecal lxhadeb10 + 0x8a01 0 0xc677 0xdead8a01 0xc0a864A7 0xc677 0xc0a8640a 1 # ecal lxhadeb10 + 0x8a02 0 0xc678 0xdead8a02 0xc0a864A8 0xc678 0xc0a8640a 1 # ecal lxhadeb10 + 0x8a03 0 0xc679 0xdead8a03 0xc0a864A9 0xc679 0xc0a8640a 1 # ecal lxhadeb10 +# 0x8a00 0 0xc676 0xdead8a00 0xc0a864A6 0xc676 0xc0a86409 1 # ecal- lxhadeb09 +# 0x8a01 0 0xc677 0xdead8a01 0xc0a864A7 0xc677 0xc0a86409 1 # ecal- lxhadeb09 +# 0x8a02 0 0xc678 0xdead8a02 0xc0a864A8 0xc678 0xc0a86409 1 # ecal- lxhadeb09 +# 0x8a03 0 0xc679 0xdead8a03 0xc0a864A9 0xc679 0xc0a86409 1 # ecal- lxhadeb09 + 0x8a04 0 0xc67a 0xdead8a04 0xc0a864AA 0xc67A 0xc0a86972 1 # ecal- lxhadeb14 + 0x8a05 0 0xc67b 0xdead8a05 0xc0a864AB 0xc67B 0xc0a86972 1 # ecal- lxhadeb14 + 0x83c0 0 0xc67c 0xdead83c0 0xc0a864AC 0xc67C 0xc0a86972 11 # rich lxhadeb14 + 0x83c1 0 0xc67d 0xdead83c1 0xc0a864AD 0xc67D 0xc0a86972 11 # rich lxhadeb14 + 0x83c2 0 0xc67e 0xdead83c2 0xc0a864AE 0xc67E 0xc0a86972 11 # rich lxhadeb14 + 0x83c3 0 0xc67f 0xdead83c3 0xc0a864AF 0xc67F 0xc0a8640a 11 # rich lxhadeb10 + 0x83c4 0 0xc680 0xdead83c4 0xc0a864B0 0xc680 0xc0a8640a 11 # rich lxhadeb10 + 0x83c5 0 0xc681 0xdead83c5 0xc0a864B1 0xc681 0xc0a8640a 11 # rich lxhadeb10 + 0x83c6 0 0xc682 0xdead83c6 0xc0a864B2 0xc682 0xc0a86972 11 # rich lxhadeb14 + 0x83c7 0 0xc683 0xdead83c7 0xc0a864B3 0xc683 0xc0a86972 11 # rich lxhadeb14 + 0x83c8 0 0xc684 0xdead83c8 0xc0a864B4 0xc684 0xc0a86408 11 # rich lxhadeb08 + 0x83c9 0 0xc685 0xdead83c9 0xc0a864B5 0xc685 0xc0a86408 11 # rich lxhadeb08 + 0x83ca 0 0xc686 0xdead83ca 0xc0a864B6 0xc686 0xc0a8690b 11 # rich lxhadeb11 + 0x83cb 0 0xc687 0xdead83cb 0xc0a864B7 0xc687 0xc0a8690b 11 # rich lxhadeb11 + 0x8810 0 0xc653 0xdead8810 0xc0a864B8 0xc653 0xc0a8690b 0 # central-aux lxhadeb11 + 0x84c0 0 0xc654 0xdead84c0 0xc0a864B9 0xc654 0xc0a8640a 2 # rpc sector 1 lxhadeb10 + 0x84c1 0 0xc655 0xdead84c1 0xc0a864BA 0xc655 0xc0a8640a 2 # rpc sector 2 lxhadeb10 + 0x84c2 0 0xc656 0xdead84c2 0xc0a864BB 0xc656 0xc0a8640a 2 # rpc sector 3 lxhadeb10 + 0x84c3 0 0xc657 0xdead84c3 0xc0a864BC 0xc657 0xc0a8690b 2 # rpc sector 4 lxhadeb11 + 0x84c4 0 0xc658 0xdead84c4 0xc0a864BD 0xc658 0xc0a8690b 2 # rpc sector 4 lxhadeb11 + 0x84c5 0 0xc651 0xdead84c4 0xc0a864BE 0xc651 0xc0a8690b 2 # rpc sector 4 lxhadeb11 + 0x86c0 0 0xc690 0xdead86c0 0xc0a864C0 0xc690 0xc0a86408 2 # tof hub 0 lxhadeb08 + 0x86c1 0 0xc691 0xdead86c2 0xc0a864C2 0xc691 0xc0a8640A 2 # tof hub 1 moved to lxhadeb10 + #0x86c1 0 0xc691 0xdead86c1 0xc0a864C1 0xc691 0xc0a86409 2 # tof hub 1 lxhadeb09 + 0x86c2 0 0xc692 0xdead86c2 0xc0a864C2 0xc692 0xc0a8640A 2 # tof hub 2 lxhadeb10 + 0x86c3 0 0xc693 0xdead86c3 0xc0a864C3 0xc693 0xc0a8690B 2 # tof hub 3 lxhadeb11 + 0x86c4 0 0xc694 0xdead86c4 0xc0a864C4 0xc694 0xc0a8690B 2 # tof hub 4 lxhadeb11 + 0x86c5 0 0xc695 0xdead86c5 0xc0a864C5 0xc695 0xc0a8690E 2 # tof hub 5 lxhadeb14 + 0x86c6 0 0xc696 0xdead86c6 0xc0a864C6 0xc696 0xc0a8690E 2 # tof hub 6 lxhadeb14 + 0x8b00 0 0xc6B0 0xdead8b00 0xc0a864D0 0xc6B0 0xc0a86973 2 # STS1 0 lxhadeb15 + 0x8b01 0 0xc6B1 0xdead8b01 0xc0a864D1 0xc6B1 0xc0a86973 2 # STS1 1 lxhadeb15 + 0x8b02 0 0xc6B2 0xdead8b02 0xc0a864D2 0xc6B2 0xc0a86973 2 # STS1 2 lxhadeb15 + 0x8b03 0 0xc6B3 0xdead8b03 0xc0a864D3 0xc6B3 0xc0a86973 2 # STS1 3 lxhadeb15 + 0x8b10 0 0xc6B4 0xdead8b10 0xc0a864D9 0xc6B4 0xc0a86974 2 # STS2 0 lxhadeb16 + 0x8b11 0 0xc6B5 0xdead8b11 0xc0a864DA 0xc6B5 0xc0a86974 2 # STS2 1 lxhadeb16 + 0x8b12 0 0xc6B6 0xdead8b12 0xc0a864DB 0xc6B6 0xc0a86974 2 # STS2 2 lxhadeb16 + 0x8b13 0 0xc6B7 0xdead8b13 0xc0a864DC 0xc6B7 0xc0a86974 2 # STS2 3 lxhadeb16 + 0x8b14 0 0xc6B8 0xdead8b14 0xc0a864DD 0xc6B8 0xc0a86974 2 # STS2 4 lxhadeb16 + 0x8b15 0 0xc6B9 0xdead8b15 0xc0a864DE 0xc6B9 0xc0a86974 2 # STS2 5 lxhadeb16 + 0x8c00 0 0xc6BA 0xdead8c00 0xc0a864C0 0xc6BA 0xc0a86973 2 # fw-RPC 0 lxhadeb15 + 0x8c10 0 0xc6BB 0xdead8c01 0xc0a864C0 0xc6BB 0xc0a86973 2 # fw-RPC 1 lxhadeb15 + 0x8d00 0 0xc6BC 0xdead86c2 0xc0a864C2 0xc6BC 0xc0a8640A 2 # innertof moved to lxhadeb10 + # 0x8d00 0 0xc6BC 0xdead86c1 0xc0a864C1 0xc6BC 0xc0a86409 2 # inner-tof lxhadeb09 + + ####################################################################################################################### +####################################################################################################################### + + + +# hub setup - destination macs and ips + +############################################################################# +# +# lxhadeb08 enp97s0f1 90:e2:ba:f7:9b:b5 192.168.100.8 0xc0a86408 +# lxhadeb09 enp97s0f1 90:e2:ba:f7:cf:a1 192.168.100.9 0xc0a86409 +# lxhadeb10 enp97s0f1 90:e2:ba:e2:c9:95 192.168.100.10 0xc0a8640a +# lxhadeb11 eno2 ac:1f:6b:66:2a:29 192.168.105.11 0xc0a8690b +# lxhadeb12 eno2 ac:1f:6b:64:73:17 192.168.105.12 0xc0a8690c + +# second gbe +# lxhadeb11 enp19s0f1 ac:1f:6b:8b:62:f1 192.168.105.11 0xc0a8690b +# lxhadeb12 enp19s0f1 ac:1f:6b:8b:60:1f 192.168.105.12 0xc0a8690c + +# lxhadeb14 enp67s0f0 40:a6:b7:3c:b2:0c 192.168.105.14 0xc0a8690e +# new 192.168.105.114 0xc0a86972 +# lxhadeb15 enp67s0f0 40:a6:b7:3c:5e:0c 192.168.105.15 0xc0a8690f +# new 192.168.105.115 0xc0a86973 +# lxhadeb16 enp67s0f0 40:a6:b7:3c:6d:98 192.168.105.16 0xc0a86910 +# new 192.168.105.116 0xc0a86974 + +# EB 3: lxhadeb05 eth4 192.168.100.15 0xc0a8640f + + +# Dest MAC Dest MAC Dest IP Src MAC Packet Size +# Hub # Type # C0 # C1 # C2 # C5 # C8 # +##################################################################################### + # 0xff7f 100 0xbaf79bb5 0x90e2 0xc0a86408 0x0230 0x0578 #lxhadeb08 EB0 90:e2:ba:f7:9b:b5 192.168.100.8 + # JAM 27-apr-2018: for DABC-BNET (Type 100) the destination ips have to be set here for individual hubs +# the ip entries in above table for eb1 needs to match this to configure EBs! + # 0xff7f 100 0x2157b095 0x001B 0xc0a8640f 0x0230 0x0578 #dummies to lxhadeb05, EB3 00:1b:21:57:b0:95 192.168.100.15 +# + 0x8700 100 0xb73c6d98 0x40a6 0xc0a86974 0x0230 0x0578 # fw new 1 lxhadeb16 + 0x8701 100 0xb73c6d98 0x40a6 0xc0a86974 0x0230 0x0578 # fw new 2 lxhadeb16 + 0x8702 100 0xb73c6d98 0x40a6 0xc0a86974 0x0230 0x0578 # fw new 3 lxhadeb16 + 0x8800 100 0x6b8b62f1 0xac1f 0xc0a8690b 0x0230 0x0578 # central-cts lxhadeb11 ###### + 0x8880 100 0xbaf7cfa1 0x90e2 0xc0a86409 0x0230 0x0578 # start - lxhadeb09 + 0x8890 100 0xbaf7cfa1 0x90e2 0xc0a86409 0x0230 0x0578 # veto lxhadeb09 +# 0x8900 100 0xbaf7cfa1 0x90e2 0xc0a86409 0x0230 0x0578 # pion1 lxhadeb09 +# 0x8910 100 0xbaf7cfa1 0x90e2 0xc0a86409 0x0230 0x0578 # pion2 lxhadeb09 + 0x1000 100 0xbaf79bb5 0x90e2 0xc0a86408 0x0230 0x0578 # mdc - lxhadeb08 + 0x1010 100 0xbaf79bb5 0x90e2 0xc0a86408 0x0230 0x0578 # mdc - lxhadeb08 + 0x1020 100 0xbaf79bb5 0x90e2 0xc0a86408 0x0230 0x0578 # mdc - lxhadeb08 + 0x1030 100 0xbaf79bb5 0x90e2 0xc0a86408 0x0230 0x0578 # mdc - lxhadeb08 + 0x1040 100 0xbaf79bb5 0x90e2 0xc0a86408 0x0230 0x0578 # mdc - lxhadeb08 + 0x1050 100 0xbaf79bb5 0x90e2 0xc0a86408 0x0230 0x0578 # mdc - lxhadeb08 + 0x1100 100 0xbaf7cfa1 0x90e2 0xc0a86409 0x0230 0x0578 # mdc- lxhadeb09 + 0x1110 100 0xbaf7cfa1 0x90e2 0xc0a86409 0x0230 0x0578 # mdc- lxhadeb09 + 0x1120 100 0xbaf7cfa1 0x90e2 0xc0a86409 0x0230 0x0578 # mdc- lxhadeb09 + 0x1130 100 0xbaf7cfa1 0x90e2 0xc0a86409 0x0230 0x0578 # mdc- lxhadeb09 + 0x1140 100 0xbaf7cfa1 0x90e2 0xc0a86409 0x0230 0x0578 # mdc- lxhadeb09 + 0x1150 100 0xbaf7cfa1 0x90e2 0xc0a86409 0x0230 0x0578 # mdc- lxhadeb09 + 0x8a00 100 0xbae2c995 0x90e2 0xc0a8640a 0x0230 0x0578 # ecal - lxhadeb10 + 0x8a01 100 0xbae2c995 0x90e2 0xc0a8640a 0x0230 0x0578 # ecal - lxhadeb10 + 0x8a02 100 0xbae2c995 0x90e2 0xc0a8640a 0x0230 0x0578 # ecal - lxhadeb10 + 0x8a03 100 0xbae2c995 0x90e2 0xc0a8640a 0x0230 0x0578 # ecal - lxhadeb10 + 0x8a04 100 0xb73cb20c 0x40a6 0xc0a86972 0x0230 0x0578 # ecal- lxhadeb14 + 0x8a05 100 0xb73cb20c 0x40a6 0xc0a86972 0x0230 0x0578 # ecal- lxhadeb14 + 0x83c0 100 0xb73cb20c 0x40a6 0xc0a86972 0x0230 0x0578 # rich -lxhadeb14 + 0x83c1 100 0xb73cb20c 0x40a6 0xc0a86972 0x0230 0x0578 # rich -lxhadeb14 + 0x83c2 100 0xb73cb20c 0x40a6 0xc0a86972 0x0230 0x0578 # rich -lxhadeb14 + 0x83c3 100 0xbae2c995 0x90e2 0xc0a8640a 0x0230 0x0578 # rich - lxhadeb10 + 0x83c4 100 0xbae2c995 0x90e2 0xc0a8640a 0x0230 0x0578 # rich - lxhadeb10 + 0x83c5 100 0xbae2c995 0x90e2 0xc0a8640a 0x0230 0x0578 # rich - lxhadeb10 + 0x83c6 100 0xb73cb20c 0x40a6 0xc0a86972 0x0230 0x0578 # rich - lxhadeb14 + 0x83c7 100 0xb73cb20c 0x40a6 0xc0a86972 0x0230 0x0578 # rich - lxhadeb14 + 0x83c8 100 0xbaf79bb5 0x90e2 0xc0a86408 0x0230 0x0578 # rich - lxhadeb08 + 0x83c9 100 0xbaf79bb5 0x90e2 0xc0a86408 0x0230 0x0578 # rich - lxhadeb08 + 0x83ca 100 0x6b8b62f1 0xac1f 0xc0a8690b 0x0230 0x0578 # rich - lxhadeb11 + 0x83cb 100 0x6b8b62f1 0xac1f 0xc0a8690b 0x0230 0x0578 # rich - lxhadeb11 + 0x8810 100 0x6b8b62f1 0xac1f 0xc0a8690b 0x0230 0x0578 # central aux - lxhadeb11 + 0x84c0 100 0xbae2c995 0x90e2 0xc0a8640a 0x0230 0x0578 # rpc sector 1 lxhadeb10 + 0x84c1 100 0xbae2c995 0x90e2 0xc0a8640a 0x0230 0x0578 # rpc sector 2 lxhadeb10 + 0x84c2 100 0xbae2c995 0x90e2 0xc0a8640a 0x0230 0x0578 # rpc sector 3 lxhadeb10 + 0x84c3 100 0x6b8b62f1 0xac1f 0xc0a8690b 0x0230 0x0578 # rpc sector 4 lxhadeb11 + 0x84c4 100 0x6b8b62f1 0xac1f 0xc0a8690b 0x0230 0x0578 # rpc sector 5 lxhadeb11 + 0x84c5 100 0x6b8b62f1 0xac1f 0xc0a8690b 0x0230 0x0578 # rpc sector 6 lxhadeb11 + 0x86c0 100 0xbaf79bb5 0x90e2 0xc0a86408 0x0230 0x0578 # tof hub 0 lxhadeb08 + 0x86c1 100 0xbae2c995 0x90e2 0xc0a8640a 0x0230 0x0578 # tof hub 1 lxhadeb10 + 0x86c2 100 0xbae2c995 0x90e2 0xc0a8640a 0x0230 0x0578 # tof hub 2 lxhadeb10 + 0x86c3 100 0x6b8b62f1 0xac1f 0xc0a8690b 0x0230 0x0578 # tof hub 3 lxhadeb11 + 0x86c4 100 0x6b8b62f1 0xac1f 0xc0a8690b 0x0230 0x0578 # tof hub 4 lxhadeb11 + 0x86c5 100 0xb73cb20c 0x40a6 0xc0a86972 0x0230 0x0578 # tof hub 5 lxhadeb14 + 0x86c6 100 0xb73cb20c 0x40a6 0xc0a86972 0x0230 0x0578 # tof hub 6 lxhadeb14 + 0x8b00 100 0xb73c5e0c 0x40a6 0xc0a86973 0x0230 0x0578 # STS1 0 lxhadeb15 + 0x8b01 100 0xb73c5e0c 0x40a6 0xc0a86973 0x0230 0x0578 # STS1 1 lxhadeb15 + 0x8b02 100 0xb73c5e0c 0x40a6 0xc0a86973 0x0230 0x0578 # STS1 2 lxhadeb15 + 0x8b03 100 0xb73c5e0c 0x40a6 0xc0a86973 0x0230 0x0578 # STS1 3 lxhadeb15 + 0x8b10 100 0xb73c6d98 0x40a6 0xc0a86974 0x0230 0x0578 # STS2 0 lxhadeb16 + 0x8b11 100 0xb73c6d98 0x40a6 0xc0a86974 0x0230 0x0578 # STS2 1 lxhadeb16 + 0x8b12 100 0xb73c6d98 0x40a6 0xc0a86974 0x0230 0x0578 # STS2 2 lxhadeb16 + 0x8b13 100 0xb73c6d98 0x40a6 0xc0a86974 0x0230 0x0578 # STS2 3 lxhadeb16 + 0x8b14 100 0xb73c6d98 0x40a6 0xc0a86974 0x0230 0x0578 # STS2 4 lxhadeb16 + 0x8b15 100 0xb73c6d98 0x40a6 0xc0a86974 0x0230 0x0578 # STS2 5 lxhadeb16 + 0x8c00 100 0xb73c5e0c 0x40a6 0xc0a86973 0x0230 0x0578 # fwRPC-0 - lxhadeb15 + 0x8c10 100 0xb73c5e0c 0x40a6 0xc0a86973 0x0230 0x0578 # fwRPC-1 - lxhadeb15 + 0x8d00 100 0xbae2c995 0x90e2 0xc0a8640a 0x0230 0x0578 # innertof to lxhadeb10 +# 0x8d00 100 0xbaf7cfa1 0x90e2 0xc0a86409 0x0230 0x0578 # inner-tof lxhadeb09 + + + + + + diff --git a/hub/register_configgbe_ip_2021-test.db b/hub/register_configgbe_ip_2021-test.db index 68c10ef..cddcd58 100644 --- a/hub/register_configgbe_ip_2021-test.db +++ b/hub/register_configgbe_ip_2021-test.db @@ -141,10 +141,10 @@ # #lxhadebXX, EB1 XX # 0x8000 0 0xc65B 0xdead8000 0xc0a86480 0xc65B 0xc0a86408 0 # OLD cts -lxhadeb08 + 0x8800 0 0xc650 0xdead8800 0xc0a8648B 0xc650 0xc0a8690b 0 # central-cts lxhadeb11 0x8700 0 0xc65A 0xdead8700 0xc0a8648C 0xc65A 0xc0a86974 1 # fw new 1 lxhadeb16 0x8701 0 0xc65B 0xdead8701 0xc0a8648C 0xc65B 0xc0a86974 1 # fw new 2 lxhadeb16 - 0x8702 0 0xc65C 0xdead8702 0xc0a8648C 0xc65C 0xc0a86974 1 # fw new 3 lxhadeb16 - 0x8800 0 0xc650 0xdead8800 0xc0a8648B 0xc650 0xc0a8690b 0 # central-cts lxhadeb11 + 0x8702 0 0xc65C 0xdead8702 0xc0a8648C 0xc65C 0xc0a86974 1 # fw new 3 lxhadeb16 0x8880 0 0xc65D 0xdead8A00 0xc0a8648D 0xc65D 0xc0a86409 2 # start - lxhadeb09 0x8890 0 0xc65F 0xdead8890 0xc0a8648F 0xc65F 0xc0a86409 2 # veto lxhadeb09 # 0x8900 0 0xc65C 0xdead8900 0xc0a8648C 0xc65C 0xc0a86409 0 # pion1 lxhadeb09 @@ -158,9 +158,11 @@ 0x1100 0 0xc666 0xdead1100 0xc0a86496 0xc666 0xc0a86974 0 # mdc - lxhadeb16 ->min for 16 0x1110 0 0xc667 0xdead1110 0xc0a86497 0xc667 0xc0a86973 0 # mdc - lxhadeb15 ->min for 15 0x1120 0 0xc668 0xdead1120 0xc0a86498 0xc668 0xc0a86409 0 # mdc - lxhadeb09 - min for 09 +# 0x1150 0 0xc668 0xdead1150 0xc0a86498 0xc668 0xc0a86409 0 # mdc - lxhadeb09 - JAM21 swapped for test 0x1130 0 0xc669 0xdead1130 0xc0a86499 0xc669 0xc0a8640a 0 # mdc - lxhadeb10 - min for 10 0x1140 0 0xc66A 0xdead1140 0xc0a8649A 0xc66A 0xc0a8690b 0 # mdc - lxhadeb11 - min for 11 0x1150 0 0xc66B 0xdead1150 0xc0a8649B 0xc66B 0xc0a86972 0 # mdc - lxhadeb14 - min for 14 +# 0x1120 0 0xc66B 0xdead1120 0xc0a8649B 0xc66B 0xc0a86972 0 # mdc - lxhadeb14 - JAM21 swapped for test 0x8a00 0 0xc676 0xdead8a00 0xc0a864A6 0xc676 0xc0a86409 1 # ecal- lxhadeb09 0x8a01 0 0xc677 0xdead8a01 0xc0a864A7 0xc677 0xc0a86409 1 # ecal- lxhadeb09 0x8a02 0 0xc678 0xdead8a02 0xc0a864A8 0xc678 0xc0a86409 1 # ecal- lxhadeb09 @@ -261,9 +263,12 @@ 0x1100 100 0xb73c6d98 0x40a6 0xc0a86974 0x0230 0x0578 # mdc - lxhadeb16 - min if others are off 0x1110 100 0xb73c5e0c 0x40a6 0xc0a86973 0x0230 0x0578 # mdc - lxhadeb15 - min if others are off 0x1120 100 0xbaf7cfa1 0x90e2 0xc0a86409 0x0230 0x0578 # mdc - lxhadeb09 - minimum if rich is off +# 0x1150 100 0xbaf7cfa1 0x90e2 0xc0a86409 0x0230 0x0578 # mdc - lxhadeb09 - JAM21 0x1130 100 0xbae2c995 0x90e2 0xc0a8640a 0x0230 0x0578 # mdc - lxhadeb10 - minimum if ecal is off 0x1140 100 0x6b8b62f1 0xac1f 0xc0a8690b 0x0230 0x0578 # mdc - lxhadeb11 - minimum subevent for 11 0x1150 100 0xb73cb20c 0x40a6 0xc0a86972 0x0230 0x0578 # mdc - lxhadeb14 - minimum sub for 14 +# 0x1120 100 0xb73cb20c 0x40a6 0xc0a86972 0x0230 0x0578 # mdc - lxhadeb14 - JAM21 + # 0x1160 100 0x6b662a29 0xac1f 0xc0a8690b 0x0230 0x0578 # mdc - OLD lxhadeb11 ##### old? 0x8a00 100 0xbaf7cfa1 0x90e2 0xc0a86409 0x0230 0x0578 # ecal- lxhadeb09 0x8a01 100 0xbaf7cfa1 0x90e2 0xc0a86409 0x0230 0x0578 # ecal- lxhadeb09 diff --git a/hub/startup.script b/hub/startup.script index 8b6a7bb..03cf269 100644 --- a/hub/startup.script +++ b/hub/startup.script @@ -20,9 +20,9 @@ wait #Remove missing iTOF sectors -trbcmd clearbit 0x8d00 0xc0 0x4d -trbcmd clearbit 0x8d00 0xc1 0x4d -trbcmd clearbit 0x8d00 0xc3 0x4d +#trbcmd clearbit 0x8d00 0xc0 0x4d +#trbcmd clearbit 0x8d00 0xc1 0x4d +#trbcmd clearbit 0x8d00 0xc3 0x4d diff --git a/main/data_sources.db b/main/data_sources.db index a8c4a28..df09801 100644 --- a/main/data_sources.db +++ b/main/data_sources.db @@ -3,19 +3,19 @@ # Addr On/Off Name DataSize #Start must be the first for EvtId 0x8800 1 CentralCTS low -0x8880 0 StartTRB3 low -0x8890 0 Veto mid +0x8880 1 StartTRB3 low +0x8890 1 Veto mid 0x84c0 1 RPCnew1 mid 0x84c1 1 RPCnew2 mid -0x84c2 0 RPCnew3 mid +0x84c2 1 RPCnew3 mid 0x84c3 1 RPCnew4 mid 0x84c4 1 RPCnew5 mid 0x84c5 1 RPCnew6 mid 0x86c0 1 TOFnew1 mid 0x86c1 1 TOFnew2 mid 0x86c2 1 TOFnew3 mid -0x86c3 0 TOFnew4 mid -0x86c4 0 TOFnew5 mid +0x86c3 1 TOFnew4 mid +0x86c4 1 TOFnew5 mid 0x86c5 1 TOFnew6 mid 0x1000 1 MDC12sec1 high 0x1010 1 MDC12sec2 high @@ -23,15 +23,16 @@ 0x1030 1 MDC12sec4 high 0x1040 1 MDC12sec5 high 0x1050 1 MDC12sec6 high -0x1100 0 MDC34sec1 high +0x1100 1 MDC34sec1 high 0x1110 1 MDC34sec2 mid 0x1120 1 MDC34sec3 high 0x1130 1 MDC34sec4 mid 0x1140 1 MDC34sec5 high 0x1150 1 MDC34sec6 high -0x8700 1 FW0 mid -0x8701 1 FW1 mid -0x8702 1 FW2 mid +#0x8700 0 FW0 mid +#0x8701 0 FW1 mid +#0x8702 0 FW2 mid +0x8a00 1 ECal0 mid 0x8a01 1 ECal1 mid 0x8a02 1 ECal2 mid 0x8a03 1 ECal3 mid @@ -41,10 +42,10 @@ 0x83c1 1 RICH1 mid 0x83c2 1 RICH2 mid 0x83c3 1 RICH3 mid -0x83c4 0 RICH4 mid +0x83c4 1 RICH4 mid 0x83c5 1 RICH5 mid -0x83c6 0 RICH6 mid -0x83c7 0 RICH7 mid +0x83c6 1 RICH6 mid +0x83c7 1 RICH7 mid 0x83c8 1 RICH8 mid 0x83c9 1 RICH9 mid 0x83ca 1 RICHa mid @@ -59,6 +60,6 @@ 0x8b13 1 STS2-3 mid 0x8b14 1 STS2-4 mid 0x8b15 1 STS2-5 mid -#0x8c00 0 FRPC-0 mid -0x8c10 1 FRPC-1 mid -0x8d00 0 ITOF mid +0x8c00 0 FRPC-0 mid +0x8c10 1 FRPC-1 mid +0x8d00 0 ITOF mid diff --git a/main/serials_trb.db b/main/serials_trb.db deleted file mode 100644 index 5cb9370..0000000 --- a/main/serials_trb.db +++ /dev/null @@ -1,31 +0,0 @@ -023 400000012410f728 -031 0a0000012410fa28 -#034 d7000001241ee528 -050 e500000123f24b28 -040 9500000123f4fe28 -051 6200000123f25f28 -052 7700000123f26428 -053 ad00000123f25528 -054 e200000124172628 -058 3c00000123f5a328 -062 df000001c17f1728 -064 910000012419cd28 -072 71000001c17b8728 -074 fa000001c17e8428 -079 58000001fc5ba128 -081 5a000001fc5de428 -084 be00000123ec4c28 -086 34000001fc5bb028 -089 c0000001ff590b28 -096 b5000001fc42c928 -097 e1000001fc7a6f28 -098 9a000001fc644128 -099 00000001ff46f328 -100 6400000123f26a28 -101 e7000001ff469c28 -102 32000001fc42dd28 -103 0e000001fc3c0c28 -104 6d000001fc3ed328 -105 cc000001fc41c828 -106 51000001fc32a428 - diff --git a/main/startup_briccolage.sh b/main/startup_briccolage.sh index ec0cd2f..09cec98 100755 --- a/main/startup_briccolage.sh +++ b/main/startup_briccolage.sh @@ -10,7 +10,7 @@ then #Stop monitoring scripts echo " Killing log-scripts" ssh hadesp33 "cd /home/hadaq/trbsoft/hadesdaq/hmon; ./stop.sh" & - ssh hadesp50 "killall -USR1 speakdaemon.pl" 2>/dev/null & + ssh hadesp57 "killall -USR1 speakdaemon.pl" 2>/dev/null & ssh hadesp33 "killall -USR1 speakdaemon.pl" 2>/dev/null & ssh hadesp33 "killall mdc_calibration_masks.pl" 2>/dev/null & fi @@ -61,6 +61,7 @@ trbcmd w 0x1031 0xc3 0xfbf #switchport.pl 0x1104 2 off #2309 , didn't like spike rejection 0x10 (means off), mt 2021.02.14 + #Quick network test trbcmd i 0xffff | wc @@ -101,7 +102,7 @@ then # /home/hadaq/jan/crashlog.pl #Log timeouts after restart nohup ssh hadesp33 "cd /home/hadaq/trbsoft/hadesdaq/hmon; ./start.sh &" /dev/null & nohup ssh hadesp33 "/home/hadaq/trbsoft/daq/utils/mdc_calibration_masks.pl" &>/dev/null & - nohup ssh hadesp50 "sleep 20; killall -USR2 speakdaemon.pl" &>/dev/null & + nohup ssh hadesp57 "sleep 20; killall -USR2 speakdaemon.pl" &>/dev/null & nohup ssh hadesp33 "sleep 20; killall -USR2 speakdaemon.pl" &>/dev/null & echo " Everything done. Closing window automatically after 10 seconds." sleep 10; diff --git a/mdc/addresses_oep.db b/mdc/addresses_oep.db index 225cbd9..d494764 100644 --- a/mdc/addresses_oep.db +++ b/mdc/addresses_oep.db @@ -370,7 +370,7 @@ 0x2254 122 1 12 0 0x2255 123 1 12 0 0x2256 141 1 12 0 -0x2257 118 1 12 0 +0x2257 118 1 12 0 #before #118 6.10.2021 Cw 0x2258 110 1 12 0 0x2259 403 1 12 0 # 20100805 was 133, now 403 0x225a 160 1 12 0 # 20100805 was 092, now 160 @@ -515,7 +515,7 @@ 0x2357 129 1 12 0 0x2358 112 1 12 0 0x2359 083 1 12 0 -0x235a 066 1 12 0 +0x235a 274 1 12 0 #066 befor exchange with 499 5.10.2021 CW, 274 6.10. 0x235b 069 1 12 0 # 20100806, was 082, now 069, actually it was ok, the optical cable was bad 0x235c 086 1 12 0 0x235d 099 1 12 0 diff --git a/nettools/nettrace.db b/nettools/nettrace.db index c3f2194..08d1529 100644 --- a/nettools/nettrace.db +++ b/nettools/nettrace.db @@ -1,1808 +1,1970 @@ %hublist = ( - '4403' => { - '7' => 8761, - '5' => 8763, - '6' => 8762, - '8' => 8760, - '1' => 8767, - '2' => 8766, - '4' => 8764, - '3' => 8765 + '33425' => { + '3' => 30838, + '1' => 30583, + '2' => 30582, + '4' => 30839, + '10' => 30823, + '7' => 30567, + '8' => 30566, + '9' => 30822 + }, + '4370' => { + '2' => 8982, + '1' => 8983, + '5' => 8979, + '3' => 8980, + '6' => 8978, + '8' => 8976, + '7' => 8977, + '4' => 8981 }, - '4176' => { - '0' => 4177, - '1' => 4178, - '2' => 4179, - '3' => 4180 + '33315' => { + '2' => 29745, + '1' => 29744, + '11' => 30273, + '5' => 30257, + '12' => 30272, + '3' => 30001, + '6' => 30256, + '9' => 30017, + '7' => 29760, + '8' => 29761, + '10' => 30016, + '4' => 30000 + }, + '33987' => { + '6' => 22582, + '4' => 22580, + '7' => 22583, + '8' => 22584, + '1' => 22577, + '2' => 22578, + '3' => 22579, + '0' => 22576, + '5' => 22581 + }, + '34498' => { + '2' => 23586, + '1' => 23585, + '0' => 23584, + '3' => 23587 + }, + '35601' => { + '0' => 25680, + '3' => 25683, + '2' => 25682, + '1' => 25681 + }, + '4096' => { + '1' => 4098, + '2' => 4099, + '3' => 4100, + '0' => 4097 }, - '33321' => { - '5' => 30098, - '7' => 30323, - '1' => 30067, - '6' => 30099, - '3' => 30082, - '12' => 30355, - '11' => 30354, - '9' => 30338, - '10' => 30339, - '2' => 30066, - '8' => 30322, - '4' => 30083 + '4162' => { + '4' => 8251, + '3' => 8250, + '5' => 8252, + '8' => 8472, + '1' => 8248, + '6' => 8253, + '2' => 8249 + }, + '4179' => { + '3' => 8530, + '5' => 8532, + '1' => 8529, + '2' => 8528, + '4' => 8531, + '7' => 8470, + '8' => 8471, + '6' => 8533 + }, + '35331' => { + '1' => 24640, + '6' => 24628, + '2' => 24641, + '3' => 24642, + '7' => 24629, + '8' => 24630, + '5' => 24627 }, - '32790' => { - '0' => 4352, - '1' => 4368, - '2' => 4384, - '4' => 4416, - '5' => 4432, - '3' => 4400 + '33445' => { + '3' => 31239, + '1' => 31236, + '2' => 31237, + '10' => 31494, + '4' => 31238, + '8' => 31493, + '7' => 31492, + '9' => 31495 }, - '33736' => { - '4' => 33416, - '0' => 33385, - '2' => 33386, - '1' => 33384, - '6' => 33417, - '5' => 33401, - '3' => 33368 + '33733' => { + '3' => 33393, + '5' => 33377, + '0' => 33376, + '1' => 33409, + '6' => 33425 }, - '4416' => { - '2' => 4419, - '1' => 4418, - '0' => 4417, - '3' => 4420 - }, - '33401' => { - '5' => 29844, - '7' => 29557, - '1' => 29813, - '6' => 29845, - '3' => 29828, - '12' => 29589, - '11' => 29588, - '9' => 29572, - '4' => 29829, - '2' => 29812, - '8' => 29556, - '10' => 29573 + '33430' => { + '10' => 30773, + '4' => 30757, + '8' => 30516, + '7' => 30517, + '9' => 30772, + '6' => 31013, + '3' => 30756, + '12' => 31029, + '5' => 31012, + '11' => 31028, + '1' => 30501, + '2' => 30500 + }, + '33409' => { + '12' => 30358, + '3' => 30087, + '11' => 30359, + '5' => 30103, + '1' => 30070, + '2' => 30071, + '4' => 30086, + '10' => 30342, + '8' => 30327, + '7' => 30326, + '9' => 30343, + '6' => 30102 }, '33734' => { + '1' => 33378, + '2' => 33362, + '6' => 33379, '3' => 33410, '5' => 33426, - '6' => 33379, - '2' => 33362, - '0' => 33364, - '1' => 33378 + '0' => 33364 }, - '4434' => { - '3' => 8799, - '5' => 8796, - '7' => 8798, - '4' => 8795, - '2' => 8793, - '8' => 8794, - '1' => 8792, - '6' => 8797 + '4100' => { + '3' => 8490, + '5' => 8492, + '1' => 8488, + '2' => 8489, + '4' => 8491, + '7' => 8494, + '8' => 8495, + '6' => 8493 }, - '33376' => { - '4' => 29367, - '2' => 29110, - '10' => 29351, - '8' => 29094, - '9' => 29350, - '11' => 29606, - '6' => 29623, - '1' => 29111, - '7' => 29095, - '5' => 29622, - '12' => 29607, - '3' => 29366 + '33382' => { + '9' => 29220, + '6' => 29461, + '10' => 29221, + '4' => 29205, + '8' => 28964, + '7' => 28965, + '1' => 28949, + '2' => 28948, + '12' => 29477, + '3' => 29204, + '5' => 29460, + '11' => 29476 + }, + '33360' => { + '9' => 28849, + '10' => 28848, + '4' => 28832, + '7' => 28854, + '8' => 28855, + '1' => 28838, + '2' => 28839, + '3' => 28833 + }, + '4132' => { + '4' => 8283, + '3' => 8282, + '7' => 8279, + '5' => 8284, + '1' => 8280, + '6' => 8285, + '2' => 8281 + }, + '34500' => { + '0' => 23616, + '3' => 23619, + '2' => 23618, + '1' => 23617 }, + '4128' => { + '1' => 4130, + '2' => 4131, + '3' => 4132, + '0' => 4129 + }, + '4433' => { + '4' => 8787, + '3' => 8786, + '5' => 8788, + '7' => 8790, + '1' => 8784, + '2' => 8785, + '6' => 8789 + }, '33353' => { - '5' => 29074, + '9' => 29314, + '6' => 29075, + '10' => 29315, + '4' => 29059, '7' => 29299, + '8' => 29298, '1' => 29043, - '6' => 29075, + '2' => 29042, '3' => 29058, '12' => 29331, '11' => 29330, - '9' => 29314, - '4' => 29059, - '8' => 29298, - '10' => 29315, - '2' => 29042 - }, - '33314' => { - '7' => 29792, - '5' => 30289, - '6' => 30288, - '1' => 29776, - '3' => 30033, - '12' => 30304, - '9' => 30049, - '11' => 30305, - '4' => 30032, - '2' => 29777, - '10' => 30048, - '8' => 29793 + '5' => 29074 }, - '4179' => { - '3' => 8530, - '7' => 8470, - '5' => 8532, - '6' => 8533, - '1' => 8529, - '2' => 8528, - '8' => 8471, - '4' => 8531 + '4372' => { + '6' => 8722, + '7' => 8721, + '8' => 8720, + '4' => 8724, + '2' => 8726, + '1' => 8727, + '5' => 8723, + '3' => 8725 }, - '32792' => { - '3' => 33731, - '5' => 33739, - '4' => 33732, - '0' => 33733, - '2' => 33735, - '1' => 33734, - '6' => 34944 - }, - '4400' => { - '3' => 4404, - '1' => 4402, - '2' => 4403, - '0' => 4401 - }, - '33316' => { - '6' => 30224, - '4' => 29968, - '1' => 29712, - '10' => 29984, - '2' => 29713, - '8' => 29729, - '7' => 29728, - '9' => 29985, - '11' => 30241, - '5' => 30225, - '12' => 30240, - '3' => 29969 - }, - '4435' => { - '2' => 9041, - '8' => 9047, - '1' => 9040, - '4' => 9043, - '6' => 9045, - '5' => 9044, - '7' => 9046, - '3' => 9042 - }, - '33431' => { - '11' => 31060, - '9' => 30804, - '8' => 30548, - '2' => 30532, - '10' => 30805, - '4' => 30789, - '3' => 30788, - '12' => 31061, - '5' => 31044, - '7' => 30549, - '1' => 30533, - '6' => 31045 - }, - '33393' => { - '3' => 29575, - '12' => 29846, - '7' => 29814, - '5' => 29591, - '6' => 29590, - '1' => 29558, - '11' => 29847, - '9' => 29831, - '8' => 29815, - '2' => 29559, - '10' => 29830, - '4' => 29574 - }, - '4370' => { - '5' => 8979, - '7' => 8977, - '4' => 8981, - '8' => 8976, - '1' => 8983, - '2' => 8982, - '6' => 8978, - '3' => 8980 - }, - '4419' => { - '3' => 8770, - '7' => 8774, - '5' => 8772, - '6' => 8773, - '1' => 8768, - '8' => 8775, - '2' => 8769, - '4' => 8771 - }, - '4387' => { - '3' => 8750, - '7' => 8739, - '5' => 8741, - '6' => 8740, - '8' => 8738, - '1' => 8748, - '2' => 8749, - '4' => 8751 - }, - '4162' => { - '3' => 8250, - '1' => 8248, - '8' => 8472, - '2' => 8249, - '4' => 8251, - '6' => 8253, - '5' => 8252 - }, - '4436' => { - '4' => 9051, - '1' => 9048, - '2' => 9049, - '8' => 9055, - '6' => 9053, - '5' => 9052, - '7' => 9054, - '3' => 9050 - }, - '4417' => { - '3' => 9026, - '2' => 9025, - '1' => 9024, - '8' => 9031, - '4' => 9027, - '6' => 9029, - '5' => 9028, - '7' => 9030 - }, - '33329' => { - '8' => 29553, - '10' => 29568, - '2' => 29809, - '4' => 29824, - '11' => 29585, - '9' => 29569, - '1' => 29808, - '6' => 29840, - '5' => 29841, - '7' => 29552, - '12' => 29584, - '3' => 29825 + '35584' => { + '0' => 25600, + '3' => 25603, + '2' => 25602, + '1' => 25601 + }, + '33986' => { + '1' => 22561, + '2' => 22562, + '3' => 22563, + '0' => 22560, + '5' => 22565, + '6' => 22566, + '4' => 22564, + '7' => 22567, + '8' => 22568 }, '33428' => { - '4' => 30743, - '2' => 30486, - '8' => 30470, - '10' => 30727, - '9' => 30726, + '5' => 30998, '11' => 30982, '12' => 30983, '3' => 30742, + '2' => 30486, '1' => 30487, + '7' => 30471, + '8' => 30470, + '4' => 30743, + '10' => 30727, '6' => 30999, - '5' => 30998, - '7' => 30471 - }, - '33354' => { - '2' => 29107, - '8' => 29091, - '10' => 29346, - '4' => 29362, - '9' => 29347, - '11' => 29603, - '12' => 29602, - '3' => 29363, - '6' => 29618, - '1' => 29106, - '7' => 29090, - '5' => 29619 + '9' => 30726 }, - '4098' => { - '1' => 8264, - '2' => 8262, - '4' => 8268, - '6' => 8266, - '5' => 8267, - '3' => 8269, - '7' => 8247 + '4161' => { + '3' => 8242, + '4' => 8243, + '7' => 8246, + '5' => 8244, + '1' => 8240, + '6' => 8245, + '2' => 8241 }, - '33299' => { - '8' => 30513, - '10' => 30768, - '2' => 30497, - '4' => 30752, - '11' => 31025, - '9' => 30769, - '12' => 31024, - '3' => 30753, - '1' => 30496, - '6' => 31008, - '5' => 31009, - '7' => 30512 - }, - '33733' => { - '0' => 33376, - '1' => 33409, - '6' => 33425, - '5' => 33377, - '3' => 33393 - }, - '4384' => { - '3' => 4388, - '1' => 4386, - '0' => 4385, - '2' => 4387 + '4176' => { + '1' => 4178, + '2' => 4179, + '3' => 4180, + '0' => 4177 }, - '33366' => { - '4' => 28709, - '8' => 28690, - '2' => 28692, - '1' => 28693, - '10' => 28707, - '6' => 28725, - '5' => 28724, - '7' => 28691, - '9' => 28706, - '11' => 28722, - '12' => 28723, - '3' => 28708 + '4386' => { + '3' => 8997, + '5' => 8995, + '1' => 8999, + '2' => 8998, + '4' => 8996, + '7' => 8993, + '8' => 8992, + '6' => 8994 + }, + '33401' => { + '5' => 29844, + '11' => 29588, + '3' => 29828, + '12' => 29589, + '2' => 29812, + '1' => 29813, + '8' => 29556, + '7' => 29557, + '4' => 29829, + '10' => 29573, + '6' => 29845, + '9' => 29572 }, '33364' => { - '11' => 28727, - '9' => 28711, '10' => 28710, - '2' => 28689, - '8' => 28695, '4' => 28704, - '3' => 28705, - '12' => 28726, + '8' => 28695, '7' => 28694, - '5' => 28721, + '9' => 28711, '6' => 28720, - '1' => 28688 + '12' => 28726, + '3' => 28705, + '11' => 28727, + '5' => 28721, + '1' => 28688, + '2' => 28689 }, - '33409' => { - '5' => 30103, - '7' => 30326, - '9' => 30343, - '11' => 30359, - '4' => 30086, - '10' => 30342, - '8' => 30327, - '1' => 30070, - '2' => 30071, - '6' => 30102, - '3' => 30087, - '12' => 30358 + '35585' => { + '1' => 25617, + '2' => 25618, + '3' => 25619, + '0' => 25616 }, - '33417' => { - '3' => 30340, - '12' => 30101, - '11' => 30100, - '9' => 30084, - '7' => 30069, - '5' => 30356, - '6' => 30357, - '1' => 30325, - '10' => 30085, - '2' => 30324, - '8' => 30068, - '4' => 30341 + '33412' => { + '12' => 30231, + '3' => 29990, + '5' => 30246, + '11' => 30230, + '1' => 29735, + '2' => 29734, + '4' => 29991, + '10' => 29975, + '8' => 29718, + '7' => 29719, + '9' => 29974, + '6' => 30247 }, - '34561' => { - '3' => 17440, - '2' => 17424, - '1' => 17408 + '33384' => { + '7' => 29029, + '8' => 29028, + '4' => 29269, + '10' => 29285, + '6' => 29525, + '9' => 29284, + '5' => 29524, + '11' => 29540, + '3' => 29268, + '12' => 29541, + '2' => 29012, + '1' => 29013 }, - '4180' => { - '5' => 8476, - '3' => 8474, - '7' => 8478, - '8' => 8479, - '2' => 8473, - '4' => 8475, - '6' => 8477 - }, - '33410' => { - '10' => 30039, - '2' => 29798, - '8' => 29782, - '4' => 30055, - '11' => 30294, - '9' => 30038, - '6' => 30311, - '1' => 29799, - '7' => 29783, - '5' => 30310, - '12' => 30295, - '3' => 30054 + '33380' => { + '4' => 29223, + '10' => 29207, + '8' => 28950, + '7' => 28951, + '9' => 29206, + '6' => 29479, + '12' => 29463, + '3' => 29222, + '5' => 29478, + '11' => 29462, + '1' => 28967, + '2' => 28966 }, - '4177' => { - '6' => 8517, - '4' => 8515, - '8' => 8519, - '1' => 8512, - '2' => 8513, - '7' => 8518, - '5' => 8516, - '3' => 8514 + '4387' => { + '5' => 8741, + '3' => 8750, + '2' => 8749, + '1' => 8748, + '7' => 8739, + '8' => 8738, + '4' => 8751, + '6' => 8740 }, - '32789' => { - '3' => 4144, - '5' => 4176, - '1' => 4112, - '2' => 4128, - '0' => 4096, - '4' => 4160 - }, - '33346' => { - '8' => 29025, - '10' => 29280, - '2' => 29009, - '4' => 29264, - '11' => 29537, - '9' => 29281, - '6' => 29520, - '1' => 29008, - '7' => 29024, - '5' => 29521, - '12' => 29536, - '3' => 29265 - }, - '4386' => { - '5' => 8995, - '7' => 8993, - '2' => 8998, - '8' => 8992, - '1' => 8999, - '4' => 8996, - '6' => 8994, - '3' => 8997 + '4354' => { + '5' => 8717, + '3' => 8714, + '2' => 8713, + '1' => 8712, + '7' => 8718, + '8' => 8719, + '4' => 8715, + '6' => 8716 }, - '35329' => { - '3' => 24610, - '7' => 24597, - '4' => 24595, - '8' => 24598, - '0' => 24608, - '2' => 24609, - '6' => 24596 + '33347' => { + '2' => 28977, + '1' => 28976, + '5' => 29489, + '11' => 29505, + '12' => 29504, + '3' => 29233, + '6' => 29488, + '9' => 29249, + '7' => 28992, + '8' => 28993, + '4' => 29232, + '10' => 29248 }, - '33344' => { - '1' => 29088, - '6' => 29600, - '5' => 29601, - '7' => 29104, - '12' => 29616, - '3' => 29345, - '4' => 29344, - '10' => 29360, - '8' => 29105, - '2' => 29089, - '11' => 29617, - '9' => 29361 + '33731' => { + '3' => 33380, + '4' => 33445, + '0' => 33430, + '5' => 33446, + '1' => 33413, + '6' => 33381 }, - '4385' => { - '7' => 9001, - '5' => 9002, - '6' => 9003, - '2' => 9006, - '1' => 9007, - '8' => 9000, - '4' => 9004, - '3' => 9005 + '4097' => { + '6' => 8263, + '4' => 8261, + '8' => 8265, + '7' => 8260, + '1' => 8258, + '2' => 8259, + '3' => 8257, + '5' => 8256 }, - '4352' => { - '3' => 4356, - '0' => 4353, - '2' => 4355, - '1' => 4354 + '4131' => { + '1' => 8272, + '6' => 8277, + '2' => 8273, + '4' => 8275, + '3' => 8274, + '7' => 8278, + '5' => 8276 }, - '4113' => { - '5' => 8452, - '7' => 8534, - '3' => 8450, - '4' => 8451, - '8' => 8535, - '1' => 8448, - '2' => 8449, - '6' => 8453 + '4148' => { + '3' => 8234, + '8' => 8233, + '5' => 8236, + '7' => 8237, + '2' => 8232, + '6' => 8226 }, - '34816' => { - '2' => 288, - '0' => 2 - }, - '33808' => { - '2' => 33809 + '33426' => { + '6' => 31063, + '9' => 30790, + '8' => 30534, + '7' => 30535, + '10' => 30791, + '4' => 30807, + '2' => 30550, + '1' => 30551, + '5' => 31062, + '11' => 31046, + '12' => 31047, + '3' => 30806 }, - '33313' => { - '3' => 30337, - '12' => 30096, - '7' => 30064, - '5' => 30353, - '6' => 30352, - '1' => 30320, - '11' => 30097, - '9' => 30081, - '4' => 30336, - '10' => 30080, - '2' => 30321, - '8' => 30065 + '33728' => { + '1' => 33316, + '2' => 33300, + '6' => 33285, + '4' => 33299, + '3' => 33284, + '5' => 33347, + '0' => 33349 }, - '4130' => { - '6' => 8205, - '4' => 8203, - '2' => 8201, - '1' => 8200, - '7' => 8198, - '5' => 8204, - '3' => 8202 + '4401' => { + '5' => 9019, + '3' => 9021, + '2' => 9022, + '1' => 9023, + '8' => 9016, + '7' => 9017, + '4' => 9020, + '6' => 9018 }, - '33412' => { - '6' => 30247, - '2' => 29734, - '10' => 29975, - '1' => 29735, - '8' => 29718, - '4' => 29991, - '9' => 29974, - '11' => 30230, - '7' => 29719, - '5' => 30246, - '12' => 30231, - '3' => 29990 + '33361' => { + '1' => 28784, + '2' => 28785, + '3' => 28801, + '12' => 28822, + '5' => 28817, + '11' => 28823, + '9' => 28807, + '6' => 28816, + '10' => 28806, + '4' => 28800, + '8' => 28791, + '7' => 28790 }, - '33735' => { - '0' => 33301, - '2' => 33303, - '1' => 33286, - '4' => 33317, - '3' => 33318, - '5' => 33302 + '33351' => { + '9' => 29235, + '6' => 29506, + '4' => 29250, + '10' => 29234, + '7' => 28978, + '8' => 28979, + '1' => 28994, + '2' => 28995, + '3' => 29251, + '12' => 29490, + '11' => 29491, + '5' => 29507 }, - '4164' => { - '6' => 8511, - '4' => 8507, - '1' => 8504, - '2' => 8505, - '8' => 8509, - '7' => 8510, - '5' => 8508, - '3' => 8506 - }, '33379' => { '6' => 29511, - '1' => 28999, + '9' => 29238, '7' => 28983, - '5' => 29510, - '12' => 29495, - '3' => 29254, - '2' => 28998, '8' => 28982, '10' => 29239, '4' => 29255, - '9' => 29238, - '11' => 29494 + '2' => 28998, + '1' => 28999, + '11' => 29494, + '5' => 29510, + '12' => 29495, + '3' => 29254 }, - '33739' => { - '1' => 33337, - '2' => 33353, - '0' => 33369, - '4' => 33321, - '5' => 33354, - '3' => 33366 + '33354' => { + '11' => 29603, + '5' => 29619, + '3' => 29363, + '12' => 29602, + '2' => 29107, + '1' => 29106, + '8' => 29091, + '7' => 29090, + '10' => 29346, + '4' => 29362, + '6' => 29618, + '9' => 29347 }, - '33302' => { - '11' => 31011, - '9' => 30755, - '4' => 30770, - '10' => 30754, - '2' => 30515, - '8' => 30499, - '3' => 30771, - '12' => 31010, - '7' => 30498, - '5' => 31027, - '6' => 31026, - '1' => 30514 + '4420' => { + '2' => 8777, + '1' => 8776, + '5' => 8780, + '3' => 8778, + '6' => 8781, + '7' => 8782, + '8' => 8783, + '4' => 8779 + }, + '33730' => { + '3' => 33313, + '0' => 33348, + '5' => 33344, + '1' => 33361, + '6' => 33297, + '2' => 33360 + }, + '36096' => { + '5' => 23812, + '0' => 23808, + '3' => 23811, + '2' => 23810, + '6' => 23813, + '1' => 23809 + }, + '33984' => { + '3' => 22531, + '0' => 22528, + '5' => 22533, + '1' => 22529, + '2' => 22530, + '4' => 22532, + '7' => 22535, + '8' => 22536, + '6' => 22534 }, - '35332' => { - '7' => 24645, - '5' => 24643, - '6' => 24644, - '1' => 24657, - '2' => 24658, - '8' => 24646, - '0' => 24656 + '4177' => { + '1' => 8512, + '2' => 8513, + '3' => 8514, + '5' => 8516, + '6' => 8517, + '4' => 8515, + '8' => 8519, + '7' => 8518 + }, + '35586' => { + '3' => 25635, + '0' => 25632, + '1' => 25633, + '2' => 25634 }, - '33361' => { - '11' => 28823, - '9' => 28807, - '4' => 28800, - '10' => 28806, - '2' => 28785, - '8' => 28791, - '5' => 28817, - '7' => 28790, - '1' => 28784, - '6' => 28816, - '3' => 28801, - '12' => 28822 + '34960' => { + '1' => 20497, + '2' => 20498, + '0' => 20496 }, - '33351' => { - '6' => 29506, - '1' => 28994, - '7' => 28978, - '5' => 29507, - '12' => 29490, - '3' => 29251, - '4' => 29250, - '8' => 28979, - '10' => 29234, - '2' => 28995, - '9' => 29235, - '11' => 29491 + '4435' => { + '6' => 9045, + '4' => 9043, + '7' => 9046, + '8' => 9047, + '1' => 9040, + '2' => 9041, + '3' => 9042, + '5' => 9044 + }, + '4352' => { + '2' => 4355, + '1' => 4354, + '0' => 4353, + '3' => 4356 + }, + '4146' => { + '7' => 8221, + '5' => 8219, + '4' => 8218, + '3' => 8217, + '6' => 8220, + '2' => 8216, + '1' => 8215 + }, + '33313' => { + '12' => 30096, + '3' => 30337, + '11' => 30097, + '5' => 30353, + '1' => 30320, + '2' => 30321, + '10' => 30080, + '4' => 30336, + '8' => 30065, + '7' => 30064, + '9' => 30081, + '6' => 30352 }, - '33380' => { - '3' => 29222, - '12' => 29463, - '7' => 28951, - '5' => 29478, - '6' => 29479, - '1' => 28967, - '9' => 29206, - '11' => 29462, - '2' => 28966, - '8' => 28950, - '10' => 29207, - '4' => 29223 + '33377' => { + '2' => 29047, + '1' => 29046, + '11' => 29335, + '5' => 29079, + '3' => 29063, + '12' => 29334, + '6' => 29078, + '9' => 29319, + '7' => 29302, + '8' => 29303, + '10' => 29318, + '4' => 29062 }, - '33337' => { - '3' => 29570, - '12' => 29843, - '5' => 29586, - '7' => 29811, - '1' => 29555, - '6' => 29587, - '11' => 29842, - '9' => 29826, - '8' => 29810, - '2' => 29554, - '10' => 29827, - '4' => 29571 + '35856' => { + '2' => 26642, + '1' => 26641, + '0' => 26640, + '3' => 26643 }, - '4147' => { - '3' => 8225, - '6' => 8229, - '4' => 8227, - '1' => 8235, - '2' => 8224, - '8' => 8231, - '7' => 8230, - '5' => 8228 + '34816' => { + '3' => 288, + '5' => 16, + '0' => 2, + '1' => 34832, + '2' => 272, + '6' => 304 + }, + '4436' => { + '5' => 9052, + '8' => 9055, + '7' => 9054, + '4' => 9051, + '2' => 9049, + '6' => 9053, + '1' => 9048 }, - '33427' => { - '2' => 30518, - '8' => 30502, - '10' => 30759, - '4' => 30775, - '11' => 31014, - '9' => 30758, - '12' => 31015, - '3' => 30774, - '1' => 30519, - '6' => 31031, - '5' => 31030, - '7' => 30503 + '33302' => { + '8' => 30499, + '7' => 30498, + '10' => 30754, + '4' => 30770, + '6' => 31026, + '9' => 30755, + '11' => 31011, + '5' => 31027, + '12' => 31010, + '3' => 30771, + '2' => 30515, + '1' => 30514 }, - '4432' => { - '0' => 4433, - '1' => 4434, - '2' => 4435, - '3' => 4436 + '4400' => { + '2' => 4403, + '1' => 4402, + '0' => 4401, + '3' => 4404 }, - '33382' => { - '8' => 28964, - '10' => 29221, - '2' => 28948, - '4' => 29205, - '9' => 29220, - '11' => 29476, - '1' => 28949, - '6' => 29461, - '5' => 29460, - '7' => 28965, - '12' => 29477, - '3' => 29204 + '35329' => { + '8' => 24598, + '5' => 24596, + '7' => 24597, + '0' => 24608, + '4' => 24595, + '3' => 24610, + '2' => 24609 }, - '33315' => { - '1' => 29744, - '6' => 30256, - '5' => 30257, - '7' => 29760, - '12' => 30272, - '3' => 30001, - '4' => 30000, - '10' => 30016, - '2' => 29745, - '8' => 29761, - '9' => 30017, - '11' => 30273 + '32786' => { + '1' => 33989, + '2' => 33984, + '3' => 33985, + '4' => 33986, + '0' => 33988, + '7' => 35856, + '5' => 33987 }, - '4368' => { - '3' => 4372, - '2' => 4371, - '1' => 4370, - '0' => 4369 + '4369' => { + '8' => 8984, + '7' => 8985, + '4' => 8988, + '6' => 8986, + '5' => 8987, + '3' => 8989, + '2' => 8990, + '1' => 8991 + }, + '35587' => { + '3' => 25651, + '0' => 25648, + '1' => 25649, + '2' => 25650 + }, + '4180' => { + '8' => 8479, + '5' => 8476, + '7' => 8478, + '3' => 8474, + '4' => 8475, + '2' => 8473, + '6' => 8477 }, '33300' => { - '7' => 30480, - '5' => 30977, + '9' => 30737, '6' => 30976, + '4' => 30720, + '10' => 30736, + '8' => 30481, + '7' => 30480, '1' => 30464, + '2' => 30465, '3' => 30721, '12' => 30992, '11' => 30993, - '9' => 30737, - '8' => 30481, - '10' => 30736, - '2' => 30465, - '4' => 30720 - }, - '33728' => { - '6' => 33285, - '4' => 33299, - '1' => 33316, - '0' => 33349, - '2' => 33300, - '3' => 33284 - }, - '35330' => { - '5' => 24611, - '7' => 24613, - '8' => 24614, - '6' => 24612 - }, - '33319' => { - '9' => 30003, - '11' => 30259, - '10' => 30002, - '2' => 29763, - '8' => 29747, - '4' => 30018, - '5' => 30275, - '7' => 29746, - '1' => 29762, - '6' => 30274, - '3' => 30019, - '12' => 30258 + '5' => 30977 + }, + '33989' => { + '3' => 22611, + '0' => 22608, + '5' => 22613, + '1' => 22609, + '2' => 22610, + '4' => 22612, + '7' => 22615, + '8' => 22616, + '6' => 22614 }, - '4161' => { - '6' => 8245, - '4' => 8243, - '2' => 8241, - '1' => 8240, - '7' => 8246, - '5' => 8244, - '3' => 8242 + '4417' => { + '1' => 9024, + '2' => 9025, + '3' => 9026, + '5' => 9028, + '6' => 9029, + '4' => 9027, + '7' => 9030, + '8' => 9031 }, - '32768' => { - '3' => 32787, - '7' => 32791, - '5' => 32789, - '6' => 32790, - '1' => 34816, - '8' => 32792, - '10' => 3, - '2' => 32786, - '0' => 256 - }, - '34944' => { - '0' => 20480, - '1' => 20481, - '2' => 20482, - '3' => 20483 - }, - '33792' => { - '2' => 33793 - }, - '33731' => { - '3' => 33380, - '5' => 33446, - '6' => 33381, - '4' => 33445, - '1' => 33413, - '0' => 33430 + '33285' => { + '3' => 31235, + '2' => 31232, + '1' => 31233, + '8' => 31488, + '7' => 31489, + '4' => 31234, + '10' => 31490, + '9' => 31491 }, - '33369' => { - '11' => 28818, - '9' => 28802, - '2' => 28788, - '8' => 28786, - '10' => 28803, - '4' => 28805, - '3' => 28804, - '12' => 28819, - '7' => 28787, - '5' => 28820, - '6' => 28821, - '1' => 28789 + '33317' => { + '6' => 30210, + '9' => 29953, + '8' => 29697, + '7' => 29696, + '10' => 29952, + '4' => 29954, + '2' => 29699, + '1' => 29698, + '11' => 30209, + '5' => 30211, + '12' => 30208, + '3' => 29955 }, - '4144' => { - '1' => 4146, - '2' => 4147, - '0' => 4145, - '3' => 4148 - }, - '4354' => { - '3' => 8714, - '7' => 8718, - '5' => 8717, - '6' => 8716, - '1' => 8712, - '8' => 8719, - '2' => 8713, - '4' => 8715 - }, - '4128' => { - '0' => 4129, - '1' => 4130, - '2' => 4131, - '3' => 4132 - }, - '33345' => { - '7' => 29040, - '5' => 29329, - '6' => 29328, - '1' => 29296, - '3' => 29313, - '12' => 29072, - '11' => 29073, - '9' => 29057, - '8' => 29041, - '10' => 29056, - '2' => 29297, - '4' => 29312 + '33303' => { + '6' => 31058, + '9' => 30787, + '7' => 30530, + '8' => 30531, + '4' => 30802, + '10' => 30786, + '2' => 30547, + '1' => 30546, + '5' => 31059, + '11' => 31043, + '3' => 30803, + '12' => 31042 }, - '4355' => { - '5' => 8964, - '7' => 8966, - '2' => 8961, - '8' => 8967, - '1' => 8960, - '4' => 8963, - '6' => 8965, - '3' => 8962 - }, - '4145' => { - '7' => 8213, - '5' => 8211, - '2' => 8208, - '8' => 8214, - '1' => 8212, - '4' => 8210, - '3' => 8209 - }, - '32786' => { - '3' => 33808, - '2' => 33792, - '0' => 34560, - '1' => 34304 + '33318' => { + '9' => 29971, + '6' => 30242, + '10' => 29970, + '4' => 29986, + '7' => 29714, + '8' => 29715, + '1' => 29730, + '2' => 29731, + '12' => 30226, + '3' => 29987, + '11' => 30227, + '5' => 30243 }, - '33349' => { - '5' => 29443, - '7' => 28928, - '1' => 28930, - '6' => 29442, - '3' => 29187, - '12' => 29440, - '9' => 29185, - '11' => 29441, - '8' => 28929, - '10' => 29184, - '2' => 28931, - '4' => 29186 + '33368' => { + '2' => 28740, + '1' => 28741, + '5' => 28772, + '11' => 28770, + '12' => 28771, + '3' => 28756, + '6' => 28773, + '9' => 28754, + '7' => 28739, + '8' => 28738, + '4' => 28757, + '10' => 28755 }, '4356' => { - '3' => 8970, - '1' => 8968, + '6' => 8973, + '7' => 8974, '8' => 8975, - '2' => 8969, '4' => 8971, - '6' => 8973, + '2' => 8969, + '1' => 8968, '5' => 8972, - '7' => 8974 - }, - '4146' => { - '3' => 8217, - '7' => 8221, - '5' => 8219, - '6' => 8220, - '1' => 8215, - '2' => 8216, - '4' => 8218 + '3' => 8970 }, - '4372' => { - '3' => 8725, - '7' => 8721, - '5' => 8723, - '6' => 8722, - '1' => 8727, - '8' => 8720, - '2' => 8726, - '4' => 8724 + '33316' => { + '1' => 29712, + '2' => 29713, + '3' => 29969, + '12' => 30240, + '5' => 30225, + '11' => 30241, + '9' => 29985, + '6' => 30224, + '10' => 29984, + '4' => 29968, + '8' => 29729, + '7' => 29728 + }, + '4099' => { + '4' => 8483, + '8' => 8487, + '7' => 8486, + '6' => 8485, + '3' => 8482, + '5' => 8484, + '1' => 8480, + '2' => 8481 }, - '33416' => { - '9' => 30052, - '11' => 30308, - '2' => 29780, - '10' => 30053, - '8' => 29796, - '4' => 30037, - '5' => 30292, - '7' => 29797, - '1' => 29781, - '6' => 30293, - '3' => 30036, - '12' => 30309 + '33337' => { + '8' => 29810, + '7' => 29811, + '4' => 29571, + '10' => 29827, + '6' => 29587, + '9' => 29826, + '5' => 29586, + '11' => 29842, + '3' => 29570, + '12' => 29843, + '2' => 29554, + '1' => 29555 }, - '33414' => { - '12' => 30245, - '3' => 29972, - '6' => 30229, - '1' => 29717, - '7' => 29733, - '5' => 30228, - '4' => 29973, - '10' => 29989, - '2' => 29716, - '8' => 29732, - '11' => 30244, - '9' => 29988 + '4404' => { + '4' => 8756, + '8' => 8753, + '7' => 8752, + '6' => 8754, + '3' => 8757, + '5' => 8755, + '1' => 8759, + '2' => 8758 + }, + '33344' => { + '8' => 29105, + '7' => 29104, + '10' => 29360, + '4' => 29344, + '6' => 29600, + '9' => 29361, + '5' => 29601, + '11' => 29617, + '12' => 29616, + '3' => 29345, + '2' => 29089, + '1' => 29088 }, - '34305' => { - '3' => 19488, - '5' => 19520, - '7' => 19505, - '1' => 19456, - '2' => 19472, - '4' => 19504, - '6' => 19536 + '33417' => { + '5' => 30356, + '11' => 30100, + '3' => 30340, + '12' => 30101, + '2' => 30324, + '1' => 30325, + '8' => 30068, + '7' => 30069, + '4' => 30341, + '10' => 30085, + '6' => 30357, + '9' => 30084 }, - '4160' => { - '1' => 4162, - '0' => 4161, - '2' => 4163, - '3' => 4164 - }, '4402' => { - '3' => 9013, - '5' => 9011, - '7' => 9009, - '8' => 9008, '1' => 9015, '2' => 9014, + '3' => 9013, + '5' => 9011, + '6' => 9010, '4' => 9012, - '6' => 9010 + '7' => 9009, + '8' => 9008 }, - '33381' => { - '3' => 29190, - '12' => 29445, - '5' => 29446, - '7' => 28933, - '1' => 28935, - '6' => 29447, - '9' => 29188, - '11' => 29444, - '8' => 28932, - '10' => 29189, - '2' => 28934, - '4' => 29191 - }, - '33350' => { - '9' => 29203, - '11' => 29459, - '10' => 29202, - '2' => 28963, - '8' => 28947, - '4' => 29218, - '3' => 29219, - '12' => 29458, - '5' => 29475, - '7' => 28946, - '1' => 28962, - '6' => 29474 - }, - '4369' => { - '3' => 8989, - '6' => 8986, - '4' => 8988, - '8' => 8984, - '2' => 8990, - '1' => 8991, - '7' => 8985, - '5' => 8987 - }, - '33360' => { - '9' => 28849, - '7' => 28854, - '1' => 28838, - '8' => 28855, - '2' => 28839, - '10' => 28848, - '4' => 28832, - '3' => 28833 + '34497' => { + '1' => 23569, + '2' => 23570, + '3' => 23571, + '0' => 23568 }, - '4420' => { - '3' => 8778, - '5' => 8780, - '7' => 8782, - '4' => 8779, - '2' => 8777, - '1' => 8776, - '8' => 8783, - '6' => 8781 - }, - '4163' => { - '7' => 8502, - '5' => 8500, - '6' => 8501, - '1' => 8496, - '2' => 8497, - '8' => 8503, - '4' => 8499, - '3' => 8498 + '4368' => { + '2' => 4371, + '1' => 4370, + '0' => 4369, + '3' => 4372 }, - '33301' => { - '11' => 30979, - '9' => 30723, - '4' => 30738, - '2' => 30483, - '10' => 30722, - '8' => 30467, - '3' => 30739, - '12' => 30978, - '5' => 30995, - '7' => 30466, - '1' => 30482, - '6' => 30994 + '33431' => { + '12' => 31061, + '3' => 30788, + '5' => 31044, + '11' => 31060, + '1' => 30533, + '2' => 30532, + '4' => 30789, + '10' => 30805, + '7' => 30549, + '8' => 30548, + '9' => 30804, + '6' => 31045 }, - '33347' => { - '6' => 29488, - '1' => 28976, - '7' => 28992, - '5' => 29489, - '12' => 29504, - '3' => 29233, - '8' => 28993, - '2' => 28977, - '10' => 29248, - '4' => 29232, - '11' => 29505, - '9' => 29249 + '35332' => { + '2' => 24658, + '6' => 24644, + '1' => 24657, + '8' => 24646, + '5' => 24643, + '0' => 24656, + '7' => 24645 }, - '35331' => { - '3' => 24642, - '2' => 24641, - '1' => 24640 + '4115' => { + '1' => 8464, + '2' => 8465, + '3' => 8466, + '5' => 8468, + '6' => 8469, + '4' => 8467, + '7' => 8456, + '8' => 8457 + }, + '33319' => { + '5' => 30275, + '11' => 30259, + '3' => 30019, + '12' => 30258, + '2' => 29763, + '1' => 29762, + '8' => 29747, + '7' => 29746, + '4' => 30018, + '10' => 30002, + '6' => 30274, + '9' => 30003 }, - '33362' => { - '4' => 28752, - '10' => 28758, - '2' => 28737, - '8' => 28743, - '9' => 28759, - '11' => 28775, - '12' => 28774, - '3' => 28753, - '6' => 28768, - '1' => 28736, - '7' => 28742, - '5' => 28769 + '32785' => { + '5' => 34500, + '3' => 34498, + '4' => 34497, + '2' => 34501, + '6' => 34499, + '1' => 34496 }, '33352' => { - '12' => 29522, + '2' => 29027, + '1' => 29026, + '11' => 29523, + '5' => 29539, '3' => 29283, + '12' => 29522, '6' => 29538, - '10' => 29266, - '1' => 29026, - '8' => 29011, - '2' => 29027, - '4' => 29282, '9' => 29267, - '11' => 29523, '7' => 29010, - '5' => 29539 - }, - '33444' => { - '8' => 31511, - '2' => 31255, - '10' => 31526, - '4' => 31270, - '11' => 31543, - '9' => 31527, - '6' => 31286, - '1' => 31254, - '7' => 31510, - '5' => 31287, - '12' => 31542, - '3' => 31271 - }, - '33737' => { - '4' => 33415, - '0' => 33414, - '1' => 33432, - '2' => 33383, - '6' => 33382, - '3' => 33431 + '8' => 29011, + '4' => 29282, + '10' => 29266 }, - '4129' => { - '6' => 8197, - '1' => 8192, - '2' => 8193, - '4' => 8195, - '7' => 8199, - '5' => 8196, - '3' => 8194 + '4160' => { + '2' => 4163, + '1' => 4162, + '0' => 4161, + '3' => 4164 + }, + '4355' => { + '5' => 8964, + '3' => 8962, + '2' => 8961, + '1' => 8960, + '8' => 8967, + '7' => 8966, + '4' => 8963, + '6' => 8965 }, - '33730' => { - '5' => 33344, - '6' => 33297, - '1' => 33361, - '0' => 33348, - '2' => 33360, - '3' => 33313 - }, '33446' => { - '12' => 31285, - '3' => 31524, - '6' => 31541, - '4' => 31525, - '1' => 31509, + '7' => 31253, '8' => 31252, + '4' => 31525, '10' => 31269, - '2' => 31508, - '7' => 31253, + '6' => 31541, '9' => 31268, + '5' => 31540, '11' => 31284, - '5' => 31540 - }, - '35328' => { - '1' => 24593, - '0' => 24592, - '2' => 24594 + '3' => 31524, + '12' => 31285, + '2' => 31508, + '1' => 31509 }, - '4132' => { - '6' => 8285, - '4' => 8283, - '1' => 8280, - '2' => 8281, - '7' => 8279, - '5' => 8284, - '3' => 8282 + '4388' => { + '4' => 8746, + '8' => 8742, + '7' => 8743, + '6' => 8744, + '3' => 8747, + '5' => 8745, + '1' => 8737, + '2' => 8736 }, - '33370' => { - '7' => 28851, - '9' => 28852, - '4' => 28834, - '1' => 28835, - '8' => 28850, - '10' => 28853, - '2' => 28837, - '3' => 28836 + '33297' => { + '9' => 30833, + '8' => 30577, + '7' => 30576, + '10' => 30832, + '4' => 30816, + '2' => 30561, + '1' => 30560, + '3' => 30817 }, - '33377' => { - '10' => 29318, - '2' => 29047, - '8' => 29303, - '4' => 29062, - '11' => 29335, - '9' => 29319, - '12' => 29334, - '3' => 29063, - '1' => 29046, - '6' => 29078, - '5' => 29079, - '7' => 29302 + '33414' => { + '12' => 30245, + '3' => 29972, + '11' => 30244, + '5' => 30228, + '1' => 29717, + '2' => 29716, + '10' => 29989, + '4' => 29973, + '7' => 29733, + '8' => 29732, + '9' => 29988, + '6' => 30229 + }, + '34499' => { + '0' => 23600, + '3' => 23603, + '2' => 23602, + '1' => 23601 + }, + '33985' => { + '5' => 22549, + '0' => 22544, + '3' => 22547, + '2' => 22546, + '1' => 22545, + '8' => 22552, + '7' => 22551, + '4' => 22548, + '6' => 22550 }, - '33413' => { - '4' => 29959, - '10' => 29957, - '8' => 29700, - '2' => 29702, - '9' => 29956, - '11' => 30212, - '6' => 30215, - '1' => 29703, - '7' => 29701, - '5' => 30214, - '12' => 30213, - '3' => 29958 + '33737' => { + '6' => 33382, + '2' => 33383, + '1' => 33432, + '0' => 33414, + '4' => 33415, + '3' => 33431 }, - '33385' => { - '8' => 29044, - '10' => 29061, - '2' => 29300, - '4' => 29317, - '11' => 29076, - '9' => 29060, - '12' => 29077, - '3' => 29316, - '1' => 29301, - '6' => 29333, - '5' => 29332, - '7' => 29045 - }, - '33809' => { - '9' => 18435, - '11' => 18433, - '4' => 18464, - '2' => 18466, - '8' => 18448, - '10' => 18434, - '7' => 18449, - '5' => 18451, - '6' => 18450, - '1' => 18467, - '3' => 18465, - '12' => 18432 + '32790' => { + '4' => 4416, + '3' => 4400, + '0' => 4352, + '5' => 4432, + '1' => 4368, + '2' => 4384 }, - '4112' => { - '3' => 4116, - '0' => 4113, - '1' => 4114, - '2' => 4115 + '33348' => { + '6' => 29456, + '9' => 29217, + '8' => 28961, + '7' => 28960, + '10' => 29216, + '4' => 29200, + '2' => 28945, + '1' => 28944, + '5' => 29457, + '11' => 29473, + '12' => 29472, + '3' => 29201 + }, + '4147' => { + '3' => 8225, + '5' => 8228, + '1' => 8235, + '2' => 8224, + '4' => 8227, + '7' => 8230, + '8' => 8231, + '6' => 8229 }, - '33429' => { - '3' => 30724, - '12' => 30997, - '7' => 30485, - '5' => 30980, - '6' => 30981, - '1' => 30469, - '9' => 30740, - '11' => 30996, - '4' => 30725, - '8' => 30484, - '2' => 30468, - '10' => 30741 + '33739' => { + '3' => 33366, + '4' => 33321, + '0' => 33369, + '5' => 33354, + '1' => 33337, + '2' => 33353 }, - '33298' => { - '11' => 31057, - '9' => 30801, - '2' => 30529, - '10' => 30800, - '8' => 30545, - '4' => 30784, - '3' => 30785, - '12' => 31056, - '5' => 31041, - '7' => 30544, - '1' => 30528, - '6' => 31040 + '35602' => { + '2' => 25684, + '1' => 25669, + '0' => 25668, + '3' => 25685 }, - '33425' => { - '3' => 30838, - '7' => 30567, - '9' => 30822, - '4' => 30839, - '8' => 30566, - '1' => 30583, - '10' => 30823, - '2' => 30582 + '33738' => { + '1' => 33319, + '6' => 33352, + '2' => 33304, + '3' => 33320, + '4' => 33351, + '0' => 33370, + '5' => 33350 + }, + '4178' => { + '3' => 8522, + '5' => 8524, + '1' => 8521, + '2' => 8520, + '4' => 8523, + '8' => 8527, + '7' => 8526, + '6' => 8525 + }, + '33329' => { + '3' => 29825, + '12' => 29584, + '11' => 29585, + '5' => 29841, + '1' => 29808, + '2' => 29809, + '10' => 29568, + '4' => 29824, + '8' => 29553, + '7' => 29552, + '9' => 29569, + '6' => 29840 + }, + '33346' => { + '8' => 29025, + '7' => 29024, + '10' => 29280, + '4' => 29264, + '6' => 29520, + '9' => 29281, + '11' => 29537, + '5' => 29521, + '3' => 29265, + '12' => 29536, + '2' => 29009, + '1' => 29008 + }, + '4432' => { + '1' => 4434, + '2' => 4435, + '3' => 4436, + '0' => 4433 + }, + '4116' => { + '8' => 8462, + '7' => 8463, + '4' => 8459, + '6' => 8461, + '5' => 8460, + '3' => 8458, + '2' => 8455, + '1' => 8454 + }, + '33376' => { + '8' => 29094, + '7' => 29095, + '10' => 29351, + '4' => 29367, + '6' => 29623, + '9' => 29350, + '11' => 29606, + '5' => 29622, + '12' => 29607, + '3' => 29366, + '2' => 29110, + '1' => 29111 + }, + '33286' => { + '6' => 31283, + '9' => 31522, + '8' => 31506, + '7' => 31507, + '10' => 31523, + '4' => 31267, + '2' => 31250, + '1' => 31251, + '11' => 31538, + '5' => 31282, + '3' => 31266, + '12' => 31539 + }, + '33410' => { + '9' => 30038, + '6' => 30311, + '10' => 30039, + '4' => 30055, + '7' => 29783, + '8' => 29782, + '1' => 29799, + '2' => 29798, + '3' => 30054, + '12' => 30295, + '5' => 30310, + '11' => 30294 + }, + '32768' => { + '6' => 32790, + '7' => 32791, + '8' => 32792, + '10' => 3, + '4' => 32788, + '2' => 32785, + '1' => 32786, + '0' => 34816, + '5' => 32789, + '3' => 32787 + }, + '33321' => { + '9' => 30338, + '6' => 30099, + '4' => 30083, + '10' => 30339, + '7' => 30323, + '8' => 30322, + '1' => 30067, + '2' => 30066, + '12' => 30355, + '3' => 30082, + '5' => 30098, + '11' => 30354 + }, + '34496' => { + '2' => 23554, + '1' => 23553, + '0' => 23552, + '3' => 23555 }, '33732' => { - '5' => 33427, + '2' => 33444, '6' => 33411, '4' => 33429, - '0' => 33428, - '2' => 33444, - '3' => 33412 + '3' => 33412, + '5' => 33427, + '0' => 33428 + }, + '33386' => { + '5' => 29604, + '11' => 29620, + '12' => 29621, + '3' => 29348, + '2' => 29092, + '1' => 29093, + '7' => 29109, + '8' => 29108, + '10' => 29365, + '4' => 29349, + '6' => 29605, + '9' => 29364 }, '33284' => { + '6' => 31536, '9' => 31265, - '11' => 31281, - '4' => 31520, - '10' => 31264, - '2' => 31505, '8' => 31249, - '5' => 31537, '7' => 31248, + '10' => 31264, + '4' => 31520, + '2' => 31505, '1' => 31504, - '6' => 31536, + '5' => 31537, + '11' => 31281, '3' => 31521, '12' => 31280 }, - '33317' => { - '8' => 29697, - '10' => 29952, - '2' => 29699, - '4' => 29954, - '9' => 29953, - '11' => 30209, - '1' => 29698, - '6' => 30210, - '5' => 30211, - '7' => 29696, - '12' => 30208, - '3' => 29955 - }, - '33286' => { - '2' => 31250, - '10' => 31523, - '8' => 31506, - '4' => 31267, - '9' => 31522, - '11' => 31538, - '1' => 31251, - '6' => 31283, - '5' => 31282, - '7' => 31507, - '12' => 31539, - '3' => 31266 - }, - '4148' => { - '2' => 8232, - '8' => 8233, - '6' => 8226, - '5' => 8236, - '7' => 8237, - '3' => 8234 + '4144' => { + '3' => 4148, + '0' => 4145, + '1' => 4146, + '2' => 4147 }, - '4353' => { - '5' => 8708, - '7' => 8710, - '4' => 8707, - '1' => 8704, - '2' => 8705, - '8' => 8711, - '6' => 8709, - '3' => 8706 - }, - '33297' => { - '8' => 30577, - '2' => 30561, - '1' => 30560, - '10' => 30832, - '4' => 30816, - '9' => 30833, - '7' => 30576, - '3' => 30817 + '33345' => { + '7' => 29040, + '8' => 29041, + '4' => 29312, + '10' => 29056, + '6' => 29328, + '9' => 29057, + '11' => 29073, + '5' => 29329, + '12' => 29072, + '3' => 29313, + '2' => 29297, + '1' => 29296 }, - '32791' => { - '3' => 33730, - '5' => 33737, - '6' => 272, - '0' => 33738, - '2' => 33729, - '1' => 33728, - '4' => 33736 + '33366' => { + '6' => 28725, + '9' => 28706, + '7' => 28691, + '8' => 28690, + '4' => 28709, + '10' => 28707, + '2' => 28692, + '1' => 28693, + '5' => 28724, + '11' => 28722, + '12' => 28723, + '3' => 28708 }, - '4178' => { - '7' => 8526, - '5' => 8524, - '6' => 8525, - '2' => 8520, - '1' => 8521, - '8' => 8527, - '4' => 8523, - '3' => 8522 + '33393' => { + '11' => 29847, + '5' => 29591, + '3' => 29575, + '12' => 29846, + '2' => 29559, + '1' => 29558, + '7' => 29814, + '8' => 29815, + '10' => 29830, + '4' => 29574, + '6' => 29590, + '9' => 29831 + }, + '4098' => { + '3' => 8269, + '4' => 8268, + '5' => 8267, + '7' => 8247, + '1' => 8264, + '2' => 8262, + '6' => 8266 }, - '33320' => { - '4' => 30050, - '8' => 29779, - '10' => 30034, - '2' => 29795, - '11' => 30291, - '9' => 30035, - '12' => 30290, - '3' => 30051, - '6' => 30306, - '1' => 29794, - '7' => 29778, - '5' => 30307 + '33385' => { + '2' => 29300, + '1' => 29301, + '11' => 29076, + '5' => 29332, + '12' => 29077, + '3' => 29316, + '6' => 29333, + '9' => 29060, + '8' => 29044, + '7' => 29045, + '10' => 29061, + '4' => 29317 }, - '33415' => { - '2' => 29748, - '8' => 29764, - '10' => 30021, - '4' => 30005, - '11' => 30276, - '9' => 30020, - '6' => 30261, - '1' => 29749, - '7' => 29765, - '5' => 30260, - '12' => 30277, - '3' => 30004 + '35603' => { + '2' => 25698, + '1' => 25697, + '0' => 25696, + '3' => 25699 }, - '33432' => { - '4' => 30821, - '2' => 30564, - '1' => 30565, - '10' => 30837, - '8' => 30580, - '7' => 30581, - '9' => 30836, - '3' => 30820 + '33427' => { + '1' => 30519, + '2' => 30518, + '3' => 30774, + '12' => 31015, + '11' => 31014, + '5' => 31030, + '9' => 30758, + '6' => 31031, + '10' => 30759, + '4' => 30775, + '7' => 30503, + '8' => 30502 }, - '4418' => { - '3' => 9034, - '1' => 9032, - '2' => 9033, - '8' => 9039, - '4' => 9035, - '6' => 9037, - '5' => 9036, - '7' => 9038 + '4145' => { + '3' => 8209, + '4' => 8210, + '7' => 8213, + '5' => 8211, + '8' => 8214, + '1' => 8212, + '2' => 8208 }, - '4097' => { - '3' => 8257, - '4' => 8261, - '2' => 8259, - '1' => 8258, - '8' => 8265, - '6' => 8263, - '5' => 8256, - '7' => 8260 + '4163' => { + '4' => 8499, + '8' => 8503, + '7' => 8502, + '6' => 8501, + '3' => 8498, + '5' => 8500, + '1' => 8496, + '2' => 8497 + }, + '33413' => { + '2' => 29702, + '1' => 29703, + '5' => 30214, + '11' => 30212, + '3' => 29958, + '12' => 30213, + '6' => 30215, + '9' => 29956, + '7' => 29701, + '8' => 29700, + '4' => 29959, + '10' => 29957 + }, + '33736' => { + '4' => 33416, + '3' => 33368, + '5' => 33401, + '0' => 33385, + '1' => 33384, + '2' => 33386, + '6' => 33417 + }, + '4130' => { + '1' => 8200, + '6' => 8205, + '2' => 8201, + '4' => 8203, + '3' => 8202, + '7' => 8198, + '5' => 8204 }, + '33350' => { + '6' => 29474, + '9' => 29203, + '8' => 28947, + '7' => 28946, + '10' => 29202, + '4' => 29218, + '2' => 28963, + '1' => 28962, + '5' => 29475, + '11' => 29459, + '12' => 29458, + '3' => 29219 + }, + '33298' => { + '6' => 31040, + '9' => 30801, + '8' => 30545, + '7' => 30544, + '4' => 30784, + '10' => 30800, + '2' => 30529, + '1' => 30528, + '5' => 31041, + '11' => 31057, + '12' => 31056, + '3' => 30785 + }, + '33369' => { + '11' => 28818, + '5' => 28820, + '3' => 28804, + '12' => 28819, + '2' => 28788, + '1' => 28789, + '8' => 28786, + '7' => 28787, + '10' => 28803, + '4' => 28805, + '6' => 28821, + '9' => 28802 + }, '33383' => { + '1' => 28981, + '2' => 28980, + '3' => 29236, + '12' => 29509, + '5' => 29492, '11' => 29508, '9' => 29252, - '4' => 29237, - '8' => 28996, + '6' => 29493, '10' => 29253, - '2' => 28980, - '5' => 29492, + '4' => 29237, '7' => 28997, - '1' => 28981, - '6' => 29493, - '3' => 29236, - '12' => 29509 + '8' => 28996 }, - '33729' => { - '3' => 33298, - '4' => 33315, - '2' => 33346, - '1' => 33347, - '0' => 33329, - '6' => 33345, - '5' => 33314 - }, - '33318' => { - '10' => 29970, - '8' => 29715, - '2' => 29731, - '4' => 29986, - '11' => 30227, - '9' => 29971, - '1' => 29730, - '6' => 30242, - '5' => 30243, - '7' => 29714, - '12' => 30226, - '3' => 29987 + '33304' => { + '1' => 30578, + '2' => 30579, + '3' => 30835, + '9' => 30819, + '4' => 30834, + '10' => 30818, + '8' => 30563, + '7' => 30562 }, - '34304' => { - '2' => 34305 + '32791' => { + '2' => 33729, + '1' => 33728, + '0' => 33738, + '5' => 33737, + '4' => 33736, + '3' => 33730 }, - '33378' => { - '3' => 29286, - '12' => 29527, - '5' => 29542, - '7' => 29015, - '9' => 29270, - '11' => 29526, - '4' => 29287, - '10' => 29271, - '8' => 29014, - '1' => 29031, - '2' => 29030, - '6' => 29543 + '34501' => { + '3' => 23635, + '0' => 23632, + '1' => 23633, + '2' => 23634 }, - '4404' => { - '7' => 8752, - '5' => 8755, - '6' => 8754, - '2' => 8758, - '1' => 8759, - '8' => 8753, - '4' => 8756, - '3' => 8757 + '4384' => { + '3' => 4388, + '0' => 4385, + '1' => 4386, + '2' => 4387 }, - '32787' => { - '3' => 35331, - '5' => 35333, - '0' => 35328, - '1' => 35329, - '2' => 35330, - '4' => 35332 - }, - '33738' => { - '6' => 33352, - '4' => 33351, - '1' => 33319, - '0' => 33370, - '2' => 33304, - '5' => 33350, - '3' => 33320 + '33301' => { + '6' => 30994, + '9' => 30723, + '7' => 30466, + '8' => 30467, + '10' => 30722, + '4' => 30738, + '2' => 30483, + '1' => 30482, + '5' => 30995, + '11' => 30979, + '12' => 30978, + '3' => 30739 }, '35333' => { - '4' => 24659, - '8' => 24662, '6' => 24660, - '7' => 24661 - }, - '4131' => { - '6' => 8277, - '4' => 8275, - '2' => 8273, - '1' => 8272, - '7' => 8278, - '5' => 8276, - '3' => 8274 - }, - '33303' => { - '7' => 30530, - '5' => 31059, - '6' => 31058, - '1' => 30546, - '3' => 30803, - '12' => 31042, - '9' => 30787, - '11' => 31043, - '8' => 30531, - '2' => 30547, - '10' => 30786, - '4' => 30802 + '7' => 24661, + '8' => 24662, + '4' => 24659 }, - '33430' => { - '4' => 30757, - '10' => 30773, - '8' => 30516, - '2' => 30500, - '9' => 30772, - '11' => 31028, - '6' => 31013, - '1' => 30501, - '7' => 30517, - '5' => 31012, - '12' => 31029, - '3' => 30756 + '33362' => { + '1' => 28736, + '2' => 28737, + '3' => 28753, + '12' => 28774, + '11' => 28775, + '5' => 28769, + '9' => 28759, + '6' => 28768, + '4' => 28752, + '10' => 28758, + '8' => 28743, + '7' => 28742 + }, + '32788' => { + '6' => 34960, + '9' => 36096, + '8' => 34944, + '4' => 35604, + '2' => 35602, + '1' => 35601, + '0' => 35600, + '5' => 35605, + '3' => 35603 }, - '4433' => { - '3' => 8786, - '7' => 8790, - '5' => 8788, - '6' => 8789, - '4' => 8787, - '8' => 8791, - '2' => 8785, - '1' => 8784 - }, - '4100' => { - '2' => 8489, - '8' => 8495, - '1' => 8488, - '4' => 8491, - '6' => 8493, - '5' => 8492, - '7' => 8494, - '3' => 8490 - }, - '4096' => { - '0' => 4097, - '1' => 4098, - '2' => 4099, - '3' => 4100 + '4371' => { + '1' => 8735, + '2' => 8734, + '3' => 8733, + '5' => 8731, + '6' => 8730, + '4' => 8732, + '8' => 8728, + '7' => 8729 }, - '33384' => { - '9' => 29284, - '11' => 29540, - '4' => 29269, - '10' => 29285, - '2' => 29012, - '8' => 29028, - '7' => 29029, - '5' => 29524, - '6' => 29525, - '1' => 29013, - '3' => 29268, - '12' => 29541 - }, - '33386' => { - '3' => 29348, - '12' => 29621, - '7' => 29109, - '5' => 29604, - '6' => 29605, - '1' => 29093, - '11' => 29620, - '9' => 29364, - '10' => 29365, - '2' => 29092, - '8' => 29108, - '4' => 29349 - }, - '33445' => { - '3' => 31239, - '9' => 31495, - '7' => 31492, - '10' => 31494, - '1' => 31236, - '2' => 31237, - '8' => 31493, - '4' => 31238 + '33988' => { + '4' => 22596, + '7' => 22599, + '8' => 22600, + '6' => 22598, + '3' => 22595, + '0' => 22592, + '5' => 22597, + '1' => 22593, + '2' => 22594 + }, + '35604' => { + '0' => 25712, + '3' => 25715, + '2' => 25714, + '1' => 25713 }, '4114' => { - '3' => 8538, - '6' => 8541, - '2' => 8537, + '7' => 8542, '8' => 8543, - '1' => 8536, '4' => 8539, - '7' => 8542, - '5' => 8540 + '6' => 8541, + '5' => 8540, + '3' => 8538, + '2' => 8537, + '1' => 8536 + }, + '4416' => { + '3' => 4420, + '0' => 4417, + '1' => 4418, + '2' => 4419 }, - '34560' => { - '2' => 34561 + '32787' => { + '3' => 35331, + '0' => 35328, + '5' => 35333, + '1' => 35329, + '2' => 35330, + '4' => 35332, + '7' => 35585, + '8' => 35586, + '9' => 35587, + '6' => 35584 }, - '33348' => { - '7' => 28960, - '11' => 29473, - '9' => 29217, - '5' => 29457, - '6' => 29456, - '4' => 29200, - '2' => 28945, - '1' => 28944, - '8' => 28961, - '10' => 29216, - '3' => 29201, - '12' => 29472 + '33735' => { + '2' => 33303, + '1' => 33286, + '0' => 33301, + '5' => 33302, + '3' => 33318, + '4' => 33317 + }, + '35605' => { + '0' => 25700, + '1' => 25701 }, '33411' => { - '3' => 30022, - '12' => 30263, + '11' => 30262, '5' => 30278, - '7' => 29751, + '12' => 30263, + '3' => 30022, + '2' => 29766, '1' => 29767, - '6' => 30279, - '9' => 30006, - '11' => 30262, + '7' => 29751, + '8' => 29750, '4' => 30023, '10' => 30007, - '8' => 29750, - '2' => 29766 + '6' => 30279, + '9' => 30006 }, - '4099' => { - '3' => 8482, - '7' => 8486, - '5' => 8484, - '6' => 8485, - '4' => 8483, - '8' => 8487, - '2' => 8481, - '1' => 8480 + '4113' => { + '6' => 8453, + '8' => 8535, + '7' => 8534, + '4' => 8451, + '2' => 8449, + '1' => 8448, + '5' => 8452, + '3' => 8450 }, - '33285' => { - '8' => 31488, - '1' => 31233, - '10' => 31490, - '2' => 31232, - '4' => 31234, - '9' => 31491, - '7' => 31489, - '3' => 31235 + '33349' => { + '3' => 29187, + '12' => 29440, + '5' => 29443, + '11' => 29441, + '1' => 28930, + '2' => 28931, + '10' => 29184, + '4' => 29186, + '7' => 28928, + '8' => 28929, + '9' => 29185, + '6' => 29442 }, - '4388' => { - '3' => 8747, - '7' => 8743, - '5' => 8745, - '6' => 8744, - '4' => 8746, - '8' => 8742, - '2' => 8736, - '1' => 8737 + '4403' => { + '8' => 8760, + '7' => 8761, + '4' => 8764, + '6' => 8762, + '5' => 8763, + '3' => 8765, + '2' => 8766, + '1' => 8767 }, - '33304' => { - '9' => 30819, - '7' => 30562, - '8' => 30563, - '2' => 30579, - '10' => 30818, - '1' => 30578, - '4' => 30834, - '3' => 30835 - }, - '33793' => { - '6' => 18498, - '4' => 18512, - '1' => 18515, - '8' => 18496, - '2' => 18514, - '10' => 18482, - '7' => 18497, - '11' => 18481, - '9' => 18483, - '5' => 18499, - '12' => 18480, - '3' => 18513 + '35328' => { + '1' => 24593, + '0' => 24592, + '3' => 24594 }, - '4401' => { - '3' => 9021, - '1' => 9023, - '8' => 9016, - '2' => 9022, - '4' => 9020, - '6' => 9018, - '5' => 9019, - '7' => 9017 + '33429' => { + '8' => 30484, + '7' => 30485, + '10' => 30741, + '4' => 30725, + '6' => 30981, + '9' => 30740, + '11' => 30996, + '5' => 30980, + '12' => 30997, + '3' => 30724, + '2' => 30468, + '1' => 30469 + }, + '4419' => { + '6' => 8773, + '8' => 8775, + '7' => 8774, + '4' => 8771, + '2' => 8769, + '1' => 8768, + '5' => 8772, + '3' => 8770 }, - '4116' => { - '1' => 8456, - '8' => 8463, - '2' => 8457, - '4' => 8459, - '6' => 8461, - '5' => 8460, - '7' => 8462, - '3' => 8458 + '4129' => { + '4' => 8195, + '3' => 8194, + '5' => 8196, + '7' => 8199, + '1' => 8192, + '2' => 8193, + '6' => 8197 }, - '33368' => { - '10' => 28755, - '2' => 28740, - '8' => 28738, - '4' => 28757, - '11' => 28770, - '9' => 28754, - '1' => 28741, - '6' => 28773, - '5' => 28772, - '7' => 28739, - '12' => 28771, - '3' => 28756 + '33320' => { + '12' => 30290, + '3' => 30051, + '11' => 30291, + '5' => 30307, + '1' => 29794, + '2' => 29795, + '4' => 30050, + '10' => 30034, + '7' => 29778, + '8' => 29779, + '9' => 30035, + '6' => 30306 }, - '4115' => { - '3' => 8466, - '5' => 8468, - '7' => 8454, - '4' => 8467, - '1' => 8464, - '2' => 8465, - '8' => 8455, - '6' => 8469 + '4385' => { + '6' => 9003, + '8' => 9000, + '7' => 9001, + '4' => 9004, + '2' => 9006, + '1' => 9007, + '5' => 9002, + '3' => 9005 }, - '33426' => { - '1' => 30551, - '6' => 31063, - '5' => 31062, - '7' => 30535, - '12' => 31047, - '3' => 30806, - '4' => 30807, - '2' => 30550, - '10' => 30791, - '8' => 30534, - '11' => 31046, - '9' => 30790 + '33314' => { + '2' => 29777, + '1' => 29776, + '11' => 30305, + '5' => 30289, + '3' => 30033, + '12' => 30304, + '6' => 30288, + '9' => 30049, + '7' => 29792, + '8' => 29793, + '4' => 30032, + '10' => 30048 }, - '4371' => { - '3' => 8733, - '4' => 8732, - '2' => 8734, - '1' => 8735, - '8' => 8728, - '6' => 8730, - '5' => 8731, - '7' => 8729 - } + '34944' => { + '0' => 20480, + '4' => 20483, + '2' => 20481, + '6' => 20482 + }, + '4418' => { + '6' => 9037, + '4' => 9035, + '7' => 9038, + '8' => 9039, + '1' => 9032, + '2' => 9033, + '3' => 9034, + '5' => 9036 + }, + '35600' => { + '2' => 25666, + '1' => 25665, + '0' => 25664, + '3' => 25667 + }, + '33381' => { + '9' => 29188, + '6' => 29447, + '10' => 29189, + '4' => 29191, + '7' => 28933, + '8' => 28932, + '1' => 28935, + '2' => 28934, + '3' => 29190, + '12' => 29445, + '11' => 29444, + '5' => 29446 + }, + '4112' => { + '3' => 4116, + '0' => 4113, + '1' => 4114, + '2' => 4115 + }, + '4353' => { + '5' => 8708, + '3' => 8706, + '2' => 8705, + '1' => 8704, + '8' => 8711, + '7' => 8710, + '4' => 8707, + '6' => 8709 + }, + '34832' => { + '2' => 256 + }, + '33415' => { + '6' => 30261, + '9' => 30020, + '7' => 29765, + '8' => 29764, + '4' => 30005, + '10' => 30021, + '2' => 29748, + '1' => 29749, + '11' => 30276, + '5' => 30260, + '3' => 30004, + '12' => 30277 + }, + '33729' => { + '2' => 33346, + '6' => 33345, + '5' => 33314, + '0' => 33329, + '4' => 33315, + '3' => 33298 + }, + '35330' => { + '1' => 24625, + '2' => 24626, + '6' => 24612, + '8' => 24614, + '5' => 24611, + '0' => 24624, + '7' => 24613 + }, + '32789' => { + '4' => 4160, + '3' => 4144, + '5' => 4176, + '0' => 4096, + '1' => 4112, + '2' => 4128 + }, + '32792' => { + '2' => 33735, + '1' => 33734, + '5' => 33739, + '0' => 33733, + '3' => 33731, + '4' => 33732 + }, + '4434' => { + '3' => 8799, + '5' => 8796, + '1' => 8792, + '2' => 8793, + '4' => 8795, + '8' => 8794, + '7' => 8798, + '6' => 8797 + }, + '33416' => { + '10' => 30053, + '4' => 30037, + '7' => 29797, + '8' => 29796, + '9' => 30052, + '6' => 30293, + '12' => 30309, + '3' => 30036, + '5' => 30292, + '11' => 30308, + '1' => 29781, + '2' => 29780 + }, + '33378' => { + '9' => 29270, + '6' => 29543, + '10' => 29271, + '4' => 29287, + '7' => 29015, + '8' => 29014, + '1' => 29031, + '2' => 29030, + '12' => 29527, + '3' => 29286, + '5' => 29542, + '11' => 29526 + }, + '33299' => { + '12' => 31024, + '3' => 30753, + '5' => 31009, + '11' => 31025, + '1' => 30496, + '2' => 30497, + '10' => 30768, + '4' => 30752, + '8' => 30513, + '7' => 30512, + '9' => 30769, + '6' => 31008 + }, + '33444' => { + '1' => 31254, + '2' => 31255, + '3' => 31271, + '12' => 31542, + '5' => 31287, + '11' => 31543, + '9' => 31527, + '6' => 31286, + '10' => 31526, + '4' => 31270, + '7' => 31510, + '8' => 31511 + }, + '33370' => { + '1' => 28835, + '2' => 28837, + '3' => 28836, + '9' => 28852, + '4' => 28834, + '10' => 28853, + '7' => 28851, + '8' => 28850 + }, + '4164' => { + '5' => 8508, + '3' => 8506, + '2' => 8505, + '1' => 8504, + '8' => 8509, + '7' => 8510, + '4' => 8507, + '6' => 8511 + }, + '33432' => { + '4' => 30821, + '10' => 30837, + '8' => 30580, + '7' => 30581, + '9' => 30836, + '3' => 30820, + '1' => 30565, + '2' => 30564 + } ); diff --git a/rich/addresses_dirich.db b/rich/addresses_dirich.db index e8ad40d..fc14642 120000 --- a/rich/addresses_dirich.db +++ b/rich/addresses_dirich.db @@ -1 +1 @@ -addresses_dirich.db_20210817 \ No newline at end of file +addresses_dirich.db_20210908 \ No newline at end of file diff --git a/rich/flash_thr_fpga.sh b/rich/flash_thr_fpga.sh new file mode 100755 index 0000000..93b6122 --- /dev/null +++ b/rich/flash_thr_fpga.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +for i in $(cat addresses_dirich_used_for_thr_flash.db | grep -v "^#" | grep 0x7[123]a[23] | cut -d " " -f1) +#for i in $(cat addresses_dirich_used_for_thr_flash.db | grep -v "^#" | grep 0x71b3 | cut -d " " -f1) +do + echo "********" flashing $i + cd ~/trbsoft/daqtools/tools/ + for c in 0 1 + #for c in 1 + do + echo "***" chain $c + ./spi_slave.pl -e $i -c $c -enablecfgflash 1 + #./spi_slave.pl -e $i -c $c -writecfgflash -filename ~/hadesdaq/rich/bitfiles/dirich3_thresholds_autoflash_20190513.dump + while (! ./spi_slave.pl -e $i -c $c -writecfgflash -verifycfgflash -filename ~/hadesdaq/rich/bitfiles/dirich3_thresholds_autoflash_20190513.dump) + do + echo doing module $i , chain $c again + done + done + cd - + echo $i DONE + echo $i >> done.log +done + diff --git a/rich/powercycle_dirich.pl b/rich/powercycle_dirich.pl new file mode 100755 index 0000000..dbe5a1c --- /dev/null +++ b/rich/powercycle_dirich.pl @@ -0,0 +1,34 @@ +#!/usr/bin/perl -w + +use warnings; +use strict; +use HADES::TrbNet; +use Data::Dumper; + +trb_init_ports() or die trb_strerror(); + +my $combiner = 0x8242; +my $ports = 0x080; + +## Switch Off +trb_register_setbit($combiner,0xd580,$ports << 16); + +## Switch On +trb_register_clearbit($combiner,0xd580,$ports << 16); + +#.---------------. +#| Combiner | +#----------------- +#| 0x010 | 0x400 | +#----------------- +#| 0x020 | 0x800 | +#----------------- +#| 0x004 | 0x100 | +#----------------- +#| 0x008 | 0x200 | +#----------------- +#| 0x002 | 0x080 | +#----------------- +#| 0x001 | 0x040 | +#'---------------' + diff --git a/rich/powercycle_dirich_all.pl b/rich/powercycle_dirich_all.pl new file mode 100755 index 0000000..39e706b --- /dev/null +++ b/rich/powercycle_dirich_all.pl @@ -0,0 +1,55 @@ +#!/usr/bin/perl -w + +use warnings; +use strict; +use HADES::TrbNet; +use Data::Dumper; + +trb_init_ports() or die trb_strerror(); + +my $combiner = 0x8225; + +## Switch Off +trb_register_setbit($combiner,0xd580,0x001 << 16); +trb_register_setbit($combiner,0xd580,0x002 << 16); +trb_register_setbit($combiner,0xd580,0x004 << 16); +trb_register_setbit($combiner,0xd580,0x008 << 16); +trb_register_setbit($combiner,0xd580,0x010 << 16); +trb_register_setbit($combiner,0xd580,0x020 << 16); +trb_register_setbit($combiner,0xd580,0x040 << 16); +trb_register_setbit($combiner,0xd580,0x080 << 16); +trb_register_setbit($combiner,0xd580,0x100 << 16); +trb_register_setbit($combiner,0xd580,0x200 << 16); +trb_register_setbit($combiner,0xd580,0x400 << 16); +trb_register_setbit($combiner,0xd580,0x800 << 16); + +## Switch On +trb_register_clearbit($combiner,0xd580,0x001 << 16); +trb_register_clearbit($combiner,0xd580,0x002 << 16); +trb_register_clearbit($combiner,0xd580,0x004 << 16); +trb_register_clearbit($combiner,0xd580,0x008 << 16); +trb_register_clearbit($combiner,0xd580,0x010 << 16); +trb_register_clearbit($combiner,0xd580,0x020 << 16); +trb_register_clearbit($combiner,0xd580,0x040 << 16); +trb_register_clearbit($combiner,0xd580,0x080 << 16); +trb_register_clearbit($combiner,0xd580,0x100 << 16); +trb_register_clearbit($combiner,0xd580,0x200 << 16); +trb_register_clearbit($combiner,0xd580,0x400 << 16); +trb_register_clearbit($combiner,0xd580,0x800 << 16); + +#.---------------. +#| Combiner | +#----------------- +#| 0x010 | 0x400 | +#----------------- +#| 0x020 | 0x800 | +#----------------- +#| 0x004 | 0x100 | +#----------------- +#| 0x008 | 0x200 | +#----------------- +#| 0x002 | 0x080 | +#----------------- +#| 0x001 | 0x040 | +#'---------------' + diff --git a/rich/rich_crash_reporter.pl b/rich/rich_crash_reporter.pl new file mode 100755 index 0000000..0f6fec0 --- /dev/null +++ b/rich/rich_crash_reporter.pl @@ -0,0 +1,200 @@ +#!/usr/bin/perl -w + +use strict; +use warnings; +use POSIX qw(strftime); +use FileHandle; +use Hmon; +use QA; +use Getopt::Long; +use Data::Dumper; + +use HADES::TrbNet; + +trb_init_ports() or die trb_strerror(); +my $flog = QA::OpenQAFile(); +my $waittime = 15; +my $loggerperiod = 12; #times 5 seconds sleep +my $timecnt; + +my @prev_rich_miss; +my $fh_missRich; +open ($fh_missRich, ">>", "/tmp/rich_missing_boards_fast"); +if (!$fh_missRich) { + print STDERR "error opening temp file: /tmp/rich_missing_boards_fast\n"; + exit; +} +print $fh_missRich "Start of script ... ". QA::getTimeString()."\n"; + +close $fh_missRich; + + +while(1) { + my @result = trb_register_read_c(0xffff, 0x0) or sleep 5 and next; + + ####config + my @all_boards =(); + + my @rich_boards =(0x8017,0x8018, + 0x83c0,0x83c1,0x83c2,0x83c3,0x83c4,0x83c5,0x83c6,0x83c7,0x83c8,0x83c9,0x83ca,0x83cb, + 0x7010,0x7011,0x7020,0x7021,0x7030,0x7031,0x7040,0x7041,0x7050,0x7051,0x7060,0x7061, + 0x7100,0x7101,0x7110,0x7111,0x7120,0x7121,0x7130,0x7131,0x7140,0x7141,0x7150,0x7151,0x7160,0x7161,0x7170,0x7171,0x7180,0x7181,0x7190,0x7191, + 0x7200,0x7201,0x7210,0x7211,0x7220,0x7221,0x7230,0x7231,0x7240,0x7241,0x7250,0x7251,0x7260,0x7261,0x7270,0x7271,0x7280,0x7281,0x7290,0x7291, + 0x7300,0x7301,0x7310,0x7311,0x7320,0x7321,0x7330,0x7331,0x7340,0x7341,0x7350,0x7351,0x7360,0x7361,0x7370,0x7371,0x7380,0x7381,0x7390,0x7391, + 0x7400,0x7401,0x7410,0x7411,0x7420,0x7421,0x7430,0x7431,0x7440,0x7441,0x7450,0x7451,0x7460,0x7461,0x7470,0x7471,0x7480,0x7481,0x7490,0x7491, + 0x7500,0x7501,0x7510,0x7511,0x7520,0x7521,0x7530,0x7531,0x7540,0x7541,0x7550,0x7551,0x7560,0x7561,0x7570,0x7571,0x7580,0x7581,0x7590,0x7591, + 0x7600,0x7601,0x7610,0x7611,0x7620,0x7621,0x7630,0x7631,0x7640,0x7641,0x7650,0x7651,0x7660,0x7661,0x7670,0x7671,0x7680,0x7681,0x7690,0x7691, + 0x7700,0x7701,0x7710,0x7711,0x7720,0x7721,0x7730,0x7731,0x7740,0x7741,0x7750,0x7751, + 0x7800,0x7801,0x7810,0x7811,0x7820,0x7821,0x7830,0x7831,0x7840,0x7841,0x7850,0x7851, + 0x7900,0x7901,0x7910,0x7911,0x7920,0x7921,0x7930,0x7931,0x7940,0x7941,0x7950,0x7951, + 0x7a10,0x7a11,0x7a20,0x7a21,0x7a30,0x7a31, + 0x7b10,0x7b11,0x7b20,0x7b21,0x7b30,0x7b31, + + 0x7012,0x7013,0x7022,0x7023,0x7032,0x7033,0x7042,0x7043,0x7052,0x7053,0x7062,0x7063,0x7072,0x7073,0x7082,0x7083,0x7092,0x7093, + 0x7102,0x7103,0x7112,0x7113,0x7122,0x7123,0x7132,0x7133,0x7142,0x7143,0x7152,0x7153,0x7162,0x7163,0x7172,0x7173,0x7182,0x7183,0x7192,0x7193,0x71a2,0x71a3,0x71b2,0x71b3, + 0x7202,0x7203,0x7212,0x7213,0x7222,0x7223,0x7232,0x7233,0x7242,0x7243,0x7252,0x7253,0x7262,0x7263,0x7272,0x7273,0x7282,0x7283,0x7292,0x7293,0x72a2,0x72a3,0x72b2,0x72b3, + 0x7302,0x7303,0x7312,0x7313,0x7322,0x7323,0x7332,0x7333,0x7342,0x7343,0x7352,0x7353,0x7362,0x7363,0x7372,0x7373,0x7382,0x7383,0x7392,0x7393,0x73a2,0x73a3,0x73b2,0x73b3, + 0x7402,0x7403,0x7412,0x7413,0x7422,0x7423,0x7432,0x7433,0x7442,0x7443,0x7452,0x7453,0x7462,0x7463,0x7472,0x7473,0x7482,0x7483,0x7492,0x7493, + 0x7502,0x7503,0x7512,0x7513,0x7522,0x7523,0x7532,0x7533,0x7542,0x7543,0x7552,0x7553,0x7562,0x7563,0x7572,0x7573,0x7582,0x7583,0x7592,0x7593, + 0x7602,0x7603,0x7612,0x7613,0x7622,0x7623,0x7632,0x7633,0x7642,0x7643,0x7652,0x7653,0x7662,0x7663,0x7672,0x7673,0x7682,0x7683,0x7692,0x7693, + 0x7702,0x7703,0x7712,0x7713,0x7722,0x7723,0x7732,0x7733,0x7742,0x7743,0x7752,0x7753, + 0x7802,0x7803,0x7812,0x7813,0x7822,0x7823,0x7832,0x7833,0x7842,0x7843,0x7852,0x7853, + 0x7902,0x7903,0x7912,0x7913,0x7922,0x7923,0x7932,0x7933,0x7942,0x7943,0x7952,0x7953, + 0x7a12,0x7a13,0x7a22,0x7a23,0x7a32,0x7a33, + 0x7b12,0x7b13,0x7b22,0x7b23,0x7b32,0x7b33, + + 0x7014,0x7015,0x7024,0x7025,0x7034,0x7035,0x7044,0x7045,0x7054,0x7055,0x7064,0x7065,0x7074,0x7075,0x7084,0x7085,0x7094,0x7095, + 0x7104,0x7105,0x7114,0x7115,0x7124,0x7125,0x7134,0x7135,0x7144,0x7145,0x7154,0x7155,0x7164,0x7165,0x7174,0x7175,0x7184,0x7185,0x7194,0x7195,0x71a4,0x71a5,0x71b4,0x71b5, + 0x7204,0x7205,0x7214,0x7215,0x7224,0x7225,0x7234,0x7235,0x7244,0x7245,0x7254,0x7255,0x7264,0x7265,0x7274,0x7275,0x7284,0x7285,0x7294,0x7295,0x72a4,0x72a5,0x72b4,0x72b5, + 0x7304,0x7305,0x7314,0x7315,0x7324,0x7325,0x7334,0x7335,0x7344,0x7345,0x7354,0x7355,0x7364,0x7365,0x7374,0x7375,0x7384,0x7385,0x7394,0x7395,0x73a4,0x73a5,0x73b4,0x73b5, + 0x7404,0x7405,0x7414,0x7415,0x7424,0x7425,0x7434,0x7435,0x7444,0x7445,0x7454,0x7455,0x7464,0x7465,0x7474,0x7475,0x7484,0x7485,0x7494,0x7495, + 0x7504,0x7505,0x7514,0x7515,0x7524,0x7525,0x7534,0x7535,0x7544,0x7545,0x7554,0x7555,0x7564,0x7565,0x7574,0x7575,0x7584,0x7585,0x7594,0x7595, + 0x7604,0x7605,0x7614,0x7615,0x7624,0x7625,0x7634,0x7635,0x7644,0x7645,0x7654,0x7655,0x7664,0x7665,0x7674,0x7675,0x7684,0x7685,0x7694,0x7695, + 0x7704,0x7705,0x7714,0x7715,0x7724,0x7725,0x7734,0x7735,0x7744,0x7745,0x7754,0x7755, + 0x7804,0x7805,0x7814,0x7815,0x7824,0x7825,0x7834,0x7835,0x7844,0x7845,0x7854,0x7855, + 0x7904,0x7905,0x7914,0x7915,0x7924,0x7925,0x7934,0x7935,0x7944,0x7945,0x7954,0x7955, + 0x7a14,0x7a15,0x7a24,0x7a25,0x7a34,0x7a35, + 0x7b14,0x7b15,0x7b24,0x7b25,0x7b34,0x7b35, + + 0x7016,0x7017,0x7026,0x7027,0x7036,0x7037,0x7046,0x7047,0x7056,0x7057,0x7066,0x7067, + 0x7106,0x7107,0x7116,0x7117,0x7126,0x7127,0x7136,0x7137,0x7146,0x7147,0x7156,0x7157,0x7166,0x7167,0x7176,0x7177,0x7186,0x7187,0x7196,0x7197, + 0x7206,0x7207,0x7216,0x7217,0x7226,0x7227,0x7236,0x7237,0x7246,0x7247,0x7256,0x7257,0x7266,0x7267,0x7276,0x7277,0x7286,0x7287,0x7296,0x7297, + 0x7306,0x7307,0x7316,0x7317,0x7326,0x7327,0x7336,0x7337,0x7346,0x7347,0x7356,0x7357,0x7366,0x7367,0x7376,0x7377,0x7386,0x7387,0x7396,0x7397, + 0x7406,0x7407,0x7416,0x7417,0x7426,0x7427,0x7436,0x7437,0x7446,0x7447,0x7456,0x7457,0x7466,0x7467,0x7476,0x7477,0x7486,0x7487,0x7496,0x7497, + 0x7506,0x7507,0x7516,0x7517,0x7526,0x7527,0x7536,0x7537,0x7546,0x7547,0x7556,0x7557,0x7566,0x7567,0x7576,0x7577,0x7586,0x7587,0x7596,0x7597, + 0x7606,0x7607,0x7616,0x7617,0x7626,0x7627,0x7636,0x7637,0x7646,0x7647,0x7656,0x7657,0x7666,0x7667,0x7676,0x7677,0x7686,0x7687,0x7696,0x7697, + 0x7706,0x7707,0x7716,0x7717,0x7726,0x7727,0x7736,0x7737,0x7746,0x7747,0x7756,0x7757, + 0x7806,0x7807,0x7816,0x7817,0x7826,0x7827,0x7836,0x7837,0x7846,0x7847,0x7856,0x7857, + 0x7906,0x7907,0x7916,0x7917,0x7926,0x7927,0x7936,0x7937,0x7946,0x7947,0x7956,0x7957, + 0x7a16,0x7a17,0x7a26,0x7a27,0x7a36,0x7a37, + 0x7b16,0x7b17,0x7b26,0x7b27,0x7b36,0x7b37, + + 0x8204,0x8206,0x8212,0x8213,0x8214,0x8215,0x8216,0x8217,0x8221,0x8222,0x8223,0x8224,0x8225,0x8226,0x8227,0x8228,0x8229, + 0x8231,0x8239,0x8241,0x8242,0x8243,0x8244,0x8245,0x8246,0x8247,0x8248,0x8249,0x824a,0x8252,0x8254,0x8256,0x8258,0x8259, + 0x8261,0x8262,0x8263,0x8264,0x8265,0x8266,0x8267,0x8268,0x8269,0x826a,0x8271,0x8279,0x8281,0x8282,0x8283,0x8284,0x8285,0x8286,0x8287,0x8288,0x8289, + 0x8292,0x8293,0x8294,0x8295,0x8296,0x8297,0x82a4,0x82a6, + + #quadratic bkpl + 0x8211,0x8250,0x8291,0x82a5,0x8298,0x825a,0x8218,0x8205, + 0x7860,0x7861,0x7870,0x7871,0x7760,0x7761,0x7770,0x7771, + 0x70a6,0x70a7,0x70b6,0x70b7,0x70a0,0x70a1,0x70b0,0x70b1, + 0x7a00,0x7a01,0x7b00,0x7b01,0x70b4,0x70b5, #0x70a4,0x70a5, + 0x7864,0x7865,0x7764,0x7765, #0x7874,0x7875,0x7774,0x7775, + 0x7b04,0x7b05,0x7b06,0x7b07, #0x7a04,0x7a05,0x7a06,0x7a07, + 0x7a02,0x7a03,0x7b02,0x7b03,0x70b2,0x70b3, #0x70a2,0x70a3, + 0x7762,0x7763,0x7772,0x7773,0x7862,0x7863,0x7872,0x7873, + 0x7766,0x7767,0x7776,0x7777,0x7866,0x7867,0x7876,0x7877, + + + 0x8251,0x8260,0x8240, + 0x71a6,0x71a7,0x71b6,0x71b7,0x71a0,0x71a1,0x71b0,0x71b1, + 0x72a6,0x72a7,0x72b6,0x72b7,0x72a0,0x72a1,0x72b0,0x72b1, + 0x73a6,0x73a7,0x73b6,0x73b7,0x73a0,0x73a1,0x73b0,0x73b1, + 0x7076,0x7077,0x7086,0x7087,0x7096,0x7097, + 0x7070,0x7071,0x7080,0x7081,0x7090,0x7091, + ); + + + my @other_boards =( + #cts + 0x0002,0x0003, + #central hub + 0x8000,0x8011,0x8012,0x8013,0x8014,0x8800, 0x8810, + #innerTOF +# 0x8d00,0x5d00,0x5d01,0x5d02,0x5d03,0x5d04,0x5d05, + 0x8d00,0x5d01,0x5d04, +# #Pion +# 0x8900,0x3800,0x3801, +# 0x8910,0x3810,0x3811, + #Start TRB3sc + 0x8880,0x5000,0x5001,0x5002,0x5003, + #Hodo TRB3 + 0x8890,0x5010,0x5011,0x5012, + #Trigger + 0x10,0x0100,0x0110,0x0120,0x130 + ); + + ###strip the register value + for (my $k = 0; $k < scalar @result; $k += 2) { + push @all_boards, $result[$k]; + } + + ###rich + my(%rich_mask, @rich_results); + $rich_results[$_] = [] foreach (0 .. 7); + foreach my $element (@all_boards) { $rich_mask{$element} |= 1 } + foreach my $element (@rich_boards) { $rich_mask{$element} |= 2 } + foreach my $element (@QA::rich_boards_removed) { $rich_mask{$element} |= 4 } + foreach my $element (keys %rich_mask) { +# push @{$rich_results[0]}, sprintf("0x%x",$element); + push @{$rich_results[$rich_mask{$element}]}, sprintf("0x%x",$element); + } + + my $num_rich_missing = (scalar @{$rich_results[2]}); + my $num_rich_mistake = (scalar @{$rich_results[4]}); + my @sorted_rich_results = sort @{$rich_results[2]}; + + + ### Check for lost boards + if ($num_rich_missing < 900 ) { ## do not check if RICH is off + open ($fh_missRich, ">>", "/tmp/rich_missing_boards_fast"); + if (!$fh_missRich) { + print STDERR "error opening temp file: /tmp/rich_missing_boards_fast\n"; + exit; + } + + foreach my $rich_element (@sorted_rich_results) { + ## check if board was already missing + my $foundBoard = 0; + foreach my $prev_rich_element (@prev_rich_miss) { + if ( $rich_element eq $prev_rich_element ) { + $foundBoard = 1; + last; + } + } + if ($foundBoard == 1 ) { + #print "already missing $rich_element \n"; + } else { + print $fh_missRich "new missing board $rich_element. ". QA::getTimeString()."\n"; + } + } + ### check for reconnected boards + foreach my $prev_rich_element(@prev_rich_miss) { + ## check if board was already missing + my $foundBoard = 0; + foreach my $rich_elements (@sorted_rich_results) { + if ( $rich_elements eq $prev_rich_element ) { + $foundBoard = 1; + last; + } + } + if ($foundBoard == 0 ) { + print $fh_missRich "board $prev_rich_element reconnected. ". QA::getTimeString()."\n"; + } + } + close $fh_missRich; + } + ### Store misisng boards for next check + @prev_rich_miss = @sorted_rich_results; + sleep(0.1); +} diff --git a/start/register_tdc.db b/start/register_tdc.db index 56a65c5..8f1bf40 100644 --- a/start/register_tdc.db +++ b/start/register_tdc.db @@ -19,9 +19,13 @@ 0x5001 3 0xffff00ff 0x0000fc00 0x5002 3 0xffff00ff 0x0000fc00 -0x5d00 3 0 0 +#0x5d00 3 0 0 0x5d01 3 0x7fff7fff 0x7fff -0x5d02 3 0 0 -0x5d03 3 0 0 +#0x5d02 3 0 0 +#0x5d03 3 0 0 0x5d04 3 0x7fff7fff 0x7fff -0x5d05 3 0 0 +#0x5d05 3 0 0 +0x5d00 3 0x7fff7fff 0x7fff +0x5d02 3 0x7fff7fff 0x7fff +0x5d03 3 0x7fff7fff 0x7fff +0x5d05 3 0x7fff7fff 0x7fff diff --git a/sts/startup.script b/sts/startup.script index d35cb91..bfa9e27 100644 --- a/sts/startup.script +++ b/sts/startup.script @@ -8,6 +8,10 @@ trbcmd w 0xfe4c 0x7114 0x00050000 #min number of words per board #Load TDC settings +#Unused FPGAs +trbcmd w 0x8b15 0xc0 0xff3 +trbcmd w 0x8b15 0xc1 0xff3 +trbcmd w 0x8b15 0xc3 0xff3 # load_register register_tdc_sts.db exec_cmd{local} /home/hadaq/trbsoft/daq/sts/loadregisterdb.pl /home/hadaq/trbsoft/daq/sts/register_tdc_sts.db diff --git a/trg/register_trigger.db b/trg/register_trigger.db index 3df3377..f9ed16f 100644 --- a/trg/register_trigger.db +++ b/trg/register_trigger.db @@ -81,6 +81,7 @@ 0x6465 200 0x0000ffff 0 0xffff0000 0 0 0 0 0 0x6474 200 0 0 0 0 0 0 0 0 0x6475 200 0 0 0 0 0 0 0 0 + 0x6472 200 0x0000ffff 0 0xffff0000 0 0 0x0000ffff 0x0000ffff 0 #output0 to central broken # 0x6452 200 0 0 0 0 0 0 0 0 #noisy at 23.12.20 # 0x6453 200 0 0 0 0 0 0 0 0 #noisy at 23.12.20 @@ -96,6 +97,9 @@ 0xfe40 200 0 0 0 0 0xffff 0 0xffff 0 0xfe40 201 0xffff 0 0 0 3 +#STS + 0x8b14 200 0 0 0 0 0xfeff 0 0xfeff 0 + #TOF, fRPC TDC: forward to central FPGA in groups of 16 0xfe47 200 0x0000ffff 0 0xffff0000 0 0 0x0000ffff 0xffffffff 0 0x6810 100 0xF 0 0x30000 0x400 #mult2 for PMT signals @@ -170,7 +174,7 @@ #Setup 3: or of all STS boards on output 3 #Setup 4: from fRPC (PMT mult2 plus both ends of RPC) - 0x0100 200 0 0x00003e3e 0x40000 0 0x00000037 0x000f0000 0x00000c00 0 + 0x0100 200 0 0x00003e3e 0x40000 0 0x0000003f 0x000f0000 0x00000c00 0 0x0100 201 0 0x00003e3e 0 0 0 diff --git a/trg/triggerbox.trbcmd b/trg/triggerbox.trbcmd new file mode 120000 index 0000000..a6605bb --- /dev/null +++ b/trg/triggerbox.trbcmd @@ -0,0 +1 @@ +triggerbox_itof.trbcmd \ No newline at end of file diff --git a/trg/triggerbox_first.trbcmd b/trg/triggerbox_first.trbcmd new file mode 100644 index 0000000..9a0c655 --- /dev/null +++ b/trg/triggerbox_first.trbcmd @@ -0,0 +1,376 @@ +w 0x0010 40960 0x00000000 +w 0x0010 40961 0x00000000 +w 0x0010 40962 0x00000000 +w 0x0010 40963 0x00000000 +w 0x0010 40964 0x00000000 +w 0x0010 40965 0x00540112 +w 0x0010 40966 0x00540112 +w 0x0010 40967 0x00540112 +w 0x0010 40968 0x00000000 +w 0x0010 40969 0x00000000 +w 0x0010 40970 0x00000000 +w 0x0010 40971 0x00000000 +w 0x0010 40972 0x00000000 +w 0x0010 40973 0x00000000 +w 0x0010 40974 0x00000000 +w 0x0010 40975 0x00000000 +w 0x0010 40976 0x00000000 +w 0x0010 40977 0x004c0112 +w 0x0010 40978 0x004c0112 +w 0x0010 40979 0x004c0112 +w 0x0010 40980 0x00000000 +w 0x0010 40981 0x00000000 +w 0x0010 40982 0x00000000 +w 0x0010 40983 0x00000000 +w 0x0010 40984 0x00000002 +w 0x0010 40985 0x00000002 +w 0x0010 40986 0x00000002 +w 0x0010 40987 0x00000002 +w 0x0010 40988 0x00000000 +w 0x0010 40989 0x00000000 +w 0x0010 40990 0x00000000 +w 0x0010 40991 0x00000000 +w 0x0010 40992 0x00000192 +w 0x0010 40993 0x00000192 +w 0x0010 40994 0x00000192 +w 0x0010 40995 0x00000192 +w 0x0010 40996 0x00000192 +w 0x0010 40997 0x00000192 +w 0x0010 40998 0x00000000 +w 0x0010 40999 0x00000000 +w 0x0010 41000 0x00000192 +w 0x0010 41001 0x00000182 +w 0x0010 41002 0x00000192 +w 0x0010 41003 0x00000192 +w 0x0010 41004 0x00000000 +w 0x0010 41005 0x00000182 +w 0x0010 41006 0x00000192 +w 0x0010 41007 0x00000000 +w 0x0010 41008 0x00000006 +w 0x0010 41009 0x00000006 +w 0x0010 41010 0x00000006 +w 0x0010 41011 0x00000000 +w 0x0010 41012 0x00000000 +w 0x0010 41013 0x00000000 +w 0x0010 41014 0x00000000 +w 0x0010 41015 0x00000000 +w 0x0010 41016 0x00000002 +w 0x0010 41017 0x00000002 +w 0x0010 41018 0x00000002 +w 0x0010 41019 0x00000002 +w 0x0010 41020 0x00000000 +w 0x0010 41021 0x00000000 +w 0x0010 41022 0x00000000 +w 0x0010 41023 0x00000000 +w 0x0010 41024 0x00000000 +w 0x0010 41025 0x00000000 +w 0x0010 41026 0x00000000 +w 0x0010 41027 0x00000000 +w 0x0010 41028 0x00000000 +w 0x0010 41029 0x00000000 +w 0x0010 41030 0x00000000 +w 0x0010 41031 0x00000000 +w 0x0010 41032 0x00000000 +w 0x0010 41033 0x00000000 +w 0x0010 41034 0x00000000 +w 0x0010 41035 0x00000000 +w 0x0010 41036 0x00000000 +w 0x0010 41037 0x00000000 +w 0x0010 41038 0x00000000 +w 0x0010 41039 0x00000000 +w 0x0010 41088 0x0000000e +w 0x0010 41089 0x00000000 +w 0x0010 41090 0x00000000 +w 0x0010 41091 0x00000000 +w 0x0010 41092 0x000000e0 +w 0x0010 41093 0x00000000 +w 0x0010 41094 0x00000000 +w 0x0010 41095 0x00000000 +w 0x0010 41096 0x00000e00 +w 0x0010 41097 0x00000000 +w 0x0010 41098 0x00000000 +w 0x0010 41099 0x00000000 +w 0x0010 41100 0x0000e000 +w 0x0010 41101 0x00000000 +w 0x0010 41102 0x00000000 +w 0x0010 41103 0x00000000 +w 0x0010 41104 0x000e0000 +w 0x0010 41105 0x00000000 +w 0x0010 41106 0x00000000 +w 0x0010 41107 0x00000000 +w 0x0010 41108 0x00e00000 +w 0x0010 41109 0x00000000 +w 0x0010 41110 0x00000000 +w 0x0010 41111 0x00000000 +w 0x0010 41112 0x00000000 +w 0x0010 41113 0x00000000 +w 0x0010 41114 0x00000000 +w 0x0010 41115 0x00000000 +w 0x0010 41116 0x00000000 +w 0x0010 41117 0x00002010 +w 0x0010 41118 0x00000000 +w 0x0010 41119 0x00000000 +w 0x0010 41120 0x00000000 +w 0x0010 41121 0x00000202 +w 0x0010 41122 0x00000000 +w 0x0010 41123 0x00000000 +w 0x0010 41124 0x00000000 +w 0x0010 41125 0x00000000 +w 0x0010 41126 0x00000000 +w 0x0010 41127 0x00000000 +w 0x0010 41128 0x00000000 +w 0x0010 41129 0x00000000 +w 0x0010 41130 0x00000000 +w 0x0010 41131 0x00000000 +w 0x0010 41132 0x00000000 +w 0x0010 41133 0x00000000 +w 0x0010 41134 0x00000000 +w 0x0010 41135 0x00000000 +w 0x0010 41136 0x00000000 +w 0x0010 41137 0x00000000 +w 0x0010 41138 0x00000000 +w 0x0010 41139 0x00000000 +w 0x0010 41140 0x00000000 +w 0x0010 41141 0x00000000 +w 0x0010 41142 0x00000000 +w 0x0010 41143 0x00000000 +w 0x0010 41144 0x00000000 +w 0x0010 41145 0x00000000 +w 0x0010 41146 0x00000000 +w 0x0010 41147 0x00000000 +w 0x0010 41148 0x00000000 +w 0x0010 41149 0x00000000 +w 0x0010 41150 0x00000000 +w 0x0010 41151 0x00000000 +w 0x0010 41216 0x00000050 +w 0x0010 41217 0x00000051 +w 0x0010 41218 0x00000052 +w 0x0010 41219 0x00000000 +w 0x0010 41220 0x00000000 +w 0x0010 41221 0x00000000 +w 0x0010 41222 0x00000000 +w 0x0010 41223 0x00000000 +w 0x0010 41224 0x0000003b +w 0x0010 41225 0x0000003f +w 0x0010 41226 0x0000004b +w 0x0010 41227 0x0000004f +w 0x0010 41228 0x00000000 +w 0x0010 41229 0x00000000 +w 0x0010 41230 0x00000000 +w 0x0010 41231 0x00000000 +w 0x0010 41232 0x00000000 +w 0x0010 41233 0x00000000 +w 0x0010 41234 0x00000000 +w 0x0010 41235 0x00000000 +w 0x0010 41236 0x00000000 +w 0x0010 41237 0x00000000 +w 0x0010 41238 0x00000000 +w 0x0010 41239 0x00000000 +w 0x0010 41240 0x00000000 +w 0x0010 41241 0x00000000 +w 0x0010 41242 0x00000000 +w 0x0010 41243 0x00000000 +w 0x0010 41244 0x00000000 +w 0x0010 41245 0x00000000 +w 0x0010 41246 0x00000000 +w 0x0010 41247 0x00000000 +w 0x0010 41248 0x00502820 +w 0x0010 41249 0x78512921 +w 0x0010 41250 0x00522a22 +w 0x0010 41251 0x00532b23 +w 0x0010 41252 0x78542d24 +w 0x0010 41253 0x00552e25 +w 0x0010 41254 0x00000000 +w 0x0010 41255 0x00000000 +w 0x0010 41256 0x00000000 +w 0x0010 41257 0x00000000 +w 0x0010 41258 0x00000000 +w 0x0010 41259 0x00000000 +w 0x0010 41260 0x00000000 +w 0x0010 41261 0x00000000 +w 0x0010 41262 0x00000000 +w 0x0010 41263 0x68300019 +w 0x0010 41280 0x00000001 +w 0x0010 41281 0x00000002 +w 0x0010 41282 0x00000000 +w 0x0010 41283 0x00000000 +w 0x0010 41284 0x00000000 +w 0x0010 41285 0x00000000 +w 0x0010 41286 0x00000000 +w 0x0010 41287 0x00000000 +w 0x0010 41312 0x00000079 +w 0x0010 41313 0x00000090 +w 0x0010 41314 0x00000091 +w 0x0010 41315 0x000000cf +w 0x0010 41316 0x00000088 +w 0x0010 41317 0x0000008a +w 0x0010 41318 0x0000008b +w 0x0010 41319 0x00000084 +w 0x0010 41320 0x0000008d +w 0x0010 41321 0x000000b1 +w 0x0010 41322 0x000000b4 +w 0x0010 41323 0x000000d1 +w 0x0010 41324 0x00000081 +w 0x0010 41325 0x00000089 +w 0x0010 41326 0x000000c1 +w 0x0010 41327 0x000000c4 +w 0x0010 41344 0x00000000 +w 0x0010 41345 0x000e00e0 +w 0x0010 41346 0x00000000 +w 0x0010 41347 0x00000000 +w 0x0010 41348 0x003f0000 +w 0x0010 41349 0x00000000 +w 0x0010 41350 0x00000000 +w 0x0010 41351 0x00000000 +w 0x0010 41352 0x00000000 +w 0x0010 41353 0x00000000 +w 0x0010 41354 0x00000000 +w 0x0010 41355 0x00000000 +w 0x0010 41356 0x00000000 +w 0x0010 41357 0x00000000 +w 0x0010 41358 0x00000000 +w 0x0010 41359 0x00000000 +w 0x0010 41360 0x00000000 +w 0x0010 41361 0x00000000 +w 0x0010 41362 0x00000000 +w 0x0010 41363 0x00000000 +w 0x0010 41364 0x00000000 +w 0x0010 41365 0x00000000 +w 0x0010 41366 0x00000000 +w 0x0010 41367 0x00000000 +w 0x0010 41368 0x00000000 +w 0x0010 41369 0x00000000 +w 0x0010 41370 0x00000000 +w 0x0010 41371 0x00000000 +w 0x0010 41372 0x00000000 +w 0x0010 41373 0x00000000 +w 0x0010 41374 0x00000000 +w 0x0010 41375 0x00000000 +w 0x0010 41472 0x00000000 +w 0x0010 41473 0x00010000 +w 0x0010 41474 0x00000000 +w 0x0010 41475 0x00000000 +w 0x0010 41476 0x00000000 +w 0x0010 41477 0x00000000 +w 0x0010 41478 0x00000000 +w 0x0010 41479 0x00000000 +w 0x0010 41480 0x00000000 +w 0x0010 41481 0x00020000 +w 0x0010 41482 0x00000000 +w 0x0010 41483 0x00000000 +w 0x0010 41484 0x00000000 +w 0x0010 41485 0x00000000 +w 0x0010 41486 0x00000000 +w 0x0010 41487 0x00000000 +w 0x0010 41488 0x00000000 +w 0x0010 41489 0x00040000 +w 0x0010 41490 0x00000000 +w 0x0010 41491 0x00000000 +w 0x0010 41492 0x00000000 +w 0x0010 41493 0x00000000 +w 0x0010 41494 0x00000000 +w 0x0010 41495 0x00000000 +w 0x0010 41496 0x00000000 +w 0x0010 41497 0x00000000 +w 0x0010 41498 0x00000000 +w 0x0010 41499 0x00000002 +w 0x0010 41500 0x00000000 +w 0x0010 41501 0x00000000 +w 0x0010 41502 0x00000000 +w 0x0010 41503 0x00000000 +w 0x0010 41504 0x02000000 +w 0x0010 41505 0x00000000 +w 0x0010 41506 0x00000000 +w 0x0010 41507 0x00000000 +w 0x0010 41508 0x00000000 +w 0x0010 41509 0x00000000 +w 0x0010 41510 0x00000000 +w 0x0010 41511 0x00000000 +w 0x0010 41512 0x00000000 +w 0x0010 41513 0x0f000000 +w 0x0010 41514 0x00000000 +w 0x0010 41515 0x00000000 +w 0x0010 41516 0x00000000 +w 0x0010 41517 0x00000000 +w 0x0010 41518 0x00000000 +w 0x0010 41519 0x00000000 +w 0x0010 41520 0x04000000 +w 0x0010 41521 0x00000000 +w 0x0010 41522 0x00000000 +w 0x0010 41523 0x00000000 +w 0x0010 41524 0x00000000 +w 0x0010 41525 0x00000000 +w 0x0010 41526 0x00000000 +w 0x0010 41527 0x00000000 +w 0x0010 41528 0x08000000 +w 0x0010 41529 0x00000000 +w 0x0010 41530 0x00000000 +w 0x0010 41531 0x00000000 +w 0x0010 41532 0x00000000 +w 0x0010 41533 0x00000000 +w 0x0010 41534 0x00000000 +w 0x0010 41535 0x00000000 +w 0x0010 41728 0x00000000 +w 0x0010 41729 0x00010000 +w 0x0010 41730 0x00000000 +w 0x0010 41731 0x00000000 +w 0x0010 41732 0x00000000 +w 0x0010 41733 0x00000000 +w 0x0010 41734 0x00000000 +w 0x0010 41735 0x00000000 +w 0x0010 41736 0x00000000 +w 0x0010 41737 0x00020000 +w 0x0010 41738 0x00000000 +w 0x0010 41739 0x00000000 +w 0x0010 41740 0x00000000 +w 0x0010 41741 0x00000000 +w 0x0010 41742 0x00000000 +w 0x0010 41743 0x00000000 +w 0x0010 41744 0x00000000 +w 0x0010 41745 0x00040000 +w 0x0010 41746 0x00000000 +w 0x0010 41747 0x00000000 +w 0x0010 41748 0x00000000 +w 0x0010 41749 0x00000000 +w 0x0010 41750 0x00000000 +w 0x0010 41751 0x00000000 +w 0x0010 41752 0x00000000 +w 0x0010 41753 0x00000000 +w 0x0010 41754 0x00000000 +w 0x0010 41755 0x00000002 +w 0x0010 41756 0x00000000 +w 0x0010 41757 0x00000000 +w 0x0010 41758 0x00000000 +w 0x0010 41759 0x00000000 +w 0x0010 41760 0x02000000 +w 0x0010 41761 0x00000000 +w 0x0010 41762 0x00000000 +w 0x0010 41763 0x00000000 +w 0x0010 41764 0x00000000 +w 0x0010 41765 0x00000000 +w 0x0010 41766 0x00000000 +w 0x0010 41767 0x00000000 +w 0x0010 41768 0x00000000 +w 0x0010 41769 0x0f000000 +w 0x0010 41770 0x00000000 +w 0x0010 41771 0x00000000 +w 0x0010 41772 0x00000000 +w 0x0010 41773 0x00000000 +w 0x0010 41774 0x00000000 +w 0x0010 41775 0x00000000 +w 0x0010 41776 0x04000000 +w 0x0010 41777 0x00000000 +w 0x0010 41778 0x00000000 +w 0x0010 41779 0x00000000 +w 0x0010 41780 0x00000000 +w 0x0010 41781 0x00000000 +w 0x0010 41782 0x00000000 +w 0x0010 41783 0x00000000 +w 0x0010 41784 0x08000000 +w 0x0010 41785 0x00000000 +w 0x0010 41786 0x00000000 +w 0x0010 41787 0x00000000 +w 0x0010 41788 0x00000000 +w 0x0010 41789 0x00000000 +w 0x0010 41790 0x00000000 +w 0x0010 41791 0x00000000 diff --git a/trg/triggerbox_itof.trbcmd b/trg/triggerbox_itof.trbcmd new file mode 100644 index 0000000..84ec1ce --- /dev/null +++ b/trg/triggerbox_itof.trbcmd @@ -0,0 +1,376 @@ +w 0x0010 40960 0x00000000 +w 0x0010 40961 0x00000000 +w 0x0010 40962 0x00000000 +w 0x0010 40963 0x00000000 +w 0x0010 40964 0x00000000 +w 0x0010 40965 0x00540112 +w 0x0010 40966 0x00540112 +w 0x0010 40967 0x00540112 +w 0x0010 40968 0x00000000 +w 0x0010 40969 0x00000000 +w 0x0010 40970 0x00000000 +w 0x0010 40971 0x00000000 +w 0x0010 40972 0x00000000 +w 0x0010 40973 0x00000000 +w 0x0010 40974 0x00000000 +w 0x0010 40975 0x00000000 +w 0x0010 40976 0x00000000 +w 0x0010 40977 0x004c0112 +w 0x0010 40978 0x004c0112 +w 0x0010 40979 0x004c0112 +w 0x0010 40980 0x00000000 +w 0x0010 40981 0x00000000 +w 0x0010 40982 0x00000000 +w 0x0010 40983 0x00000000 +w 0x0010 40984 0x00000002 +w 0x0010 40985 0x0000000a +w 0x0010 40986 0x00000002 +w 0x0010 40987 0x00000002 +w 0x0010 40988 0x00000000 +w 0x0010 40989 0x00000000 +w 0x0010 40990 0x00000000 +w 0x0010 40991 0x00000000 +w 0x0010 40992 0x0000019a +w 0x0010 40993 0x0000019a +w 0x0010 40994 0x0000019a +w 0x0010 40995 0x0000019a +w 0x0010 40996 0x0000019a +w 0x0010 40997 0x0000019a +w 0x0010 40998 0x00000000 +w 0x0010 40999 0x00000000 +w 0x0010 41000 0x0004019a +w 0x0010 41001 0x000c019a +w 0x0010 41002 0x0004019a +w 0x0010 41003 0x0004019a +w 0x0010 41004 0x00000000 +w 0x0010 41005 0x000c019a +w 0x0010 41006 0x0004019a +w 0x0010 41007 0x00000000 +w 0x0010 41008 0x00380002 +w 0x0010 41009 0x00000006 +w 0x0010 41010 0x00000006 +w 0x0010 41011 0x00000000 +w 0x0010 41012 0x00000000 +w 0x0010 41013 0x00000000 +w 0x0010 41014 0x00000000 +w 0x0010 41015 0x00000000 +w 0x0010 41016 0x00000002 +w 0x0010 41017 0x00000002 +w 0x0010 41018 0x00000002 +w 0x0010 41019 0x00000002 +w 0x0010 41020 0x00000000 +w 0x0010 41021 0x00000000 +w 0x0010 41022 0x00000000 +w 0x0010 41023 0x00000000 +w 0x0010 41024 0x00000000 +w 0x0010 41025 0x00000000 +w 0x0010 41026 0x00000000 +w 0x0010 41027 0x00000000 +w 0x0010 41028 0x00000000 +w 0x0010 41029 0x00000000 +w 0x0010 41030 0x00000000 +w 0x0010 41031 0x00000000 +w 0x0010 41032 0x00000000 +w 0x0010 41033 0x00000000 +w 0x0010 41034 0x00000000 +w 0x0010 41035 0x00000000 +w 0x0010 41036 0x00000000 +w 0x0010 41037 0x00000000 +w 0x0010 41038 0x00000000 +w 0x0010 41039 0x00000000 +w 0x0010 41088 0x0000000e +w 0x0010 41089 0x00000000 +w 0x0010 41090 0x00000000 +w 0x0010 41091 0x00000000 +w 0x0010 41092 0x000000e0 +w 0x0010 41093 0x00000000 +w 0x0010 41094 0x00000000 +w 0x0010 41095 0x00000000 +w 0x0010 41096 0x00000e00 +w 0x0010 41097 0x00000000 +w 0x0010 41098 0x00000000 +w 0x0010 41099 0x00000000 +w 0x0010 41100 0x0000e000 +w 0x0010 41101 0x00000000 +w 0x0010 41102 0x00000000 +w 0x0010 41103 0x00000000 +w 0x0010 41104 0x000e0000 +w 0x0010 41105 0x00000000 +w 0x0010 41106 0x00000000 +w 0x0010 41107 0x00000000 +w 0x0010 41108 0x00e00000 +w 0x0010 41109 0x00000000 +w 0x0010 41110 0x00000000 +w 0x0010 41111 0x00000000 +w 0x0010 41112 0x00000000 +w 0x0010 41113 0x00000000 +w 0x0010 41114 0x00000000 +w 0x0010 41115 0x00000000 +w 0x0010 41116 0x00000000 +w 0x0010 41117 0x00002010 +w 0x0010 41118 0x00000000 +w 0x0010 41119 0x00000000 +w 0x0010 41120 0x00000000 +w 0x0010 41121 0x00000202 +w 0x0010 41122 0x00000000 +w 0x0010 41123 0x00000000 +w 0x0010 41124 0x00000000 +w 0x0010 41125 0x00000000 +w 0x0010 41126 0x00000000 +w 0x0010 41127 0x00000000 +w 0x0010 41128 0x00000000 +w 0x0010 41129 0x00000000 +w 0x0010 41130 0x00000000 +w 0x0010 41131 0x00000000 +w 0x0010 41132 0x00000000 +w 0x0010 41133 0x00000000 +w 0x0010 41134 0x00000000 +w 0x0010 41135 0x00000000 +w 0x0010 41136 0x00000000 +w 0x0010 41137 0x00000000 +w 0x0010 41138 0x00000000 +w 0x0010 41139 0x00000000 +w 0x0010 41140 0x00000000 +w 0x0010 41141 0x00000000 +w 0x0010 41142 0x00000000 +w 0x0010 41143 0x00000000 +w 0x0010 41144 0x00000000 +w 0x0010 41145 0x00000000 +w 0x0010 41146 0x00000000 +w 0x0010 41147 0x00000000 +w 0x0010 41148 0x00000000 +w 0x0010 41149 0x00000000 +w 0x0010 41150 0x00000000 +w 0x0010 41151 0x00000000 +w 0x0010 41216 0x00000050 +w 0x0010 41217 0x00000051 +w 0x0010 41218 0x00000052 +w 0x0010 41219 0x00000000 +w 0x0010 41220 0x00000000 +w 0x0010 41221 0x00000000 +w 0x0010 41222 0x00000000 +w 0x0010 41223 0x00000000 +w 0x0010 41224 0x0000003b +w 0x0010 41225 0x0000003f +w 0x0010 41226 0x0000004b +w 0x0010 41227 0x0000004f +w 0x0010 41228 0x00000000 +w 0x0010 41229 0x00000000 +w 0x0010 41230 0x00000000 +w 0x0010 41231 0x00000000 +w 0x0010 41232 0x00000000 +w 0x0010 41233 0x00000000 +w 0x0010 41234 0x00000000 +w 0x0010 41235 0x00000000 +w 0x0010 41236 0x00000000 +w 0x0010 41237 0x00000000 +w 0x0010 41238 0x00000000 +w 0x0010 41239 0x00000000 +w 0x0010 41240 0x00000000 +w 0x0010 41241 0x00000000 +w 0x0010 41242 0x00000000 +w 0x0010 41243 0x00000000 +w 0x0010 41244 0x00000000 +w 0x0010 41245 0x00000000 +w 0x0010 41246 0x00000000 +w 0x0010 41247 0x00000000 +w 0x0010 41248 0x00502820 +w 0x0010 41249 0x78512921 +w 0x0010 41250 0x00522a22 +w 0x0010 41251 0x00532b23 +w 0x0010 41252 0x78542d24 +w 0x0010 41253 0x00552e25 +w 0x0010 41254 0x00000000 +w 0x0010 41255 0x00000000 +w 0x0010 41256 0x00000000 +w 0x0010 41257 0x00000000 +w 0x0010 41258 0x00000000 +w 0x0010 41259 0x00000000 +w 0x0010 41260 0x00000000 +w 0x0010 41261 0x00000000 +w 0x0010 41262 0x00000000 +w 0x0010 41263 0x68300019 +w 0x0010 41280 0x00000001 +w 0x0010 41281 0x00000002 +w 0x0010 41282 0x00000000 +w 0x0010 41283 0x00000000 +w 0x0010 41284 0x00000000 +w 0x0010 41285 0x00000000 +w 0x0010 41286 0x00000000 +w 0x0010 41287 0x00000000 +w 0x0010 41312 0x00000079 +w 0x0010 41313 0x000000d8 +w 0x0010 41314 0x000000da +w 0x0010 41315 0x000000df +w 0x0010 41316 0x000000d1 +w 0x0010 41317 0x00000000 +w 0x0010 41318 0x000000b4 +w 0x0010 41319 0x00000084 +w 0x0010 41320 0x0000008d +w 0x0010 41321 0x000000c4 +w 0x0010 41322 0x000000d4 +w 0x0010 41323 0x000000b1 +w 0x0010 41324 0x00000081 +w 0x0010 41325 0x00000089 +w 0x0010 41326 0x000000c1 +w 0x0010 41327 0x000000d1 +w 0x0010 41344 0x00000000 +w 0x0010 41345 0x000e00e0 +w 0x0010 41346 0x00000000 +w 0x0010 41347 0x00000000 +w 0x0010 41348 0x003f0000 +w 0x0010 41349 0x00000000 +w 0x0010 41350 0x00000000 +w 0x0010 41351 0x00000000 +w 0x0010 41352 0x00000000 +w 0x0010 41353 0x00000000 +w 0x0010 41354 0x00000000 +w 0x0010 41355 0x00000000 +w 0x0010 41356 0x00000000 +w 0x0010 41357 0x00000000 +w 0x0010 41358 0x00000000 +w 0x0010 41359 0x00000000 +w 0x0010 41360 0x00000000 +w 0x0010 41361 0x00000000 +w 0x0010 41362 0x00000000 +w 0x0010 41363 0x00000000 +w 0x0010 41364 0x00000000 +w 0x0010 41365 0x00000000 +w 0x0010 41366 0x00000000 +w 0x0010 41367 0x00000000 +w 0x0010 41368 0x00000000 +w 0x0010 41369 0x00000000 +w 0x0010 41370 0x00000000 +w 0x0010 41371 0x00000000 +w 0x0010 41372 0x00000000 +w 0x0010 41373 0x00000000 +w 0x0010 41374 0x00000000 +w 0x0010 41375 0x00000000 +w 0x0010 41472 0x00000000 +w 0x0010 41473 0x00010000 +w 0x0010 41474 0x00000000 +w 0x0010 41475 0x00000000 +w 0x0010 41476 0x00000000 +w 0x0010 41477 0x00000000 +w 0x0010 41478 0x00000000 +w 0x0010 41479 0x00000000 +w 0x0010 41480 0x00000000 +w 0x0010 41481 0x00020000 +w 0x0010 41482 0x00000000 +w 0x0010 41483 0x00000000 +w 0x0010 41484 0x00000000 +w 0x0010 41485 0x00000000 +w 0x0010 41486 0x00000000 +w 0x0010 41487 0x00000000 +w 0x0010 41488 0x00000000 +w 0x0010 41489 0x00000000 +w 0x0010 41490 0x00020000 +w 0x0010 41491 0x00000000 +w 0x0010 41492 0x00000000 +w 0x0010 41493 0x00000000 +w 0x0010 41494 0x00000000 +w 0x0010 41495 0x00000000 +w 0x0010 41496 0x00000000 +w 0x0010 41497 0x00000000 +w 0x0010 41498 0x00000000 +w 0x0010 41499 0x00000002 +w 0x0010 41500 0x00000000 +w 0x0010 41501 0x00000000 +w 0x0010 41502 0x00000000 +w 0x0010 41503 0x00000000 +w 0x0010 41504 0x02000000 +w 0x0010 41505 0x00000000 +w 0x0010 41506 0x00000000 +w 0x0010 41507 0x00000000 +w 0x0010 41508 0x00000000 +w 0x0010 41509 0x00000000 +w 0x0010 41510 0x00000000 +w 0x0010 41511 0x00000000 +w 0x0010 41512 0x00000000 +w 0x0010 41513 0x0f000000 +w 0x0010 41514 0x00000000 +w 0x0010 41515 0x00000000 +w 0x0010 41516 0x00000000 +w 0x0010 41517 0x00000000 +w 0x0010 41518 0x00000000 +w 0x0010 41519 0x00000000 +w 0x0010 41520 0x04000000 +w 0x0010 41521 0x00000000 +w 0x0010 41522 0x00000000 +w 0x0010 41523 0x00000000 +w 0x0010 41524 0x00000000 +w 0x0010 41525 0x00000000 +w 0x0010 41526 0x00000000 +w 0x0010 41527 0x00000000 +w 0x0010 41528 0x08000000 +w 0x0010 41529 0x00000000 +w 0x0010 41530 0x00000000 +w 0x0010 41531 0x00000000 +w 0x0010 41532 0x00000000 +w 0x0010 41533 0x00000000 +w 0x0010 41534 0x00000000 +w 0x0010 41535 0x00000000 +w 0x0010 41728 0x00000000 +w 0x0010 41729 0x00010000 +w 0x0010 41730 0x00000000 +w 0x0010 41731 0x00000000 +w 0x0010 41732 0x00000000 +w 0x0010 41733 0x00000000 +w 0x0010 41734 0x00000000 +w 0x0010 41735 0x00000000 +w 0x0010 41736 0x00000000 +w 0x0010 41737 0x00020000 +w 0x0010 41738 0x00000000 +w 0x0010 41739 0x00000000 +w 0x0010 41740 0x00000000 +w 0x0010 41741 0x00000000 +w 0x0010 41742 0x00000000 +w 0x0010 41743 0x00000000 +w 0x0010 41744 0x00000000 +w 0x0010 41745 0x00000000 +w 0x0010 41746 0x00020000 +w 0x0010 41747 0x00000000 +w 0x0010 41748 0x00000000 +w 0x0010 41749 0x00000000 +w 0x0010 41750 0x00000000 +w 0x0010 41751 0x00000000 +w 0x0010 41752 0x00000000 +w 0x0010 41753 0x00000000 +w 0x0010 41754 0x00000000 +w 0x0010 41755 0x00000002 +w 0x0010 41756 0x00000000 +w 0x0010 41757 0x00000000 +w 0x0010 41758 0x00000000 +w 0x0010 41759 0x00000000 +w 0x0010 41760 0x02000000 +w 0x0010 41761 0x00000000 +w 0x0010 41762 0x00000000 +w 0x0010 41763 0x00000000 +w 0x0010 41764 0x00000000 +w 0x0010 41765 0x00000000 +w 0x0010 41766 0x00000000 +w 0x0010 41767 0x00000000 +w 0x0010 41768 0x00000000 +w 0x0010 41769 0x0f000000 +w 0x0010 41770 0x00000000 +w 0x0010 41771 0x00000000 +w 0x0010 41772 0x00000000 +w 0x0010 41773 0x00000000 +w 0x0010 41774 0x00000000 +w 0x0010 41775 0x00000000 +w 0x0010 41776 0x04000000 +w 0x0010 41777 0x00000000 +w 0x0010 41778 0x00000000 +w 0x0010 41779 0x00000000 +w 0x0010 41780 0x00000000 +w 0x0010 41781 0x00000000 +w 0x0010 41782 0x00000000 +w 0x0010 41783 0x00000000 +w 0x0010 41784 0x08000000 +w 0x0010 41785 0x00000000 +w 0x0010 41786 0x00000000 +w 0x0010 41787 0x00000000 +w 0x0010 41788 0x00000000 +w 0x0010 41789 0x00000000 +w 0x0010 41790 0x00000000 +w 0x0010 41791 0x00000000 diff --git a/trg/triggerbox_itofmult.trbcmd b/trg/triggerbox_itofmult.trbcmd new file mode 100644 index 0000000..ba13f93 --- /dev/null +++ b/trg/triggerbox_itofmult.trbcmd @@ -0,0 +1,248 @@ +w 0x0010 40960 0x00000000 +w 0x0010 40961 0x00000000 +w 0x0010 40962 0x00000000 +w 0x0010 40963 0x00000000 +w 0x0010 40964 0x00000000 +w 0x0010 40965 0x00000002 +w 0x0010 40966 0x00000002 +w 0x0010 40967 0x00000002 +w 0x0010 40968 0x00000000 +w 0x0010 40969 0x00000000 +w 0x0010 40970 0x00000000 +w 0x0010 40971 0x00000000 +w 0x0010 40972 0x00000000 +w 0x0010 40973 0x00000000 +w 0x0010 40974 0x00000000 +w 0x0010 40975 0x00000000 +w 0x0010 40976 0x00000000 +w 0x0010 40977 0x00000002 +w 0x0010 40978 0x00000002 +w 0x0010 40979 0x00000002 +w 0x0010 40980 0x00000000 +w 0x0010 40981 0x00000000 +w 0x0010 40982 0x00000000 +w 0x0010 40983 0x00000000 +w 0x0010 40984 0x00000002 +w 0x0010 40985 0x00000002 +w 0x0010 40986 0x00000002 +w 0x0010 40987 0x00000002 +w 0x0010 40988 0x00000000 +w 0x0010 40989 0x00000000 +w 0x0010 40990 0x00000000 +w 0x0010 40991 0x00000000 +w 0x0010 40992 0x00000000 +w 0x0010 40993 0x00000000 +w 0x0010 40994 0x00000000 +w 0x0010 40995 0x00000000 +w 0x0010 40996 0x00000000 +w 0x0010 40997 0x00000000 +w 0x0010 40998 0x00000000 +w 0x0010 40999 0x00000000 +w 0x0010 41000 0x00000000 +w 0x0010 41001 0x00000000 +w 0x0010 41002 0x00000000 +w 0x0010 41003 0x00000000 +w 0x0010 41004 0x00000000 +w 0x0010 41005 0x00000000 +w 0x0010 41006 0x00000000 +w 0x0010 41007 0x00000000 +w 0x0010 41008 0x00000002 +w 0x0010 41009 0x00000002 +w 0x0010 41010 0x00000002 +w 0x0010 41011 0x00000000 +w 0x0010 41012 0x00000000 +w 0x0010 41013 0x00000000 +w 0x0010 41014 0x00000000 +w 0x0010 41015 0x00000000 +w 0x0010 41016 0x00000002 +w 0x0010 41017 0x00000002 +w 0x0010 41018 0x00000000 +w 0x0010 41019 0x00000000 +w 0x0010 41020 0x00000000 +w 0x0010 41021 0x00000000 +w 0x0010 41022 0x00000000 +w 0x0010 41023 0x00000001 +w 0x0010 41024 0x00000000 +w 0x0010 41025 0x00000000 +w 0x0010 41026 0x00000000 +w 0x0010 41027 0x00000000 +w 0x0010 41028 0x00000000 +w 0x0010 41029 0x00000000 +w 0x0010 41030 0x00000000 +w 0x0010 41031 0x00000000 +w 0x0010 41032 0x00000000 +w 0x0010 41033 0x00000000 +w 0x0010 41034 0x00000000 +w 0x0010 41035 0x00000000 +w 0x0010 41036 0x00000000 +w 0x0010 41037 0x00000000 +w 0x0010 41038 0x00000000 +w 0x0010 41039 0x00000000 +w 0x0010 41088 0x00000000 +w 0x0010 41089 0x00000000 +w 0x0010 41090 0x00000000 +w 0x0010 41091 0x00000000 +w 0x0010 41092 0x00000000 +w 0x0010 41093 0x00000000 +w 0x0010 41094 0x00000000 +w 0x0010 41095 0x00000000 +w 0x0010 41096 0x00000000 +w 0x0010 41097 0x00000000 +w 0x0010 41098 0x00000000 +w 0x0010 41099 0x00000000 +w 0x0010 41100 0x00000000 +w 0x0010 41101 0x00000000 +w 0x0010 41102 0x00000000 +w 0x0010 41103 0x00000000 +w 0x0010 41104 0x00000000 +w 0x0010 41105 0x00000000 +w 0x0010 41106 0x00000000 +w 0x0010 41107 0x00000000 +w 0x0010 41108 0x00000000 +w 0x0010 41109 0x00000000 +w 0x0010 41110 0x00000000 +w 0x0010 41111 0x00000000 +w 0x0010 41112 0x00000000 +w 0x0010 41113 0x00000000 +w 0x0010 41114 0x00000000 +w 0x0010 41115 0x00000000 +w 0x0010 41116 0x00000000 +w 0x0010 41117 0x00000000 +w 0x0010 41118 0x00000000 +w 0x0010 41119 0x00000000 +w 0x0010 41120 0x00000000 +w 0x0010 41121 0x00000000 +w 0x0010 41122 0x00000000 +w 0x0010 41123 0x00000000 +w 0x0010 41124 0x00000000 +w 0x0010 41125 0x00000000 +w 0x0010 41126 0x00000000 +w 0x0010 41127 0x00000000 +w 0x0010 41128 0x00000000 +w 0x0010 41129 0x00000000 +w 0x0010 41130 0x00000000 +w 0x0010 41131 0x00000000 +w 0x0010 41132 0x00000000 +w 0x0010 41133 0x00000000 +w 0x0010 41134 0x00000000 +w 0x0010 41135 0x00000000 +w 0x0010 41136 0x00000000 +w 0x0010 41137 0x00000000 +w 0x0010 41138 0x00000000 +w 0x0010 41139 0x00000000 +w 0x0010 41140 0x00000000 +w 0x0010 41141 0x00000000 +w 0x0010 41142 0x00000000 +w 0x0010 41143 0x00000000 +w 0x0010 41144 0x00000000 +w 0x0010 41145 0x00000000 +w 0x0010 41146 0x00000000 +w 0x0010 41147 0x00000000 +w 0x0010 41148 0x00000000 +w 0x0010 41149 0x00000000 +w 0x0010 41150 0x00000000 +w 0x0010 41151 0x00000000 +w 0x0010 41216 0x00000050 +w 0x0010 41217 0x00000051 +w 0x0010 41218 0x00000052 +w 0x0010 41219 0x00000000 +w 0x0010 41220 0x00000000 +w 0x0010 41221 0x00000000 +w 0x0010 41222 0x00000000 +w 0x0010 41223 0x00000000 +w 0x0010 41224 0x0000003b +w 0x0010 41225 0x0000003f +w 0x0010 41226 0x00000000 +w 0x0010 41227 0x00000000 +w 0x0010 41228 0x00000000 +w 0x0010 41229 0x00000000 +w 0x0010 41230 0x00000000 +w 0x0010 41231 0x00000000 +w 0x0010 41232 0x00000000 +w 0x0010 41233 0x00000000 +w 0x0010 41234 0x00000000 +w 0x0010 41235 0x00000000 +w 0x0010 41236 0x00000000 +w 0x0010 41237 0x00000000 +w 0x0010 41238 0x00000000 +w 0x0010 41239 0x00000000 +w 0x0010 41240 0x00000000 +w 0x0010 41241 0x00000000 +w 0x0010 41242 0x00000000 +w 0x0010 41243 0x00000000 +w 0x0010 41244 0x00000000 +w 0x0010 41245 0x00000000 +w 0x0010 41246 0x00000000 +w 0x0010 41247 0x00000000 +w 0x0010 41248 0x00000000 +w 0x0010 41249 0x00000000 +w 0x0010 41250 0x00000000 +w 0x0010 41251 0x00000000 +w 0x0010 41252 0x00000000 +w 0x0010 41253 0x00000000 +w 0x0010 41254 0x00000000 +w 0x0010 41255 0x00000000 +w 0x0010 41256 0x00000000 +w 0x0010 41257 0x00000000 +w 0x0010 41258 0x00000000 +w 0x0010 41259 0x00000000 +w 0x0010 41260 0x00000000 +w 0x0010 41261 0x00000000 +w 0x0010 41262 0x00000000 +w 0x0010 41263 0x00000000 +w 0x0010 41280 0x00000002 +w 0x0010 41281 0x00000000 +w 0x0010 41282 0x00000000 +w 0x0010 41283 0x00000000 +w 0x0010 41284 0x00000000 +w 0x0010 41285 0x00000000 +w 0x0010 41286 0x00000000 +w 0x0010 41287 0x00000000 +w 0x0010 41312 0x00000000 +w 0x0010 41313 0x00000000 +w 0x0010 41314 0x00000000 +w 0x0010 41315 0x00000000 +w 0x0010 41316 0x00000000 +w 0x0010 41317 0x00000050 +w 0x0010 41318 0x00000051 +w 0x0010 41319 0x00000052 +w 0x0010 41320 0x00000058 +w 0x0010 41321 0x00000059 +w 0x0010 41322 0x0000005a +w 0x0010 41323 0x0000005b +w 0x0010 41324 0x0000005c +w 0x0010 41325 0x0000005d +w 0x0010 41326 0x0000005e +w 0x0010 41327 0x0000005f +w 0x0010 41344 0x00000000 +w 0x0010 41345 0x000e00e0 +w 0x0010 41346 0x00000000 +w 0x0010 41347 0x00000000 +w 0x0010 41348 0x00000000 +w 0x0010 41349 0x00000000 +w 0x0010 41350 0x00000000 +w 0x0010 41351 0x00000000 +w 0x0010 41352 0x00000000 +w 0x0010 41353 0x00000000 +w 0x0010 41354 0x00000000 +w 0x0010 41355 0x00000000 +w 0x0010 41356 0x00000000 +w 0x0010 41357 0x00000000 +w 0x0010 41358 0x00000000 +w 0x0010 41359 0x00000000 +w 0x0010 41360 0x00000000 +w 0x0010 41361 0x00000000 +w 0x0010 41362 0x00000000 +w 0x0010 41363 0x00000000 +w 0x0010 41364 0x00000000 +w 0x0010 41365 0x00000000 +w 0x0010 41366 0x00000000 +w 0x0010 41367 0x00000000 +w 0x0010 41368 0x00000000 +w 0x0010 41369 0x00000000 +w 0x0010 41370 0x00000000 +w 0x0010 41371 0x00000000 +w 0x0010 41372 0x00000000 +w 0x0010 41373 0x00000000 +w 0x0010 41374 0x00000000 +w 0x0010 41375 0x00000000 diff --git a/trg/triggerbox_reduced.trbcmd b/trg/triggerbox_reduced.trbcmd new file mode 100644 index 0000000..e7dfc63 --- /dev/null +++ b/trg/triggerbox_reduced.trbcmd @@ -0,0 +1,76 @@ +w 0x0010 40965 0x00a00112 +w 0x0010 40966 0x00a00112 +w 0x0010 40967 0x00a00112 +w 0x0010 40977 0x00a00112 +w 0x0010 40978 0x00a00112 +w 0x0010 40979 0x00a00112 +w 0x0010 40984 0x00000002 +w 0x0010 40985 0x00000002 +w 0x0010 40986 0x00000002 +w 0x0010 40987 0x00000002 +w 0x0010 40992 0x00000192 +w 0x0010 40993 0x00000192 +w 0x0010 40994 0x00000192 +w 0x0010 40995 0x00000192 +w 0x0010 40996 0x00000192 +w 0x0010 40997 0x00000192 +w 0x0010 41000 0x00000192 +w 0x0010 41001 0x00000192 +w 0x0010 41002 0x00000192 +w 0x0010 41003 0x00000192 +w 0x0010 41005 0x00000192 +w 0x0010 41006 0x00000192 +w 0x0010 41008 0x00000002 +w 0x0010 41009 0x00000002 +w 0x0010 41010 0x00000002 +w 0x0010 41016 0x00000002 +w 0x0010 41017 0x00000002 +w 0x0010 41018 0x00000002 +w 0x0010 41019 0x00000002 +w 0x0010 41088 0x0000000e +w 0x0010 41092 0x000000e0 +w 0x0010 41096 0x00000e00 +w 0x0010 41100 0x0000e000 +w 0x0010 41104 0x000e0000 +w 0x0010 41108 0x00e00000 +w 0x0010 41216 0x00000050 +w 0x0010 41217 0x00000051 +w 0x0010 41218 0x00000052 +w 0x0010 41224 0x0000003b +w 0x0010 41225 0x0000003f +w 0x0010 41226 0x0000004b +w 0x0010 41227 0x0000004f +w 0x0010 41248 0x00502820 +w 0x0010 41249 0x78512921 +w 0x0010 41250 0x00522a22 +w 0x0010 41251 0x00532b23 +w 0x0010 41252 0x78542d24 +w 0x0010 41253 0x00552e25 +w 0x0010 41280 0x00000001 +w 0x0010 41281 0x00000002 +w 0x0010 41317 0x000000d1 +w 0x0010 41318 0x000000d0 +w 0x0010 41320 0x00000005 +w 0x0010 41321 0x00000006 +w 0x0010 41322 0x00000007 +w 0x0010 41324 0x00000011 +w 0x0010 41325 0x00000012 +w 0x0010 41326 0x00000013 +w 0x0010 41345 0x000e00e0 +w 0x0010 41348 0x0000003f +w 0x0010 41473 0x00010000 +w 0x0010 41481 0x00020000 +w 0x0010 41489 0x00040000 +w 0x0010 41496 0x000e00e0 +w 0x0010 41504 0x02000000 +w 0x0010 41513 0x0f000000 +w 0x0010 41520 0x04000000 +w 0x0010 41528 0x08000000 +w 0x0010 41729 0x00010000 +w 0x0010 41737 0x00020000 +w 0x0010 41745 0x00040000 +w 0x0010 41752 0x000e00e0 +w 0x0010 41760 0x02000000 +w 0x0010 41769 0x0f000000 +w 0x0010 41776 0x04000000 +w 0x0010 41784 0x08000000 diff --git a/trg/triggerbox_with_plain_iTof_or.trbcmd b/trg/triggerbox_with_plain_iTof_or.trbcmd new file mode 100644 index 0000000..b0ff038 --- /dev/null +++ b/trg/triggerbox_with_plain_iTof_or.trbcmd @@ -0,0 +1,376 @@ +w 0x0010 40960 0x00000000 +w 0x0010 40961 0x00000000 +w 0x0010 40962 0x00000000 +w 0x0010 40963 0x00000000 +w 0x0010 40964 0x00000000 +w 0x0010 40965 0x00580112 +w 0x0010 40966 0x00580112 +w 0x0010 40967 0x00580112 +w 0x0010 40968 0x00000000 +w 0x0010 40969 0x00000000 +w 0x0010 40970 0x00000000 +w 0x0010 40971 0x00000000 +w 0x0010 40972 0x00000000 +w 0x0010 40973 0x00000000 +w 0x0010 40974 0x00000000 +w 0x0010 40975 0x00000000 +w 0x0010 40976 0x00000000 +w 0x0010 40977 0x00580112 +w 0x0010 40978 0x00580112 +w 0x0010 40979 0x00580112 +w 0x0010 40980 0x00000000 +w 0x0010 40981 0x00000000 +w 0x0010 40982 0x00000000 +w 0x0010 40983 0x00000000 +w 0x0010 40984 0x00000002 +w 0x0010 40985 0x00000002 +w 0x0010 40986 0x00000002 +w 0x0010 40987 0x00000002 +w 0x0010 40988 0x00000000 +w 0x0010 40989 0x00000000 +w 0x0010 40990 0x00000000 +w 0x0010 40991 0x00000000 +w 0x0010 40992 0x00000192 +w 0x0010 40993 0x00000192 +w 0x0010 40994 0x00000192 +w 0x0010 40995 0x00000192 +w 0x0010 40996 0x00000192 +w 0x0010 40997 0x00000192 +w 0x0010 40998 0x00000000 +w 0x0010 40999 0x00000000 +w 0x0010 41000 0x00000192 +w 0x0010 41001 0x00000192 +w 0x0010 41002 0x00000192 +w 0x0010 41003 0x00000192 +w 0x0010 41004 0x00000000 +w 0x0010 41005 0x00000192 +w 0x0010 41006 0x00000192 +w 0x0010 41007 0x00000000 +w 0x0010 41008 0x00000006 +w 0x0010 41009 0x00000006 +w 0x0010 41010 0x00000006 +w 0x0010 41011 0x00000000 +w 0x0010 41012 0x00000000 +w 0x0010 41013 0x00000000 +w 0x0010 41014 0x00000000 +w 0x0010 41015 0x00000000 +w 0x0010 41016 0x00000002 +w 0x0010 41017 0x00000002 +w 0x0010 41018 0x00000002 +w 0x0010 41019 0x00000002 +w 0x0010 41020 0x00000000 +w 0x0010 41021 0x00000000 +w 0x0010 41022 0x00000000 +w 0x0010 41023 0x00000000 +w 0x0010 41024 0x00000000 +w 0x0010 41025 0x00000000 +w 0x0010 41026 0x00000000 +w 0x0010 41027 0x00000000 +w 0x0010 41028 0x00000000 +w 0x0010 41029 0x00000000 +w 0x0010 41030 0x00000000 +w 0x0010 41031 0x00000000 +w 0x0010 41032 0x00000000 +w 0x0010 41033 0x00000000 +w 0x0010 41034 0x00000000 +w 0x0010 41035 0x00000000 +w 0x0010 41036 0x00000000 +w 0x0010 41037 0x00000000 +w 0x0010 41038 0x00000000 +w 0x0010 41039 0x00000000 +w 0x0010 41088 0x0000000e +w 0x0010 41089 0x00000000 +w 0x0010 41090 0x00000000 +w 0x0010 41091 0x00000000 +w 0x0010 41092 0x000000e0 +w 0x0010 41093 0x00000000 +w 0x0010 41094 0x00000000 +w 0x0010 41095 0x00000000 +w 0x0010 41096 0x00000e00 +w 0x0010 41097 0x00000000 +w 0x0010 41098 0x00000000 +w 0x0010 41099 0x00000000 +w 0x0010 41100 0x0000e000 +w 0x0010 41101 0x00000000 +w 0x0010 41102 0x00000000 +w 0x0010 41103 0x00000000 +w 0x0010 41104 0x000e0000 +w 0x0010 41105 0x00000000 +w 0x0010 41106 0x00000000 +w 0x0010 41107 0x00000000 +w 0x0010 41108 0x00e00000 +w 0x0010 41109 0x00000000 +w 0x0010 41110 0x00000000 +w 0x0010 41111 0x00000000 +w 0x0010 41112 0x00000000 +w 0x0010 41113 0x00000000 +w 0x0010 41114 0x00000000 +w 0x0010 41115 0x00000000 +w 0x0010 41116 0x00000000 +w 0x0010 41117 0x00000000 +w 0x0010 41118 0x00000000 +w 0x0010 41119 0x00000000 +w 0x0010 41120 0x00000000 +w 0x0010 41121 0x00000000 +w 0x0010 41122 0x00000000 +w 0x0010 41123 0x00000000 +w 0x0010 41124 0x00000000 +w 0x0010 41125 0x00000000 +w 0x0010 41126 0x00000000 +w 0x0010 41127 0x00000000 +w 0x0010 41128 0x00000000 +w 0x0010 41129 0x00000000 +w 0x0010 41130 0x00000000 +w 0x0010 41131 0x00000000 +w 0x0010 41132 0x00000000 +w 0x0010 41133 0x00000000 +w 0x0010 41134 0x00000000 +w 0x0010 41135 0x00000000 +w 0x0010 41136 0x00000000 +w 0x0010 41137 0x00000000 +w 0x0010 41138 0x00000000 +w 0x0010 41139 0x00000000 +w 0x0010 41140 0x00000000 +w 0x0010 41141 0x00000000 +w 0x0010 41142 0x00000000 +w 0x0010 41143 0x00000000 +w 0x0010 41144 0x00000000 +w 0x0010 41145 0x00000000 +w 0x0010 41146 0x00000000 +w 0x0010 41147 0x00000000 +w 0x0010 41148 0x00000000 +w 0x0010 41149 0x00000000 +w 0x0010 41150 0x00000000 +w 0x0010 41151 0x00000000 +w 0x0010 41216 0x00000050 +w 0x0010 41217 0x00000051 +w 0x0010 41218 0x00000052 +w 0x0010 41219 0x00000000 +w 0x0010 41220 0x00000000 +w 0x0010 41221 0x00000000 +w 0x0010 41222 0x00000000 +w 0x0010 41223 0x00000000 +w 0x0010 41224 0x0000003b +w 0x0010 41225 0x0000003f +w 0x0010 41226 0x0000004b +w 0x0010 41227 0x0000004f +w 0x0010 41228 0x00000000 +w 0x0010 41229 0x00000000 +w 0x0010 41230 0x00000000 +w 0x0010 41231 0x00000000 +w 0x0010 41232 0x00000000 +w 0x0010 41233 0x00000000 +w 0x0010 41234 0x00000000 +w 0x0010 41235 0x00000000 +w 0x0010 41236 0x00000000 +w 0x0010 41237 0x00000000 +w 0x0010 41238 0x00000000 +w 0x0010 41239 0x00000000 +w 0x0010 41240 0x00000000 +w 0x0010 41241 0x00000000 +w 0x0010 41242 0x00000000 +w 0x0010 41243 0x00000000 +w 0x0010 41244 0x00000000 +w 0x0010 41245 0x00000000 +w 0x0010 41246 0x00000000 +w 0x0010 41247 0x00000000 +w 0x0010 41248 0x00502820 +w 0x0010 41249 0x78512921 +w 0x0010 41250 0x00522a22 +w 0x0010 41251 0x00532b23 +w 0x0010 41252 0x78542d24 +w 0x0010 41253 0x00552e25 +w 0x0010 41254 0x00000000 +w 0x0010 41255 0x00000000 +w 0x0010 41256 0x00000000 +w 0x0010 41257 0x00000000 +w 0x0010 41258 0x00000000 +w 0x0010 41259 0x00000000 +w 0x0010 41260 0x00000000 +w 0x0010 41261 0x00000000 +w 0x0010 41262 0x00000000 +w 0x0010 41263 0x68300019 +w 0x0010 41280 0x00000001 +w 0x0010 41281 0x00000002 +w 0x0010 41282 0x00000000 +w 0x0010 41283 0x00000000 +w 0x0010 41284 0x00000000 +w 0x0010 41285 0x00000000 +w 0x0010 41286 0x00000000 +w 0x0010 41287 0x00000000 +w 0x0010 41312 0x00000079 +w 0x0010 41313 0x00000090 +w 0x0010 41314 0x00000091 +w 0x0010 41315 0x000000cf +w 0x0010 41316 0x00000000 +w 0x0010 41317 0x000000d1 +w 0x0010 41318 0x000000d0 +w 0x0010 41319 0x00000092 +w 0x0010 41320 0x00000005 +w 0x0010 41321 0x000000b1 +w 0x0010 41322 0x000000b4 +w 0x0010 41323 0x00000000 +w 0x0010 41324 0x00000081 +w 0x0010 41325 0x00000084 +w 0x0010 41326 0x000000c1 +w 0x0010 41327 0x000000c4 +w 0x0010 41344 0x00000000 +w 0x0010 41345 0x000e00e0 +w 0x0010 41346 0x00000000 +w 0x0010 41347 0x00000000 +w 0x0010 41348 0x0000003f +w 0x0010 41349 0x00000000 +w 0x0010 41350 0x00000000 +w 0x0010 41351 0x00000000 +w 0x0010 41352 0x00000000 +w 0x0010 41353 0x00000000 +w 0x0010 41354 0x00000000 +w 0x0010 41355 0x00000000 +w 0x0010 41356 0x00000000 +w 0x0010 41357 0x00000000 +w 0x0010 41358 0x00000000 +w 0x0010 41359 0x00000000 +w 0x0010 41360 0x00000000 +w 0x0010 41361 0x00000000 +w 0x0010 41362 0x00000000 +w 0x0010 41363 0x00000000 +w 0x0010 41364 0x00000000 +w 0x0010 41365 0x00000000 +w 0x0010 41366 0x00000000 +w 0x0010 41367 0x00000000 +w 0x0010 41368 0x00000000 +w 0x0010 41369 0x00000000 +w 0x0010 41370 0x00000000 +w 0x0010 41371 0x00000000 +w 0x0010 41372 0x00000000 +w 0x0010 41373 0x00000000 +w 0x0010 41374 0x00000000 +w 0x0010 41375 0x00000000 +w 0x0010 41472 0x00000000 +w 0x0010 41473 0x00010000 +w 0x0010 41474 0x00000000 +w 0x0010 41475 0x00000000 +w 0x0010 41476 0x00000000 +w 0x0010 41477 0x00000000 +w 0x0010 41478 0x00000000 +w 0x0010 41479 0x00000000 +w 0x0010 41480 0x00000000 +w 0x0010 41481 0x00020000 +w 0x0010 41482 0x00000000 +w 0x0010 41483 0x00000000 +w 0x0010 41484 0x00000000 +w 0x0010 41485 0x00000000 +w 0x0010 41486 0x00000000 +w 0x0010 41487 0x00000000 +w 0x0010 41488 0x00000000 +w 0x0010 41489 0x00040000 +w 0x0010 41490 0x00000000 +w 0x0010 41491 0x00000000 +w 0x0010 41492 0x00000000 +w 0x0010 41493 0x00000000 +w 0x0010 41494 0x00000000 +w 0x0010 41495 0x00000000 +w 0x0010 41496 0x000e00e0 +w 0x0010 41497 0x00000000 +w 0x0010 41498 0x00000000 +w 0x0010 41499 0x00000000 +w 0x0010 41500 0x00000000 +w 0x0010 41501 0x00000000 +w 0x0010 41502 0x00000000 +w 0x0010 41503 0x00000000 +w 0x0010 41504 0x02000000 +w 0x0010 41505 0x00000000 +w 0x0010 41506 0x00000000 +w 0x0010 41507 0x00000000 +w 0x0010 41508 0x00000000 +w 0x0010 41509 0x00000000 +w 0x0010 41510 0x00000000 +w 0x0010 41511 0x00000000 +w 0x0010 41512 0x00000000 +w 0x0010 41513 0x0f000000 +w 0x0010 41514 0x00000000 +w 0x0010 41515 0x00000000 +w 0x0010 41516 0x00000000 +w 0x0010 41517 0x00000000 +w 0x0010 41518 0x00000000 +w 0x0010 41519 0x00000000 +w 0x0010 41520 0x04000000 +w 0x0010 41521 0x00000000 +w 0x0010 41522 0x00000000 +w 0x0010 41523 0x00000000 +w 0x0010 41524 0x00000000 +w 0x0010 41525 0x00000000 +w 0x0010 41526 0x00000000 +w 0x0010 41527 0x00000000 +w 0x0010 41528 0x08000000 +w 0x0010 41529 0x00000000 +w 0x0010 41530 0x00000000 +w 0x0010 41531 0x00000000 +w 0x0010 41532 0x00000000 +w 0x0010 41533 0x00000000 +w 0x0010 41534 0x00000000 +w 0x0010 41535 0x00000000 +w 0x0010 41728 0x00000000 +w 0x0010 41729 0x00010000 +w 0x0010 41730 0x00000000 +w 0x0010 41731 0x00000000 +w 0x0010 41732 0x00000000 +w 0x0010 41733 0x00000000 +w 0x0010 41734 0x00000000 +w 0x0010 41735 0x00000000 +w 0x0010 41736 0x00000000 +w 0x0010 41737 0x00020000 +w 0x0010 41738 0x00000000 +w 0x0010 41739 0x00000000 +w 0x0010 41740 0x00000000 +w 0x0010 41741 0x00000000 +w 0x0010 41742 0x00000000 +w 0x0010 41743 0x00000000 +w 0x0010 41744 0x00000000 +w 0x0010 41745 0x00040000 +w 0x0010 41746 0x00000000 +w 0x0010 41747 0x00000000 +w 0x0010 41748 0x00000000 +w 0x0010 41749 0x00000000 +w 0x0010 41750 0x00000000 +w 0x0010 41751 0x00000000 +w 0x0010 41752 0x000e00e0 +w 0x0010 41753 0x00000000 +w 0x0010 41754 0x00000000 +w 0x0010 41755 0x00000000 +w 0x0010 41756 0x00000000 +w 0x0010 41757 0x00000000 +w 0x0010 41758 0x00000000 +w 0x0010 41759 0x00000000 +w 0x0010 41760 0x02000000 +w 0x0010 41761 0x00000000 +w 0x0010 41762 0x00000000 +w 0x0010 41763 0x00000000 +w 0x0010 41764 0x00000000 +w 0x0010 41765 0x00000000 +w 0x0010 41766 0x00000000 +w 0x0010 41767 0x00000000 +w 0x0010 41768 0x00000000 +w 0x0010 41769 0x0f000000 +w 0x0010 41770 0x00000000 +w 0x0010 41771 0x00000000 +w 0x0010 41772 0x00000000 +w 0x0010 41773 0x00000000 +w 0x0010 41774 0x00000000 +w 0x0010 41775 0x00000000 +w 0x0010 41776 0x04000000 +w 0x0010 41777 0x00000000 +w 0x0010 41778 0x00000000 +w 0x0010 41779 0x00000000 +w 0x0010 41780 0x00000000 +w 0x0010 41781 0x00000000 +w 0x0010 41782 0x00000000 +w 0x0010 41783 0x00000000 +w 0x0010 41784 0x08000000 +w 0x0010 41785 0x00000000 +w 0x0010 41786 0x00000000 +w 0x0010 41787 0x00000000 +w 0x0010 41788 0x00000000 +w 0x0010 41789 0x00000000 +w 0x0010 41790 0x00000000 +w 0x0010 41791 0x00000000