use 'this.then' instead of:
var then = 'then';
var a = this[then];
revert some minimalist minification optimisation for better performances