)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"978ab7706f327c9a3a4ff1f671b25fd4971de4d1","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Document Neutron subnet pools"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Disclaimer:  This is a work in progress.  The content in this commit"},{"line_number":10,"context_line":"was not originally written for the networking guide.  I wrote it as an"},{"line_number":11,"context_line":"introduction to the feature a while ago and thought I could adapt it"},{"line_number":12,"context_line":"for the networking guide.  For now, all I\u0027ve done is to convert the"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"ba0121b8_1dfcda3c","line":9,"updated":"2016-04-01 05:24:07.000000000","message":"I look forward to the real deal! :)","commit_id":"0dc57faa759e287c1fb3d22a99498b81ea715e3d"},{"author":{"_account_id":7448,"name":"Carl Baldwin","email":"carl@ecbaldwin.net","username":"carl-baldwin"},"change_message_id":"701bc30e14ebbf2494631718f835f5973f2ba27d","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Document Neutron subnet pools"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Disclaimer:  This is a work in progress.  The content in this commit"},{"line_number":10,"context_line":"was not originally written for the networking guide.  I wrote it as an"},{"line_number":11,"context_line":"introduction to the feature a while ago and thought I could adapt it"},{"line_number":12,"context_line":"for the networking guide.  For now, all I\u0027ve done is to convert the"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"ba0121b8_4cae7fe8","line":9,"in_reply_to":"ba0121b8_1dfcda3c","updated":"2016-04-01 20:08:07.000000000","message":"I thought I took this out.  I see I clobbered my updates with PS4.  My mistake.","commit_id":"0dc57faa759e287c1fb3d22a99498b81ea715e3d"}],"doc/networking-guide/source/adv-config-subnet-pools.rst":[{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"f6c3cefde4d3576e822b0246cfca3de6305d4ac5","unresolved":false,"context_lines":[{"line_number":1,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":2,"context_line":"Subnet Pools"},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"Subnet pools were added in the Kilo release.  It is a simple feature"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7af24918_1c493160","line":2,"updated":"2016-03-01 19:17:37.000000000","message":"Consider adding how to see if a Neutron system supports the extension (ext-list?) and consider documenting any config variable (if any) that would be used to tune the behavior of this feature.","commit_id":"a854c6a253d5f85893a005657ba5fa919a6d57e4"},{"author":{"_account_id":7448,"name":"Carl Baldwin","email":"carl@ecbaldwin.net","username":"carl-baldwin"},"change_message_id":"21c067e6cec5005410c445f3115d815a3b027e93","unresolved":false,"context_lines":[{"line_number":1,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":2,"context_line":"Subnet Pools"},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"Subnet pools were added in the Kilo release.  It is a simple feature"}],"source_content_type":"text/x-rst","patch_set":1,"id":"da0c15f0_ddd169cf","line":2,"in_reply_to":"7af24918_1c493160","updated":"2016-03-25 19:58:27.000000000","message":"Done.  No config variables.","commit_id":"a854c6a253d5f85893a005657ba5fa919a6d57e4"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"dcf4a3ff7a6bfc153ead1910f595e5bd968afe66","unresolved":false,"context_lines":[{"line_number":13,"context_line":"Before Kilo, Neutron had no automation around the addresses used to"},{"line_number":14,"context_line":"create a subnet.  To create one, you had to come up with the addresses"},{"line_number":15,"context_line":"on your own without any help from the system.  There are at least two"},{"line_number":16,"context_line":"major problems with this approach."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"First, you need to manage your addresses on your own.  Wouldn\u0027t it be"},{"line_number":19,"context_line":"nice if you could turn your pool of addresses over to Neutron to take"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7af24918_d1f5f283","line":16,"updated":"2016-03-01 19:16:20.000000000","message":"In the interest of network virtualization, giving the user the ability to bring his/her own IPs is still a compelling feature, IMO. I appreciate the content put here, but I would simply highlight the use cases where subnet pools become useful, rather than highlighting them as an alternative to the far west introduced by overlapping ips.\n\nIn other words, I\u0027d say (elaborate as you see fit): if you are not interested in overlapping IPs and you have these use cases in mind, then subnetpools may be for you.\n\nI personally see subnetpools as yet another tool in the hand of the admin to deal with IP addresses. One doesn\u0027t substitute the other, and I would suspect that today they can still be used jointly.","commit_id":"a854c6a253d5f85893a005657ba5fa919a6d57e4"},{"author":{"_account_id":7448,"name":"Carl Baldwin","email":"carl@ecbaldwin.net","username":"carl-baldwin"},"change_message_id":"21c067e6cec5005410c445f3115d815a3b027e93","unresolved":false,"context_lines":[{"line_number":13,"context_line":"Before Kilo, Neutron had no automation around the addresses used to"},{"line_number":14,"context_line":"create a subnet.  To create one, you had to come up with the addresses"},{"line_number":15,"context_line":"on your own without any help from the system.  There are at least two"},{"line_number":16,"context_line":"major problems with this approach."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"First, you need to manage your addresses on your own.  Wouldn\u0027t it be"},{"line_number":19,"context_line":"nice if you could turn your pool of addresses over to Neutron to take"}],"source_content_type":"text/x-rst","patch_set":1,"id":"da0c15f0_fdad4d32","line":16,"in_reply_to":"7af24918_d1f5f283","updated":"2016-03-25 19:58:27.000000000","message":"Everything you say is correct and subnetpools were carefully designed to support the joint usage you describe.  I\u0027ll add something.\n\nHowever, bringing your own IPs is also supported with subnetpools because tenants can create them too.  It is really whether you want the overlap.","commit_id":"a854c6a253d5f85893a005657ba5fa919a6d57e4"},{"author":{"_account_id":4187,"name":"Ryan Tidwell","email":"rtidwell@suse.com","username":"ryan-tidwell"},"change_message_id":"1101170cf08f15daaa27c9f94e2b471d196a5737","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"If you are an admin, you can create a pool which can be accessed by any"},{"line_number":53,"context_line":"regular tenant.  Being a shared resource, there is a quota mechanism to"},{"line_number":54,"context_line":"arbitrate access."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"Demo"},{"line_number":57,"context_line":"----"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7af24918_5648c387","line":54,"updated":"2016-03-05 07:52:24.000000000","message":"Perhaps expounding on quotas would be helpful. The quota mechanism for subnet pools isn\u0027t the most intutitive","commit_id":"a854c6a253d5f85893a005657ba5fa919a6d57e4"},{"author":{"_account_id":7448,"name":"Carl Baldwin","email":"carl@ecbaldwin.net","username":"carl-baldwin"},"change_message_id":"21c067e6cec5005410c445f3115d815a3b027e93","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"If you are an admin, you can create a pool which can be accessed by any"},{"line_number":53,"context_line":"regular tenant.  Being a shared resource, there is a quota mechanism to"},{"line_number":54,"context_line":"arbitrate access."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"Demo"},{"line_number":57,"context_line":"----"}],"source_content_type":"text/x-rst","patch_set":1,"id":"da0c15f0_af49d68d","line":54,"in_reply_to":"7af24918_5648c387","updated":"2016-03-25 19:58:27.000000000","message":"Done","commit_id":"a854c6a253d5f85893a005657ba5fa919a6d57e4"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"dcf4a3ff7a6bfc153ead1910f595e5bd968afe66","unresolved":false,"context_lines":[{"line_number":53,"context_line":"regular tenant.  Being a shared resource, there is a quota mechanism to"},{"line_number":54,"context_line":"arbitrate access."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"Demo"},{"line_number":57,"context_line":"----"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"If you have access to an Openstack Kilo or later based Neutron, you can"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7af24918_9117ea50","line":56,"updated":"2016-03-01 19:16:20.000000000","message":"This is good. I\u0027d consider adding the default subnetpool feature, and how you can leverage it during subnet-create. I\u0027d also highlight the fact that creating a subnet without specifying a subnetpool will still yield to a potential overlapping IP space.","commit_id":"a854c6a253d5f85893a005657ba5fa919a6d57e4"},{"author":{"_account_id":4187,"name":"Ryan Tidwell","email":"rtidwell@suse.com","username":"ryan-tidwell"},"change_message_id":"1101170cf08f15daaa27c9f94e2b471d196a5737","unresolved":false,"context_lines":[{"line_number":75,"context_line":"    | ip_version        | 4                                    |"},{"line_number":76,"context_line":"    | max_prefixlen     | 32                                   |"},{"line_number":77,"context_line":"    | min_prefixlen     | 8                                    |"},{"line_number":78,"context_line":"    | name              | demo-subnetpool4                     |"},{"line_number":79,"context_line":"    | prefixes          | 203.0.113.0/24                       |"},{"line_number":80,"context_line":"    | shared            | True                                 |"},{"line_number":81,"context_line":"    | tenant_id         | c597484841ff4a8785804c62ba81449b     |"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7af24918_b65dc74a","line":78,"updated":"2016-03-05 07:52:24.000000000","message":"Perhaps quickly talking through min, max, and default prefixlen would be helpful","commit_id":"a854c6a253d5f85893a005657ba5fa919a6d57e4"},{"author":{"_account_id":7448,"name":"Carl Baldwin","email":"carl@ecbaldwin.net","username":"carl-baldwin"},"change_message_id":"21c067e6cec5005410c445f3115d815a3b027e93","unresolved":false,"context_lines":[{"line_number":75,"context_line":"    | ip_version        | 4                                    |"},{"line_number":76,"context_line":"    | max_prefixlen     | 32                                   |"},{"line_number":77,"context_line":"    | min_prefixlen     | 8                                    |"},{"line_number":78,"context_line":"    | name              | demo-subnetpool4                     |"},{"line_number":79,"context_line":"    | prefixes          | 203.0.113.0/24                       |"},{"line_number":80,"context_line":"    | shared            | True                                 |"},{"line_number":81,"context_line":"    | tenant_id         | c597484841ff4a8785804c62ba81449b     |"}],"source_content_type":"text/x-rst","patch_set":1,"id":"da0c15f0_ef746ed0","line":78,"in_reply_to":"7af24918_b65dc74a","updated":"2016-03-25 19:58:27.000000000","message":"The more I see the min and max, the more I wonder why they\u0027re there at all.  What do they provide that the quota system doesn\u0027t?  I forget.","commit_id":"a854c6a253d5f85893a005657ba5fa919a6d57e4"},{"author":{"_account_id":4187,"name":"Ryan Tidwell","email":"rtidwell@suse.com","username":"ryan-tidwell"},"change_message_id":"ea465856bccc20e4293faab700f5097dcbc431b7","unresolved":false,"context_lines":[{"line_number":75,"context_line":"    | ip_version        | 4                                    |"},{"line_number":76,"context_line":"    | max_prefixlen     | 32                                   |"},{"line_number":77,"context_line":"    | min_prefixlen     | 8                                    |"},{"line_number":78,"context_line":"    | name              | demo-subnetpool4                     |"},{"line_number":79,"context_line":"    | prefixes          | 203.0.113.0/24                       |"},{"line_number":80,"context_line":"    | shared            | True                                 |"},{"line_number":81,"context_line":"    | tenant_id         | c597484841ff4a8785804c62ba81449b     |"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ba0121b8_0ab4a77d","line":78,"in_reply_to":"da0c15f0_ef746ed0","updated":"2016-03-31 18:08:25.000000000","message":"I\u0027ve always wondered about max prefixlen, I was never a fan of it but I remember Salvatore having some reasons for it. As far as min prefixlen, there\u0027s some utility it provides that maybe quotas don\u0027t and that\u0027s enforcing a max subnet size.","commit_id":"a854c6a253d5f85893a005657ba5fa919a6d57e4"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"dcf4a3ff7a6bfc153ead1910f595e5bd968afe66","unresolved":false,"context_lines":[{"line_number":81,"context_line":"    | tenant_id         | c597484841ff4a8785804c62ba81449b     |"},{"line_number":82,"context_line":"    +-------------------+--------------------------------------+"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"I did essentially the same thing for ipv6 and so now I have two subnet"},{"line_number":85,"context_line":"pools.  I can see them as a regular tenant.  (I trimmed the output a bit"},{"line_number":86,"context_line":"for display so don\u0027t be surprised that it doesn\u0027t look exactly like"},{"line_number":87,"context_line":"yours.)"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7af24918_51f3a273","line":84,"updated":"2016-03-01 19:16:20.000000000","message":"please consider not talking in first person.","commit_id":"a854c6a253d5f85893a005657ba5fa919a6d57e4"},{"author":{"_account_id":7448,"name":"Carl Baldwin","email":"carl@ecbaldwin.net","username":"carl-baldwin"},"change_message_id":"21c067e6cec5005410c445f3115d815a3b027e93","unresolved":false,"context_lines":[{"line_number":81,"context_line":"    | tenant_id         | c597484841ff4a8785804c62ba81449b     |"},{"line_number":82,"context_line":"    +-------------------+--------------------------------------+"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"I did essentially the same thing for ipv6 and so now I have two subnet"},{"line_number":85,"context_line":"pools.  I can see them as a regular tenant.  (I trimmed the output a bit"},{"line_number":86,"context_line":"for display so don\u0027t be surprised that it doesn\u0027t look exactly like"},{"line_number":87,"context_line":"yours.)"}],"source_content_type":"text/x-rst","patch_set":1,"id":"da0c15f0_4ff2bad3","line":84,"in_reply_to":"7af24918_51f3a273","updated":"2016-03-25 19:58:27.000000000","message":"Done","commit_id":"a854c6a253d5f85893a005657ba5fa919a6d57e4"},{"author":{"_account_id":4187,"name":"Ryan Tidwell","email":"rtidwell@suse.com","username":"ryan-tidwell"},"change_message_id":"1101170cf08f15daaa27c9f94e2b471d196a5737","unresolved":false,"context_lines":[{"line_number":140,"context_line":""},{"line_number":141,"context_line":"Subnet Pools and BGP"},{"line_number":142,"context_line":"~~~~~~~~~~~~~~~~~~~~"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"TODO(Carl) BGP hasn\u0027t quite merged, maybe move this another patch set."},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"Subnet Pools are used as the basis of another new feature called"}],"source_content_type":"text/x-rst","patch_set":1,"id":"7af24918_3617f755","line":143,"updated":"2016-03-05 07:52:24.000000000","message":"I like the discussion of address scopes here. I do intend to cover address scopes and the relationship to BGP in the BGP docs, but wasn\u0027t planning on any direct discussion of subnet pools there. Not sure if there\u0027s a need for discussing BGP here. Seems like it\u0027s coming from left field in the context of a user guide.","commit_id":"a854c6a253d5f85893a005657ba5fa919a6d57e4"},{"author":{"_account_id":7448,"name":"Carl Baldwin","email":"carl@ecbaldwin.net","username":"carl-baldwin"},"change_message_id":"21c067e6cec5005410c445f3115d815a3b027e93","unresolved":false,"context_lines":[{"line_number":140,"context_line":""},{"line_number":141,"context_line":"Subnet Pools and BGP"},{"line_number":142,"context_line":"~~~~~~~~~~~~~~~~~~~~"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"TODO(Carl) BGP hasn\u0027t quite merged, maybe move this another patch set."},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"Subnet Pools are used as the basis of another new feature called"}],"source_content_type":"text/x-rst","patch_set":1,"id":"da0c15f0_8fa172ac","line":143,"in_reply_to":"7af24918_3617f755","updated":"2016-03-25 19:58:27.000000000","message":"I\u0027m going to take this out of this particular patch set.  if you know where this content originating, then you know why this is here.  :)","commit_id":"a854c6a253d5f85893a005657ba5fa919a6d57e4"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"978ab7706f327c9a3a4ff1f671b25fd4971de4d1","unresolved":false,"context_lines":[{"line_number":59,"context_line":"If you have access to an Openstack Kilo or later based Neutron, you can"},{"line_number":60,"context_line":"play with this feature now.  Let\u0027s give it a try."},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"First, as admin, I\u0027ll create a shared subnet pool:"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":".. code-block:: console"},{"line_number":65,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba0121b8_dd054246","line":62,"updated":"2016-04-01 05:24:07.000000000","message":"I\u0027d like to emphasize what a user vs an admin can do with subnet pools, for instance shared (or default subnet pools) are admin only. I\u0027d also mention about default subnet pools and how to use them.","commit_id":"0dc57faa759e287c1fb3d22a99498b81ea715e3d"},{"author":{"_account_id":7448,"name":"Carl Baldwin","email":"carl@ecbaldwin.net","username":"carl-baldwin"},"change_message_id":"701bc30e14ebbf2494631718f835f5973f2ba27d","unresolved":false,"context_lines":[{"line_number":59,"context_line":"If you have access to an Openstack Kilo or later based Neutron, you can"},{"line_number":60,"context_line":"play with this feature now.  Let\u0027s give it a try."},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"First, as admin, I\u0027ll create a shared subnet pool:"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":".. code-block:: console"},{"line_number":65,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba0121b8_0cc927ad","line":62,"in_reply_to":"ba0121b8_dd054246","updated":"2016-04-01 20:08:07.000000000","message":"I believe that I addressed this in PS3.  Sorry.","commit_id":"0dc57faa759e287c1fb3d22a99498b81ea715e3d"},{"author":{"_account_id":4187,"name":"Ryan Tidwell","email":"rtidwell@suse.com","username":"ryan-tidwell"},"change_message_id":"cc19b968ae859b24f5b983a4acaec6a1c43e7946","unresolved":false,"context_lines":[{"line_number":137,"context_line":"    | shared            | True                                 |"},{"line_number":138,"context_line":"    | tenant_id         | c597484841ff4a8785804c62ba81449b     |"},{"line_number":139,"context_line":"    +-------------------+--------------------------------------+"},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"Subnet Pools and BGP"},{"line_number":142,"context_line":"~~~~~~~~~~~~~~~~~~~~"},{"line_number":143,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba0121b8_a5a7ac09","line":140,"updated":"2016-03-31 18:14:50.000000000","message":"One question I always get about subnet pools is how someone can request a specific subnet from a subnet pool.  There\u0027s a perception out there that subnet pools don\u0027t allow you to pick your prefix, which is obviously not the case. Perhaps we should also illustrate a specific prefix allocation and how a user would accomplish that.","commit_id":"0dc57faa759e287c1fb3d22a99498b81ea715e3d"},{"author":{"_account_id":7448,"name":"Carl Baldwin","email":"carl@ecbaldwin.net","username":"carl-baldwin"},"change_message_id":"1437075d00787f31cb7b64d783c2e34db629bbbe","unresolved":false,"context_lines":[{"line_number":137,"context_line":"    | shared            | True                                 |"},{"line_number":138,"context_line":"    | tenant_id         | c597484841ff4a8785804c62ba81449b     |"},{"line_number":139,"context_line":"    +-------------------+--------------------------------------+"},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"Subnet Pools and BGP"},{"line_number":142,"context_line":"~~~~~~~~~~~~~~~~~~~~"},{"line_number":143,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"dab17558_77441f49","line":140,"in_reply_to":"ba0121b8_a5a7ac09","updated":"2016-05-11 20:20:27.000000000","message":"I\u0027ll add this.","commit_id":"0dc57faa759e287c1fb3d22a99498b81ea715e3d"},{"author":{"_account_id":4187,"name":"Ryan Tidwell","email":"rtidwell@suse.com","username":"ryan-tidwell"},"change_message_id":"cc19b968ae859b24f5b983a4acaec6a1c43e7946","unresolved":false,"context_lines":[{"line_number":138,"context_line":"    | tenant_id         | c597484841ff4a8785804c62ba81449b     |"},{"line_number":139,"context_line":"    +-------------------+--------------------------------------+"},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"Subnet Pools and BGP"},{"line_number":142,"context_line":"~~~~~~~~~~~~~~~~~~~~"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"TODO(Carl) BGP hasn\u0027t quite merged, maybe move this another patch set."}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba0121b8_258b9c69","line":141,"updated":"2016-03-31 18:14:50.000000000","message":"I know I harped on this in PS1, but I wonder if BGP belongs in these docs at all.","commit_id":"0dc57faa759e287c1fb3d22a99498b81ea715e3d"},{"author":{"_account_id":7448,"name":"Carl Baldwin","email":"carl@ecbaldwin.net","username":"carl-baldwin"},"change_message_id":"701bc30e14ebbf2494631718f835f5973f2ba27d","unresolved":false,"context_lines":[{"line_number":138,"context_line":"    | tenant_id         | c597484841ff4a8785804c62ba81449b     |"},{"line_number":139,"context_line":"    +-------------------+--------------------------------------+"},{"line_number":140,"context_line":""},{"line_number":141,"context_line":"Subnet Pools and BGP"},{"line_number":142,"context_line":"~~~~~~~~~~~~~~~~~~~~"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"TODO(Carl) BGP hasn\u0027t quite merged, maybe move this another patch set."}],"source_content_type":"text/x-rst","patch_set":4,"id":"ba0121b8_2cc06b7c","line":141,"in_reply_to":"ba0121b8_258b9c69","updated":"2016-04-01 20:08:07.000000000","message":"ditto","commit_id":"0dc57faa759e287c1fb3d22a99498b81ea715e3d"}]}
