removed initialize(), added direction