| *** mixos has quit IRC | 00:05 | |
| *** madhu_ak has quit IRC | 00:15 | |
| dougwig | no, it is my nemesis lately. | 00:41 |
|---|---|---|
| *** mwang2_ has quit IRC | 00:47 | |
| openstackgerrit | Doug Wiegley proposed openstack/neutron-lbaas: Pull lbaasv1 tempest tests in-tree, and run v1/v2 tests directly https://review.openstack.org/186219 | 00:49 |
| *** Aish has joined #openstack-lbaas | 01:25 | |
| *** Aish has left #openstack-lbaas | 01:28 | |
| *** amotoki_ has joined #openstack-lbaas | 01:40 | |
| *** mixos has joined #openstack-lbaas | 01:41 | |
| *** amotoki_ has quit IRC | 01:45 | |
| *** harlowja_ has joined #openstack-lbaas | 01:50 | |
| *** madhu_ak has joined #openstack-lbaas | 02:00 | |
| *** Tiancheng has joined #openstack-lbaas | 02:02 | |
| harlowja_ | for those that are intersted https://review.openstack.org/#/c/164922/ (reviews welcome!) | 02:16 |
| *** sbalukoff has quit IRC | 02:20 | |
| *** bharath has quit IRC | 02:21 | |
| *** vivek-ebay has quit IRC | 02:38 | |
| *** bharath has joined #openstack-lbaas | 03:21 | |
| *** SumitNaiksatam has quit IRC | 03:24 | |
| *** madhu_ak has quit IRC | 03:24 | |
| *** bharath has quit IRC | 03:26 | |
| *** amotoki_ has joined #openstack-lbaas | 03:28 | |
| *** amotoki_ has quit IRC | 03:33 | |
| *** woodster_ has quit IRC | 03:40 | |
| *** vivek-ebay has joined #openstack-lbaas | 04:15 | |
| *** vivek-ebay has quit IRC | 04:19 | |
| *** vivek-ebay has joined #openstack-lbaas | 04:20 | |
| *** bharath has joined #openstack-lbaas | 04:23 | |
| *** bharath has quit IRC | 04:28 | |
| *** mixos has left #openstack-lbaas | 04:39 | |
| *** SumitNaiksatam has joined #openstack-lbaas | 04:43 | |
| *** openstackgerrit has quit IRC | 04:50 | |
| *** openstackgerrit has joined #openstack-lbaas | 04:50 | |
| *** amotoki_ has joined #openstack-lbaas | 05:17 | |
| *** kiran-r has joined #openstack-lbaas | 05:21 | |
| *** kiranr has joined #openstack-lbaas | 05:22 | |
| *** amotoki_ has quit IRC | 05:22 | |
| *** kiran-r has quit IRC | 05:24 | |
| *** kiranr is now known as kiran-r | 05:24 | |
| *** kiranr has joined #openstack-lbaas | 05:25 | |
| *** kiran-r has quit IRC | 05:25 | |
| *** kiran-r has joined #openstack-lbaas | 05:25 | |
| *** kiran-r has quit IRC | 05:26 | |
| *** kiranr has quit IRC | 05:26 | |
| *** kiran-r has joined #openstack-lbaas | 05:27 | |
| *** harlowja_ has quit IRC | 05:40 | |
| *** vivek-ebay has quit IRC | 05:49 | |
| *** nmagnezi has joined #openstack-lbaas | 05:55 | |
| *** bharath has joined #openstack-lbaas | 06:12 | |
| *** bharath has quit IRC | 06:17 | |
| *** sbalukoff has joined #openstack-lbaas | 06:34 | |
| *** [1]evgenyf has joined #openstack-lbaas | 06:34 | |
| *** hitalia has joined #openstack-lbaas | 06:35 | |
| *** amotoki_ has joined #openstack-lbaas | 06:48 | |
| *** amotoki_ has quit IRC | 06:53 | |
| *** bedis has quit IRC | 06:56 | |
| *** bedis has joined #openstack-lbaas | 06:56 | |
| *** kongfy has left #openstack-lbaas | 07:08 | |
| *** mmdurrant has quit IRC | 07:20 | |
| *** mmdurrant has joined #openstack-lbaas | 07:22 | |
| *** Miouge has joined #openstack-lbaas | 07:25 | |
| *** jschwarz has joined #openstack-lbaas | 07:52 | |
| *** kiran-r is now known as help | 08:00 | |
| *** help is now known as Guest32271 | 08:00 | |
| *** Guest32271 is now known as kiran-r | 08:01 | |
| *** Miouge_ has joined #openstack-lbaas | 08:01 | |
| *** Miouge has quit IRC | 08:03 | |
| *** Miouge_ is now known as Miouge | 08:03 | |
| *** amotoki_ has joined #openstack-lbaas | 08:37 | |
| *** amotoki_ has quit IRC | 08:42 | |
| *** apuimedo has joined #openstack-lbaas | 08:44 | |
| *** Miouge has quit IRC | 08:57 | |
| *** bharath has joined #openstack-lbaas | 09:01 | |
| *** bharath has quit IRC | 09:05 | |
| *** Miouge has joined #openstack-lbaas | 09:06 | |
| openstackgerrit | John Schwarz proposed openstack/neutron-lbaas: Prevent deletion of a subnet with lbaas v1 pool https://review.openstack.org/174384 | 09:14 |
| *** Miouge has quit IRC | 09:15 | |
| *** hitalia has quit IRC | 09:33 | |
| *** jschwarz is now known as jschwarz_lunch | 10:06 | |
| *** mmdurrant has quit IRC | 10:09 | |
| *** amotoki_ has joined #openstack-lbaas | 10:25 | |
| *** amotoki_ has quit IRC | 10:30 | |
| *** kbyrne has quit IRC | 10:34 | |
| *** kbyrne has joined #openstack-lbaas | 10:41 | |
| *** Miouge has joined #openstack-lbaas | 10:44 | |
| *** jschwarz_lunch is now known as jschwarz | 10:46 | |
| *** Tiancheng has quit IRC | 10:52 | |
| *** openstackgerrit has quit IRC | 11:39 | |
| *** openstackgerrit has joined #openstack-lbaas | 11:39 | |
| *** amotoki_ has joined #openstack-lbaas | 11:41 | |
| *** woodster_ has joined #openstack-lbaas | 11:42 | |
| *** amotoki has quit IRC | 11:45 | |
| *** amotoki_ has quit IRC | 11:46 | |
| *** mmdurrant has joined #openstack-lbaas | 11:59 | |
| *** nmagnezi has quit IRC | 13:28 | |
| *** amotoki has joined #openstack-lbaas | 13:30 | |
| *** amotoki has quit IRC | 13:35 | |
| *** kiran-r has quit IRC | 13:43 | |
| *** [1]evgenyf has quit IRC | 13:47 | |
| *** [1]evgenyf has joined #openstack-lbaas | 13:47 | |
| *** mixos has joined #openstack-lbaas | 14:13 | |
| *** mixos has left #openstack-lbaas | 14:16 | |
| *** mlavalle has joined #openstack-lbaas | 14:56 | |
| *** amotoki has joined #openstack-lbaas | 15:01 | |
| *** amotoki has quit IRC | 15:05 | |
| *** jschwarz_ has joined #openstack-lbaas | 15:15 | |
| *** jschwarz has quit IRC | 15:16 | |
| *** kiran-r has joined #openstack-lbaas | 15:21 | |
| *** kiran-r has quit IRC | 15:36 | |
| *** ByPasS has joined #openstack-lbaas | 15:53 | |
| *** chlong has quit IRC | 15:54 | |
| *** nmagnezi has joined #openstack-lbaas | 15:58 | |
| ByPasS | Hi everyone, I'm trying to test lbaas v2 (ex lbaas-pool-list instead of lb-pool-list) with openstack Kilo 2015.1 (ubuntu cloud archive) but having a 404 error when using lbaas-* while lb-* still works fine | 15:59 |
| blogan | ByPasS: that must mean v1 is active and v2 is not | 15:59 |
| blogan | ByPasS: check your neutron.conf service_plugins is pointing to V2 correctly | 16:00 |
| ByPasS | let me check | 16:00 |
| johnsom | ByPasS Make sure q-lbaasv2 is an enabled service | 16:01 |
| ByPasS | service_plugins = router,firewall,lbaas,vpnaas,metering | 16:02 |
| ByPasS | so replace lbaas with lbaasv2 / q-lbaasv2 ? | 16:02 |
| blogan | ByPasS: i think in that instance you're going to have to replace lbaas with the full lbaas v2 plugin path | 16:04 |
| blogan | since there isn't a simple alias for v2 | 16:04 |
| ByPasS | ic | 16:04 |
| blogan | ByPasS: change lbaas to | 16:05 |
| blogan | neutron_lbaas.services.loadbalancer.plugin.LoadBalancerPluginv2 | 16:05 |
| *** chlong has joined #openstack-lbaas | 16:07 | |
| ByPasS | thx for the pointer I will test it | 16:09 |
| blogan | ByPasS: no problem, let me know if that solves it | 16:14 |
| blogan | ByPasS: do you have a service_provider selected in the config? | 16:14 |
| blogan | ByPasS: and what configs are you loading when you start neutron-server? | 16:14 |
| ByPasS | ERROR neutron.services.service_base [-] No providers specified for 'LOADBALANCERV2' | 16:14 |
| ByPasS | I guess I need to add it also to the service providers section | 16:15 |
| blogan | ByPasS: ha yeah exactly | 16:15 |
| blogan | ByPasS: do you have a neutron_lbaas.conf in the /etc/neutron directory? | 16:15 |
| ByPasS | only lbaas_agent.ini | 16:16 |
| ByPasS | cd | 16:16 |
| ByPasS | oups :) | 16:16 |
| ByPasS | let me check the init script | 16:16 |
| blogan | ByPasS: then you probably have the V1 service provider in the neutron.conf | 16:17 |
| *** madhu_ak has joined #openstack-lbaas | 16:17 | |
| ByPasS | blogan : yes service_provider=LOADBALANCER:Haproxy:neutron.services.loadbalancer.drivers.haproxy.plugin_driver.HaproxyOnHostPluginDriver:default | 16:18 |
| blogan | ByPasS: are there any commented out ones? | 16:18 |
| blogan | if nto change that to | 16:18 |
| blogan | service_provider=LOADBALANCERV@:Haproxy:neutron.drivers.haproxy.plugin_driver.HaproxyOnHostPluginDriver:default | 16:19 |
| blogan | oh god | 16:19 |
| blogan | @ = 2 | 16:19 |
| ByPasS | yes thats what I did restart service | 16:19 |
| ByPasS | oh forgot the V sec | 16:20 |
| ByPasS | ok now db errors I guess I will need to repopulate the database with this new config | 16:21 |
| ByPasS | ProgrammingError: (ProgrammingError) (1146, "Table 'neutron.lbaas_loadbalancers' doesn't exist") etc etc | 16:22 |
| blogan | oh yeah you need to do the neutron-db-manage --service lbaas | 16:22 |
| blogan | neutron-db-manage --service lbaas upgrade head | 16:23 |
| blogan | you doing this through devstack? | 16:23 |
| blogan | or just individual processes? | 16:23 |
| ByPasS | its a install from the ubuntu cloud archive repo | 16:23 |
| blogan | ah okay | 16:24 |
| blogan | i'm sure in liberty v2 will be installed by default | 16:24 |
| ByPasS | I missed the presentation on lbaas at the summit last week :( there was alot of ppl and having a place sometimes was alomost impossible | 16:25 |
| ByPasS | :) | 16:25 |
| johnsom | https://www.openstack.org/summit/vancouver-2015/summit-videos/presentation/load-balancing-as-a-service-kilo-and-beyond | 16:26 |
| johnsom | Unfortunately we did not go into detail on installation steps for v2. | 16:26 |
| ByPasS | ty but still I will have a look at it and the presentations I "missed" | 16:27 |
| blogan | yeah monday neutron meetings were insanely packed | 16:29 |
| *** kiran-r has joined #openstack-lbaas | 16:29 | |
| *** kiranr has joined #openstack-lbaas | 16:30 | |
| *** kiran-r has quit IRC | 16:33 | |
| *** kiranr is now known as kiran-r | 16:34 | |
| openstackgerrit | Doug Wiegley proposed openstack/neutron-lbaas: Cleaner mechanism for enabling lbaasv2 in devstack-gate https://review.openstack.org/171049 | 16:34 |
| ByPasS | seems to be partially working now at least I can issue lbaas-* commands only thing remaining is that error TRACE oslo_messaging.rpc.dispatcher AttributeError: 'LoadBalancerPluginv2' object has no attribute 'create_or_update_agent' | 16:35 |
| blogan | ByPasS: lol you probably ahve the lbaas v1 agent running | 16:37 |
| blogan | neutron-lbaasv2-agent is the one you want | 16:37 |
| *** vivek-ebay has joined #openstack-lbaas | 16:40 | |
| *** vivek-ebay has quit IRC | 16:42 | |
| *** vivek-ebay has joined #openstack-lbaas | 16:42 | |
| *** ajmiller has joined #openstack-lbaas | 16:47 | |
| *** amotoki has joined #openstack-lbaas | 16:50 | |
| *** kiran-r has quit IRC | 16:53 | |
| *** amotoki has quit IRC | 16:54 | |
| *** kiran-r has joined #openstack-lbaas | 16:55 | |
| *** jschwarz__ has joined #openstack-lbaas | 16:58 | |
| *** jschwarz_ has quit IRC | 17:01 | |
| *** sbalukoff has quit IRC | 17:04 | |
| *** harlowja has joined #openstack-lbaas | 17:05 | |
| openstackgerrit | Doug Wiegley proposed openstack/neutron-lbaas: Pull lbaasv1 tempest tests in-tree, and run v1/v2 tests directly https://review.openstack.org/186219 | 17:06 |
| *** jschwarz__ has quit IRC | 17:13 | |
| *** kiran-r has quit IRC | 17:14 | |
| *** [1]evgenyf has quit IRC | 17:24 | |
| *** madhu_ak has quit IRC | 17:34 | |
| *** SumitNaiksatam has quit IRC | 17:39 | |
| *** nmagnezi has quit IRC | 17:57 | |
| *** SumitNaiksatam has joined #openstack-lbaas | 18:00 | |
| *** bharath has joined #openstack-lbaas | 18:04 | |
| *** madhu_ak has joined #openstack-lbaas | 18:05 | |
| *** apuimedo has quit IRC | 18:33 | |
| *** hitalia has joined #openstack-lbaas | 18:33 | |
| *** amotoki has joined #openstack-lbaas | 18:38 | |
| *** amotoki has quit IRC | 18:43 | |
| *** ajmiller has quit IRC | 19:42 | |
| *** TrevorV_ has joined #openstack-lbaas | 19:47 | |
| TrevorV_ | ping rm_work | 19:48 |
| openstackgerrit | Doug Wiegley proposed openstack/neutron-lbaas: Pull lbaasv1 tempest tests in-tree, and run v1/v2 tests directly https://review.openstack.org/186219 | 19:48 |
| TrevorV_ | ping rm_you| ? | 19:49 |
| rm_work | TrevorV_: ping me :P | 19:49 |
| openstackgerrit | Doug Wiegley proposed openstack/neutron-lbaas: Pull lbaasv1 tempest tests in-tree, and run v1/v2 tests directly https://review.openstack.org/186219 | 20:05 |
| *** amotoki has joined #openstack-lbaas | 20:27 | |
| openstackgerrit | Doug Wiegley proposed openstack/neutron-lbaas: Pull lbaasv1 tempest tests in-tree, and run v1/v2 tests directly https://review.openstack.org/186219 | 20:30 |
| *** amotoki has quit IRC | 20:32 | |
| *** bharath has quit IRC | 20:54 | |
| *** bharath has joined #openstack-lbaas | 20:54 | |
| *** bharath has quit IRC | 21:07 | |
| *** bharath has joined #openstack-lbaas | 21:16 | |
| openstackgerrit | Phillip Toohill proposed stackforge/octavia: Hooking TLS together https://review.openstack.org/185540 | 21:25 |
| *** madhu_ak_ has joined #openstack-lbaas | 21:28 | |
| *** madhu_ak has quit IRC | 21:32 | |
| *** openstackgerrit has quit IRC | 21:36 | |
| *** madhu_ak_ is now known as madhu_ak | 21:36 | |
| *** openstackgerrit has joined #openstack-lbaas | 21:37 | |
| openstackgerrit | Phillip Toohill proposed stackforge/octavia: Hooking TLS together https://review.openstack.org/185540 | 21:43 |
| ptoohill | TLs is working all the way now. Including with the octavia driver. Can use the 'how to create tls load balancer' wiki to test those patches out. | 21:43 |
| johnsom | Awesome ptoohill! | 21:44 |
| rm_work | was reviewing presently | 21:44 |
| rm_work | only concern is in the SSH driver you switched it to check_only=True | 21:44 |
| rm_work | I don't think that's right? | 21:44 |
| johnsom | I am going through the rest agent at the moment | 21:45 |
| openstackgerrit | Merged openstack/neutron-lbaas: Bugfixes and minor improvements to local.sh https://review.openstack.org/185369 | 22:06 |
| rm_work | ptoohill: ^^ | 22:11 |
| *** amotoki has joined #openstack-lbaas | 22:13 | |
| *** TrevorV_ has quit IRC | 22:15 | |
| *** amotoki has quit IRC | 22:18 | |
| *** mixos has joined #openstack-lbaas | 22:27 | |
| mixos | a | 22:27 |
| mixos | HI | 22:27 |
| mixos | Anyone ? | 22:27 |
| johnsom | Hi mixos | 22:27 |
| mixos | Hi Johnsome. you are my victim today... I guess. :- ) | 22:28 |
| johnsom | Sure thing | 22:28 |
| mixos | Would you spare some time ? | 22:28 |
| mixos | sudo tox -epy27 neutron_lbaas.tests.unit.services.loadbalancer.test_agent_scheduler.LBaaSAgentSchedulerTestCase.test_schedule_pool_with_disabled_agent | 22:28 |
| mixos | I ran unit test code on lbaas scheduler and it's failing without any modification. | 22:29 |
| mixos | so. wondering if this unit test was abandoned. | 22:29 |
| johnsom | Well, it could just be that it doesn't run right when called stand alone, which would be a bug | 22:30 |
| johnsom | Let me give it a try | 22:30 |
| mixos | Thank you :- ) | 22:30 |
| mixos | Captured pythonlogging: | 22:31 |
| mixos | ~~~~~~~~~~~~~~~~~~~~~~~ | 22:31 |
| mixos | 2015-05-28 01:35:51,260 ERROR [neutron.api.extensions] Extension path 'neutron/tests/unit/extensions' doesn't exist! | 22:31 |
| mixos | 2015-05-28 01:35:51,261 ERROR [neutron.api.extensions] It was impossible to process the following extensions: subnet_allocation because of missing requirements. | 22:31 |
| mixos | 22:31 | |
| mixos | Captured traceback: | 22:31 |
| mixos | ~~~~~~~~~~~~~~~~~~~ | 22:31 |
| mixos | Traceback (most recent call last): | 22:31 |
| mixos | File "neutron_lbaas/tests/unit/services/loadbalancer/test_agent_scheduler.py", line 127, in test_schedule_pool_with_disabled_agent | 22:31 |
| mixos | self._register_one_agent_state(lbaas_hosta) | 22:31 |
| mixos | AttributeError: 'LBaaSAgentSchedulerTestCase' object has no attribute '_register_one_agent_state' | 22:31 |
| mixos | (wow.... somehow when I do copy and paste, it's so ugly on irc) | 22:31 |
| johnsom | Yeah, we typically ask people to use gist or similar instead of pasting into irc | 22:32 |
| johnsom | Ok. I know what your problem likely is. | 22:32 |
| mixos | great ! | 22:32 |
| johnsom | It does pass for me, but I have seen this issue before. | 22:33 |
| johnsom | In tox.ini there is a "deps" section that pulls in dependencies. | 22:33 |
| johnsom | deps = -egit+https://git.openstack.org/openstack/neutron#egg=neutron | 22:33 |
| johnsom | That line is your problem. | 22:33 |
| johnsom | Your system likely cannot properly download the neutron code. Likely due to a HTTP proxy | 22:34 |
| mixos | ok... is there a way around it ? | 22:34 |
| johnsom | Unfortunately I don't have a good answer. My solution was to work on a machine that doesn't require an HTTP proxy setting. | 22:35 |
| mixos | I see. maybe I can try from home. | 22:37 |
| mixos | Thank you johnsome :- ) ! | 22:37 |
| mixos | Thank you johnsom :- ) ! | 22:37 |
| johnsom | Sure, I will look around a little too and see if I can find an answer. You are not the first person to hit this | 22:38 |
| mixos | Anyway.. learning lbaas is fun. | 22:38 |
| johnsom | Glad to hear it | 22:39 |
| mixos | Would you have any idea when octavia would have horizon support ? likely next year ? | 22:39 |
| johnsom | Well, Octavia is an LBaaSv2 driver, so the question is really when will LBaaSv2 have horizon support. | 22:40 |
| mixos | good answer for dumb question. LOL. yes.. | 22:41 |
| johnsom | I know many of us would like it, but I'm not sure we have someone working on it at the moment. | 22:41 |
| mixos | I see. | 22:41 |
| mixos | for customers.. although internal customers.. they would need horizon . although I prefer cmdline. | 22:42 |
| xgerman | if nobody will do it before Fall we (=HP) might pick it up | 22:43 |
| *** barra204 has joined #openstack-lbaas | 22:43 | |
| mixos | I see. Last time I saw brief discussion about supporting HW and SW loadbalabcer in octavia.. | 22:44 |
| xgerman | LBaaS V2 | 22:44 |
| mixos | would be interesting to see how to solve that issue in horizon. | 22:44 |
| johnsom | mixos You might try editing your tox.ini and changing the following line: | 22:44 |
| johnsom | install_command = pip --proxy <proxyinfo> install -U {opts} {packages} | 22:44 |
| xgerman | mixes there is a proposal called flavor framework | 22:44 |
| johnsom | That might be a temp fix | 22:44 |
| mixos | Thank you johnsom will try that this evening. | 22:45 |
| mixos | johnsom: hope this is not my vm issue. I am working on my vmware vm most of time. | 22:47 |
| openstackgerrit | Doug Wiegley proposed openstack/neutron-lbaas: Pull lbaasv1 tempest tests in-tree, and run v1/v2 tests directly https://review.openstack.org/186219 | 22:47 |
| mixos | xgerman: would you happen to have a link for that proposal ? | 22:47 |
| xgerman | https://wiki.openstack.org/wiki/Neutron/FlavorFramework | 22:48 |
| xgerman | madhu_ak is working on that at the moment | 22:49 |
| mixos | xgerman: I see. this is part of v2. | 22:49 |
| xgerman | sort of... | 22:50 |
| *** bharath has quit IRC | 22:51 | |
| mixos | xgerman: to my untrained eyes, it's hard to tell .. or relate that link to HW/SW LB. | 22:51 |
| xgerman | but I am hoping we get that done for L1 | 22:51 |
| *** bharath has joined #openstack-lbaas | 22:51 | |
| xgerman | well, it allows to use serval LB drivers side by side so then you can have a hardware load balancer and a software one in the same system | 22:51 |
| *** chlong has quit IRC | 22:52 | |
| openstackgerrit | Doug Wiegley proposed openstack/neutron-lbaas: Pull lbaasv1 tempest tests in-tree, and run v1/v2 tests directly https://review.openstack.org/186219 | 22:55 |
| *** mlavalle has quit IRC | 22:55 | |
| *** barra204 has quit IRC | 23:01 | |
| mixos | xgerman: I see. I would need to keep an eye on this proposal. | 23:01 |
| *** bharath has quit IRC | 23:05 | |
| *** bharath_ has joined #openstack-lbaas | 23:05 | |
| *** ByPasS has quit IRC | 23:06 | |
| *** bharath_ has quit IRC | 23:06 | |
| *** jhova has quit IRC | 23:07 | |
| *** ajmiller has joined #openstack-lbaas | 23:11 | |
| *** mmdurrant has quit IRC | 23:15 | |
| *** barra204 has joined #openstack-lbaas | 23:16 | |
| mixos | Thanks johnsom and xgerman . have a good evening | 23:18 |
| *** mixos has quit IRC | 23:21 | |
| *** ByPasS has joined #openstack-lbaas | 23:21 | |
| *** bharath has joined #openstack-lbaas | 23:38 | |
| openstackgerrit | Doug Wiegley proposed openstack/neutron-lbaas: Pull lbaasv1 tempest tests in-tree, and run v1/v2 tests directly https://review.openstack.org/186219 | 23:56 |
| ptoohill | rm_work: I was asking about that before but suppose you were on a plane at that time. I needed to verify that, and if that's the case then I am getting some errors that i need to look into. Errors like barbican's queue blowing up for some reason :/ | 23:58 |
Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!