)]}'
{
  "commit": "2b89ce66f053a0895c1d6fe83b284d7e3f0fcf0e",
  "tree": "624c56a9cb31ce29f23ce0cdbddda622aba17ac7",
  "parents": [
    "8230edc6cedacaf4ee84d90ee975003e855cf296"
  ],
  "author": {
    "name": "hs293go",
    "email": "hellston20a@gmail.com",
    "time": "Tue Nov 23 15:39:14 2021 -0500"
  },
  "committer": {
    "name": "Sameer Agarwal",
    "email": "sameeragarwal@google.com",
    "time": "Tue Sep 20 22:14:19 2022 +0000"
  },
  "message": "Add generalized Euler Angle conversions\n\nConversions function include Euler Angles to / from Rotation Matrices\nand Quaternions. They are generalized for any Euler convention that can\nbe specified in the arguments. Algorithm is from \"Euler angle\nconversion\", Ken Shoemake, Graphics Gems IV\n\nChange-Id: I7f9ddc0b8d686efca16299d2ba374295744376ce\n",
  "tree_diff": [
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a0d84c62d495d16510c874a70b5737d35f5ec797",
      "new_mode": 33188,
      "new_path": "include/ceres/constants.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "19668b9325633f79e50374ef1cb0d36ad5f6dfe7",
      "new_mode": 33188,
      "new_path": "include/ceres/internal/euler_angles.h"
    },
    {
      "type": "modify",
      "old_id": "8cdd3fca5764810b35ccfc4215c285d339551294",
      "old_mode": 33188,
      "old_path": "include/ceres/rotation.h",
      "new_id": "a92d84a831628d1ee7f71d38c37dacd16e0e3866",
      "new_mode": 33188,
      "new_path": "include/ceres/rotation.h"
    },
    {
      "type": "modify",
      "old_id": "97ea5144105bb5d717bd5c5d85d07b8314ecd122",
      "old_mode": 33188,
      "old_path": "internal/ceres/rotation_test.cc",
      "new_id": "688edc38d5764304cc04fa546abd7ce001cd81d2",
      "new_mode": 33188,
      "new_path": "internal/ceres/rotation_test.cc"
    }
  ]
}
