Updated dot function