Block codes at contract level