From mboxrd@z Thu Jan 1 00:00:00 1970 From: Robert Lupton the Good To: Yngve Svendsen Cc: gnats-announce@sources.redhat.com, gnats-devel@sources.redhat.com, bug-gnats@gnu.org Subject: patch to gnatsweb 2.9.0 Date: Mon, 10 Sep 2001 12:13:00 -0000 Message-id: <15261.4288.443936.741169@kaze.Princeton.EDU> References: <5.1.0.14.2.20010908181818.00b43c20@10.10.1.1> X-SW-Source: 2001-q3/msg00109.html Content-type: multipart/mixed; boundary="----------=_1583534599-30279-3" This is a multi-part message in MIME format... ------------=_1583534599-30279-3 Content-length: 1711 I've finally got around to forward-porting some of my 2.7 changes. Here's a patch that: 1/ Adds a button to load stored queries; they can then be modified and submitted. This provides a way to edit stored queries. (Note: this uses a hidden atribute 'full_cmd' to avoid making the submit/delete/load stored query too wide with long labels) 2/ Supports a callback cb('init_prefs', ''); to set values in %global_prefs after init_prefs has run. 3/ Include the date that a query was submitted in the result page. This is very useful when the query is printed and filed away. This is only done if $global_prefs{'show date'} is true (default: 1). I'm not quite sure that I did this in the approved manor. I did not update the docs; your discussion of stored queries is pretty short, and I didn't know how you want to do this. Here's some sample HTML:
submit stored query (button and combobox)
If there are stored queries (done on the Query Results Page), this selects one of them. If no queries are stored, then this field is not displayed.
delete stored query (button and combobox)
If there are stored queries (done on the Query Results Page), this deletes one of them. If no queries are stored, then this field is not displayed.
load stored query (button and combobox)
If there are stored queries (done on the Query Results Page), this loads one of them into the various fields on this page as if you'd just typed them in; this allows you to edit a stored query. If no queries are stored, then this field is not displayed.
R ------------=_1583534599-30279-3 Content-Type: text/html; charset=us-ascii; name="patch1" Content-Disposition: inline; filename="patch1" Content-Transfer-Encoding: base64 Content-Length: 12217 KioqIGduYXRzd2ViLnBsCU1vbiBTZXAgMTAgMDU6MTE6MDQgMjAwMQotLS0g L3UvV1dXL1NEU1MvY2dpLWJpbi9nbmF0c3dlYi0yLjkuMC5wbAlNb24gU2Vw IDEwIDE1OjA2OjI4IDIwMDEKKioqKioqKioqKioqKioqCioqKiAxMzQyLDEz NDcgKioqKgotLS0gMTM0MiwxMzQ5IC0tLS0KICAKICBzdWIgYWR2YW5jZWRf cXVlcnlfcGFnZQogIHsKKyAgIG15KCR2YWx1ZXNfaGFzaCkgPSBAXzsKKyAK ICAgIG15ICRwYWdlID0gJ0FkdmFuY2VkIFF1ZXJ5JzsKICAgIHBhZ2Vfc3Rh cnRfaHRtbCgkcGFnZSk7CiAgICBwYWdlX2hlYWRpbmcoJHBhZ2UsICdRdWVy eSBQcm9ibGVtIFJlcG9ydHMnLCAxKTsKKioqKioqKioqKioqKioqCioqKiAx MzY4LDEzNzcgKioqKgogICAgICAgICAgIjx0aCBub3dyYXA+dXNpbmcgcmVn dWxhciBleHByZXNzaW9uPC90aD5cbiIsCiAgICAgICAgICAiPC90cj5cbiI7 CiAgICBwcmludCAiPHRyPlxuPHRkPlNpbmdsZS1saW5lIHRleHQgZmllbGRz OjwvdGQ+XG48dGQ+IiwKISAgICAgICAgICRxLT50ZXh0ZmllbGQoLW5hbWU9 Pid0ZXh0JywgLXNpemU9PiR3aWR0aCksCiAgICAgICAgICAiPC90ZD5cbjwv dHI+XG4iLAogICAgICAgICAgIjx0cj5cbjx0ZD5NdWx0aS1saW5lIHRleHQg ZmllbGRzOjwvdGQ+XG48dGQ+IiwKISAgICAgICAgICRxLT50ZXh0ZmllbGQo LW5hbWU9PidtdWx0aXRleHQnLCAtc2l6ZT0+JHdpZHRoKSwKICAgICAgICAg ICI8L3RkPlxuPC90cj5cbiIsCiAgICAgICAgICAiPC90YWJsZT5cbiI7CiAg Ci0tLSAxMzcwLDEzODEgLS0tLQogICAgICAgICAgIjx0aCBub3dyYXA+dXNp bmcgcmVndWxhciBleHByZXNzaW9uPC90aD5cbiIsCiAgICAgICAgICAiPC90 cj5cbiI7CiAgICBwcmludCAiPHRyPlxuPHRkPlNpbmdsZS1saW5lIHRleHQg ZmllbGRzOjwvdGQ+XG48dGQ+IiwKISAgICAgICAgICRxLT50ZXh0ZmllbGQo LW5hbWU9Pid0ZXh0JywgLXNpemU9PiR3aWR0aCwKISAJCSAgICAgIC12YWx1 ZT0+JCR2YWx1ZXNfaGFzaHtUZXh0fSksCiAgICAgICAgICAiPC90ZD5cbjwv dHI+XG4iLAogICAgICAgICAgIjx0cj5cbjx0ZD5NdWx0aS1saW5lIHRleHQg ZmllbGRzOjwvdGQ+XG48dGQ+IiwKISAgICAgICAgICRxLT50ZXh0ZmllbGQo LW5hbWU9PidtdWx0aXRleHQnLCAtc2l6ZT0+JHdpZHRoLAohIAkJICAgICAg LXZhbHVlPT4kJHZhbHVlc19oYXNoe011bHRpdGV4dH0pLAogICAgICAgICAg IjwvdGQ+XG48L3RyPlxuIiwKICAgICAgICAgICI8L3RhYmxlPlxuIjsKICAK KioqKioqKioqKioqKioqCioqKiAxMzk1LDE0MDEgKioqKgogICAgICBteSAk cGFyYW1fbmFtZSA9IGxjKCRfKTsKICAgICAgJHBhcmFtX25hbWUgPX4gcy8g Ly87CiAgICAgIHByaW50ICI8dHI+XG48dGQ+JF86PC90ZD5cbjx0ZD4iLAoh ICAgICAgICAgICAkcS0+dGV4dGZpZWxkKC1uYW1lPT4kcGFyYW1fbmFtZSwg LXNpemU9PiR3aWR0aCksCiAgICAgICAgICAgICI8L3RkPlxuPC90cj5cbiI7 CiAgICB9CiAgICBwcmludCAkcS0+VHIoICRxLT50ZCh7LWNvbHNwYW49PjJ9 LAotLS0gMTM5OSwxNDA2IC0tLS0KICAgICAgbXkgJHBhcmFtX25hbWUgPSBs YygkXyk7CiAgICAgICRwYXJhbV9uYW1lID1+IHMvIC8vOwogICAgICBwcmlu dCAiPHRyPlxuPHRkPiRfOjwvdGQ+XG48dGQ+IiwKISAgICAgICAgICAgJHEt PnRleHRmaWVsZCgtbmFtZT0+JHBhcmFtX25hbWUsIC1zaXplPT4kd2lkdGgs CiEgCQkJLXZhbHVlPT4kJHZhbHVlc19oYXNoeyRffSksCQkJCiAgICAgICAg ICAgICI8L3RkPlxuPC90cj5cbiI7CiAgICB9CiAgICBwcmludCAkcS0+VHIo ICRxLT50ZCh7LWNvbHNwYW49PjJ9LAoqKioqKioqKioqKioqKioKKioqIDE0 MjcsMTQzMyAqKioqCiAgICAgICMgMm5kIGNvbHVtbiBpcyByZWdleHAgc2Vh cmNoIGZpZWxkCiAgICAgIHByaW50ICI8dGQ+IiwKICAgICAgICAgICAgJHEt PnRleHRmaWVsZCgtbmFtZT0+JGxjX2ZpZWxkbmFtZSwKISAgICAgICAgICAg ICAgICAgICAgICAgICAtc2l6ZT0+JHdpZHRoKTsKICAgICAgaWYgKCRfIGVx ICdTdGF0ZScpCiAgICAgIHsKICAgICAgICBwcmludCAiPGJyPiIsCi0tLSAx NDMyLDE0MzggLS0tLQogICAgICAjIDJuZCBjb2x1bW4gaXMgcmVnZXhwIHNl YXJjaCBmaWVsZAogICAgICBwcmludCAiPHRkPiIsCiAgICAgICAgICAgICRx LT50ZXh0ZmllbGQoLW5hbWU9PiRsY19maWVsZG5hbWUsCiEgICAgICAgICAg ICAgICAgICAgICAgICAgLXNpemU9PiR3aWR0aCwgLXZhbHVlPT4kJHZhbHVl c19oYXNoeyRffSk7CiAgICAgIGlmICgkXyBlcSAnU3RhdGUnKQogICAgICB7 CiAgICAgICAgcHJpbnQgIjxicj4iLAoqKioqKioqKioqKioqKioKKioqIDE4 ODQsMTg5MiAqKioqCiAgICAgIHByaW50ICI8dGFibGUgY2VsbHNwYWNpbmc9 MCBjZWxscGFkZGluZz0wIGJvcmRlcj0wPiIsCiAgICAgICAgICAgICI8dHIg dmFsaWduPXRvcD4iLAogICAgICAgICAgICAkcS0+c3RhcnRfZm9ybSgpLAog ICAgICAgICAgICAiPHRkPiIsCiAgICAgICAgICAgIGhpZGRlbl9kYigpLAoh ICAgICAgICAgICAkcS0+c3VibWl0KCdjbWQnLCAnc3VibWl0IHN0b3JlZCBx dWVyeScpLAogICAgICAgICAgICAiPHRkPiZuYnNwOzx0ZD4iLAogICAgICAg ICAgICAkcS0+cG9wdXBfbWVudSgtbmFtZT0+J3F1ZXJ5bmFtZScsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgIC12YWx1ZXM9Plsgc29ydChrZXlzICVz dG9yZWRfcXVlcmllcykgXSksCi0tLSAxODg5LDE4OTkgLS0tLQogICAgICBw cmludCAiPHRhYmxlIGNlbGxzcGFjaW5nPTAgY2VsbHBhZGRpbmc9MCBib3Jk ZXI9MD4iLAogICAgICAgICAgICAiPHRyIHZhbGlnbj10b3A+IiwKICAgICAg ICAgICAgJHEtPnN0YXJ0X2Zvcm0oKSwKKyAgICAgICAgICAgIlN0b3JlZCBR dWVyaWVzOjx0ZD4iLAogICAgICAgICAgICAiPHRkPiIsCiAgICAgICAgICAg IGhpZGRlbl9kYigpLAohICAgICAgICAgICBoaWRkZW4oLW5hbWU9PidmdWxs X2NtZCcsIC12YWx1ZT0+J3N1Ym1pdCBzdG9yZWQgcXVlcnknKSwKISAgICAg ICAgICAgJHEtPnN1Ym1pdCgnY21kJywgJ3N1Ym1pdCcpLAogICAgICAgICAg ICAiPHRkPiZuYnNwOzx0ZD4iLAogICAgICAgICAgICAkcS0+cG9wdXBfbWVu dSgtbmFtZT0+J3F1ZXJ5bmFtZScsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgIC12YWx1ZXM9Plsgc29ydChrZXlzICVzdG9yZWRfcXVlcmllcykgXSks CioqKioqKioqKioqKioqKgoqKiogMTg5NSwxOTAxICoqKioKICAgICAgICAg ICAgIjx0ZD4iLAogICAgICAgICAgICAkcS0+aGlkZGVuKCdyZXR1cm5fdXJs JywgJHEtPnNlbGZfdXJsKCkpLAogICAgICAgICAgICBoaWRkZW5fZGIoKSwK ISAgICAgICAgICAgJHEtPnN1Ym1pdCgnY21kJywgJ2RlbGV0ZSBzdG9yZWQg cXVlcnknKSwKICAgICAgICAgICAgIjx0ZD4mbmJzcDs8dGQ+IiwKICAgICAg ICAgICAgJHEtPnBvcHVwX21lbnUoLW5hbWU9PidxdWVyeW5hbWUnLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAtdmFsdWVzPT5bIHNvcnQoa2V5cyAl c3RvcmVkX3F1ZXJpZXMpIF0pLAotLS0gMTkwMiwxOTE4IC0tLS0KICAgICAg ICAgICAgIjx0ZD4iLAogICAgICAgICAgICAkcS0+aGlkZGVuKCdyZXR1cm5f dXJsJywgJHEtPnNlbGZfdXJsKCkpLAogICAgICAgICAgICBoaWRkZW5fZGIo KSwKISAgICAgICAgICAgaGlkZGVuKC1uYW1lPT4nZnVsbF9jbWQnLCAtdmFs dWU9PidkZWxldGUgc3RvcmVkIHF1ZXJ5JyksCiEgICAgICAgICAgICRxLT5z dWJtaXQoJ2NtZCcsICdkZWxldGUnKSwKISAgICAgICAgICAgIjx0ZD4mbmJz cDs8dGQ+IiwKISAgICAgICAgICAgJHEtPnBvcHVwX21lbnUoLW5hbWU9Pidx dWVyeW5hbWUnLAohICAgICAgICAgICAgICAgICAgICAgICAgICAtdmFsdWVz PT5bIHNvcnQoa2V5cyAlc3RvcmVkX3F1ZXJpZXMpIF0pLAohICAgICAgICAg ICAkcS0+ZW5kX2Zvcm0oKSwKISAgICAgICAgICAgJHEtPnN0YXJ0X2Zvcm0o KSwKISAgICAgICAgICAgIjx0ZD4iLAohICAgICAgICAgICBoaWRkZW5fZGIo KSwKISAgICAgICAgICAgaGlkZGVuKC1uYW1lPT4nZnVsbF9jbWQnLCAtdmFs dWU9Pidsb2FkIHN0b3JlZCBxdWVyeScpLAohICAgICAgICAgICAkcS0+c3Vi bWl0KCdjbWQnLCAnbG9hZCcpLAogICAgICAgICAgICAiPHRkPiZuYnNwOzx0 ZD4iLAogICAgICAgICAgICAkcS0+cG9wdXBfbWVudSgtbmFtZT0+J3F1ZXJ5 bmFtZScsCiAgICAgICAgICAgICAgICAgICAgICAgICAgIC12YWx1ZXM9Plsg c29ydChrZXlzICVzdG9yZWRfcXVlcmllcykgXSksCioqKioqKioqKioqKioq KgoqKiogMjAwOCwyMDEzICoqKioKLS0tIDIwMjUsMjEwNCAtLS0tCiAgICB9 CiAgfQogIAorIAorICMgbG9hZF9zdG9yZWRfcXVlcnkgLQorICMgICAgIFNl dCB0aGUgY3VycmVudCBxdWVyeSBmcm9tIGEgY29va2llCisgIworICMgICAg IFF1ZXJpZXMgYXJlIHN0b3JlZCBhcyBpbmRpdmlkdWFsIGNvb2tpZXMgbmFt ZWQKKyAjICAgICAnZ25hdHN3ZWItcXVlcnktJHF1ZXJ5bmFtZScuCisgIwor IHN1YiBsb2FkX3N0b3JlZF9xdWVyeQorIHsKKyAgIG15ICRkZWJ1ZyA9IDA7 CisgICBteSAkcXVlcnluYW1lID0gJHEtPnBhcmFtKCdxdWVyeW5hbWUnKTsK KyAgIG15ICRxdWVyeV9zdHJpbmc7CisgICBteSAkZXJyID0gJyc7CisgICBp ZiAoISRxdWVyeW5hbWUpCisgICB7CisgICAgICRlcnIgPSAiSW50ZXJuYWwg ZXJyb3I6IG5vICdxdWVyeW5hbWUnIHBhcmFtZXRlciI7CisgICB9CisgICBl bHNpZiAoISgkcXVlcnlfc3RyaW5nID0gJHEtPmNvb2tpZSgiZ25hdHN3ZWIt cXVlcnktJHF1ZXJ5bmFtZSIpKSkKKyAgIHsKKyAgICAgJGVyciA9ICJObyBz dWNoIG5hbWVkIHF1ZXJ5OiAkcXVlcnluYW1lIjsKKyAgIH0KKyAgIGlmICgk ZXJyKQorICAgeworICAgICBwcmludCAkcS0+aGVhZGVyKCksCisgICAgICAg ICAgICRxLT5zdGFydF9odG1sKCdFcnJvcicpLAorICAgICAgICAgICAkcS0+ aDMoJGVyciksCisgICAgICAgICAgICRxLT5lbmRfaHRtbCgpOworICAgfQor ICAgZWxzZQorICAgeworICAgICAjCisgICAgICMgU2F2ZSB2YWx1ZXMgaW50 byBhIGhhc2gKKyAgICAgIworICAgICBteSAldmFsdWVzOworICAgICBteSgk a2V5LCAkdmFsKTsKKyAgICAgZm9yZWFjaCAoc3BsaXQoIiYiLCAkcXVlcnlf c3RyaW5nKSkKKyAgICAgeworICAgICAgICgka2V5LCAkdmFsKSA9IHNwbGl0 KCI9Iik7CisgICAgICAgaWYoJGtleSA9fiAvKGJlZm9yZXxhZnRlcikkLykK KyAgICAgICB7CisgCSRrZXkgPSB1Y2ZpcnN0KCRgKSAuICIgIiAuIHVjZmly c3QoJDEpOworICAgICAgIH0gZWxzZSB7CisgCSRrZXkgPSB1Y2ZpcnN0KCRr ZXkpOworICAgICAgIH0KKyAgICAgICBpZigka2V5IGVxICJTdWJtaXR0ZXJf aWQiKSB7CisgCSRrZXkgPSAiU3VibWl0dGVyLUlkIjsKKyAgICAgICB9Cisg ICAgICAgIyBJJ20gZ3Vlc3NpbmcgaGVyZS4uLiAoUkhMKQorICAgICAgICR2 YWwgPX4gcy8lMkEvKi9nOworICAgICAgICR2YWwgPX4gcy8lMjAvIC9nOwor ICAgICAgICR2YWwgPX4gcy8lNUIvWy9nOworICAgICAgICR2YWwgPX4gcy8l NUQvXS9nOworICAgICAgICR2YWwgPX4gcy8lNUUvXi9nOworICAgICAgICR2 YWwgPX4gcy8lN0MvfC9nOworICAgICAgIAorICAgICAgIGlmKCR2YWx1ZXN7 JGtleX0pIHsKKyAJJHZhbHVlc3ska2V5fSAuPSAifCI7CisgICAgICAgfQor ICAgICAgICR2YWx1ZXN7JGtleX0gLj0gJHZhbDsKKyAgICAgfQorIAorIAor ICAgICBwcmludCAkcS0+aGVhZGVyKCk7CisgICAgIGluaXRpYWxpemUoKTsK KyAgICAgaWYoJGRlYnVnKSB7CisgICAgICAgZm9yZWFjaCAoa2V5cyAldmFs dWVzKQorICAgICAgIHsKKyAJcHJpbnQgIiRfOiR2YWx1ZXN7JF99PEJSPiI7 CisgICAgICAgfQorICAgICB9CisgICAgIGFkdmFuY2VkX3F1ZXJ5X3BhZ2Uo XCV2YWx1ZXMpOworICAgfQorIH0KKyAKICAjIHNlbmRfaHRtbCAtCiAgIyAg ICAgU2VuZCBIVE1MIGhlbHAgZmlsZSwgYWZ0ZXIgZmlyc3QgdHJpbW1pbmcg b3V0IGV2ZXJ5dGhpbmcgYnV0CiAgIyAgICAgPGJvZHk+Li48L2JvZHk+LiAg VGhpcyBpcyBkb25lIGluIHRoaXMgd2F5IGZvciBjb252ZW5pZW5jZSBvZgoq KioqKioqKioqKioqKioKKioqIDIzMDAsMjMwNyAqKioqCiAgICAgICAgICBp ZiAkZ2xvYmFsX3ByZWZzeydkYXRhYmFzZSd9OwogICAgJHJvdyAuPSBxcSg8 U1BBTiBTVFlMRT0iJGJhbm5lcnN0eWxlICRiYW5uZXJfZm9udHNpemUyIj5V c2VyOiAkZGJfcHJlZnN7J3VzZXInfSZuYnNwOyZuYnNwOzwvU1BBTj4pCiAg ICAgICAgICBpZiAkZGJfcHJlZnN7J3VzZXInfTsKISAgICRyb3cgLj0gcXEo PFNQQU4gU1RZTEU9IiRiYW5uZXJzdHlsZSAkYmFubmVyX2ZvbnRzaXplMiI+ QWNjZXNzOiAkYWNjZXNzX2xldmVsPC9TUEFOPikKICAgICAgICAgIGlmICRh Y2Nlc3NfbGV2ZWw7CiAgICAkcm93IC49IHFxKFxuPC9URD5cbjxURCBBTElH Tj0iUklHSFQiPgogICAgICAgICAgICAgPEEgSFJFRj0iJHVybCIgU1RZTEU9 IiRiYW5uZXJzdHlsZSAkYmFubmVyX2ZvbnRzaXplMSI+JHNpdGVfYmFubmVy X3RleHQ8L0E+CiAgICAgICAgICAgICAgIDwvVEQ+XG48L1RSPlxuPC9UQUJM RT48L1REPjwvVFI+XG4pOwotLS0gMjM5MSwyNDA2IC0tLS0KICAgICAgICAg IGlmICRnbG9iYWxfcHJlZnN7J2RhdGFiYXNlJ307CiAgICAkcm93IC49IHFx KDxTUEFOIFNUWUxFPSIkYmFubmVyc3R5bGUgJGJhbm5lcl9mb250c2l6ZTIi PlVzZXI6ICRkYl9wcmVmc3sndXNlcid9Jm5ic3A7Jm5ic3A7PC9TUEFOPikK ICAgICAgICAgIGlmICRkYl9wcmVmc3sndXNlcid9OwohICAgJHJvdyAuPSBx cSg8U1BBTiBTVFlMRT0iJGJhbm5lcnN0eWxlICRiYW5uZXJfZm9udHNpemUy Ij5BY2Nlc3M6ICRhY2Nlc3NfbGV2ZWwmbmJzcDsmbmJzcDs8L1NQQU4+KQog ICAgICAgICAgaWYgJGFjY2Vzc19sZXZlbDsKKyAgIGlmKCRnbG9iYWxfcHJl ZnN7J3Nob3cgZGF0ZSd9KQorICAgeworICAgICBteSgkZGF0ZSk7CisgICAg ICRkYXRlID0gbG9jYWx0aW1lOworICAgICAkZGF0ZSA9fiBzLzpbMC05XStc cy8gLzsKKyAgICAgJHJvdyAuPSBxcSg8U1BBTiBTVFlMRT0iJGJhbm5lcnN0 eWxlICRiYW5uZXJfZm9udHNpemUyIj5EYXRlOiAkZGF0ZSAmbmJzcDsmbmJz cDs8L1NQQU4+KTsKKyAgIH0KKyAKICAgICRyb3cgLj0gcXEoXG48L1REPlxu PFREIEFMSUdOPSJSSUdIVCI+CiAgICAgICAgICAgICA8QSBIUkVGPSIkdXJs IiBTVFlMRT0iJGJhbm5lcnN0eWxlICRiYW5uZXJfZm9udHNpemUxIj4kc2l0 ZV9iYW5uZXJfdGV4dDwvQT4KICAgICAgICAgICAgICAgPC9URD5cbjwvVFI+ XG48L1RBQkxFPjwvVEQ+PC9UUj5cbik7CioqKioqKioqKioqKioqKgoqKiog MjM0NSwyMzUxICoqKioKICAjCiAgc3ViIHBhZ2VfaGVhZGluZwogIHsKISAg IG15KCR0aXRsZSwgJGhlYWRpbmcsICRkaXNwbGF5X3VzZXJfaW5mbywgJGRp c3BsYXlfZGF0ZSkgPSBAXzsKICAKICAgICMgUHJvdGVjdCBhZ2FpbnN0IG11 bHRpcGxlIGNhbGxzLgogICAgcmV0dXJuIGlmICRwYWdlX2hlYWRpbmdfZG9u ZTsKLS0tIDI0NDQsMjQ1MCAtLS0tCiAgIwogIHN1YiBwYWdlX2hlYWRpbmcK ICB7CiEgICBteSgkdGl0bGUsICRoZWFkaW5nLCAkZGlzcGxheV91c2VyX2lu Zm8pID0gQF87CiAgCiAgICAjIFByb3RlY3QgYWdhaW5zdCBtdWx0aXBsZSBj YWxscy4KICAgIHJldHVybiBpZiAkcGFnZV9oZWFkaW5nX2RvbmU7CioqKioq KioqKioqKioqKgoqKiogMzE2NSwzMTcwICoqKioKLS0tIDMyNjQsMzI3MCAt LS0tCiAgICBzZXRfcHJlZignZW1haWwnLCBcJWdsb2JhbF9wcmVmcywgXCVj dmFscyk7CiAgICBzZXRfcHJlZignT3JpZ2luYXRvcicsIFwlZ2xvYmFsX3By ZWZzLCBcJWN2YWxzKTsKICAgIHNldF9wcmVmKCdTdWJtaXR0ZXItSWQnLCBc JWdsb2JhbF9wcmVmcywgXCVjdmFscyk7CisgICBzZXRfcHJlZignc2hvdyBk YXRlJywgXCVnbG9iYWxfcHJlZnMsIFwlY3ZhbHMpOwogIAogICAgIyBjb2x1 bW5zIGlzIHRyZWF0ZWQgZGlmZmVyZW50bHkgYmVjYXVzZSBpdCdzIGFuIGFy cmF5IHdoaWNoIGlzIHN0b3JlZAogICAgIyBpbiB0aGUgY29va2llIGFzIGEg am9pbmVkIHN0cmluZy4KKioqKioqKioqKioqKioqCioqKiAzMjMxLDMyMzcg KioqKgogICAgfQogIAogICAgJHNuID0gJHEtPnNjcmlwdF9uYW1lOwohICAg bXkgJGNtZCA9ICRxLT5wYXJhbSgnY21kJykgfHwgJyc7ICMgYXZvaWQgcGVy bCAtdyB3YXJuaW5nCiAgCiAgICAjIyMgQ29va2llLXJlbGF0ZWQgY29kZSBt dXN0IGhhcHBlbiBiZWZvcmUgd2UgcHJpbnQgdGhlIEhUTUwgaGVhZGVyLgog IAotLS0gMzMzMSwzMzM3IC0tLS0KICAgIH0KICAKICAgICRzbiA9ICRxLT5z Y3JpcHRfbmFtZTsKISAgIG15ICRjbWQgPSAkcS0+cGFyYW0oJ2Z1bGxfY21k JykgfHwgJHEtPnBhcmFtKCdjbWQnKSB8fCAnJzsgIyBhdm9pZCBwZXJsIC13 IHdhcm5pbmcKICAKICAgICMjIyBDb29raWUtcmVsYXRlZCBjb2RlIG11c3Qg aGFwcGVuIGJlZm9yZSB3ZSBwcmludCB0aGUgSFRNTCBoZWFkZXIuCiAgCioq KioqKioqKioqKioqKgoqKiogMzI0MiwzMjQ3ICoqKioKLS0tIDMzNDIsMzM0 OCAtLS0tCiAgICAkZ2xvYmFsX2Nvb2tpZV9wYXRoID0gJy8nOwogICAgJGds b2JhbF9jb29raWVfZXhwaXJlcyA9ICcrMzBkJzsKICAgIGluaXRfcHJlZnMo KTsKKyAgIGNiKCdpbml0X3ByZWZzJywgJycpOwogIAogICAgIyBCaWcgb2xk IHN3aXRjaCB0byBoYW5kbGUgY29tbWFuZHMuCiAgICBpZigkY21kIGVxICdz dG9yZSBxdWVyeScpCioqKioqKioqKioqKioqKgoqKiogMzI1NywzMjYyICoq KioKLS0tIDMzNTgsMzM2OCAtLS0tCiAgICBlbHNpZigkY21kIGVxICdzdWJt aXQgc3RvcmVkIHF1ZXJ5JykKICAgIHsKICAgICAgc3VibWl0X3N0b3JlZF9x dWVyeSgpOworICAgICBleGl0KCk7CisgICB9CisgICBlbHNpZigkY21kIGVx ICdsb2FkIHN0b3JlZCBxdWVyeScpCisgICB7CisgICAgIGxvYWRfc3RvcmVk X3F1ZXJ5KCk7CiAgICAgIGV4aXQoKTsKICAgIH0KICAgIGVsc2lmKCRjbWQg ZXEgJ2xvZ2luJykK ------------=_1583534599-30279-3--