some updates from new implementation