It
's long, it
's ugly, but it works