Used more verbose names and a better explanation on why this works.