add scan qr code implementation