fix issue349
28 files changed