add the qrcode support