This is amazing! Well done!!
(small nitpick, would “negative” be a better description than “invert”?)