1. Readable stream events commonly used:
For Node Readable streams, you typically listen to `data`, `readable`, `end`, and `error`. These cover consumption, flow control, and failures.
process.stdin
.on('data', c => {/*...*/})
.on('end', () => {/*...*/})
.on('error', e => {/*...*/});