merge from v8
merge from v8

bitsuperlab/cpp-play,dacsunlimited/dac_play,bitsuperlab/cpp-play,bitsuperlab/cpp-play,bitsuperlab/cpp-play,bitsuperlab/cpp-play,bitsuperlab/cpp-play,dacsunlimited/dac_play,dacsunlimited/dac_play,dacsunlimited/dac_play,dacsunlimited/dac_play,dacsunlimited/dac_play