@MartinNowak do you mean reimplement it so that assignment happens when type is not changed?