)]}'
{
  "commit": "a536ae76dfa2dbe2bc487900b98cf6c15276c649",
  "tree": "789d57d368bd124420afbfd92f38670cb18c7a69",
  "parents": [
    "633b50b7af9841607c07133f585e131fba7de177"
  ],
  "author": {
    "name": "Sameer Agarwal",
    "email": "sameeragarwal@google.com",
    "time": "Sun May 04 21:18:42 2014 -0700"
  },
  "committer": {
    "name": "Sameer Agarwal",
    "email": "sameeragarwal@google.com",
    "time": "Mon May 05 07:55:12 2014 -0700"
  },
  "message": "Lazily initialize the bounds arrays in ParameterBlock.\n\nProblems that do not use bounds do not have to pay the\nprice of storing bounds constraints.\n\nAlso replace the raw pointer access to the upper and\nlower bounds arrays with accessors which hides the\nlazy initialization from the user.\n\nChange-Id: I0325a35de9c29f853559f891e32e7c777686e537\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a978eb5e3c9b33462efd2127df657df4a77e1d1b",
      "old_mode": 33188,
      "old_path": "internal/ceres/parameter_block.h",
      "new_id": "7bc823d4ec647415637a6297c6bbba7719de28e0",
      "new_mode": 33188,
      "new_path": "internal/ceres/parameter_block.h"
    },
    {
      "type": "modify",
      "old_id": "a76c4086161ffc2df2cec699fd9b0c4efaa2fcc1",
      "old_mode": 33188,
      "old_path": "internal/ceres/parameter_block_test.cc",
      "new_id": "5a2db3c6783da51719039f76df901d868aafccf4",
      "new_mode": 33188,
      "new_path": "internal/ceres/parameter_block_test.cc"
    },
    {
      "type": "modify",
      "old_id": "6ae2c90cddebb95b808e1ec0ade567a127d95e59",
      "old_mode": 33188,
      "old_path": "internal/ceres/solver_impl.cc",
      "new_id": "2bf6cd26212a55ec02b9b8a3120831f9ac52b807",
      "new_mode": 33188,
      "new_path": "internal/ceres/solver_impl.cc"
    }
  ]
}
