gdc optimization, began with the exercises