stupid dynamic dispatch example