design pattern translated