config, step etc constrains by base abstract clas