small DRY and beauty refactor

some read method improved