allow specify default value while get
allow seek
use constructor
use constructor