fork download
  1. #include <iostream>
  2. #include <vector>
  3. #include <string>
  4. #include <memory>
  5. #include <algorithm>
  6.  
  7. // ==========================================
  8. // 1. Book クラス(本)
  9. // ==========================================
  10. class Book {
  11. private:
  12. std::string id;
  13. std::string title;
  14. std::string author;
  15. bool is_borrowed;
  16.  
  17. public:
  18. Book(std::string id, std::string title, std::string author)
  19. : id(id), title(title), author(author), is_borrowed(false) {}
  20.  
  21. std::string getId() const { return id; }
  22. std::string getTitle() const { return title; }
  23. bool isBorrowed() const { return is_borrowed; }
  24.  
  25. void borrowBook() { is_borrowed = true; }
  26. void returnBook() { is_borrowed = false; }
  27.  
  28. void display() const {
  29. std::cout << "[" << id << "] " << title << " (" << author << ") - "
  30. << (is_borrowed ? "貸出中" : "貸出可能") << std::endl;
  31. }
  32. };
  33.  
  34. // ==========================================
  35. // 2. User クラス(利用者)
  36. // ==========================================
  37. class User {
  38. private:
  39. std::string id;
  40. std::string name;
  41. std::vector<std::shared_ptr<Book>> borrowed_books;
  42. const size_t MAX_BORROW_LIMIT = 3; // 最大貸出冊数制限
  43.  
  44. public:
  45. User(std::string id, std::string name) : id(id), name(name) {}
  46.  
  47. std::string getId() const { return id; }
  48. std::string getName() const { return name; }
  49.  
  50. bool canBorrow() const {
  51. return borrowed_books.size() < MAX_BORROW_LIMIT;
  52. }
  53.  
  54. void addBook(std::shared_ptr<Book> book) {
  55. borrowed_books.push_back(book);
  56. }
  57.  
  58. void removeBook(const std::string& book_id) {
  59. borrowed_books.erase(
  60. std::remove_if(borrowed_books.begin(), borrowed_books.end(),
  61. [&book_id](const std::shared_ptr<Book>& b) { return b->getId() == book_id; }),
  62. borrowed_books.end()
  63. );
  64. }
  65.  
  66. void displayStatus() const {
  67. std::cout << "利用者: " << name << " (ID: " << id << ") | 貸出中: "
  68. << borrowed_books.size() << "/" << MAX_BORROW_LIMIT << "冊" << std::endl;
  69. for (const auto& book : borrowed_books) {
  70. std::cout << " -> " << book->getTitle() << std::endl;
  71. }
  72. }
  73. };
  74.  
  75. // ==========================================
  76. // 3. Library クラス(図書館システム本体)
  77. // ==========================================
  78. class Library {
  79. private:
  80. std::vector<std::shared_ptr<Book>> inventory;
  81. std::vector<std::shared_ptr<User>> users;
  82.  
  83. // 内部検索用ヘルパー関数
  84. std::shared_ptr<Book> findBook(const std::string& book_id) {
  85. for (auto& book : inventory) {
  86. if (book->getId() == book_id) return book;
  87. }
  88. return nullptr;
  89. }
  90.  
  91. std::shared_ptr<User> findUser(const std::string& user_id) {
  92. for (auto& user : users) {
  93. if (user->getId() == user_id) return user;
  94. }
  95. return nullptr;
  96. }
  97.  
  98. public:
  99. void addBook(std::shared_ptr<Book> book) { inventory.push_back(book); }
  100. void registerUser(std::shared_ptr<User> user) { users.push_back(user); }
  101.  
  102. // 貸出処理(ビジネスロジック)
  103. void borrowBook(const std::string& user_id, const std::string& book_id) {
  104. auto user = findUser(user_id);
  105. auto book = findBook(book_id);
  106.  
  107. std::cout << "\n--- 貸出要求: ユーザー[" << user_id << "] が 本[" << book_id << "] を要求 ---" << std::endl;
  108.  
  109. if (!user || !book) {
  110. std::cout << "エラー: ユーザーまたは本が見つかりません。" << std::endl;
  111. return;
  112. }
  113.  
  114. if (book->isBorrowed()) {
  115. std::cout << "エラー: 『" << book->getTitle() << "』は既に他の人に貸出中です。" << std::endl;
  116. return;
  117. }
  118.  
  119. if (!user->canBorrow()) {
  120. std::cout << "エラー: " << user->getName() << " さんは貸出上限(3冊)に達しています。" << std::endl;
  121. return;
  122. }
  123.  
  124. // 状態の更新(オブジェクト間の相互作用)
  125. book->borrowBook();
  126. user->addBook(book);
  127. std::cout << "成功: " << user->getName() << " さんに『" << book->getTitle() << "』を貸し出しました。" << std::endl;
  128. }
  129.  
  130. // 返却処理
  131. void returnBook(const std::string& user_id, const std::string& book_id) {
  132. auto user = findUser(user_id);
  133. auto book = findBook(book_id);
  134.  
  135. std::cout << "\n--- 返却要求: ユーザー[" << user_id << "] が 本[" << book_id << "] を返却 ---" << std::endl;
  136.  
  137. if (!user || !book) {
  138. std::cout << "エラー: データに不整合があります。" << std::endl;
  139. return;
  140. }
  141.  
  142. book->returnBook();
  143. user->removeBook(book_id);
  144. std::cout << "成功: 『" << book->getTitle() << "』が返却されました。" << std::endl;
  145. }
  146.  
  147. // 状況表示
  148. void displayLibraryStatus() const {
  149. std::cout << "\n============= 図書館の現在のステータス =============" << std::endl;
  150. std::cout << "[蔵書一覧]" << std::endl;
  151. for (const auto& book : inventory) book->display();
  152.  
  153. std::cout << "\n[利用者一覧]" << std::endl;
  154. for (const auto& user : users) user->displayStatus();
  155. std::cout << "==================================================" << std::endl;
  156. }
  157. };
  158.  
  159. // ==========================================
  160. // 4. メイン関数(シミュレーション実行)
  161. // ==========================================
  162. int main() {
  163. Library univ_library;
  164.  
  165. // データの準備(本の追加)
  166. auto b1 = std::make_shared<Book>("B01", "オブジェクト指向設計論", "山田教授");
  167. auto b2 = std::make_shared<Book>("B02", "C++プログラミング詳解", "Schildt");
  168. auto b3 = std::make_shared<Book>("B03", "データ構造とアルゴリズム", "佐藤博士");
  169. auto b4 = std::make_shared<Book>("B04", "大学物理の基礎", "鈴木クヌース");
  170.  
  171. univ_library.addBook(b1);
  172. univ_library.addBook(b2);
  173. univ_library.addBook(b3);
  174. univ_library.addBook(b4);
  175.  
  176. // 利用者の登録
  177. auto u1 = std::make_shared<User>("U01", "アリス");
  178. auto u2 = std::make_shared<User>("U02", "ボブ");
  179.  
  180. univ_library.registerUser(u1);
  181. univ_library.registerUser(u2);
  182.  
  183. // 初期状態の表示
  184. univ_library.displayLibraryStatus();
  185.  
  186. // 1. 通常の貸出
  187. univ_library.borrowBook("U01", "B01"); // アリスがオブジェクト指向を借りる
  188. univ_library.borrowBook("U01", "B02");
  189.  
  190. // 2. 二重貸出のブロック(ボブがアリスと同じ本を借りようとする)
  191. univ_library.borrowBook("U02", "B01");
  192.  
  193. // 3. 冊数制限のテスト(アリスが4冊目を借りようとする)
  194. univ_library.borrowBook("U01", "B03");
  195. univ_library.borrowBook("U01", "B04"); // 4冊目なのでエラーになるはず
  196.  
  197. // 途中経過を表示
  198. univ_library.displayLibraryStatus();
  199.  
  200. // 4. 返却処理と、その後の貸出再試行
  201. univ_library.returnBook("U01", "B01"); // アリスが本を返却
  202. univ_library.borrowBook("U02", "B01"); // ボブが借りられるようになる
  203.  
  204. // 最終状態の表示
  205. univ_library.displayLibraryStatus();
  206.  
  207. return 0;
  208. }
