change some implementations