public void readBytes(byte[] b, int offset, int len) {while(len > 0) {final int numLeft = limit-upto;if (numLeft < len) {System.arraycopy(buffer, upto, b, offset, numLeft);offset += numLeft;len -= numLeft;nextSlice();} else {System.arraycopy(buffer, upto, b, offset, len);upto += len;break;}}}
public override void ReadBytes(byte[] b, int offset, int len){while (len > 0){int numLeft = limit - upto;if (numLeft < len){Array.Copy(buffer, upto, b, offset, numLeft);offset += numLeft;len -= numLeft;NextSlice();}else{Array.Copy(buffer, upto, b, offset, len);upto += len;break;}}}