This is pointlessly overcomplicated, let's fix it.