add legacy code