{"action":"created","comment":{"url":"https://api.github.com/repos/cms-sw/cmssw/pulls/comments/175777448","pull_request_review_id":105361873,"id":175777448,"diff_hunk":"@@ -0,0 +1,462 @@\n+#include \"L1Trigger/L1TMuonCPPF/interface/RecHitProcessor.h\"\n+\n+RecHitProcessor::RecHitProcessor() {\n+}\n+\n+RecHitProcessor::~RecHitProcessor() {\n+}\n+\n+void RecHitProcessor::processLook(\n+\t\t\t\t  const edm::Event& iEvent,\n+\t\t\t\t  const edm::EventSetup& iSetup,\n+\t\t\t\t  const edm::EDGetToken& recHitToken,\n+\t\t\t\t  std::vector<RecHitProcessor::CppfItem>& CppfVec1,\n+\t\t\t\t  l1t::CPPFDigiCollection& cppfDigis\n+\t\t\t\t  ) const {\n+  \n+  edm::Handle<RPCRecHitCollection> recHits;\n+  iEvent.getByToken(recHitToken, recHits);\n+  \n+  edm::ESHandle<RPCGeometry> rpcGeom;\n+  iSetup.get<MuonGeometryRecord>().get(rpcGeom);\n+  \n+  // Loop over ... what, exactly?\n+  for ( TrackingGeometry::DetContainer::const_iterator iDet = rpcGeom->dets().begin(); iDet < rpcGeom->dets().end(); iDet++ ) {\n+    \n+    // What does this do?  Check whether the chamber is an RPC chamber?\n+    if (dynamic_cast<const RPCChamber*>( *iDet ) == nullptr ) continue;\n+    \n+    auto chamb = dynamic_cast<const RPCChamber* >( *iDet ); \n+    std::vector<const RPCRoll*> rolls = (chamb->rolls());\n+    \n+    // Loop over rolls in the chamber\n+    for (std::vector<const RPCRoll*>::const_iterator iRoll = rolls.begin(); iRoll != rolls.end(); ++iRoll) {\n+      \n+      RPCDetId rpcId = (*iRoll)->id();\t\n+      \n+      typedef std::pair<RPCRecHitCollection::const_iterator, RPCRecHitCollection::const_iterator> rangeRecHits;\n+      rangeRecHits recHitCollection =  recHits->get(rpcId);\n+      \n+      \n+      \n+      //Loop over the RPC digis\n+      for (RPCRecHitCollection::const_iterator rechit_it = recHitCollection.first; rechit_it != recHitCollection.second; rechit_it++) {\t\n+\t\n+\t//const RPCDetId& rpcId = rechit_it->rpcId();\n+\tint rawId = rpcId.rawId();\n+\t//int station = rpcId.station();\n+\tint Bx = rechit_it->BunchX(); \n+\tint isValid = rechit_it->isValid();\n+\tint firststrip = rechit_it->firstClusterStrip();\n+\tint clustersize = rechit_it->clusterSize();\n+\tLocalPoint lPos = rechit_it->localPosition();\n+\tconst RPCRoll* roll = rpcGeom->roll(rpcId);\n+\tconst BoundPlane& rollSurface = roll->surface();\n+\tGlobalPoint gPos = rollSurface.toGlobal(lPos);\n+\tfloat global_theta = emtf::rad_to_deg(gPos.theta().value());\n+\tfloat global_phi   = emtf::rad_to_deg(gPos.phi().value());\n+\t//::::::::::::::::::::::::::::\n+\t//Establish the average position of the rechit    \n+\tint rechitstrip = firststrip;\n+\t\n+        if(clustersize > 2) {\n+\t  int medium = 0;\n+\t  if (clustersize % 2 == 0) medium = 0.5*(clustersize); \n+\t  else medium = 0.5*(clustersize-1);\n+\t  rechitstrip += medium; \n+\t} \n+\t\n+\tif(clustersize > 3) continue;\t\n+\t//This is just for test CPPFDigis with the RPC Geometry, It must be \"False\" in the normal runs \n+\tbool Geo = true;\n+\t////:::::::::::::::::::::::::::::::::::::::::::::::::\n+\t//Set the EMTF Sector \t\n+\tint EMTFsector1 = 0;\t\n+\tint EMTFsector2 = 0;\n+\t\n+\t//sector 1\n+\tif ((global_phi > 15.) && (global_phi <= 16.3)) {\n+\t  EMTFsector1 = 1;\n+\t  EMTFsector2 = 6;\n+\t}\n+\tif ((global_phi > 16.3) && (global_phi <= 53.)) {\n+\t  EMTFsector1 = 1;\n+\t  EMTFsector2 = 0;\n+\t}\n+\tif ((global_phi > 53.) && (global_phi <= 75.)) {\n+\t  EMTFsector1 = 1;\n+\t  EMTFsector2 = 2;\n+\t}\n+\t//sector 2 \n+\tif ((global_phi > 75.) && (global_phi <= 76.3)) {\n+\t  EMTFsector1 = 1;\n+\t  EMTFsector2 = 2;\n+\t}\n+\tif ((global_phi > 76.3) && (global_phi <= 113.)) {\n+\t  EMTFsector1 = 2;\n+\t  EMTFsector2 = 0;\n+\t}\n+\tif ((global_phi > 113.) && (global_phi <= 135.)) {\n+\t  EMTFsector1 = 2;\n+\t  EMTFsector2 = 3;\n+\t}\n+\t//sector 3\n+\t//less than 180\n+\tif ((global_phi > 135.) && (global_phi <= 136.3)) {\n+\t  EMTFsector1 = 2;\n+\t  EMTFsector2 = 3;\n+\t}\n+\tif ((global_phi > 136.3) && (global_phi <= 173.)) {\n+\t  EMTFsector1 = 3;\n+\t  EMTFsector2 = 0;\n+\t}\n+\tif ((global_phi > 173.) && (global_phi <= 180.)) {\n+\t  EMTFsector1 = 3;\n+\t  EMTFsector2 = 4;\n+\t}\n+\t//Greater than -180\n+\tif ((global_phi < -165.) && (global_phi >= -180.)) {\n+\t  EMTFsector1 = 3;\n+\t  EMTFsector2 = 4;\n+\t}\n+\t//Fourth sector\n+\tif ((global_phi > -165.) && (global_phi <= -163.7)) {\n+\t  EMTFsector1 = 3;\n+\t  EMTFsector2 = 4;\n+\t}\n+\tif ((global_phi > -163.7) && (global_phi <= -127.)) {\n+\t  EMTFsector1 = 4;\n+\t  EMTFsector2 = 0;\n+\t}\n+\tif ((global_phi > -127.) && (global_phi <= -105.)) {\n+\t  EMTFsector1 = 4;\n+\t  EMTFsector2 = 5;\n+\t}\n+\t//fifth sector\n+\tif ((global_phi > -105.) && (global_phi <= -103.7)) {\n+\t  EMTFsector1 = 4;\n+\t  EMTFsector2 = 5;\n+\t}\n+\tif ((global_phi > -103.7) && (global_phi <= -67.)) {\n+\t  EMTFsector1 = 5;\n+\t  EMTFsector2 = 0;\n+\t}\n+\tif ((global_phi > -67.) && (global_phi <= -45.)) {\n+\t  EMTFsector1 = 5;\n+\t  EMTFsector2 = 6;\n+\t} \n+\t//sixth sector\n+\tif ((global_phi > -45.) && (global_phi <= -43.7)) {\n+\t  EMTFsector1 = 5;\n+\t  EMTFsector2 = 6;\n+\t} \n+\tif ((global_phi > -43.7) && (global_phi <= -7.)) {\n+\t  EMTFsector1 = 6;\n+\t  EMTFsector2 = 0;\n+\t}\n+\tif ((global_phi > -7.) && (global_phi <= 15.)) {\n+\t  EMTFsector1 = 6;\n+\t  EMTFsector2 = 1;\n+\t} \n+\t\n+\t\n+\t// std::vector<RecHitProcessor::CppfItem>::iterator it;\n+\t// for(it = CppfVec1.begin(); it != CppfVec1.end(); it++){\n+\t//\tif( (*it).rawId == rawId) if(Geo_true) std::cout << (*it).rawId << \"rawid\" << rawId << std::endl;\n+\t//\t}\n+\t//Loop over the look up table    \n+\tdouble EMTFLink1 = 0.;\n+\tdouble EMTFLink2 = 0.;\n+\t\n+        std::vector<RecHitProcessor::CppfItem>::iterator cppf1;\n+        std::vector<RecHitProcessor::CppfItem>::iterator cppf;\n+        for(cppf1 = CppfVec1.begin(); cppf1 != CppfVec1.end(); cppf1++){\n+\t  \n+\t  //for (auto& cppf : CppfVec1 ) {\n+          \n+\t  \n+\t  //Condition to save the CPPFDigi\n+\t  if(((*cppf1).rawId == rawId) && ((*cppf1).strip == rechitstrip)){\n+\t    \n+\t    int old_strip = (*cppf1).strip;\n+\t    \n+\t    int before = (*(cppf1-2)).strip;\n+\t    int after = (*(cppf1+2)).strip;\n+\t    cppf = cppf1;\n+\t    \n+\t    if(clustersize == 2){\n+\t      \n+\t      if(firststrip == 1){\n+\t\tif(before < after) cppf=(cppf1-1);\n+                else if (before > after) cppf=(cppf1+1);\n+\t      }\n+\t      if(firststrip > 1){\n+\t\tif(before < after) cppf=(cppf1+1);\n+\t\telse if (before > after) cppf=(cppf1-1);\n+\t      }\n+\t      \n+\t    }\n+\t    //Using the RPCGeometry\t\n+\t    if(Geo){\n+\t      //RecHitProcessor::print(cppf.int_phi, cppf.int_theta, global_phi, global_theta);\n+\t      l1t::CPPFDigi* MainVariables1 = new l1t::CPPFDigi(rpcId, Bx , (*cppf).int_phi, (*cppf).int_theta, isValid, (*cppf).lb, (*cppf).halfchannel, EMTFsector1, EMTFLink1, old_strip, clustersize, global_phi, global_theta);\n+\t      l1t::CPPFDigi* MainVariables2 = new l1t::CPPFDigi(rpcId, Bx , (*cppf).int_phi, (*cppf).int_theta, isValid, (*cppf).lb, (*cppf).halfchannel, EMTFsector2, EMTFLink2, old_strip, clustersize, global_phi, global_theta);\n+\t      /*\n+\t\tif(clustersize == 2 && (*cppf).int_theta == 16 && (*cppf).int_phi == 700){\n+ \t\tstd::cout << \"old_rawid \"<< (*cppf1).rawId << \" strip \" << old_strip << \n+\t\t\" firststrip \"<< firststrip <<\" cppf.int_phi \" << (*cppf).int_phi << \n+\t\t\" cppf.int_theta \" << (*cppf).int_theta << \n+\t\t\" clustersize \" << clustersize << std::endl;\n+                std::cout << \"--------------------------------------\" << std::endl;\n+\t\t}\n+\t      */\t\t\n+\t      if ((EMTFsector1 > 0) && (EMTFsector2 == 0)){\n+\t\tcppfDigis.push_back(*MainVariables1);\n+\t      } \n+\t      else if ((EMTFsector1 > 0) && (EMTFsector2 > 0)){\n+\t\tcppfDigis.push_back(*MainVariables1);\n+\t\tcppfDigis.push_back(*MainVariables2);\n+\t      }\n+\t      else if ((EMTFsector1 == 0) && (EMTFsector2 == 0)) {\n+\t\tcontinue; \n+\t      } \n+\t    } //Geo is true\n+\t    else if (!Geo){\n+\t      global_phi = 0.;\n+\t      global_theta = 0.;\n+\t      l1t::CPPFDigi* MainVariables1 = new l1t::CPPFDigi(rpcId, Bx , (*cppf).int_phi, (*cppf).int_theta, isValid, (*cppf).lb, (*cppf).halfchannel, EMTFsector1, EMTFLink1, old_strip, clustersize, global_phi, global_theta);\n+\t      l1t::CPPFDigi* MainVariables2 = new l1t::CPPFDigi(rpcId, Bx , (*cppf).int_phi, (*cppf).int_theta, isValid, (*cppf).lb, (*cppf).halfchannel, EMTFsector2, EMTFLink2, old_strip, clustersize, global_phi, global_theta);\n+\t      if ((EMTFsector1 > 0) && (EMTFsector2 == 0)){\n+\t\tcppfDigis.push_back(*MainVariables1);\n+\t      } \n+\t      else if ((EMTFsector1 > 0) && (EMTFsector2 > 0)){\n+\t\tcppfDigis.push_back(*MainVariables1);\n+\t\tcppfDigis.push_back(*MainVariables2);\n+\t      }\n+\t      else if ((EMTFsector1 == 0) && (EMTFsector2 == 0)) {\n+\t\tcontinue;\n+\t      } \n+\t    }\n+\t  } //Condition to save the CPPFDigi \n+\t} //Loop over the LUTVector\n+      } //Loop over the recHits\n+    } // End loop: for (std::vector<const RPCRoll*>::const_iterator r = rolls.begin(); r != rolls.end(); ++r)\n+  } // End loop: for (TrackingGeometry::DetContainer::const_iterator iDet = rpcGeom->dets().begin(); iDet < rpcGeom->dets().end(); iDet++)  \n+  \n+}\n+\n+\n+void RecHitProcessor::process(\n+\t\t\t      const edm::Event& iEvent,\n+\t\t\t      const edm::EventSetup& iSetup,\n+\t\t\t      const edm::EDGetToken& recHitToken,\n+\t\t\t      l1t::CPPFDigiCollection& cppfDigis\n+\t\t\t      ) const {\n+  \n+  // Get the RPC Geometry\n+  edm::ESHandle<RPCGeometry> rpcGeom;\n+  iSetup.get<MuonGeometryRecord>().get(rpcGeom);\n+  \n+  // Get the RecHits from the event\n+  edm::Handle<RPCRecHitCollection> recHits;\n+  iEvent.getByToken(recHitToken, recHits);\n+  \n+  \n+  // Loop over ... what, exactly?\n+  for ( TrackingGeometry::DetContainer::const_iterator iDet = rpcGeom->dets().begin(); iDet < rpcGeom->dets().end(); iDet++ ) {\n+    \n+    // What does this do?  Check whether the chamber is an RPC chamber?","path":"L1Trigger/L1TMuonCPPF/src/RecHitProcessor.cc","position":27,"original_position":268,"commit_id":"bd764da8b23ef86cc0a2b1450b5d923718f17a58","original_commit_id":"7a933a2c789078d03460e91ee6eb3d27ad941abf","user":{"login":"maseguracern","id":29258853,"avatar_url":"https://avatars1.githubusercontent.com/u/29258853?v=4","gravatar_id":"","url":"https://api.github.com/users/maseguracern","html_url":"https://github.com/maseguracern","followers_url":"https://api.github.com/users/maseguracern/followers","following_url":"https://api.github.com/users/maseguracern/following{/other_user}","gists_url":"https://api.github.com/users/maseguracern/gists{/gist_id}","starred_url":"https://api.github.com/users/maseguracern/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maseguracern/subscriptions","organizations_url":"https://api.github.com/users/maseguracern/orgs","repos_url":"https://api.github.com/users/maseguracern/repos","events_url":"https://api.github.com/users/maseguracern/events{/privacy}","received_events_url":"https://api.github.com/users/maseguracern/received_events","type":"User","site_admin":false},"body":"Related with the before comment, we do a cast over the class RPCChamber to obtain the RPCroll vectors, inside of them, the RPCRechits are found. in other words, the method ->rolls() does not exist for other kind of vector within DetContainer and we can not obtain the rpcrechits in a suitable way.  ","created_at":"2018-03-20T14:07:35Z","updated_at":"2018-03-20T14:07:35Z","html_url":"https://github.com/cms-sw/cmssw/pull/22605#discussion_r175777448","pull_request_url":"https://api.github.com/repos/cms-sw/cmssw/pulls/22605","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/cms-sw/cmssw/pulls/comments/175777448"},"html":{"href":"https://github.com/cms-sw/cmssw/pull/22605#discussion_r175777448"},"pull_request":{"href":"https://api.github.com/repos/cms-sw/cmssw/pulls/22605"}},"in_reply_to_id":175069709},"pull_request":{"url":"https://api.github.com/repos/cms-sw/cmssw/pulls/22605","id":174924791,"html_url":"https://github.com/cms-sw/cmssw/pull/22605","diff_url":"https://github.com/cms-sw/cmssw/pull/22605.diff","patch_url":"https://github.com/cms-sw/cmssw/pull/22605.patch","issue_url":"https://api.github.com/repos/cms-sw/cmssw/issues/22605","number":22605,"state":"open","locked":false,"title":"Cppf emulator","user":{"login":"maseguracern","id":29258853,"avatar_url":"https://avatars1.githubusercontent.com/u/29258853?v=4","gravatar_id":"","url":"https://api.github.com/users/maseguracern","html_url":"https://github.com/maseguracern","followers_url":"https://api.github.com/users/maseguracern/followers","following_url":"https://api.github.com/users/maseguracern/following{/other_user}","gists_url":"https://api.github.com/users/maseguracern/gists{/gist_id}","starred_url":"https://api.github.com/users/maseguracern/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maseguracern/subscriptions","organizations_url":"https://api.github.com/users/maseguracern/orgs","repos_url":"https://api.github.com/users/maseguracern/repos","events_url":"https://api.github.com/users/maseguracern/events{/privacy}","received_events_url":"https://api.github.com/users/maseguracern/received_events","type":"User","site_admin":false},"body":"@camilocarrillo @abrinke1 \r\nThis is the first version of the CPPF emulator. we use the RPC Digitization and\r\nreconstruction as intermedate steps.\r\nUnder test you can find two examples, one unpacking 2017F RAW Data (cppf_emulator_RAW.py)\r\nand another one using generated MC events (cppf_emulator_MC.py).\r\nThe output of the unpacker is an edm branch named emulatorCppfDigis, following\r\nthe CPPFDigi dataformat already committed in CMSSW_10_1_X.\r\n\r\n","created_at":"2018-03-14T11:23:22Z","updated_at":"2018-03-20T14:07:35Z","closed_at":null,"merged_at":null,"merge_commit_sha":"9eb7c3f0ea5c155139110dc26387c0ad625395e7","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":673935047,"url":"https://api.github.com/repos/cms-sw/cmssw/labels/code-checks-approved","name":"code-checks-approved","color":"2cbe4e","default":false},{"id":88653795,"url":"https://api.github.com/repos/cms-sw/cmssw/labels/comparison-pending","name":"comparison-pending","color":"fbca04","default":false},{"id":52820587,"url":"https://api.github.com/repos/cms-sw/cmssw/labels/l1-pending","name":"l1-pending","color":"fbca04","default":false},{"id":69634213,"url":"https://api.github.com/repos/cms-sw/cmssw/labels/new-package-pending","name":"new-package-pending","color":"e11d21","default":false},{"id":56953091,"url":"https://api.github.com/repos/cms-sw/cmssw/labels/orp-pending","name":"orp-pending","color":"fbca04","default":false},{"id":53167770,"url":"https://api.github.com/repos/cms-sw/cmssw/labels/pending-signatures","name":"pending-signatures","color":"ff8000","default":false},{"id":170521617,"url":"https://api.github.com/repos/cms-sw/cmssw/labels/tests-started","name":"tests-started","color":"ff8000","default":false}],"milestone":{"url":"https://api.github.com/repos/cms-sw/cmssw/milestones/73","html_url":"https://github.com/cms-sw/cmssw/milestone/73","labels_url":"https://api.github.com/repos/cms-sw/cmssw/milestones/73/labels","id":3060828,"number":73,"title":"CMSSW_10_1_X","description":null,"creator":{"login":"smuzaffar","id":4115138,"avatar_url":"https://avatars3.githubusercontent.com/u/4115138?v=4","gravatar_id":"","url":"https://api.github.com/users/smuzaffar","html_url":"https://github.com/smuzaffar","followers_url":"https://api.github.com/users/smuzaffar/followers","following_url":"https://api.github.com/users/smuzaffar/following{/other_user}","gists_url":"https://api.github.com/users/smuzaffar/gists{/gist_id}","starred_url":"https://api.github.com/users/smuzaffar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/smuzaffar/subscriptions","organizations_url":"https://api.github.com/users/smuzaffar/orgs","repos_url":"https://api.github.com/users/smuzaffar/repos","events_url":"https://api.github.com/users/smuzaffar/events{/privacy}","received_events_url":"https://api.github.com/users/smuzaffar/received_events","type":"User","site_admin":false},"open_issues":97,"closed_issues":491,"state":"open","created_at":"2018-01-24T11:24:59Z","updated_at":"2018-03-20T11:47:23Z","due_on":null,"closed_at":null},"commits_url":"https://api.github.com/repos/cms-sw/cmssw/pulls/22605/commits","review_comments_url":"https://api.github.com/repos/cms-sw/cmssw/pulls/22605/comments","review_comment_url":"https://api.github.com/repos/cms-sw/cmssw/pulls/comments{/number}","comments_url":"https://api.github.com/repos/cms-sw/cmssw/issues/22605/comments","statuses_url":"https://api.github.com/repos/cms-sw/cmssw/statuses/bd764da8b23ef86cc0a2b1450b5d923718f17a58","head":{"label":"maseguracern:CPPF_Emulator","ref":"CPPF_Emulator","sha":"bd764da8b23ef86cc0a2b1450b5d923718f17a58","user":{"login":"maseguracern","id":29258853,"avatar_url":"https://avatars1.githubusercontent.com/u/29258853?v=4","gravatar_id":"","url":"https://api.github.com/users/maseguracern","html_url":"https://github.com/maseguracern","followers_url":"https://api.github.com/users/maseguracern/followers","following_url":"https://api.github.com/users/maseguracern/following{/other_user}","gists_url":"https://api.github.com/users/maseguracern/gists{/gist_id}","starred_url":"https://api.github.com/users/maseguracern/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maseguracern/subscriptions","organizations_url":"https://api.github.com/users/maseguracern/orgs","repos_url":"https://api.github.com/users/maseguracern/repos","events_url":"https://api.github.com/users/maseguracern/events{/privacy}","received_events_url":"https://api.github.com/users/maseguracern/received_events","type":"User","site_admin":false},"repo":{"id":125046167,"name":"cmssw","full_name":"maseguracern/cmssw","owner":{"login":"maseguracern","id":29258853,"avatar_url":"https://avatars1.githubusercontent.com/u/29258853?v=4","gravatar_id":"","url":"https://api.github.com/users/maseguracern","html_url":"https://github.com/maseguracern","followers_url":"https://api.github.com/users/maseguracern/followers","following_url":"https://api.github.com/users/maseguracern/following{/other_user}","gists_url":"https://api.github.com/users/maseguracern/gists{/gist_id}","starred_url":"https://api.github.com/users/maseguracern/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maseguracern/subscriptions","organizations_url":"https://api.github.com/users/maseguracern/orgs","repos_url":"https://api.github.com/users/maseguracern/repos","events_url":"https://api.github.com/users/maseguracern/events{/privacy}","received_events_url":"https://api.github.com/users/maseguracern/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/maseguracern/cmssw","description":"CMS Offline Software","fork":true,"url":"https://api.github.com/repos/maseguracern/cmssw","forks_url":"https://api.github.com/repos/maseguracern/cmssw/forks","keys_url":"https://api.github.com/repos/maseguracern/cmssw/keys{/key_id}","collaborators_url":"https://api.github.com/repos/maseguracern/cmssw/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/maseguracern/cmssw/teams","hooks_url":"https://api.github.com/repos/maseguracern/cmssw/hooks","issue_events_url":"https://api.github.com/repos/maseguracern/cmssw/issues/events{/number}","events_url":"https://api.github.com/repos/maseguracern/cmssw/events","assignees_url":"https://api.github.com/repos/maseguracern/cmssw/assignees{/user}","branches_url":"https://api.github.com/repos/maseguracern/cmssw/branches{/branch}","tags_url":"https://api.github.com/repos/maseguracern/cmssw/tags","blobs_url":"https://api.github.com/repos/maseguracern/cmssw/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/maseguracern/cmssw/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/maseguracern/cmssw/git/refs{/sha}","trees_url":"https://api.github.com/repos/maseguracern/cmssw/git/trees{/sha}","statuses_url":"https://api.github.com/repos/maseguracern/cmssw/statuses/{sha}","languages_url":"https://api.github.com/repos/maseguracern/cmssw/languages","stargazers_url":"https://api.github.com/repos/maseguracern/cmssw/stargazers","contributors_url":"https://api.github.com/repos/maseguracern/cmssw/contributors","subscribers_url":"https://api.github.com/repos/maseguracern/cmssw/subscribers","subscription_url":"https://api.github.com/repos/maseguracern/cmssw/subscription","commits_url":"https://api.github.com/repos/maseguracern/cmssw/commits{/sha}","git_commits_url":"https://api.github.com/repos/maseguracern/cmssw/git/commits{/sha}","comments_url":"https://api.github.com/repos/maseguracern/cmssw/comments{/number}","issue_comment_url":"https://api.github.com/repos/maseguracern/cmssw/issues/comments{/number}","contents_url":"https://api.github.com/repos/maseguracern/cmssw/contents/{+path}","compare_url":"https://api.github.com/repos/maseguracern/cmssw/compare/{base}...{head}","merges_url":"https://api.github.com/repos/maseguracern/cmssw/merges","archive_url":"https://api.github.com/repos/maseguracern/cmssw/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/maseguracern/cmssw/downloads","issues_url":"https://api.github.com/repos/maseguracern/cmssw/issues{/number}","pulls_url":"https://api.github.com/repos/maseguracern/cmssw/pulls{/number}","milestones_url":"https://api.github.com/repos/maseguracern/cmssw/milestones{/number}","notifications_url":"https://api.github.com/repos/maseguracern/cmssw/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/maseguracern/cmssw/labels{/name}","releases_url":"https://api.github.com/repos/maseguracern/cmssw/releases{/id}","deployments_url":"https://api.github.com/repos/maseguracern/cmssw/deployments","created_at":"2018-03-13T12:11:30Z","updated_at":"2018-03-13T12:14:07Z","pushed_at":"2018-03-20T12:05:26Z","git_url":"git://github.com/maseguracern/cmssw.git","ssh_url":"git@github.com:maseguracern/cmssw.git","clone_url":"https://github.com/maseguracern/cmssw.git","svn_url":"https://github.com/maseguracern/cmssw","homepage":"http://cms-sw.github.io/","size":997140,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":null,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"cms-sw:master","ref":"master","sha":"4d5e4d2323e0f1fdbb14113c97fa060cb6f0feea","user":{"login":"cms-sw","id":3863500,"avatar_url":"https://avatars0.githubusercontent.com/u/3863500?v=4","gravatar_id":"","url":"https://api.github.com/users/cms-sw","html_url":"https://github.com/cms-sw","followers_url":"https://api.github.com/users/cms-sw/followers","following_url":"https://api.github.com/users/cms-sw/following{/other_user}","gists_url":"https://api.github.com/users/cms-sw/gists{/gist_id}","starred_url":"https://api.github.com/users/cms-sw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cms-sw/subscriptions","organizations_url":"https://api.github.com/users/cms-sw/orgs","repos_url":"https://api.github.com/users/cms-sw/repos","events_url":"https://api.github.com/users/cms-sw/events{/privacy}","received_events_url":"https://api.github.com/users/cms-sw/received_events","type":"Organization","site_admin":false},"repo":{"id":10969551,"name":"cmssw","full_name":"cms-sw/cmssw","owner":{"login":"cms-sw","id":3863500,"avatar_url":"https://avatars0.githubusercontent.com/u/3863500?v=4","gravatar_id":"","url":"https://api.github.com/users/cms-sw","html_url":"https://github.com/cms-sw","followers_url":"https://api.github.com/users/cms-sw/followers","following_url":"https://api.github.com/users/cms-sw/following{/other_user}","gists_url":"https://api.github.com/users/cms-sw/gists{/gist_id}","starred_url":"https://api.github.com/users/cms-sw/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cms-sw/subscriptions","organizations_url":"https://api.github.com/users/cms-sw/orgs","repos_url":"https://api.github.com/users/cms-sw/repos","events_url":"https://api.github.com/users/cms-sw/events{/privacy}","received_events_url":"https://api.github.com/users/cms-sw/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/cms-sw/cmssw","description":"CMS Offline Software","fork":false,"url":"https://api.github.com/repos/cms-sw/cmssw","forks_url":"https://api.github.com/repos/cms-sw/cmssw/forks","keys_url":"https://api.github.com/repos/cms-sw/cmssw/keys{/key_id}","collaborators_url":"https://api.github.com/repos/cms-sw/cmssw/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/cms-sw/cmssw/teams","hooks_url":"https://api.github.com/repos/cms-sw/cmssw/hooks","issue_events_url":"https://api.github.com/repos/cms-sw/cmssw/issues/events{/number}","events_url":"https://api.github.com/repos/cms-sw/cmssw/events","assignees_url":"https://api.github.com/repos/cms-sw/cmssw/assignees{/user}","branches_url":"https://api.github.com/repos/cms-sw/cmssw/branches{/branch}","tags_url":"https://api.github.com/repos/cms-sw/cmssw/tags","blobs_url":"https://api.github.com/repos/cms-sw/cmssw/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/cms-sw/cmssw/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/cms-sw/cmssw/git/refs{/sha}","trees_url":"https://api.github.com/repos/cms-sw/cmssw/git/trees{/sha}","statuses_url":"https://api.github.com/repos/cms-sw/cmssw/statuses/{sha}","languages_url":"https://api.github.com/repos/cms-sw/cmssw/languages","stargazers_url":"https://api.github.com/repos/cms-sw/cmssw/stargazers","contributors_url":"https://api.github.com/repos/cms-sw/cmssw/contributors","subscribers_url":"https://api.github.com/repos/cms-sw/cmssw/subscribers","subscription_url":"https://api.github.com/repos/cms-sw/cmssw/subscription","commits_url":"https://api.github.com/repos/cms-sw/cmssw/commits{/sha}","git_commits_url":"https://api.github.com/repos/cms-sw/cmssw/git/commits{/sha}","comments_url":"https://api.github.com/repos/cms-sw/cmssw/comments{/number}","issue_comment_url":"https://api.github.com/repos/cms-sw/cmssw/issues/comments{/number}","contents_url":"https://api.github.com/repos/cms-sw/cmssw/contents/{+path}","compare_url":"https://api.github.com/repos/cms-sw/cmssw/compare/{base}...{head}","merges_url":"https://api.github.com/repos/cms-sw/cmssw/merges","archive_url":"https://api.github.com/repos/cms-sw/cmssw/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/cms-sw/cmssw/downloads","issues_url":"https://api.github.com/repos/cms-sw/cmssw/issues{/number}","pulls_url":"https://api.github.com/repos/cms-sw/cmssw/pulls{/number}","milestones_url":"https://api.github.com/repos/cms-sw/cmssw/milestones{/number}","notifications_url":"https://api.github.com/repos/cms-sw/cmssw/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/cms-sw/cmssw/labels{/name}","releases_url":"https://api.github.com/repos/cms-sw/cmssw/releases{/id}","deployments_url":"https://api.github.com/repos/cms-sw/cmssw/deployments","created_at":"2013-06-26T14:09:07Z","updated_at":"2018-03-20T11:47:50Z","pushed_at":"2018-03-20T13:22:25Z","git_url":"git://github.com/cms-sw/cmssw.git","ssh_url":"git@github.com:cms-sw/cmssw.git","clone_url":"https://github.com/cms-sw/cmssw.git","svn_url":"https://github.com/cms-sw/cmssw","homepage":"http://cms-sw.github.io/","size":998621,"stargazers_count":528,"watchers_count":528,"language":"C++","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":2507,"mirror_url":null,"archived":false,"open_issues_count":476,"license":null,"forks":2507,"open_issues":476,"watchers":528,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/cms-sw/cmssw/pulls/22605"},"html":{"href":"https://github.com/cms-sw/cmssw/pull/22605"},"issue":{"href":"https://api.github.com/repos/cms-sw/cmssw/issues/22605"},"comments":{"href":"https://api.github.com/repos/cms-sw/cmssw/issues/22605/comments"},"review_comments":{"href":"https://api.github.com/repos/cms-sw/cmssw/pulls/22605/comments"},"review_comment":{"href":"https://api.github.com/repos/cms-sw/cmssw/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/cms-sw/cmssw/pulls/22605/commits"},"statuses":{"href":"https://api.github.com/repos/cms-sw/cmssw/statuses/bd764da8b23ef86cc0a2b1450b5d923718f17a58"}},"author_association":"NONE"}}
{"actor":{"display_login":"maseguracern"}}