make blocks inherit, since conditionalblock can use the same update function