From fabrice.bacchella at orange.fr Tue Apr 12 11:40:27 2016 Content-Type: multipart/mixed; boundary="===============6361327980180011477==" MIME-Version: 1.0 From: Fabrice Bacchella To: users at ovirt.org Subject: [ovirt-users] editing VM settting Date: Tue, 12 Apr 2016 17:40:24 +0200 Message-ID: <282207AE-4BE8-4616-A89E-2DC4F02725AF@orange.fr> --===============6361327980180011477== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable --Apple-Mail=3D_0D15CE0B-0FB7-4D4E-8899-589FA7FB4F4F Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=3Dus-ascii I'm trying to change the way a VM is booted, I want an initial setup =3D with kernel, initrd and cmdline given and later removed. Using the GUI it works fine. But I have no success using the python API. And running with debug =3D enable, I get this strange result : > PUT /api/vms/8ced0f81-03fd-415b-a8ef-60141de7eeca HTTP/1.1 ... > > > > ... < < < < .../vmlinuz < .../initrd.img < .... < I got this with: os_params =3D3D params.OperatingSystem() os_params.set_boot(old_os_params.get_boot()) os_params.set_type(old_os_params.get_type()) os_params.set_kernel(None) os_params.set_initrd(None) os_params.set_cmdline(None) self.broker.set_os(os_params) self.broker.update() trying to set kernel and others to empty string is not really better: > > > > > > > ... < < < < < < < What kind of "magic values" the engine uses to removes values ? --Apple-Mail=3D_0D15CE0B-0FB7-4D4E-8899-589FA7FB4F4F Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=3Dus-ascii I'm trying to change the way a VM is booted, I want an =3D initial setup with kernel, initrd and cmdline given and later =3D removed.

Using th= e =3D GUI it works fine.

But I have no success using the python API. And running with = =3D debug enable, I get this strange result :

> PUT =3D /api/vms/8ced0f81-03fd-415b-a8ef-60141de7eeca HTTP/1.1
...
>     =3D <os type=3D3D"rhel_7x64">
>         = =3D <boot dev=3D3D"hd"/>
>         = =3D <boot dev=3D3D"network"/>
>     =3D </os>
...
<     <os type=3D3D"rhel_7x64">
<         <boot =3D dev=3D3D"hd"/>
<         =3D <boot dev=3D3D"network"/>
<         = =3D <kernel>.../vmlinuz</kernel>
<     =3D     <initrd>.../initrd.img</initrd>
<         =3D <cmdline>....</cmdline>
<     =3D </os>

I got this with:
os_params =3D3D  params.OperatingSystem()
os_params.set_boot(old_os_params.get_boot())
os_params.set_type(old_os_params.get_type())
os_params.set_kernel(None)
os_params.set_initrd(None)
os_params.set_cmdline(None)
self.broker.set_os(os_params)
self.broker.update()
trying to set kernel and others to =3D empty string is not really better:
>     <os type=3D3D"rhel_7x64">
>         <boot =3D dev=3D3D"hd"/>
>         =3D <boot dev=3D3D"network"/>
>         = =3D <kernel></kernel>
>         = =3D <initrd></initrd>
>         = =3D <cmdline></cmdline>
>     =3D </os>
...
<     <os type=3D3D"rhel_7x64">
<         <boot =3D dev=3D3D"hd"/>
<         =3D <boot dev=3D3D"network"/>
<         = =3D <kernel></kernel>
<         = =3D <initrd></initrd>
<         = =3D <cmdline></cmdline>
<     =3D </os>

What kind of "magic values" the engine uses to removes values = =3D ?

