figured out how all this fits together