-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathVCABs.vex
1 lines (1 loc) · 17 KB
/
VCABs.vex
1
./___ThIsisATemPoRaRyFiLE___.json 000666 000000 000000 0000036037 13462627446 017165 0 ustar 00 000000 000000 13462465500 31106215312 {"title":"VCABs","description":"A short description of your project","version":"0.0.1","icon":"USER000x.bmp","competition":false,"files":{"robot-config.h":"dXNpbmcgbmFtZXNwYWNlIHZleDsKdmV4OjpicmFpbiBCcmFpbjsKdmV4Ojptb3RvciBMZWZ0RHJpdmUgKHZleDo6UE9SVDIsIHZleDo6Z2VhclNldHRpbmc6OnJhdGlvMThfMSxmYWxzZSk7CnZleDo6bW90b3IgUmlnaHREcml2ZTIgKHZleDo6UE9SVDMsIHZleDo6Z2VhclNldHRpbmc6OnJhdGlvMThfMSx0cnVlKTsKdmV4Ojptb3RvciBMZWZ0RHJpdmUyICh2ZXg6OlBPUlQxOSwgdmV4OjpnZWFyU2V0dGluZzo6cmF0aW8xOF8xLGZhbHNlKTsKdmV4Ojptb3RvciBSaWdodERyaXZlICh2ZXg6OlBPUlQyMCwgdmV4OjpnZWFyU2V0dGluZzo6cmF0aW8xOF8xLHRydWUpOwp2ZXg6OmNvbnRyb2xsZXIgQ29udHJvbGxlcjE7","main.cpp":"I2luY2x1ZGUgInJvYm90LWNvbmZpZy5oIgovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZDQUJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlZCBieTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi8qICAgICAgICAgICAgICAgICAgICAgIEJlbiBDb3JuZWxpdXMgYW5kIE9yaW4gU2VsYnkgKDIwMTkpICAgICAgICAgICAgICAgICAgICAgKi8KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwovKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLyogICAgICBGb3IgMi13aGVlbCBkcml2ZTogIHVzZSB0aGUgYmxvY2tzIGFzIHRoZXkgYXJlICAgICAgICAgICAgICAgICAgICAgICAgICAqLwovKiAgICAgIEZvciA0LXdoZWVsIGRyaXZlOiAgdW5jb21tZW50IChkZWxldGUgICIvLyIgYmVmb3JlIHRoZSBjb21tYW5kKSB0aGUgICAgICovCi8qICAgICAgICAgICAgICAgICAgICAgICAgICBSZWFyRHJpdmUgY29tbWFuZHMgZm9yIGVhY2ggYmxvY2sgICAgICAgICAgICAgICAgICAgKi8KLyogICAgICBOYW1lIHRoZSBtb3RvcnM6ICAgIExlZnREcml2ZSwgUmlnaHREcml2ZSwgUmlnaHREcml2ZTIsICAgICAgICAgICAgICAgICAqLwovKiAgICAgICAgICAgICAgICAgICAgICAgICAgTGVmdERyaXZlMiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi8qICAgICAgQmUgc3VyZSB0byByZXZlcnNlIGFueSBtb3RvcnMgdGhhdCBuZWVkIHRvIGJlIHJldmVyc2VkIGluIG9yZGVyIHRvIGdvICAgKi8KLyogICAgICBmb3J3YXJkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwovKiAgICAgIFRIRVNFIERSSVZFIEJMT0NLUyBXSUxMIE9OTFkgV09SSyBJRiBBTEwgV0hFRUxTIEFSRSBUSEUgU0FNRSBTSVpFICAgICAgICovCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoKaW50IG9uZUJsb2NrOwoKdm9pZCBtb3ZlRndkKGludCBkZWcgPSAyMDAsIGludCBycG1zID0gMTYwKXsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5jbGVhclNjcmVlbigpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigxLDEpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KCJtb3ZlRndkIik7CiAgICBDb250cm9sbGVyMS5TY3JlZW4uc2V0Q3Vyc29yKDIsMSk7CiAgICBDb250cm9sbGVyMS5TY3JlZW4ucHJpbnQoIkRlZ3JlZXM6Iik7CiAgICBDb250cm9sbGVyMS5TY3JlZW4uc2V0Q3Vyc29yKDIsMTIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KGRlZyk7CiAgICBDb250cm9sbGVyMS5TY3JlZW4uc2V0Q3Vyc29yKDMsMSk7CiAgICBDb250cm9sbGVyMS5TY3JlZW4ucHJpbnQoIlJQTXM6Iik7CiAgICBDb250cm9sbGVyMS5TY3JlZW4uc2V0Q3Vyc29yKDMsMTIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KHJwbXMpOwogICAgLy9MZWZ0RHJpdmUyLnJvdGF0ZUZvcihkZWcscm90YXRpb25Vbml0czo6ZGVnLHJwbXMsdmVsb2NpdHlVbml0czo6cnBtLGZhbHNlKTsgICAgIC8vdW5jb21tZW50IGlmIHlvdSBoYXZlIDQtd2hlZWwgZHJpdmUKICAgIC8vUmlnaHREcml2ZTIucm90YXRlRm9yKGRlZyxyb3RhdGlvblVuaXRzOjpkZWcscnBtcyx2ZWxvY2l0eVVuaXRzOjpycG0sZmFsc2UpOyAgICAvL3VuY29tbWVudCBpZiB5b3UgaGF2ZSA0LXdoZWVsIGRyaXZlCiAgICBSaWdodERyaXZlLnJvdGF0ZUZvcihkZWcscm90YXRpb25Vbml0czo6ZGVnLHJwbXMsdmVsb2NpdHlVbml0czo6cnBtLGZhbHNlKTsgICAgCiAgICBMZWZ0RHJpdmUucm90YXRlRm9yKGRlZyxyb3RhdGlvblVuaXRzOjpkZWcscnBtcyx2ZWxvY2l0eVVuaXRzOjpycG0pOwp9Cgp2b2lkIG1vdmVCa3dkKGludCBkZWcgPSAyMDAsIGludCBycG1zID0gMTYwKXsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5jbGVhclNjcmVlbigpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigxLDEpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KCJtb3ZlQmt3ZCIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigyLDEpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KCJEZWdyZWVzOiIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigyLDEyKTsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5wcmludChkZWcpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigzLDEpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KCJSUE1zOiIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigzLDEyKTsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5wcmludChycG1zKTsKICAgIC8vTGVmdERyaXZlMi5yb3RhdGVGb3IoLWRlZyxyb3RhdGlvblVuaXRzOjpkZWcscnBtcyx2ZWxvY2l0eVVuaXRzOjpycG0sZmFsc2UpOyAgICAgLy91bmNvbW1lbnQgaWYgeW91IGhhdmUgNC13aGVlbCBkcml2ZQogICAgLy9SaWdodERyaXZlMi5yb3RhdGVGb3IoLWRlZyxyb3RhdGlvblVuaXRzOjpkZWcscnBtcyx2ZWxvY2l0eVVuaXRzOjpycG0sZmFsc2UpOyAgICAvL3VuY29tbWVudCBpZiB5b3UgaGF2ZSA0LXdoZWVsIGRyaXZlCiAgICBSaWdodERyaXZlLnJvdGF0ZUZvcigtZGVnLHJvdGF0aW9uVW5pdHM6OmRlZyxycG1zLHZlbG9jaXR5VW5pdHM6OnJwbSxmYWxzZSk7CiAgICBMZWZ0RHJpdmUucm90YXRlRm9yKC1kZWcscm90YXRpb25Vbml0czo6ZGVnLHJwbXMsdmVsb2NpdHlVbml0czo6cnBtKTsKfQoKdm9pZCB6UmlnaHQoaW50IGRlZyA9IDMxNSwgaW50IHJwbXMgPSAxMDApewogICAgQ29udHJvbGxlcjEuU2NyZWVuLmNsZWFyU2NyZWVuKCk7CiAgICBDb250cm9sbGVyMS5TY3JlZW4uc2V0Q3Vyc29yKDEsMSk7CiAgICBDb250cm9sbGVyMS5TY3JlZW4ucHJpbnQoInpSaWdodCIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigyLDEpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KCJEZWdyZWVzOiIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigyLDEyKTsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5wcmludChkZWcpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigzLDEpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KCJSUE1zOiIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigzLDEyKTsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5wcmludChycG1zKTsKICAgIC8vTGVmdERyaXZlMi5yb3RhdGVGb3IoZGVnLHJvdGF0aW9uVW5pdHM6OmRlZyxycG1zLHZlbG9jaXR5VW5pdHM6OnJwbSxmYWxzZSk7ICAgICAgLy91bmNvbW1lbnQgaWYgeW91IGhhdmUgNC13aGVlbCBkcml2ZQogICAgLy9SaWdodERyaXZlMi5yb3RhdGVGb3IoLWRlZyxyb3RhdGlvblVuaXRzOjpkZWcscnBtcyx2ZWxvY2l0eVVuaXRzOjpycG0sZmFsc2UpOyAgICAvL3VuY29tbWVudCBpZiB5b3UgaGF2ZSA0LXdoZWVsIGRyaXZlCiAgICBSaWdodERyaXZlLnJvdGF0ZUZvcigtZGVnLHJvdGF0aW9uVW5pdHM6OmRlZyxycG1zLHZlbG9jaXR5VW5pdHM6OnJwbSxmYWxzZSk7CiAgICBMZWZ0RHJpdmUucm90YXRlRm9yKGRlZyxyb3RhdGlvblVuaXRzOjpkZWcscnBtcyx2ZWxvY2l0eVVuaXRzOjpycG0pOwp9Cgp2b2lkIHpMZWZ0KGludCBkZWcgPSAzMTUsIGludCBycG1zID0gMTAwKXsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5jbGVhclNjcmVlbigpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigxLDEpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KCJ6TGVmdCIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigyLDEpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KCJEZWdyZWVzOiIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigyLDEyKTsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5wcmludChkZWcpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigzLDEpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KCJSUE1zOiIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigzLDEyKTsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5wcmludChycG1zKTsKICAgIC8vTGVmdERyaXZlMi5yb3RhdGVGb3IoLWRlZyxyb3RhdGlvblVuaXRzOjpkZWcscnBtcyx2ZWxvY2l0eVVuaXRzOjpycG0sZmFsc2UpOyAgICAvL3VuY29tbWVudCBpZiB5b3UgaGF2ZSA0LXdoZWVsIGRyaXZlCiAgICAvL1JpZ2h0RHJpdmUyLnJvdGF0ZUZvcihkZWcscm90YXRpb25Vbml0czo6ZGVnLHJwbXMsdmVsb2NpdHlVbml0czo6cnBtLGZhbHNlKTsgICAgLy91bmNvbW1lbnQgaWYgeW91IGhhdmUgNC13aGVlbCBkcml2ZQogICAgUmlnaHREcml2ZS5yb3RhdGVGb3IoZGVnLHJvdGF0aW9uVW5pdHM6OmRlZyxycG1zLHZlbG9jaXR5VW5pdHM6OnJwbSxmYWxzZSk7CiAgICBMZWZ0RHJpdmUucm90YXRlRm9yKC1kZWcscm90YXRpb25Vbml0czo6ZGVnLHJwbXMsdmVsb2NpdHlVbml0czo6cnBtKTsKfQoKdm9pZCB3aWRlUmlnaHQoaW50IGRlZyA9IDIwMCwgaW50IHJwbXMgPSAxMDApewogICAgQ29udHJvbGxlcjEuU2NyZWVuLmNsZWFyU2NyZWVuKCk7CiAgICBDb250cm9sbGVyMS5TY3JlZW4uc2V0Q3Vyc29yKDEsMSk7CiAgICBDb250cm9sbGVyMS5TY3JlZW4ucHJpbnQoIndpZGVSaWdodCIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigyLDEpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KCJEZWdyZWVzOiIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigyLDEyKTsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5wcmludChkZWcpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigzLDEpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KCJSUE1zOiIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigzLDEyKTsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5wcmludChycG1zKTsKICAgIFJpZ2h0RHJpdmUuc3RvcChicmFrZVR5cGU6OmhvbGQpOwogICAgLy9SaWdodERyaXZlMi5zdG9wKGJyYWtlVHlwZTo6aG9sZCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vdW5jb21tZW50IGlmIHlvdSBoYXZlIDQtd2hlZWwgZHJpdmUKICAgIC8vTGVmdERyaXZlMi5yb3RhdGVGb3IoZGVnLHJvdGF0aW9uVW5pdHM6OmRlZyxycG1zLHZlbG9jaXR5VW5pdHM6OnJwbSxmYWxzZSk7ICAgICAvL3VuY29tbWVudCBpZiB5b3UgaGF2ZSA0LXdoZWVsIGRyaXZlCiAgICBMZWZ0RHJpdmUucm90YXRlRm9yKGRlZyxyb3RhdGlvblVuaXRzOjpkZWcscnBtcyx2ZWxvY2l0eVVuaXRzOjpycG0pOwp9Cgp2b2lkIHdpZGVMZWZ0KGludCBkZWcgPSAyMDAsIGludCBycG1zID0gMTAwKXsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5jbGVhclNjcmVlbigpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigxLDEpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KCJ3aWRlTGVmdCIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigyLDEpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KCJEZWdyZWVzOiIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigyLDEyKTsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5wcmludChkZWcpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigzLDEpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KCJSUE1zOiIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigzLDEyKTsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5wcmludChycG1zKTsKICAgIExlZnREcml2ZS5zdG9wKGJyYWtlVHlwZTo6aG9sZCk7CiAgICAvL0xlZnREcml2ZTIuc3RvcChicmFrZVR5cGU6OmhvbGQpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vdW5jb21tZW50IGlmIHlvdSBoYXZlIDQtd2hlZWwgZHJpdmUKICAgIC8vUmlnaHREcml2ZTIucm90YXRlRm9yKGRlZyxyb3RhdGlvblVuaXRzOjpkZWcscnBtcyx2ZWxvY2l0eVVuaXRzOjpycG0sZmFsc2UpOyAgICAgLy91bmNvbW1lbnQgaWYgeW91IGhhdmUgNC13aGVlbCBkcml2ZQogICAgUmlnaHREcml2ZS5yb3RhdGVGb3IoZGVnLHJvdGF0aW9uVW5pdHM6OmRlZyxycG1zLHZlbG9jaXR5VW5pdHM6OnJwbSk7Cn0KCnZvaWQgYmxvY2tGd2QoaW50IHJwbXMgPSAxNjApewogICAgQ29udHJvbGxlcjEuU2NyZWVuLmNsZWFyU2NyZWVuKCk7CiAgICBDb250cm9sbGVyMS5TY3JlZW4uc2V0Q3Vyc29yKDEsMSk7CiAgICBDb250cm9sbGVyMS5TY3JlZW4ucHJpbnQoImJsb2NrRndkIik7CiAgICBDb250cm9sbGVyMS5TY3JlZW4uc2V0Q3Vyc29yKDIsMSk7CiAgICBDb250cm9sbGVyMS5TY3JlZW4ucHJpbnQoIkRlZ3JlZXM6Iik7CiAgICBDb250cm9sbGVyMS5TY3JlZW4uc2V0Q3Vyc29yKDIsMTIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KG9uZUJsb2NrKTsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5zZXRDdXJzb3IoMywxKTsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5wcmludCgiUlBNczoiKTsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5zZXRDdXJzb3IoMywxMik7CiAgICBDb250cm9sbGVyMS5TY3JlZW4ucHJpbnQocnBtcyk7CiAgICAvL0xlZnREcml2ZTIucm90YXRlRm9yKG9uZUJsb2NrLHJvdGF0aW9uVW5pdHM6OmRlZyxycG1zLHZlbG9jaXR5VW5pdHM6OnJwbSxmYWxzZSk7ICAgICAvL3VuY29tbWVudCBpZiB5b3UgaGF2ZSA0LXdoZWVsIGRyaXZlCiAgICAvL1JpZ2h0RHJpdmUyLnJvdGF0ZUZvcihvbmVCbG9jayxyb3RhdGlvblVuaXRzOjpkZWcscnBtcyx2ZWxvY2l0eVVuaXRzOjpycG0sZmFsc2UpOyAgICAvL3VuY29tbWVudCBpZiB5b3UgaGF2ZSA0LXdoZWVsIGRyaXZlCiAgICBSaWdodERyaXZlLnJvdGF0ZUZvcihvbmVCbG9jayxyb3RhdGlvblVuaXRzOjpkZWcscnBtcyx2ZWxvY2l0eVVuaXRzOjpycG0sZmFsc2UpOwogICAgTGVmdERyaXZlLnJvdGF0ZUZvcihvbmVCbG9jayxyb3RhdGlvblVuaXRzOjpkZWcscnBtcyx2ZWxvY2l0eVVuaXRzOjpycG0pOwp9Cgp2b2lkIGJsb2NrQndkKGludCBycG1zID0gMTYwKXsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5jbGVhclNjcmVlbigpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigxLDEpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KCJibG9ja0J3ZCIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigyLDEpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KCJEZWdyZWVzOiIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnNldEN1cnNvcigyLDEyKTsKICAgIENvbnRyb2xsZXIxLlNjcmVlbi5wcmludChvbmVCbG9jayk7CiAgICBDb250cm9sbGVyMS5TY3JlZW4uc2V0Q3Vyc29yKDMsMSk7CiAgICBDb250cm9sbGVyMS5TY3JlZW4ucHJpbnQoIlJQTXM6Iik7CiAgICBDb250cm9sbGVyMS5TY3JlZW4uc2V0Q3Vyc29yKDMsMTIpOwogICAgQ29udHJvbGxlcjEuU2NyZWVuLnByaW50KHJwbXMpOwogICAgLy9MZWZ0RHJpdmUyLnJvdGF0ZUZvcigtb25lQmxvY2sscm90YXRpb25Vbml0czo6ZGVnLHJwbXMsdmVsb2NpdHlVbml0czo6cnBtLGZhbHNlKTsgICAgIC8vdW5jb21tZW50IGlmIHlvdSBoYXZlIDQtd2hlZWwgZHJpdmUKICAgIC8vUmlnaHREcml2ZTIucm90YXRlRm9yKC1vbmVCbG9jayxyb3RhdGlvblVuaXRzOjpkZWcscnBtcyx2ZWxvY2l0eVVuaXRzOjpycG0sZmFsc2UpOyAgICAvL3VuY29tbWVudCBpZiB5b3UgaGF2ZSA0LXdoZWVsIGRyaXZlCiAgICBSaWdodERyaXZlLnJvdGF0ZUZvcigtb25lQmxvY2sscm90YXRpb25Vbml0czo6ZGVnLHJwbXMsdmVsb2NpdHlVbml0czo6cnBtLGZhbHNlKTsKICAgIExlZnREcml2ZS5yb3RhdGVGb3IoLW9uZUJsb2NrLHJvdGF0aW9uVW5pdHM6OmRlZyxycG1zLHZlbG9jaXR5VW5pdHM6OnJwbSk7Cn0KCgppbnQgbWFpbigpIHsKLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwovKiAgICAgICAgVXNlIHRoZSBmb2xsb3dpbmcgaW50ZWdlcnMgaW4gcGxhY2Ugb2YgdGhlIGRlZyBwYXJhbWV0ZXJzIGZvciBjb3JyZXNwb25kaW5nIGZ1bmN0aW9ucyAgICAgICAgKi8KLyogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZXQgWW91ciBUdXJuIFZhcmlhYmxlcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgIAogICAgaW50IG5EZWdaID0gMzUwOyAgIC8vVHVuZSB0aGlzIHRvIHRoZSBkZWcgdmFsdWUgeW91ciBib3QgbmVlZHMgdG8gcGVyZm9ybSBhIDkwZGVnIHplcm8tcG9pbnQgdHVybi4KICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vVXNlIHRoaXMgYXMgdGhlIGRlZyB2YWx1ZSBmb3IgelJpZ2h0KCkgYW5kIHpMZWZ0KCkgdG8gcGVyZm9ybSA5MGRlZwogICAgICAgICAgICAgICAgICAgICAgICAgICAgLy96LXR1cm5zLgogICAgCiAgICBpbnQgbkRlZ1cgPSAyMDA7ICAgLy9UdW5lIHRoaXMgdG8gdGhlIGRlZyB2YWx1ZSB5b3VyIGJvdCBuZWVkcyB0byBwZXJmb3JtIGEgOTBkZWcgd2lkZSB0dXJuLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9Vc2UgdGhpcyBhcyB0aGUgZGVnIHZhbHVlIGZvciB3aWRlUmlnaHQoKSBhbmQgd2lkZUxlZnQoKSB0byBwZXJmb3JtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLzkwZGVnIHdpZGUgdHVybnMuCgogICAgCi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNldCB5b3VyICJPbmUtQmxvY2siIERlZ3JlZSBWYWx1ZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgIAogICAgb25lQmxvY2sgPSA2NTA7ICAgICAvL3NldCB0byB0aGUgZGVnIHZhbHVlIHlvdXIgYm90IG5lZWRzIHRvIG1vdmUgb25lIGZ1bGwgYmxvY2sgb3Igc3F1YXJlCiAgICAKLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCi8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgU3RhcnQgeW91ciBhdXRvbm9tb3VzIHByb2dyYW0gaGVyZSAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwovKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcfC8gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFx8LyAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KCgoKCn0KCg=="},"device":{"slot":1,"type":"vexV5"},"language":{"name":"vc++"},"components":[{"name":"RightDrive","class":"vex::motor","port":"20","left":342,"top":360,"type":"motor","data":{"gears":200,"reversed":true}},{"name":"LeftDrive","class":"vex::motor","port":"2","left":479,"top":260,"type":"motor","data":{"gears":200,"reversed":false}},{"name":"LeftDrive2","class":"vex::motor","port":"19","left":653,"top":358,"type":"motor","data":{"gears":200,"reversed":false}},{"name":"RightDrive2","class":"vex::motor","port":"3","left":496,"top":443,"type":"motor","data":{"gears":200,"reversed":true}},{"name":"Controller1","class":"vex::controller","left":670,"top":85,"type":"controller"}]}