Subroutine ko_eff 
subroutine ko_eff
        ! Uses
    use Precision_mod
    use namelist_mod
    use pattern_mod
    use Hitpos_mod
    use Kalman_mod
    use chambers_mod
    use unp_mod
        ! Calls
    call getWwire
    call hbook1
    call hbook2
    call hf1
    call hf2
    call hpak
    call trkatz
        ! Variables
    integer :: iwindow
    integer :: iplane
    integer :: ihit
    integer :: jhit
    integer :: itdchit
    integer :: iwire
    real :: z
    real :: utrk
    real :: vtrk
    real :: uhit
    real :: vhit
    real (kind=R8), dimension (3) :: res3
    real (kind=R8) :: res
    real (kind=R8) :: sum0
    real (kind=R8) :: sum1
    real (kind=R8) :: sum2
    real (kind=R8) :: mean
    real (kind=R8) :: sigma
    real :: wtrk
    real :: wmin
    real :: wmax
    integer, PARAMETER :: kHbookBase = 50
    integer, PARAMETER :: kHbookChiSqr = kHbookBase + 0
    integer, PARAMETER :: kHbookNhits = kHbookBase + 1
    integer, PARAMETER :: kHbookConlev = kHbookBase + 2
    integer, PARAMETER :: kHbookPCexp = kHbookBase + 3
    integer, PARAMETER :: kHbookDCexp = kHbookBase + 4
    integer, PARAMETER :: kHbookPCres = kHbookBase + 5
    integer, PARAMETER :: kHbookDCres = kHbookBase + 6
    integer, PARAMETER :: kHbookPCeff = kHbookBase + 7
    integer, PARAMETER :: kHbookDCeff = kHbookBase + 8
    integer, PARAMETER :: kHbookXXMap = kHbookBase + 9
    integer, PARAMETER :: kHbookPCnoise = kHbookBase + 10
    integer, PARAMETER :: kHbookDCnoise = kHbookBase + 11
    integer, PARAMETER :: kHbookPCmult = kHbookBase + 12
    integer, PARAMETER :: kHbookDCmult = kHbookBase + 13
    logical, SAVE :: FirstTime = .true.
    integer, PARAMETER :: kMaxPCs = 14
    integer, PARAMETER :: kMaxDCs = 50
    integer, PARAMETER :: mapPC = 9
    integer, PARAMETER :: mapDC = 0
    integer, SAVE, dimension (kMaxPCs) :: PCexp
    integer, SAVE, dimension (kMaxPCs) :: PCgot
    integer, SAVE, dimension (kMaxPCs) :: PCgotNoise
    integer, SAVE, dimension (kMaxPCs) :: PCgotMult
    integer, SAVE, dimension (kMaxDCs) :: DCexp
    integer, SAVE, dimension (kMaxDCs) :: DCgot
    integer, SAVE, dimension (kMaxDCs) :: DCgotNoise
    integer, SAVE, dimension (kMaxDCs) :: DCgotMult
    real, SAVE, dimension (kMaxPCs) :: PCeff
    real, SAVE, dimension (kMaxPCs) :: PCnoise
    real, SAVE, dimension (kMaxPCs) :: PCmult
    real, SAVE, dimension (kMaxDCs) :: DCeff
    real, SAVE, dimension (kMaxDCs) :: DCnoise
    real, SAVE, dimension (kMaxDCs) :: DCmult
    integer :: expwire
    integer, EXTERNAL :: findWire
    real (kind=R8), EXTERNAL :: conlev
    real (kind=R8) :: trkChiSqr
    real (kind=R8) :: trkConlev
    integer :: trkNhits
    real, PARAMETER :: sigma0 = 0.1300
    integer :: numhits
end subroutine ko_eff
 Description of Variables 
