Need to tink of a more sensible way of mapping native events to haskell representations -- but this works for now