             let strip_0_15_back_fission = fissionBackInfo[kStrip0_15] as! Int
             let encoder_back_fission = fissionBackInfo[kEncoder] as! Int
             let strip_1_48_back_fission = stripConvertToFormat_1_48(CUnsignedShort(strip_0_15_back_fission), encoder: CUnsignedShort(encoder_back_fission))
-            return abs(Int32(strip_1_48 - strip_1_48_back_fission)) <= Int32(recoilBackMaxDeltaStrips)
+            return abs(Int32(strip_1_48) - Int32(strip_1_48_back_fission)) <= Int32(recoilBackMaxDeltaStrips)
         } else {
             return false
         }

        var fission: [String: Any]?
        var maxE: Double = 0
        for info in fissionsAlphaBackPerAct {
            if let dict = info as? [String: Any], let e = dict[kEnergy] as? Double {
                if (maxE < e) {
                    maxE = e
                    fission = dict

                switch column {
                case 0:
                    if row < recoilsFrontPerAct.count {
                        if let eventNumberObject = getValueFrom(array: recoilsFrontPerAct, row: row, key: kEventNumber) {
                            field = currentFileEventNumber(eventNumberObject as! CUnsignedLongLong)
                        }
                    }
                case 1:
                    if row < recoilsFrontPerAct.count {
                        if let recoilEnergy = getValueFrom(array: recoilsFrontPerAct, row: row, key: kEnergy) {
                            field = String(format: "%.7f", recoilEnergy as! Double)
                        }
                    }
                case 2:
                    if row < recoilsFrontPerAct.count {
                        if let deltaTimeRecoilFission = getValueFrom(array: recoilsFrontPerAct, row: row, key: kDeltaTime) {
                            field = String(format: "%lld", deltaTimeRecoilFission as! CLongLong)
                        }
                    }
                case 3:
                    if row < tofRealPerAct.count {
                        if let tof = getValueFrom(array: tofRealPerAct, row: row, key: kValue) {
                            let format = "%." + (unitsTOF == .channels ? "0" : "7") + "f"
                            field = String(format: format, tof as! Double)
                        }
                    }
                case 4:
                    if row < tofRealPerAct.count {
                        if let deltaTimeTOFRecoil = getValueFrom(array: tofRealPerAct, row: row, key: kDeltaTime) {
                            field = String(format: "%lld", deltaTimeTOFRecoil as! CLongLong)
                        }
                    }
                case 5:
                    if row < fissionsAlphaFrontPerAct.count {
                        if let eventNumber = getValueFrom(array: fissionsAlphaFrontPerAct, row: row, key: kEventNumber) {
                            field = currentFileEventNumber(eventNumber as! CUnsignedLongLong)
                        }
                    }
                case 6:
                    if row == 0 {
                        var summ: Double = 0
                        for info in fissionsAlphaFrontPerAct {
                            if let energy = (info as? [String: Any])?[kEnergy] {
                                summ += energy as! Double
                            }
                        }
                        field = String(format: "%.7f", summ)
                    }
                case 7:
                    if row < fissionsAlphaFrontPerAct.count {
                        if let energy = getValueFrom(array: fissionsAlphaFrontPerAct, row: row, key: kEnergy) {
                            field = String(format: "%.7f", energy as! Double)
                        }
                    }
                case 8:
                    if row < fissionsAlphaFrontPerAct.count {
                        if let deltaTime = getValueFrom(array: fissionsAlphaFrontPerAct, row: row, key: kDeltaTime) {
                            field = String(format: "%lld", deltaTime as! CLongLong)
                        }
                    }
                case 9:
                    if row < fissionsAlphaFrontPerAct.count {
                        if let info = fissionsAlphaFrontPerAct[row] as? [String: Any], let strip_0_15 = info[kStrip0_15], let encoder = info[kEncoder] {
                            let strip = stripConvertToFormat_1_48(strip_0_15 as! CUnsignedShort, encoder: encoder as! CUnsignedShort)
                            field = String(format: "%d", strip)
                        }
                    }
                case 10:
                    if row < fissionsAlphaBackPerAct.count {
                        if let energy = getValueFrom(array: fissionsAlphaBackPerAct, row: row, key: kEnergy) {
                            field = String(format: "%.7f", energy as! Double)
                        }
                    }
                case 11:
                    if row < fissionsAlphaBackPerAct.count {
                        if let deltaTime = getValueFrom(array: fissionsAlphaBackPerAct, row: row, key: kDeltaTime) {
                            field = String(format: "%lld", deltaTime as! CLongLong)
                        }
                    }
                case 12:
                    if row < fissionsAlphaBackPerAct.count {
                        if let info = fissionsAlphaBackPerAct[row] as? [String: Any], let strip_0_15 = info[kStrip0_15], let encoder = info[kEncoder] {
                            let strip = stripConvertToFormat_1_48(strip_0_15 as! CUnsignedShort, encoder: encoder as! CUnsignedShort)
                            field = String(format: "%d", strip)
                        }
                    }
                case 13:
                    if row < fissionsAlphaWelPerAct.count {
                        if let energy = getValueFrom(array: fissionsAlphaWelPerAct, row: row, key: kEnergy) {
                            field = String(format: "%.7f", energy as! Double)
                        }
                    }
                case 14:
                    if row < fissionsAlphaWelPerAct.count {
                        if let info = fissionsAlphaWelPerAct[row] as? [String: Any], let strip_0_15 = info[kStrip0_15], let encoder = info[kEncoder] {
                            field = String(format: "FWel%d.%d", encoder as! CUnsignedShort, (strip_0_15  as! CUnsignedShort) + 1)
                        }
                    }
                case 15:
