memcpy(&term_orig, &term, sizeof(struct termios));
term.c_lflag &= ~(ECHO | ICANON | ISIG);
tcsetattr(STDIN_FILENO, TCSADRAIN, &term);
memcpy(&term_orig, &term, sizeof(struct termios));
term.c_lflag &= ~(ECHO | ICANON | ISIG);
tcsetattr(STDIN_FILENO, TCSADRAIN, &term);