import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.SequenceInputStream;

public class Main {

    public static void main(String[] args) throws IOException {
	// write your code here
        InputStream nonEmptyByteStream = new ByteArrayInputStream(new byte[]{1, 2, 3, 4});
        InputStream emptyByteStream = new ByteArrayInputStream(new byte[0]);
        SequenceInputStream myStream = new SequenceInputStream(emptyByteStream, nonEmptyByteStream);
        System.out.println(myStream.available()); // returns 0, indicating end of stream
        myStream.read(); // doesn't return -1 because bytes are still in stream
        System.out.println(myStream.available()); // no longer returns 0 even though no bytes have been written to stream
    }
}
