update
refactoring. add read_head_byte
refactoring read_value