erm this might be a lot of work to convert but whatever FUN