discard legacy code