added missing self=this