pattern code problem