modified applying skip / accept pattern