unique box per schedule
add revision middleware
unique boxes for schedule bottoms
update reversion