Fix #416
Fix #420
Fix #419