=3D --Apple-Mail=3D_0D15CE0B-0FB7-4D4E-8899-589FA7FB4F4F-- --===============6361327980180011477== Content-Type: multipart/alternative MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.bin" Ci0tQXBwbGUtTWFpbD1fMEQxNUNFMEItMEZCNy00RDRFLTg4OTktNTg5RkE3RkI0RjRGCkNvbnRl bnQtVHJhbnNmZXItRW5jb2Rpbmc6IHF1b3RlZC1wcmludGFibGUKQ29udGVudC1UeXBlOiB0ZXh0 L3BsYWluOwoJY2hhcnNldD11cy1hc2NpaQoKSSdtIHRyeWluZyB0byBjaGFuZ2UgdGhlIHdheSBh IFZNIGlzIGJvb3RlZCwgSSB3YW50IGFuIGluaXRpYWwgc2V0dXAgPQp3aXRoIGtlcm5lbCwgaW5p dHJkIGFuZCBjbWRsaW5lIGdpdmVuIGFuZCBsYXRlciByZW1vdmVkLgoKVXNpbmcgdGhlIEdVSSBp dCB3b3JrcyBmaW5lLgoKQnV0IEkgaGF2ZSBubyBzdWNjZXNzIHVzaW5nIHRoZSBweXRob24gQVBJ LiBBbmQgcnVubmluZyB3aXRoIGRlYnVnID0KZW5hYmxlLCBJIGdldCB0aGlzIHN0cmFuZ2UgcmVz dWx0IDoKCj4gUFVUIC9hcGkvdm1zLzhjZWQwZjgxLTAzZmQtNDE1Yi1hOGVmLTYwMTQxZGU3ZWVj YSBIVFRQLzEuMQouLi4KPiAgICAgPG9zIHR5cGU9M0QicmhlbF83eDY0Ij4KPiAgICAgICAgIDxi b290IGRldj0zRCJoZCIvPgo+ICAgICAgICAgPGJvb3QgZGV2PTNEIm5ldHdvcmsiLz4KPiAgICAg PC9vcz4KLi4uCjwgICAgIDxvcyB0eXBlPTNEInJoZWxfN3g2NCI+CjwgICAgICAgICA8Ym9vdCBk ZXY9M0QiaGQiLz4KPCAgICAgICAgIDxib290IGRldj0zRCJuZXR3b3JrIi8+CjwgICAgICAgICA8 a2VybmVsPi4uLi92bWxpbnV6PC9rZXJuZWw+CjwgICAgICAgICA8aW5pdHJkPi4uLi9pbml0cmQu aW1nPC9pbml0cmQ+CjwgICAgICAgICA8Y21kbGluZT4uLi4uPC9jbWRsaW5lPgo8ICAgICA8L29z PgoKSSBnb3QgdGhpcyB3aXRoOgpvc19wYXJhbXMgPTNEICBwYXJhbXMuT3BlcmF0aW5nU3lzdGVt KCkKb3NfcGFyYW1zLnNldF9ib290KG9sZF9vc19wYXJhbXMuZ2V0X2Jvb3QoKSkKb3NfcGFyYW1z LnNldF90eXBlKG9sZF9vc19wYXJhbXMuZ2V0X3R5cGUoKSkKb3NfcGFyYW1zLnNldF9rZXJuZWwo Tm9uZSkKb3NfcGFyYW1zLnNldF9pbml0cmQoTm9uZSkKb3NfcGFyYW1zLnNldF9jbWRsaW5lKE5v bmUpCnNlbGYuYnJva2VyLnNldF9vcyhvc19wYXJhbXMpCnNlbGYuYnJva2VyLnVwZGF0ZSgpCnRy eWluZyB0byBzZXQga2VybmVsIGFuZCBvdGhlcnMgdG8gZW1wdHkgc3RyaW5nIGlzIG5vdCByZWFs bHkgYmV0dGVyOgo+ICAgICA8b3MgdHlwZT0zRCJyaGVsXzd4NjQiPgo+ICAgICAgICAgPGJvb3Qg ZGV2PTNEImhkIi8+Cj4gICAgICAgICA8Ym9vdCBkZXY9M0QibmV0d29yayIvPgo+ICAgICAgICAg PGtlcm5lbD48L2tlcm5lbD4KPiAgICAgICAgIDxpbml0cmQ+PC9pbml0cmQ+Cj4gICAgICAgICA8 Y21kbGluZT48L2NtZGxpbmU+Cj4gICAgIDwvb3M+Ci4uLgo8ICAgICA8b3MgdHlwZT0zRCJyaGVs Xzd4NjQiPgo8ICAgICAgICAgPGJvb3QgZGV2PTNEImhkIi8+CjwgICAgICAgICA8Ym9vdCBkZXY9 M0QibmV0d29yayIvPgo8ICAgICAgICAgPGtlcm5lbD48L2tlcm5lbD4KPCAgICAgICAgIDxpbml0 cmQ+PC9pbml0cmQ+CjwgICAgICAgICA8Y21kbGluZT48L2NtZGxpbmU+CjwgICAgIDwvb3M+CgpX aGF0IGtpbmQgb2YgIm1hZ2ljIHZhbHVlcyIgdGhlIGVuZ2luZSB1c2VzIHRvIHJlbW92ZXMgdmFs dWVzID8KCgotLUFwcGxlLU1haWw9XzBEMTVDRTBCLTBGQjctNEQ0RS04ODk5LTU4OUZBN0ZCNEY0 RgpDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBxdW90ZWQtcHJpbnRhYmxlCkNvbnRlbnQtVHlw ZTogdGV4dC9odG1sOwoJY2hhcnNldD11cy1hc2NpaQoKPGh0bWw+PGhlYWQ+PG1ldGEgaHR0cC1l cXVpdj0zRCJDb250ZW50LVR5cGUiIGNvbnRlbnQ9M0QidGV4dC9odG1sID0KY2hhcnNldD0zRHVz LWFzY2lpIj48L2hlYWQ+PGJvZHkgc3R5bGU9M0Qid29yZC13cmFwOiBicmVhay13b3JkOyA9Ci13 ZWJraXQtbmJzcC1tb2RlOiBzcGFjZTsgLXdlYmtpdC1saW5lLWJyZWFrOiBhZnRlci13aGl0ZS1z cGFjZTsiID0KY2xhc3M9M0QiIj5JJ20gdHJ5aW5nIHRvIGNoYW5nZSB0aGUgd2F5IGEgVk0gaXMg Ym9vdGVkLCBJIHdhbnQgYW4gPQppbml0aWFsIHNldHVwIHdpdGgga2VybmVsLCBpbml0cmQgYW5k IGNtZGxpbmUgZ2l2ZW4gYW5kIGxhdGVyID0KcmVtb3ZlZC48ZGl2IGNsYXNzPTNEIiI+PGJyIGNs YXNzPTNEIiI+PC9kaXY+PGRpdiBjbGFzcz0zRCIiPlVzaW5nIHRoZSA9CkdVSSBpdCB3b3JrcyBm aW5lLjwvZGl2PjxkaXYgY2xhc3M9M0QiIj48YnIgY2xhc3M9M0QiIj48L2Rpdj48ZGl2ID0KY2xh c3M9M0QiIj5CdXQgSSBoYXZlIG5vIHN1Y2Nlc3MgdXNpbmcgdGhlIHB5dGhvbiBBUEkuIEFuZCBy dW5uaW5nIHdpdGggPQpkZWJ1ZyBlbmFibGUsIEkgZ2V0IHRoaXMgc3RyYW5nZSByZXN1bHQgOjwv ZGl2PjxkaXYgY2xhc3M9M0QiIj48YnIgPQpjbGFzcz0zRCIiPjwvZGl2PjxkaXYgY2xhc3M9M0Qi Ij48ZGl2IHN0eWxlPTNEIm1hcmdpbjogMHB4OyBmb250LXNpemU6ID0KMTFweDsgZm9udC1mYW1p bHk6IE1lbmxvOyIgY2xhc3M9M0QiIj4mZ3Q7IFBVVCA9Ci9hcGkvdm1zLzhjZWQwZjgxLTAzZmQt NDE1Yi1hOGVmLTYwMTQxZGU3ZWVjYSBIVFRQLzEuMTwvZGl2PjwvZGl2PjxkaXYgPQpjbGFzcz0z RCIiPi4uLjwvZGl2PjxkaXYgY2xhc3M9M0QiIj48ZGl2IHN0eWxlPTNEIm1hcmdpbjogMHB4OyA9 CmZvbnQtc2l6ZTogMTFweDsgZm9udC1mYW1pbHk6IE1lbmxvOyIgY2xhc3M9M0QiIj4mZ3Q7ICZu YnNwOyAmbmJzcDsgPQombHQ7b3MgdHlwZT0zRCJyaGVsXzd4NjQiJmd0OzwvZGl2PjxkaXYgc3R5 bGU9M0QibWFyZ2luOiAwcHg7IGZvbnQtc2l6ZTogPQoxMXB4OyBmb250LWZhbWlseTogTWVubG87 IiBjbGFzcz0zRCIiPiZndDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ID0KJmx0O2Jvb3Qg ZGV2PTNEImhkIi8mZ3Q7PC9kaXY+PGRpdiBzdHlsZT0zRCJtYXJnaW46IDBweDsgZm9udC1zaXpl OiA9CjExcHg7IGZvbnQtZmFtaWx5OiBNZW5sbzsiIGNsYXNzPTNEIiI+Jmd0OyAmbmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgPQombHQ7Ym9vdCBkZXY9M0QibmV0d29yayIvJmd0OzwvZGl2Pjxk aXYgc3R5bGU9M0QibWFyZ2luOiAwcHg7IGZvbnQtc2l6ZTogPQoxMXB4OyBmb250LWZhbWlseTog TWVubG87IiBjbGFzcz0zRCIiPiZndDsgJm5ic3A7ICZuYnNwOyA9CiZsdDsvb3MmZ3Q7PC9kaXY+ PC9kaXY+PGRpdiBjbGFzcz0zRCIiPi4uLjwvZGl2PjxkaXYgY2xhc3M9M0QiIj48ZGl2ID0Kc3R5 bGU9M0QibWFyZ2luOiAwcHg7IGZvbnQtc2l6ZTogMTFweDsgZm9udC1mYW1pbHk6IE1lbmxvOyIg PQpjbGFzcz0zRCIiPiZsdDsgJm5ic3A7ICZuYnNwOyAmbHQ7b3MgdHlwZT0zRCJyaGVsXzd4NjQi Jmd0OzwvZGl2PjxkaXYgPQpzdHlsZT0zRCJtYXJnaW46IDBweDsgZm9udC1zaXplOiAxMXB4OyBm b250LWZhbWlseTogTWVubG87IiA9CmNsYXNzPTNEIiI+Jmx0OyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgJmx0O2Jvb3QgPQpkZXY9M0QiaGQiLyZndDs8L2Rpdj48ZGl2IHN0eWxlPTNEIm1h cmdpbjogMHB4OyBmb250LXNpemU6IDExcHg7ID0KZm9udC1mYW1pbHk6IE1lbmxvOyIgY2xhc3M9 M0QiIj4mbHQ7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyA9CiZsdDtib290IGRldj0zRCJu ZXR3b3JrIi8mZ3Q7PC9kaXY+PGRpdiBzdHlsZT0zRCJtYXJnaW46IDBweDsgZm9udC1zaXplOiA9 CjExcHg7IGZvbnQtZmFtaWx5OiBNZW5sbzsiIGNsYXNzPTNEIiI+Jmx0OyAmbmJzcDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgPQombHQ7a2VybmVsJmd0Oy4uLi92bWxpbnV6Jmx0Oy9rZXJuZWwmZ3Q7 PC9kaXY+PGRpdiBzdHlsZT0zRCJtYXJnaW46IDBweDsgPQpmb250LXNpemU6IDExcHg7IGZvbnQt ZmFtaWx5OiBNZW5sbzsiIGNsYXNzPTNEIiI+Jmx0OyAmbmJzcDsgJm5ic3A7ID0KJm5ic3A7ICZu YnNwOyAmbHQ7aW5pdHJkJmd0Oy4uLi9pbml0cmQuaW1nJmx0Oy9pbml0cmQmZ3Q7PC9kaXY+PGRp diA9CnN0eWxlPTNEIm1hcmdpbjogMHB4OyBmb250LXNpemU6IDExcHg7IGZvbnQtZmFtaWx5OiBN ZW5sbzsiID0KY2xhc3M9M0QiIj4mbHQ7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyA9CiZs dDtjbWRsaW5lJmd0Oy4uLi4mbHQ7L2NtZGxpbmUmZ3Q7PC9kaXY+PGRpdiBzdHlsZT0zRCJtYXJn aW46IDBweDsgPQpmb250LXNpemU6IDExcHg7IGZvbnQtZmFtaWx5OiBNZW5sbzsiIGNsYXNzPTNE IiI+Jmx0OyAmbmJzcDsgJm5ic3A7ID0KJmx0Oy9vcyZndDs8L2Rpdj48L2Rpdj48ZGl2IGNsYXNz PTNEIiI+PGJyIGNsYXNzPTNEIiI+PC9kaXY+PGRpdiA9CmNsYXNzPTNEIiI+SSBnb3QgdGhpcyB3 aXRoOjwvZGl2PjxkaXYgY2xhc3M9M0QiIj48cHJlID0Kc3R5bGU9M0QiYmFja2dyb3VuZC1jb2xv cjogcmdiKDI1NSwgMjU1LCAyNTUpOyBmb250LWZhbWlseTogTWVubG87IiA9CmNsYXNzPTNEIiI+ b3NfcGFyYW1zID0zRCAgcGFyYW1zLk9wZXJhdGluZ1N5c3RlbSgpPGJyID0KY2xhc3M9M0QiIj5v c19wYXJhbXMuc2V0X2Jvb3Qob2xkX29zX3BhcmFtcy5nZXRfYm9vdCgpKTxiciA9CmNsYXNzPTNE IiI+b3NfcGFyYW1zLnNldF90eXBlKG9sZF9vc19wYXJhbXMuZ2V0X3R5cGUoKSk8YnIgPQpjbGFz cz0zRCIiPm9zX3BhcmFtcy5zZXRfa2VybmVsKDxzcGFuIHN0eWxlPTNEImNvbG9yOiMwMDAwODA7 IiA9CmNsYXNzPTNEIiI+Tm9uZTwvc3Bhbj4pPGJyIGNsYXNzPTNEIiI+b3NfcGFyYW1zLnNldF9p bml0cmQoPHNwYW4gPQpzdHlsZT0zRCJjb2xvcjojMDAwMDgwOyIgY2xhc3M9M0QiIj5Ob25lPC9z cGFuPik8YnIgPQpjbGFzcz0zRCIiPm9zX3BhcmFtcy5zZXRfY21kbGluZSg8c3BhbiBzdHlsZT0z RCJjb2xvcjojMDAwMDgwOyIgPQpjbGFzcz0zRCIiPk5vbmU8L3NwYW4+KTxiciBjbGFzcz0zRCIi PjxzcGFuIHN0eWxlPTNEImNvbG9yOiM5NDU1OGQ7IiA9CmNsYXNzPTNEIiI+c2VsZjwvc3Bhbj4u YnJva2VyLnNldF9vcyhvc19wYXJhbXMpPGJyIGNsYXNzPTNEIiI+PHNwYW4gPQpzdHlsZT0zRCJj b2xvcjojOTQ1NThkOyIgY2xhc3M9M0QiIj5zZWxmPC9zcGFuPi5icm9rZXIudXBkYXRlKCk8YnIg PQpjbGFzcz0zRCIiPjwvcHJlPjxkaXYgY2xhc3M9M0QiIj50cnlpbmcgdG8gc2V0IGtlcm5lbCBh bmQgb3RoZXJzIHRvID0KZW1wdHkgc3RyaW5nIGlzIG5vdCByZWFsbHkgYmV0dGVyOjwvZGl2Pjwv ZGl2PjxkaXYgY2xhc3M9M0QiIj48ZGl2ID0Kc3R5bGU9M0QibWFyZ2luOiAwcHg7IGZvbnQtc2l6 ZTogMTFweDsgZm9udC1mYW1pbHk6IE1lbmxvOyIgPQpjbGFzcz0zRCIiPiZndDsgJm5ic3A7ICZu YnNwOyAmbHQ7b3MgdHlwZT0zRCJyaGVsXzd4NjQiJmd0OzwvZGl2PjxkaXYgPQpzdHlsZT0zRCJt YXJnaW46IDBweDsgZm9udC1zaXplOiAxMXB4OyBmb250LWZhbWlseTogTWVubG87IiA9CmNsYXNz PTNEIiI+Jmd0OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJmx0O2Jvb3QgPQpkZXY9M0Qi aGQiLyZndDs8L2Rpdj48ZGl2IHN0eWxlPTNEIm1hcmdpbjogMHB4OyBmb250LXNpemU6IDExcHg7 ID0KZm9udC1mYW1pbHk6IE1lbmxvOyIgY2xhc3M9M0QiIj4mZ3Q7ICZuYnNwOyAmbmJzcDsgJm5i c3A7ICZuYnNwOyA9CiZsdDtib290IGRldj0zRCJuZXR3b3JrIi8mZ3Q7PC9kaXY+PGRpdiBzdHls ZT0zRCJtYXJnaW46IDBweDsgZm9udC1zaXplOiA9CjExcHg7IGZvbnQtZmFtaWx5OiBNZW5sbzsi IGNsYXNzPTNEIiI+Jmd0OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgPQombHQ7a2VybmVs Jmd0OyZsdDsva2VybmVsJmd0OzwvZGl2PjxkaXYgc3R5bGU9M0QibWFyZ2luOiAwcHg7IGZvbnQt c2l6ZTogPQoxMXB4OyBmb250LWZhbWlseTogTWVubG87IiBjbGFzcz0zRCIiPiZndDsgJm5ic3A7 ICZuYnNwOyAmbmJzcDsgJm5ic3A7ID0KJmx0O2luaXRyZCZndDsmbHQ7L2luaXRyZCZndDs8L2Rp dj48ZGl2IHN0eWxlPTNEIm1hcmdpbjogMHB4OyBmb250LXNpemU6ID0KMTFweDsgZm9udC1mYW1p bHk6IE1lbmxvOyIgY2xhc3M9M0QiIj4mZ3Q7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyA9 CiZsdDtjbWRsaW5lJmd0OyZsdDsvY21kbGluZSZndDs8L2Rpdj48ZGl2IHN0eWxlPTNEIm1hcmdp bjogMHB4OyA9CmZvbnQtc2l6ZTogMTFweDsgZm9udC1mYW1pbHk6IE1lbmxvOyIgY2xhc3M9M0Qi Ij4mZ3Q7ICZuYnNwOyAmbmJzcDsgPQombHQ7L29zJmd0OzwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9 M0QiIj4uLi48L2Rpdj48ZGl2IGNsYXNzPTNEIiI+PGRpdiA9CnN0eWxlPTNEIm1hcmdpbjogMHB4 OyBmb250LXNpemU6IDExcHg7IGZvbnQtZmFtaWx5OiBNZW5sbzsiID0KY2xhc3M9M0QiIj4mbHQ7 ICZuYnNwOyAmbmJzcDsgJmx0O29zIHR5cGU9M0QicmhlbF83eDY0IiZndDs8L2Rpdj48ZGl2ID0K c3R5bGU9M0QibWFyZ2luOiAwcHg7IGZvbnQtc2l6ZTogMTFweDsgZm9udC1mYW1pbHk6IE1lbmxv OyIgPQpjbGFzcz0zRCIiPiZsdDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZsdDtib290 ID0KZGV2PTNEImhkIi8mZ3Q7PC9kaXY+PGRpdiBzdHlsZT0zRCJtYXJnaW46IDBweDsgZm9udC1z aXplOiAxMXB4OyA9CmZvbnQtZmFtaWx5OiBNZW5sbzsiIGNsYXNzPTNEIiI+Jmx0OyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyAmbmJzcDsgPQombHQ7Ym9vdCBkZXY9M0QibmV0d29yayIvJmd0OzwvZGl2 PjxkaXYgc3R5bGU9M0QibWFyZ2luOiAwcHg7IGZvbnQtc2l6ZTogPQoxMXB4OyBmb250LWZhbWls eTogTWVubG87IiBjbGFzcz0zRCIiPiZsdDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ID0K Jmx0O2tlcm5lbCZndDsmbHQ7L2tlcm5lbCZndDs8L2Rpdj48ZGl2IHN0eWxlPTNEIm1hcmdpbjog MHB4OyBmb250LXNpemU6ID0KMTFweDsgZm9udC1mYW1pbHk6IE1lbmxvOyIgY2xhc3M9M0QiIj4m bHQ7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyA9CiZsdDtpbml0cmQmZ3Q7Jmx0Oy9pbml0 cmQmZ3Q7PC9kaXY+PGRpdiBzdHlsZT0zRCJtYXJnaW46IDBweDsgZm9udC1zaXplOiA9CjExcHg7 IGZvbnQtZmFtaWx5OiBNZW5sbzsiIGNsYXNzPTNEIiI+Jmx0OyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDsgPQombHQ7Y21kbGluZSZndDsmbHQ7L2NtZGxpbmUmZ3Q7PC9kaXY+PGRpdiBzdHls ZT0zRCJtYXJnaW46IDBweDsgPQpmb250LXNpemU6IDExcHg7IGZvbnQtZmFtaWx5OiBNZW5sbzsi IGNsYXNzPTNEIiI+Jmx0OyAmbmJzcDsgJm5ic3A7ID0KJmx0Oy9vcyZndDs8L2Rpdj48L2Rpdj48 ZGl2IGNsYXNzPTNEIiI+PGJyIGNsYXNzPTNEIiI+PC9kaXY+PGRpdiA9CmNsYXNzPTNEIiI+V2hh dCBraW5kIG9mICJtYWdpYyB2YWx1ZXMiIHRoZSBlbmdpbmUgdXNlcyB0byByZW1vdmVzIHZhbHVl cyA9Cj88L2Rpdj48ZGl2IGNsYXNzPTNEIiI+PGJyIGNsYXNzPTNEIiI+PC9kaXY+PC9ib2R5Pjwv aHRtbD49CgotLUFwcGxlLU1haWw9XzBEMTVDRTBCLTBGQjctNEQ0RS04ODk5LTU4OUZBN0ZCNEY0 Ri0tCg== --===============6361327980180011477==-- From smelamud at redhat.com Tue May 24 07:36:59 2016 Content-Type: multipart/mixed; boundary="===============2060741348685355115==" MIME-Version: 1.0 From: Shmuel Melamud To: users at ovirt.org Subject: Re: [ovirt-users] editing VM settting Date: Tue, 24 May 2016 14:36:57 +0300 Message-ID: In-Reply-To: 282207AE-4BE8-4616-A89E-2DC4F02725AF@orange.fr --===============2060741348685355115== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hi! What do you mean under "removing values"? You want , etc. not to appear in engine response? There is no such thing. There is always some value, empty or non-empty. Shmuel On Tue, Apr 12, 2016 at 6:40 PM, Fabrice Bacchella < fabrice.bacchella(a)orange.fr> wrote: > I'm trying to change the way a VM is booted, I want an initial setup with > kernel, initrd and cmdline given and later removed. > > Using the GUI it works fine. > > But I have no success using the python API. And running with debug enable, > I get this strange result : > > > PUT /api/vms/8ced0f81-03fd-415b-a8ef-60141de7eeca HTTP/1.1 > ... > > > > > > > > > ... > < > < > < > < .../vmlinuz > < .../initrd.img > < .... > < > > I got this with: > > os_params =3D params.OperatingSystem() > os_params.set_boot(old_os_params.get_boot()) > os_params.set_type(old_os_params.get_type()) > os_params.set_kernel(None) > os_params.set_initrd(None) > os_params.set_cmdline(None) > self.broker.set_os(os_params) > self.broker.update() > > trying to set kernel and others to empty string is not really better: > > > > > > > > > > > > > > > ... > < > < > < > < > < > < > < > > What kind of "magic values" the engine uses to removes values ? > > > _______________________________________________ > Users mailing list > Users(a)ovirt.org > http://lists.ovirt.org/mailman/listinfo/users > > --===============2060741348685355115== Content-Type: text/html MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.html" PGRpdiBkaXI9Imx0ciI+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCIgc3R5bGU9ImZvbnQtZmFt aWx5Om1vbm9zcGFjZSxtb25vc3BhY2U7Zm9udC1zaXplOngtc21hbGwiPkhpITxicj48YnI+PC9k aXY+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCIgc3R5bGU9ImZvbnQtZmFtaWx5Om1vbm9zcGFj ZSxtb25vc3BhY2U7Zm9udC1zaXplOngtc21hbGwiPldoYXQgZG8geW91IG1lYW4gdW5kZXIgJnF1 b3Q7cmVtb3ZpbmcgdmFsdWVzJnF1b3Q7P8KgIFlvdSB3YW50ICZsdDtrZXJuZWwmZ3Q7LCAmbHQ7 aW5pdHJkJmd0OyBldGMuIG5vdCB0byBhcHBlYXIgaW4gZW5naW5lIHJlc3BvbnNlPyBUaGVyZSBp cyBubyBzdWNoIHRoaW5nLiBUaGVyZSBpcyBhbHdheXMgc29tZSB2YWx1ZSwgZW1wdHkgb3Igbm9u LWVtcHR5Ljxicj48YnI+PC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZGVmYXVsdCIgc3R5bGU9ImZv bnQtZmFtaWx5Om1vbm9zcGFjZSxtb25vc3BhY2U7Zm9udC1zaXplOngtc21hbGwiPlNobXVlbDxi cj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9leHRyYSI+PGJyPjxkaXYgY2xhc3M9Imdt YWlsX3F1b3RlIj5PbiBUdWUsIEFwciAxMiwgMjAxNiBhdCA2OjQwIFBNLCBGYWJyaWNlIEJhY2No ZWxsYSA8c3BhbiBkaXI9Imx0ciI+Jmx0OzxhIGhyZWY9Im1haWx0bzpmYWJyaWNlLmJhY2NoZWxs YUBvcmFuZ2UuZnIiIHRhcmdldD0iX2JsYW5rIj5mYWJyaWNlLmJhY2NoZWxsYUBvcmFuZ2UuZnI8 L2E+Jmd0Ozwvc3Bhbj4gd3JvdGU6PGJyPjxibG9ja3F1b3RlIGNsYXNzPSJnbWFpbF9xdW90ZSIg c3R5bGU9Im1hcmdpbjowIDAgMCAuOGV4O2JvcmRlci1sZWZ0OjFweCAjY2NjIHNvbGlkO3BhZGRp bmctbGVmdDoxZXgiPjxkaXYgc3R5bGU9IndvcmQtd3JhcDpicmVhay13b3JkIj5JJiMzOTttIHRy eWluZyB0byBjaGFuZ2UgdGhlIHdheSBhIFZNIGlzIGJvb3RlZCwgSSB3YW50IGFuIGluaXRpYWwg c2V0dXAgd2l0aCBrZXJuZWwsIGluaXRyZCBhbmQgY21kbGluZSBnaXZlbiBhbmQgbGF0ZXIgcmVt b3ZlZC48ZGl2Pjxicj48L2Rpdj48ZGl2PlVzaW5nIHRoZSBHVUkgaXQgd29ya3MgZmluZS48L2Rp dj48ZGl2Pjxicj48L2Rpdj48ZGl2PkJ1dCBJIGhhdmUgbm8gc3VjY2VzcyB1c2luZyB0aGUgcHl0 aG9uIEFQSS4gQW5kIHJ1bm5pbmcgd2l0aCBkZWJ1ZyBlbmFibGUsIEkgZ2V0IHRoaXMgc3RyYW5n ZSByZXN1bHQgOjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+PGRpdiBzdHlsZT0ibWFyZ2luOjBw eDtmb250LXNpemU6MTFweDtmb250LWZhbWlseTpNZW5sbyI+Jmd0OyBQVVQgL2FwaS92bXMvOGNl ZDBmODEtMDNmZC00MTViLWE4ZWYtNjAxNDFkZTdlZWNhIEhUVFAvMS4xPC9kaXY+PC9kaXY+PGRp dj4uLi48L2Rpdj48ZGl2PjxkaXYgc3R5bGU9Im1hcmdpbjowcHg7Zm9udC1zaXplOjExcHg7Zm9u dC1mYW1pbHk6TWVubG8iPiZndDsgwqAgwqAgJmx0O29zIHR5cGU9JnF1b3Q7cmhlbF83eDY0JnF1 b3Q7Jmd0OzwvZGl2PjxkaXYgc3R5bGU9Im1hcmdpbjowcHg7Zm9udC1zaXplOjExcHg7Zm9udC1m YW1pbHk6TWVubG8iPiZndDsgwqAgwqAgwqAgwqAgJmx0O2Jvb3QgZGV2PSZxdW90O2hkJnF1b3Q7 LyZndDs8L2Rpdj48ZGl2IHN0eWxlPSJtYXJnaW46MHB4O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFt aWx5Ok1lbmxvIj4mZ3Q7IMKgIMKgIMKgIMKgICZsdDtib290IGRldj0mcXVvdDtuZXR3b3JrJnF1 b3Q7LyZndDs8L2Rpdj48ZGl2IHN0eWxlPSJtYXJnaW46MHB4O2ZvbnQtc2l6ZToxMXB4O2ZvbnQt ZmFtaWx5Ok1lbmxvIj4mZ3Q7IMKgIMKgICZsdDsvb3MmZ3Q7PC9kaXY+PC9kaXY+PGRpdj4uLi48 L2Rpdj48ZGl2PjxkaXYgc3R5bGU9Im1hcmdpbjowcHg7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1p bHk6TWVubG8iPiZsdDsgwqAgwqAgJmx0O29zIHR5cGU9JnF1b3Q7cmhlbF83eDY0JnF1b3Q7Jmd0 OzwvZGl2PjxkaXYgc3R5bGU9Im1hcmdpbjowcHg7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6 TWVubG8iPiZsdDsgwqAgwqAgwqAgwqAgJmx0O2Jvb3QgZGV2PSZxdW90O2hkJnF1b3Q7LyZndDs8 L2Rpdj48ZGl2IHN0eWxlPSJtYXJnaW46MHB4O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1l bmxvIj4mbHQ7IMKgIMKgIMKgIMKgICZsdDtib290IGRldj0mcXVvdDtuZXR3b3JrJnF1b3Q7LyZn dDs8L2Rpdj48ZGl2IHN0eWxlPSJtYXJnaW46MHB4O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5 Ok1lbmxvIj4mbHQ7IMKgIMKgIMKgIMKgICZsdDtrZXJuZWwmZ3Q7Li4uL3ZtbGludXombHQ7L2tl cm5lbCZndDs8L2Rpdj48ZGl2IHN0eWxlPSJtYXJnaW46MHB4O2ZvbnQtc2l6ZToxMXB4O2ZvbnQt ZmFtaWx5Ok1lbmxvIj4mbHQ7IMKgIMKgIMKgIMKgICZsdDtpbml0cmQmZ3Q7Li4uL2luaXRyZC5p bWcmbHQ7L2luaXRyZCZndDs8L2Rpdj48ZGl2IHN0eWxlPSJtYXJnaW46MHB4O2ZvbnQtc2l6ZTox MXB4O2ZvbnQtZmFtaWx5Ok1lbmxvIj4mbHQ7IMKgIMKgIMKgIMKgICZsdDtjbWRsaW5lJmd0Oy4u Li4mbHQ7L2NtZGxpbmUmZ3Q7PC9kaXY+PGRpdiBzdHlsZT0ibWFyZ2luOjBweDtmb250LXNpemU6 MTFweDtmb250LWZhbWlseTpNZW5sbyI+Jmx0OyDCoCDCoCAmbHQ7L29zJmd0OzwvZGl2PjwvZGl2 PjxkaXY+PGJyPjwvZGl2PjxkaXY+SSBnb3QgdGhpcyB3aXRoOjwvZGl2PjxkaXY+PHByZSBzdHls ZT0iYmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1LDI1NSwyNTUpO2ZvbnQtZmFtaWx5Ok1lbmxvIj5v c19wYXJhbXMgPSAgcGFyYW1zLk9wZXJhdGluZ1N5c3RlbSgpPGJyPm9zX3BhcmFtcy5zZXRfYm9v dChvbGRfb3NfcGFyYW1zLmdldF9ib290KCkpPGJyPm9zX3BhcmFtcy5zZXRfdHlwZShvbGRfb3Nf cGFyYW1zLmdldF90eXBlKCkpPGJyPm9zX3BhcmFtcy5zZXRfa2VybmVsKDxzcGFuIHN0eWxlPSJj b2xvcjojMDAwMDgwIj5Ob25lPC9zcGFuPik8YnI+b3NfcGFyYW1zLnNldF9pbml0cmQoPHNwYW4g c3R5bGU9ImNvbG9yOiMwMDAwODAiPk5vbmU8L3NwYW4+KTxicj5vc19wYXJhbXMuc2V0X2NtZGxp bmUoPHNwYW4gc3R5bGU9ImNvbG9yOiMwMDAwODAiPk5vbmU8L3NwYW4+KTxicj48c3BhbiBzdHls ZT0iY29sb3I6Izk0NTU4ZCI+c2VsZjwvc3Bhbj4uYnJva2VyLnNldF9vcyhvc19wYXJhbXMpPGJy PjxzcGFuIHN0eWxlPSJjb2xvcjojOTQ1NThkIj5zZWxmPC9zcGFuPi5icm9rZXIudXBkYXRlKCk8 YnI+PC9wcmU+PGRpdj50cnlpbmcgdG8gc2V0IGtlcm5lbCBhbmQgb3RoZXJzIHRvIGVtcHR5IHN0 cmluZyBpcyBub3QgcmVhbGx5IGJldHRlcjo8L2Rpdj48L2Rpdj48ZGl2PjxkaXYgc3R5bGU9Im1h cmdpbjowcHg7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8iPiZndDsgwqAgwqAgJmx0 O29zIHR5cGU9JnF1b3Q7cmhlbF83eDY0JnF1b3Q7Jmd0OzwvZGl2PjxkaXYgc3R5bGU9Im1hcmdp bjowcHg7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8iPiZndDsgwqAgwqAgwqAgwqAg Jmx0O2Jvb3QgZGV2PSZxdW90O2hkJnF1b3Q7LyZndDs8L2Rpdj48ZGl2IHN0eWxlPSJtYXJnaW46 MHB4O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1lbmxvIj4mZ3Q7IMKgIMKgIMKgIMKgICZs dDtib290IGRldj0mcXVvdDtuZXR3b3JrJnF1b3Q7LyZndDs8L2Rpdj48ZGl2IHN0eWxlPSJtYXJn aW46MHB4O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1lbmxvIj4mZ3Q7IMKgIMKgIMKgIMKg ICZsdDtrZXJuZWwmZ3Q7Jmx0Oy9rZXJuZWwmZ3Q7PC9kaXY+PGRpdiBzdHlsZT0ibWFyZ2luOjBw eDtmb250LXNpemU6MTFweDtmb250LWZhbWlseTpNZW5sbyI+Jmd0OyDCoCDCoCDCoCDCoCAmbHQ7 aW5pdHJkJmd0OyZsdDsvaW5pdHJkJmd0OzwvZGl2PjxkaXYgc3R5bGU9Im1hcmdpbjowcHg7Zm9u dC1zaXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8iPiZndDsgwqAgwqAgwqAgwqAgJmx0O2NtZGxp bmUmZ3Q7Jmx0Oy9jbWRsaW5lJmd0OzwvZGl2PjxkaXYgc3R5bGU9Im1hcmdpbjowcHg7Zm9udC1z aXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8iPiZndDsgwqAgwqAgJmx0Oy9vcyZndDs8L2Rpdj48 L2Rpdj48ZGl2Pi4uLjwvZGl2PjxkaXY+PGRpdiBzdHlsZT0ibWFyZ2luOjBweDtmb250LXNpemU6 MTFweDtmb250LWZhbWlseTpNZW5sbyI+Jmx0OyDCoCDCoCAmbHQ7b3MgdHlwZT0mcXVvdDtyaGVs Xzd4NjQmcXVvdDsmZ3Q7PC9kaXY+PGRpdiBzdHlsZT0ibWFyZ2luOjBweDtmb250LXNpemU6MTFw eDtmb250LWZhbWlseTpNZW5sbyI+Jmx0OyDCoCDCoCDCoCDCoCAmbHQ7Ym9vdCBkZXY9JnF1b3Q7 aGQmcXVvdDsvJmd0OzwvZGl2PjxkaXYgc3R5bGU9Im1hcmdpbjowcHg7Zm9udC1zaXplOjExcHg7 Zm9udC1mYW1pbHk6TWVubG8iPiZsdDsgwqAgwqAgwqAgwqAgJmx0O2Jvb3QgZGV2PSZxdW90O25l dHdvcmsmcXVvdDsvJmd0OzwvZGl2PjxkaXYgc3R5bGU9Im1hcmdpbjowcHg7Zm9udC1zaXplOjEx cHg7Zm9udC1mYW1pbHk6TWVubG8iPiZsdDsgwqAgwqAgwqAgwqAgJmx0O2tlcm5lbCZndDsmbHQ7 L2tlcm5lbCZndDs8L2Rpdj48ZGl2IHN0eWxlPSJtYXJnaW46MHB4O2ZvbnQtc2l6ZToxMXB4O2Zv bnQtZmFtaWx5Ok1lbmxvIj4mbHQ7IMKgIMKgIMKgIMKgICZsdDtpbml0cmQmZ3Q7Jmx0Oy9pbml0 cmQmZ3Q7PC9kaXY+PGRpdiBzdHlsZT0ibWFyZ2luOjBweDtmb250LXNpemU6MTFweDtmb250LWZh bWlseTpNZW5sbyI+Jmx0OyDCoCDCoCDCoCDCoCAmbHQ7Y21kbGluZSZndDsmbHQ7L2NtZGxpbmUm Z3Q7PC9kaXY+PGRpdiBzdHlsZT0ibWFyZ2luOjBweDtmb250LXNpemU6MTFweDtmb250LWZhbWls eTpNZW5sbyI+Jmx0OyDCoCDCoCAmbHQ7L29zJmd0OzwvZGl2PjwvZGl2PjxkaXY+PGJyPjwvZGl2 PjxkaXY+V2hhdCBraW5kIG9mICZxdW90O21hZ2ljIHZhbHVlcyZxdW90OyB0aGUgZW5naW5lIHVz ZXMgdG8gcmVtb3ZlcyB2YWx1ZXMgPzwvZGl2PjxkaXY+PGJyPjwvZGl2PjwvZGl2Pjxicj5fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXzxicj4KVXNlcnMgbWFp bGluZyBsaXN0PGJyPgo8YSBocmVmPSJtYWlsdG86VXNlcnNAb3ZpcnQub3JnIj5Vc2Vyc0Bvdmly dC5vcmc8L2E+PGJyPgo8YSBocmVmPSJodHRwOi8vbGlzdHMub3ZpcnQub3JnL21haWxtYW4vbGlz dGluZm8vdXNlcnMiIHJlbD0ibm9yZWZlcnJlciIgdGFyZ2V0PSJfYmxhbmsiPmh0dHA6Ly9saXN0 cy5vdmlydC5vcmcvbWFpbG1hbi9saXN0aW5mby91c2VyczwvYT48YnI+Cjxicj48L2Jsb2NrcXVv dGU+PC9kaXY+PGJyPjwvZGl2Pgo= --===============2060741348685355115==-- From fabrice.bacchella at orange.fr Tue May 24 08:35:08 2016 Content-Type: multipart/mixed; boundary="===============5663311503980818530==" MIME-Version: 1.0 From: Fabrice Bacchella To: users at ovirt.org Subject: Re: [ovirt-users] editing VM settting Date: Tue, 24 May 2016 14:35:03 +0200 Message-ID: <9734F02C-A5AE-4FD4-B201-DF4402ED8555@orange.fr> In-Reply-To: CAMFVLy2MsfjDqYt6v4HRSA=isbww2sEU+d5LgTQnD2AbtkP7MQ@mail.gmail.com --===============5663311503980818530== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable --Apple-Mail=3D_337ECEDC-2489-469A-B216-705393687D46 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=3Dutf-8 I thinks it's a minor thing, but still puzzling. A new VM don't have the kernel, initrd and cmdline elements. Once added =3D for a custom boot, if I remove them using the API, there are still here, = =3D but empty. If I use, the GUI, they vanished. Using CLI: Using GUI: Not critical, but strange. Both works > Le 24 mai 2016 =3DC3=3DA0 13:36, Shmuel Melamud a= =3D =3DC3=3DA9crit : >=3D20 > Hi! >=3D20 > What do you mean under "removing values"? You want , = =3D etc. not to appear in engine response? There is no such thing. There is =3D always some value, empty or non-empty. >=3D20 > Shmuel >=3D20 > On Tue, Apr 12, 2016 at 6:40 PM, Fabrice Bacchella =3D > =3D wrote: > I'm trying to change the way a VM is booted, I want an initial setup =3D with kernel, initrd and cmdline given and later removed. >=3D20 > Using the GUI it works fine. >=3D20 > But I have no success using the python API. And running with debug =3D enable, I get this strange result : >=3D20 > > PUT /api/vms/8ced0f81-03fd-415b-a8ef-60141de7eeca HTTP/1.1 > ... > > > > > > > > > ... > < > < > < > < .../vmlinuz > < .../initrd.img > < .... > < >=3D20 > I got this with: > os_params =3D3D params.OperatingSystem() > os_params.set_boot(old_os_params.get_boot()) > os_params.set_type(old_os_params.get_type()) > os_params.set_kernel(None) > os_params.set_initrd(None) > os_params.set_cmdline(None) > self.broker.set_os(os_params) > self.broker.update() > trying to set kernel and others to empty string is not really better: > > > > > > > > > > > > > > > ... > < > < > < > < > < > < > < >=3D20 > What kind of "magic values" the engine uses to removes values ? >=3D20 >=3D20 > _______________________________________________ > Users mailing list > Users(a)ovirt.org > http://lists.ovirt.org/mailman/listinfo/users =3D >=3D20 >=3D20 --Apple-Mail=3D_337ECEDC-2489-469A-B216-705393687D46 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=3Dutf-8 I thinks it's a minor thing, but still puzzling.

