following
fix boolean check
add streaming api, big reorg