Function CombNexus(N As Integer, R As Integer, C As Integer, a As Integer, b As Integer) As Integer On Error GoTo exitfunction Dim Z, lo, hi As Integer lo = C: hi = N - (R - C) If (N < 1) Or (N > 99) Or (R < 1) Or (R > 99) Or (C < 1) Or (C > R) Or (a < lo) Or (a > hi) Or (b < lo) Or (b > hi) Then GoTo exitfunction Do Z = CombThreeSum(N, R, C) - a - b Loop Until (Z >= lo) And (Z <= hi) CombNexus = Z Exit Function exitfunction: CombNexus = -1 End Function Function DailyNexus(a As Integer, b As Integer) As Integer On Error GoTo exitfunction Dim Z As Integer If (a < 0) Or (a > 9) Or (b < 0) Or (b > 9) Then GoTo exitfunction Do Z = CombThreeSum(10, 1, 1) - (a + 1) - (b + 1) - 1 Loop Until (Z >= 0) And (Z <= 9) DailyNexus = Z Exit Function exitfunction: DailyNexus = -1 End Function Function DisimulateNexus(ByVal theNumbers As Range, ByVal theDistribution As Range, ByVal x As Variant, ByVal y As Variant) As Variant On Error GoTo exitfunction Dim err As String Dim a, b, i, Z, lo, hi As Long Dim N() As Variant Dim D() As Double Dim MissingNumbers As Boolean err = "Error - Undefined" If (theNumbers.Columns.Count > 1) Or (theDistribution.Columns.Count > 1) Then err = "Error - too many columns" GoTo exitfunction ElseIf (theNumbers.Rows.Count <> theDistribution.Rows.Count) Then err = "Error - number and distribution count not equal" GoTo exitfunction ElseIf (theNumbers.Rows.Count > 99) Or (theDistribution.Rows.Count > 99) Then err = "Error - too many numbers or distribution values" GoTo exitfunction End If ReDim N(theNumbers.Rows.Count) ReDim D(theDistribution.Rows.Count) D(0) = 0 For i = 1 To theNumbers.Rows.Count N(i) = theNumbers.Cells(i, 1) D(i) = theDistribution.Cells(i, 1) Next i a = 0: b = 0: lo = 0: hi = 0: MissingNumbers = False For i = 1 To theNumbers.Rows.Count If x = N(i) Then a = i If y = N(i) Then b = i If (D(i) <> 0) And (lo = 0) Then lo = i If (D(theNumbers.Rows.Count - i + 1) <> 0) And (hi = 0) Then hi = (theNumbers.Rows.Count - i + 1) If N(i) = "" Then MissingNumbers = True Next i If (a = 0) Or (b = 0) Or (a < lo) Or (a > hi) Or (b < lo) Or (b > hi) Or (lo = 0) Or (hi = 0) Or MissingNumbers Then err = "" GoTo exitfunction End If Do Z = ThreeSum(D()) - a - b Loop Until (Z >= lo) And (Z <= hi) DisimulateNexus = N(Z) Exit Function exitfunction: DisimulateNexus = err End Function Function Disimulate(ByVal theNumbers As Range, ByVal theDistribution As Range) As Variant On Error GoTo exitfunction Dim a As Long Dim D(), R, sum As Double If (theNumbers.Columns.Count > 1) Or (theDistribution.Columns.Count > 1) Or (theNumbers.Rows.Count <> theDistribution.Rows.Count) Or (theNumbers.Rows.Count > 99) Or (theDistribution.Rows.Count > 99) Then GoTo exitfunction ReDim D(theDistribution.Rows.Count) D(0) = 0: sum = 0 For a = 1 To theDistribution.Rows.Count sum = D(a - 1) + theDistribution.Cells(a, 1) D(a) = sum Next a For a = 0 To theDistribution.Rows.Count D(a) = D(a) / sum Next a R = Rnd() a = 0 Do a = a + 1 Loop Until (R >= D(a - 1)) And (R < D(a)) Disimulate = theNumbers.Cells(a, 1) Exit Function exitfunction: Disimulate = "err" End Function Function FrequencyCount(ByVal theRange As Range, ByVal N As Long) As Long On Error GoTo exitfunction Dim a, b, f As Long f = 0 For a = 1 To theRange.Rows.Count For b = 1 To theRange.Columns.Count If (theRange.Cells(a, b) = N) And (theRange.Cells(a, b) <> "") Then f = f + 1 Next b Next a FrequencyCount = f Exit Function exitfunction: FrequencyCount = -1 End Function Function LastNPosition(ByVal theRange As Range, ByVal N As Long) As Variant On Error GoTo exitfunction Dim err As String Dim a, b As Long Dim R As Variant err = "Error - Undefined" If (theRange.Columns.Count > 1) Then err = "Error - too many columns selected" GoTo exitfunction ElseIf (Abs(N) < 1) Or (N > theRange.Rows.Count) Then err = "Error - invalid previous selection" GoTo exitfunction End If b = 0: R = "" For a = theRange.Rows.Count To 1 Step -1 If theRange.Cells(a, 1) <> "" Then b = b + 1 If (b = Abs(N)) And (R = "") Then R = theRange.Cells(a, 1) Next a LastNPosition = R Exit Function exitfunction: LastNPosition = err End Function Function Fact(ByVal N As Integer) As Double On Error GoTo exitfunction If (N <= 1) Then Fact = 1 Else Fact = N * Fact(N - 1) End If Exit Function exitfunction: Fact = -1 End Function Function Perm(ByVal N As Integer, ByVal R As Integer) As Double On Error GoTo exitfunction Dim a As Integer Dim b As Double b = 1 If (N < R) Then Perm = 0 Else For a = (N - (R - 1)) To N b = b * a Next a Perm = b End If Exit Function exitfunction: Perm = -1 End Function Function Comb(ByVal N As Integer, ByVal R As Integer) As Double On Error GoTo exitfunction If (N < R) Then Comb = 0 Else Comb = Perm(N, R) / Fact(R) End If Exit Function exitfunction: Comb = -1 End Function Function Cdist(ByVal N As Integer, ByVal R As Integer, ByVal C As Integer, ByVal Z As Integer) As Double On Error GoTo exitfunction If ((Z < C) Or (Z > (N - (R - C))) Or (Z > N) Or (C > R) Or (N < 1) Or (R < 1) Or (C < 1) Or (Z < 1)) Then Cdist = 0 Else Cdist = Comb((Z - 1), (C - 1)) * Comb((N - Z), (R - C)) End If Exit Function exitfunction: Cdist = -1 End Function Function fColumnSum(ByVal N As Integer, ByVal R As Integer, ByVal Z As Integer) As Double On Error GoTo exitfunction Dim a As Integer Dim ColumnSum As Double If (Z < 1) Then fColumnSum = 0 ElseIf ((Z >= 1) And (Z < (N - (R - 1)))) Then ColumnSum = 0 For a = 1 To Z ColumnSum = ColumnSum + Cdist(N, R, 1, a) Next a fColumnSum = ColumnSum ElseIf (Z >= (N - (R - 1))) Then fColumnSum = Comb(N, R) End If Exit Function exitfunction: fColumnSum = -1 End Function Function Index2Combin(ByVal N As Integer, ByVal R As Integer, ByVal i As Double) As String On Error GoTo exitfunction Dim a, b, Combination(), Z As Integer Dim C, j As Double ReDim Combination(R) Dim tmpString, CombinFormat As String Dim NumberFound As Boolean tmpString = "" CombinFormat = "" C = Comb(N, R) j = i j = j - 1 Z = 0 b = Len(Format(N, "0")) For a = 1 To b CombinFormat = CombinFormat & "0" Next a For a = 1 To R If ((i >= 1) And (i <= C)) Then If (a = 1) Then Combination(a) = 1 Else Combination(a) = Combination(a - 1) + 1 End If NumberFound = False Do Select Case (j - fColumnSum((N - Z), (R - (a - 1)), (Combination(a) - (Z + 1)))) Case Is < 0 Combination(a) = Combination(a) - 1 NumberFound = True Case Is = 0 NumberFound = True Case Is > 0 Combination(a) = Combination(a) + 1 End Select Loop Until NumberFound j = j - fColumnSum((N - Z), (R - (a - 1)), (Combination(a) - (Z + 1))) Z = Combination(a) Else Combination(a) = 0 End If tmpString = tmpString & Format(Combination(a), CombinFormat) If (a < R) Then tmpString = tmpString & " " Next a Index2Combin = tmpString Exit Function exitfunction: Index2Combin = "err" End Function Function Combin2Index(ByVal N As Integer, ByVal R As Integer, ByVal theRange As Range) As Double On Error GoTo exitfunction Dim a As Integer Dim fSum As Double Dim NotInAscendingOrder, NotInPool As Boolean NotInAscendingOrder = False NotInPool = False If ((theRange.Rows.Count <> 1) Or (theRange.Columns.Count <> R)) Then Combin2Index = -1 Exit Function End If For a = 1 To R If (a < R) Then If (theRange.Cells(1, a) >= theRange.Cells(1, (a + 1))) Then NotInAscendingOrder = True End If End If If ((theRange.Cells(1, a) < 1) Or (theRange.Cells(1, a) > N)) Then NotInPool = True End If Next a If (NotInAscendingOrder Or NotInPool) Then Combin2Index = -1 Exit Function End If fSum = 1 For a = 1 To R If (a = 1) Then fSum = fSum + fColumnSum(N, R, (theRange.Cells(1, 1) - 1)) Else fSum = fSum + fColumnSum((N - theRange.Cells(1, (a - 1))), (R - (a - 1)), (theRange.Cells(1, a) - (theRange.Cells(1, (a - 1)) + 1))) End If Next a Combin2Index = fSum Exit Function exitfunction: Combin2Index = -1 End Function Function CombThreeSum(N As Integer, R As Integer, C As Integer) As Integer On Error GoTo exitfunction Dim a() As Double ReDim a(N) As Double Dim Z As Integer If (C < Round((R + 1) / 2, 0)) Then For Z = 0 To N a(Z) = Cdist(N, R, ((R + 1) - C), Z) Next Z CombThreeSum = (3 * (N + 1)) - ThreeSum(a()) Else For Z = 0 To N a(Z) = Cdist(N, R, C, Z) Next Z CombThreeSum = ThreeSum(a()) End If Exit Function exitfunction: CombThreeSum = -1 End Function Function ThreeSum(a() As Double) As Integer On Error GoTo exitfunction Dim N(297) As Double Dim sum, sumcubed, lo, hi, R As Double Dim b, i As Integer For i = 0 To 297 N(i) = 0 Next sum = 0 b = UBound(a) For i = 0 To b N(i) = a(i) sum = sum + a(i) Next i If sum = 0 Then ThreeSum = -1 R = Rnd sumcubed = sum * sum * sum lo = 0: hi = lo + (threesum000(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 0 lo = hi: hi = lo + (threesum001(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 1 lo = hi: hi = lo + (threesum002(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 2 lo = hi: hi = lo + (threesum003(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 3 lo = hi: hi = lo + (threesum004(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 4 lo = hi: hi = lo + (threesum005(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 5 lo = hi: hi = lo + (threesum006(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 6 lo = hi: hi = lo + (threesum007(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 7 lo = hi: hi = lo + (threesum008(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 8 lo = hi: hi = lo + (threesum009(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 9 lo = hi: hi = lo + (threesum010(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 10 lo = hi: hi = lo + (threesum011(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 11 lo = hi: hi = lo + (threesum012(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 12 lo = hi: hi = lo + (threesum013(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 13 lo = hi: hi = lo + (threesum014(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 14 lo = hi: hi = lo + (threesum015(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 15 lo = hi: hi = lo + (threesum016(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 16 lo = hi: hi = lo + (threesum017(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 17 lo = hi: hi = lo + (threesum018(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 18 lo = hi: hi = lo + (threesum019(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 19 lo = hi: hi = lo + (threesum020(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 20 lo = hi: hi = lo + (threesum021(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 21 lo = hi: hi = lo + (threesum022(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 22 lo = hi: hi = lo + (threesum023(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 23 lo = hi: hi = lo + (threesum024(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 24 lo = hi: hi = lo + (threesum025(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 25 lo = hi: hi = lo + (threesum026(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 26 lo = hi: hi = lo + (threesum027(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 27 lo = hi: hi = lo + (threesum028(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 28 lo = hi: hi = lo + (threesum029(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 29 lo = hi: hi = lo + (threesum030(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 30 lo = hi: hi = lo + (threesum031(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 31 lo = hi: hi = lo + (threesum032(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 32 lo = hi: hi = lo + (threesum033(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 33 lo = hi: hi = lo + (threesum034(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 34 lo = hi: hi = lo + (threesum035(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 35 lo = hi: hi = lo + (threesum036(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 36 lo = hi: hi = lo + (threesum037(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 37 lo = hi: hi = lo + (threesum038(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 38 lo = hi: hi = lo + (threesum039(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 39 lo = hi: hi = lo + (threesum040(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 40 lo = hi: hi = lo + (threesum041(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 41 lo = hi: hi = lo + (threesum042(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 42 lo = hi: hi = lo + (threesum043(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 43 lo = hi: hi = lo + (threesum044(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 44 lo = hi: hi = lo + (threesum045(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 45 lo = hi: hi = lo + (threesum046(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 46 lo = hi: hi = lo + (threesum047(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 47 lo = hi: hi = lo + (threesum048(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 48 lo = hi: hi = lo + (threesum049(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 49 lo = hi: hi = lo + (threesum050(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 50 lo = hi: hi = lo + (threesum051(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 51 lo = hi: hi = lo + (threesum052(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 52 lo = hi: hi = lo + (threesum053(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 53 lo = hi: hi = lo + (threesum054(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 54 lo = hi: hi = lo + (threesum055(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 55 lo = hi: hi = lo + (threesum056(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 56 lo = hi: hi = lo + (threesum057(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 57 lo = hi: hi = lo + (threesum058(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 58 lo = hi: hi = lo + (threesum059(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 59 lo = hi: hi = lo + (threesum060(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 60 lo = hi: hi = lo + (threesum061(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 61 lo = hi: hi = lo + (threesum062(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 62 lo = hi: hi = lo + (threesum063(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 63 lo = hi: hi = lo + (threesum064(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 64 lo = hi: hi = lo + (threesum065(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 65 lo = hi: hi = lo + (threesum066(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 66 lo = hi: hi = lo + (threesum067(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 67 lo = hi: hi = lo + (threesum068(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 68 lo = hi: hi = lo + (threesum069(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 69 lo = hi: hi = lo + (threesum070(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 70 lo = hi: hi = lo + (threesum071(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 71 lo = hi: hi = lo + (threesum072(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 72 lo = hi: hi = lo + (threesum073(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 73 lo = hi: hi = lo + (threesum074(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 74 lo = hi: hi = lo + (threesum075(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 75 lo = hi: hi = lo + (threesum076(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 76 lo = hi: hi = lo + (threesum077(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 77 lo = hi: hi = lo + (threesum078(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 78 lo = hi: hi = lo + (threesum079(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 79 lo = hi: hi = lo + (threesum080(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 80 lo = hi: hi = lo + (threesum081(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 81 lo = hi: hi = lo + (threesum082(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 82 lo = hi: hi = lo + (threesum083(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 83 lo = hi: hi = lo + (threesum084(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 84 lo = hi: hi = lo + (threesum085(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 85 lo = hi: hi = lo + (threesum086(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 86 lo = hi: hi = lo + (threesum087(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 87 lo = hi: hi = lo + (threesum088(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 88 lo = hi: hi = lo + (threesum089(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 89 lo = hi: hi = lo + (threesum090(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 90 lo = hi: hi = lo + (threesum091(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 91 lo = hi: hi = lo + (threesum092(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 92 lo = hi: hi = lo + (threesum093(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 93 lo = hi: hi = lo + (threesum094(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 94 lo = hi: hi = lo + (threesum095(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 95 lo = hi: hi = lo + (threesum096(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 96 lo = hi: hi = lo + (threesum097(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 97 lo = hi: hi = lo + (threesum098(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 98 lo = hi: hi = lo + (threesum099(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 99 lo = hi: hi = lo + (threesum100(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 100 lo = hi: hi = lo + (threesum101(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 101 lo = hi: hi = lo + (threesum102(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 102 lo = hi: hi = lo + (threesum103(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 103 lo = hi: hi = lo + (threesum104(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 104 lo = hi: hi = lo + (threesum105(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 105 lo = hi: hi = lo + (threesum106(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 106 lo = hi: hi = lo + (threesum107(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 107 lo = hi: hi = lo + (threesum108(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 108 lo = hi: hi = lo + (threesum109(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 109 lo = hi: hi = lo + (threesum110(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 110 lo = hi: hi = lo + (threesum111(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 111 lo = hi: hi = lo + (threesum112(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 112 lo = hi: hi = lo + (threesum113(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 113 lo = hi: hi = lo + (threesum114(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 114 lo = hi: hi = lo + (threesum115(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 115 lo = hi: hi = lo + (threesum116(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 116 lo = hi: hi = lo + (threesum117(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 117 lo = hi: hi = lo + (threesum118(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 118 lo = hi: hi = lo + (threesum119(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 119 lo = hi: hi = lo + (threesum120(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 120 lo = hi: hi = lo + (threesum121(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 121 lo = hi: hi = lo + (threesum122(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 122 lo = hi: hi = lo + (threesum123(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 123 lo = hi: hi = lo + (threesum124(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 124 lo = hi: hi = lo + (threesum125(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 125 lo = hi: hi = lo + (threesum126(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 126 lo = hi: hi = lo + (threesum127(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 127 lo = hi: hi = lo + (threesum128(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 128 lo = hi: hi = lo + (threesum129(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 129 lo = hi: hi = lo + (threesum130(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 130 lo = hi: hi = lo + (threesum131(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 131 lo = hi: hi = lo + (threesum132(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 132 lo = hi: hi = lo + (threesum133(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 133 lo = hi: hi = lo + (threesum134(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 134 lo = hi: hi = lo + (threesum135(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 135 lo = hi: hi = lo + (threesum136(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 136 lo = hi: hi = lo + (threesum137(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 137 lo = hi: hi = lo + (threesum138(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 138 lo = hi: hi = lo + (threesum139(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 139 lo = hi: hi = lo + (threesum140(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 140 lo = hi: hi = lo + (threesum141(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 141 lo = hi: hi = lo + (threesum142(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 142 lo = hi: hi = lo + (threesum143(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 143 lo = hi: hi = lo + (threesum144(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 144 lo = hi: hi = lo + (threesum145(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 145 lo = hi: hi = lo + (threesum146(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 146 lo = hi: hi = lo + (threesum147(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 147 lo = hi: hi = lo + (threesum148(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 148 lo = hi: hi = lo + (threesum149(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 149 lo = hi: hi = lo + (threesum150(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 150 lo = hi: hi = lo + (threesum151(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 151 lo = hi: hi = lo + (threesum152(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 152 lo = hi: hi = lo + (threesum153(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 153 lo = hi: hi = lo + (threesum154(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 154 lo = hi: hi = lo + (threesum155(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 155 lo = hi: hi = lo + (threesum156(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 156 lo = hi: hi = lo + (threesum157(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 157 lo = hi: hi = lo + (threesum158(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 158 lo = hi: hi = lo + (threesum159(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 159 lo = hi: hi = lo + (threesum160(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 160 lo = hi: hi = lo + (threesum161(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 161 lo = hi: hi = lo + (threesum162(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 162 lo = hi: hi = lo + (threesum163(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 163 lo = hi: hi = lo + (threesum164(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 164 lo = hi: hi = lo + (threesum165(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 165 lo = hi: hi = lo + (threesum166(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 166 lo = hi: hi = lo + (threesum167(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 167 lo = hi: hi = lo + (threesum168(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 168 lo = hi: hi = lo + (threesum169(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 169 lo = hi: hi = lo + (threesum170(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 170 lo = hi: hi = lo + (threesum171(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 171 lo = hi: hi = lo + (threesum172(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 172 lo = hi: hi = lo + (threesum173(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 173 lo = hi: hi = lo + (threesum174(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 174 lo = hi: hi = lo + (threesum175(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 175 lo = hi: hi = lo + (threesum176(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 176 lo = hi: hi = lo + (threesum177(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 177 lo = hi: hi = lo + (threesum178(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 178 lo = hi: hi = lo + (threesum179(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 179 lo = hi: hi = lo + (threesum180(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 180 lo = hi: hi = lo + (threesum181(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 181 lo = hi: hi = lo + (threesum182(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 182 lo = hi: hi = lo + (threesum183(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 183 lo = hi: hi = lo + (threesum184(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 184 lo = hi: hi = lo + (threesum185(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 185 lo = hi: hi = lo + (threesum186(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 186 lo = hi: hi = lo + (threesum187(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 187 lo = hi: hi = lo + (threesum188(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 188 lo = hi: hi = lo + (threesum189(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 189 lo = hi: hi = lo + (threesum190(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 190 lo = hi: hi = lo + (threesum191(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 191 lo = hi: hi = lo + (threesum192(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 192 lo = hi: hi = lo + (threesum193(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 193 lo = hi: hi = lo + (threesum194(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 194 lo = hi: hi = lo + (threesum195(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 195 lo = hi: hi = lo + (threesum196(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 196 lo = hi: hi = lo + (threesum197(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 197 lo = hi: hi = lo + (threesum198(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 198 lo = hi: hi = lo + (threesum199(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 199 lo = hi: hi = lo + (threesum200(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 200 lo = hi: hi = lo + (threesum201(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 201 lo = hi: hi = lo + (threesum202(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 202 lo = hi: hi = lo + (threesum203(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 203 lo = hi: hi = lo + (threesum204(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 204 lo = hi: hi = lo + (threesum205(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 205 lo = hi: hi = lo + (threesum206(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 206 lo = hi: hi = lo + (threesum207(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 207 lo = hi: hi = lo + (threesum208(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 208 lo = hi: hi = lo + (threesum209(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 209 lo = hi: hi = lo + (threesum210(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 210 lo = hi: hi = lo + (threesum211(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 211 lo = hi: hi = lo + (threesum212(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 212 lo = hi: hi = lo + (threesum213(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 213 lo = hi: hi = lo + (threesum214(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 214 lo = hi: hi = lo + (threesum215(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 215 lo = hi: hi = lo + (threesum216(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 216 lo = hi: hi = lo + (threesum217(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 217 lo = hi: hi = lo + (threesum218(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 218 lo = hi: hi = lo + (threesum219(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 219 lo = hi: hi = lo + (threesum220(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 220 lo = hi: hi = lo + (threesum221(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 221 lo = hi: hi = lo + (threesum222(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 222 lo = hi: hi = lo + (threesum223(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 223 lo = hi: hi = lo + (threesum224(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 224 lo = hi: hi = lo + (threesum225(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 225 lo = hi: hi = lo + (threesum226(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 226 lo = hi: hi = lo + (threesum227(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 227 lo = hi: hi = lo + (threesum228(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 228 lo = hi: hi = lo + (threesum229(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 229 lo = hi: hi = lo + (threesum230(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 230 lo = hi: hi = lo + (threesum231(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 231 lo = hi: hi = lo + (threesum232(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 232 lo = hi: hi = lo + (threesum233(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 233 lo = hi: hi = lo + (threesum234(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 234 lo = hi: hi = lo + (threesum235(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 235 lo = hi: hi = lo + (threesum236(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 236 lo = hi: hi = lo + (threesum237(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 237 lo = hi: hi = lo + (threesum238(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 238 lo = hi: hi = lo + (threesum239(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 239 lo = hi: hi = lo + (threesum240(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 240 lo = hi: hi = lo + (threesum241(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 241 lo = hi: hi = lo + (threesum242(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 242 lo = hi: hi = lo + (threesum243(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 243 lo = hi: hi = lo + (threesum244(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 244 lo = hi: hi = lo + (threesum245(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 245 lo = hi: hi = lo + (threesum246(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 246 lo = hi: hi = lo + (threesum247(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 247 lo = hi: hi = lo + (threesum248(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 248 lo = hi: hi = lo + (threesum249(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 249 lo = hi: hi = lo + (threesum250(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 250 lo = hi: hi = lo + (threesum251(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 251 lo = hi: hi = lo + (threesum252(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 252 lo = hi: hi = lo + (threesum253(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 253 lo = hi: hi = lo + (threesum254(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 254 lo = hi: hi = lo + (threesum255(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 255 lo = hi: hi = lo + (threesum256(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 256 lo = hi: hi = lo + (threesum257(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 257 lo = hi: hi = lo + (threesum258(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 258 lo = hi: hi = lo + (threesum259(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 259 lo = hi: hi = lo + (threesum260(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 260 lo = hi: hi = lo + (threesum261(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 261 lo = hi: hi = lo + (threesum262(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 262 lo = hi: hi = lo + (threesum263(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 263 lo = hi: hi = lo + (threesum264(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 264 lo = hi: hi = lo + (threesum265(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 265 lo = hi: hi = lo + (threesum266(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 266 lo = hi: hi = lo + (threesum267(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 267 lo = hi: hi = lo + (threesum268(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 268 lo = hi: hi = lo + (threesum269(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 269 lo = hi: hi = lo + (threesum270(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 270 lo = hi: hi = lo + (threesum271(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 271 lo = hi: hi = lo + (threesum272(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 272 lo = hi: hi = lo + (threesum273(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 273 lo = hi: hi = lo + (threesum274(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 274 lo = hi: hi = lo + (threesum275(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 275 lo = hi: hi = lo + (threesum276(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 276 lo = hi: hi = lo + (threesum277(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 277 lo = hi: hi = lo + (threesum278(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 278 lo = hi: hi = lo + (threesum279(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 279 lo = hi: hi = lo + (threesum280(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 280 lo = hi: hi = lo + (threesum281(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 281 lo = hi: hi = lo + (threesum282(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 282 lo = hi: hi = lo + (threesum283(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 283 lo = hi: hi = lo + (threesum284(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 284 lo = hi: hi = lo + (threesum285(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 285 lo = hi: hi = lo + (threesum286(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 286 lo = hi: hi = lo + (threesum287(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 287 lo = hi: hi = lo + (threesum288(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 288 lo = hi: hi = lo + (threesum289(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 289 lo = hi: hi = lo + (threesum290(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 290 lo = hi: hi = lo + (threesum291(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 291 lo = hi: hi = lo + (threesum292(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 292 lo = hi: hi = lo + (threesum293(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 293 lo = hi: hi = lo + (threesum294(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 294 lo = hi: hi = lo + (threesum295(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 295 lo = hi: hi = lo + (threesum296(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 296 lo = hi: hi = lo + (threesum297(N()) / sumcubed): If (R >= lo) And (R < hi) Then ThreeSum = 297 Exit Function exitfunction: ThreeSum = -1 End Function