A new VM don't have t= he =3D kernel, initrd and cmdline elements. Once added for a custom boot, if I =3D remove them using the API, there are still here, but empty. If I use, =3D the GUI, they vanished.

Using CLI:
  =3D   <os type=3D3D"rhel_7x64">
    =3D     <boot dev=3D3D"hd"/>
      =3D   <boot dev=3D3D"network"/>
      =3D   <kernel></kernel>
      =3D   <initrd></initrd>
      =3D   <cmdline></cmdline>
    =3D </os>

Using GUI:
  =3D   <os type=3D3D"rhel_7x64">
    =3D     <boot dev=3D3D"hd"/>
      =3D   <boot dev=3D3D"network"/>
    =3D </os>

Not critical, but strange. Both works
<= br =3D class=3D3D"">

Le 24 mai 2016 =3DC3=3DA0 13= :36, =3D Shmuel Melamud <smelamud(a)redhat.com> a =3DC3=3DA9crit :

Hi!

What do you = =3D mean under "removing values"?  You want <kernel>, =3D <initrd> etc. not to appear in engine response? There is no such =3D thing. There is always some value, empty or non-empty.

Shmuel

On Tue, Apr 12, 2016 at 6:40 PM, Fabrice Bacchella = =3D <fabrice.bacchella(a)orange.fr> wrote:
I'm trying to change the way = a =3D VM is booted, I want an initial setup with kernel, initrd and cmdline =3D given and later removed.

Using the GUI it works fine.

But I have no success using the python= =3D API. And running with debug enable, I get this strange result =3D :

> = =3D PUT /api/vms/8ced0f81-03fd-415b-a8ef-60141de7eeca =3D HTTP/1.1
...
> = =3D     <os type=3D3D"rhel_7x64">
> = =3D         <boot dev=3D3D"hd"/>
> = =3D         <boot dev=3D3D"network"/>
> = =3D     </os>
...
<     <os type=3D3D"rhel_7x64">
< = =3D         <boot dev=3D3D"hd"/>
< = =3D         <boot dev=3D3D"network"/>
< = =3D         =3D <kernel>.../vmlinuz</kernel>
< = =3D         =3D <initrd>.../initrd.img</initrd>
< = =3D         =3D <cmdline>....</cmdline>
< = =3D     </os>

