// File: /workspace/github_cpp_makefile_star2_O1/lagoproject[P]arti/analysis/showers.cc
// Function: Usage(char*, int)
void Usage(char *prog, int iverbose=0) {
  cout << endl << "shower.cc, from ARTI     version " << VERSION << endl<< endl;
  cout << "  Check secondaries file and change shower Id. This allows to process secondaries" << endl << "  within the detector simulation and handle mini showers." << endl;
  cout << "  Usage: " << prog << " [flags] raw_file" << endl;
  cout << "    If 'raw_file' does not exits, switch to STDIN and use raw_file as" << endl;
  cout << "    basename for output file." << endl;
  cout << "    flags:"<<endl;
  cout << "      -s <type>       : filter secondaries by type: 1: EM, 2: MU, 3: HD"<<endl;
  cout << "      -a <n>          : Energy distribution of secondaries per type, with <n> bins per decade."<<endl;
  cout << "      -d <n>          : Distance distribution of secondaries per type, with <n> bins per decade."<<endl;
  cout << "                      : If normalization is also selected (-n) the distribution is weighted by the ring area."<<endl;
  cout << "                      : In that case, produce also a new file (dse) with the energy density distribution at ground."<<endl;
  cout << "      -n <a> <t>      : Normalize energy distribution in particles/(m2 s bin), <a>=detector area (m2), <t> = flux time (s)." <<endl;
  cout << "                      : Change distance distribution by normalizing by the increasing area of the ring (r, r+dr)." <<endl;
  cout << "      -c <obs_lev (m)>: Enable curved mode: x'y' will be converted to local coordinates xy"<<endl;
  cout << "                        Observation level (<obs_lev>) should be given in m a.s.l." << endl;
  cout << "      -g <file> <col> : Include geomagentic effects. Read  rigidities from column <R> of <file>. Default R= " << cGeoCdef <<endl;
  cout << "                        3=R_U, 4=R_C 5=R_L"<<endl;
  cout << "      -f              : Force analysis without enable curved mode (WARNING)"<<endl;
  cout << "      -v              : Enable verbose output (each -v increases verbosity level)"<< endl;
  cout << "      -?              : prints help and exits"<<endl << endl;
  if (iverbose) {
    // verbose help
  }
  exit(1);
}

// Assembly:
pushq %r14
pushq %rbx
pushq %rax
movq %rdi, %r14
movq 0x58a2(%rip), %rbx      # 0x7fc8
movq %rbx, %rdi
callq 0x2090
leaq 0x2ad6(%rip), %rsi      # 0x520b
movq %rax, %rdi
callq 0x2120
leaq 0x2ae9(%rip), %rsi      # 0x522d
movq %rax, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
movq %rax, %rdi
callq 0x2090
leaq 0x2acf(%rip), %rsi      # 0x5232
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2b0a(%rip), %rsi      # 0x5284
movq %rax, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2b2d(%rip), %rsi      # 0x52be
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
movq %r14, %rsi
callq 0x2120
leaq 0x2b1d(%rip), %rsi      # 0x52c8
movq %rax, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2b18(%rip), %rsi      # 0x52da
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2b47(%rip), %rsi      # 0x5320
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2b4e(%rip), %rsi      # 0x533e
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2b42(%rip), %rsi      # 0x5349
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2b73(%rip), %rsi      # 0x5391
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2bbb(%rip), %rsi      # 0x53f0
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2c05(%rip), %rsi      # 0x5451
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2c5c(%rip), %rsi      # 0x54bf
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2cb9(%rip), %rsi      # 0x5533
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2d1e(%rip), %rsi      # 0x55af
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2d79(%rip), %rsi      # 0x5621
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2dbd(%rip), %rsi      # 0x567c
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2df8(%rip), %rsi      # 0x56ce
movq %rbx, %rdi
callq 0x2120
movl 0x5894(%rip), %esi      # 0x8178
movq %rax, %rdi
callq 0x2210
movq %rax, %rdi
callq 0x2090
leaq 0x2e40(%rip), %rsi      # 0x573b
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2e54(%rip), %rsi      # 0x5766
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2e89(%rip), %rsi      # 0x57b2
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
leaq 0x2ec4(%rip), %rsi      # 0x5804
movq %rbx, %rdi
callq 0x2120
movq %rax, %rdi
callq 0x2090
movq %rax, %rdi
callq 0x2090
movl $0x1, %edi
callq 0x2170