 
           [
             bank_date(date),
-            String.slice(desc, 0, 40),
+            String.slice(desc, 0, 50),
             zero_to_empty(debit),
             zero_to_empty(credit)
           ]

          [d, m, y] =
            date |> String.slice(0, 10) |> String.split("/") |> Enum.map(&String.to_integer(&1))

          [Date.new!(y, m, d), String.slice(desc, 69, 40), debit, credit]

        "GB" ->
          [date, desc, _value, debit, credit, _bal] = String.split(x, ",")
          [bank_date(date), String.slice(desc, 69, 40), debit, credit]
      end
    end)
  end


    if debit === "" do
      # Credit Entry
      temp =
        Enum.filter(program, fn {_id, m} ->
          m.drcr === "C" and Decimal.compare(m.amount, credit) === :eq
        end)

      r =
        if length(temp) > 1 do
          Enum.sort_by(temp, fn {_id, m} -> m.date end, Date)
          |> hd

          # Enum.min_by(temp, fn {_id, m} -> Date.diff(date, m.date) end)
        else
          case temp do
            [] -> :not_found
            _ -> hd(temp)
          end
        end

      if r !== :not_found do
        {id, _} = r
