added 'async' attribute