for communucation with device