This is hard. Like really hard.