I got this with:
os_params =3D3D  params.OperatingSystem()
os_params.set_boot(old_os_params.get_boot())
os_params.set_type(old_os_params.get_type())
os_params.set_kernel(None)
os_params.set_initrd(None)
os_params.set_cmdline(None)
self.broker.set_os(os_params)
self.broker.update()
trying to set kernel and others to =3D empty string is not really better:
> = =3D     <os type=3D3D"rhel_7x64">
> = =3D         <boot dev=3D3D"hd"/>
> = =3D         <boot dev=3D3D"network"/>
> = =3D         <kernel></kernel>
> = =3D         <initrd></initrd>
> = =3D         <cmdline></cmdline>
> = =3D     </os>
...
<     <os type=3D3D"rhel_7x64">
< = =3D         <boot dev=3D3D"hd"/>
< = =3D         <boot dev=3D3D"network"/>
< = =3D         <kernel></kernel>
< = =3D         <initrd></initrd>
< = =3D         <cmdline></cmdline>
< = =3D     </os>

What kind of "magic values" the engine= =3D uses to removes values ?


_______________________________________________
Users mailing list
Users(a)ovirt.org http://lists.ovirt.org/mailman/listinfo/users



=3D --Apple-Mail=3D_337ECEDC-2489-469A-B216-705393687D46-- --===============5663311503980818530== Content-Type: multipart/alternative MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.bin" Ci0tQXBwbGUtTWFpbD1fMzM3RUNFREMtMjQ4OS00NjlBLUIyMTYtNzA1MzkzNjg3RDQ2CkNvbnRl bnQtVHJhbnNmZXItRW5jb2Rpbmc6IHF1b3RlZC1wcmludGFibGUKQ29udGVudC1UeXBlOiB0ZXh0 L3BsYWluOwoJY2hhcnNldD11dGYtOAoKSSB0aGlua3MgaXQncyBhIG1pbm9yIHRoaW5nLCBidXQg c3RpbGwgcHV6emxpbmcuCgpBIG5ldyBWTSBkb24ndCBoYXZlIHRoZSBrZXJuZWwsIGluaXRyZCBh bmQgY21kbGluZSBlbGVtZW50cy4gT25jZSBhZGRlZCA9CmZvciBhIGN1c3RvbSBib290LCBpZiBJ IHJlbW92ZSB0aGVtIHVzaW5nIHRoZSBBUEksIHRoZXJlIGFyZSBzdGlsbCBoZXJlLCA9CmJ1dCBl bXB0eS4gSWYgSSB1c2UsIHRoZSBHVUksIHRoZXkgdmFuaXNoZWQuCgpVc2luZyBDTEk6CiAgICA8 b3MgdHlwZT0zRCJyaGVsXzd4NjQiPgogICAgICAgIDxib290IGRldj0zRCJoZCIvPgogICAgICAg IDxib290IGRldj0zRCJuZXR3b3JrIi8+CiAgICAgICAgPGtlcm5lbD48L2tlcm5lbD4KICAgICAg ICA8aW5pdHJkPjwvaW5pdHJkPgogICAgICAgIDxjbWRsaW5lPjwvY21kbGluZT4KICAgIDwvb3M+ CgpVc2luZyBHVUk6CiAgICA8b3MgdHlwZT0zRCJyaGVsXzd4NjQiPgogICAgICAgIDxib290IGRl dj0zRCJoZCIvPgogICAgICAgIDxib290IGRldj0zRCJuZXR3b3JrIi8+CiAgICA8L29zPgoKTm90 IGNyaXRpY2FsLCBidXQgc3RyYW5nZS4gQm90aCB3b3JrcwoKCj4gTGUgMjQgbWFpIDIwMTYgPUMz PUEwIDEzOjM2LCBTaG11ZWwgTWVsYW11ZCA8c21lbGFtdWRAcmVkaGF0LmNvbT4gYSA9Cj1DMz1B OWNyaXQgOgo+PTIwCj4gSGkhCj49MjAKPiBXaGF0IGRvIHlvdSBtZWFuIHVuZGVyICJyZW1vdmlu ZyB2YWx1ZXMiPyAgWW91IHdhbnQgPGtlcm5lbD4sIDxpbml0cmQ+ID0KZXRjLiBub3QgdG8gYXBw ZWFyIGluIGVuZ2luZSByZXNwb25zZT8gVGhlcmUgaXMgbm8gc3VjaCB0aGluZy4gVGhlcmUgaXMg PQphbHdheXMgc29tZSB2YWx1ZSwgZW1wdHkgb3Igbm9uLWVtcHR5Lgo+PTIwCj4gU2htdWVsCj49 MjAKPiBPbiBUdWUsIEFwciAxMiwgMjAxNiBhdCA2OjQwIFBNLCBGYWJyaWNlIEJhY2NoZWxsYSA9 CjxmYWJyaWNlLmJhY2NoZWxsYUBvcmFuZ2UuZnIgPG1haWx0bzpmYWJyaWNlLmJhY2NoZWxsYUBv cmFuZ2UuZnI+PiA9Cndyb3RlOgo+IEknbSB0cnlpbmcgdG8gY2hhbmdlIHRoZSB3YXkgYSBWTSBp cyBib290ZWQsIEkgd2FudCBhbiBpbml0aWFsIHNldHVwID0Kd2l0aCBrZXJuZWwsIGluaXRyZCBh bmQgY21kbGluZSBnaXZlbiBhbmQgbGF0ZXIgcmVtb3ZlZC4KPj0yMAo+IFVzaW5nIHRoZSBHVUkg aXQgd29ya3MgZmluZS4KPj0yMAo+IEJ1dCBJIGhhdmUgbm8gc3VjY2VzcyB1c2luZyB0aGUgcHl0 aG9uIEFQSS4gQW5kIHJ1bm5pbmcgd2l0aCBkZWJ1ZyA9CmVuYWJsZSwgSSBnZXQgdGhpcyBzdHJh bmdlIHJlc3VsdCA6Cj49MjAKPiA+IFBVVCAvYXBpL3Ztcy84Y2VkMGY4MS0wM2ZkLTQxNWItYThl Zi02MDE0MWRlN2VlY2EgSFRUUC8xLjEKPiAuLi4KPiA+ICAgICA8b3MgdHlwZT0zRCJyaGVsXzd4 NjQiPgo+ID4gICAgICAgICA8Ym9vdCBkZXY9M0QiaGQiLz4KPiA+ICAgICAgICAgPGJvb3QgZGV2 PTNEIm5ldHdvcmsiLz4KPiA+ICAgICA8L29zPgo+IC4uLgo+IDwgICAgIDxvcyB0eXBlPTNEInJo ZWxfN3g2NCI+Cj4gPCAgICAgICAgIDxib290IGRldj0zRCJoZCIvPgo+IDwgICAgICAgICA8Ym9v dCBkZXY9M0QibmV0d29yayIvPgo+IDwgICAgICAgICA8a2VybmVsPi4uLi92bWxpbnV6PC9rZXJu ZWw+Cj4gPCAgICAgICAgIDxpbml0cmQ+Li4uL2luaXRyZC5pbWc8L2luaXRyZD4KPiA8ICAgICAg ICAgPGNtZGxpbmU+Li4uLjwvY21kbGluZT4KPiA8ICAgICA8L29zPgo+PTIwCj4gSSBnb3QgdGhp cyB3aXRoOgo+IG9zX3BhcmFtcyA9M0QgIHBhcmFtcy5PcGVyYXRpbmdTeXN0ZW0oKQo+IG9zX3Bh cmFtcy5zZXRfYm9vdChvbGRfb3NfcGFyYW1zLmdldF9ib290KCkpCj4gb3NfcGFyYW1zLnNldF90 eXBlKG9sZF9vc19wYXJhbXMuZ2V0X3R5cGUoKSkKPiBvc19wYXJhbXMuc2V0X2tlcm5lbChOb25l KQo+IG9zX3BhcmFtcy5zZXRfaW5pdHJkKE5vbmUpCj4gb3NfcGFyYW1zLnNldF9jbWRsaW5lKE5v bmUpCj4gc2VsZi5icm9rZXIuc2V0X29zKG9zX3BhcmFtcykKPiBzZWxmLmJyb2tlci51cGRhdGUo KQo+IHRyeWluZyB0byBzZXQga2VybmVsIGFuZCBvdGhlcnMgdG8gZW1wdHkgc3RyaW5nIGlzIG5v dCByZWFsbHkgYmV0dGVyOgo+ID4gICAgIDxvcyB0eXBlPTNEInJoZWxfN3g2NCI+Cj4gPiAgICAg ICAgIDxib290IGRldj0zRCJoZCIvPgo+ID4gICAgICAgICA8Ym9vdCBkZXY9M0QibmV0d29yayIv Pgo+ID4gICAgICAgICA8a2VybmVsPjwva2VybmVsPgo+ID4gICAgICAgICA8aW5pdHJkPjwvaW5p dHJkPgo+ID4gICAgICAgICA8Y21kbGluZT48L2NtZGxpbmU+Cj4gPiAgICAgPC9vcz4KPiAuLi4K PiA8ICAgICA8b3MgdHlwZT0zRCJyaGVsXzd4NjQiPgo+IDwgICAgICAgICA8Ym9vdCBkZXY9M0Qi aGQiLz4KPiA8ICAgICAgICAgPGJvb3QgZGV2PTNEIm5ldHdvcmsiLz4KPiA8ICAgICAgICAgPGtl cm5lbD48L2tlcm5lbD4KPiA8ICAgICAgICAgPGluaXRyZD48L2luaXRyZD4KPiA8ICAgICAgICAg PGNtZGxpbmU+PC9jbWRsaW5lPgo+IDwgICAgIDwvb3M+Cj49MjAKPiBXaGF0IGtpbmQgb2YgIm1h Z2ljIHZhbHVlcyIgdGhlIGVuZ2luZSB1c2VzIHRvIHJlbW92ZXMgdmFsdWVzID8KPj0yMAo+PTIw Cj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBVc2Vy cyBtYWlsaW5nIGxpc3QKPiBVc2Vyc0BvdmlydC5vcmcgPG1haWx0bzpVc2Vyc0BvdmlydC5vcmc+ Cj4gaHR0cDovL2xpc3RzLm92aXJ0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3VzZXJzID0KPGh0dHA6 Ly9saXN0cy5vdmlydC5vcmcvbWFpbG1hbi9saXN0aW5mby91c2Vycz4KPj0yMAo+PTIwCgoKLS1B cHBsZS1NYWlsPV8zMzdFQ0VEQy0yNDg5LTQ2OUEtQjIxNi03MDUzOTM2ODdENDYKQ29udGVudC1U cmFuc2Zlci1FbmNvZGluZzogcXVvdGVkLXByaW50YWJsZQpDb250ZW50LVR5cGU6IHRleHQvaHRt bDsKCWNoYXJzZXQ9dXRmLTgKCjxodG1sPjxoZWFkPjxtZXRhIGh0dHAtZXF1aXY9M0QiQ29udGVu dC1UeXBlIiBjb250ZW50PTNEInRleHQvaHRtbCA9CmNoYXJzZXQ9M0R1dGYtOCI+PC9oZWFkPjxi b2R5IHN0eWxlPTNEIndvcmQtd3JhcDogYnJlYWstd29yZDsgPQotd2Via2l0LW5ic3AtbW9kZTog c3BhY2U7IC13ZWJraXQtbGluZS1icmVhazogYWZ0ZXItd2hpdGUtc3BhY2U7IiA9CmNsYXNzPTNE IiI+SSB0aGlua3MgaXQncyBhIG1pbm9yIHRoaW5nLCBidXQgc3RpbGwgcHV6emxpbmcuPGRpdiA9 CmNsYXNzPTNEIiI+PGJyIGNsYXNzPTNEIiI+PC9kaXY+PGRpdiBjbGFzcz0zRCIiPkEgbmV3IFZN IGRvbid0IGhhdmUgdGhlID0Ka2VybmVsLCBpbml0cmQgYW5kIGNtZGxpbmUgZWxlbWVudHMuIE9u Y2UgYWRkZWQgZm9yIGEgY3VzdG9tIGJvb3QsIGlmIEkgPQpyZW1vdmUgdGhlbSB1c2luZyB0aGUg QVBJLCB0aGVyZSBhcmUgc3RpbGwgaGVyZSwgYnV0IGVtcHR5LiBJZiBJIHVzZSwgPQp0aGUgR1VJ LCB0aGV5IHZhbmlzaGVkLjwvZGl2PjxkaXYgY2xhc3M9M0QiIj48YnIgY2xhc3M9M0QiIj48L2Rp dj48ZGl2ID0KY2xhc3M9M0QiIj5Vc2luZyBDTEk6PC9kaXY+PGRpdiBjbGFzcz0zRCIiPjxkaXYg c3R5bGU9M0QibWFyZ2luOiAwcHg7ID0KZm9udC1zaXplOiAxMXB4OyBmb250LWZhbWlseTogTWVu bG87IiBjbGFzcz0zRCIiPiZuYnNwOyA9CiZuYnNwOyZuYnNwOyZsdDtvcyB0eXBlPTNEInJoZWxf N3g2NCImZ3Q7PC9kaXY+PGRpdiBzdHlsZT0zRCJtYXJnaW46ID0KMHB4OyBmb250LXNpemU6IDEx cHg7IGZvbnQtZmFtaWx5OiBNZW5sbzsiIGNsYXNzPTNEIiI+Jm5ic3A7ICZuYnNwOyA9CiZuYnNw OyAmbmJzcDsgJmx0O2Jvb3QgZGV2PTNEImhkIi8mZ3Q7PC9kaXY+PGRpdiBzdHlsZT0zRCJtYXJn aW46IDBweDsgPQpmb250LXNpemU6IDExcHg7IGZvbnQtZmFtaWx5OiBNZW5sbzsiIGNsYXNzPTNE IiI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgPQombmJzcDsgJmx0O2Jvb3QgZGV2PTNEIm5ldHdvcmsi LyZndDs8L2Rpdj48ZGl2IHN0eWxlPTNEIm1hcmdpbjogMHB4OyA9CmZvbnQtc2l6ZTogMTFweDsg Zm9udC1mYW1pbHk6IE1lbmxvOyIgY2xhc3M9M0QiIj4mbmJzcDsgJm5ic3A7ICZuYnNwOyA9CiZu YnNwOyAmbHQ7a2VybmVsJmd0OyZsdDsva2VybmVsJmd0OzwvZGl2PjxkaXYgc3R5bGU9M0QibWFy Z2luOiAwcHg7ID0KZm9udC1zaXplOiAxMXB4OyBmb250LWZhbWlseTogTWVubG87IiBjbGFzcz0z RCIiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ID0KJm5ic3A7ICZsdDtpbml0cmQmZ3Q7Jmx0Oy9pbml0 cmQmZ3Q7PC9kaXY+PGRpdiBzdHlsZT0zRCJtYXJnaW46IDBweDsgPQpmb250LXNpemU6IDExcHg7 IGZvbnQtZmFtaWx5OiBNZW5sbzsiIGNsYXNzPTNEIiI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgPQom bmJzcDsgJmx0O2NtZGxpbmUmZ3Q7Jmx0Oy9jbWRsaW5lJmd0OzwvZGl2PjxkaXYgc3R5bGU9M0Qi bWFyZ2luOiAwcHg7ID0KZm9udC1zaXplOiAxMXB4OyBmb250LWZhbWlseTogTWVubG87IiBjbGFz cz0zRCIiPiZuYnNwOyAmbmJzcDsgPQombHQ7L29zJmd0OzwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9 M0QiIj48YnIgY2xhc3M9M0QiIj48L2Rpdj48ZGl2ID0KY2xhc3M9M0QiIj5Vc2luZyBHVUk6PC9k aXY+PGRpdiBjbGFzcz0zRCIiPjxkaXYgc3R5bGU9M0QibWFyZ2luOiAwcHg7ID0KZm9udC1zaXpl OiAxMXB4OyBmb250LWZhbWlseTogTWVubG87IiBjbGFzcz0zRCIiPiZuYnNwOyA9CiZuYnNwOyZu YnNwOyZsdDtvcyB0eXBlPTNEInJoZWxfN3g2NCImZ3Q7PC9kaXY+PGRpdiBzdHlsZT0zRCJtYXJn aW46ID0KMHB4OyBmb250LXNpemU6IDExcHg7IGZvbnQtZmFtaWx5OiBNZW5sbzsiIGNsYXNzPTNE IiI+Jm5ic3A7ICZuYnNwOyA9CiZuYnNwOyAmbmJzcDsgJmx0O2Jvb3QgZGV2PTNEImhkIi8mZ3Q7 PC9kaXY+PGRpdiBzdHlsZT0zRCJtYXJnaW46IDBweDsgPQpmb250LXNpemU6IDExcHg7IGZvbnQt ZmFtaWx5OiBNZW5sbzsiIGNsYXNzPTNEIiI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgPQombmJzcDsg Jmx0O2Jvb3QgZGV2PTNEIm5ldHdvcmsiLyZndDs8L2Rpdj48ZGl2IHN0eWxlPTNEIm1hcmdpbjog MHB4OyA9CmZvbnQtc2l6ZTogMTFweDsgZm9udC1mYW1pbHk6IE1lbmxvOyIgY2xhc3M9M0QiIj4m bmJzcDsgJm5ic3A7ID0KJmx0Oy9vcyZndDs8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPTNEIiI+PGJy IGNsYXNzPTNEIiI+PC9kaXY+PGRpdiA9CmNsYXNzPTNEIiI+Tm90IGNyaXRpY2FsLCBidXQgc3Ry YW5nZS4gQm90aCB3b3JrczwvZGl2PjxkaXYgY2xhc3M9M0QiIj48YnIgPQpjbGFzcz0zRCIiPjwv ZGl2PjxkaXYgY2xhc3M9M0QiIj48YnIgY2xhc3M9M0QiIj48ZGl2PjxibG9ja3F1b3RlID0KdHlw ZT0zRCJjaXRlIiBjbGFzcz0zRCIiPjxkaXYgY2xhc3M9M0QiIj5MZSAyNCBtYWkgMjAxNiA9QzM9 QTAgMTM6MzYsID0KU2htdWVsIE1lbGFtdWQgJmx0OzxhIGhyZWY9M0QibWFpbHRvOnNtZWxhbXVk QHJlZGhhdC5jb20iID0KY2xhc3M9M0QiIj5zbWVsYW11ZEByZWRoYXQuY29tPC9hPiZndDsgYSA9 QzM9QTljcml0IDo8L2Rpdj48YnIgPQpjbGFzcz0zRCJBcHBsZS1pbnRlcmNoYW5nZS1uZXdsaW5l Ij48ZGl2IGNsYXNzPTNEIiI+PGRpdiBkaXI9M0QibHRyIiA9CmNsYXNzPTNEIiI+PGRpdiBjbGFz cz0zRCJnbWFpbF9kZWZhdWx0IiA9CnN0eWxlPTNEImZvbnQtZmFtaWx5Om1vbm9zcGFjZSxtb25v c3BhY2U7Zm9udC1zaXplOngtc21hbGwiPkhpITxiciA9CmNsYXNzPTNEIiI+PGJyIGNsYXNzPTNE IiI+PC9kaXY+PGRpdiBjbGFzcz0zRCJnbWFpbF9kZWZhdWx0IiA9CnN0eWxlPTNEImZvbnQtZmFt aWx5Om1vbm9zcGFjZSxtb25vc3BhY2U7Zm9udC1zaXplOngtc21hbGwiPldoYXQgZG8geW91ID0K bWVhbiB1bmRlciAicmVtb3ZpbmcgdmFsdWVzIj8mbmJzcDsgWW91IHdhbnQgJmx0O2tlcm5lbCZn dDssID0KJmx0O2luaXRyZCZndDsgZXRjLiBub3QgdG8gYXBwZWFyIGluIGVuZ2luZSByZXNwb25z ZT8gVGhlcmUgaXMgbm8gc3VjaCA9CnRoaW5nLiBUaGVyZSBpcyBhbHdheXMgc29tZSB2YWx1ZSwg ZW1wdHkgb3Igbm9uLWVtcHR5LjxiciBjbGFzcz0zRCIiPjxiciA9CmNsYXNzPTNEIiI+PC9kaXY+ PGRpdiBjbGFzcz0zRCJnbWFpbF9kZWZhdWx0IiA9CnN0eWxlPTNEImZvbnQtZmFtaWx5Om1vbm9z cGFjZSxtb25vc3BhY2U7Zm9udC1zaXplOngtc21hbGwiPlNobXVlbDxiciA9CmNsYXNzPTNEIiI+ PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0zRCJnbWFpbF9leHRyYSI+PGJyIGNsYXNzPTNEIiI+PGRp diA9CmNsYXNzPTNEImdtYWlsX3F1b3RlIj5PbiBUdWUsIEFwciAxMiwgMjAxNiBhdCA2OjQwIFBN LCBGYWJyaWNlIEJhY2NoZWxsYSA9CjxzcGFuIGRpcj0zRCJsdHIiIGNsYXNzPTNEIiI+Jmx0Ozxh ID0KaHJlZj0zRCJtYWlsdG86ZmFicmljZS5iYWNjaGVsbGFAb3JhbmdlLmZyIiB0YXJnZXQ9M0Qi X2JsYW5rIiA9CmNsYXNzPTNEIiI+ZmFicmljZS5iYWNjaGVsbGFAb3JhbmdlLmZyPC9hPiZndDs8 L3NwYW4+IHdyb3RlOjxiciA9CmNsYXNzPTNEIiI+PGJsb2NrcXVvdGUgY2xhc3M9M0QiZ21haWxf cXVvdGUiIHN0eWxlPTNEIm1hcmdpbjowIDAgMCA9Ci44ZXg7Ym9yZGVyLWxlZnQ6MXB4ICNjY2Mg c29saWQ7cGFkZGluZy1sZWZ0OjFleCI+PGRpdiA9CnN0eWxlPTNEIndvcmQtd3JhcDpicmVhay13 b3JkIiBjbGFzcz0zRCIiPkknbSB0cnlpbmcgdG8gY2hhbmdlIHRoZSB3YXkgYSA9ClZNIGlzIGJv b3RlZCwgSSB3YW50IGFuIGluaXRpYWwgc2V0dXAgd2l0aCBrZXJuZWwsIGluaXRyZCBhbmQgY21k bGluZSA9CmdpdmVuIGFuZCBsYXRlciByZW1vdmVkLjxkaXYgY2xhc3M9M0QiIj48YnIgY2xhc3M9 M0QiIj48L2Rpdj48ZGl2ID0KY2xhc3M9M0QiIj5Vc2luZyB0aGUgR1VJIGl0IHdvcmtzIGZpbmUu PC9kaXY+PGRpdiBjbGFzcz0zRCIiPjxiciA9CmNsYXNzPTNEIiI+PC9kaXY+PGRpdiBjbGFzcz0z RCIiPkJ1dCBJIGhhdmUgbm8gc3VjY2VzcyB1c2luZyB0aGUgcHl0aG9uID0KQVBJLiBBbmQgcnVu bmluZyB3aXRoIGRlYnVnIGVuYWJsZSwgSSBnZXQgdGhpcyBzdHJhbmdlIHJlc3VsdCA9Cjo8L2Rp dj48ZGl2IGNsYXNzPTNEIiI+PGJyIGNsYXNzPTNEIiI+PC9kaXY+PGRpdiBjbGFzcz0zRCIiPjxk aXYgPQpzdHlsZT0zRCJtYXJnaW46MHB4O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1lbmxv IiBjbGFzcz0zRCIiPiZndDsgPQpQVVQgL2FwaS92bXMvOGNlZDBmODEtMDNmZC00MTViLWE4ZWYt NjAxNDFkZTdlZWNhID0KSFRUUC8xLjE8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPTNEIiI+Li4uPC9k aXY+PGRpdiBjbGFzcz0zRCIiPjxkaXYgPQpzdHlsZT0zRCJtYXJnaW46MHB4O2ZvbnQtc2l6ZTox MXB4O2ZvbnQtZmFtaWx5Ok1lbmxvIiBjbGFzcz0zRCIiPiZndDsgPQombmJzcDsgJm5ic3A7ICZs dDtvcyB0eXBlPTNEInJoZWxfN3g2NCImZ3Q7PC9kaXY+PGRpdiA9CnN0eWxlPTNEIm1hcmdpbjow cHg7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8iIGNsYXNzPTNEIiI+Jmd0OyA9CiZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbHQ7Ym9vdCBkZXY9M0QiaGQiLyZndDs8L2Rpdj48 ZGl2ID0Kc3R5bGU9M0QibWFyZ2luOjBweDtmb250LXNpemU6MTFweDtmb250LWZhbWlseTpNZW5s byIgY2xhc3M9M0QiIj4mZ3Q7ID0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZsdDtib290 IGRldj0zRCJuZXR3b3JrIi8mZ3Q7PC9kaXY+PGRpdiA9CnN0eWxlPTNEIm1hcmdpbjowcHg7Zm9u dC1zaXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8iIGNsYXNzPTNEIiI+Jmd0OyA9CiZuYnNwOyAm bmJzcDsgJmx0Oy9vcyZndDs8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPTNEIiI+Li4uPC9kaXY+PGRp diA9CmNsYXNzPTNEIiI+PGRpdiBzdHlsZT0zRCJtYXJnaW46MHB4O2ZvbnQtc2l6ZToxMXB4O2Zv bnQtZmFtaWx5Ok1lbmxvIiA9CmNsYXNzPTNEIiI+Jmx0OyAmbmJzcDsgJm5ic3A7ICZsdDtvcyB0 eXBlPTNEInJoZWxfN3g2NCImZ3Q7PC9kaXY+PGRpdiA9CnN0eWxlPTNEIm1hcmdpbjowcHg7Zm9u dC1zaXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8iIGNsYXNzPTNEIiI+Jmx0OyA9CiZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbHQ7Ym9vdCBkZXY9M0QiaGQiLyZndDs8L2Rpdj48ZGl2ID0K c3R5bGU9M0QibWFyZ2luOjBweDtmb250LXNpemU6MTFweDtmb250LWZhbWlseTpNZW5sbyIgY2xh c3M9M0QiIj4mbHQ7ID0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZsdDtib290IGRldj0z RCJuZXR3b3JrIi8mZ3Q7PC9kaXY+PGRpdiA9CnN0eWxlPTNEIm1hcmdpbjowcHg7Zm9udC1zaXpl OjExcHg7Zm9udC1mYW1pbHk6TWVubG8iIGNsYXNzPTNEIiI+Jmx0OyA9CiZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyA9CiZsdDtrZXJuZWwmZ3Q7Li4uL3ZtbGludXombHQ7L2tlcm5lbCZndDs8 L2Rpdj48ZGl2ID0Kc3R5bGU9M0QibWFyZ2luOjBweDtmb250LXNpemU6MTFweDtmb250LWZhbWls eTpNZW5sbyIgY2xhc3M9M0QiIj4mbHQ7ID0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ID0K Jmx0O2luaXRyZCZndDsuLi4vaW5pdHJkLmltZyZsdDsvaW5pdHJkJmd0OzwvZGl2PjxkaXYgPQpz dHlsZT0zRCJtYXJnaW46MHB4O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1lbmxvIiBjbGFz cz0zRCIiPiZsdDsgPQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgPQombHQ7Y21kbGluZSZn dDsuLi4uJmx0Oy9jbWRsaW5lJmd0OzwvZGl2PjxkaXYgPQpzdHlsZT0zRCJtYXJnaW46MHB4O2Zv bnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1lbmxvIiBjbGFzcz0zRCIiPiZsdDsgPQombmJzcDsg Jm5ic3A7ICZsdDsvb3MmZ3Q7PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0zRCIiPjxiciA9CmNsYXNz PTNEIiI+PC9kaXY+PGRpdiBjbGFzcz0zRCIiPkkgZ290IHRoaXMgd2l0aDo8L2Rpdj48ZGl2ID0K Y2xhc3M9M0QiIj48cHJlID0Kc3R5bGU9M0QiYmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1LDI1NSwy NTUpO2ZvbnQtZmFtaWx5Ok1lbmxvIiA9CmNsYXNzPTNEIiI+b3NfcGFyYW1zID0zRCAgcGFyYW1z Lk9wZXJhdGluZ1N5c3RlbSgpPGJyID0KY2xhc3M9M0QiIj5vc19wYXJhbXMuc2V0X2Jvb3Qob2xk X29zX3BhcmFtcy5nZXRfYm9vdCgpKTxiciA9CmNsYXNzPTNEIiI+b3NfcGFyYW1zLnNldF90eXBl KG9sZF9vc19wYXJhbXMuZ2V0X3R5cGUoKSk8YnIgPQpjbGFzcz0zRCIiPm9zX3BhcmFtcy5zZXRf a2VybmVsKDxzcGFuIHN0eWxlPTNEImNvbG9yOiMwMDAwODAiID0KY2xhc3M9M0QiIj5Ob25lPC9z cGFuPik8YnIgY2xhc3M9M0QiIj5vc19wYXJhbXMuc2V0X2luaXRyZCg8c3BhbiA9CnN0eWxlPTNE ImNvbG9yOiMwMDAwODAiIGNsYXNzPTNEIiI+Tm9uZTwvc3Bhbj4pPGJyID0KY2xhc3M9M0QiIj5v c19wYXJhbXMuc2V0X2NtZGxpbmUoPHNwYW4gc3R5bGU9M0QiY29sb3I6IzAwMDA4MCIgPQpjbGFz cz0zRCIiPk5vbmU8L3NwYW4+KTxiciBjbGFzcz0zRCIiPjxzcGFuIHN0eWxlPTNEImNvbG9yOiM5 NDU1OGQiID0KY2xhc3M9M0QiIj5zZWxmPC9zcGFuPi5icm9rZXIuc2V0X29zKG9zX3BhcmFtcyk8 YnIgY2xhc3M9M0QiIj48c3BhbiA9CnN0eWxlPTNEImNvbG9yOiM5NDU1OGQiIGNsYXNzPTNEIiI+ c2VsZjwvc3Bhbj4uYnJva2VyLnVwZGF0ZSgpPGJyID0KY2xhc3M9M0QiIj48L3ByZT48ZGl2IGNs YXNzPTNEIiI+dHJ5aW5nIHRvIHNldCBrZXJuZWwgYW5kIG90aGVycyB0byA9CmVtcHR5IHN0cmlu ZyBpcyBub3QgcmVhbGx5IGJldHRlcjo8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPTNEIiI+PGRpdiA9 CnN0eWxlPTNEIm1hcmdpbjowcHg7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8iIGNs YXNzPTNEIiI+Jmd0OyA9CiZuYnNwOyAmbmJzcDsgJmx0O29zIHR5cGU9M0QicmhlbF83eDY0IiZn dDs8L2Rpdj48ZGl2ID0Kc3R5bGU9M0QibWFyZ2luOjBweDtmb250LXNpemU6MTFweDtmb250LWZh bWlseTpNZW5sbyIgY2xhc3M9M0QiIj4mZ3Q7ID0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZsdDtib290IGRldj0zRCJoZCIvJmd0OzwvZGl2PjxkaXYgPQpzdHlsZT0zRCJtYXJnaW46MHB4 O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1lbmxvIiBjbGFzcz0zRCIiPiZndDsgPQombmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJmx0O2Jvb3QgZGV2PTNEIm5ldHdvcmsiLyZndDs8L2Rp dj48ZGl2ID0Kc3R5bGU9M0QibWFyZ2luOjBweDtmb250LXNpemU6MTFweDtmb250LWZhbWlseTpN ZW5sbyIgY2xhc3M9M0QiIj4mZ3Q7ID0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZsdDtr ZXJuZWwmZ3Q7Jmx0Oy9rZXJuZWwmZ3Q7PC9kaXY+PGRpdiA9CnN0eWxlPTNEIm1hcmdpbjowcHg7 Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8iIGNsYXNzPTNEIiI+Jmd0OyA9CiZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbHQ7aW5pdHJkJmd0OyZsdDsvaW5pdHJkJmd0OzwvZGl2 PjxkaXYgPQpzdHlsZT0zRCJtYXJnaW46MHB4O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1l bmxvIiBjbGFzcz0zRCIiPiZndDsgPQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJmx0O2Nt ZGxpbmUmZ3Q7Jmx0Oy9jbWRsaW5lJmd0OzwvZGl2PjxkaXYgPQpzdHlsZT0zRCJtYXJnaW46MHB4 O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1lbmxvIiBjbGFzcz0zRCIiPiZndDsgPQombmJz cDsgJm5ic3A7ICZsdDsvb3MmZ3Q7PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0zRCIiPi4uLjwvZGl2 PjxkaXYgPQpjbGFzcz0zRCIiPjxkaXYgc3R5bGU9M0QibWFyZ2luOjBweDtmb250LXNpemU6MTFw eDtmb250LWZhbWlseTpNZW5sbyIgPQpjbGFzcz0zRCIiPiZsdDsgJm5ic3A7ICZuYnNwOyAmbHQ7 b3MgdHlwZT0zRCJyaGVsXzd4NjQiJmd0OzwvZGl2PjxkaXYgPQpzdHlsZT0zRCJtYXJnaW46MHB4 O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1lbmxvIiBjbGFzcz0zRCIiPiZsdDsgPQombmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJmx0O2Jvb3QgZGV2PTNEImhkIi8mZ3Q7PC9kaXY+PGRp diA9CnN0eWxlPTNEIm1hcmdpbjowcHg7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8i IGNsYXNzPTNEIiI+Jmx0OyA9CiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbHQ7Ym9vdCBk ZXY9M0QibmV0d29yayIvJmd0OzwvZGl2PjxkaXYgPQpzdHlsZT0zRCJtYXJnaW46MHB4O2ZvbnQt c2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1lbmxvIiBjbGFzcz0zRCIiPiZsdDsgPQombmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJmx0O2tlcm5lbCZndDsmbHQ7L2tlcm5lbCZndDs8L2Rpdj48ZGl2 ID0Kc3R5bGU9M0QibWFyZ2luOjBweDtmb250LXNpemU6MTFweDtmb250LWZhbWlseTpNZW5sbyIg Y2xhc3M9M0QiIj4mbHQ7ID0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZsdDtpbml0cmQm Z3Q7Jmx0Oy9pbml0cmQmZ3Q7PC9kaXY+PGRpdiA9CnN0eWxlPTNEIm1hcmdpbjowcHg7Zm9udC1z aXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8iIGNsYXNzPTNEIiI+Jmx0OyA9CiZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbHQ7Y21kbGluZSZndDsmbHQ7L2NtZGxpbmUmZ3Q7PC9kaXY+PGRp diA9CnN0eWxlPTNEIm1hcmdpbjowcHg7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8i IGNsYXNzPTNEIiI+Jmx0OyA9CiZuYnNwOyAmbmJzcDsgJmx0Oy9vcyZndDs8L2Rpdj48L2Rpdj48 ZGl2IGNsYXNzPTNEIiI+PGJyID0KY2xhc3M9M0QiIj48L2Rpdj48ZGl2IGNsYXNzPTNEIiI+V2hh dCBraW5kIG9mICJtYWdpYyB2YWx1ZXMiIHRoZSBlbmdpbmUgPQp1c2VzIHRvIHJlbW92ZXMgdmFs dWVzID88L2Rpdj48ZGl2IGNsYXNzPTNEIiI+PGJyID0KY2xhc3M9M0QiIj48L2Rpdj48L2Rpdj48 YnIgPQpjbGFzcz0zRCIiPl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fPGJyIGNsYXNzPTNEIiI+ClVzZXJzIG1haWxpbmcgbGlzdDxiciBjbGFzcz0zRCIiPgo8 YSBocmVmPTNEIm1haWx0bzpVc2Vyc0BvdmlydC5vcmciIGNsYXNzPTNEIiI+VXNlcnNAb3ZpcnQu b3JnPC9hPjxiciA9CmNsYXNzPTNEIiI+CjxhIGhyZWY9M0QiaHR0cDovL2xpc3RzLm92aXJ0Lm9y Zy9tYWlsbWFuL2xpc3RpbmZvL3VzZXJzIiA9CnJlbD0zRCJub3JlZmVycmVyIiB0YXJnZXQ9M0Qi X2JsYW5rIiA9CmNsYXNzPTNEIiI+aHR0cDovL2xpc3RzLm92aXJ0Lm9yZy9tYWlsbWFuL2xpc3Rp bmZvL3VzZXJzPC9hPjxiciA9CmNsYXNzPTNEIiI+CjxiciBjbGFzcz0zRCIiPjwvYmxvY2txdW90 ZT48L2Rpdj48YnIgY2xhc3M9M0QiIj48L2Rpdj4KPC9kaXY+PC9ibG9ja3F1b3RlPjwvZGl2Pjxi ciBjbGFzcz0zRCIiPjwvZGl2PjwvYm9keT48L2h0bWw+PQoKLS1BcHBsZS1NYWlsPV8zMzdFQ0VE Qy0yNDg5LTQ2OUEtQjIxNi03MDUzOTM2ODdENDYtLQo= --===============5663311503980818530==-- From fabrice.bacchella at icloud.com Tue May 24 11:12:25 2016 Content-Type: multipart/mixed; boundary="===============6364472624185540911==" MIME-Version: 1.0 From: Fabrice Bacchella To: users at ovirt.org Subject: Re: [ovirt-users] editing VM settting Date: Tue, 24 May 2016 17:12:03 +0200 Message-ID: <294D4869-995F-468C-A9FF-FCBA904148E8@icloud.com> In-Reply-To: CAMFVLy2MsfjDqYt6v4HRSA=isbww2sEU+d5LgTQnD2AbtkP7MQ@mail.gmail.com --===============6364472624185540911== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable --Apple-Mail=3D_F88059A2-BD11-4DDC-B74B-4C9CDC131266 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=3Dutf-8 I thinks it's a minor thing, but still puzzling. A new VM don't have the kernel, initrd and cmdline elements. Once added =3D for a custom boot, if I remove them using the API, there are still here, = =3D but empty. If I use, the GUI, they vanished. Using CLI: Using GUI: Not critical, but strange. Both works > Le 24 mai 2016 =3DC3=3DA0 13:36, Shmuel Melamud > a =3DC3=3DA9crit : >=3D20 > Hi! >=3D20 > What do you mean under "removing values"? You want , = =3D etc. not to appear in engine response? There is no such thing. There is =3D always some value, empty or non-empty. >=3D20 > Shmuel >=3D20 > On Tue, Apr 12, 2016 at 6:40 PM, Fabrice Bacchella =3D > =3D wrote: > I'm trying to change the way a VM is booted, I want an initial setup =3D with kernel, initrd and cmdline given and later removed. >=3D20 > Using the GUI it works fine. >=3D20 > But I have no success using the python API. And running with debug =3D enable, I get this strange result : >=3D20 > > PUT /api/vms/8ced0f81-03fd-415b-a8ef-60141de7eeca HTTP/1.1 > ... > > > > > > > > > ... > < > < > < > < .../vmlinuz > < .../initrd.img > < .... > < >=3D20 > I got this with: > os_params =3D3D params.OperatingSystem() > os_params.set_boot(old_os_params.get_boot()) > os_params.set_type(old_os_params.get_type()) > os_params.set_kernel(None) > os_params.set_initrd(None) > os_params.set_cmdline(None) > self.broker.set_os(os_params) > self.broker.update() > trying to set kernel and others to empty string is not really better: > > > > > > > > > > > > > > > ... > < > < > < > < > < > < > < >=3D20 > What kind of "magic values" the engine uses to removes values ? >=3D20 >=3D20 > _______________________________________________ > Users mailing list > Users(a)ovirt.org > http://lists.ovirt.org/mailman/listinfo/users =3D >=3D20 >=3D20 --Apple-Mail=3D_F88059A2-BD11-4DDC-B74B-4C9CDC131266 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=3Dutf-8 I thinks it's a minor thing, but still puzzling.

