{"push_id":786494236,"size":4,"distinct_size":4,"ref":"refs/heads/hierarchy","head":"2abf76c800ff4ef8383fa27cb45c6490d03f2838","before":"c236546094261ae7c9e95d653f039a86814e8998","commits":[{"sha":"c2ca104b6b60eeb84641b16e166755fd9af75d93","author":{"email":"0d963e915ba7c2816d80a8fc5a49b1d18017f205@gmail.com","name":"apmcleod"},"message":"New Model and ModelState","distinct":true,"url":"https://api.github.com/repos/apmcleod/beat-tracking/commits/c2ca104b6b60eeb84641b16e166755fd9af75d93"},{"sha":"1609c6741089356de1ab046ff898c51acc6ad230","author":{"email":"0d963e915ba7c2816d80a8fc5a49b1d18017f205@gmail.com","name":"apmcleod"},"message":"Fixing implemented return types","distinct":true,"url":"https://api.github.com/repos/apmcleod/beat-tracking/commits/1609c6741089356de1ab046ff898c51acc6ad230"},{"sha":"d09126b158d738c09ee440f3f0a741db0f36e38a","author":{"email":"0d963e915ba7c2816d80a8fc5a49b1d18017f205@gmail.com","name":"apmcleod"},"message":"Moved RuleSet inside of State","distinct":true,"url":"https://api.github.com/repos/apmcleod/beat-tracking/commits/d09126b158d738c09ee440f3f0a741db0f36e38a"},{"sha":"2abf76c800ff4ef8383fa27cb45c6490d03f2838","author":{"email":"0d963e915ba7c2816d80a8fc5a49b1d18017f205@gmail.com","name":"apmcleod"},"message":"Move transition logic into state","distinct":true,"url":"https://api.github.com/repos/apmcleod/beat-tracking/commits/2abf76c800ff4ef8383fa27cb45c6490d03f2838"}]}