WIP, mostly finished but there may be changes as it's used for the first time