package Ġb azel . bazel . handlers Ċ Ċ import Ġb azel . Handler Priority Ċ import Ġb azel . bazel . events . Pattern Expanded Ċ Ċ class ĠPattern Expanded Handler Ġ: ĠB azel Handler Ġ{ ĊĠĠĠ Ġoverride Ġval Ġpriority Ġ= ĠHandler Priority . Medium ĊĊĠĠĠ Ġoverride Ġfun Ġhandle ( ctx : ĠHandler Context ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( ctx . event . has Expanded ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpatterns Ġ= Ġmutable ListOf < String >() ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( ctx . event . has Id () Ġ&& Ġctx . event . id . has Pattern ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġ 0 Ġuntil Ġctx . event . id . pattern . pattern Count ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpatterns . add ( ctx . event . id . pattern . get Pattern ( i )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPattern Expanded ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġctx . id , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġctx . children , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpatterns ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġctx . handler Iterator . next (). handle ( ctx ) Ċ }