1 00:00:00,000 --> 00:00:09,500 >> [השמעת מוסיקה] 2 00:00:09,500 --> 00:00:12,350 >> ZAMYLA צ'אן: זה היה מיס סקרלט עם פמוט. 3 00:00:12,350 --> 00:00:13,560 מי עשה? 4 00:00:13,560 --> 00:00:15,030 ובכן, אנחנו הולכים לגלות. 5 00:00:15,030 --> 00:00:20,870 ברמז משחק לוח, ייתכן יינתן תמונה אדומה פיזית. 6 00:00:20,870 --> 00:00:24,120 והתמונה שהיא מאוד אדומה ו פצעונים, והתפקיד שלך הוא 7 00:00:24,120 --> 00:00:25,490 לחשוף את המסר החבוי. 8 00:00:25,490 --> 00:00:29,740 ובדרך כלל אתה מסופק עם אדום זכוכית מגדלת, או מסך אדום 9 00:00:29,740 --> 00:00:31,410 עולה כי מסר סמוי. 10 00:00:31,410 --> 00:00:33,340 ובכן, אנחנו הולכים לחקות את זה. 11 00:00:33,340 --> 00:00:37,960 >> במי עשה, אתה נתון תמונת מפת סיביות זה נראה מאוד לא יציב ואדום, 12 00:00:37,960 --> 00:00:43,430 ולאחר מכן להפעיל את התכנית מי עשה כדי לחשוף את מסר חבוי. 13 00:00:43,430 --> 00:00:45,650 >> אז בואו לשבור את זה לשלבים. 14 00:00:45,650 --> 00:00:50,390 ראשית, אתה רוצה לפתוח את הקובץ - מושג שאתה כבר נתון. 15 00:00:50,390 --> 00:00:53,880 ולאחר מכן גם ליצור קובץ מפת סיביות פסק דין. 16 00:00:53,880 --> 00:00:58,240 אז אתה רוצה לעדכן את מפת הסיביות כותרת מידע לoutfile פסק הדין. 17 00:00:58,240 --> 00:00:59,920 עוד על כך בהמשך. 18 00:00:59,920 --> 00:01:04,319 ואז אתה הולך לקרוא ל רמז, scanline, על ידי פיקסל פיקסל, 19 00:01:04,319 --> 00:01:07,320 שינוי צבעי פיקסל כ צורך בכך, וכתיבה 20 00:01:07,320 --> 00:01:08,960 אלה לגזר הדין - 21 00:01:08,960 --> 00:01:12,000 על ידי פיקסל פיקסל לתוך scanline פסק דין. 22 00:01:12,000 --> 00:01:13,780 >> איך אפשר להתחיל ללכת על זה? 23 00:01:13,780 --> 00:01:16,940 ובכן, למזלנו, יש לנו copy.c בקוד ההפצה. 24 00:01:16,940 --> 00:01:21,240 וזה הולך להוכיח די שימושי לנו. 25 00:01:21,240 --> 00:01:29,700 Copy.c פתח קובץ, קורא שב הכותרת של infile, ולאחר מכן מעדכנת את 26 00:01:29,700 --> 00:01:31,070 הכותרת של outfile. 27 00:01:31,070 --> 00:01:37,010 ולאחר מכן הוא קורא כל פיקסל ב scanline, על ידי פיקסל פיקסל, ולאחר מכן 28 00:01:37,010 --> 00:01:42,390 כותב פיקסל שלoutfile. 29 00:01:42,390 --> 00:01:45,020 >> לכן, אולי הצעד הראשון שלך יהיה להפעיל את הפעולות הבאות 30 00:01:45,020 --> 00:01:46,420 הפקודה בטרמינל - 31 00:01:46,420 --> 00:01:50,270 cp copy.c whodunit.c. 32 00:01:50,270 --> 00:01:55,320 הפעולה זו תיצור עותק של copy.c שם whodunit.c. 33 00:01:55,320 --> 00:01:58,320 אז הצעד הראשון שלנו כדי לפתוח את קובץ, טוב, יש מדויק 34 00:01:58,320 --> 00:02:00,070 העתק מדויק של שבcopy.c. 35 00:02:00,070 --> 00:02:03,360 אז אני אשאיר אתכם להסתכל על זה. 36 00:02:03,360 --> 00:02:07,860 >> עם מה שיש לנו עסק בPSET זה אני קובץ / O, בעצם לוקח את הקבצים, 37 00:02:07,860 --> 00:02:10,229 קריאה, כתיבה, עריכתם. 38 00:02:10,229 --> 00:02:12,650 איך פותח קובץ ראשון? 39 00:02:12,650 --> 00:02:16,800 ובכן, אתה הולך להכריז על קובץ מצביע, ואז אתה קורא 40 00:02:16,800 --> 00:02:18,670 fopen פונקציה. 41 00:02:18,670 --> 00:02:23,150 תעבור בדרך, או את שמו של ש קובץ, ולאחר מכן במצב שאתה רוצה 42 00:02:23,150 --> 00:02:24,700 כדי לפתוח קובץ שבו 43 00:02:24,700 --> 00:02:28,620 עובר בr ייפתח foo.bmp לקריאה. 44 00:02:28,620 --> 00:02:35,670 ואילו fopen עם עובר בw יהיה bar.bmp הפתוח, לכתיבה לקובץ ו 45 00:02:35,670 --> 00:02:37,020 למעשה לערוך אותו. 46 00:02:37,020 --> 00:02:41,970 >> אז עכשיו שאנחנו כבר פתחנו את הקובץ, שלנו השלב הבא הוא לעדכן את מידע הכותרת העליונה 47 00:02:41,970 --> 00:02:43,230 לoutfile. 48 00:02:43,230 --> 00:02:44,610 מה מידע כותרת עליונה? 49 00:02:44,610 --> 00:02:48,160 ובכן, דבר ראשון שאנחנו צריכים לדעת מה היא מפת סיביות. 50 00:02:48,160 --> 00:02:51,000 מפת סיביות היא רק פשוטה הסדר של בתים. 51 00:02:51,000 --> 00:02:55,480 והם הכריזו בקובץ זה כאן, bmp.h, עם חבורה של 52 00:02:55,480 --> 00:02:58,610 מידע של מה מפת סיביות מורכב למעשה מ. 53 00:02:58,610 --> 00:03:05,730 אבל מה שבאמת אכפת לנו הוא כותרת קובץ מפת סיביות, ממש כאן, ו 54 00:03:05,730 --> 00:03:08,460 כותרת מפת הסיביות המידע, כאן. 55 00:03:08,460 --> 00:03:13,170 הכותרת מורכבת מכמה משתנים שיוכיחו שימושי מאוד. 56 00:03:13,170 --> 00:03:18,400 יש biSizeImage, שהוא גודל כולל של התמונה בבתים. 57 00:03:18,400 --> 00:03:20,890 וזה כולל פיקסלים וריפוד. 58 00:03:20,890 --> 00:03:24,210 הריפוד הוא מאוד חשוב, אבל עוד נגיע לכך בהמשך. 59 00:03:24,210 --> 00:03:30,000 >> BiWidth מייצג את הרוחב תמונה בפיקסלים מינוס הריפוד. 60 00:03:30,000 --> 00:03:34,220 BiHeight הוא לאחר מכן גם את הגובה של התמונה בפיקסלים. 61 00:03:34,220 --> 00:03:38,240 ולאחר מכן BITMAPFILEHEADER ו BITMAPINFOHEADER, כפי שציינתי 62 00:03:38,240 --> 00:03:40,900 מוקדם יותר, אלה מיוצגים כstructs. 63 00:03:40,900 --> 00:03:45,410 אז, אתה לא יכול לגשת לכותרת הקובץ עצמו, אבל אתה רוצה להגיע ל 64 00:03:45,410 --> 00:03:47,370 אלה משתנים בפנים. 65 00:03:47,370 --> 00:03:48,170 >> על אישור. 66 00:03:48,170 --> 00:03:50,600 אז איך לעדכן את המידע בכותרת? 67 00:03:50,600 --> 00:03:54,020 ובכן, דבר ראשון שאנחנו צריכים לראות אם אנחנו צריך לשנות את כל מידע מ 68 00:03:54,020 --> 00:03:58,480 infile, הרמז, כדי outfile, את פסק הדין. 69 00:03:58,480 --> 00:04:00,250 האם משהו משתנה במקרה זה? 70 00:04:00,250 --> 00:04:04,320 ובכן, לא ממש, כי אנחנו הולכים להיות רק משנה את הצבעים. 71 00:04:04,320 --> 00:04:07,550 אנחנו לא הולכים להיות שינוי הקובץ גודל, גודל התמונה, את הרוחב, 72 00:04:07,550 --> 00:04:08,310 או הגובה. 73 00:04:08,310 --> 00:04:14,010 אז אתה בסדר לעת עתה על ידי פשוט מעתיק כל פיקסל. 74 00:04:14,010 --> 00:04:14,840 >> על אישור. 75 00:04:14,840 --> 00:04:20,720 אז עכשיו בואו נסתכל על איך שאנחנו באמת יכול לקרוא כל פיקסל מהקובץ. 76 00:04:20,720 --> 00:04:23,640 קובץ נוסף שאני / פונקצית O יבוא לידי ביטוי - 77 00:04:23,640 --> 00:04:24,700 fread. 78 00:04:24,700 --> 00:04:28,440 זה לוקח במצביע לstruct שיכיל את הבתים ש 79 00:04:28,440 --> 00:04:30,110 אתה קורא. 80 00:04:30,110 --> 00:04:31,890 אז אתה קורא לזה. 81 00:04:31,890 --> 00:04:36,090 ואז אתה עובר בגודל, שהוא גודלו של כל אלמנט שאתה 82 00:04:36,090 --> 00:04:37,360 רוצה לקרוא. 83 00:04:37,360 --> 00:04:40,640 הנה, sizeof הפונקציה יהיה שימושי. 84 00:04:40,640 --> 00:04:45,570 ואז אתה עובר במספר, שבו מייצג את מספר האלמנטים של 85 00:04:45,570 --> 00:04:47,480 גודל לקרוא. 86 00:04:47,480 --> 00:04:51,180 ולבסוף, inptr, שהוא מצביע הקובץ שאתה 87 00:04:51,180 --> 00:04:52,530 הולך לקרוא מ. 88 00:04:52,530 --> 00:04:58,650 אז כל אלה הם המרכיבים בתוך inptr והם הולכים לנתונים. 89 00:04:58,650 --> 00:05:01,660 >> בואו נסתכל על דוגמא קטנה. 90 00:05:01,660 --> 00:05:07,590 אם אני רוצה לקרוא לנתוני שני כלבים, טוב, אני יכול לעשות את זה באחת משתי דרכים. 91 00:05:07,590 --> 00:05:15,250 אני יכול גם לקרוא בשני עצמים בגודל כלב מinptr שלי, או שאני יכול לקרוא 92 00:05:15,250 --> 00:05:19,280 באובייקט אחד בגודל של שני כלבים. 93 00:05:19,280 --> 00:05:23,580 אז אתה רואה שבהתאם לדרך לך שתסדר גודל ומספר, אתה 94 00:05:23,580 --> 00:05:25,840 יכול לקרוא באותו מספר הבתים. 95 00:05:25,840 --> 00:05:28,720 96 00:05:28,720 --> 00:05:33,020 >> אז עכשיו, בואו נשנה צבע פיקסל כמו שאנחנו צריכים. 97 00:05:33,020 --> 00:05:37,320 אם תסתכל שוב בbmp.h, ולאחר מכן אתה תראה שבתחתית 98 00:05:37,320 --> 00:05:42,920 RGBTRIPLEs הוא struct אחר, שבו הם מורכבים משלושה בתים. 99 00:05:42,920 --> 00:05:49,220 אחד, rgbtBlue, rgbtGreen, וrgbtRed. 100 00:05:49,220 --> 00:05:52,480 אז כל אחד מהם מייצג את הכמות של כחול, כמות ירוקה, ו 101 00:05:52,480 --> 00:05:57,250 סכום של אדום בתוך פיקסל זה, שבו כל סכום מיוצג על ידי 102 00:05:57,250 --> 00:05:58,670 מספר הקסדצימלי. 103 00:05:58,670 --> 00:06:04,370 >> אז ff0000 יהיה בצבע כחול, כי זה הולך מכחול, 104 00:06:04,370 --> 00:06:05,850 לירוק, ואדום. 105 00:06:05,850 --> 00:06:09,300 ואז כל של f יהיה לבן. 106 00:06:09,300 --> 00:06:13,440 בואו נסתכל על smiley.bmp, אשר יש לך בקוד ההפצה שלך. 107 00:06:13,440 --> 00:06:15,690 אם אתה פותח אותו רק תמונה צופה, אז אתה 108 00:06:15,690 --> 00:06:17,080 רק לראות סמיילי אדום. 109 00:06:17,080 --> 00:06:20,380 אבל לוקח צלילה עמוקה יותר ב, אנחנו רואה שהמבנה 110 00:06:20,380 --> 00:06:22,340 מזה רק פיקסלים. 111 00:06:22,340 --> 00:06:25,880 יש לנו פיקסלים לבנים, ולאחר מכן פיקסלים אדומים. 112 00:06:25,880 --> 00:06:31,000 כל לבן, ffffff, ולאחר מכן פיקסלים אדומים שצבוע בבשבילך 113 00:06:31,000 --> 00:06:35,440 כאן, ואתה רואה שהם 0000FF. 114 00:06:35,440 --> 00:06:39,760 אפס כחול, אפס ירוק, ואדום מלא. 115 00:06:39,760 --> 00:06:45,350 ומכיוון שסמיילי הוא רחב שמונה פיקסלים, אין לנו כל ריפוד. 116 00:06:45,350 --> 00:06:47,360 בסדר. 117 00:06:47,360 --> 00:06:53,310 >> אז אם אני היה להקצות ערכים שונים לRGBTRIPLE ורציתי 118 00:06:53,310 --> 00:06:58,350 לעשות את זה ירוק, אז מה הייתי עושה הוא אני אכריז RGBTRIPLE, בשם 119 00:06:58,350 --> 00:07:02,660 משולש, ולאחר מכן לגשת לכל בתים בתוך שאני struct 120 00:07:02,660 --> 00:07:04,030 ישתמש מפעיל הנקודה. 121 00:07:04,030 --> 00:07:08,430 אז triple.rgbtBlue, אני יכול להקצות של -0. 122 00:07:08,430 --> 00:07:13,460 גרין אני יכול להקצות אותו למלא - כל מספר, באמת, בין 0 ל FF. 123 00:07:13,460 --> 00:07:15,470 ולאחר מכן אדום, אני גם הולך להגיד 0. 124 00:07:15,470 --> 00:07:19,160 אז זה נותן לי פיקסל ירוק. 125 00:07:19,160 --> 00:07:23,030 >> בשלב הבא, מה אם אני רוצה לבדוק את הערך של משהו? 126 00:07:23,030 --> 00:07:27,250 יש לי משהו שיכולים בודק אם ערך rgbtBlue של המשולש הוא 127 00:07:27,250 --> 00:07:31,080 ff ולאחר מכן להדפיס, "אני מרגיש כחול! ", כתוצאה מכך. 128 00:07:31,080 --> 00:07:35,640 עכשיו, זה לא בהכרח אומר שפיקסל כחול, נכון? 129 00:07:35,640 --> 00:07:40,060 מכיוון שערכים הירוקים ואדום של פיקסל יכול להיות גם שאינם 0 ערכים. 130 00:07:40,060 --> 00:07:43,470 כל מה שזה אומר, וכל זה זו בדיקה היא 131 00:07:43,470 --> 00:07:45,610 לצבע כחול מלא. 132 00:07:45,610 --> 00:07:50,050 אבל כל הפיקסלים יכולים להיות גם חלקיים ערכי צבע, כמו זו 133 00:07:50,050 --> 00:07:52,180 הדוגמא הבאה כאן. 134 00:07:52,180 --> 00:07:55,400 >> זה קצת קשה יותר לראות מה הדימוי הזה הוא עכשיו. 135 00:07:55,400 --> 00:08:00,320 זה נראה קצת יותר כמו clue.bmp שיינתן לך. 136 00:08:00,320 --> 00:08:03,600 עכשיו, מבחינה פיזית, אתה יכול לפתור את זה, בגלל שיש הרבה אדום, על ידי 137 00:08:03,600 --> 00:08:07,040 מרים את מסך אדום לתמונה כך שהצבעים האחרים יכולים להופיע. 138 00:08:07,040 --> 00:08:10,968 אז איך אנחנו מחקים את זה עם ג? 139 00:08:10,968 --> 00:08:15,640 ובכן, אנחנו יכולים להסיר את כל אדומים מהתמונה לחלוטין. 140 00:08:15,640 --> 00:08:21,870 וכך לעשות את זה היינו להגדיר בכל הערך האדום של פיקסל ל0. 141 00:08:21,870 --> 00:08:25,020 וכך התמונה הייתה נראית קצת קצת כמו זה, שבו אין לנו אדום 142 00:08:25,020 --> 00:08:26,300 שהיא. 143 00:08:26,300 --> 00:08:29,390 >> אנחנו יכולים לראות את המסר הסמוי קצת יותר ברור עכשיו. 144 00:08:29,390 --> 00:08:31,730 זה עוד פרצוף מחייך. 145 00:08:31,730 --> 00:08:33,870 או שאולי אנחנו יכולים להשתמש בשיטה אחרת. 146 00:08:33,870 --> 00:08:36,480 אולי, אנחנו יכולים לזהות כל הפיקסלים האדומים - 147 00:08:36,480 --> 00:08:41,100 כי כל פיקסלים עם הוא, 0 כחול, 0 ירוק, ו0 אדומים - 148 00:08:41,100 --> 00:08:43,169 ולשנות אותם לצבע לבן. 149 00:08:43,169 --> 00:08:45,470 והתמונה שלנו עשויה להיראות משהו כזה. 150 00:08:45,470 --> 00:08:48,250 יותר קל קצת לראות. 151 00:08:48,250 --> 00:08:51,170 >> יש המון דרכים אחרות כדי לחשוף המסר הסודי, כמו גם, 152 00:08:51,170 --> 00:08:53,730 התמודדות עם המניפולציה הצבע. 153 00:08:53,730 --> 00:08:57,050 אולי אתה יכול להשתמש באחת מהשיטות שהזכרתי לעיל. 154 00:08:57,050 --> 00:08:59,600 ובנוסף, ייתכן שתרצה כדי לשפר כמה צבעים 155 00:08:59,600 --> 00:09:02,620 ולהביא אותם החוצה. 156 00:09:02,620 --> 00:09:06,190 >> אז עכשיו שאנחנו כבר שינינו את פיקסל צבע, הבא אנחנו רק צריכים לכתוב אותם 157 00:09:06,190 --> 00:09:08,500 לscanline, על ידי פיקסל פיקסל. 158 00:09:08,500 --> 00:09:11,860 ושוב, אתה רוצה להסתכל אחורה לcopy.c, אם לא יועתק 159 00:09:11,860 --> 00:09:18,170 את זה כבר, ומסתכל fwrite פונקציה, אשר לוקחת נתונים, מצביע 160 00:09:18,170 --> 00:09:23,230 לstruct שמכיל את הבתים שאתה קורא מ, בגודל של 161 00:09:23,230 --> 00:09:26,610 הפריטים, מספר פריטים, ולאחר מכן outptr - 162 00:09:26,610 --> 00:09:29,450 היעד של קבצים אלה. 163 00:09:29,450 --> 00:09:34,010 >> אחרי שאתה כותב בפיקסלים, תוכל גם צריך לכתוב בריפוד. 164 00:09:34,010 --> 00:09:34,970 מהו ריפוד? 165 00:09:34,970 --> 00:09:38,670 ובכן, כל פיקסל rgbt אורך שלושה בתים. 166 00:09:38,670 --> 00:09:43,670 אבל, scanline לתמונת מפת סיביות צריך להיות כפול של ארבעה בתים. 167 00:09:43,670 --> 00:09:47,650 ואם מספר הפיקסלים אינו כפול של ארבעה, ואז אנחנו צריכים להוסיף 168 00:09:47,650 --> 00:09:48,880 הריפוד הזה. 169 00:09:48,880 --> 00:09:51,420 ריפוד הוא רק מיוצג על ידי 0s. 170 00:09:51,420 --> 00:09:54,380 אז, איך אנחנו כותבים, או לקרוא את זה? 171 00:09:54,380 --> 00:09:59,280 ובכן, מתברר שאתה לא יכול ריפוד fread ממש, אבל אתה יכול 172 00:09:59,280 --> 00:10:00,970 לחשב את זה. 173 00:10:00,970 --> 00:10:04,400 >> במקרה זה, את הרמז ואת פסק הדין יש את אותו רוחב, כך 174 00:10:04,400 --> 00:10:05,910 ריפוד הוא אותו הדבר. 175 00:10:05,910 --> 00:10:09,370 והריפוד, כפי שתראה בcopy.c, מחושב 176 00:10:09,370 --> 00:10:11,790 עם הנוסחה הבאה - 177 00:10:11,790 --> 00:10:16,690 sizeof הפעמים bi.biWidth (RGBTRIPLE) יהיה לתת לנו כמה בתים bmp 178 00:10:16,690 --> 00:10:18,280 יש בכל שורה. 179 00:10:18,280 --> 00:10:21,890 משם, modulos והורדות עם 4 יכולים לחשב כמה 180 00:10:21,890 --> 00:10:25,610 יש להוסיף בייטים רבים, כך מספר רב של בתים על 181 00:10:25,610 --> 00:10:27,250 כל שורה היא ארבע. 182 00:10:27,250 --> 00:10:30,490 >> עכשיו שיש לנו את הנוסחה ל כמה ריפוד שאנחנו צריכים, עכשיו 183 00:10:30,490 --> 00:10:31,610 אנחנו יכולים לכתוב את זה. 184 00:10:31,610 --> 00:10:34,080 עכשיו, שציינתי קודם, ריפוד הוא רק 0s. 185 00:10:34,080 --> 00:10:39,730 אז במקרה הזה, אנחנו רק לשים char, במקרה הזה 0, לתוכנו 186 00:10:39,730 --> 00:10:41,710 outptr - outfile שלנו. 187 00:10:41,710 --> 00:10:47,530 כך שיכול להיות רק fputc 0, פסיק outptr. 188 00:10:47,530 --> 00:10:52,400 >> אז, בזמן שאנחנו היית קוראים לשלנו קובץ, שהקובץ / O שמרה על מסלול שלנו 189 00:10:52,400 --> 00:10:57,440 עמדה באותם קבצים עם משהו נקרא מחוון מיקום קובץ. 190 00:10:57,440 --> 00:10:59,350 תחשוב על זה כסמן. 191 00:10:59,350 --> 00:11:03,550 בעיקרון, זה מקדם בכל פעם כי אנחנו fread, אבל יש לנו 192 00:11:03,550 --> 00:11:05,671 שליטה על זה, יותר מדי. 193 00:11:05,671 --> 00:11:11,030 >> כדי להזיז את מחוון מיקום קובץ, אתה יכול להשתמש בfseek הפונקציה. 194 00:11:11,030 --> 00:11:15,600 איפה inptr מייצג את הקובץ מצביע שאתם מחפשים ב, 195 00:11:15,600 --> 00:11:20,370 סכום הוא מספר הבתים שאתה רוצה להזיז את הסמן, ולאחר מכן מ 196 00:11:20,370 --> 00:11:23,470 מתייחס לנקודת ההתייחסות ממקום שבי הסמן שלך הוא. 197 00:11:23,470 --> 00:11:26,770 אם אתה עובר בSEEK_CUR, כי מייצג את הזרם 198 00:11:26,770 --> 00:11:28,100 עמדה בקובץ. 199 00:11:28,100 --> 00:11:31,020 או שאתה יכול להשתמש בכמה פרמטרים אחרים. 200 00:11:31,020 --> 00:11:35,400 לכן, אולי תרצו להשתמש fseek לדלג על הריפוד של קובץ ב. 201 00:11:35,400 --> 00:11:39,410 ושוב, אם אתה תקוע, יש דוגמא לכך בcopy.c. 202 00:11:39,410 --> 00:11:43,260 >> אז עכשיו יש לנו פתחתי את הקובץ, את הרמז, ואת פסק הדין. 203 00:11:43,260 --> 00:11:46,450 שנעדכן את המידע לכותרת שלנו פסק דין, כי בכל 204 00:11:46,450 --> 00:11:48,730 מפת סיביות זקוקה לכותרת. 205 00:11:48,730 --> 00:11:52,280 אז יש לנו לקרוא לתוך מושג של scanline, על ידי פיקסל פיקסל, לשנות 206 00:11:52,280 --> 00:11:55,210 כל צבע במידת צורך, ו כותב אותם לתוך 207 00:11:55,210 --> 00:11:57,340 פסק דין, על ידי פיקסל פיקסל. 208 00:11:57,340 --> 00:12:01,550 ברגע שאתה פותח את פסק דין, אתה יכול לראות מי האשם, או מה הסוד 209 00:12:01,550 --> 00:12:02,850 מסר הוא. 210 00:12:02,850 --> 00:12:05,550 השם שלי הוא Zamyla, ו זה היה מי עשה. 211 00:12:05,550 --> 00:12:12,864