actually i take it back, we should reuse these classes lest we break stuff