renamed some stuff to make it clearer.