@brytoncherrier: A lot of this