open System.Collections.Generic
let canConstruct (ransomNote : string) (magazine : string) =
let letters = new Dictionary<char, int>()
match letters.TryGetValue char with
| true, n -> letters.[char] <- n+1
| _ -> letters.[char] <- 1
match letters.TryGetValue char with
| true, n when n > 1 -> letters.[char] <- n-1
| true, _ -> letters.Remove char |> ignore
printfn "%A" <| canConstruct "aa" "abba"