)]}'
{"dragonflow/controller/df_local_controller.py":[{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"f19842aea5d89557ebfa0d20fe45228723abd2f9","unresolved":false,"context_lines":[{"line_number":28,"context_line":"from dragonflow.common import constants"},{"line_number":29,"context_line":"from dragonflow.common import utils as df_utils"},{"line_number":30,"context_line":"from dragonflow.controller import ryu_base_app"},{"line_number":31,"context_line":"from dragonflow.controller import topology as c_topology"},{"line_number":32,"context_line":"from dragonflow.db import api_nb"},{"line_number":33,"context_line":"from dragonflow.db import db_store"},{"line_number":34,"context_line":"from dragonflow.db.drivers import ovsdb_vswitch_impl"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_c10b402a","line":31,"updated":"2016-08-31 12:10:40.000000000","message":"There is no need to rename topology -\u003e c_topology here. There is no other object named \u0027topology\u0027 in the context. (self.topology is always accessed via self).","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"},{"author":{"_account_id":15905,"name":"Cao Xuan Hoang","email":"xuanhoangqb@gmail.com","username":"hoangcx"},"change_message_id":"3fc265b9f0e33ecb4997a900291f4eebf9e625b2","unresolved":false,"context_lines":[{"line_number":28,"context_line":"from dragonflow.common import constants"},{"line_number":29,"context_line":"from dragonflow.common import utils as df_utils"},{"line_number":30,"context_line":"from dragonflow.controller import ryu_base_app"},{"line_number":31,"context_line":"from dragonflow.controller import topology as c_topology"},{"line_number":32,"context_line":"from dragonflow.db import api_nb"},{"line_number":33,"context_line":"from dragonflow.db import db_store"},{"line_number":34,"context_line":"from dragonflow.db.drivers import ovsdb_vswitch_impl"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_7fdd6f13","line":31,"in_reply_to":"fa7ab95a_c10b402a","updated":"2016-09-01 10:00:58.000000000","message":"Done","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"f19842aea5d89557ebfa0d20fe45228723abd2f9","unresolved":false,"context_lines":[{"line_number":63,"context_line":"            db_store\u003dself.db_store"},{"line_number":64,"context_line":"        )"},{"line_number":65,"context_line":"        app_mgr \u003d app_manager.AppManager.get_instance()"},{"line_number":66,"context_line":"        self.open_flow_app \u003d \\"},{"line_number":67,"context_line":"            app_mgr.instantiate(ryu_base_app.RyuDFAdapter, **kwargs)"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        self.topology \u003d None"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_6478c290","line":66,"updated":"2016-08-31 12:10:40.000000000","message":"It would be better to use brackets rather than backslash to break lines. But I think it would be even better to write:\nself.open_flow_app \u003d app_mgr.instantiate(\n    ryu_base_app.RyuDFAdapter,\n    **kwargs\n)","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"},{"author":{"_account_id":15905,"name":"Cao Xuan Hoang","email":"xuanhoangqb@gmail.com","username":"hoangcx"},"change_message_id":"3fc265b9f0e33ecb4997a900291f4eebf9e625b2","unresolved":false,"context_lines":[{"line_number":63,"context_line":"            db_store\u003dself.db_store"},{"line_number":64,"context_line":"        )"},{"line_number":65,"context_line":"        app_mgr \u003d app_manager.AppManager.get_instance()"},{"line_number":66,"context_line":"        self.open_flow_app \u003d \\"},{"line_number":67,"context_line":"            app_mgr.instantiate(ryu_base_app.RyuDFAdapter, **kwargs)"},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"        self.topology \u003d None"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_1f3b8339","line":66,"in_reply_to":"fa7ab95a_6478c290","updated":"2016-09-01 10:00:58.000000000","message":"Done","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"f19842aea5d89557ebfa0d20fe45228723abd2f9","unresolved":false,"context_lines":[{"line_number":75,"context_line":"        self.nb_api.initialize(db_ip\u003dcfg.CONF.df.remote_db_ip,"},{"line_number":76,"context_line":"                               db_port\u003dcfg.CONF.df.remote_db_port)"},{"line_number":77,"context_line":"        self.vswitch_api.initialize()"},{"line_number":78,"context_line":"        self.topology \u003d \\"},{"line_number":79,"context_line":"            c_topology.Topology(self, self.enable_selective_topo_dist)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        self.vswitch_api.sync()"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_846dc6ce","line":78,"updated":"2016-08-31 12:10:40.000000000","message":"Same here.","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"},{"author":{"_account_id":15905,"name":"Cao Xuan Hoang","email":"xuanhoangqb@gmail.com","username":"hoangcx"},"change_message_id":"3fc265b9f0e33ecb4997a900291f4eebf9e625b2","unresolved":false,"context_lines":[{"line_number":75,"context_line":"        self.nb_api.initialize(db_ip\u003dcfg.CONF.df.remote_db_ip,"},{"line_number":76,"context_line":"                               db_port\u003dcfg.CONF.df.remote_db_port)"},{"line_number":77,"context_line":"        self.vswitch_api.initialize()"},{"line_number":78,"context_line":"        self.topology \u003d \\"},{"line_number":79,"context_line":"            c_topology.Topology(self, self.enable_selective_topo_dist)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        self.vswitch_api.sync()"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_1f22a301","line":78,"in_reply_to":"fa7ab95a_846dc6ce","updated":"2016-09-01 10:00:58.000000000","message":"Done","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"}],"dragonflow/controller/l3_proactive_app.py":[{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"f19842aea5d89557ebfa0d20fe45228723abd2f9","unresolved":false,"context_lines":[{"line_number":45,"context_line":"        # Add router ARP \u0026 ICMP responder for IPv4 Addresses"},{"line_number":46,"context_line":"        is_ipv4 \u003d netaddr.IPAddress(dst_ip).version \u003d\u003d 4"},{"line_number":47,"context_line":"        if is_ipv4:"},{"line_number":48,"context_line":"            arp_responder. \\"},{"line_number":49,"context_line":"                ArpResponder(datapath, local_network_id, dst_ip, mac).add()"},{"line_number":50,"context_line":"            icmp_responder.ICMPResponder(datapath, dst_ip, mac).add()"},{"line_number":51,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_445d7eeb","line":48,"updated":"2016-08-31 12:10:40.000000000","message":"Same here re: line breaks. I think the following is better:\narp_responder.ArpResponder(\n    datapath,\n    local_network_id,\n    dst_ip,\n    mac,\n)\n\nor (If it doesn\u0027t exceed 80 chars):\narp_responder.ArpResponder(datapath,\n                           local_network_id,\n                           dst_ip,\n                           mac,\n)","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"},{"author":{"_account_id":15905,"name":"Cao Xuan Hoang","email":"xuanhoangqb@gmail.com","username":"hoangcx"},"change_message_id":"3fc265b9f0e33ecb4997a900291f4eebf9e625b2","unresolved":false,"context_lines":[{"line_number":45,"context_line":"        # Add router ARP \u0026 ICMP responder for IPv4 Addresses"},{"line_number":46,"context_line":"        is_ipv4 \u003d netaddr.IPAddress(dst_ip).version \u003d\u003d 4"},{"line_number":47,"context_line":"        if is_ipv4:"},{"line_number":48,"context_line":"            arp_responder. \\"},{"line_number":49,"context_line":"                ArpResponder(datapath, local_network_id, dst_ip, mac).add()"},{"line_number":50,"context_line":"            icmp_responder.ICMPResponder(datapath, dst_ip, mac).add()"},{"line_number":51,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_ca35d746","line":48,"in_reply_to":"fa7ab95a_445d7eeb","updated":"2016-09-01 10:00:58.000000000","message":"Done","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"f19842aea5d89557ebfa0d20fe45228723abd2f9","unresolved":false,"context_lines":[{"line_number":187,"context_line":"        mac \u003d router_port.get_mac()"},{"line_number":188,"context_line":""},{"line_number":189,"context_line":"        if netaddr.IPAddress(ip).version \u003d\u003d 4:"},{"line_number":190,"context_line":"            arp_responder. \\"},{"line_number":191,"context_line":"                ArpResponder(self.get_datapath(),"},{"line_number":192,"context_line":"                             local_network_id, ip).remove()"},{"line_number":193,"context_line":"            icmp_responder.ICMPResponder(self.get_datapath(), ip, mac).remove()"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_c4718e79","line":190,"updated":"2016-08-31 12:10:40.000000000","message":"Same here","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"},{"author":{"_account_id":15905,"name":"Cao Xuan Hoang","email":"xuanhoangqb@gmail.com","username":"hoangcx"},"change_message_id":"3fc265b9f0e33ecb4997a900291f4eebf9e625b2","unresolved":false,"context_lines":[{"line_number":187,"context_line":"        mac \u003d router_port.get_mac()"},{"line_number":188,"context_line":""},{"line_number":189,"context_line":"        if netaddr.IPAddress(ip).version \u003d\u003d 4:"},{"line_number":190,"context_line":"            arp_responder. \\"},{"line_number":191,"context_line":"                ArpResponder(self.get_datapath(),"},{"line_number":192,"context_line":"                             local_network_id, ip).remove()"},{"line_number":193,"context_line":"            icmp_responder.ICMPResponder(self.get_datapath(), ip, mac).remove()"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_2a3ba339","line":190,"in_reply_to":"fa7ab95a_c4718e79","updated":"2016-09-01 10:00:58.000000000","message":"Done","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"}],"dragonflow/db/drivers/redis_db_driver.py":[{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"f19842aea5d89557ebfa0d20fe45228723abd2f9","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"from dragonflow._i18n import _LE, _LW"},{"line_number":24,"context_line":"from dragonflow.db import db_api"},{"line_number":25,"context_line":"from dragonflow.db.drivers import redis_mgt as d_redis_mgt"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"LOG \u003d log.getLogger(__name__)"},{"line_number":28,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_e4ca126e","line":25,"updated":"2016-08-31 12:10:40.000000000","message":"Same here re: renaming the import. redis_mgt doesn\u0027t exist in this context (self.redis_mgt).","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"},{"author":{"_account_id":15905,"name":"Cao Xuan Hoang","email":"xuanhoangqb@gmail.com","username":"hoangcx"},"change_message_id":"3fc265b9f0e33ecb4997a900291f4eebf9e625b2","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"from dragonflow._i18n import _LE, _LW"},{"line_number":24,"context_line":"from dragonflow.db import db_api"},{"line_number":25,"context_line":"from dragonflow.db.drivers import redis_mgt as d_redis_mgt"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"LOG \u003d log.getLogger(__name__)"},{"line_number":28,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_ea38db3f","line":25,"in_reply_to":"fa7ab95a_e4ca126e","updated":"2016-09-01 10:00:58.000000000","message":"Done","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"}],"dragonflow/db/drivers/zookeeper_db_driver.py":[{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"f19842aea5d89557ebfa0d20fe45228723abd2f9","unresolved":false,"context_lines":[{"line_number":11,"context_line":"#    under the License."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"import kazoo"},{"line_number":14,"context_line":"from kazoo import client as k_client"},{"line_number":15,"context_line":"from kazoo.handlers import eventlet"},{"line_number":16,"context_line":"from kazoo import retry"},{"line_number":17,"context_line":"import six"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_44873e12","line":14,"updated":"2016-08-31 12:10:40.000000000","message":"Same here re: import rename.","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"},{"author":{"_account_id":15905,"name":"Cao Xuan Hoang","email":"xuanhoangqb@gmail.com","username":"hoangcx"},"change_message_id":"3fc265b9f0e33ecb4997a900291f4eebf9e625b2","unresolved":false,"context_lines":[{"line_number":11,"context_line":"#    under the License."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"import kazoo"},{"line_number":14,"context_line":"from kazoo import client as k_client"},{"line_number":15,"context_line":"from kazoo.handlers import eventlet"},{"line_number":16,"context_line":"from kazoo import retry"},{"line_number":17,"context_line":"import six"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_0afa5fbd","line":14,"in_reply_to":"fa7ab95a_44873e12","updated":"2016-09-01 10:00:58.000000000","message":"Done","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"}],"dragonflow/db/pubsub_drivers/redis_db_pubsub_driver.py":[{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"f19842aea5d89557ebfa0d20fe45228723abd2f9","unresolved":false,"context_lines":[{"line_number":20,"context_line":""},{"line_number":21,"context_line":"from dragonflow._i18n import _LE, _LW"},{"line_number":22,"context_line":"from dragonflow.common import common_params"},{"line_number":23,"context_line":"from dragonflow.db.drivers import redis_mgt as d_redis_mgt"},{"line_number":24,"context_line":"from dragonflow.db import pub_sub_api"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"LOG \u003d logging.getLogger(__name__)"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_a49d6a5b","line":23,"updated":"2016-08-31 12:10:40.000000000","message":"Same here re: import renaming.","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"},{"author":{"_account_id":15905,"name":"Cao Xuan Hoang","email":"xuanhoangqb@gmail.com","username":"hoangcx"},"change_message_id":"3fc265b9f0e33ecb4997a900291f4eebf9e625b2","unresolved":false,"context_lines":[{"line_number":20,"context_line":""},{"line_number":21,"context_line":"from dragonflow._i18n import _LE, _LW"},{"line_number":22,"context_line":"from dragonflow.common import common_params"},{"line_number":23,"context_line":"from dragonflow.db.drivers import redis_mgt as d_redis_mgt"},{"line_number":24,"context_line":"from dragonflow.db import pub_sub_api"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"LOG \u003d logging.getLogger(__name__)"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_ea445b1c","line":23,"in_reply_to":"fa7ab95a_a49d6a5b","updated":"2016-09-01 10:00:58.000000000","message":"Done","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"}],"dragonflow/tests/common/app_testing_objects.py":[{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"f19842aea5d89557ebfa0d20fe45228723abd2f9","unresolved":false,"context_lines":[{"line_number":27,"context_line":""},{"line_number":28,"context_line":"from dragonflow._i18n import _LI, _LE"},{"line_number":29,"context_line":"from dragonflow.common import common_params"},{"line_number":30,"context_line":"from dragonflow.common import utils as d_utils"},{"line_number":31,"context_line":"from dragonflow.tests.common import utils as test_utils"},{"line_number":32,"context_line":"from dragonflow.tests.fullstack import test_objects as objects"},{"line_number":33,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_04c4563e","line":30,"updated":"2016-08-31 12:10:40.000000000","message":"Here the renaming is correct. :)","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"}],"dragonflow/tests/unit/test_redis_pubsub.py":[{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"f19842aea5d89557ebfa0d20fe45228723abd2f9","unresolved":false,"context_lines":[{"line_number":16,"context_line":""},{"line_number":17,"context_line":"from dragonflow.db import db_common"},{"line_number":18,"context_line":"from dragonflow.db import pub_sub_api"},{"line_number":19,"context_line":"from dragonflow.db.pubsub_drivers.redis_db_pubsub_driver \\"},{"line_number":20,"context_line":"    import RedisPublisherAgent"},{"line_number":21,"context_line":"from dragonflow.db.pubsub_drivers.redis_db_pubsub_driver \\"},{"line_number":22,"context_line":"    import RedisSubscriberAgent"},{"line_number":23,"context_line":"from dragonflow.tests import base as tests_base"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_8434e64a","line":22,"range":{"start_line":19,"start_character":0,"end_line":22,"end_character":31},"updated":"2016-08-31 12:10:40.000000000","message":"What about these two?","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"},{"author":{"_account_id":15905,"name":"Cao Xuan Hoang","email":"xuanhoangqb@gmail.com","username":"hoangcx"},"change_message_id":"3fc265b9f0e33ecb4997a900291f4eebf9e625b2","unresolved":false,"context_lines":[{"line_number":16,"context_line":""},{"line_number":17,"context_line":"from dragonflow.db import db_common"},{"line_number":18,"context_line":"from dragonflow.db import pub_sub_api"},{"line_number":19,"context_line":"from dragonflow.db.pubsub_drivers.redis_db_pubsub_driver \\"},{"line_number":20,"context_line":"    import RedisPublisherAgent"},{"line_number":21,"context_line":"from dragonflow.db.pubsub_drivers.redis_db_pubsub_driver \\"},{"line_number":22,"context_line":"    import RedisSubscriberAgent"},{"line_number":23,"context_line":"from dragonflow.tests import base as tests_base"},{"line_number":24,"context_line":""},{"line_number":25,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_4abf07fb","line":22,"range":{"start_line":19,"start_character":0,"end_line":22,"end_character":31},"in_reply_to":"fa7ab95a_8434e64a","updated":"2016-09-01 10:00:58.000000000","message":"Done","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"}],"dragonflow/utils/bloomfilter.py":[{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"f19842aea5d89557ebfa0d20fe45228723abd2f9","unresolved":false,"context_lines":[{"line_number":12,"context_line":"#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the"},{"line_number":13,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":"import random as Random"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"class BloomFilter(object):"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_e4d772bd","line":15,"updated":"2016-08-31 12:10:40.000000000","message":"I think it would be better to change the name of the variable.","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"},{"author":{"_account_id":15905,"name":"Cao Xuan Hoang","email":"xuanhoangqb@gmail.com","username":"hoangcx"},"change_message_id":"3fc265b9f0e33ecb4997a900291f4eebf9e625b2","unresolved":false,"context_lines":[{"line_number":12,"context_line":"#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the"},{"line_number":13,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":"import random as Random"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"class BloomFilter(object):"}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_1f7383e8","line":15,"in_reply_to":"fa7ab95a_e4d772bd","updated":"2016-09-01 10:00:58.000000000","message":"Done","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"f19842aea5d89557ebfa0d20fe45228723abd2f9","unresolved":false,"context_lines":[{"line_number":43,"context_line":"        return self._array"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"    def _get_probes(self, key):"},{"line_number":46,"context_line":"        random \u003d Random.Random(key).random"},{"line_number":47,"context_line":"        return (int(random() * self._num_bits)"},{"line_number":48,"context_line":"                for _probe in range(self._num_probes))"},{"line_number":49,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_84e786ab","line":46,"updated":"2016-08-31 12:10:40.000000000","message":"This one.","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"},{"author":{"_account_id":15905,"name":"Cao Xuan Hoang","email":"xuanhoangqb@gmail.com","username":"hoangcx"},"change_message_id":"3fc265b9f0e33ecb4997a900291f4eebf9e625b2","unresolved":false,"context_lines":[{"line_number":43,"context_line":"        return self._array"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"    def _get_probes(self, key):"},{"line_number":46,"context_line":"        random \u003d Random.Random(key).random"},{"line_number":47,"context_line":"        return (int(random() * self._num_bits)"},{"line_number":48,"context_line":"                for _probe in range(self._num_probes))"},{"line_number":49,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"fa7ab95a_5f7d0bb0","line":46,"in_reply_to":"fa7ab95a_84e786ab","updated":"2016-09-01 10:00:58.000000000","message":"Done","commit_id":"8b5c15ee001a5baaee7e085b2ff53745e5a78789"}]}
