Reimplement automatic pattern