async start() method