Wow this really did require four threads lol