add/renamed/split some methods