There's hard and then there's "there are so many unexpected edge cases you'll surely be cut if you touch that code," which not fun-hard.
This is the latter.