Added in hourly, did a couple refactors to follow DRY.