more partial features stuff and code cleaning