God this is complicated