#422 #425 #481 update based on @zzgvh comments