A new VM don't have t= he =3D kernel, initrd and cmdline elements. Once added for a custom boot, if I =3D remove them using the API, there are still here, but empty. If I use, =3D the GUI, they vanished.

Using CLI:
  =3D   <os type=3D3D"rhel_7x64">
    =3D     <boot dev=3D3D"hd"/>
      =3D   <boot dev=3D3D"network"/>
      =3D   <kernel></kernel>
      =3D   <initrd></initrd>
      =3D   <cmdline></cmdline>
    =3D </os>

Using GUI:
  =3D   <os type=3D3D"rhel_7x64">
    =3D     <boot dev=3D3D"hd"/>
      =3D   <boot dev=3D3D"network"/>
    =3D </os>

Not critical, but strange. Both works
<= br =3D class=3D3D"">

Le = 24 =3D mai 2016 =3DC3=3DA0 13:36, Shmuel Melamud <smelamud(a)redhat.com<= /a>>=3D a =3DC3=3DA9crit :

Hi!

What do you = =3D mean under "removing values"?  You want <kernel>, =3D <initrd> etc. not to appear in engine response? There is no such =3D thing. There is always some value, empty or non-empty.

Shmuel

On Tue, Apr 12, 2016 at 6:40 PM, Fabrice Bacchella = =3D <
fabrice.bacchella(a)orange.fr> wrote:
I'm trying to change the way = a =3D VM is booted, I want an initial setup with kernel, initrd and cmdline =3D given and later removed.

