interpetorpattern