From mboxrd@z Thu Jan 1 00:00:00 1970 From: John.C.Harrison@Intel.com Subject: [PATCH v3 16/28] drm/i915: Convert trace functions from seqno to request Date: Mon, 24 Nov 2014 18:49:38 +0000 Message-ID: <1416854990-1920-17-git-send-email-John.C.Harrison@Intel.com> References: <1416854990-1920-1-git-send-email-John.C.Harrison@Intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id A6BF66EE1F for ; Mon, 24 Nov 2014 10:50:21 -0800 (PST) In-Reply-To: <1416854990-1920-1-git-send-email-John.C.Harrison@Intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Intel-GFX@Lists.FreeDesktop.Org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogSm9obiBIYXJyaXNvbiA8Sm9obi5DLkhhcnJpc29uQEludGVsLmNvbT4KCkFsbCB0aGUg Y29kZSBhYm92ZSBpcyBub3cgdXNpbmcgcmVxdWVzdHMgbm90IHNlcW5vcyBzbyBpdCBpcyBwb3Nz aWJsZSB0byBjb252ZXJ0CnRoZSB0cmFjZSBmdW5jdGlvbnMgYWNyb3NzLiBOb3RlIHRoYXQgcmF0 aGVyIHRoYW4gZ2V0IGludG8gcHJvYmxlbWF0aWMgcmVmZXJlbmNlCmNvdW50aW5nIGlzc3Vlcywg dGhlIHRyYWNlIGNvZGUgb25seSBzYXZlcyB0aGUgc2Vxbm8gYW5kIHJpbmcgdmFsdWVzIGZyb20g dGhlCnJlcXVlc3Qgc3RydWN0dXJlIG5vdCB0aGUgc3RydWN0dXJlIHBvaW50ZXIgaXRzZWxmLgoK Rm9yOiBWSVotNDM3NwpTaWduZWQtb2ZmLWJ5OiBKb2huIEhhcnJpc29uIDxKb2huLkMuSGFycmlz b25ASW50ZWwuY29tPgpSZXZpZXdlZC1ieTogVGhvbWFzIERhbmllbCA8VGhvbWFzLkRhbmllbEBp bnRlbC5jb20+Ci0tLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyAgICAgICAgICAg IHwgICAxMiArKystLS0tCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9leGVjYnVmZmVy LmMgfCAgICA0ICstLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV90cmFjZS5oICAgICAgICAg IHwgICA0NyArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDMz IGluc2VydGlvbnMoKyksIDMwIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9pOTE1L2k5MTVfZ2VtLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCmlu ZGV4IGE0NTMzNWUuLjY5YzNlNTAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5 MTVfZ2VtLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwpAQCAtMTI0MSw4 ICsxMjQxLDcgQEAgaW50IF9faTkxNV93YWl0X3JlcXVlc3Qoc3RydWN0IGRybV9pOTE1X2dlbV9y ZXF1ZXN0ICpyZXEsCiAJCXJldHVybiAtRU5PREVWOwogCiAJLyogUmVjb3JkIGN1cnJlbnQgdGlt ZSBpbiBjYXNlIGludGVycnVwdGVkIGJ5IHNpZ25hbCwgb3Igd2VkZ2VkICovCi0JdHJhY2VfaTkx NV9nZW1fcmVxdWVzdF93YWl0X2JlZ2luKGk5MTVfZ2VtX3JlcXVlc3RfZ2V0X3JpbmcocmVxKSwK LQkJCQkJICBpOTE1X2dlbV9yZXF1ZXN0X2dldF9zZXFubyhyZXEpKTsKKwl0cmFjZV9pOTE1X2dl bV9yZXF1ZXN0X3dhaXRfYmVnaW4ocmVxKTsKIAliZWZvcmUgPSBrdGltZV9nZXRfcmF3X25zKCk7 CiAJZm9yICg7OykgewogCQlzdHJ1Y3QgdGltZXJfbGlzdCB0aW1lcjsKQEAgLTEyOTQsOCArMTI5 Myw3IEBAIGludCBfX2k5MTVfd2FpdF9yZXF1ZXN0KHN0cnVjdCBkcm1faTkxNV9nZW1fcmVxdWVz dCAqcmVxLAogCQl9CiAJfQogCW5vdyA9IGt0aW1lX2dldF9yYXdfbnMoKTsKLQl0cmFjZV9pOTE1 X2dlbV9yZXF1ZXN0X3dhaXRfZW5kKGk5MTVfZ2VtX3JlcXVlc3RfZ2V0X3JpbmcocmVxKSwKLQkJ CQkJaTkxNV9nZW1fcmVxdWVzdF9nZXRfc2Vxbm8ocmVxKSk7CisJdHJhY2VfaTkxNV9nZW1fcmVx dWVzdF93YWl0X2VuZChyZXEpOwogCiAJaWYgKCFpcnFfdGVzdF9pbl9wcm9ncmVzcykKIAkJcmlu Zy0+aXJxX3B1dChyaW5nKTsKQEAgLTI1MDAsNyArMjQ5OCw3IEBAIGludCBfX2k5MTVfYWRkX3Jl cXVlc3Qoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZywKIAkJc3Bpbl91bmxvY2soJmZpbGVf cHJpdi0+bW0ubG9jayk7CiAJfQogCi0JdHJhY2VfaTkxNV9nZW1fcmVxdWVzdF9hZGQocmluZywg cmVxdWVzdC0+c2Vxbm8pOworCXRyYWNlX2k5MTVfZ2VtX3JlcXVlc3RfYWRkKHJlcXVlc3QpOwog CXJpbmctPm91dHN0YW5kaW5nX2xhenlfcmVxdWVzdCA9IE5VTEw7CiAKIAlpOTE1X3F1ZXVlX2hh bmdjaGVjayhyaW5nLT5kZXYpOwpAQCAtMjc4OSw3ICsyNzg3LDcgQEAgaTkxNV9nZW1fcmV0aXJl X3JlcXVlc3RzX3Jpbmcoc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZykKIAkJaWYgKCFpOTE1 X3NlcW5vX3Bhc3NlZChzZXFubywgcmVxdWVzdC0+c2Vxbm8pKQogCQkJYnJlYWs7CiAKLQkJdHJh Y2VfaTkxNV9nZW1fcmVxdWVzdF9yZXRpcmUocmluZywgcmVxdWVzdC0+c2Vxbm8pOworCQl0cmFj ZV9pOTE1X2dlbV9yZXF1ZXN0X3JldGlyZShyZXF1ZXN0KTsKIAogCQkvKiBUaGlzIGlzIG9uZSBv ZiB0aGUgZmV3IGNvbW1vbiBpbnRlcnNlY3Rpb24gcG9pbnRzCiAJCSAqIGJldHdlZW4gbGVnYWN5 IHJpbmdidWZmZXIgc3VibWlzc2lvbiBhbmQgZXhlY2xpc3RzOgpAQCAtMzAzOCw3ICszMDM2LDcg QEAgaTkxNV9nZW1fb2JqZWN0X3N5bmMoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwK IAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCi0JdHJhY2VfaTkxNV9nZW1fcmluZ19zeW5jX3Rv KGZyb20sIHRvLCBzZXFubyk7CisJdHJhY2VfaTkxNV9nZW1fcmluZ19zeW5jX3RvKGZyb20sIHRv LCBvYmotPmxhc3RfcmVhZF9yZXEpOwogCXJldCA9IHRvLT5zZW1hcGhvcmUuc3luY190byh0bywg ZnJvbSwgc2Vxbm8pOwogCWlmICghcmV0KQogCQkvKiBXZSB1c2UgbGFzdF9yZWFkX3JlcSBiZWNh dXNlIHN5bmNfdG8oKQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1f ZXhlY2J1ZmZlci5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZXhlY2J1ZmZlci5j CmluZGV4IGZhYWRhNzUuLjBjMjVmNjIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2k5MTVfZ2VtX2V4ZWNidWZmZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bV9leGVjYnVmZmVyLmMKQEAgLTEyMTEsOSArMTIxMSw3IEBAIGk5MTVfZ2VtX3JpbmdidWZmZXJf c3VibWlzc2lvbihzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUs CiAJCQlyZXR1cm4gcmV0OwogCX0KIAotCXRyYWNlX2k5MTVfZ2VtX3JpbmdfZGlzcGF0Y2gocmlu ZywKLQkJICAgIGk5MTVfZ2VtX3JlcXVlc3RfZ2V0X3NlcW5vKGludGVsX3JpbmdfZ2V0X3JlcXVl c3QocmluZykpLAotCQkgICAgZmxhZ3MpOworCXRyYWNlX2k5MTVfZ2VtX3JpbmdfZGlzcGF0Y2go aW50ZWxfcmluZ19nZXRfcmVxdWVzdChyaW5nKSwgZmxhZ3MpOwogCiAJaTkxNV9nZW1fZXhlY2J1 ZmZlcl9tb3ZlX3RvX2FjdGl2ZSh2bWFzLCByaW5nKTsKIAlpOTE1X2dlbV9leGVjYnVmZmVyX3Jl dGlyZV9jb21tYW5kcyhkZXYsIGZpbGUsIHJpbmcsIGJhdGNoX29iaik7CmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X3RyYWNlLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X3RyYWNlLmgKaW5kZXggNzUxZDRhZC4uMmMwMzI3YiAxMDA2NDQKLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV90cmFjZS5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVf dHJhY2UuaApAQCAtMzI4LDggKzMyOCw4IEBAIFRSQUNFX0VWRU5UKGk5MTVfZ2VtX2V2aWN0X3Zt LAogVFJBQ0VfRVZFTlQoaTkxNV9nZW1fcmluZ19zeW5jX3RvLAogCSAgICBUUF9QUk9UTyhzdHJ1 Y3QgaW50ZWxfZW5naW5lX2NzICpmcm9tLAogCQkgICAgIHN0cnVjdCBpbnRlbF9lbmdpbmVfY3Mg KnRvLAotCQkgICAgIHUzMiBzZXFubyksCi0JICAgIFRQX0FSR1MoZnJvbSwgdG8sIHNlcW5vKSwK KwkJICAgICBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSksCisJICAgIFRQX0FSR1Mo ZnJvbSwgdG8sIHJlcSksCiAKIAkgICAgVFBfU1RSVUNUX19lbnRyeSgKIAkJCSAgICAgX19maWVs ZCh1MzIsIGRldikKQEAgLTM0Miw3ICszNDIsNyBAQCBUUkFDRV9FVkVOVChpOTE1X2dlbV9yaW5n X3N5bmNfdG8sCiAJCQkgICBfX2VudHJ5LT5kZXYgPSBmcm9tLT5kZXYtPnByaW1hcnktPmluZGV4 OwogCQkJICAgX19lbnRyeS0+c3luY19mcm9tID0gZnJvbS0+aWQ7CiAJCQkgICBfX2VudHJ5LT5z eW5jX3RvID0gdG8tPmlkOwotCQkJICAgX19lbnRyeS0+c2Vxbm8gPSBzZXFubzsKKwkJCSAgIF9f ZW50cnktPnNlcW5vID0gaTkxNV9nZW1fcmVxdWVzdF9nZXRfc2Vxbm8ocmVxKTsKIAkJCSAgICks CiAKIAkgICAgVFBfcHJpbnRrKCJkZXY9JXUsIHN5bmMtZnJvbT0ldSwgc3luYy10bz0ldSwgc2Vx bm89JXUiLApAQCAtMzUyLDggKzM1Miw4IEBAIFRSQUNFX0VWRU5UKGk5MTVfZ2VtX3Jpbmdfc3lu Y190bywKICk7CiAKIFRSQUNFX0VWRU5UKGk5MTVfZ2VtX3JpbmdfZGlzcGF0Y2gsCi0JICAgIFRQ X1BST1RPKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsIHUzMiBzZXFubywgdTMyIGZsYWdz KSwKLQkgICAgVFBfQVJHUyhyaW5nLCBzZXFubywgZmxhZ3MpLAorCSAgICBUUF9QUk9UTyhzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSwgdTMyIGZsYWdzKSwKKwkgICAgVFBfQVJHUyhy ZXEsIGZsYWdzKSwKIAogCSAgICBUUF9TVFJVQ1RfX2VudHJ5KAogCQkJICAgICBfX2ZpZWxkKHUz MiwgZGV2KQpAQCAtMzYzLDExICszNjMsMTMgQEAgVFJBQ0VfRVZFTlQoaTkxNV9nZW1fcmluZ19k aXNwYXRjaCwKIAkJCSAgICAgKSwKIAogCSAgICBUUF9mYXN0X2Fzc2lnbigKKwkJCSAgIHN0cnVj dCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcgPQorCQkJCQkJaTkxNV9nZW1fcmVxdWVzdF9nZXRfcmlu ZyhyZXEpOwogCQkJICAgX19lbnRyeS0+ZGV2ID0gcmluZy0+ZGV2LT5wcmltYXJ5LT5pbmRleDsK IAkJCSAgIF9fZW50cnktPnJpbmcgPSByaW5nLT5pZDsKLQkJCSAgIF9fZW50cnktPnNlcW5vID0g c2Vxbm87CisJCQkgICBfX2VudHJ5LT5zZXFubyA9IGk5MTVfZ2VtX3JlcXVlc3RfZ2V0X3NlcW5v KHJlcSk7CiAJCQkgICBfX2VudHJ5LT5mbGFncyA9IGZsYWdzOwotCQkJICAgaTkxNV90cmFjZV9p cnFfZ2V0KHJpbmcsIHNlcW5vKTsKKwkJCSAgIGk5MTVfdHJhY2VfaXJxX2dldChyaW5nLCBfX2Vu dHJ5LT5zZXFubyk7CiAJCQkgICApLAogCiAJICAgIFRQX3ByaW50aygiZGV2PSV1LCByaW5nPSV1 LCBzZXFubz0ldSwgZmxhZ3M9JXgiLApAQCAtMzk4LDggKzQwMCw4IEBAIFRSQUNFX0VWRU5UKGk5 MTVfZ2VtX3JpbmdfZmx1c2gsCiApOwogCiBERUNMQVJFX0VWRU5UX0NMQVNTKGk5MTVfZ2VtX3Jl cXVlc3QsCi0JICAgIFRQX1BST1RPKHN0cnVjdCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcsIHUzMiBz ZXFubyksCi0JICAgIFRQX0FSR1MocmluZywgc2Vxbm8pLAorCSAgICBUUF9QUk9UTyhzdHJ1Y3Qg ZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSksCisJICAgIFRQX0FSR1MocmVxKSwKIAogCSAgICBU UF9TVFJVQ1RfX2VudHJ5KAogCQkJICAgICBfX2ZpZWxkKHUzMiwgZGV2KQpAQCAtNDA4LDkgKzQx MCwxMSBAQCBERUNMQVJFX0VWRU5UX0NMQVNTKGk5MTVfZ2VtX3JlcXVlc3QsCiAJCQkgICAgICks CiAKIAkgICAgVFBfZmFzdF9hc3NpZ24oCisJCQkgICBzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpy aW5nID0KKwkJCQkJCWk5MTVfZ2VtX3JlcXVlc3RfZ2V0X3JpbmcocmVxKTsKIAkJCSAgIF9fZW50 cnktPmRldiA9IHJpbmctPmRldi0+cHJpbWFyeS0+aW5kZXg7CiAJCQkgICBfX2VudHJ5LT5yaW5n ID0gcmluZy0+aWQ7Ci0JCQkgICBfX2VudHJ5LT5zZXFubyA9IHNlcW5vOworCQkJICAgX19lbnRy eS0+c2Vxbm8gPSBpOTE1X2dlbV9yZXF1ZXN0X2dldF9zZXFubyhyZXEpOwogCQkJICAgKSwKIAog CSAgICBUUF9wcmludGsoImRldj0ldSwgcmluZz0ldSwgc2Vxbm89JXUiLApAQCAtNDE4LDggKzQy Miw4IEBAIERFQ0xBUkVfRVZFTlRfQ0xBU1MoaTkxNV9nZW1fcmVxdWVzdCwKICk7CiAKIERFRklO RV9FVkVOVChpOTE1X2dlbV9yZXF1ZXN0LCBpOTE1X2dlbV9yZXF1ZXN0X2FkZCwKLQkgICAgVFBf UFJPVE8oc3RydWN0IGludGVsX2VuZ2luZV9jcyAqcmluZywgdTMyIHNlcW5vKSwKLQkgICAgVFBf QVJHUyhyaW5nLCBzZXFubykKKwkgICAgVFBfUFJPVE8oc3RydWN0IGRybV9pOTE1X2dlbV9yZXF1 ZXN0ICpyZXEpLAorCSAgICBUUF9BUkdTKHJlcSkKICk7CiAKIFRSQUNFX0VWRU5UKGk5MTVfZ2Vt X3JlcXVlc3RfY29tcGxldGUsCkBAIC00NDMsMTMgKzQ0NywxMyBAQCBUUkFDRV9FVkVOVChpOTE1 X2dlbV9yZXF1ZXN0X2NvbXBsZXRlLAogKTsKIAogREVGSU5FX0VWRU5UKGk5MTVfZ2VtX3JlcXVl c3QsIGk5MTVfZ2VtX3JlcXVlc3RfcmV0aXJlLAotCSAgICBUUF9QUk9UTyhzdHJ1Y3QgaW50ZWxf ZW5naW5lX2NzICpyaW5nLCB1MzIgc2Vxbm8pLAotCSAgICBUUF9BUkdTKHJpbmcsIHNlcW5vKQor CSAgICBUUF9QUk9UTyhzdHJ1Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSksCisJICAgIFRQ X0FSR1MocmVxKQogKTsKIAogVFJBQ0VfRVZFTlQoaTkxNV9nZW1fcmVxdWVzdF93YWl0X2JlZ2lu LAotCSAgICBUUF9QUk9UTyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nLCB1MzIgc2Vxbm8p LAotCSAgICBUUF9BUkdTKHJpbmcsIHNlcW5vKSwKKwkgICAgVFBfUFJPVE8oc3RydWN0IGRybV9p OTE1X2dlbV9yZXF1ZXN0ICpyZXEpLAorCSAgICBUUF9BUkdTKHJlcSksCiAKIAkgICAgVFBfU1RS VUNUX19lbnRyeSgKIAkJCSAgICAgX19maWVsZCh1MzIsIGRldikKQEAgLTQ2NSwxMCArNDY5LDEz IEBAIFRSQUNFX0VWRU5UKGk5MTVfZ2VtX3JlcXVlc3Rfd2FpdF9iZWdpbiwKIAkgICAgICogbGVz cyBkZXNpcmFibGUuCiAJICAgICAqLwogCSAgICBUUF9mYXN0X2Fzc2lnbigKKwkJCSAgIHN0cnVj dCBpbnRlbF9lbmdpbmVfY3MgKnJpbmcgPQorCQkJCQkJaTkxNV9nZW1fcmVxdWVzdF9nZXRfcmlu ZyhyZXEpOwogCQkJICAgX19lbnRyeS0+ZGV2ID0gcmluZy0+ZGV2LT5wcmltYXJ5LT5pbmRleDsK IAkJCSAgIF9fZW50cnktPnJpbmcgPSByaW5nLT5pZDsKLQkJCSAgIF9fZW50cnktPnNlcW5vID0g c2Vxbm87Ci0JCQkgICBfX2VudHJ5LT5ibG9ja2luZyA9IG11dGV4X2lzX2xvY2tlZCgmcmluZy0+ ZGV2LT5zdHJ1Y3RfbXV0ZXgpOworCQkJICAgX19lbnRyeS0+c2Vxbm8gPSBpOTE1X2dlbV9yZXF1 ZXN0X2dldF9zZXFubyhyZXEpOworCQkJICAgX19lbnRyeS0+YmxvY2tpbmcgPQorCQkJCSAgICAg bXV0ZXhfaXNfbG9ja2VkKCZyaW5nLT5kZXYtPnN0cnVjdF9tdXRleCk7CiAJCQkgICApLAogCiAJ ICAgIFRQX3ByaW50aygiZGV2PSV1LCByaW5nPSV1LCBzZXFubz0ldSwgYmxvY2tpbmc9JXMiLApA QCAtNDc3LDggKzQ4NCw4IEBAIFRSQUNFX0VWRU5UKGk5MTVfZ2VtX3JlcXVlc3Rfd2FpdF9iZWdp biwKICk7CiAKIERFRklORV9FVkVOVChpOTE1X2dlbV9yZXF1ZXN0LCBpOTE1X2dlbV9yZXF1ZXN0 X3dhaXRfZW5kLAotCSAgICBUUF9QUk9UTyhzdHJ1Y3QgaW50ZWxfZW5naW5lX2NzICpyaW5nLCB1 MzIgc2Vxbm8pLAotCSAgICBUUF9BUkdTKHJpbmcsIHNlcW5vKQorCSAgICBUUF9QUk9UTyhzdHJ1 Y3QgZHJtX2k5MTVfZ2VtX3JlcXVlc3QgKnJlcSksCisJICAgIFRQX0FSR1MocmVxKQogKTsKIAog REVDTEFSRV9FVkVOVF9DTEFTUyhpOTE1X3JpbmcsCi0tIAoxLjcuOS41CgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0 CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9w Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=