void ForEachCounter(bool Function(dynamic key, dynamic value, int index) step) { int i = 0; for(var key in this.keys) { if(step(key,this[key],i) == false) break; i++; } }