// File: /workspace/github_cpp_makefile_star2_O2/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 0x5b04(%rip), %rbx      # 0x6fc8
movq %rbx, %rdi
callq 0x1080
leaq 0x2d38(%rip), %rsi      # 0x420b
movq %rax, %rdi
callq 0x10e0
leaq 0x2d4b(%rip), %rsi      # 0x422d
movq %rax, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
movq %rax, %rdi
callq 0x1080
leaq 0x2d31(%rip), %rsi      # 0x4232
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x2d6c(%rip), %rsi      # 0x4284
movq %rax, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x2d8f(%rip), %rsi      # 0x42be
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
movq %r14, %rsi
callq 0x10e0
leaq 0x2d7f(%rip), %rsi      # 0x42c8
movq %rax, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x2d7a(%rip), %rsi      # 0x42da
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x2da9(%rip), %rsi      # 0x4320
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x2db0(%rip), %rsi      # 0x433e
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x2da4(%rip), %rsi      # 0x4349
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x2dd5(%rip), %rsi      # 0x4391
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x2e1d(%rip), %rsi      # 0x43f0
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x2e67(%rip), %rsi      # 0x4451
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x2ebe(%rip), %rsi      # 0x44bf
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x2f1b(%rip), %rsi      # 0x4533
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x2f80(%rip), %rsi      # 0x45af
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x2fdb(%rip), %rsi      # 0x4621
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x301f(%rip), %rsi      # 0x467c
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x305a(%rip), %rsi      # 0x46ce
movq %rbx, %rdi
callq 0x10e0
movl 0x5ac6(%rip), %esi      # 0x7148
movq %rax, %rdi
callq 0x11c0
movq %rax, %rdi
callq 0x1080
leaq 0x30a2(%rip), %rsi      # 0x473b
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x30b6(%rip), %rsi      # 0x4766
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x30eb(%rip), %rsi      # 0x47b2
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
leaq 0x3126(%rip), %rsi      # 0x4804
movq %rbx, %rdi
callq 0x10e0
movq %rax, %rdi
callq 0x1080
movq %rax, %rdi
callq 0x1080
pushq $0x1
popq %rdi
callq 0x1120