GoF refresher