pattern structure updated