use Carp qw( carp );
use Module::Load qw( load );
use String::Random;
use List::Util qw( any );
use Array::Utils qw( array_minus );
use constant {
-