+ pattern.c