Contract stuff sorta working