package Ġio . space . bitcoin core . blocks . validators Ċ Ċ import Ġio . space . bitcoin core . models . Block Ċ Ċ class ĠBlock Validator Set Ġ: ĠI Block Validator Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġvalidators Ġ= Ġmutable ListOf < I Block Validator >() ĊĊĠĠĠ Ġoverride Ġfun Ġvalidate ( block : ĠBlock , Ġprevious Block : ĠBlock ) Ġ{ ĊĠĠĠĠĠĠĠ Ġvalidators . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . validate ( block , Ġprevious Block ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġadd Block Validator ( block Validator : ĠI Block Validator ) Ġ{ ĊĠĠĠĠĠĠĠ Ġvalidators . add ( block Validator ) ĊĠĠĠ Ġ} Ċ Ċ } Ċ