#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
int main() {
int des[2];
pid_t pid;
char st_1[50] = ("Hello world");
char st_2[50];
if ((pipe(des)) < 0) {
} else {
pid = fork();
if (pid < 0) {
printf("Fork Execution Failed\n"); }
else if (pid > 0) {
close(des[0]);
write(des[1], st_1, 50);
} else if (pid == 0) {
sleep(2);
close(des[1]);
read(des[0], st_2, 50);
}
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KI2luY2x1ZGUgPHVuaXN0ZC5oPgppbnQgbWFpbigpIHsKICBpbnQgZGVzWzJdOwogIHBpZF90IHBpZDsKICBjaGFyIHN0XzFbNTBdID0gKCJIZWxsbyB3b3JsZCIpOwogIGNoYXIgc3RfMls1MF07CiAgaWYgKChwaXBlKGRlcykpIDwgMCkgewogICAgcHJpbnRmKCJQSVBFIEVSUk9SIik7CiAgfSBlbHNlIHsKICAgIHBpZCA9IGZvcmsoKTsKICAgIGlmIChwaWQgPCAwKSB7CiAgICAgIHByaW50ZigiRm9yayBFeGVjdXRpb24gRmFpbGVkXG4iKTsKICAgIH0KCiAgICBlbHNlIGlmIChwaWQgPiAwKSB7CiAgICAgIHByaW50ZigiUGFyZW50IFByb2Nlc3NcbiIpOwogICAgICBjbG9zZShkZXNbMF0pOwogICAgICB3cml0ZShkZXNbMV0sIHN0XzEsIDUwKTsKICAgIH0gZWxzZSBpZiAocGlkID09IDApIHsKICAgICAgc2xlZXAoMik7CiAgICAgIHByaW50ZigiQ2hpbGQgUHJvY2Vzc1xuIik7CiAgICAgIGNsb3NlKGRlc1sxXSk7CiAgICAgIHJlYWQoZGVzWzBdLCBzdF8yLCA1MCk7CiAgICAgIHByaW50ZigiXG4iKTsKICAgICAgcHJpbnRmKCIlcyIsIHN0XzIpOwogICAgfQogIH0KICByZXR1cm4gMDsKfQo=