patterns and handlers may also be provided in an array