Intermediate and advanced patterns