fix issue343
23 files changed