Implementation of patterns