*** felipemonteiro__ has joined #openstack-qa | 00:39 | |
openstackgerrit | Merged openstack-dev/devstack master: Set console proxy configuration according to cells v2 setup https://review.openstack.org/566446 | 01:00 |
---|---|---|
*** jesusaur has quit IRC | 01:22 | |
*** jesusaur has joined #openstack-qa | 01:24 | |
*** felipemonteiro__ has quit IRC | 01:35 | |
*** bkopilov_ has quit IRC | 01:35 | |
*** bkopilov__ has quit IRC | 01:35 | |
*** carl_baldwin_ has quit IRC | 01:55 | |
*** hongbin has joined #openstack-qa | 02:02 | |
*** yamamoto has joined #openstack-qa | 02:17 | |
*** dave-mccowan has quit IRC | 02:20 | |
*** yamamoto has quit IRC | 02:22 | |
*** hongbin_ has joined #openstack-qa | 02:37 | |
*** felipemonteiro__ has joined #openstack-qa | 02:39 | |
*** hongbin has quit IRC | 02:40 | |
*** esberglu has joined #openstack-qa | 02:48 | |
*** esberglu has quit IRC | 02:48 | |
*** rosmaita has quit IRC | 02:50 | |
*** ramishra has joined #openstack-qa | 02:54 | |
*** bkopilov_ has joined #openstack-qa | 02:55 | |
*** bkopilov__ has joined #openstack-qa | 02:56 | |
*** felipemonteiro__ has quit IRC | 02:58 | |
openstackgerrit | Masayuki Igawa proposed openstack/tempest master: [WIP] Add tempest plugins to pass sanity job https://review.openstack.org/566777 | 03:02 |
*** yamamoto has joined #openstack-qa | 03:04 | |
*** yamamoto has quit IRC | 03:31 | |
*** sridharg has joined #openstack-qa | 03:48 | |
*** hongbin_ has quit IRC | 03:55 | |
*** fnaval has quit IRC | 04:11 | |
*** gcheresh_ has joined #openstack-qa | 04:37 | |
*** vivsoni__ has left #openstack-qa | 04:39 | |
*** vivsoni has joined #openstack-qa | 04:42 | |
*** vivsoni has left #openstack-qa | 04:43 | |
*** gcheresh_ has quit IRC | 04:58 | |
*** yamamoto has joined #openstack-qa | 05:06 | |
*** jesusaur has quit IRC | 05:14 | |
*** e0ne has joined #openstack-qa | 05:18 | |
*** jesusaur has joined #openstack-qa | 05:20 | |
*** e0ne has quit IRC | 05:29 | |
*** agurenko has joined #openstack-qa | 05:51 | |
*** markvoelker has quit IRC | 06:01 | |
*** pcaruana has joined #openstack-qa | 06:01 | |
*** armaan has joined #openstack-qa | 06:07 | |
*** armaan has quit IRC | 06:11 | |
openstackgerrit | OpenStack Proposal Bot proposed openstack-dev/devstack master: Updated from generate-devstack-plugins-list https://review.openstack.org/566787 | 06:12 |
*** armaan has joined #openstack-qa | 06:12 | |
*** armaan has quit IRC | 06:24 | |
*** pcrews has quit IRC | 06:24 | |
*** armaan has joined #openstack-qa | 06:25 | |
*** rajinir has quit IRC | 06:35 | |
*** alexchadin has joined #openstack-qa | 06:39 | |
openstackgerrit | Merged openstack-dev/devstack master: Updated from generate-devstack-plugins-list https://review.openstack.org/566787 | 06:43 |
*** jesusaur has quit IRC | 06:45 | |
*** jesusaur has joined #openstack-qa | 06:46 | |
*** markvoelker has joined #openstack-qa | 07:01 | |
*** alexchad_ has joined #openstack-qa | 07:08 | |
*** rcernin has quit IRC | 07:08 | |
*** alexchadin has quit IRC | 07:10 | |
*** armaan has quit IRC | 07:14 | |
openstackgerrit | Masayuki Igawa proposed openstack/openstack-health master: Add number of failure tests in RSS feeds https://review.openstack.org/566800 | 07:22 |
*** markvoelker has quit IRC | 07:36 | |
*** tosky has joined #openstack-qa | 07:38 | |
*** alexchad_ has quit IRC | 07:48 | |
*** jpena|off is now known as jpena | 07:52 | |
*** yamamoto has quit IRC | 07:56 | |
*** yamamoto has joined #openstack-qa | 08:03 | |
*** gfidente has joined #openstack-qa | 08:03 | |
*** gfidente has quit IRC | 08:03 | |
*** gfidente has joined #openstack-qa | 08:03 | |
*** lucas-pto is now known as lucasagomes | 08:16 | |
*** dtantsur|afk is now known as dtantsur | 08:27 | |
openstackgerrit | Liron Kuchlani proposed openstack/tempest master: Backup and restore scenario https://review.openstack.org/566814 | 08:30 |
*** markvoelker has joined #openstack-qa | 08:33 | |
*** yamamoto_ has joined #openstack-qa | 08:40 | |
*** e0ne has joined #openstack-qa | 08:40 | |
*** aspiers has quit IRC | 08:40 | |
*** yamamoto has quit IRC | 08:41 | |
*** alexchadin has joined #openstack-qa | 08:44 | |
*** aspiers has joined #openstack-qa | 08:45 | |
*** yamamoto_ has quit IRC | 08:56 | |
*** d0ugal__ has quit IRC | 08:57 | |
*** d0ugal has joined #openstack-qa | 08:58 | |
*** lkuchlan has joined #openstack-qa | 09:01 | |
*** armaan has joined #openstack-qa | 09:01 | |
*** markvoelker has quit IRC | 09:07 | |
*** armaan has quit IRC | 09:08 | |
*** yamamoto has joined #openstack-qa | 09:08 | |
*** fnaval has joined #openstack-qa | 09:16 | |
*** gkadam has joined #openstack-qa | 09:19 | |
*** fnaval has quit IRC | 09:20 | |
*** sshnaidm|rover is now known as sshnaidm|lnch | 09:34 | |
*** bkopilov__ has quit IRC | 09:39 | |
*** bkopilov_ has quit IRC | 09:39 | |
*** ragiman has joined #openstack-qa | 09:42 | |
*** armaan has joined #openstack-qa | 10:04 | |
*** markvoelker has joined #openstack-qa | 10:04 | |
*** alexchadin has quit IRC | 10:09 | |
*** yamamoto has quit IRC | 10:15 | |
openstackgerrit | Liron Kuchlani proposed openstack/tempest master: Backup and restore scenario https://review.openstack.org/566814 | 10:15 |
*** yamamoto has joined #openstack-qa | 10:20 | |
*** rcernin has joined #openstack-qa | 10:35 | |
*** markvoelker has quit IRC | 10:38 | |
*** yamamoto has quit IRC | 10:48 | |
*** alexchadin has joined #openstack-qa | 10:55 | |
*** ragiman has quit IRC | 10:58 | |
*** lkuchlan has quit IRC | 11:07 | |
*** ragiman has joined #openstack-qa | 11:12 | |
*** lucasagomes is now known as lucas-hungry | 11:20 | |
*** markvoelker has joined #openstack-qa | 11:34 | |
*** rosmaita has joined #openstack-qa | 11:34 | |
*** yamamoto has joined #openstack-qa | 11:37 | |
*** jpena is now known as jpena|lunch | 11:46 | |
*** sshnaidm|lnch is now known as sshnaidm|rover | 11:46 | |
*** sridharg has quit IRC | 11:56 | |
*** sridharg has joined #openstack-qa | 11:57 | |
*** raildo has joined #openstack-qa | 12:03 | |
*** mriedem has joined #openstack-qa | 12:05 | |
*** markvoelker has quit IRC | 12:08 | |
*** edmondsw has joined #openstack-qa | 12:08 | |
*** ragiman has quit IRC | 12:09 | |
*** agurenko has quit IRC | 12:10 | |
*** markvoelker has joined #openstack-qa | 12:15 | |
*** agurenko has joined #openstack-qa | 12:15 | |
*** ragiman has joined #openstack-qa | 12:23 | |
*** lucas-hungry is now known as lucasagomes | 12:24 | |
*** bkopilov_ has joined #openstack-qa | 12:25 | |
*** dave-mcc_ has joined #openstack-qa | 12:26 | |
*** bkopilov__ has joined #openstack-qa | 12:27 | |
*** alexchadin has quit IRC | 12:31 | |
*** lkuchlan has joined #openstack-qa | 12:31 | |
*** agurenko has quit IRC | 12:32 | |
*** alexchadin has joined #openstack-qa | 12:33 | |
*** openstackgerrit has quit IRC | 12:49 | |
*** jpena|lunch is now known as jpena | 12:57 | |
*** armaan has quit IRC | 13:05 | |
*** gkadam_ has joined #openstack-qa | 13:05 | |
*** armaan has joined #openstack-qa | 13:06 | |
*** gkadam has quit IRC | 13:07 | |
*** dkranz has joined #openstack-qa | 13:12 | |
*** pcrews has joined #openstack-qa | 13:13 | |
*** yamamoto has quit IRC | 13:16 | |
*** yamamoto has joined #openstack-qa | 13:16 | |
*** armaan has quit IRC | 13:23 | |
*** armaan has joined #openstack-qa | 13:23 | |
*** felipemonteiro__ has joined #openstack-qa | 13:28 | |
*** dustins has joined #openstack-qa | 13:30 | |
*** felipemonteiro_ has joined #openstack-qa | 13:36 | |
*** dtantsur is now known as dtantsur|bbl | 13:36 | |
*** felipemonteiro__ has quit IRC | 13:39 | |
*** amotoki has quit IRC | 13:51 | |
*** janzian has joined #openstack-qa | 13:51 | |
*** hongbin has joined #openstack-qa | 13:59 | |
*** awaugama has joined #openstack-qa | 14:00 | |
*** esberglu has joined #openstack-qa | 14:00 | |
*** awaugama has quit IRC | 14:01 | |
*** awaugama has joined #openstack-qa | 14:01 | |
*** rossella_s has quit IRC | 14:03 | |
*** alexchadin has quit IRC | 14:03 | |
*** lbragstad has quit IRC | 14:05 | |
*** rossella_s has joined #openstack-qa | 14:05 | |
*** mriedem has quit IRC | 14:05 | |
*** lbragstad has joined #openstack-qa | 14:05 | |
*** e0ne has quit IRC | 14:05 | |
*** e0ne_ has joined #openstack-qa | 14:05 | |
*** armaan has quit IRC | 14:07 | |
*** armaan has joined #openstack-qa | 14:07 | |
*** yamamoto has quit IRC | 14:16 | |
*** yamamoto has joined #openstack-qa | 14:19 | |
*** mriedem has joined #openstack-qa | 14:22 | |
*** gcheresh_ has joined #openstack-qa | 14:23 | |
*** armaan has quit IRC | 14:25 | |
*** armaan has joined #openstack-qa | 14:26 | |
*** fnaval has joined #openstack-qa | 14:35 | |
*** openstackgerrit has joined #openstack-qa | 14:39 | |
openstackgerrit | Eric Berglund proposed openstack/tempest master: Allow password for tempest validation auth_method https://review.openstack.org/565239 | 14:39 |
*** rcernin has quit IRC | 14:47 | |
*** rajinir has joined #openstack-qa | 14:49 | |
*** ragiman has quit IRC | 14:50 | |
*** gfidente has quit IRC | 14:59 | |
*** gcheresh_ has quit IRC | 15:05 | |
*** lkuchlan has quit IRC | 15:16 | |
*** felipemonteiro has joined #openstack-qa | 15:30 | |
*** felipemonteiro__ has joined #openstack-qa | 15:31 | |
*** felipemonteiro_ has quit IRC | 15:32 | |
*** felipemonteiro has quit IRC | 15:35 | |
*** gfidente has joined #openstack-qa | 15:37 | |
*** lucasagomes is now known as lucas-bbl | 15:42 | |
*** gkadam__ has joined #openstack-qa | 15:43 | |
*** gkadam_ has quit IRC | 15:46 | |
*** e0ne_ has quit IRC | 15:58 | |
*** edmondsw has quit IRC | 16:00 | |
*** edmondsw has joined #openstack-qa | 16:01 | |
*** dtantsur|bbl is now known as dtantsur | 16:04 | |
*** rmascena has joined #openstack-qa | 16:06 | |
*** raildo has quit IRC | 16:08 | |
*** harlowja has joined #openstack-qa | 16:17 | |
*** yamamoto has quit IRC | 16:21 | |
*** rossella_s has quit IRC | 16:38 | |
*** yamamoto has joined #openstack-qa | 16:39 | |
*** rossella_s has joined #openstack-qa | 16:40 | |
*** gkadam__ has quit IRC | 16:42 | |
*** EmilienM is now known as EmilienM_PTO | 16:49 | |
*** jpena is now known as jpena|off | 17:08 | |
*** e0ne has joined #openstack-qa | 17:10 | |
*** yamamoto has quit IRC | 17:10 | |
openstackgerrit | Dan Smith proposed openstack-dev/devstack master: DNM: Test nova with heartbeating oslo.messaging https://review.openstack.org/566725 | 17:12 |
*** e0ne has quit IRC | 17:12 | |
*** ramishra has quit IRC | 17:17 | |
*** slaweq has quit IRC | 17:25 | |
*** slaweq has joined #openstack-qa | 17:26 | |
*** harlowja has quit IRC | 17:31 | |
*** slaweq has quit IRC | 17:31 | |
*** e0ne has joined #openstack-qa | 17:32 | |
*** slaweq has joined #openstack-qa | 17:41 | |
*** gfidente has quit IRC | 17:41 | |
openstackgerrit | Rick Bartra proposed openstack/patrole master: Create or attach interface should use specific network https://review.openstack.org/565263 | 17:44 |
*** slaweq has quit IRC | 17:45 | |
*** jlvillal is now known as jlvacation | 17:51 | |
*** rossella_s has quit IRC | 18:05 | |
*** felipemonteiro__ has quit IRC | 18:10 | |
*** felipemonteiro__ has joined #openstack-qa | 18:10 | |
*** yamamoto has joined #openstack-qa | 18:11 | |
openstackgerrit | Dmitry Tantsur proposed openstack-dev/devstack stable/pike: Stop using ironic host manager with resource classes https://review.openstack.org/510014 | 18:15 |
*** dtantsur is now known as dtantsur|afk | 18:19 | |
*** yamamoto has quit IRC | 18:21 | |
*** harlowja has joined #openstack-qa | 18:25 | |
*** snapiri- has joined #openstack-qa | 18:26 | |
*** snapiri has quit IRC | 18:28 | |
*** sridharg has quit IRC | 18:29 | |
*** rossella_s has joined #openstack-qa | 18:37 | |
*** e0ne has quit IRC | 18:38 | |
*** openstackgerrit has quit IRC | 18:49 | |
*** e0ne has joined #openstack-qa | 19:02 | |
*** dave-mcc_ has quit IRC | 19:14 | |
*** dave-mccowan has joined #openstack-qa | 19:18 | |
*** lkuchlan has joined #openstack-qa | 19:18 | |
*** e0ne has quit IRC | 19:24 | |
*** lkuchlan has quit IRC | 19:28 | |
*** slaweq has joined #openstack-qa | 19:41 | |
*** awaugama has quit IRC | 19:42 | |
*** slaweq has quit IRC | 19:45 | |
*** esberglu has quit IRC | 20:07 | |
*** tosky has quit IRC | 20:08 | |
*** tosky has joined #openstack-qa | 20:08 | |
*** rmascena has quit IRC | 20:12 | |
*** esberglu has joined #openstack-qa | 20:19 | |
*** e0ne has joined #openstack-qa | 20:20 | |
*** pcaruana has quit IRC | 20:21 | |
*** edmondsw has quit IRC | 20:33 | |
*** e0ne has quit IRC | 20:45 | |
*** slaweq has joined #openstack-qa | 20:49 | |
clarkb | openstackrec | 20:53 |
clarkb | derp | 20:53 |
clarkb | melwitt: fwiw 'openstackrecheck' should be the bot nick and it hangs out in here and in -neutron. However its not here | 20:54 |
melwitt | thanks, I was wondering what its name is :) | 20:54 |
clarkb | the process is running I'm now digging through logs to try and figure out what is going on | 20:55 |
*** dkranz has quit IRC | 20:58 | |
*** dkranz has joined #openstack-qa | 20:59 | |
clarkb | melwitt: the last things logged show a bunch of netsplit activity I think it may still be on the wrong side of that so I will restart it | 20:59 |
clarkb | and we can continue to debug from there | 20:59 |
*** openstackrecheck has joined #openstack-qa | 21:00 | |
clarkb | and theer it is | 21:00 |
melwitt | \o/ | 21:01 |
melwitt | thanks clarkb | 21:02 |
clarkb | melwitt: http://paste.openstack.org/show/720620/ is the next issue | 21:08 |
*** dustins has quit IRC | 21:09 | |
clarkb | there is a parse failure, let me make that message human readable then we can debug it (as is its not pretty to look at) | 21:09 |
*** felipemonteiro_ has joined #openstack-qa | 21:13 | |
clarkb | cannot parse: ((filename:"job-output.txt" AND message:"POST-RUN END" AND message:"project-config/playbooks/base/post-ssh") OR (filename:"console.html" AND (message:"[Zuul] Job complete" OR message:"[SCP] Copying console log" OR message:"Grabbing consoleLog")) AND build_status:"FAILURE" AND build_change:"565086" AND build_patchset:"3" AND build_name:"openstack-tox-pep8" AND build_short_uuid:"8bcc8dc" | 21:15 |
clarkb | its missing the closing ) I think | 21:16 |
melwitt | oh, yeah seems like it | 21:16 |
*** felipemonteiro__ has quit IRC | 21:17 | |
*** vaidy has quit IRC | 21:20 | |
*** swamireddy has quit IRC | 21:20 | |
*** openstackgerrit has joined #openstack-qa | 21:25 | |
openstackgerrit | Clark Boylan proposed openstack-infra/elastic-recheck master: Fix parens matching in result ready query https://review.openstack.org/567058 | 21:25 |
clarkb | melwitt: mriedem mtreinish ^ that should fix it I think | 21:25 |
mriedem | i was just looking at that earlier today | 21:27 |
mriedem | is it weird that we don't get any hits for this in logstash? | 21:31 |
mriedem | ((filename:"job-output.txt" AND message:"POST-RUN END" AND message:"project-config/playbooks/base/post-ssh") OR (filename:"console.html" AND (message:"[Zuul] Job complete" OR message:"[SCP] Copying console log" OR message:"Grabbing consoleLog"))) AND build_status:"FAILURE" | 21:31 |
mriedem | aha http://logs.openstack.org/57/517757/38/check/nova-next/4d5fdba/job-output.txt.gz#_2018-05-08_18_44_18_436978 | 21:33 |
mriedem | POST-RUN END RESULT_NORMAL: [untrusted : git.openstack.org/openstack/nova/playbooks/legacy/nova-next/post.yaml@master] | 21:33 |
mriedem | that doesn't match | 21:33 |
mriedem | message:"POST-RUN END" AND message:"project-config/playbooks/base/post-ssh" | 21:33 |
mriedem | but some jobs are in-tree now | 21:34 |
mriedem | yeah | 21:34 |
mriedem | ? | 21:34 |
melwitt | yeah, was about to suggest maybe that project-config path is old from the before times | 21:34 |
mriedem | this hits: | 21:34 |
mriedem | ((filename:"job-output.txt" AND message:"POST-RUN END" AND message:"playbooks/" AND message:"post") OR (filename:"console.html" AND (message:"[Zuul] Job complete" OR message:"[SCP] Copying console log" OR message:"Grabbing consoleLog"))) AND build_status:"FAILURE" | 21:34 |
melwitt | the next line though, matches but it's a START not an END http://logs.openstack.org/57/517757/38/check/nova-next/4d5fdba/job-output.txt.gz#_2018-05-08_18_44_22_800319 | 21:35 |
melwitt | er wait sorry | 21:35 |
melwitt | this one matches http://logs.openstack.org/57/517757/38/check/nova-next/4d5fdba/job-output.txt.gz#_2018-05-08_18_44_22_800072 | 21:35 |
melwitt | POST-RUN END RESULT_NORMAL: [trusted : git.openstack.org/openstack-infra/project-config/playbooks/base/post-ssh.yaml@master] | 21:36 |
melwitt | I wonder why that doesn't hit then? | 21:37 |
mriedem | probably the .yaml | 21:38 |
*** felipemonteiro__ has joined #openstack-qa | 21:38 | |
*** felipemonteiro_ has quit IRC | 21:38 | |
mriedem | yup the . probably needs to be escaped, or add .yaml | 21:39 |
mriedem | well, in kibana anyway, maybe it's different via the REST API directly | 21:39 |
melwitt | huh. I thought it would still be a regex match, like this re.search('project-config/playbooks/base/post-ssh', '[trusted : git.openstack.org/openstack-infra/project-config/playbooks/base/post-ssh.yaml@master]') | 21:41 |
*** markvoelker_ has joined #openstack-qa | 21:41 | |
openstackgerrit | Merged openstack-infra/elastic-recheck master: Fix parens matching in result ready query https://review.openstack.org/567058 | 21:42 |
*** markvoelker has quit IRC | 21:42 | |
clarkb | melwitt: mriedem that is part of the base job so even though your jobs are in tree now it comes from the base job | 21:42 |
mriedem | yeah, now i'm just wondering if that's not hitting because of the missing .yaml | 21:47 |
clarkb | melwitt: elasticsaerch is lucene so not quite regex but there is globbing | 21:49 |
melwitt | yep, indeed appending .yaml to the post-ssh yields some hits | 21:50 |
melwitt | you got me, lucene | 21:50 |
clarkb | they have a published doc somewhere on the language they use | 21:51 |
clarkb | I never remember what the details are because its special | 21:51 |
melwitt | yeah. I've looked at the docs before too and forget every time | 21:51 |
mriedem | i was going to write a cli front end to this query builder code, but kind of lazy right now | 21:51 |
*** dkranz has quit IRC | 21:51 | |
openstackgerrit | Matt Riedemann proposed openstack-infra/elastic-recheck master: Fix query_builder.result_ready() query for zuulv3 results https://review.openstack.org/567068 | 21:58 |
*** openstackrecheck has quit IRC | 22:00 | |
*** openstackrecheck has joined #openstack-qa | 22:00 | |
clarkb | I've approved ^ | 22:02 |
*** esberglu has quit IRC | 22:12 | |
openstackgerrit | Merged openstack-infra/elastic-recheck master: Fix query_builder.result_ready() query for zuulv3 results https://review.openstack.org/567068 | 22:14 |
mriedem | now watch the e-r comments start rolling in | 22:14 |
melwitt | aww yeah | 22:23 |
*** rcernin has joined #openstack-qa | 22:25 | |
*** openstackrecheck has quit IRC | 22:30 | |
*** openstackrecheck has joined #openstack-qa | 22:30 | |
*** felipemonteiro_ has joined #openstack-qa | 22:34 | |
*** felipemonteiro__ has quit IRC | 22:37 | |
*** hongbin has quit IRC | 22:48 | |
*** slaweq has quit IRC | 22:57 | |
*** swamireddy has joined #openstack-qa | 22:59 | |
*** vaidy has joined #openstack-qa | 23:00 | |
*** felipemonteiro__ has joined #openstack-qa | 23:04 | |
*** felipemonteiro_ has quit IRC | 23:04 | |
openstackrecheck | Console logs not available after 20:40s for openstack-tox-py27 566723,4,2bbffcd | 23:12 |
*** felipemonteiro__ has quit IRC | 23:14 | |
clarkb | melwitt: mriedem ^ success!? | 23:20 |
clarkb | the logstash job queue backlog is slowly whittling away | 23:21 |
clarkb | hopefully it catches up soon | 23:21 |
melwitt | woot | 23:21 |
*** tosky has quit IRC | 23:27 | |
*** janzian has quit IRC | 23:31 | |
*** bkopilov_ has quit IRC | 23:31 | |
*** bkopilov__ has quit IRC | 23:32 | |
openstackrecheck | Console logs not available after 20:29s for tripleo-ci-centos-7-undercloud-oooq 564285,9,01a5487 | 23:32 |
*** bkopilov__ has joined #openstack-qa | 23:44 | |
*** bkopilov_ has joined #openstack-qa | 23:44 | |
*** bkopilov__ has quit IRC | 23:52 | |
*** bkopilov_ has quit IRC | 23:52 | |
openstackrecheck | Console logs not available after 20:33s for tripleo-ci-centos-7-scenario003-multinode-oooq-container 565552,1,fe2fd21 | 23:53 |
mriedem | cool; i guess those are just 20 minute timeouts but otherwise we should see comments on failed changes | 23:59 |
mriedem | clarkb: thanks for jumping in and fixing that parenthesis issue | 23:59 |
Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!