captain jack sparrow played by robert downey junior