Success #stdin #stdout #stderr 0.05s 7840KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
./prog:7: expected object
./prog:8: Invalid character 0xe3
./prog:8: Invalid character 0x82
./prog:8: Invalid character 0xaf
./prog:8: Invalid character 0xe3
./prog:8: Invalid character 0x83
./prog:8: Invalid character 0xa9
./prog:8: Invalid character 0xe3
./prog:8: Invalid character 0x82
./prog:8: Invalid character 0xb9
./prog:8: Invalid character 0xef
./prog:8: Invalid character 0xbc
./prog:8: Invalid character 0x88
./prog:8: Invalid character 0xe6
./prog:8: Invalid character 0x9c
./prog:8: Invalid character 0xac
./prog:8: Invalid character 0xef
./prog:8: Invalid character 0xbc
./prog:8: Invalid character 0x89
./prog:35: Invalid character 0xe3
./prog:35: Invalid character 0x82
./prog:35: Invalid character 0xaf
./prog:35: Invalid character 0xe3
./prog:35: Invalid character 0x83
./prog:35: Invalid character 0xa9
./prog:35: Invalid character 0xe3
./prog:35: Invalid character 0x82
./prog:35: Invalid character 0xb9
./prog:35: Invalid character 0xef
./prog:35: Invalid character 0xbc
./prog:35: Invalid character 0x88
./prog:35: Invalid character 0xe5
./prog:35: Invalid character 0x88
./prog:35: Invalid character 0xa9
./prog:35: Invalid character 0xe7
./prog:35: Invalid character 0x94
./prog:35: Invalid character 0xa8
./prog:35: Invalid character 0xe8
./prog:35: Invalid character 0x80
./prog:35: Invalid character 0x85
./prog:35: Invalid character 0xef
./prog:35: Invalid character 0xbc
./prog:35: Invalid character 0x89
./prog:42: Invalid character 0xe6
./prog:42: Invalid character 0x9c
./prog:42: Invalid character 0x80
./prog:42: Invalid character 0xe5
./prog:42: Invalid character 0xa4
./prog:42: Invalid character 0xa7
./prog:42: Invalid character 0xe8
./prog:42: Invalid character 0xb2
./prog:42: Invalid character 0xb8
./prog:42: Invalid character 0xe5
./prog:42: Invalid character 0x87
./prog:42: Invalid character 0xba
./prog:42: Invalid character 0xe5
./prog:42: Invalid character 0x86
./prog:42: Invalid character 0x8a
./prog:42: Invalid character 0xe6
./prog:42: Invalid character 0x95
./prog:42: Invalid character 0xb0
./prog:42: Invalid character 0xe5
./prog:42: Invalid character 0x88
./prog:42: Invalid character 0xb6
./prog:42: Invalid character 0xe9
./prog:42: Invalid character 0x99
./prog:42: Invalid character 0x90
./prog:76: Invalid character 0xe3
./prog:76: Invalid character 0x82
./prog:76: Invalid character 0xaf
./prog:76: Invalid character 0xe3
./prog:76: Invalid character 0x83
./prog:76: Invalid character 0xa9
./prog:76: Invalid character 0xe3
./prog:76: Invalid character 0x82
./prog:76: Invalid character 0xb9
./prog:76: Invalid character 0xef
./prog:76: Invalid character 0xbc
./prog:76: Invalid character 0x88
./prog:76: Invalid character 0xe5
./prog:76: Invalid character 0x9b
./prog:76: Invalid character 0xb3
./prog:76: Invalid character 0xe6
./prog:76: Invalid character 0x9b
./prog:76: Invalid character 0xb8
./prog:76: Invalid character 0xe9
./prog:76: Invalid character 0xa4
./prog:76: Invalid character 0xa8
./prog:76: Invalid character 0xe3
./prog:76: Invalid character 0x82
./prog:76: Invalid character 0xb7
./prog:76: Invalid character 0xe3
./prog:76: Invalid character 0x82
./prog:76: Invalid character 0xb9
./prog:76: Invalid character 0xe3
./prog:76: Invalid character 0x83
./prog:76: Invalid character 0x86
./prog:76: Invalid character 0xe3
./prog:76: Invalid character 0x83
./prog:76: Invalid character 0xa0
./prog:76: Invalid character 0xe6
./prog:76: Invalid character 0x9c
./prog:76: Invalid character 0xac
./prog:76: Invalid character 0xe4
./prog:76: Invalid character 0xbd
./prog:76: Invalid character 0x93
./prog:76: Invalid character 0xef
./prog:76: Invalid character 0xbc
./prog:76: Invalid character 0x89
./prog:83: Invalid character 0xe5
./prog:83: Invalid character 0x86
./prog:83: Invalid character 0x85
./prog:83: Invalid character 0xe9
./prog:83: Invalid character 0x83
./prog:83: Invalid character 0xa8
./prog:83: Invalid character 0xe6
./prog:83: Invalid character 0xa4
./prog:83: Invalid character 0x9c
./prog:83: Invalid character 0xe7
./prog:83: Invalid character 0xb4
./prog:83: Invalid character 0xa2
./prog:83: Invalid character 0xe7
./prog:83: Invalid character 0x94
./prog:83: Invalid character 0xa8
./prog:83: Invalid character 0xe3
./prog:83: Invalid character 0x83
./prog:83: Invalid character 0x98
./prog:83: Invalid character 0xe3
./prog:83: Invalid character 0x83
./prog:83: Invalid character 0xab
./prog:83: Invalid character 0xe3
./prog:83: Invalid character 0x83
./prog:83: Invalid character 0x91
./prog:83: Invalid character 0xe3
./prog:83: Invalid character 0x83
./prog:83: Invalid character 0xbc
./prog:83: Invalid character 0xe9
./prog:83: Invalid character 0x96
./prog:83: Invalid character 0xa2
./prog:83: Invalid character 0xe6
./prog:83: Invalid character 0x95
./prog:83: Invalid character 0xb0
./prog:102: Invalid character 0xe8
./prog:102: Invalid character 0xb2
./prog:102: Invalid character 0xb8
./prog:102: Invalid character 0xe5
./prog:102: Invalid character 0x87
./prog:102: Invalid character 0xba
./prog:102: Invalid character 0xe5
./prog:102: Invalid character 0x87
./prog:102: Invalid character 0xa6
./prog:102: Invalid character 0xe7
./prog:102: Invalid character 0x90
./prog:102: Invalid character 0x86
./prog:102: Invalid character 0xef
./prog:102: Invalid character 0xbc
./prog:102: Invalid character 0x88
./prog:102: Invalid character 0xe3
./prog:102: Invalid character 0x83
./prog:102: Invalid character 0x93
./prog:102: Invalid character 0xe3
./prog:102: Invalid character 0x82
./prog:102: Invalid character 0xb8
./prog:102: Invalid character 0xe3
./prog:102: Invalid character 0x83
./prog:102: Invalid character 0x8d
./prog:102: Invalid character 0xe3
./prog:102: Invalid character 0x82
./prog:102: Invalid character 0xb9
./prog:102: Invalid character 0xe3
./prog:102: Invalid character 0x83
./prog:102: Invalid character 0xad
./prog:102: Invalid character 0xe3
./prog:102: Invalid character 0x82
./prog:102: Invalid character 0xb8
./prog:102: Invalid character 0xe3
./prog:102: Invalid character 0x83
./prog:102: Invalid character 0x83
./prog:102: Invalid character 0xe3
./prog:102: Invalid character 0x82
./prog:102: Invalid character 0xaf
./prog:102: Invalid character 0xef
./prog:102: Invalid character 0xbc
./prog:102: Invalid character 0x89
./prog:109: expected object
./prog:109: expected expression
./prog:119: expected expression
./prog:124: Invalid character 0xe7
./prog:124: Invalid character 0x8a
./prog:124: Invalid character 0xb6
./prog:124: Invalid character 0xe6
./prog:124: Invalid character 0x85
./prog:124: Invalid character 0x8b
./prog:124: Invalid character 0xe3
./prog:124: Invalid character 0x81
./prog:124: Invalid character 0xae
./prog:124: Invalid character 0xe6
./prog:124: Invalid character 0x9b
./prog:124: Invalid character 0xb4
./prog:124: Invalid character 0xe6
./prog:124: Invalid character 0x96
./prog:124: Invalid character 0xb0
./prog:124: Invalid character 0xef
./prog:124: Invalid character 0xbc
./prog:124: Invalid character 0x88
./prog:124: Invalid character 0xe3
./prog:124: Invalid character 0x82
./prog:124: Invalid character 0xaa
./prog:124: Invalid character 0xe3
./prog:124: Invalid character 0x83
./prog:124: Invalid character 0x96
./prog:124: Invalid character 0xe3
./prog:124: Invalid character 0x82
./prog:124: Invalid character 0xb8
./prog:124: Invalid character 0xe3
./prog:124: Invalid character 0x82
./prog:124: Invalid character 0xa7
./prog:124: Invalid character 0xe3
./prog:124: Invalid character 0x82
./prog:124: Invalid character 0xaf
./prog:124: Invalid character 0xe3
./prog:124: Invalid character 0x83
./prog:124: Invalid character 0x88
./prog:124: Invalid character 0xe9
./prog:124: Invalid character 0x96
./prog:124: Invalid character 0x93
./prog:124: Invalid character 0xe3
./prog:124: Invalid character 0x81
./prog:124: Invalid character 0xae
./prog:124: Invalid character 0xe7
./prog:124: Invalid character 0x9b
./prog:124: Invalid character 0xb8
./prog:124: Invalid character 0xe4
./prog:124: Invalid character 0xba
./prog:124: Invalid character 0x92
./prog:124: Invalid character 0xe4
./prog:124: Invalid character 0xbd
./prog:124: Invalid character 0x9c
./prog:124: Invalid character 0xe7
./prog:124: Invalid character 0x94
./prog:124: Invalid character 0xa8
./prog:124: Invalid character 0xef
./prog:124: Invalid character 0xbc
./prog:124: Invalid character 0x89
./prog:130: Invalid character 0xe8
./prog:130: Invalid character 0xbf
./prog:130: Invalid character 0x94
./prog:130: Invalid character 0xe5
./prog:130: Invalid character 0x8d
./prog:130: Invalid character 0xb4
./prog:130: Invalid character 0xe5
./prog:130: Invalid character 0x87
./prog:130: Invalid character 0xa6
./prog:130: Invalid character 0xe7
./prog:130: Invalid character 0x90
./prog:130: Invalid character 0x86
./prog:137: expected object
./prog:137: expected expression
./prog:147: Invalid character 0xe7
./prog:147: Invalid character 0x8a
./prog:147: Invalid character 0xb6
./prog:147: Invalid character 0xe6
./prog:147: Invalid character 0xb3
./prog:147: Invalid character 0x81
./prog:147: Invalid character 0xe8
./prog:147: Invalid character 0xa1
./prog:147: Invalid character 0xa8
./prog:147: Invalid character 0xe7
./prog:147: Invalid character 0xa4
./prog:147: Invalid character 0xba
./prog:160: Invalid character 0xe3
./prog:160: Invalid character 0x83
./prog:160: Invalid character 0xa1
./prog:160: Invalid character 0xe3
./prog:160: Invalid character 0x82
./prog:160: Invalid character 0xa4
./prog:160: Invalid character 0xe3
./prog:160: Invalid character 0x83
./prog:160: Invalid character 0xb3
./prog:160: Invalid character 0xe9
./prog:160: Invalid character 0x96
./prog:160: Invalid character 0xa2
./prog:160: Invalid character 0xe6
./prog:160: Invalid character 0x95
./prog:160: Invalid character 0xb0
./prog:160: Invalid character 0xef
./prog:160: Invalid character 0xbc
./prog:160: Invalid character 0x88
./prog:160: Invalid character 0xe3
./prog:160: Invalid character 0x82
./prog:160: Invalid character 0xb7
./prog:160: Invalid character 0xe3
./prog:160: Invalid character 0x83
./prog:160: Invalid character 0x9f
./prog:160: Invalid character 0xe3
./prog:160: Invalid character 0x83
./prog:160: Invalid character 0xa5
./prog:160: Invalid character 0xe3
./prog:160: Invalid character 0x83
./prog:160: Invalid character 0xac
./prog:160: Invalid character 0xe3
./prog:160: Invalid character 0x83
./prog:160: Invalid character 0xbc
./prog:160: Invalid character 0xe3
./prog:160: Invalid character 0x82
./prog:160: Invalid character 0xb7
./prog:160: Invalid character 0xe3
./prog:160: Invalid character 0x83
./prog:160: Invalid character 0xa7
./prog:160: Invalid character 0xe3
./prog:160: Invalid character 0x83
./prog:160: Invalid character 0xb3
./prog:160: Invalid character 0xe5
./prog:160: Invalid character 0xae
./prog:160: Invalid character 0x9f
./prog:160: Invalid character 0xe8
./prog:160: Invalid character 0xa1
./prog:160: Invalid character 0x8c
./prog:160: Invalid character 0xef
./prog:160: Invalid character 0xbc
./prog:160: Invalid character 0x89
./prog:165: Invalid character 0xe3
./prog:165: Invalid character 0x83
./prog:165: Invalid character 0x87
./prog:165: Invalid character 0xe3
./prog:165: Invalid character 0x83
./prog:165: Invalid character 0xbc
./prog:165: Invalid character 0xe3
./prog:165: Invalid character 0x82
./prog:165: Invalid character 0xbf
./prog:165: Invalid character 0xe3
./prog:165: Invalid character 0x81
./prog:165: Invalid character 0xae
./prog:165: Invalid character 0xe6
./prog:165: Invalid character 0xba
./prog:165: Invalid character 0x96
./prog:165: Invalid character 0xe5
./prog:165: Invalid character 0x82
./prog:165: Invalid character 0x99
./prog:165: Invalid character 0xef
./prog:165: Invalid character 0xbc
./prog:165: Invalid character 0x88
./prog:165: Invalid character 0xe6
./prog:165: Invalid character 0x9c
./prog:165: Invalid character 0xac
./prog:165: Invalid character 0xe3
./prog:165: Invalid character 0x81
./prog:165: Invalid character 0xae
./prog:165: Invalid character 0xe8
./prog:165: Invalid character 0xbf
./prog:165: Invalid character 0xbd
./prog:165: Invalid character 0xe5
./prog:165: Invalid character 0x8a
./prog:165: Invalid character 0xa0
./prog:165: Invalid character 0xef
./prog:165: Invalid character 0xbc
./prog:165: Invalid character 0x89
./prog:176: Invalid character 0xe5
./prog:176: Invalid character 0x88
./prog:176: Invalid character 0xa9
./prog:176: Invalid character 0xe7
./prog:176: Invalid character 0x94
./prog:176: Invalid character 0xa8
./prog:176: Invalid character 0xe8
./prog:176: Invalid character 0x80
./prog:176: Invalid character 0x85
./prog:176: Invalid character 0xe3
./prog:176: Invalid character 0x81
./prog:176: Invalid character 0xae
./prog:176: Invalid character 0xe7
./prog:176: Invalid character 0x99
./prog:176: Invalid character 0xbb
./prog:176: Invalid character 0xe9
./prog:176: Invalid character 0x8c
./prog:176: Invalid character 0xb2
./prog:183: Invalid character 0xe5
./prog:183: Invalid character 0x88
./prog:183: Invalid character 0x9d
./prog:183: Invalid character 0xe6
./prog:183: Invalid character 0x9c
./prog:183: Invalid character 0x9f
./prog:183: Invalid character 0xe7
./prog:183: Invalid character 0x8a
./prog:183: Invalid character 0xb6
./prog:183: Invalid character 0xe6
./prog:183: Invalid character 0x85
./prog:183: Invalid character 0x8b
./prog:183: Invalid character 0xe3
./prog:183: Invalid character 0x81
./prog:183: Invalid character 0xae
./prog:183: Invalid character 0xe8
./prog:183: Invalid character 0xa1
./prog:183: Invalid character 0xa8
./prog:183: Invalid character 0xe7
./prog:183: Invalid character 0xa4
./prog:183: Invalid character 0xba
./prog:186: Invalid character 0xe9
./prog:186: Invalid character 0x80
./prog:186: Invalid character 0x9a
./prog:186: Invalid character 0xe5
./prog:186: Invalid character 0xb8
./prog:186: Invalid character 0xb8
./prog:186: Invalid character 0xe3
./prog:186: Invalid character 0x81
./prog:186: Invalid character 0xae
./prog:186: Invalid character 0xe8
./prog:186: Invalid character 0xb2
./prog:186: Invalid character 0xb8
./prog:186: Invalid character 0xe5
./prog:186: Invalid character 0x87
./prog:186: Invalid character 0xba
./prog:187: Invalid character 0xe3
./prog:187: Invalid character 0x82
./prog:187: Invalid character 0xa2
./prog:187: Invalid character 0xe3
./prog:187: Invalid character 0x83
./prog:187: Invalid character 0xaa
./prog:187: Invalid character 0xe3
./prog:187: Invalid character 0x82
./prog:187: Invalid character 0xb9
./prog:187: Invalid character 0xe3
./prog:187: Invalid character 0x81
./prog:187: Invalid character 0x8c
./prog:187: Invalid character 0xe3
./prog:187: Invalid character 0x82
./prog:187: Invalid character 0xaa
./prog:187: Invalid character 0xe3
./prog:187: Invalid character 0x83
./prog:187: Invalid character 0x96
./prog:187: Invalid character 0xe3
./prog:187: Invalid character 0x82
./prog:187: Invalid character 0xb8
./prog:187: Invalid character 0xe3
./prog:187: Invalid character 0x82
./prog:187: Invalid character 0xa7
./prog:187: Invalid character 0xe3
./prog:187: Invalid character 0x82
./prog:187: Invalid character 0xaf
./prog:187: Invalid character 0xe3
./prog:187: Invalid character 0x83
./prog:187: Invalid character 0x88
./prog:187: Invalid character 0xe6
./prog:187: Invalid character 0x8c
./prog:187: Invalid character 0x87
./prog:187: Invalid character 0xe5
./prog:187: Invalid character 0x90
./prog:187: Invalid character 0x91
./prog:187: Invalid character 0xe3
./prog:187: Invalid character 0x82
./prog:187: Invalid character 0x92
./prog:187: Invalid character 0xe5
./prog:187: Invalid character 0x80
./prog:187: Invalid character 0x9f
./prog:187: Invalid character 0xe3
./prog:187: Invalid character 0x82
./prog:187: Invalid character 0x8a
./prog:187: Invalid character 0xe3
./prog:187: Invalid character 0x82
./prog:187: Invalid character 0x8b
./prog:190: Invalid character 0xe4
./prog:190: Invalid character 0xba
./prog:190: Invalid character 0x8c
./prog:190: Invalid character 0xe9
./prog:190: Invalid character 0x87
./prog:190: Invalid character 0x8d
./prog:190: Invalid character 0xe8
./prog:190: Invalid character 0xb2
./prog:190: Invalid character 0xb8
./prog:190: Invalid character 0xe5
./prog:190: Invalid character 0x87
./prog:190: Invalid character 0xba
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x81
./prog:190: Invalid character 0xae
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x83
./prog:190: Invalid character 0x96
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x83
./prog:190: Invalid character 0xad
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x83
./prog:190: Invalid character 0x83
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x82
./prog:190: Invalid character 0xaf
./prog:190: Invalid character 0xef
./prog:190: Invalid character 0xbc
./prog:190: Invalid character 0x88
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x83
./prog:190: Invalid character 0x9c
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x83
./prog:190: Invalid character 0x96
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x81
./prog:190: Invalid character 0x8c
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x82
./prog:190: Invalid character 0xa2
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x83
./prog:190: Invalid character 0xaa
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x82
./prog:190: Invalid character 0xb9
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x81
./prog:190: Invalid character 0xa8
./prog:190: Invalid character 0xe5
./prog:190: Invalid character 0x90
./prog:190: Invalid character 0x8c
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x81
./prog:190: Invalid character 0x98
./prog:190: Invalid character 0xe6
./prog:190: Invalid character 0x9c
./prog:190: Invalid character 0xac
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x82
./prog:190: Invalid character 0x92
./prog:190: Invalid character 0xe5
./prog:190: Invalid character 0x80
./prog:190: Invalid character 0x9f
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x82
./prog:190: Invalid character 0x8a
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x82
./prog:190: Invalid character 0x88
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x81
./prog:190: Invalid character 0x86
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x81
./prog:190: Invalid character 0xa8
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x81
./prog:190: Invalid character 0x99
./prog:190: Invalid character 0xe3
./prog:190: Invalid character 0x82
./prog:190: Invalid character 0x8b
./prog:190: Invalid character 0xef
./prog:190: Invalid character 0xbc
./prog:190: Invalid character 0x89
./prog:193: Invalid character 0xe5
./prog:193: Invalid character 0x86
./prog:193: Invalid character 0x8a
./prog:193: Invalid character 0xe6
./prog:193: Invalid character 0x95
./prog:193: Invalid character 0xb0
./prog:193: Invalid character 0xe5
./prog:193: Invalid character 0x88
./prog:193: Invalid character 0xb6
./prog:193: Invalid character 0xe9
./prog:193: Invalid character 0x99
./prog:193: Invalid character 0x90
./prog:193: Invalid character 0xe3
./prog:193: Invalid character 0x81
./prog:193: Invalid character 0xae
./prog:193: Invalid character 0xe3
./prog:193: Invalid character 0x83
./prog:193: Invalid character 0x86
./prog:193: Invalid character 0xe3
./prog:193: Invalid character 0x82
./prog:193: Invalid character 0xb9
./prog:193: Invalid character 0xe3
./prog:193: Invalid character 0x83
./prog:193: Invalid character 0x88
./prog:193: Invalid character 0xef
./prog:193: Invalid character 0xbc
./prog:193: Invalid character 0x88
./prog:193: Invalid character 0xe3
./prog:193: Invalid character 0x82
./prog:193: Invalid character 0xa2
./prog:193: Invalid character 0xe3
./prog:193: Invalid character 0x83
./prog:193: Invalid character 0xaa
./prog:193: Invalid character 0xe3
./prog:193: Invalid character 0x82
./prog:193: Invalid character 0xb9
./prog:193: Invalid character 0xe3
./prog:193: Invalid character 0x81
./prog:193: Invalid character 0x8c
./prog:193: Invalid character 0xe5
./prog:193: Invalid character 0x86
./prog:193: Invalid character 0x8a
./prog:193: Invalid character 0xe7
./prog:193: Invalid character 0x9b
./prog:193: Invalid character 0xae
./prog:193: Invalid character 0xe3
./prog:193: Invalid character 0x82
./prog:193: Invalid character 0x92
./prog:193: Invalid character 0xe5
./prog:193: Invalid character 0x80
./prog:193: Invalid character 0x9f
./prog:193: Invalid character 0xe3
./prog:193: Invalid character 0x82
./prog:193: Invalid character 0x8a
./prog:193: Invalid character 0xe3
./prog:193: Invalid character 0x82
./prog:193: Invalid character 0x88
./prog:193: Invalid character 0xe3
./prog:193: Invalid character 0x81
./prog:193: Invalid character 0x86
./prog:193: Invalid character 0xe3
./prog:193: Invalid character 0x81
./prog:193: Invalid character 0xa8
./prog:193: Invalid character 0xe3
./prog:193: Invalid character 0x81
./prog:193: Invalid character 0x99
./prog:193: Invalid character 0xe3
./prog:193: Invalid character 0x82
./prog:193: Invalid character 0x8b
./prog:193: Invalid character 0xef
./prog:193: Invalid character 0xbc
./prog:193: Invalid character 0x89
./prog:195: Invalid character 0xe5
./prog:195: Invalid character 0x86
./prog:195: Invalid character 0x8a
./prog:195: Invalid character 0xe7
./prog:195: Invalid character 0x9b
./prog:195: Invalid character 0xae
./prog:195: Invalid character 0xe3
./prog:195: Invalid character 0x81
./prog:195: Invalid character 0xaa
./prog:195: Invalid character 0xe3
./prog:195: Invalid character 0x81
./prog:195: Invalid character 0xae
./prog:195: Invalid character 0xe3
./prog:195: Invalid character 0x81
./prog:195: Invalid character 0xa7
./prog:195: Invalid character 0xe3
./prog:195: Invalid character 0x82
./prog:195: Invalid character 0xa8
./prog:195: Invalid character 0xe3
./prog:195: Invalid character 0x83
./prog:195: Invalid character 0xa9
./prog:195: Invalid character 0xe3
./prog:195: Invalid character 0x83
./prog:195: Invalid character 0xbc
./prog:195: Invalid character 0xe3
./prog:195: Invalid character 0x81
./prog:195: Invalid character 0xab
./prog:195: Invalid character 0xe3
./prog:195: Invalid character 0x81
./prog:195: Invalid character 0xaa
./prog:195: Invalid character 0xe3
./prog:195: Invalid character 0x82
./prog:195: Invalid character 0x8b
./prog:195: Invalid character 0xe3
./prog:195: Invalid character 0x81
./prog:195: Invalid character 0xaf
./prog:195: Invalid character 0xe3
./prog:195: Invalid character 0x81
./prog:195: Invalid character 0x9a
./prog:197: Invalid character 0xe9
./prog:197: Invalid character 0x80
./prog:197: Invalid character 0x94
./prog:197: Invalid character 0xe4
./prog:197: Invalid character 0xb8
./prog:197: Invalid character 0xad
./prog:197: Invalid character 0xe7
./prog:197: Invalid character 0xb5
./prog:197: Invalid character 0x8c
./prog:197: Invalid character 0xe9
./prog:197: Invalid character 0x81
./prog:197: Invalid character 0x8e
./prog:197: Invalid character 0xe3
./prog:197: Invalid character 0x82
./prog:197: Invalid character 0x92
./prog:197: Invalid character 0xe8
./prog:197: Invalid character 0xa1
./prog:197: Invalid character 0xa8
./prog:197: Invalid character 0xe7
./prog:197: Invalid character 0xa4
./prog:197: Invalid character 0xba
./prog:200: Invalid character 0xe8
./prog:200: Invalid character 0xbf
./prog:200: Invalid character 0x94
./prog:200: Invalid character 0xe5
./prog:200: Invalid character 0x8d
./prog:200: Invalid character 0xb4
./prog:200: Invalid character 0xe5
./prog:200: Invalid character 0x87
./prog:200: Invalid character 0xa6
./prog:200: Invalid character 0xe7
./prog:200: Invalid character 0x90
./prog:200: Invalid character 0x86
./prog:200: Invalid character 0xe3
./prog:200: Invalid character 0x81
./prog:200: Invalid character 0xa8
./prog:200: Invalid character 0xe3
./prog:200: Invalid character 0x80
./prog:200: Invalid character 0x81
./prog:200: Invalid character 0xe3
./prog:200: Invalid character 0x81
./prog:200: Invalid character 0x9d
./prog:200: Invalid character 0xe3
./prog:200: Invalid character 0x81
./prog:200: Invalid character 0xae
./prog:200: Invalid character 0xe5
./prog:200: Invalid character 0xbe
./prog:200: Invalid character 0x8c
./prog:200: Invalid character 0xe3
./prog:200: Invalid character 0x81
./prog:200: Invalid character 0xae
./prog:200: Invalid character 0xe8
./prog:200: Invalid character 0xb2
./prog:200: Invalid character 0xb8
./prog:200: Invalid character 0xe5
./prog:200: Invalid character 0x87
./prog:200: Invalid character 0xba
./prog:200: Invalid character 0xe5
./prog:200: Invalid character 0x86
./prog:200: Invalid character 0x8d
./prog:200: Invalid character 0xe8
./prog:200: Invalid character 0xa9
./prog:200: Invalid character 0xa6
./prog:200: Invalid character 0xe8
./prog:200: Invalid character 0xa1
./prog:200: Invalid character 0x8c
./prog:201: Invalid character 0xe3
./prog:201: Invalid character 0x82
./prog:201: Invalid character 0xa2
./prog:201: Invalid character 0xe3
./prog:201: Invalid character 0x83
./prog:201: Invalid character 0xaa
./prog:201: Invalid character 0xe3
./prog:201: Invalid character 0x82
./prog:201: Invalid character 0xb9
./prog:201: Invalid character 0xe3
./prog:201: Invalid character 0x81
./prog:201: Invalid character 0x8c
./prog:201: Invalid character 0xe6
./prog:201: Invalid character 0x9c
./prog:201: Invalid character 0xac
./prog:201: Invalid character 0xe3
./prog:201: Invalid character 0x82
./prog:201: Invalid character 0x92
./prog:201: Invalid character 0xe8
./prog:201: Invalid character 0xbf
./prog:201: Invalid character 0x94
./prog:201: Invalid character 0xe5
./prog:201: Invalid character 0x8d
./prog:201: Invalid character 0xb4
./prog:202: Invalid character 0xe3
./prog:202: Invalid character 0x83
./prog:202: Invalid character 0x9c
./prog:202: Invalid character 0xe3
./prog:202: Invalid character 0x83
./prog:202: Invalid character 0x96
./prog:202: Invalid character 0xe3
./prog:202: Invalid character 0x81
./prog:202: Invalid character 0x8c
./prog:202: Invalid character 0xe5
./prog:202: Invalid character 0x80
./prog:202: Invalid character 0x9f
./prog:202: Invalid character 0xe3
./prog:202: Invalid character 0x82
./prog:202: Invalid character 0x8a
./prog:202: Invalid character 0xe3
./prog:202: Invalid character 0x82
./prog:202: Invalid character 0x89
./prog:202: Invalid character 0xe3
./prog:202: Invalid character 0x82
./prog:202: Invalid character 0x8c
./prog:202: Invalid character 0xe3
./prog:202: Invalid character 0x82
./prog:202: Invalid character 0x8b
./prog:202: Invalid character 0xe3
./prog:202: Invalid character 0x82
./prog:202: Invalid character 0x88
./prog:202: Invalid character 0xe3
./prog:202: Invalid character 0x81
./prog:202: Invalid character 0x86
./prog:202: Invalid character 0xe3
./prog:202: Invalid character 0x81
./prog:202: Invalid character 0xab
./prog:202: Invalid character 0xe3
./prog:202: Invalid character 0x81
./prog:202: Invalid character 0xaa
./prog:202: Invalid character 0xe3
./prog:202: Invalid character 0x82
./prog:202: Invalid character 0x8b
./prog:204: Invalid character 0xe6
./prog:204: Invalid character 0x9c
./prog:204: Invalid character 0x80
./prog:204: Invalid character 0xe7
./prog:204: Invalid character 0xb5
./prog:204: Invalid character 0x82
./prog:204: Invalid character 0xe7
./prog:204: Invalid character 0x8a
./prog:204: Invalid character 0xb6
./prog:204: Invalid character 0xe6
./prog:204: Invalid character 0x85
./prog:204: Invalid character 0x8b
./prog:204: Invalid character 0xe3
./prog:204: Invalid character 0x81
./prog:204: Invalid character 0xae
./prog:204: Invalid character 0xe8
./prog:204: Invalid character 0xa1
./prog:204: Invalid character 0xa8
./prog:204: Invalid character 0xe7
./prog:204: Invalid character 0xa4
./prog:204: Invalid character 0xba