Hi @mt73564
Basically you passed the value instead of assigned local arguments in the given def init statment causing incorrect passing of values when the class CNN block was used to create the Simple CNN Block as in when python libraries are used they are created in a way where parameters are passed through keyword arguments as @paulinpaloalto explained what it cost when using the CNNBlock with positional passing of information.
By using the param_name=variable_name syntax (known as a keyword argument), you explicitly tell Python:Use the value of my local/outer variable named variable_name and assign it to the parameter named param_name. This bypasses the variable shadowing issue because you are making a clear assigning of parameters and not just trying to read an unassigned local variable.
Regards
DP