iwindow
integer :: iwindow
iplane
integer :: iplane
ihit
integer :: ihit
jhit
integer :: jhit
itdchit
integer :: itdchit
iwire
integer :: iwire
z
real :: z
utrk
real :: utrk
vtrk
real :: vtrk
uhit
real :: uhit
vhit
real :: vhit
res3
real (kind=R8), dimension (3) :: res3
res
real (kind=R8) :: res
sum0
real (kind=R8) :: sum0
sum1
real (kind=R8) :: sum1
sum2
real (kind=R8) :: sum2
mean
real (kind=R8) :: mean
sigma
real (kind=R8) :: sigma
wtrk
real :: wtrk
wmin
real :: wmin
wmax
real :: wmax
kHbookBase
integer, PARAMETER :: kHbookBase = 50
kHbookChiSqr
integer, PARAMETER :: kHbookChiSqr = kHbookBase + 0
kHbookNhits
integer, PARAMETER :: kHbookNhits = kHbookBase + 1
kHbookConlev
integer, PARAMETER :: kHbookConlev = kHbookBase + 2
kHbookPCexp
integer, PARAMETER :: kHbookPCexp = kHbookBase + 3
kHbookDCexp
integer, PARAMETER :: kHbookDCexp = kHbookBase + 4
kHbookPCres
integer, PARAMETER :: kHbookPCres = kHbookBase + 5
kHbookDCres
integer, PARAMETER :: kHbookDCres = kHbookBase + 6
kHbookPCeff
integer, PARAMETER :: kHbookPCeff = kHbookBase + 7
kHbookDCeff
integer, PARAMETER :: kHbookDCeff = kHbookBase + 8
kHbookXXMap
integer, PARAMETER :: kHbookXXMap = kHbookBase + 9
kHbookPCnoise
integer, PARAMETER :: kHbookPCnoise = kHbookBase + 10
kHbookDCnoise
integer, PARAMETER :: kHbookDCnoise = kHbookBase + 11
kHbookPCmult
integer, PARAMETER :: kHbookPCmult = kHbookBase + 12
kHbookDCmult
integer, PARAMETER :: kHbookDCmult = kHbookBase + 13
FirstTime
logical, SAVE :: FirstTime = .true.
kMaxPCs
integer, PARAMETER :: kMaxPCs = 14
kMaxDCs
integer, PARAMETER :: kMaxDCs = 50
mapPC
integer, PARAMETER :: mapPC = 9
mapDC
integer, PARAMETER :: mapDC = 0
PCexp
integer, SAVE, dimension (kMaxPCs) :: PCexp
PCgot
integer, SAVE, dimension (kMaxPCs) :: PCgot
PCgotNoise
integer, SAVE, dimension (kMaxPCs) :: PCgotNoise
PCgotMult
integer, SAVE, dimension (kMaxPCs) :: PCgotMult
DCexp
integer, SAVE, dimension (kMaxDCs) :: DCexp
DCgot
integer, SAVE, dimension (kMaxDCs) :: DCgot
DCgotNoise
integer, SAVE, dimension (kMaxDCs) :: DCgotNoise
DCgotMult
integer, SAVE, dimension (kMaxDCs) :: DCgotMult
PCeff
real, SAVE, dimension (kMaxPCs) :: PCeff
PCnoise
real, SAVE, dimension (kMaxPCs) :: PCnoise
PCmult
real, SAVE, dimension (kMaxPCs) :: PCmult
DCeff
real, SAVE, dimension (kMaxDCs) :: DCeff
DCnoise
real, SAVE, dimension (kMaxDCs) :: DCnoise
DCmult
real, SAVE, dimension (kMaxDCs) :: DCmult
expwire
integer :: expwire
findWire
integer, EXTERNAL :: findWire
conlev
real (kind=R8), EXTERNAL :: conlev
trkChiSqr
real (kind=R8) :: trkChiSqr
trkConlev
real (kind=R8) :: trkConlev
trkNhits
integer :: trkNhits
sigma0
real, PARAMETER :: sigma0 = 0.1300
numhits
integer :: numhits