Using the GUI it works fine.

But I have no success using the python= =3D API. And running with debug enable, I get this strange result =3D :

> = =3D PUT /api/vms/8ced0f81-03fd-415b-a8ef-60141de7eeca =3D HTTP/1.1
...
> = =3D     <os type=3D3D"rhel_7x64">
> = =3D         <boot dev=3D3D"hd"/>
> = =3D         <boot dev=3D3D"network"/>
> = =3D     </os>
...
<     <os type=3D3D"rhel_7x64">
< = =3D         <boot dev=3D3D"hd"/>
< = =3D         <boot dev=3D3D"network"/>
< = =3D         =3D <kernel>.../vmlinuz</kernel>
< = =3D         =3D <initrd>.../initrd.img</initrd>
< = =3D         =3D <cmdline>....</cmdline>
< = =3D     </os>

I got this with:
os_params =3D3D  params.OperatingSystem()
os_params.set_boot(old_os_params.get_boot())
os_params.set_type(old_os_params.get_type())
os_params.set_kernel(None)
os_params.set_initrd(None)
os_params.set_cmdline(None)
self.broker.set_os(os_params)
self.broker.update()
trying to set kernel and others to =3D empty string is not really better:
> = =3D     <os type=3D3D"rhel_7x64">
> = =3D         <boot dev=3D3D"hd"/>
> = =3D         <boot dev=3D3D"network"/>
> = =3D         <kernel></kernel>
> = =3D         <initrd></initrd>
> = =3D         <cmdline></cmdline>
> = =3D     </os>
...
<     <os type=3D3D"rhel_7x64">
< = =3D         <boot dev=3D3D"hd"/>
< = =3D         <boot dev=3D3D"network"/>
< = =3D         <kernel></kernel>
< = =3D         <initrd></initrd>
< = =3D         <cmdline></cmdline>
< = =3D     </os>

What kind of "magic values" the engine= =3D uses to removes values ?


_______________________________________________
Users mailing list
Users(a)ovirt.org http://lists.ovirt.org/mailman/listinfo/users



