1 00:04:47,277 --> 00:04:49,996 뒤에 잘 들리나요? 2 00:04:50,875 --> 00:04:56,304 저 뒤에도 잘 들리나요? 오케이 좋습니다. 3 00:04:56,991 --> 00:05:02,798 Um what is an electron? 4 00:05:02,873 --> 00:05:07,984 So part of atom, everybody knows that, I think 5 00:05:08,290 --> 00:05:17,718 It's um.. (Screams from other room) yeah I think so, . I think that's royal ??? 6 00:05:17,884 --> 00:05:23,095 Um electron is part of atom 7 00:05:23,334 --> 00:05:32,113 it's carries a unit of electronic charge, negative charge, as oppose to a proton which carries a positive charge 8 00:05:32,230 --> 00:05:42,408 It apparently has ??? not very much, thousands of electron... very very small amount of mass 9 00:05:42,922 --> 00:05:56,253 And we think of it as a particle, although that misleading um.. electron actually behaves much more like a wave than like a particle 10 00:05:56,281 --> 00:05:58,778 why do we think of it as particle? 11 00:05:58,780 --> 00:06:08,906 and the reason we do that is that when electron interacts a location like a particle would 12 00:06:09,151 --> 00:06:16,302 when electron is moving through the space it does not moves the way a particle would 13 00:06:16,418 --> 00:06:21,308 moves as a wave and the wave has no location 14 00:06:21,308 --> 00:06:25,084 you look at an ocean wave, and ocean wave can be huge 15 00:06:25,554 --> 00:06:34,209 it has no distinct location it has well defined energy but no distinct location 16 00:06:34,209 --> 00:06:35,330 this is how an electron moves 17 00:06:35,997 --> 00:06:39,131 electrons obey a principle and it's a mistruster principle 18 00:06:42,191 --> 00:06:46,166 It's called the poly exclusion principle 19 00:06:46,166 --> 00:06:52,752 two electrons bound into the same system will not be in the same state 20 00:06:52,752 --> 00:06:57,328 for whatever reason they cannot be in the same state 21 00:06:57,328 --> 00:07:00,677 so if there are two electrons in an atom 22 00:07:00,677 --> 00:07:04,066 those two electrons must be different somehow 23 00:07:04,066 --> 00:07:07,359 now they might different in the direction of their spin 24 00:07:07,359 --> 00:07:10,899 an electron can spin to the left or spin to the right 25 00:07:10,899 --> 00:07:18,305 two electrons that have exactly same energy could fit together spinning one left and one right 26 00:07:18,305 --> 00:07:21,442 27 00:07:21,450 --> 00:07:27,492 28 00:07:27,492 --> 00:07:30,246 29 00:07:30,246 --> 00:07:35,063 30 00:07:35,109 --> 00:07:37,917 31 00:07:37,985 --> 00:07:48,213 32 00:07:48,213 --> 00:07:57,677 33 00:07:57,690 --> 00:08:08,557 34 00:08:08,557 --> 00:08:10,628 35 00:08:10,972 --> 00:08:15,300 36 00:08:16,582 --> 00:08:17,618 37 00:08:19,624 --> 00:08:25,082 38 00:08:25,082 --> 00:08:27,496 39 00:08:27,496 --> 00:08:33,732 40 00:08:33,732 --> 00:08:40,437 41 00:08:40,437 --> 00:08:46,332 42 00:08:46,332 --> 00:08:51,162 43 00:08:51,162 --> 00:08:55,237 44 00:08:55,237 --> 00:09:03,380 45 00:09:03,380 --> 00:09:11,226 46 00:09:11,226 --> 00:09:20,400 47 00:09:20,400 --> 00:09:25,099 48 00:09:25,099 --> 00:09:30,861 49 00:09:30,861 --> 00:09:35,184 50 00:09:35,184 --> 00:09:45,678 51 00:09:45,678 --> 00:09:54,029 52 00:09:54,136 --> 00:09:57,675 53 00:09:57,675 --> 00:10:02,000 54 00:10:02,000 --> 00:10:08,075 55 00:10:08,075 --> 00:10:11,206 56 00:10:11,206 --> 00:10:23,141 57 00:10:23,151 --> 00:10:33,736 58 00:10:33,892 --> 00:10:36,804 59 00:10:36,804 --> 00:10:42,888 60 00:10:42,888 --> 00:10:51,704 61 00:10:51,704 --> 00:11:03,020 62 00:11:03,027 --> 00:11:06,062 63 00:11:06,336 --> 00:11:08,995 물론 오늘의 발표 주제는 이게 아니지요. 64 00:11:10,345 --> 00:11:19,835 오늘 이야기할 주제는 "아키텍처, 잃어 버린 시간" 입니다. 65 00:11:20,057 --> 00:11:24,080 이 것은 클린 코드와 클린 디자인의 다음 단계에 대한 이야기입니다. 66 00:11:28,535 --> 00:11:32,116 클린 시스템 스트럭쳐에 대한 이야기 입니다. 67 00:11:32,459 --> 00:11:38,162 이 그림은 내가 10년 전에 작성했던 어플리케이션의 디렉터리 구조입니다. 68 00:11:38,162 --> 00:11:47,069 69 00:11:47,069 --> 00:11:52,489 당시에 Rails를 배우고 있었지요. 여기 Ruby 프로그래머가 있나요? Ruby on Rails 프로그래머? 70 00:11:52,646 --> 00:11:56,906 저쪽에 손 흔드는 사람이 한 명 있네요. 오케이. 71 00:11:57,047 --> 00:12:03,364 당시에 Rails를 배우면서 이 어플리케이션을 작성했는데 책의 내용을 따라 했습니다. 72 00:12:03,467 --> 00:12:09,735 73 00:12:09,767 --> 00:12:13,839 책에서 이야기하는데로 그대로 작성했더니 이런 형태의 결과가 나왔습니다. 74 00:12:13,839 --> 00:12:20,077 만족스럽게 마무리했고 그뒤로 오랫동안 안 봤습니다. 75 00:12:20,140 --> 00:12:27,376 그리고 한 3년 전에 내 아들한테 어플리케이션을 하나 작성해달라고 했습니다. 76 00:12:27,376 --> 00:12:34,434 그런데 작성된 어플리케이션을 보니 디렉터리 구조가 똑 같았어요. 77 00:12:34,531 --> 00:12:40,573 이 둘은 전혀 다른 어플리케이션이고 아무런 연관도 없습니다. 78 00:12:40,614 --> 00:12:52,945 그런데 디렉터리 구조는 똑 같아요. 이걸 보면서 왜 두 어플리케이션의 최상위 구조가 똑 같은지에 대해서 고민했습니다. 79 00:12:52,945 --> 00:12:56,609 이 둘은 전혀 다른 어플리케이션이거든요. 80 00:12:56,706 --> 00:13:02,408 두 어플리케이션의 디렉터리 구조가 동일한 이유는 둘다 Rails 어플리케이션이기 때문이었습니다. 81 00:13:02,475 --> 00:13:07,724 그러자 이게 왜 중요한지가 궁금해졌습니다. 82 00:13:07,724 --> 00:13:20,413 Rails 같은 프레임워크가 얼마나 중요하길래 어플리케이션의 최상위 디렉터로 구조를 결정지어버리는 걸 까요? 83 00:13:20,726 --> 00:13:25,363 내가 생각한 이유는 바로 다음과 같습니다. 84 00:13:25,426 --> 00:13:34,438 웹은 전달을 위한 장치입니다. 웹은 I/O 채널이에요. 85 00:13:34,531 --> 00:13:37,913 웹 자체는 아키텍처적으로 중요하지 않습니다. 86 00:13:37,980 --> 00:13:51,898 흔히 웹 어플리케이션을 작성한다고 생각하는데 그렇지 않습니다. 우리는 컨텐츠를 전달하는 어플리케이션을 작성하고 있는 것 입니다. 87 00:13:51,964 --> 00:13:56,805 그러면 왜 I/O 채널이 그렇게 중요할까요? 88 00:13:56,867 --> 00:14:06,705 혹시 웹이 번성하기 시작한 시기를 기억하나요? 1980년대? 1990년대? 89 00:14:06,705 --> 00:14:12,883 얼마나 큰 변화였는지 기억하나요? 얼마나 모든 것이 근본적으로 변했는지 기억하나요? 90 00:14:12,914 --> 00:14:19,712 그렇게 큰 변화는 없었습니다. 왜냐하면 실제로 그다지 새로운 것이 아니었기 때문이지요. 91 00:14:19,792 --> 00:14:26,511 우리는 단지 입력 소스로 부터 입력을 받고, 처리하고, 출력 소스로 내보내기만 했습니다. 92 00:14:26,573 --> 00:14:28,374 웹은 그냥 그런거에요. 93 00:14:28,374 --> 00:14:31,082 그런데 왜 왭이 모든 것들을 결정해버릴까요? 94 00:14:31,082 --> 00:14:38,989 그래서 나는 건축에 대해서 생각해봤습니다. 건축 도면을 봤어요. 95 00:14:38,989 --> 00:14:49,599 저 건축 도면을 보세요. 첫 눈에 도서관 도면이라고 생각이 안들어도 깨닫는데까지 얼마 걸리지 않을 겁니다. 96 00:14:49,599 --> 00:14:51,729 도서관이라는게 너무 명백하거든요. 97 00:14:51,805 --> 00:14:55,882 책장들이 많이 있고 책상도 많습니다. 98 00:14:55,882 --> 00:15:05,705 책상위엥 컴퓨터도 보이고요 책을 대출하고 반납하는 곳도 보여요. 99 00:15:05,705 --> 00:15:11,308 저 도면을 보고 도서관이라는 것을 알아채는데에 오랜 시간이 걸리지 않을 겁니다. 100 00:15:11,377 --> 00:15:16,329 다른 것도 봐볼까요? 저건 교회에요. 누가 봐도 교회지요. 101 00:15:16,364 --> 00:15:21,714 어쩌면 극장이라고 생각할 수 도 있겠지요. 극장이랑 교회는 공통 부분이 있으니까요. 102 00:15:21,759 --> 00:15:29,736 하지만 이건 분명히 교회입니다. 제단, 바깥의 교실, 103 00:15:29,736 --> 00:15:32,123 분명히 교회지요. 104 00:15:32,123 --> 00:15:42,315 이 건물의 아키텍처는 어떻게 지어지는지 이야기하지 않습니다. 105 00:15:42,315 --> 00:15:47,260 이 건물의 아키텍처는 그 의도 이야기하고 있지요. 아키텍처라는 것은 의도에 대한 것 입니다. 106 00:15:47,260 --> 00:15:56,016 하지만 저 Rails 어플리케이션들의 최상위 구조는 그 의도에 대해서 이야기하지 않고 있지요. 107 00:16:01,724 --> 00:16:01,974 저 어플레케이션들은 스스로 Rails 어플리케이션이라는 것을 이야기하고 있습니다. 무언가 잘못되었어요. 108 00:16:02,040 --> 00:16:04,862 그리고 이런 생각이 들었습니다. 109 00:16:04,899 --> 00:16:15,870 이건 이미 알려진 문제인가? 이미 해결되었던 문제인가? 이 문제는 1992년에 Iva jacobson이 저술한 책에서 거론되고 해결되었었습니다. 110 00:16:15,907 --> 00:16:20,638 이 책을 가진 사람이 있나요? 읽어 본 사람? 여기 한 사람있네요 또 없나요? 111 00:16:20,677 --> 00:16:23,431 Object-Oriented Software Engineering. 아주 훌륭한 책이에요. 112 00:16:23,503 --> 00:16:29,821 1992년에 출반된 책이지만 상관없어요. 책에 담긴 원칙들은 여전히 유효합니다. 113 00:16:29,916 --> 00:16:36,619 부제를 보세요. 부제는 'A Usecase driven approach' 입니다. 114 00:16:36,619 --> 00:16:45,107 유즈케이스 기억하는 사람 있나요? 1990년대에는 아주 아주 유명했었습니다. 115 00:16:45,107 --> 00:16:54,130 실제론 너무 유명해서 수많은 컨설턴트들에 의해 본래의 의미가 변질되었었지요. 116 00:16:54,130 --> 00:17:07,146 수많은 컨설턴트들이 자신의 유즈케이스 양식을 인터넷에 앞다퉈서 내놓았었지요. 117 00:17:07,146 --> 00:17:12,770 그러더니 양식 자체가 매우 중요하게 여겨져 버렸어요. 우리는 그 표준 양식의 빈칸을 채우도록 강요받았지요. 118 00:17:12,770 --> 00:17:28,980 유즈케이스의 이름, 입력값, 사전조건, 사후조건, 주액터, 부액터 등을 채워야했습니다. 119 00:17:29,011 --> 00:17:38,276 우리는 모든 빈칸을 채워야만했고 결국 유즈케이스의 가장 중요한 점은 그 기능이 아니라 양식이 되버렸습니다. 120 00:17:38,306 --> 00:17:51,667 그 시기의 절정 즈음에 에자일 운동이 시작되었습니다. 우리는 유즈케이스에 대한 이야기는 멈추고 유저 스토리에 대해 이야기했습니다. 유즈케이스에 대해서는 아무도 이야기하지 않게되었지요. 121 00:17:51,714 --> 00:17:58,190 그래서 나는 이 책을 다시 읽어봤어요. 122 00:17:58,227 --> 00:18:02,105 Jacobson이 쓴것들을 다시 기억해냈습니다. 123 00:18:02,168 --> 00:18:11,409 여기 유즈케이스가 있습니다. 전형적인 Jacobson 스타일의 유즈케이스에요. 124 00:18:11,444 --> 00:18:23,728 매우 작은 양식이에요. '주문 생성'이라는 이름이 있네요. 주문 처리 시스템의 유즈케이스라고 생각해보세요. 125 00:18:23,791 --> 00:18:32,570 입력 값으로 고객 아이디, 고객 연락처, 수신처 등이 보이네요. 126 00:18:32,602 --> 00:18:37,959 여기에는 세부적인 내용은 없어요. 고객 아이디가 어떤 것인지 기술하지 않습니다. 127 00:18:38,027 --> 00:18:40,146 숫자이건 문자열이건 상관없어요. 128 00:18:40,187 --> 00:18:48,264 고객 연락처가 어떤 것인지 기술하지 않습니다. 아마도 이름 날자 주소등등 이겠지요. 129 00:18:48,328 --> 00:18:51,560 하지만 세부사항들연 여기에 명시되어있지 않습니다. 130 00:18:51,599 --> 00:19:05,294 여기 메인 흐름이 있네요. 메인 흐름은 유즈케이스를 만족시키기 위해 컴퓨터가 실행하는 단계들이에요. 131 00:19:05,327 --> 00:19:11,037 첫 번째로 주문 담당자는 '주문 생성'을 요청합니다. 132 00:19:11,073 --> 00:19:18,511 그리고 시스템이 데이터를 검증합니다. 어떻게 검증한다는 이야기는 안했지요? 어떻게든 검증을 하는지는 중요하지 않습니다. 그냥 검증을 한다는게 중요합니다. 133 00:19:18,575 --> 00:19:27,947 세번째로 시스템이 주문을 생성하고 ID를 결정합니다. 아마도 어떤 데이터베이스 작업이겠지만 이야기는 안하겠습니다. 134 00:19:27,984 --> 00:19:35,036 그리고 시스템은 담당자에게 ID를 전달합니다. 아마도 웹 페이지를 통해서겠지만 이야기는 안하겠습니다. 135 00:19:35,106 --> 00:19:44,200 실제로 이 유즈케이스는 웹에 대해 아무런 이야기도 하지 않습니다. 이 유즈케이스는 어떤 I/O 채널을 통해서도 구현이 가능하겠지요. 136 00:19:44,234 --> 00:19:53,376 이 유즈케이스는 콘솔 앱, 데스크탑 앱, SOA 앱, 아이폰 앱에서도 구현이 가능합니다. 137 00:19:53,376 --> 00:19:59,609 유즈케이스는 I/O 채널을 모르기 때문에 가능한 것 입니다. 138 00:19:59,609 --> 00:20:08,599 Jacobson은 유즈케이스를 오브젝트로 바꿀 수 있다고 했습니다. 139 00:20:08,599 --> 00:20:19,218 Jacobson은 저것을 Control Object라고 불렀지만 MVC의 Controller와 헷갈릴 수 있으므로 Interactors라고 이름을 바꿨습니다. 140 00:20:19,218 --> 00:20:26,489 어쩌면 유즈케이스라는 이름이 더 좋겠지만 그렇게 하지는 않았습니다. Interactors로 부르겠습니다. 141 00:20:26,489 --> 00:20:38,378 Interactor 오브젝트는 유즈케이스를 구현합니다. 유즈케이스의 입력값을 입력 받아서 유즈케이스의 출력값을 출력합니다. 142 00:20:38,378 --> 00:20:44,757 그리고 유즈케이스의 처리 흐름을 구현합니다. 143 00:20:44,757 --> 00:20:53,936 밑에 설명을 보면 어플리케이션 별 비지니스 규칙들을 가진다고 되어있지요? 144 00:20:53,936 --> 00:20:56,768 거기에는 두 종류의 비지니스 규칙이 있습니다. 145 00:20:56,768 --> 00:21:06,636 먼저 글로벌할 비지니스 규칙이 있습니다. 모든 어플리케이션에 적용이 가능하지요. 146 00:21:06,636 --> 00:21:11,995 그리고 개발중인 어플리케이션에만 해당하는 비지니스 규칙들이 있습니다. 147 00:21:11,995 --> 00:21:22,020 예를 들어서 주문 입력 어플리케이션과 주문 처리 어플리케이션이 있다고 생각해봅시다. 148 00:21:22,020 --> 00:21:29,693 둘 다 '주문'이라는 오브젝트가 있을겁니다. 그리고 그 주문 오브젝트들은 같은 비지니스 규칙을 가지고 있겠지요. 149 00:21:29,693 --> 00:21:40,269 하지만 둘 중 하나의 어플리케이션만 주문 추가라는 유즈케이스를 가지고 있을 겁니다. 150 00:21:40,269 --> 00:21:47,570 유즈케이스는 어플리케이션에 따라 다릅니다. 유즈케이스는 특정 어플리케이션에 종속되지요. 151 00:21:47,570 --> 00:21:56,696 비지니스 규칙은 어플리케이션에 따라 다르지 않습니다. Entity 오브젝트에 종속됩니다. 비지니스 오브젝트라고 불려지기도 합니다. 152 00:21:56,727 --> 00:22:01,325 나는 비지니스 오브젝트라는 말은 좋아하지는 않습니다. Jacobson 도 Entiry 오브젝트라고 불렀지요. 153 00:22:01,405 --> 00:22:09,865 어플리케이션 비종속적인 비지니스 규칙들을 Entity 오브젝트에 넣고 Interactor가 Entity 오브젝트들을 관장합니다. 154 00:22:09,929 --> 00:22:17,482 그런 후에 유즈케이스의 입력값과 출력값을 다른 유즈케이스에 전달하는 방법을 정합니다. 155 00:22:17,583 --> 00:22:30,440 이 경우에는 인터페이스를 사용합니다. 그림에 객체지향 방식의 인터페이스로 표현을 했는데요. Interactor는 인터페이스 하나를 사용하고 있고요 다른 하나의 인터페이스는 구현을 하고 있습니다. 156 00:22:30,440 --> 00:22:38,753 Interactor가 구현하고 있는 것은 입력 인터페이스이고요 Interactor가 사용하고 있는 것은 출력 인퍼테이스입니다. 157 00:22:38,753 --> 00:22:42,174 두 인터페이스와 Interactor 사이의 화살표가 같은 방향이지요? 이 것이 중요한 것 입니다!!!!! 158 00:22:42,174 --> 00:22:42,424 이게 왜 중요한지는 조금 뒤에 이야기하겠습니다. 159 00:22:45,446 --> 00:22:53,815 160 00:22:53,815 --> 00:22:56,483 161 00:22:56,483 --> 00:23:03,344 162 00:23:03,344 --> 00:23:10,518 163 00:23:10,518 --> 00:23:12,711 164 00:23:12,711 --> 00:23:25,915 165 00:23:25,915 --> 00:23:31,619 166 00:23:31,619 --> 00:23:37,450 167 00:23:37,450 --> 00:23:50,748 168 00:23:50,748 --> 00:23:52,764 169 00:23:52,764 --> 00:23:56,904 170 00:23:56,904 --> 00:24:01,911 171 00:24:01,976 --> 00:24:10,546 172 00:24:10,546 --> 00:24:26,691 173 00:24:26,754 --> 00:24:33,210 174 00:24:33,666 --> 00:24:41,673 175 00:24:41,673 --> 00:24:47,942 176 00:24:47,942 --> 00:25:00,808 177 00:25:00,808 --> 00:25:10,958 178 00:25:10,958 --> 00:25:14,686 179 00:25:14,686 --> 00:25:20,292 180 00:25:20,292 --> 00:25:24,772 181 00:25:24,772 --> 00:25:30,220 182 00:25:30,220 --> 00:25:33,044 183 00:25:33,044 --> 00:25:40,663 184 00:25:40,663 --> 00:25:45,237 185 00:25:45,237 --> 00:25:50,775 186 00:25:50,775 --> 00:25:56,698 187 00:25:56,698 --> 00:25:58,451 188 00:25:58,451 --> 00:26:05,846 189 00:26:05,846 --> 00:26:14,500 190 00:26:14,500 --> 00:26:18,196 191 00:26:18,196 --> 00:26:27,613 192 00:26:27,613 --> 00:26:35,480 193 00:26:35,480 --> 00:26:41,154 194 00:26:41,154 --> 00:26:47,457 195 00:26:47,457 --> 00:26:50,027 196 00:26:50,027 --> 00:26:57,638 197 00:26:57,638 --> 00:27:00,550 198 00:27:00,550 --> 00:27:06,406 199 00:27:06,406 --> 00:27:12,775 200 00:27:12,837 --> 00:27:18,543 201 00:27:18,543 --> 00:27:27,724 202 00:27:27,724 --> 00:27:29,759 203 00:27:29,759 --> 00:27:41,696 204 00:27:41,760 --> 00:27:48,409 205 00:27:48,472 --> 00:27:59,126 206 00:27:59,220 --> 00:28:01,293 207 00:28:01,324 --> 00:28:07,470 208 00:28:07,470 --> 00:28:15,161 209 00:28:15,201 --> 00:28:24,117 210 00:28:24,152 --> 00:28:35,691 211 00:28:35,725 --> 00:28:40,078 212 00:28:40,144 --> 00:28:50,360 213 00:28:50,423 --> 00:29:01,220 214 00:29:01,284 --> 00:29:04,320 215 00:29:04,383 --> 00:29:14,740 216 00:29:14,740 --> 00:29:23,961 217 00:29:23,961 --> 00:29:29,431 218 00:29:29,431 --> 00:29:37,781 219 00:29:37,781 --> 00:29:43,463 220 00:29:43,463 --> 00:29:50,645 221 00:29:50,645 --> 00:29:53,596 222 00:29:53,596 --> 00:30:07,610 223 00:30:07,610 --> 00:30:21,488 224 00:30:21,488 --> 00:30:34,438 225 00:30:34,438 --> 00:30:44,621 226 00:30:44,621 --> 00:30:55,782 227 00:30:55,782 --> 00:31:06,173 228 00:31:06,239 --> 00:31:13,115 229 00:31:10,120 --> 00:31:31,439 230 00:31:13,146 --> 00:31:17,470 231 00:31:31,502 --> 00:31:37,292 232 00:31:37,323 --> 00:31:44,851 233 00:31:44,914 --> 00:31:51,867 234 00:31:51,940 --> 00:32:03,285 235 00:32:03,320 --> 00:32:10,685 236 00:32:10,753 --> 00:32:17,424 237 00:32:17,490 --> 00:32:28,306 238 00:32:28,401 --> 00:32:37,522 239 00:32:37,596 --> 00:32:43,097 240 00:32:43,191 --> 00:32:53,170 241 00:32:53,202 --> 00:33:03,697 242 00:33:03,697 --> 00:33:08,017 243 00:33:08,079 --> 00:33:16,245 244 00:33:16,283 --> 00:33:21,133 245 00:33:21,133 --> 00:33:28,686 246 00:33:28,728 --> 00:33:33,069 247 00:33:33,100 --> 00:33:38,591 248 00:33:38,661 --> 00:33:43,797 249 00:33:43,844 --> 00:33:48,844 250 00:33:48,844 --> 00:33:53,198 251 00:33:53,198 --> 00:33:55,956 252 00:33:55,956 --> 00:33:59,520 253 00:33:59,520 --> 00:34:06,612 254 00:34:06,612 --> 00:34:12,975 255 00:34:12,975 --> 00:34:18,556 256 00:34:18,556 --> 00:34:24,989 257 00:34:24,989 --> 00:34:32,487 258 00:34:32,487 --> 00:34:37,349 259 00:34:37,349 --> 00:34:48,541 260 00:34:48,541 --> 00:34:54,206 261 00:34:54,206 --> 00:35:00,046 262 00:35:00,046 --> 00:35:04,588 263 00:35:04,588 --> 00:35:11,045 264 00:35:11,045 --> 00:35:20,650 265 00:35:20,650 --> 00:35:30,222 266 00:35:30,222 --> 00:35:33,517 267 00:35:33,517 --> 00:35:38,750 268 00:35:38,750 --> 00:35:50,047 269 00:35:50,085 --> 00:35:54,420 270 00:35:54,420 --> 00:36:03,295 271 00:36:03,359 --> 00:36:14,766 272 00:36:14,799 --> 00:36:26,294 273 00:36:26,334 --> 00:36:27,517