added QR code encoding