Author: Patrick Bruch Richard Marback