anchor.diff:              let k = predList.[k]
               buildRes k (index-1)
       buildRes (smallestList.[l]) l
  -// // let result = numbers |> solve2
  -let length = list.Length
  -// printfn "%A" result
  +
  +
   #time
  -// 1974+let (predList, smallestList, l) =
  +    numbers
  +    |> Array.ofList
  +    |> solve
  +
  +printfn "Result: %i" l
  +#time
  
positive.code:             internalSolve acc rest 
      internalSolve [] input |> List.maxBy fst |> fst
  
  let solve3 (input: int []) =
      let rec findLow currentIndex low high (input: int []) (smallestList: int []) =
          if low > high then low
          else
              let mid = ceil (float(low + high)/2.) |> int
              let (low, high) = 
                  if input.[smallestList.[mid]] < input.[currentIndex] 
                  then (mid+1, high) 
                  else (low, mid-1)
              findLow currentIndex low high input smallestList
  
negative.code: 
  let data = download fileUrl
  let numbers = data |> Seq.map int |> List.ofSeq
  
  let solve2 input =
      let rec internalSolve acc input =
  