reflections added to andreys code