=3D --Apple-Mail=3D_F88059A2-BD11-4DDC-B74B-4C9CDC131266-- --===============6364472624185540911== Content-Type: multipart/alternative MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.bin" Ci0tQXBwbGUtTWFpbD1fRjg4MDU5QTItQkQxMS00RERDLUI3NEItNEM5Q0RDMTMxMjY2CkNvbnRl bnQtVHJhbnNmZXItRW5jb2Rpbmc6IHF1b3RlZC1wcmludGFibGUKQ29udGVudC1UeXBlOiB0ZXh0 L3BsYWluOwoJY2hhcnNldD11dGYtOAoKSSB0aGlua3MgaXQncyBhIG1pbm9yIHRoaW5nLCBidXQg c3RpbGwgcHV6emxpbmcuCgpBIG5ldyBWTSBkb24ndCBoYXZlIHRoZSBrZXJuZWwsIGluaXRyZCBh bmQgY21kbGluZSBlbGVtZW50cy4gT25jZSBhZGRlZCA9CmZvciBhIGN1c3RvbSBib290LCBpZiBJ IHJlbW92ZSB0aGVtIHVzaW5nIHRoZSBBUEksIHRoZXJlIGFyZSBzdGlsbCBoZXJlLCA9CmJ1dCBl bXB0eS4gSWYgSSB1c2UsIHRoZSBHVUksIHRoZXkgdmFuaXNoZWQuCgpVc2luZyBDTEk6CiAgICA8 b3MgdHlwZT0zRCJyaGVsXzd4NjQiPgogICAgICAgIDxib290IGRldj0zRCJoZCIvPgogICAgICAg IDxib290IGRldj0zRCJuZXR3b3JrIi8+CiAgICAgICAgPGtlcm5lbD48L2tlcm5lbD4KICAgICAg ICA8aW5pdHJkPjwvaW5pdHJkPgogICAgICAgIDxjbWRsaW5lPjwvY21kbGluZT4KICAgIDwvb3M+ CgpVc2luZyBHVUk6CiAgICA8b3MgdHlwZT0zRCJyaGVsXzd4NjQiPgogICAgICAgIDxib290IGRl dj0zRCJoZCIvPgogICAgICAgIDxib290IGRldj0zRCJuZXR3b3JrIi8+CiAgICA8L29zPgoKTm90 IGNyaXRpY2FsLCBidXQgc3RyYW5nZS4gQm90aCB3b3JrcwoKCj4gTGUgMjQgbWFpIDIwMTYgPUMz PUEwIDEzOjM2LCBTaG11ZWwgTWVsYW11ZCA8c21lbGFtdWRAcmVkaGF0LmNvbSA9CjxtYWlsdG86 c21lbGFtdWRAcmVkaGF0LmNvbT4+IGEgPUMzPUE5Y3JpdCA6Cj49MjAKPiBIaSEKPj0yMAo+IFdo YXQgZG8geW91IG1lYW4gdW5kZXIgInJlbW92aW5nIHZhbHVlcyI/ICBZb3Ugd2FudCA8a2VybmVs PiwgPGluaXRyZD4gPQpldGMuIG5vdCB0byBhcHBlYXIgaW4gZW5naW5lIHJlc3BvbnNlPyBUaGVy ZSBpcyBubyBzdWNoIHRoaW5nLiBUaGVyZSBpcyA9CmFsd2F5cyBzb21lIHZhbHVlLCBlbXB0eSBv ciBub24tZW1wdHkuCj49MjAKPiBTaG11ZWwKPj0yMAo+IE9uIFR1ZSwgQXByIDEyLCAyMDE2IGF0 IDY6NDAgUE0sIEZhYnJpY2UgQmFjY2hlbGxhID0KPGZhYnJpY2UuYmFjY2hlbGxhQG9yYW5nZS5m ciA8bWFpbHRvOmZhYnJpY2UuYmFjY2hlbGxhQG9yYW5nZS5mcj4+ID0Kd3JvdGU6Cj4gSSdtIHRy eWluZyB0byBjaGFuZ2UgdGhlIHdheSBhIFZNIGlzIGJvb3RlZCwgSSB3YW50IGFuIGluaXRpYWwg c2V0dXAgPQp3aXRoIGtlcm5lbCwgaW5pdHJkIGFuZCBjbWRsaW5lIGdpdmVuIGFuZCBsYXRlciBy ZW1vdmVkLgo+PTIwCj4gVXNpbmcgdGhlIEdVSSBpdCB3b3JrcyBmaW5lLgo+PTIwCj4gQnV0IEkg aGF2ZSBubyBzdWNjZXNzIHVzaW5nIHRoZSBweXRob24gQVBJLiBBbmQgcnVubmluZyB3aXRoIGRl YnVnID0KZW5hYmxlLCBJIGdldCB0aGlzIHN0cmFuZ2UgcmVzdWx0IDoKPj0yMAo+ID4gUFVUIC9h cGkvdm1zLzhjZWQwZjgxLTAzZmQtNDE1Yi1hOGVmLTYwMTQxZGU3ZWVjYSBIVFRQLzEuMQo+IC4u Lgo+ID4gICAgIDxvcyB0eXBlPTNEInJoZWxfN3g2NCI+Cj4gPiAgICAgICAgIDxib290IGRldj0z RCJoZCIvPgo+ID4gICAgICAgICA8Ym9vdCBkZXY9M0QibmV0d29yayIvPgo+ID4gICAgIDwvb3M+ Cj4gLi4uCj4gPCAgICAgPG9zIHR5cGU9M0QicmhlbF83eDY0Ij4KPiA8ICAgICAgICAgPGJvb3Qg ZGV2PTNEImhkIi8+Cj4gPCAgICAgICAgIDxib290IGRldj0zRCJuZXR3b3JrIi8+Cj4gPCAgICAg ICAgIDxrZXJuZWw+Li4uL3ZtbGludXo8L2tlcm5lbD4KPiA8ICAgICAgICAgPGluaXRyZD4uLi4v aW5pdHJkLmltZzwvaW5pdHJkPgo+IDwgICAgICAgICA8Y21kbGluZT4uLi4uPC9jbWRsaW5lPgo+ IDwgICAgIDwvb3M+Cj49MjAKPiBJIGdvdCB0aGlzIHdpdGg6Cj4gb3NfcGFyYW1zID0zRCAgcGFy YW1zLk9wZXJhdGluZ1N5c3RlbSgpCj4gb3NfcGFyYW1zLnNldF9ib290KG9sZF9vc19wYXJhbXMu Z2V0X2Jvb3QoKSkKPiBvc19wYXJhbXMuc2V0X3R5cGUob2xkX29zX3BhcmFtcy5nZXRfdHlwZSgp KQo+IG9zX3BhcmFtcy5zZXRfa2VybmVsKE5vbmUpCj4gb3NfcGFyYW1zLnNldF9pbml0cmQoTm9u ZSkKPiBvc19wYXJhbXMuc2V0X2NtZGxpbmUoTm9uZSkKPiBzZWxmLmJyb2tlci5zZXRfb3Mob3Nf cGFyYW1zKQo+IHNlbGYuYnJva2VyLnVwZGF0ZSgpCj4gdHJ5aW5nIHRvIHNldCBrZXJuZWwgYW5k IG90aGVycyB0byBlbXB0eSBzdHJpbmcgaXMgbm90IHJlYWxseSBiZXR0ZXI6Cj4gPiAgICAgPG9z IHR5cGU9M0QicmhlbF83eDY0Ij4KPiA+ICAgICAgICAgPGJvb3QgZGV2PTNEImhkIi8+Cj4gPiAg ICAgICAgIDxib290IGRldj0zRCJuZXR3b3JrIi8+Cj4gPiAgICAgICAgIDxrZXJuZWw+PC9rZXJu ZWw+Cj4gPiAgICAgICAgIDxpbml0cmQ+PC9pbml0cmQ+Cj4gPiAgICAgICAgIDxjbWRsaW5lPjwv Y21kbGluZT4KPiA+ICAgICA8L29zPgo+IC4uLgo+IDwgICAgIDxvcyB0eXBlPTNEInJoZWxfN3g2 NCI+Cj4gPCAgICAgICAgIDxib290IGRldj0zRCJoZCIvPgo+IDwgICAgICAgICA8Ym9vdCBkZXY9 M0QibmV0d29yayIvPgo+IDwgICAgICAgICA8a2VybmVsPjwva2VybmVsPgo+IDwgICAgICAgICA8 aW5pdHJkPjwvaW5pdHJkPgo+IDwgICAgICAgICA8Y21kbGluZT48L2NtZGxpbmU+Cj4gPCAgICAg PC9vcz4KPj0yMAo+IFdoYXQga2luZCBvZiAibWFnaWMgdmFsdWVzIiB0aGUgZW5naW5lIHVzZXMg dG8gcmVtb3ZlcyB2YWx1ZXMgPwo+PTIwCj49MjAKPiBfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwo+IFVzZXJzIG1haWxpbmcgbGlzdAo+IFVzZXJzQG92aXJ0 Lm9yZyA8bWFpbHRvOlVzZXJzQG92aXJ0Lm9yZz4KPiBodHRwOi8vbGlzdHMub3ZpcnQub3JnL21h aWxtYW4vbGlzdGluZm8vdXNlcnMgPQo8aHR0cDovL2xpc3RzLm92aXJ0Lm9yZy9tYWlsbWFuL2xp c3RpbmZvL3VzZXJzPgo+PTIwCj49MjAKCgotLUFwcGxlLU1haWw9X0Y4ODA1OUEyLUJEMTEtNERE Qy1CNzRCLTRDOUNEQzEzMTI2NgpDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiBxdW90ZWQtcHJp bnRhYmxlCkNvbnRlbnQtVHlwZTogdGV4dC9odG1sOwoJY2hhcnNldD11dGYtOAoKPGh0bWw+PGhl YWQ+PG1ldGEgaHR0cC1lcXVpdj0zRCJDb250ZW50LVR5cGUiIGNvbnRlbnQ9M0QidGV4dC9odG1s ID0KY2hhcnNldD0zRHV0Zi04Ij48bWV0YSBodHRwLWVxdWl2PTNEIkNvbnRlbnQtVHlwZSIgY29u dGVudD0zRCJ0ZXh0L2h0bWwgPQpjaGFyc2V0PTNEdXRmLTgiPjwvaGVhZD48Ym9keSBzdHlsZT0z RCJ3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7ID0KLXdlYmtpdC1uYnNwLW1vZGU6IHNwYWNlOyAtd2Vi a2l0LWxpbmUtYnJlYWs6IGFmdGVyLXdoaXRlLXNwYWNlOyIgPQpjbGFzcz0zRCIiPkkgdGhpbmtz IGl0J3MgYSBtaW5vciB0aGluZywgYnV0IHN0aWxsIHB1enpsaW5nLjxkaXYgPQpjbGFzcz0zRCIi PjxiciBjbGFzcz0zRCIiPjwvZGl2PjxkaXYgY2xhc3M9M0QiIj5BIG5ldyBWTSBkb24ndCBoYXZl IHRoZSA9Cmtlcm5lbCwgaW5pdHJkIGFuZCBjbWRsaW5lIGVsZW1lbnRzLiBPbmNlIGFkZGVkIGZv ciBhIGN1c3RvbSBib290LCBpZiBJID0KcmVtb3ZlIHRoZW0gdXNpbmcgdGhlIEFQSSwgdGhlcmUg YXJlIHN0aWxsIGhlcmUsIGJ1dCBlbXB0eS4gSWYgSSB1c2UsID0KdGhlIEdVSSwgdGhleSB2YW5p c2hlZC48L2Rpdj48ZGl2IGNsYXNzPTNEIiI+PGJyIGNsYXNzPTNEIiI+PC9kaXY+PGRpdiA9CmNs YXNzPTNEIiI+VXNpbmcgQ0xJOjwvZGl2PjxkaXYgY2xhc3M9M0QiIj48ZGl2IHN0eWxlPTNEIm1h cmdpbjogMHB4OyA9CmZvbnQtc2l6ZTogMTFweDsgZm9udC1mYW1pbHk6IE1lbmxvOyIgY2xhc3M9 M0QiIj4mbmJzcDsgPQombmJzcDsmbmJzcDsmbHQ7b3MgdHlwZT0zRCJyaGVsXzd4NjQiJmd0Ozwv ZGl2PjxkaXYgc3R5bGU9M0QibWFyZ2luOiA9CjBweDsgZm9udC1zaXplOiAxMXB4OyBmb250LWZh bWlseTogTWVubG87IiBjbGFzcz0zRCIiPiZuYnNwOyAmbmJzcDsgPQombmJzcDsgJm5ic3A7ICZs dDtib290IGRldj0zRCJoZCIvJmd0OzwvZGl2PjxkaXYgc3R5bGU9M0QibWFyZ2luOiAwcHg7ID0K Zm9udC1zaXplOiAxMXB4OyBmb250LWZhbWlseTogTWVubG87IiBjbGFzcz0zRCIiPiZuYnNwOyAm bmJzcDsgJm5ic3A7ID0KJm5ic3A7ICZsdDtib290IGRldj0zRCJuZXR3b3JrIi8mZ3Q7PC9kaXY+ PGRpdiBzdHlsZT0zRCJtYXJnaW46IDBweDsgPQpmb250LXNpemU6IDExcHg7IGZvbnQtZmFtaWx5 OiBNZW5sbzsiIGNsYXNzPTNEIiI+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgPQombmJzcDsgJmx0O2tl cm5lbCZndDsmbHQ7L2tlcm5lbCZndDs8L2Rpdj48ZGl2IHN0eWxlPTNEIm1hcmdpbjogMHB4OyA9 CmZvbnQtc2l6ZTogMTFweDsgZm9udC1mYW1pbHk6IE1lbmxvOyIgY2xhc3M9M0QiIj4mbmJzcDsg Jm5ic3A7ICZuYnNwOyA9CiZuYnNwOyAmbHQ7aW5pdHJkJmd0OyZsdDsvaW5pdHJkJmd0OzwvZGl2 PjxkaXYgc3R5bGU9M0QibWFyZ2luOiAwcHg7ID0KZm9udC1zaXplOiAxMXB4OyBmb250LWZhbWls eTogTWVubG87IiBjbGFzcz0zRCIiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ID0KJm5ic3A7ICZsdDtj bWRsaW5lJmd0OyZsdDsvY21kbGluZSZndDs8L2Rpdj48ZGl2IHN0eWxlPTNEIm1hcmdpbjogMHB4 OyA9CmZvbnQtc2l6ZTogMTFweDsgZm9udC1mYW1pbHk6IE1lbmxvOyIgY2xhc3M9M0QiIj4mbmJz cDsgJm5ic3A7ID0KJmx0Oy9vcyZndDs8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPTNEIiI+PGJyIGNs YXNzPTNEIiI+PC9kaXY+PGRpdiA9CmNsYXNzPTNEIiI+VXNpbmcgR1VJOjwvZGl2PjxkaXYgY2xh c3M9M0QiIj48ZGl2IHN0eWxlPTNEIm1hcmdpbjogMHB4OyA9CmZvbnQtc2l6ZTogMTFweDsgZm9u dC1mYW1pbHk6IE1lbmxvOyIgY2xhc3M9M0QiIj4mbmJzcDsgPQombmJzcDsmbmJzcDsmbHQ7b3Mg dHlwZT0zRCJyaGVsXzd4NjQiJmd0OzwvZGl2PjxkaXYgc3R5bGU9M0QibWFyZ2luOiA9CjBweDsg Zm9udC1zaXplOiAxMXB4OyBmb250LWZhbWlseTogTWVubG87IiBjbGFzcz0zRCIiPiZuYnNwOyAm bmJzcDsgPQombmJzcDsgJm5ic3A7ICZsdDtib290IGRldj0zRCJoZCIvJmd0OzwvZGl2PjxkaXYg c3R5bGU9M0QibWFyZ2luOiAwcHg7ID0KZm9udC1zaXplOiAxMXB4OyBmb250LWZhbWlseTogTWVu bG87IiBjbGFzcz0zRCIiPiZuYnNwOyAmbmJzcDsgJm5ic3A7ID0KJm5ic3A7ICZsdDtib290IGRl dj0zRCJuZXR3b3JrIi8mZ3Q7PC9kaXY+PGRpdiBzdHlsZT0zRCJtYXJnaW46IDBweDsgPQpmb250 LXNpemU6IDExcHg7IGZvbnQtZmFtaWx5OiBNZW5sbzsiIGNsYXNzPTNEIiI+Jm5ic3A7ICZuYnNw OyA9CiZsdDsvb3MmZ3Q7PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0zRCIiPjxiciBjbGFzcz0zRCIi PjwvZGl2PjxkaXYgPQpjbGFzcz0zRCIiPk5vdCBjcml0aWNhbCwgYnV0IHN0cmFuZ2UuIEJvdGgg d29ya3M8L2Rpdj48ZGl2IGNsYXNzPTNEIiI+PGJyID0KY2xhc3M9M0QiIj48L2Rpdj48ZGl2IGNs YXNzPTNEIiI+PGJyIGNsYXNzPTNEIiI+PGRpdiA9CmNsYXNzPTNEIiI+PGJsb2NrcXVvdGUgdHlw ZT0zRCJjaXRlIiBjbGFzcz0zRCIiPjxkaXYgY2xhc3M9M0QiIj5MZSAyNCA9Cm1haSAyMDE2ID1D Mz1BMCAxMzozNiwgU2htdWVsIE1lbGFtdWQgJmx0OzxhID0KaHJlZj0zRCJtYWlsdG86c21lbGFt dWRAcmVkaGF0LmNvbSIgY2xhc3M9M0QiIj5zbWVsYW11ZEByZWRoYXQuY29tPC9hPiZndDs9CiBh ID1DMz1BOWNyaXQgOjwvZGl2PjxiciBjbGFzcz0zRCJBcHBsZS1pbnRlcmNoYW5nZS1uZXdsaW5l Ij48ZGl2ID0KY2xhc3M9M0QiIj48ZGl2IGRpcj0zRCJsdHIiIGNsYXNzPTNEIiI+PGRpdiBjbGFz cz0zRCJnbWFpbF9kZWZhdWx0IiA9CnN0eWxlPTNEImZvbnQtZmFtaWx5Om1vbm9zcGFjZSxtb25v c3BhY2U7Zm9udC1zaXplOngtc21hbGwiPkhpITxiciA9CmNsYXNzPTNEIiI+PGJyIGNsYXNzPTNE IiI+PC9kaXY+PGRpdiBjbGFzcz0zRCJnbWFpbF9kZWZhdWx0IiA9CnN0eWxlPTNEImZvbnQtZmFt aWx5Om1vbm9zcGFjZSxtb25vc3BhY2U7Zm9udC1zaXplOngtc21hbGwiPldoYXQgZG8geW91ID0K bWVhbiB1bmRlciAicmVtb3ZpbmcgdmFsdWVzIj8mbmJzcDsgWW91IHdhbnQgJmx0O2tlcm5lbCZn dDssID0KJmx0O2luaXRyZCZndDsgZXRjLiBub3QgdG8gYXBwZWFyIGluIGVuZ2luZSByZXNwb25z ZT8gVGhlcmUgaXMgbm8gc3VjaCA9CnRoaW5nLiBUaGVyZSBpcyBhbHdheXMgc29tZSB2YWx1ZSwg ZW1wdHkgb3Igbm9uLWVtcHR5LjxiciBjbGFzcz0zRCIiPjxiciA9CmNsYXNzPTNEIiI+PC9kaXY+ PGRpdiBjbGFzcz0zRCJnbWFpbF9kZWZhdWx0IiA9CnN0eWxlPTNEImZvbnQtZmFtaWx5Om1vbm9z cGFjZSxtb25vc3BhY2U7Zm9udC1zaXplOngtc21hbGwiPlNobXVlbDxiciA9CmNsYXNzPTNEIiI+ PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0zRCJnbWFpbF9leHRyYSI+PGJyIGNsYXNzPTNEIiI+PGRp diA9CmNsYXNzPTNEImdtYWlsX3F1b3RlIj5PbiBUdWUsIEFwciAxMiwgMjAxNiBhdCA2OjQwIFBN LCBGYWJyaWNlIEJhY2NoZWxsYSA9CjxzcGFuIGRpcj0zRCJsdHIiIGNsYXNzPTNEIiI+Jmx0Ozxh ID0KaHJlZj0zRCJtYWlsdG86ZmFicmljZS5iYWNjaGVsbGFAb3JhbmdlLmZyIiB0YXJnZXQ9M0Qi X2JsYW5rIiA9CmNsYXNzPTNEIiI+ZmFicmljZS5iYWNjaGVsbGFAb3JhbmdlLmZyPC9hPiZndDs8 L3NwYW4+IHdyb3RlOjxiciA9CmNsYXNzPTNEIiI+PGJsb2NrcXVvdGUgY2xhc3M9M0QiZ21haWxf cXVvdGUiIHN0eWxlPTNEIm1hcmdpbjowIDAgMCA9Ci44ZXg7Ym9yZGVyLWxlZnQ6MXB4ICNjY2Mg c29saWQ7cGFkZGluZy1sZWZ0OjFleCI+PGRpdiA9CnN0eWxlPTNEIndvcmQtd3JhcDpicmVhay13 b3JkIiBjbGFzcz0zRCIiPkknbSB0cnlpbmcgdG8gY2hhbmdlIHRoZSB3YXkgYSA9ClZNIGlzIGJv b3RlZCwgSSB3YW50IGFuIGluaXRpYWwgc2V0dXAgd2l0aCBrZXJuZWwsIGluaXRyZCBhbmQgY21k bGluZSA9CmdpdmVuIGFuZCBsYXRlciByZW1vdmVkLjxkaXYgY2xhc3M9M0QiIj48YnIgY2xhc3M9 M0QiIj48L2Rpdj48ZGl2ID0KY2xhc3M9M0QiIj5Vc2luZyB0aGUgR1VJIGl0IHdvcmtzIGZpbmUu PC9kaXY+PGRpdiBjbGFzcz0zRCIiPjxiciA9CmNsYXNzPTNEIiI+PC9kaXY+PGRpdiBjbGFzcz0z RCIiPkJ1dCBJIGhhdmUgbm8gc3VjY2VzcyB1c2luZyB0aGUgcHl0aG9uID0KQVBJLiBBbmQgcnVu bmluZyB3aXRoIGRlYnVnIGVuYWJsZSwgSSBnZXQgdGhpcyBzdHJhbmdlIHJlc3VsdCA9Cjo8L2Rp dj48ZGl2IGNsYXNzPTNEIiI+PGJyIGNsYXNzPTNEIiI+PC9kaXY+PGRpdiBjbGFzcz0zRCIiPjxk aXYgPQpzdHlsZT0zRCJtYXJnaW46MHB4O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1lbmxv IiBjbGFzcz0zRCIiPiZndDsgPQpQVVQgL2FwaS92bXMvOGNlZDBmODEtMDNmZC00MTViLWE4ZWYt NjAxNDFkZTdlZWNhID0KSFRUUC8xLjE8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPTNEIiI+Li4uPC9k aXY+PGRpdiBjbGFzcz0zRCIiPjxkaXYgPQpzdHlsZT0zRCJtYXJnaW46MHB4O2ZvbnQtc2l6ZTox MXB4O2ZvbnQtZmFtaWx5Ok1lbmxvIiBjbGFzcz0zRCIiPiZndDsgPQombmJzcDsgJm5ic3A7ICZs dDtvcyB0eXBlPTNEInJoZWxfN3g2NCImZ3Q7PC9kaXY+PGRpdiA9CnN0eWxlPTNEIm1hcmdpbjow cHg7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8iIGNsYXNzPTNEIiI+Jmd0OyA9CiZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbHQ7Ym9vdCBkZXY9M0QiaGQiLyZndDs8L2Rpdj48 ZGl2ID0Kc3R5bGU9M0QibWFyZ2luOjBweDtmb250LXNpemU6MTFweDtmb250LWZhbWlseTpNZW5s byIgY2xhc3M9M0QiIj4mZ3Q7ID0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZsdDtib290 IGRldj0zRCJuZXR3b3JrIi8mZ3Q7PC9kaXY+PGRpdiA9CnN0eWxlPTNEIm1hcmdpbjowcHg7Zm9u dC1zaXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8iIGNsYXNzPTNEIiI+Jmd0OyA9CiZuYnNwOyAm bmJzcDsgJmx0Oy9vcyZndDs8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPTNEIiI+Li4uPC9kaXY+PGRp diA9CmNsYXNzPTNEIiI+PGRpdiBzdHlsZT0zRCJtYXJnaW46MHB4O2ZvbnQtc2l6ZToxMXB4O2Zv bnQtZmFtaWx5Ok1lbmxvIiA9CmNsYXNzPTNEIiI+Jmx0OyAmbmJzcDsgJm5ic3A7ICZsdDtvcyB0 eXBlPTNEInJoZWxfN3g2NCImZ3Q7PC9kaXY+PGRpdiA9CnN0eWxlPTNEIm1hcmdpbjowcHg7Zm9u dC1zaXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8iIGNsYXNzPTNEIiI+Jmx0OyA9CiZuYnNwOyAm bmJzcDsgJm5ic3A7ICZuYnNwOyAmbHQ7Ym9vdCBkZXY9M0QiaGQiLyZndDs8L2Rpdj48ZGl2ID0K c3R5bGU9M0QibWFyZ2luOjBweDtmb250LXNpemU6MTFweDtmb250LWZhbWlseTpNZW5sbyIgY2xh c3M9M0QiIj4mbHQ7ID0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZsdDtib290IGRldj0z RCJuZXR3b3JrIi8mZ3Q7PC9kaXY+PGRpdiA9CnN0eWxlPTNEIm1hcmdpbjowcHg7Zm9udC1zaXpl OjExcHg7Zm9udC1mYW1pbHk6TWVubG8iIGNsYXNzPTNEIiI+Jmx0OyA9CiZuYnNwOyAmbmJzcDsg Jm5ic3A7ICZuYnNwOyA9CiZsdDtrZXJuZWwmZ3Q7Li4uL3ZtbGludXombHQ7L2tlcm5lbCZndDs8 L2Rpdj48ZGl2ID0Kc3R5bGU9M0QibWFyZ2luOjBweDtmb250LXNpemU6MTFweDtmb250LWZhbWls eTpNZW5sbyIgY2xhc3M9M0QiIj4mbHQ7ID0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ID0K Jmx0O2luaXRyZCZndDsuLi4vaW5pdHJkLmltZyZsdDsvaW5pdHJkJmd0OzwvZGl2PjxkaXYgPQpz dHlsZT0zRCJtYXJnaW46MHB4O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1lbmxvIiBjbGFz cz0zRCIiPiZsdDsgPQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgPQombHQ7Y21kbGluZSZn dDsuLi4uJmx0Oy9jbWRsaW5lJmd0OzwvZGl2PjxkaXYgPQpzdHlsZT0zRCJtYXJnaW46MHB4O2Zv bnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1lbmxvIiBjbGFzcz0zRCIiPiZsdDsgPQombmJzcDsg Jm5ic3A7ICZsdDsvb3MmZ3Q7PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0zRCIiPjxiciA9CmNsYXNz PTNEIiI+PC9kaXY+PGRpdiBjbGFzcz0zRCIiPkkgZ290IHRoaXMgd2l0aDo8L2Rpdj48ZGl2ID0K Y2xhc3M9M0QiIj48cHJlID0Kc3R5bGU9M0QiYmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1LDI1NSwy NTUpO2ZvbnQtZmFtaWx5Ok1lbmxvIiA9CmNsYXNzPTNEIiI+b3NfcGFyYW1zID0zRCAgcGFyYW1z Lk9wZXJhdGluZ1N5c3RlbSgpPGJyID0KY2xhc3M9M0QiIj5vc19wYXJhbXMuc2V0X2Jvb3Qob2xk X29zX3BhcmFtcy5nZXRfYm9vdCgpKTxiciA9CmNsYXNzPTNEIiI+b3NfcGFyYW1zLnNldF90eXBl KG9sZF9vc19wYXJhbXMuZ2V0X3R5cGUoKSk8YnIgPQpjbGFzcz0zRCIiPm9zX3BhcmFtcy5zZXRf a2VybmVsKDxzcGFuIHN0eWxlPTNEImNvbG9yOiMwMDAwODAiID0KY2xhc3M9M0QiIj5Ob25lPC9z cGFuPik8YnIgY2xhc3M9M0QiIj5vc19wYXJhbXMuc2V0X2luaXRyZCg8c3BhbiA9CnN0eWxlPTNE ImNvbG9yOiMwMDAwODAiIGNsYXNzPTNEIiI+Tm9uZTwvc3Bhbj4pPGJyID0KY2xhc3M9M0QiIj5v c19wYXJhbXMuc2V0X2NtZGxpbmUoPHNwYW4gc3R5bGU9M0QiY29sb3I6IzAwMDA4MCIgPQpjbGFz cz0zRCIiPk5vbmU8L3NwYW4+KTxiciBjbGFzcz0zRCIiPjxzcGFuIHN0eWxlPTNEImNvbG9yOiM5 NDU1OGQiID0KY2xhc3M9M0QiIj5zZWxmPC9zcGFuPi5icm9rZXIuc2V0X29zKG9zX3BhcmFtcyk8 YnIgY2xhc3M9M0QiIj48c3BhbiA9CnN0eWxlPTNEImNvbG9yOiM5NDU1OGQiIGNsYXNzPTNEIiI+ c2VsZjwvc3Bhbj4uYnJva2VyLnVwZGF0ZSgpPGJyID0KY2xhc3M9M0QiIj48L3ByZT48ZGl2IGNs YXNzPTNEIiI+dHJ5aW5nIHRvIHNldCBrZXJuZWwgYW5kIG90aGVycyB0byA9CmVtcHR5IHN0cmlu ZyBpcyBub3QgcmVhbGx5IGJldHRlcjo8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPTNEIiI+PGRpdiA9 CnN0eWxlPTNEIm1hcmdpbjowcHg7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8iIGNs YXNzPTNEIiI+Jmd0OyA9CiZuYnNwOyAmbmJzcDsgJmx0O29zIHR5cGU9M0QicmhlbF83eDY0IiZn dDs8L2Rpdj48ZGl2ID0Kc3R5bGU9M0QibWFyZ2luOjBweDtmb250LXNpemU6MTFweDtmb250LWZh bWlseTpNZW5sbyIgY2xhc3M9M0QiIj4mZ3Q7ID0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7 ICZsdDtib290IGRldj0zRCJoZCIvJmd0OzwvZGl2PjxkaXYgPQpzdHlsZT0zRCJtYXJnaW46MHB4 O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1lbmxvIiBjbGFzcz0zRCIiPiZndDsgPQombmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJmx0O2Jvb3QgZGV2PTNEIm5ldHdvcmsiLyZndDs8L2Rp dj48ZGl2ID0Kc3R5bGU9M0QibWFyZ2luOjBweDtmb250LXNpemU6MTFweDtmb250LWZhbWlseTpN ZW5sbyIgY2xhc3M9M0QiIj4mZ3Q7ID0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZsdDtr ZXJuZWwmZ3Q7Jmx0Oy9rZXJuZWwmZ3Q7PC9kaXY+PGRpdiA9CnN0eWxlPTNEIm1hcmdpbjowcHg7 Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8iIGNsYXNzPTNEIiI+Jmd0OyA9CiZuYnNw OyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbHQ7aW5pdHJkJmd0OyZsdDsvaW5pdHJkJmd0OzwvZGl2 PjxkaXYgPQpzdHlsZT0zRCJtYXJnaW46MHB4O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1l bmxvIiBjbGFzcz0zRCIiPiZndDsgPQombmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJmx0O2Nt ZGxpbmUmZ3Q7Jmx0Oy9jbWRsaW5lJmd0OzwvZGl2PjxkaXYgPQpzdHlsZT0zRCJtYXJnaW46MHB4 O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1lbmxvIiBjbGFzcz0zRCIiPiZndDsgPQombmJz cDsgJm5ic3A7ICZsdDsvb3MmZ3Q7PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0zRCIiPi4uLjwvZGl2 PjxkaXYgPQpjbGFzcz0zRCIiPjxkaXYgc3R5bGU9M0QibWFyZ2luOjBweDtmb250LXNpemU6MTFw eDtmb250LWZhbWlseTpNZW5sbyIgPQpjbGFzcz0zRCIiPiZsdDsgJm5ic3A7ICZuYnNwOyAmbHQ7 b3MgdHlwZT0zRCJyaGVsXzd4NjQiJmd0OzwvZGl2PjxkaXYgPQpzdHlsZT0zRCJtYXJnaW46MHB4 O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1lbmxvIiBjbGFzcz0zRCIiPiZsdDsgPQombmJz cDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJmx0O2Jvb3QgZGV2PTNEImhkIi8mZ3Q7PC9kaXY+PGRp diA9CnN0eWxlPTNEIm1hcmdpbjowcHg7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8i IGNsYXNzPTNEIiI+Jmx0OyA9CiZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbHQ7Ym9vdCBk ZXY9M0QibmV0d29yayIvJmd0OzwvZGl2PjxkaXYgPQpzdHlsZT0zRCJtYXJnaW46MHB4O2ZvbnQt c2l6ZToxMXB4O2ZvbnQtZmFtaWx5Ok1lbmxvIiBjbGFzcz0zRCIiPiZsdDsgPQombmJzcDsgJm5i c3A7ICZuYnNwOyAmbmJzcDsgJmx0O2tlcm5lbCZndDsmbHQ7L2tlcm5lbCZndDs8L2Rpdj48ZGl2 ID0Kc3R5bGU9M0QibWFyZ2luOjBweDtmb250LXNpemU6MTFweDtmb250LWZhbWlseTpNZW5sbyIg Y2xhc3M9M0QiIj4mbHQ7ID0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZsdDtpbml0cmQm Z3Q7Jmx0Oy9pbml0cmQmZ3Q7PC9kaXY+PGRpdiA9CnN0eWxlPTNEIm1hcmdpbjowcHg7Zm9udC1z aXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8iIGNsYXNzPTNEIiI+Jmx0OyA9CiZuYnNwOyAmbmJz cDsgJm5ic3A7ICZuYnNwOyAmbHQ7Y21kbGluZSZndDsmbHQ7L2NtZGxpbmUmZ3Q7PC9kaXY+PGRp diA9CnN0eWxlPTNEIm1hcmdpbjowcHg7Zm9udC1zaXplOjExcHg7Zm9udC1mYW1pbHk6TWVubG8i IGNsYXNzPTNEIiI+Jmx0OyA9CiZuYnNwOyAmbmJzcDsgJmx0Oy9vcyZndDs8L2Rpdj48L2Rpdj48 ZGl2IGNsYXNzPTNEIiI+PGJyID0KY2xhc3M9M0QiIj48L2Rpdj48ZGl2IGNsYXNzPTNEIiI+V2hh dCBraW5kIG9mICJtYWdpYyB2YWx1ZXMiIHRoZSBlbmdpbmUgPQp1c2VzIHRvIHJlbW92ZXMgdmFs dWVzID88L2Rpdj48ZGl2IGNsYXNzPTNEIiI+PGJyID0KY2xhc3M9M0QiIj48L2Rpdj48L2Rpdj48 YnIgPQpjbGFzcz0zRCIiPl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fPGJyIGNsYXNzPTNEIiI+ClVzZXJzIG1haWxpbmcgbGlzdDxiciBjbGFzcz0zRCIiPgo8 YSBocmVmPTNEIm1haWx0bzpVc2Vyc0BvdmlydC5vcmciIGNsYXNzPTNEIiI+VXNlcnNAb3ZpcnQu b3JnPC9hPjxiciA9CmNsYXNzPTNEIiI+CjxhIGhyZWY9M0QiaHR0cDovL2xpc3RzLm92aXJ0Lm9y Zy9tYWlsbWFuL2xpc3RpbmZvL3VzZXJzIiA9CnJlbD0zRCJub3JlZmVycmVyIiB0YXJnZXQ9M0Qi X2JsYW5rIiA9CmNsYXNzPTNEIiI+aHR0cDovL2xpc3RzLm92aXJ0Lm9yZy9tYWlsbWFuL2xpc3Rp bmZvL3VzZXJzPC9hPjxiciA9CmNsYXNzPTNEIiI+CjxiciBjbGFzcz0zRCIiPjwvYmxvY2txdW90 ZT48L2Rpdj48YnIgY2xhc3M9M0QiIj48L2Rpdj4KPC9kaXY+PC9ibG9ja3F1b3RlPjwvZGl2Pjxi ciBjbGFzcz0zRCIiPjwvZGl2PjwvYm9keT48L2h0bWw+PQoKLS1BcHBsZS1NYWlsPV9GODgwNTlB Mi1CRDExLTREREMtQjc0Qi00QzlDREMxMzEyNjYtLQo= --===============6364472624185540911==--